2.10 Mơ hình TransformerXL
2.10.2 Kĩ thuật mã hố vị trí tương đối
Để biểu diễn thứ tự của các token, ngoài sử dụng số thứ tự - hay vị trí tuyệt đố của token, thì có thể biểu diễn thơng qua khoảng cách giữa token đó với token đang xét. Ý tưởng về mã hố vị trí tương đối của token đã được đề xuất bởi một vài tác giả khác trước đó, tuy nhiên trong bài báo của mình, tác giả đã đề xuất một kĩ thuật mới. Tác giả cũng phân tích rằng, mục đích của bước mã hố vị trí, là nhằm cung cấp cho mơ hình thơng tin gợi ý hay khuynh huớng (bias) nên chú ý tại đâu. Do đó, thay vì kết hợp thông tin khuynh hướng (bias) này với chung với vector embedding ban đầu, ta có thể truyền (inject) nó vào điểm tập trung (attention score) tại mỗi lớp. Trước khi phân tích điểm mới của tác giả, ta hãy nhắc lại cơng thức tính điểm tập trung giữa truy vấnqj và khốkicủa mơ hình Transformer truyền thống:
Aabs i,j =ET xiWT qWkExj | {z } (a) +ET xiWT qWkUj | {z } (b) +UT i WT qWkExj | {z } (c) +UT i WT qWkUj | {z } (d) (2.8) Trong đó:
Elà word embedding của token
Ulà mã hố vị trí tuyệt đối của token trong chuỗi đầu vào
Tác giả đã viết lại công thức trên cùng với những cải tiến của mình như sau:
Arel i,j =ET xiWT qWk,EExj | {z } (a) +ET xiWT qWk,RRi−j | {z } (b) +uTWk,EExj | {z } (c) +vTWk,RRi−j | {z } (d) (2.9) Những sự cải tiến đó được tác giả liệt kê và giải thích như sau:
• Thứ nhất, tác giả đã thay ma trận mã hố vị trí tuyệt đốiUjthành ma trận biểu diễn vị trí tương đối giữa 2 token i, j Ri−j trong các thành phần (b) và (d). Ma trận này được tính bằng cơng thức mã hố vị trí của mơ hình Transformer.
• Thứ hai, tác giả đề xuất sử dụng tham số có khả năng huấn luyện (trainable parameter)
u để thay thế cho truy vấnUT i WT
q trong thành phần (c). Lý giải cho sự thay đổi này, tác giả chỉ ra rằng,UT
iWT
q là không thay đổi trên các token khác nhau và khác token hiện tại, đồng nghĩa với thiên kiến tập trung sẽ như nhau cho mọi token khác token chứa truy vấn. Điều này chưa hợp lý, khi mà sự phụ thuộc giữa các token là khơng giống nhau. Lấy ví dụ cho câu "I see a man who is crying", "who" sẽ có quan hệ với "a man" hơn các từ cịn lại. Hoặc có thể thấy, thơng thường các từ sẽ có quan hệ phụ thuộc vào những từ gần nó hơn là những từ ở xa. Với lý do tương tự, tác giả cũng sử dụng tham số có khả năng huấn luyệnvđể thay thế cho truy vấnUT
i WT
q trong thành phần (d).
• Cuối cùng, tác giả thực hiện tách ma trận trọng số khoáWkthành 2 ma trậnWk,RvàWk,E
mang ý nghĩa lần lượt là khoá dựa trên nội dung (content-based key) và khoá dựa trên vị trí (location-based key).
Với sự kết hợp của cơ chế hồi quy cấp phân đoạn tái sử dụng giá trị trạng thái cùng kĩ thuật mã hố vị trí tương đối, mơ hình TransformerXL đã giải quyết được những hạn chế của mơ hình gốc Transformer, đạt được những kết quả SOTA trên nhiều tập dữ benchmark, qua đó vượt qua cả
Transformer và mơ hình hồi quy về độ chính xác. Bên cạnh đó, so sánh với mơ hình Transformer truyền thống, mơ hình TransformerXL đã nâng tốc độ quá trình đánh giá lên gấp 1874 lần trong bài tốn mơ hình ngơn ngữ cấp độ kí tự. Với những ưu thế nổi bật về khả năng nắm bắt phụ thuộc xa và tốc độ huấn luyện của mơ hình, nhóm đã quyết định chọn mơ hình TransformerXL để xây dựng mơ hình sinh nhạc cho đề tài luận văn.
3
CÔNG NGHỆ SỬ DỤNG
Trong chương này, chúng tôi xin giới thiệu các cơng nghệ, ngơn ngữ lập trình và một số frame- work mà nhóm đã sử dụng để phát triển và hiện thực luận văn này.
Mục lục
3.1 Ngơn ngữ lập trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2 Thư viện và nền tảng sử dụng . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1 Ngơn ngữ lập trình