3 TRÍCH RÚT THÔNG TIN VĂN BẢN BẰNG DEEP TRANS-
3.5 Attention và Multi-Head Attention
Dựa vào hình, chúng ta tính toán hàm chú ý trên một tập hợp các truy vấn đồng thời, được đóng gói với nhau thành ma trận Q. Các khóa và giá trị cũng được đóng gói cùng nhau thành ma trận K và V. Việc tính toán này có thể thực hiện một cách song song cho toàn bộ chuỗi đầu vào bằng cách nhóm các vector query,
key, value tương ứng thành các ma trận Q, K, V, khi đó:
Attention(Q, K, V) =sof tmax(QK T √
dk V) (3.3.8)
Với dk là số chiều của key vectors. Multi-head attention
Thay vì sử dụng cơ chế attention một lần cho (Q, K, V) với số chiều là dmodel, cơ chế multi-head attention của transformer được thực hiện bằng cách tính atten- tion h lần với số chiều tương dmodel
h . Kết quả của mỗi hướng (head) sau đó được nối lại và được áp dụng một phép chiếu tuyến tính để đưa về không gian có số chiều tương ứng với bộ (Q, K, V) ban đầu.
Mô hình tính toán được mô tả như sau:
M ultiHead(Q, K, V) =Concat(head1, ..., headn)WO (3.3.9) =Attention(QWiQ, KWiK, V WiV) (3.3.10) với WiQ∈Rdmodel×dk, WiK ∈Rdmodel×dk,
WiV ∈Rdmodel×dk và WO ∈Rhdv×dmodel.
3.3.2 Mô hình Transformer
Transformer là một mô hình có một kiến trúc với mục đích tránh lặp lại và thay vào đó dựa hoàn toàn vào cơ chế chú ý để thể hiện sự phụ thuộc toàn cục giữa đầu vào và đầu ra.
Kiến trúc mô hình
Transformer cũng có kiến trúc gồm bộ mã hóa và bộ giải mã giống như mô hình sequence-to-sequence. Trong mô hình Transformer, bộ mã hóa ánh xạ một chuỗi ký tự đầu vào (x1, ..., xn) thành một chuỗi biểu diễn liên tiếp z= (z1, ..., zn). Sau khi cóz, bộ giải mã thực hiện việc sinh ra một chuỗi đầu ra (y1, ..., ym)tương ứng.
Bộ mã hóa
Bộ mã hóa của Transformer được cấu tạo bởi 6 lớp giống nhau ghép chồng lên nhau. Mỗi lớp gồm hai lớp con, trong đó lớp đầu tiên là một multi-head attention như mô tả ở trên. Lớp con thứ hai là một mạng neuron đầy đủ truyền thẳng. Bộ
mã hóa sử dụng các kết nối dư xung quanh mỗi lớp con được đi theo bởi một lớp chuẩn hóa, tức là đầu ra của mỗi lớp con là mộtLayerN orm(x+Sublayer(x))với
Sublayer(x) là hàm được thực hiện bởi chính layer con đó. Đầu ra có số chiều là
dmodel= 512. Bộ giải mã
Bộ giải mã cũng giống bộ mã hóa, cũng được tạo bởi 6 lớp giống nhau. Tuy nhiên ngoài các lớp con như bộ mã hóa, lớp giải mã có thêm một lớp con nữa để thực hiện việc multi-head attention trên đầu ra của lớp mã hóa. Tương tự như lớp mã hóa, ta sử dụng các kết nối dư xung quanh mỗi lớp con được đi theo bởi một lớp chuẩn hóa.