Giả sử chiều của câu truy vấn, khóa và giá trị lần lượt là dq, dk và dv . Khi đó, tại mỗi đầu
i=1, . . . ,h, ta có thể học các tham số W(i)q ∈Rpq×dq , Wk(i) ∈Rpk×dk , vàW(i)v ∈Rpv×dv. Do đó, đầu ra tại mỗi đầu là
o(i)=attetion(W(i)q q,W(i)k k,W(i)v v)
trong đóattention có thể là bất kỳ tầng tập trung nào, chẳng hạn như tầng tập trung tích vơ hướng và tập trung perceptron đa tầng như đề cập trong Section 2.7
Sau đó,hđầu ra với độ dài pv tại mỗi đầu được nối với nhau thành đầu ra có độ dài hpv , rồi được đưa vào tầng dày đặc cuối cùng với do nút ẩn. Các trọng số của tầng dày đặc này được ký hiệu làWo∈Rdhpv . Do đó, đầu ra cuối cùng của tầng tập trung đa đầu sẽ là
o=Wo o(i) . . . o(h) 2.8 Mơ hình Transformer
Như chúng ta đã biết về các kiến trúc mạng nơ-ron quan trọng như mạng nơ-ron tích chập (CNN) và mạng nơ-ron hồi tiếp (RNN). Ưu nhược điểm của hai kiến trúc mạng này có thể được tóm tắt như sau:
• Các mạng CNN có thể dễ dàng được thực hiện song song ở một tầng nhưng khơng có khả năng nắm bắt các phụ thuộc chuỗi có độ dài biến thiên.
• Các mạng RNN có khả năng nắm bắt các thơng tin cách xa nhau trong chuỗi có độ dài biến thiên, nhưng không thể thực hiện song song trong một chuỗi.
Để kết hợp các ưu điểm của CNN và RNN, Tác giả Vaswani và một số đồng tác giả khác (2017)[16] đã thiết kế một kiến trúc mới bằng cách sử dụng cơ chế tập trung. Kiến trúc này gọi là Transformer, song song hóa bằng cách học chuỗi hồi tiếp với cơ chế attention, đồng thời mã hóa vị trí của từng phần tử trong chuỗi. Kết quả là ta có một mơ hình tương thích với thời gian huấn luyện ngắn hơn đáng kể.
Tương tự như mơ hình seq2seq trong mục 2.6, Transformer cũng dựa trên kiến trúc Encoder- Decoder. Tuy nhiên, nó thay thế các tầng hồi tiếp trong seq2seq bằng các tầng tập trung đa đầu (multi-head attention) như đã trình bày ở mục 2.7.4, kết hợp thơng tin vị trí thơng qua biểu diễn vị trí (positional encoding) và áp dụng chuẩn hóa tầng (layer normalization).
Nhìn chung, hai mơ hình này khá giống nhau: các embedding của chuỗi nguồn được đưa vào
nkhối lặp lại. Đầu ra của khối encoder cuối cùng sau đó được sử dụng làm bộ nhớ tập trung cho bộ giải mã. Tương tự, các embedding của chuỗi đích được đưa vàonkhối lặp lại trong bộ decoder. Ta thu được đầu ra cuối cùng bằng cách áp dụng một tầng dày đặc có kích thước bằng kích thước bộ từ vựng lên các đầu ra của khối decoder cuối cùng.
Mặt khác, Transformer khác với mơ hình seq2seq sử dụng cơ chế attention như sau:
• Khối Transformer: một tầng hồi tiếp trong seq2seq được thay bằng một Khối Trans- former. Với bộ encoder, khối này chứa một tầng multi-head attention và một mạng truyền xi theo vị trí (position-wise feed-forward network) gồm hai tầng dày đặc. Đối với bộ decoder, khối này có thêm một tầng multi-head attention khác để nhận vào trạng thái bộ encoder.
• Cộng và chn hóa:đầu vào và đầu ra của cả tầng multi-head attention hoặc mạng truyền xi theo vị trí được xử lý bởi hai tầng "cộng và chuẩn hóa" bao gồm cấu trúc phần dư và tầng chuẩn hóa theo tầng (layer normalization).