Professional Documents
Culture Documents
Transformers For Machine Learning - A Deep Dive-101-200
Transformers For Machine Learning - A Deep Dive-101-200
Transformers For Machine Learning - A Deep Dive-101-200
Kiến trúc BERT đa ngôn ngữ (mBERT) giống hệt với kiến trúc BERT gốc. Thay
vì chỉ được đào tạo về dữ liệu tiếng Anh đơn ngữ với từ vựng có nguồn gốc
từ tiếng Anh, nó được đào tạo trên các trang Wikipedia của 104 ngôn ngữ
với từ vựng WordPiece phổ biến. Nó không tham chiếu đến ngôn ngữ đầu vào
và thiếu một kỹ thuật rõ ràng để đảm bảo rằng các câu tương đương trong
bản dịch có cách trình bày gần gũi.
Từ vựng WordPiece 110k được chia sẻ giữa tất cả 104 ngôn ngữ.
Để giải quyết sự mất cân bằng nội dung của Wikipedia, chẳng hạn như Wikipedia
tiếng Anh có số lượng bài viết gấp 120 lần so với Wikipedia tiếng Kurd, các ngôn
ngữ phụ đã được lấy mẫu quá mức trong khi các ngôn ngữ chính được lấy mẫu dưới mức.
Cùng một từ vựng cho phép một số dạng biểu đạt đa ngôn ngữ giữa các yếu
tố khác. Tiếp theo, chúng tôi mô tả ngắn gọn các nhiệm vụ đào tạo trước
của mBERT, cụ thể là Mô hình ngôn ngữ đeo mặt nạ đa ngôn ngữ (mMLM) và Dự
đoán câu tiếp theo (NSP).
Mô hình ngôn ngữ đeo mặt nạ (MLM) Đây là nhiệm vụ đào tạo trước không giám sát
cấp mã thông báo tiêu chuẩn được giới thiệu bởi BERT. Tuy nhiên, trong bối cảnh
của các máy biến áp đa ngôn ngữ, nó được sử dụng với nhiều ngôn ngữ được gộp
lại với nhau mà không có sự liên kết. Nó tuân theo quy trình MLM tương tự trong
đó 15% mã thông báo được chọn ngẫu nhiên sau đó (i) với xác suất 80%, chúng
được thay thế bằng mã thông báo [MASK] hoặc (ii) với xác suất 10%, chúng được
thay thế bằng mã thông báo ngẫu nhiên hoặc (iii) chúng được giữ nguyên với xác
suất 10%. Mục tiêu của nhiệm vụ MLM là dự đoán các mã thông báo bị che giấu
bằng cách sử dụng các mã thông báo không được che giấu ở cả hai phía của chuỗi
mã thông báo đầu vào. Về mặt hình thức, hãy để x là một chuỗi mã thông báo đầu
vào và Mx là tập hợp các mã thông báo bị che. Tổn thất MLM được định nghĩa như sau:
1
L (x) =
logP(xi |x\Mx ) (4.1)
MLM
|Mx| i Mx
Hình 4.1 minh họa nhiệm vụ MLM trong đó x và y biểu thị các câu đầu
vào đơn ngữ trong các ngôn ngữ khác nhau. Mặc dù thực tế là nhiệm vụ này
không xem xét bất kỳ thông tin nào về nhiều ngôn ngữ của đầu vào được
gộp chung, nhưng nó đã cho thấy giá trị lớn trong việc tạo ra các biểu
diễn đa ngôn ngữ được căn chỉnh tốt giữa các ngôn ngữ. Phần thông tin chi
tiết sẽ cung cấp thêm chi tiết về các yếu tố đằng sau hành vi này.
Machine Translated by Google
Hình 4.1 Minh họa nhiệm vụ MLM đa ngôn ngữ [71, 194]. x và y là
câu đơn ngữ trong các ngôn ngữ khác nhau không song song.
Dự đoán câu tiếp theo (NSP) Trong bối cảnh cấp độ câu
nhiệm vụ đào tạo trước, NSP hỗ trợ mô hình trong việc học các liên kết
giữa các cụm từ [71]. Đây là bài toán phân loại cặp câu nhị phân
học cách xác định các câu liên tiếp. Cho hai câu x và y,
vectơ mã thông báo [CLS] đại diện cho biểu diễn tổng hợp của
hai câu (x, y) được chuyển đến lớp Sigmoid để thu được xác suất là các
câu liên tiếp. Để chuẩn bị cho việc đào tạo, cụm từ
các cặp được tạo sao cho 50% số lần xuất hiện là liên tiếp và 50% còn
lại không liên tiếp. Tập huấn trước
mô hình ở cấp độ câu có lợi trong các nhiệm vụ tiếp theo như
trả lời câu hỏi (QA), suy luận ngôn ngữ tự nhiên (NLI) và độ tương tự
văn bản ngữ nghĩa (STS), cần các cặp câu làm đầu vào. Cho phép
l {1, 0} biểu thị hai câu (x, y) có liên tiếp hay không, NSP
tổn thất được xác định như sau:
(x,y)
L NSP = logP(l|x, y) (4.2)
Mô hình ngôn ngữ đa ngôn ngữ (XLM) [146] là một cải tiến so với
kiến trúc mBERT bằng cách học từ khối văn bản đơn ngữ và song song. Để
học từ dữ liệu đơn ngữ XLM sử dụng MLM tiêu chuẩn
nhiệm vụ đào tạo trước được sử dụng bởi mBERT. XLM cũng đề xuất sử dụng Causal
Mô hình hóa ngôn ngữ (CLM) để đào tạo trước đơn ngữ.
Machine Translated by Google
Mô hình ngôn ngữ nhân quả (CLM) CLM là nhiệm vụ đào tạo cốt lõi của mô
hình ngôn ngữ cổ điển trong đó một mô hình dự đoán từ tiếp theo dựa trên
ngữ cảnh của các từ trước đó một cách chính thức. Cho x = x1, x2,
x3, . . . , x|x| đại diện cho một chuỗi các mã thông báo trong đó |x| đa i diê n
số lượng token trong chuỗi. Mất CLM được định nghĩa là:
|x|
(x) 1
L CLM =
log P (xi |x<i) (4.3)
|x| tôi=1
Đóng góp chính của XLM là việc giới thiệu một nhiệm vụ đào tạo trước
sử dụng ngữ liệu song song để khuyến khích rõ ràng sự liên kết của các
biểu diễn đa ngôn ngữ; cụ thể là Mô hình ngôn ngữ dịch thuật (TLM).
Mô hình ngôn ngữ dịch (TLM) TLM là một biến thể của MLM cho phép sử dụng
ngữ liệu song song trong đào tạo trước đa ngôn ngữ [63]. Đầu vào của bộ
mã hóa là một cặp câu song song (x, y). Tương tự như MLM, tổng số k mã
thông báo được che dấu để chúng có thể thuộc về câu x hoặc y . Để dự đoán
một từ bị che trong x, mô hình có thể phụ thuộc vào ngữ cảnh xung quanh
trong x hoặc bản dịch y và ngược lại đối với các mã thông báo bị che trong
y. Điều này ngầm buộc bộ mã hóa phải đạt được các biểu diễn căn chỉnh
theo nhiều ngôn ngữ. Về cơ bản, nếu ngữ cảnh của mã thông báo bị che trong
x không đủ, mô hình sẽ chú ý hơn đến ngữ cảnh trong y để đưa ra dự đoán
tốt hơn về mã thông báo bị che. Hình 4.2 cung cấp minh họa về cách TLM
thực hiện sự chú ý đa ngôn ngữ. Để xác định TLM cho một cặp câu song song
(x, y), hãy để Mx và My biểu thị tập hợp các vị trí bị che trong cả hai
câu, sau đó x\Mx và y\My sẽ biểu thị các phiên bản bị che của x và y. Hàm
mất TLM [138] được định nghĩa như sau:
1 1
L T(x,y)
LM
=
logP(xi |x\Mx , y\My ) logP(yi |x\Mx , y\My )
|Mx| |Của tôi|
i Mx tôi của tôi
(4.4)
XLM đã cung cấp bằng chứng sâu rộng về cách các nhiệm vụ đào tạo trước
MLM và CLM cung cấp các tính năng đa ngôn ngữ mạnh mẽ có thể được sử dụng
cho các bản dịch máy không có giám sát và các nhiệm vụ phân loại đa ngôn
ngữ được giám sát xuôi dòng khác. Mô hình ngôn ngữ đa ngôn ngữ (XLM) cũng
cho thấy tác động mạnh mẽ của việc sử dụng TLM với MLM đối với chất lượng
của sự liên kết biểu diễn đa ngôn ngữ như đã được chứng minh bằng hiệu
suất của chúng trên điểm chuẩn XNLI.
Machine Translated by Google
Hình 4.2 Minh họa TLM [146, 194] thể hiện cơ chế chú ý qua các câu song song
(x, y) nhằm thúc đẩy sự liên kết xuyên ngôn ngữ của các cách biểu đạt được tạo
ra.
4.1.2.3 XLM-RoBERTa
XLM-RoBERTa (XLM-R) [61] là mô hình máy biến áp đa ngôn ngữ dựa trên
chỉ về nhiệm vụ đào tạo trước MLM. XLM-R được đào tạo trên 2,5 TB dữ liệu
CommonCrawl bằng 100 ngôn ngữ. XLM-R là một kỹ thuật rất quan trọng
trong dòng tiến trình của các mô hình máy biến áp đa ngôn ngữ như nó đã cung cấp
tăng hiệu suất mạnh mẽ so với mBERT và XLM trong các tác vụ quan trọng tiếp
theo như ghi nhãn trình tự và trả lời câu hỏi. Đây là
mặc dù thực tế là nó không sử dụng ngữ liệu song song để đào tạo trước.
XLM-R tuân theo thiết kế kiến trúc của XLM mà không sử dụng phần nhúng ngôn
ngữ, cho phép xử lý chuyển đổi mã tốt hơn.
Đóng góp chính của XLM-R là đạt được hiệu suất tiên tiến với dữ liệu đơn ngữ
và chứng minh những hiểu biết sâu sắc về giá trị
dữ liệu huấn luyện lớn hơn và sạch hơn, kích thước của từ vựng cũng như
mức độ điều chỉnh siêu tham số phù hợp.
Mô hình ngôn ngữ thay thế (ALM) ALM [282] là chương trình đào tạo trước
nhiệm vụ cho các biểu diễn đa ngôn ngữ hoạt động theo cách tương tự như
Nhiệm vụ đào tạo trước TLM ngoại trừ tính chất của dữ liệu đầu vào. sử dụng TLM
các câu song song làm đầu vào, tuy nhiên ALM sử dụng các câu chuyển mã
được tạo ra từ các câu song song. Trong các câu chuyển mã, một số
Machine Translated by Google
các cụm từ của mỗi cặp câu được hoán đổi ngẫu nhiên với cụm từ đã dịch
tương ứng. Đối với cặp câu song song (x, y) trong đó câu nguồn x = {x1,
x2, . . . , } và câu đích y = {y1, y2, . . . , }, đầu vào của mô hình ALM
là một chuỗi chuyển mã u = {u1, u2, . . . , } gồm có cặp (x, y). u[i,j]
được gán cho x[a,b] hoặc y[c,d] trong đó ràng buộc là hai chuỗi này là
bản dịch tương đương trong một cặp song song (x, y) sao cho 1 ≤ a ≤ b ≤ |
x| và 1 ₫ c ₫ d ₫ |y|.
Tỷ lệ mã thông báo nguồn x trong chuỗi chuyển mã u là α. Nói cách khác,
nếu α = 1 thì toàn bộ chuỗi đầu vào là đơn ngữ và bao gồm câu nguồn x,
nếu α = 0 thì chuỗi đầu vào chỉ là câu đích y và chúng ta nhận được các
chuỗi chuyển mã bằng cách sử dụng 0 < α < 1.
Để xây dựng dữ liệu chuyển mã, một công cụ được sử dụng để thực hiện
căn chỉnh từ giữa câu nguồn và câu đích trong kho ngữ liệu song song và
bảng cụm từ song ngữ được trích xuất bằng kỹ thuật dịch máy. Tiếp theo,
dữ liệu chuyển mã được xây dựng bằng cách thay thế các cụm từ nguồn và
đích theo tỷ lệ α. Cho rằng α quyết định ngẫu nhiên cụm từ nào được chọn
từ câu nguồn so với câu đích, mỗi cặp câu có thể tạo ra nhiều chuỗi
chuyển mã rất hữu ích trong việc khắc phục kích thước thường bị giới hạn
của ngữ liệu song song sẵn có. Sau đó, ALM tiến hành bằng cách sử dụng
tác vụ huấn luyện trước MLM tiêu chuẩn trên dữ liệu chuyển mã. Về mặt
hình thức, đối với cặp câu song song (x, y), gọi z là câu chuyển mã được
tạo từ x và y thì mất ALM được xác định
BẰNG:
(z(x,y)) 1
L ALM =
logP(zi |z\M ) (4.5)
|M| i M
trong đó z\M là phiên bản bị che của z và M là tập hợp các vị trí mã thông báo
bị che trong z\M .
Hình 4.3 minh họa cách ALM tạo ra một tập hợp dữ liệu huấn luyện chuyển mã
bằng cách sử dụng một cặp câu song song, cặp câu này được sử dụng để huấn luyện
một biến áp MLM.
4.1.2.5 Bộ mã hóa
Unicoder [125] là một kiến trúc khác để học các biểu diễn đa ngôn ngữ
bằng cách sử dụng ngữ liệu song song. Nó sử dụng kiến trúc tương tự như
XLM và giới thiệu ba nhiệm vụ đào tạo trước đa ngôn ngữ mới; cụ thể là
Phục hồi từ đa ngôn ngữ (CLWR), Phân loại diễn giải đa ngôn ngữ (CLPC) và
LM che dấu đa ngôn ngữ (CLMLM).
Machine Translated by Google
Hình 4.3 Minh họa Mô hình ngôn ngữ thay thế (ALM) [282] trong đó một cặp
câu song song (x, y) được sử dụng để tạo ra nhiều ví dụ chuyển đổi mã được
sử dụng để huấn luyện một máy biến áp MLM.
Phục hồi từ đa ngôn ngữ (CLWR) CLWR [125] sử dụng ngữ liệu song song để học
cách sắp xếp từ giữa hai ngôn ngữ. Nhiệm vụ đào tạo trước bắt đầu bằng một
ma trận chú ý có thể huấn luyện được [17] để học cách biểu diễn các phần
nhúng mã thông báo ngôn ngữ nguồn theo các phần nhúng mã thông báo ngôn ngữ
tar-get. Sau đó, phép biến đổi đã học trong ma trận chú ý sẽ được cung cấp
cho mô hình đa ngôn ngữ để tìm hiểu cách xây dựng lại quá trình nhúng mã
thông báo nguồn. Về hình thức, cho một cặp câu song song (x, y), trong đó
x = (x1, x2, . . . , xm) là một câu có m từ từ ngôn ngữ nguồn s và y = (y1,
y2, . . . , yn) là một câu có n từ của ngôn ngữ đích t. CLWR bắt đầu bằng
cách biểu diễn mỗi xi dưới dạng
Rh bởi tất cả các từ nhúng của y [125]:
t
x
tôi
N
t = t
x
tôi
softmax (Aij ) yj (4.6)
j=1
x tôi ở đâuS t
Rh và y , Rh là biểu diễn của xi và yj , đặc biệt
j
và h biểu thị thứ nguyên biểu diễn, A Rm×n là ma trận chú ý được xác định
như sau:
S t
Aij = W x j
tôi , yt
xs
, ji y
(4.7)
Phân loại diễn giải đa ngôn ngữ (CLPC) CLPC [125] giới thiệu một cách khác
để sử dụng dữ liệu song song bằng cách đề xuất một cách diễn giải
Machine Translated by Google
nhiệm vụ huấn luyện trước phân loại cho các cặp câu song song (x, y), trong đó
Cặp câu song song (x, y) là cặp câu thuộc lớp dương và không song song
(x, z) là lớp phủ định. Các mẫu dữ liệu huấn luyện được chọn bằng cách sử dụng
một mô hình phát hiện diễn giải nhỏ hơn sao cho cho mỗi (x, y) và
LM LM che dấu đa ngôn ngữ (CLMLM) CLMLM [125] là một phần mở rộng của TLM với
cùng sơ đồ chú ý đa ngôn ngữ. Tuy nhiên,
trong khi TLM lấy các cặp câu song song, đầu vào của CLMLM được tạo ở cấp độ tài
tài liệu (tức là một tài liệu đầy đủ với nhiều bản dịch song song) là
được thay thế bằng các bản dịch ngôn ngữ khác. Điều này được lấy cảm hứng từ một số
đã báo cáo thành công về việc đào tạo trước bằng cách sử dụng văn bản đơn ngữ dài
hơn. Mô hình Uni-Code được khởi tạo với mô hình XLM và sau đó được đào tạo trước
sử dụng các tác vụ MLM, TLM, CLWR, CLPC và CLMLM kết hợp
và tinh chỉnh trên các điểm chuẩn XNLI và XQA.
Mô hình đa ngôn ngữ lý thuyết thông tin (INFOXLM) [47] tiếp cận vấn đề căn chỉnh
biểu diễn đa ngôn ngữ từ một
trên thực tế, các nhiệm vụ trước đào tạo có thể được coi là tối đa hóa thông tin
lẫn nhau giữa các bối cảnh đa ngôn ngữ với mức độ chi tiết khác nhau. Vì
Ví dụ, InfoXLM cho thấy mô hình ngôn ngữ mặt nạ đa ngôn ngữ
(mMLM) về cơ bản nhiệm vụ đào tạo trước sẽ tối đa hóa thông tin lẫn nhau
giữa các mã thông báo được che dấu và ngữ cảnh của chúng trong cùng một ngôn ngữ. TRÊN
mặt khác, mã thông báo cố định trên các ngôn ngữ thúc đẩy đa ngôn ngữ
bối cảnh có mối tương quan chặt chẽ với nhau. TLM cũng có cách giải thích theo lý
thuyết thông tin, trong đó nó được chứng minh là tối đa hóa thông tin lẫn nhau.
giữa các mã thông báo bị che và bối cảnh ngôn ngữ song song, phục vụ
như một cơ chế căn chỉnh biểu diễn đa ngôn ngữ tiềm ẩn. Bằng cách sử dụng khung
nhiệm vụ đào tạo trước đa ngôn ngữ mới dựa trên phương pháp học tập tương phản, cụ thể là
Học tập tương phản đa ngôn ngữ (XLCO) XLCO [47] đề xuất một cách tiếp cận lý
thuyết thông tin để tạo ra sự phản đối đa ngôn ngữ bằng cách sử dụng ngữ liệu song
của câu song song so với câu không song song, từ đó hình thành nên cách học
tương phản. TLM được hiển thị, trong khuôn khổ thông tin-oretic, để tối đa hóa
thông tin lẫn nhau về chuỗi mã thông báo. TRÊN
mặt khác, XLCO tối đa hóa thông tin lẫn nhau ở cấp độ trình tự giữa các câu
song song. Cho (xi ,yi) là một cặp câu song song, trong đó
N là tập hợp các câu của
yi là bản dịch của xi , và {yj}
j=1,j=i
cùng ngôn ngữ với yi nhưng không phải là bản dịch của xi . XLCO tối đa hóa
nội dung thông tin giữa xi và yi sử dụng dựa trên InfoNCE [251]
hàm mất được định nghĩa là:
exp(f(xi) f(yi))
L (x, tôi, yi)
= nhật ký (4.8)
XLCO N
j=1 exp(f(xi)f(yj )
nhau về chuỗi mã thông báo đơn ngữ (MMLM), chuỗi mã thông báo đa ngôn ngữ
thông tin lẫn nhau (TLM) và thông tin lẫn nhau ở cấp độ trình tự đa ngôn ngữ
(XLCO).
4.1.2.7 Bộ mã hóa hai chiều đa ngôn ngữ được căn chỉnh (AMBER)
Bộ mã hóa hai chiều đa ngôn ngữ được căn chỉnh (AMBER) [121] là một kỹ thuật
tạo ra các biểu diễn đa ngôn ngữ bằng cách sử dụng dữ liệu song song
với các nhiệm vụ đào tạo trước về căn chỉnh cấp độ từ và cấp độ câu, cụ thể là
ngược lại đối với Ay x, mong muốn có sự sắp xếp tương tự cho các từ bằng cách
sử dụng ma trận chú ý Ax y hoặc Ay x . Để đạt được mục đích đó, mô hình là
Machine Translated by Google
Căn chỉnh câu đa ngôn ngữ (CLSA) CLSA [121] được hủy ký hiệu để thực thi việc
căn chỉnh các cách trình bày câu trên các ngôn ngữ bằng cách sử dụng dữ liệu
song song. Gọi M và P là đơn ngữ và song song
dữ liệu tương ứng. Với mỗi cặp câu song song (x, y), câu phân biệt
phần nhúng cho cả x và y được tạo riêng biệt, cụ thể là cx và
cy, tương ứng. cx và cy thu được bằng cách lấy trung bình của lớp cuối cùng
nhúng của bộ mã hóa. Việc căn chỉnh nhúng diễn ra bởi
khuyến khích mô hình dự đoán bản dịch y chính xác cho đầu vào
câu x bằng cách sử dụng hàm loss sau:
T
c x cy
e
(x,y)
L CLSA = nhật ký T (4.9)
c x cy
e
y M P
(x,y)
nơi y trong L CLSA có thể là bất kỳ câu nào và không hạn chế ngôn ngữ.
AMBER được đào tạo bằng cách sử dụng kết hợp MLM, TLM, CLWA,
Các nhiệm vụ của CLSA và được đánh giá dựa trên điểm chuẩn XTREME, trong đó nó
4.1.2.8 ERNIE-M
Nhiều kỹ thuật đã cho thấy giá trị của việc sử dụng ngữ liệu song song và ngữ
liệu đơn ngữ để có được các biểu diễn đa ngôn ngữ được căn chỉnh tốt hơn. Tuy
nhiên, ngữ liệu song song luôn bị giới hạn về kích thước so với ngữ liệu đơn ngữ.
dữ liệu, hạn chế tiến trình có thể xảy ra trừ khi chúng tôi thu thập được các
kho dữ liệu song song khá lớn. ERNIE-M [194] sử dụng ngữ liệu đơn ngữ lớn và
ngữ liệu song song hạn chế để tạo ra các biểu diễn đa ngôn ngữ. Để nâng cao
khả năng biểu diễn được tạo ra, ERNIE-M tạo ra các câu giả song song bằng cách
sử dụng ngữ liệu đơn ngữ lớn có sẵn và sau đó sử dụng chúng cùng với
với dữ liệu song song để cải thiện sự liên kết của các biểu diễn đa ngôn ngữ.
ERNIE-M đề xuất hai nhiệm vụ đào tạo trước, Chú ý chéo
nhất định (x, y), mã thông báo bị che trong x có quyền truy cập và có thể có khả năng
Machine Translated by Google
Hình 4.4 LM che dấu sự chú ý chéo (CAMLM) trong đó mã thông báo bị
che chỉ có thể tham dự các câu đối diện để dự đoán [194].
chú ý đến ngữ cảnh của x và ngữ cảnh của y, đồng thời điều tương tự
cũng áp dụng cho mã thông báo bị che trong y. Mặt khác, CAMLM hạn chế
TLM bằng cách chỉ giữ quyền truy cập vào câu song song tương ứng. Do
đó, mã thông báo bị che trong x chỉ có thể sử dụng ngữ cảnh y để dự
đoán và ngược lại cho y. Việc cấm tham gia vào ngữ cảnh của cùng một
câu với mã thông báo bị che sẽ buộc thuật toán phải học cách biểu diễn
bằng ngôn ngữ song song. Mặt khác, thuật toán có thể đi theo con đường
dễ dàng hơn và thiên về sử dụng cùng một câu của mã thông báo bị che
giấu để đưa ra dự đoán. Sử dụng cùng một thiết lập trong TLM, trong
đó đối với cặp câu (x, y), hãy để Mx và My biểu thị tập hợp các vị trí
bị che trong cả hai câu, sau đó x\Mx và y\My sẽ biểu thị các phiên bản
bị che của x và y. Hàm mất mát cho CAMLM được định nghĩa như sau:
(x,y) 1 1
L CAMM
=
logP(xi |y\My ) logP(yi |x\Mx )
|Mx| i Mx |Của tôi|
tôi của tôi
(4.10)
Hình 4.4 minh họa sự chú ý đa ngôn ngữ của CAMLM. Như được mô tả, mã thông báo h2
liên quan đến mã thông báo trong câu y chứ không phải x và mã thông báo h5 và h6
chỉ liên quan đến mã thông báo trong câu x chứ không phải y.
Quay lại Mô hình ngôn ngữ đeo mặt nạ dịch thuật (BTMLM)
BTMLM [194] tận dụng dịch ngược [222] để tránh vấn đề thiếu ngữ liệu
song song để học các cách biểu diễn đa ngôn ngữ. Nó
Machine Translated by Google
Hình 4.5 Minh họa nhiệm vụ đào tạo trước BTMLM [194] . Bước đầu tiên ở
bên trái là sử dụng CAMLM đã được huấn luyện trước để tạo ra các câu
giả song song. Bước thứ hai bên phải là nơi các câu giả song song được
tạo ra sẽ được sử dụng để huấn luyện thêm CAMLM.
bao gồm hai bước; Bước đầu tiên tạo ra dữ liệu giả song song từ một kho
ngữ liệu đơn ngữ nhất định. ERNIE-M [194] xây dựng các câu giả song song
bằng cách huấn luyện trước mô hình bằng cách sử dụng CAMLM, sau đó thêm
mặt nạ giữ chỗ vào cuối câu đơn ngữ ban đầu để hiển thị vị trí và ngôn
ngữ mà mô hình sẽ tạo ra. Bước thứ hai che dấu các mã thông báo trong
câu đơn ngữ ban đầu, sau đó nối nó với câu giả song song đã tạo. Cuối
cùng, mô hình sẽ dự đoán các mã thông báo bị che giấu. Hình 4.5 thể hiện
hai bước của BTMLM.
Do hiệu suất vượt trội của chúng trong kiến trúc XLM, các nhiệm vụ
đào tạo trước mMLM và TLM cũng được sử dụng như một phần của quá trình
đào tạo ERNIE-M. ERNIE-M được huấn luyện với kho ngữ liệu đơn ngữ và song
song với 96 ngôn ngữ và được khởi tạo với trọng số XLM-R. ERNIE-M đã thể
hiện hiệu suất tiên tiến trên một loạt nhiệm vụ hạ nguồn đa dạng bao gồm
NER, Trả lời câu hỏi đa ngôn ngữ, Nhận dạng diễn giải đa ngôn ngữ và
Truy xuất câu đa ngôn ngữ.
Học tương phản theo cấp bậc (HICTL) [266] là một nhiệm vụ đào tạo trước
đa ngôn ngữ khác sử dụng các hàm mất dựa trên InfoNCE [251] . Trong khi
Machine Translated by Google
XLCO dựa trên câu, HICTL cung cấp cả cách biểu diễn đa ngôn ngữ ở cấp độ câu
và từ.
Các biểu diễn mức câu được xây dựng theo cách tương tự như XCLO ngoại
trừ việc lấy mẫu phủ định trong đó thay vì thu thập nội suy tuyến tính được
N
các mẫu từ biểu j=1,j=i làm mịn [31, 300] giữa
diễn câu {yj} được sử dụng để xây dựng các mẫu phủ định cứng.
Đối với các cách biểu diễn ở cấp độ thế giới, điểm tương tự về độ mất
tương phản được tính giữa cách biểu diễn mã thông báo câu song song (xi ,yi)
[CLS] và các cách biểu diễn từ khác. Đối với mỗi đầu vào cặp câu song song
(xi ,yi), một túi từ W được duy trì, trong đó tất cả các từ trong W được coi
là mẫu tích cực và tất cả các từ khác trong từ vựng là mẫu tiêu cực. Để lấy
mẫu từ phủ định hiệu quả, HICTL không lấy mẫu từ toàn bộ từ vựng mà xây dựng
một tập hợp các từ phủ định rất gần với biểu diễn mã thông báo câu song song
(xi ,yi) [CLS].
Nhúng câu BERT bất khả tri về ngôn ngữ (LaBSE) [88] là một kiến trúc để đào
tạo các cách biểu diễn câu đa ngôn ngữ kết hợp các nhiệm vụ đào tạo trước
Mô hình ngôn ngữ mặt nạ (MLM) và Mô hình ngôn ngữ dịch (TLM) từ XLM [146 ]
với nhiệm vụ xếp hạng dịch thuật bằng cách sử dụng bộ mã hóa kép hai chiều
có tổn thất softmax biên cộng thêm [283]. Bộ mã hóa kép, như trong Hình 4.6,
bao gồm hai bộ mã hóa mBERT được ghép nối. Biểu diễn câu mã thông báo [CLS]
từ cả hai bộ mã hóa được đưa vào chức năng tính điểm. Hình 4.6 minh họa kiến
trúc LaBSE.
Bộ mã hóa kép hai chiều với lề phụ Softmax Kiến trúc bộ mã hóa kép [283] đã
được chứng minh là rất hiệu quả để xếp hạng các tác vụ như tác vụ truy xuất
bản dịch được LaBSE sử dụng để nhúng đa ngôn ngữ. Về mặt hình thức, đối với
một cặp câu song song (xi , yi), truy xuất bản dịch là một bài toán xếp hạng
nhằm đặt yi , bản dịch đúng của xi , cao hơn tất cả các câu trong không gian
bản dịch Y. P (yi | xi) được hình thành BẰNG:
e φ(xi,yi)
P (yi | xi) = φ(xi,y¯)
(4.11)
e y¯ Y
Machine Translated by Google
Hình 4.6 Minh họa kiến trúc nhúng câu BERT không phụ thuộc ngôn ngữ (LaBSE)
[88].
trong đó φ là hàm cho điểm về độ tương tự giữa các biểu diễn của xi và yi
Trong quá trình huấn luyện P (yi | xi) được tính gần đúng bằng cách lấy mẫu âm tính,
e φ(xi,yi)
Papprox (yi | xi) = N (4.12)
e φ(xi,yi) + φ(xi,yn) e n=1,n=i
Do đó, đối với các cặp nguồn và đích song song (xi , yi), mô hình có thể được
tối ưu hóa bằng cách sử dụng mục tiêu log-likelihood [283]:
N
1 e φ(xi,yi)
Ls = nhật ký
N (4.13)
N e φ(xi,yi) + e n=1,n=iφ(xi,yn)
tôi=1
N
1 e φ(yi,xi)
L =
S N
N φ(yi,xi) + φ(yi,xn) e n=1,n=i
tôi=1
e
(4.14)
Ls = Ls + L S
Machine Translated by Google
Để tăng thêm sự tách biệt giữa các bản dịch chính xác với các bản dịch
không gần nhất rất gần nhau, hàm tính điểm φ được mở rộng với lề cộng softmax,
đưa ra một lề m xung quanh các cặp song song dương (xi , yi).
φ (xi , yj ) m nếu i = j φ
φ (xi , yj ) = (4.15)
(xi , yj ) nếu i = j
Áp dụng φ (xi , yj ) cho tổn thất hai chiều Ls, tổn thất hai chiều biên
cộng sẽ trở thành như sau [283]:
1 N
e φ(xi,yi) m
Lâm =
N φ(xi,yi) m + N
φ(xi,yn) e n=1,n=i
tôi=1
e
(4.16)
Lam = Lam + L am
Như đã đề cập trước đó, LaBSE đào tạo trước các bộ mã hóa dựa trên BERT của
mình bằng các tác vụ đào tạo trước Mô hình ngôn ngữ đeo mặt nạ (MLM) và Mô
hình ngôn ngữ dịch (TLM) bằng cách sử dụng ngữ liệu đơn ngữ và song song.
LaBSE huấn luyện các bộ mã hóa máy biến áp bằng cách sử dụng phương pháp xếp
chồng lũy tiến ba giai đoạn. Đối với bộ mã hóa lớp L , trước tiên, nó học mô
hình các lớp fracL4 , sau đó là các lớp fracL2 và cuối cùng là tất cả các
lớp L. Trong các bước huấn luyện kế tiếp, các tham số của mô hình các bước
trước đó sẽ được sao chép sang các bước tiếp theo.
Bộ mã hóa câu phổ quát đa ngôn ngữ (mUSE) [284, 49] đề xuất một cách tiếp cận
cho việc học nhúng câu đa ngôn ngữ bằng cách kết hợp việc học đa nhiệm về
cách biểu diễn câu đơn ngữ và bộ mã hóa kép cho việc học nhúng câu đa ngôn
ngữ để truy xuất văn bản song song. Bằng cách kết hợp hai phương pháp tiếp
cận, mUSE chuyển hiệu suất mạnh mẽ đã học được từ các nhiệm vụ đơn ngữ sang
việc học tập dễ dàng bằng các ngôn ngữ khác. Về cơ bản, đối với một cặp ngôn
ngữ, ngôn ngữ nguồn và ngôn ngữ đích nhất định, mô hình sử dụng kiến trúc đa
nhiệm để học qua (i) các nhiệm vụ đơn ngữ của ngôn ngữ nguồn, (ii) các nhiệm
vụ ngôn ngữ đích đơn ngữ và (iii) từ nguồn tới đích. nhiệm vụ dịch ngôn ngữ
đóng vai trò như một nhiệm vụ bắc cầu để khuyến khích sự liên kết thể hiện
đa ngôn ngữ trên tất cả các nhiệm vụ được đào tạo. Hình 4.7 cung cấp minh họa
về kiến trúc cho QA, NLI và các tác vụ dịch thuật bắc cầu.
Machine Translated by Google
Hình 4.7 Minh họa kiến trúc mUSE cho QA, NLI và các nhiệm vụ dịch thuật bắc cầu [284].
mUSE sử dụng bộ mã hóa kép để thực hiện việc học đa nhiệm trên các nhiệm vụ có thể được biểu
diễn dưới dạng xếp hạng các cặp câu đầu vào-phản hồi. Một số nhiệm vụ nằm trong khuôn khổ này một
cách tự nhiên, chẳng hạn như nhiệm vụ QA và dịch thuật. Các nhiệm vụ khác có thể cần được cải tiến
đặc biệt như NLI. Xếp hạng phản hồi đầu vào có thể được mô tả chính thức như sau: Đối với (các )
cặp phản hồi đầu vào- sR , mục tiêu là đưa s lên cao hơn tất cả các re- SR có thể có. Nói cách
TÔI
e φ(s I Tôi
R =
P s tôi
TÔI
| S Tôi
R
i ) ,sR φ(s
Tôi
j
R ) ,sR SR e
s
j
(4.17)
TÔI
R R
tôi φ tsôi , sR j Tôi = g s i g
s j
TÔI R
trong đó g là hàm mã hóa câu đầu vào và g là hàm mã hóa câu, g và g là phản hồi tạo
TÔI R
nên bộ mã hóa kép. Cả hai đều được thực hiện
R
I và hàm bằng cách sử dụng máy biến áp và được đào tạo về từng nhiệm vụ.
R TÔI
Như được minh họa trong Hình 4.7, mUSE sử dụng một bộ mã hóa dùng chung duy nhất hỗ trợ nhiều
tác vụ xuôi dòng. Nhiệm vụ đào tạo bao gồm: nhiệm vụ dự đoán QA, nhiệm vụ NLI và xếp hạng dịch
thuật. Các lớp dành riêng cho nhiệm vụ cho các nhiệm vụ QA và NLI được thêm vào sau bộ mã hóa dùng
chung để giúp đáp ứng nhu cầu biểu diễn cho từng nhiệm vụ.
Machine Translated by Google
4.1.4 Tạo ngôn ngữ tự nhiên đa ngôn ngữ (NLG đa ngôn ngữ)
Tất cả các nhiệm vụ đào tạo trước đa ngôn ngữ được thảo luận trong phần trước đều là
chỉ được sử dụng cho các nhiệm vụ Hiểu ngôn ngữ tự nhiên (NLU). Phần này
thảo luận về một số nhiệm vụ đào tạo trước được sử dụng bởi đa ngôn ngữ tổng quát
các mô hình như MASS [231], BART [155], mBART [169] và XNLG [46].
Mô hình ngôn ngữ đeo mặt nạ (MLM) được xử lý dưới dạng phân loại cấp mã thông báo
vấn đề về các mã thông báo bị che, trong đó các từ gốc được xác định trước bằng
cách cung cấp các vectơ mã thông báo bị che cho lớp Softmax trên
từ vựng. MLM cũng được sử dụng để huấn luyện trước các cấu trúc máy biến áp chỉ
dành cho bộ mã hóa, sau đó được sử dụng cho các tác vụ NLU. Seq2SeqLM mở rộng MLM
thông thường sang các mô hình biến áp bộ mã hóa-giải mã huấn luyện trước như
T5[205], mT5 [281] và MASS [231]. Mặc dù bối cảnh của MLM bao gồm
tất cả các mã thông báo trong chuỗi đầu vào, ngữ cảnh của Seq2SeqLM bao gồm tất cả
mã thông báo trong chuỗi mặt nạ đầu vào và mã thông báo bên trái trong chuỗi mục
tiêu được xác định trước. Với chuỗi mặt nạ của bộ mã hóa làm đầu vào,
bộ giải mã dự đoán các từ bị che một cách tuần tự từ trái sang phải.
Điều này cho phép các kiến trúc máy biến áp được đào tạo trước với Seq2SeqLM
được sử dụng cho các nhiệm vụ NLG. Đối với một chuỗi đầu vào nhất định của mã thông báo x, hãy đặt xˆ là
phiên bản bị che của x, tức là x có khoảng n-gram bị che. Với ls được xác định
là độ dài của khoảng n-gram bị che, khi đó mất Seq2SeqLM được định nghĩa là
1 j
L (x) =
logP(xs|x, i:s
x ˆ 1) (4.18)
Seq2SeqLM
ls s=tôi
[155, 169] là nhiệm vụ huấn luyện trước cho kiến trúc máy biến áp mã hóa-giải mã.
Trong khi Seq2SeqLM dựa trên việc dự đoán các mã thông báo bị che giấu thì DAE
không che giấu các thành phần văn bản mà làm hỏng chúng và sau đó xây dựng lại các
giá trị ban đầu. DAE làm hỏng văn bản ở cấp độ mã thông báo bằng cách
xóa mã thông báo và che dấu mã thông báo, ở cấp độ câu bằng cách thay đổi câu, ở
cấp độ khoảng văn bản bằng cách điền văn bản hoặc ở cấp độ tài liệu
bằng cách xoay tài liệu. DAE có hiệu suất lấy mẫu cao hơn Seq2SeqLM
vì nó cung cấp nhiều tín hiệu hơn cho việc huấn luyện mô hình. DAE tạo ra nhiều hơn
tín hiệu huấn luyện vì nó tái tạo lại văn bản gốc hoàn chỉnh, trong khi
Seq2SeqLM chỉ tái tạo lại các mã thông báo bị che giấu. BART [155] mã hóa
chuỗi đầu vào bị hỏng khi sử dụng bộ mã hóa hai chiều và tái tạo lại
văn bản gốc bằng cách sử dụng bộ giải mã từ trái sang phải. Tương tự với Seq2SeqLM def-
Machine Translated by Google
ban đầu, đối với một văn bản đầu vào x , gọi xˆ là phiên bản bị hỏng của x,
nhất định thì mất DAE được định nghĩa là
|x|
1
L (x) =
logP(xi |x,
ˆ x
<i) (4.19)
DAE
|x| tôi=1
Mã hóa tự động đa ngôn ngữ (XAE) Trong khi DAE được đào tạo về
nhiều ngôn ngữ, đầu vào mã hóa và đầu ra giải mã luôn giống hệt nhau. Kết quả
là, các mô hình phát hiện mối tương quan không chính xác giữa
ký hiệu ngôn ngữ và các cụm từ được tạo ra. Nói cách khác, các mô hình có thể
bỏ qua các ký hiệu ngôn ngữ được cung cấp và tạo câu trực tiếp
trong ngôn ngữ đầu vào. XNLG [46] cung cấp tính năng mã hóa tự động đa ngôn ngữ
(XAE) để khắc phục vấn đề này. Không giống như DAE, đầu vào mã hóa và đầu ra
giải mã của XAE bằng các ngôn ngữ riêng biệt, có thể so sánh với bản dịch máy.
Ngoài ra, XNLG thực hiện tối ưu hóa hai giai đoạn
thông số. Ban đầu, nó huấn luyện bộ mã hóa bằng cách sử dụng các công việc MLM và TLM.
Sau đó, ở bước thứ hai, nó sửa chữa bộ mã hóa và huấn luyện bộ giải mã
sử dụng các tác vụ DAE và XAE. Phương pháp này huấn luyện trước một cách hiệu quả tất cả
các tham số, đồng thời thu hẹp khoảng cách giữa đào tạo trước MLM và
tinh chỉnh giải mã tự hồi quy.
Mô hình ngôn ngữ đa ngôn ngữ (mLM) sử dụng các nguồn dữ liệu khác nhau trong
giai đoạn tiền đào tạo. Cụ thể hơn, ngữ liệu đơn ngữ lớn
thường được sử dụng trong các ngôn ngữ riêng lẻ và ngữ liệu song song là
được sử dụng giữa một số ngôn ngữ. Nguồn của ngữ liệu đơn ngữ
khác nhau đối với các mLM hiện có khác nhau. Ví dụ, mBERT [72] sử dụng
Wikipedia để đào tạo trước. Trong khi đó, trong [61], Conneau et al. đã sử dụng nhiều
kho dữ liệu thu thập thông tin chung lớn hơn để huấn luyện XML-R. Các mô hình khác sử dụng
dữ liệu được thu thập thông tin tùy chỉnh. Ví dụ, IndicatorBERT [137] được đào tạo về tùy chỉnh
thu thập dữ liệu bằng các ngôn ngữ Ấn Độ. Bảng 4.1 cung cấp tóm tắt về
các bộ dữ liệu được sử dụng để đào tạo trước các mLM khác nhau.
rõ ràng là số lượng bài báo có sẵn bằng tiếng Anh cao hơn nhiều
hơn các ngôn ngữ khác như tiếng Ba Tư hay tiếng Urdu. Tương tự, số lượng
dữ liệu song song có sẵn cho các cặp ngôn ngữ rất khác nhau tùy thuộc vào
sự phổ biến của những ngôn ngữ như vậy. Để vượt qua những thách thức này, hầu hết
mLM sử dụng trọng số dữ liệu được làm mịn theo cấp số nhân trong khi tạo dữ
liệu trước khi huấn luyện. Trọng số này ngăn không cho các ngôn ngữ tài nguyên
thấp được thể hiện dưới mức. Cụ thể hơn, nếu m% trên tổng số
dữ liệu tiền huấn luyện thuộc về ngôn ngữ i thì xác suất của lan này là 100 .
k
là pi = Mỗi xác suất sau đó được điều biến bởi một thước đo lũy thừa
hệ số α, thì các giá trị kết quả được chuẩn hóa để cung cấp
phân phối xác suất cuối cùng trên các ngôn ngữ. Phân phối xác suất này được sử
dụng để lấy mẫu dữ liệu trước khi huấn luyện từ các đối tượng khác nhau.
ngôn ngữ. Do đó, các ngôn ngữ có nguồn tài nguyên thấp sẽ bị lấy mẫu quá mức trong khi
ngôn ngữ tài nguyên cao sẽ được lấy mẫu. Quá trình như vậy đảm bảo việc sử dụng
một bộ từ vựng hợp lý (trong khi đào tạo mô hình Word-Piece [220] hoặc
SentencePiece [144]) bằng các ngôn ngữ có nguồn tài nguyên thấp.
Bảng 4.1 tóm tắt số lượng ngôn ngữ được hỗ trợ bởi các
mLM và tổng số từ vựng được chúng sử dụng. Thông thường, mLM
hỗ trợ nhiều ngôn ngữ hơn có vốn từ vựng lớn hơn.
Các phương pháp được sử dụng thường xuyên nhất để đánh giá mLM là hiệu suất đa
ngôn ngữ đối với các tác vụ tiếp theo, đòi hỏi phải tinh chỉnh mô hình
sử dụng dữ liệu dành riêng cho nhiệm vụ từ ngôn ngữ có nguồn tài nguyên cao như tiếng Anh
và đánh giá nó trên các ngôn ngữ khác. XGLUE [160], XTREME [122],
XTREME-R [216] là một số phương pháp học tập đa ngôn ngữ tiên tiến nhất
điểm chuẩn. Như được trình bày trong Bảng 4.2, các điểm chuẩn này cung cấp dữ
liệu đào tạo/đánh giá cho nhiều nhiệm vụ và ngôn ngữ. Những cái này
nhiệm vụ có thể được phân loại thành: phân loại, dự đoán cấu trúc, trả lời câu
hỏi và truy xuất ngữ nghĩa.
Để phân loại, nhiệm vụ tiếp theo là phân loại đầu vào bao gồm một câu hoặc một
cặp câu thành một trong k lớp.
Một ví dụ là bài toán Suy luận ngôn ngữ tự nhiên (NLI), trong đó
yêu cầu đầu vào là một cặp cụm từ và đầu ra là một trong
ba loại: ngụ ý, trung lập hoặc mâu thuẫn. XNLI [64], PAWS-X [285],
XCOPA [200], NC [160], QADSM [160], WPR [160] và QAM [160] là
Machine Translated by Google
BẢNG 4.2 Điểm chuẩn của mô hình ngôn ngữ đa ngôn ngữ được phân loại theo nhiệm vụ NLP
[74]
Nhiệm vụ Corpus Đào tạo nhà phát triển Bài kiểm tra
Bộ kiểm tra #Langs. Nhiệm vụ Điểm chuẩn miền số liệu
XNLI 392.702 2.490 5.010 Bản dịch 15 bản dịch Lý Acc. Linh tinh. XT, XTR, XG
CHÂN-X 49.401 2.000 2.000 7 do diễn giải Acc. Wiki / Quora XT, XTR, XG
XCOPA 33.410+400 100 500 Bản dịch 11 NLI đã được Acc. linh tinh XTR
Phân loại NC 100k 10k 100k 10k - 5 Acc. Tin tức XG
gửi. Đã gửi
XQuAD 87.599 34.736 1.190 Bản dịch 11 Khai thác nhịp F1/EM Wikipedia XT, XTR
QA MLQA 4.517-11.590 Dịch thuật 7 Khai thác nhịp F1/EM Wikipedia XT, XTR
TyDiQA-GoldP 3,696 634 323-2,719 Ấn Độ chú thích. 9 Khai thác nhịp F1/EM Wikipedia XT, XTR
BUCC - - - 5 Đã gửi. Truy xuất F1 XT
1.896-14.330 Wiki / Tin tức
Tatoeba - - - Đã gửi. Truy xuất Acc. XT
1.000 33(122) 116.903 10.252 Linh tinh.
Truy xuất
Mewsli-X 428-1.482 ind. chú thích. 11(50) Lạng. ag. truy xuất mAP@20 Tin tức 1,190 XTR
LAReQA XQuAD-R 87.599 10.570 bản dịch 11 Lang. ag. truy xuất mAP@20 Wikipedia XTR
một số bộ dữ liệu phân loại văn bản đa ngôn ngữ nổi bật được sử dụng để
đánh giá mLM.
Nhiệm vụ là dự đoán nhãn cho mỗi từ trong câu đầu vào. Hai
các nhiệm vụ thường được thực hiện là gắn thẻ Phần lời nói (POS) và Đặt tên
Nhận dạng thực thể (NER). WikiANN-NER [193], CoNLL 2002 [246]
và bộ dữ liệu tác vụ chia sẻ CoNLL 2003 [247] rất phổ biến cho NER và
tập dữ liệu Phụ thuộc chung [192] được sử dụng để gắn thẻ POS.
Nhiệm vụ QA liên quan đến việc trích xuất khoảng phản hồi từ ngữ cảnh và câu hỏi.
Thông thường, dữ liệu đào tạo chỉ có thể truy cập được bằng tiếng Anh, nhưng việc đánh giá
Truy xuất ngữ nghĩa liên quan đến việc tìm kiếm một câu phù hợp trong
ngôn ngữ đích từ một tập hợp các câu được đưa ra trong
ngôn ngữ nguồn. Nhiệm vụ này được đánh giá bằng cách sử dụng các bộ dữ liệu sau:
Một trong những mục tiêu cuối cùng của việc học chuyển tiếp đa ngôn ngữ là tạo ra
mLM có hiệu suất đa ngôn ngữ không cần bắn tương xứng với các mô hình đơn ngữ được giám
sát chặt chẽ. Quy trình làm việc tiêu chuẩn để tạo mô hình đa ngôn ngữ không cần thực
hiện bao gồm việc sử dụng nhiều ngôn ngữ để đào tạo trước một
mLM, trong đó mLM học các cách biểu diễn đa ngôn ngữ. Ngươi mâu
sau đó được tinh chỉnh với tập dữ liệu được giám sát dành riêng cho nhiệm vụ từ một nguồn
ngôn ngữ. Cuối cùng, mô hình tinh chỉnh sẽ được sử dụng để thực hiện suy luận
trên cùng một nhiệm vụ từ nhiều ngôn ngữ đích khác nhau. Máy biến áp
đã cho thấy sự tiến bộ đáng kể trong việc học chuyển tiếp đa ngôn ngữ, đặc biệt là khi
nói đến phương pháp học tập không cần nỗ lực. Chi tiết về cách những người chuyển giới
thực hiện việc học chuyển tiếp đa ngôn ngữ vẫn đang được nghiên cứu tích cực.
khu vực. Phần này thảo luận về các lĩnh vực nghiên cứu tích cực để hiểu
các yếu tố chính ảnh hưởng đến việc học chuyển tiếp đa ngôn ngữ [74]. Các yếu tố được
thảo luận bao gồm: (i) yếu tố liên quan đến dữ liệu, (ii) kiến trúc mô hình
Từ vựng được chia sẻ Trước khi đào tạo mLM, văn bản từ tất cả các ngôn ngữ
được mã hóa bằng cách sử dụng mô hình WordPiece [220] hoặc SentencePiece [144] . Các
khái niệm chính là mã hóa từng từ thành các từ phụ xuất hiện thường xuyên nhất. Từ vựng
được công nhận trên tất cả các ngôn ngữ. Mã thông báo kết hợp này đảm bảo rằng
các từ phụ được chia sẻ trên một số lượng lớn các ngôn ngữ có liên quan chặt chẽ hoặc
thậm chí xa xôi. Vì vậy, nếu một từ phụ tồn tại trong ngôn ngữ đích
tập kiểm tra cũng xuất hiện trong tập huấn luyện của ngôn ngữ nguồn, một số mô hình
hiệu suất có thể được truyền tải thông qua vốn từ vựng chung này. Các
mối quan hệ giữa khả năng chuyển giao zero-shot đa ngôn ngữ và kích thước
sự chồng chéo từ vựng giữa các ngôn ngữ đã được kiểm tra trong [199] và
[271], trong đó mối tương quan tích cực mạnh mẽ đã được tìm thấy và tác động tích cực
lên các nhiệm vụ tiếp theo đã được chứng minh là nhất quán qua một số
lĩnh vực đa dạng bao gồm NER [246, 247], POS [192], XNLI [64], MLDoc
[221] và Phân tích cú pháp phụ thuộc [192]. Những quan sát này mang tính trực quan
và đưa ra một số lời giải thích cho việc liên kết biểu diễn đa ngôn ngữ
khi thực hiện đào tạo đa ngôn ngữ bằng cách sử dụng ngữ liệu đơn ngữ. Tuy nhiên, lĩnh
vực nghiên cứu này vẫn còn mới và các bằng chứng bổ sung vẫn đang được
được kiểm tra để xác nhận những quan sát này. Ví dụ, Karthikeyan và cộng sự.
Machine Translated by Google
[135] về mặt tổng hợp đã giảm sự trùng lặp từ vựng xuống 0, tuy nhiên, mức giảm
hiệu suất quan sát được trong quá trình học tập không bắn xuyên ngôn ngữ là rất
nhỏ, điều này làm suy yếu tác động được quan sát thấy của sự chồng chéo từ vựng
đối với việc học chuyển giao không bắn xuyên ngôn ngữ. Một công trình khác [10]
cho thấy ngay cả khi không có sự chồng chéo từ vựng, việc học chuyển giao ngôn
ngữ vẫn diễn ra bằng cách tinh chỉnh chính xác tất cả các lớp biến áp ngoại trừ
lớp nhúng đầu vào.
Kích thước dữ liệu đào tạo trước Hiệu quả của kích thước dữ liệu đào tạo trước
đối với đa ngôn ngữ đã được đánh giá trong [165] chứng tỏ rằng khi mBERT được đào
tạo trước trên kho văn bản lớn, việc chuyển giao giữa các ngôn ngữ được cải thiện.
Ngoài ra Lauscher và cộng sự. [148] cho thấy rằng hiệu suất của quá trình truyền
zero-shot có mối tương quan chặt chẽ với lượng dữ liệu trong ngôn ngữ đích được
sử dụng để huấn luyện trước mLM cho các tác vụ cấp cao hơn như XNLI và XQuAD.
Ngoài ra còn có một kết nối tích cực cho các tác vụ cấp thấp hơn như POS, phân
tích cú pháp phụ thuộc và NER, mặc dù nó không mạnh bằng sự liên kết với XNLI và
XQuAD.
Sử dụng Parallel Corpora Mặc dù mLM hoạt động tốt ngay cả khi không được đào tạo
cụ thể bằng các tín hiệu đa ngôn ngữ, nhưng có thể trực quan rằng việc đào tạo
có mục đích với các tín hiệu như vậy sẽ tăng hiệu suất. Trên thực tế, XLM trong
[63] và InfoXLM trong [47] chứng minh rằng việc sử dụng ngữ liệu song song kết
hợp với nhiệm vụ đào tạo trước TLM sẽ cải thiện hiệu suất. Nếu không có sẵn kho
ngữ liệu song song, [79] lập luận rằng việc đào tạo các mLM sử dụng kho ngữ liệu
tương tự (chẳng hạn như Wikipedia hoặc CommonCrawl) thì thích hợp hơn là sử dụng
kho ngữ liệu từ các nguồn khác nhau giữa các ngôn ngữ.
Khả năng của mô hình đa ngôn ngữ phụ thuộc vào số lớp, số lượng đầu chú ý và kích
thước của các biểu diễn ẩn.
Karthikeyan và cộng sự. [135] chứng minh rằng hiệu suất học chuyển tiếp đa ngôn
ngữ phụ thuộc nhiều vào độ sâu của mạng trong khi không phụ thuộc nhiều vào số
lượng người đứng đầu chú ý. Đặc biệt, họ chứng minh rằng có thể chuyển giao đủ
ngôn ngữ ngay cả khi chỉ tập trung một đầu. Hơn nữa, tổng số tham số trong mô
hình ít ảnh hưởng đến hiệu quả của việc chuyển giao ngôn ngữ hơn so với số lượng
lớp. Điều thú vị là, trong [79] việc chuyển giao đa ngôn ngữ của mBERT được cho
là do tập hợp tham số nhỏ của nó và do đó dung lượng bị hạn chế, điều này
Machine Translated by Google
buộc nó phải sử dụng các cấu trúc được chia sẻ để sắp xếp các biểu diễn trên mạng
thước đo.
Một quyết định kiến trúc quan trọng khác là bối cảnh tự chú ý
cửa sổ, đề cập đến số lượng mã thông báo được đưa vào mLM trong thời gian
đào tạo. Lưu và cộng sự. [165] chứng minh rằng mặc dù sử dụng bối cảnh nhỏ hơn
windows được ưa chuộng hơn khi dữ liệu huấn luyện trước còn thưa thớt, sử dụng
cửa sổ ngữ cảnh dài hơn sẽ tốt hơn khi có số lượng lớn đào tạo trước
dữ liệu có sẵn.
Trong [260] và [45] người ta cho rằng vì mLM có mô hình hạn chế
năng được nhiều ngôn ngữ sử dụng, chúng không thể nắm bắt được tất cả
sự tinh tế của một số ngôn ngữ như một mô hình đơn ngữ được đào tạo trước
Có thể. Họ chứng minh cách chắt lọc kiến thức từ một ngôn ngữ đơn ngữ
mô hình có thể nâng cao hiệu suất đa ngôn ngữ của mLM.
Chiến lược tinh chỉnh Trong [171] người ta đã thảo luận rằng việc tinh chỉnh một
mLM thay đổi các tham số của nó, làm suy giảm khả năng đa ngôn ngữ của nó bằng cách
xóa một phần các căn chỉnh đã học trong quá trình đào tạo trước. Họ chứng minh điều này
bằng cách chỉ ra rằng khi mLM được tinh chỉnh để gắn thẻ POS,
hiệu suất truy xuất đa ngôn ngữ của nó giảm đáng kể. Để khắc phục vấn đề này, họ khuyên
bạn nên sử dụng khung học tập liên tục để tinh chỉnh mô hình để mô hình không quên bản
gốc.
nhiệm vụ (MLM) mà nó đã được đào tạo. Họ tuyên bố kết quả được cải thiện trong
gắn thẻ POS đa ngôn ngữ, NER và truy xuất câu bằng phương pháp tinh chỉnh này.
Căn chỉnh các biểu diễn Trong [261, 168] , hiệu suất của chuyển giao xuyên ngôn ngữ
zero-shot được kiểm tra bằng cách sử dụng các biểu diễn được căn chỉnh ngầm được học
sau đó được căn chỉnh rõ ràng bằng cách sử dụng tập lệnh song song. Họ lưu ý
rằng sự liên kết rõ ràng mang lại hiệu suất được cải thiện. Lấy cái này
tính đến, Wang và cộng sự. [263] cung cấp một chiến lược rõ ràng để sắp xếp các cách
biểu diễn của các cặp từ phù hợp giữa các ngôn ngữ trong quá trình
đào tạo mBERT. Điều này được thực hiện bằng cách bao gồm một hàm mất mát
giảm thiểu khoảng cách Euclide giữa các từ nhúng của các từ được căn chỉnh.
Zhao và cộng sự. [298] cũng báo cáo các kết quả có thể so sánh được khi các biểu diễn
các cặp từ được căn chỉnh rõ ràng và các không gian vectơ được chuẩn hóa hơn nữa.
Machine Translated by Google
4.3.2 Biểu diễn đa ngôn ngữ theo ngôn ngữ bất khả tri
Bất chấp thành công lớn của các mô hình máy biến áp, chẳng hạn như BERT, trong việc
thúc đẩy lĩnh vực NLP và học máy nói chung, hoạt động bên trong
về cách các mô hình đó trích xuất và lưu trữ kiến thức vẫn chưa hoàn toàn
được hiểu rõ và là trọng tâm của nghiên cứu tích cực. Máy biến áp đa ngôn ngữ
chắc chắn không phải là ngoại lệ nhưng thậm chí còn hấp dẫn hơn khi họ dường như sử dụng
và chia sẻ kiến thức qua nhiều ngôn ngữ; tức là học chuyển tiếp đa ngôn ngữ. Điều này
đặt ra câu hỏi liệu người biến đổi đa ngôn ngữ có học được
các biểu diễn đa ngôn ngữ bất khả tri về ngôn ngữ. Một số cách tiếp cận có
được đề xuất để trả lời câu hỏi này, mỗi câu hỏi có một góc tấn công khác nhau; (i)
Nghiên cứu cắt bỏ, (ii) Thăm dò tác vụ và (iii) Thể song song
Đại diện.
Nghiên cứu cắt bỏ Một số nghiên cứu cắt bỏ đã được đề xuất để kiểm tra một số giả
thuyết về tính hợp lệ của các biểu hiện bất khả tri về ngôn ngữ trong các máy biến áp
đa ngôn ngữ. Giả thuyết đầu tiên được thử nghiệm trong [199]
là tập lệnh chung giữa ngôn ngữ tài nguyên cao là một điều khó hiểu
yếu tố cho hiệu suất máy biến áp đa ngôn ngữ tốt. Tuy nhiên đây là
được chứng minh là đúng khi sự chuyển giao đa ngôn ngữ xảy ra giữa các ngôn ngữ
không chia sẻ chữ viết như tiếng Urdu viết bằng chữ Ả Rập và tiếng Hindi bằng chữ De-
vanagari [199]. Công việc khác [229] đã kiểm tra mã thông báo đầu vào
là một yếu tố gây nhiễu và nhận thấy rằng việc sử dụng mã thông báo từ phụ sẽ hỗ trợ
các mô hình hướng tới việc học các cách biểu diễn ngôn ngữ bất khả tri hơn
hơn là mã thông báo cấp độ từ hoặc cấp độ ký tự. Nhiệm vụ trước đào tạo có
cũng được xem xét như một yếu tố gây nhiễu có thể xảy ra, nó đã chỉ ra rằng
các mô hình được đào tạo với các nhiệm vụ đào tạo trước khối văn bản song song, chẳng
hạn như XLM, giữ lại các biểu diễn bất khả tri về ngôn ngữ trong các lớp mã hóa cao hơn
theo cách mạnh mẽ hơn các mô hình được đào tạo về ngữ liệu đơn ngữ như
Biểu diễn tập đoàn song song Một cách khác để tiếp cận
giả thuyết về biểu diễn ngôn ngữ bất khả tri là sử dụng ngữ liệu song song trong
các ngôn ngữ khác nhau và kiểm tra các biểu diễn song song của chúng để căn chỉnh
trong không gian nhúng mô hình. Phân tích tương quan Canonical
(CCA) là một kỹ thuật được sử dụng để phân tích sự liên kết của các biểu diễn song
song. Trong [229] phân tích CCA cho thấy mBERT không dự đoán
biểu diễn song song trên cùng một không gian. Dịch máy cũng có
được sử dụng để kiểm tra các cách biểu diễn ngôn ngữ bất khả tri, trong đó trên một
mặt khác một câu bằng ngôn ngữ nguồn được cung cấp và mặt khác
Machine Translated by Google
có sẵn nhiều câu trong ngôn ngữ đích và nhiệm vụ là sử dụng thuật toán lân cận gần
nhất để xác định bản dịch chính xác trong số các ứng viên mục tiêu. Trong [199]
người ta quan sát thấy rằng bản dịch thích hợp (tức là căn chỉnh các biểu diễn) phụ
thuộc vào lớp trong mô hình tạo ra các biểu diễn. Người ta chứng minh rằng các lớp
giữa mBERT, 5–8, tạo ra độ chính xác lân cận gần nhất là 75% cho các ngôn ngữ trong
cùng một họ như tiếng Anh-Đức và tiếng Hindi-Urdu. Người ta đã lập luận rằng một kết
luận đúng đắn là công suất lớn của các mô hình biến áp đa ngôn ngữ cho phép tạo ra
và bảo tồn các biểu diễn ngôn ngữ bất khả tri và ngôn ngữ cụ thể. Các biểu diễn bất
khả tri về ngôn ngữ đủ phong phú để căn chỉnh chính xác các từ đa ngôn ngữ và truy
xuất các câu tương tự về mặt ngữ nghĩa. Tuy nhiên, các biểu diễn không đủ mạnh để
Nhiệm vụ thăm dò Một cách khác để điều tra các biểu diễn bất khả tri về ngôn ngữ là
sử dụng các nhiệm vụ thăm dò trên các biểu diễn thu được ở các lớp khác nhau. Ví
dụ, cây phụ thuộc nhất quán có thể được học từ cách biểu diễn các lớp trung gian
trong mBERT biểu thị sự trừu tượng hóa cú pháp [44, 162]. Tuy nhiên, cây phụ thuộc
cho các ngôn ngữ Chủ ngữ-Động từ-Tân ngữ (SVO) (như tiếng Anh, tiếng Pháp và tiếng
Indonesia) chính xác hơn so với cây phụ thuộc cho các ngôn ngữ SOV (như tiếng Thổ
Nhĩ Kỳ, tiếng Hàn và tiếng Nhật). Sự khác biệt này giữa các ngôn ngữ SOV và SVO cũng
được thấy trong việc ghi nhãn POS [199]. Mỗi lớp có những đặc điểm riêng biệt và do
đó sẽ thuận lợi hơn khi trộn dữ liệu từ nhiều lớp để có kết quả tối ưu, thay vì chọn
một lớp duy nhất dựa trên hiệu suất tổng thể của nó, như đã được chứng minh cho
Dutch trong nhiều nhiệm vụ NLU khác nhau [68] . Trong cùng một thử nghiệm, người ta
phát hiện ra rằng mô hình đa ngôn ngữ có nhiều cách trình bày thông tin hơn cho việc
gắn thẻ POS ở các lớp đầu khi so sánh với mô hình đơn ngữ tiếng Hà Lan.
Trong phần này, chúng tôi cung cấp một ví dụ thực tế về việc đào tạo bộ phân loại
cảm xúc đa ngôn ngữ. Mục tiêu của chúng tôi là minh họa khả năng phân loại không bắn
của các mô hình đa ngôn ngữ trong đó mô hình chỉ được đào tạo dữ liệu tiếng Anh và
sau đó được sử dụng để dự đoán trên dữ liệu không phải tiếng Anh mà không cần đào
tạo thêm.
Machine Translated by Google
Đối với nghiên cứu trường hợp này, chúng tôi sử dụng bộ dữ liệu phân loại tình
cảm nhị phân Yelp Polarity [297]. Bộ dữ liệu bao gồm 560K bài đánh giá Yelp có
tính phân cực cao dành cho đào tạo và 38K bài đánh giá dành cho thử nghiệm. Các
bài đánh giá gốc của Yelp lấy số điểm từ 1 đến 5 sao. Tập dữ liệu này được xây
dựng bằng cách nhóm các đánh giá 1 và 2 sao vào lớp cảm tính tiêu cực và các
đánh giá 3 và 4 sao vào lớp cảm tính tích cực.
Mô hình của chúng tôi sẽ sử dụng Bộ mã hóa câu phổ quát đa ngôn ngữ (mUSE)
[49, 284] để tạo tính năng. mUSE là một bộ mã hóa Transformer được đào tạo sao
cho văn bản ở các ngôn ngữ khác nhau nhưng có ý nghĩa tương tự sẽ dẫn đến một
mã hóa tương tự. Điều này tương tự với cách hai từ có nghĩa (và cách sử dụng)
giống nhau sẽ có cách nhúng từ tương tự. mUSE hỗ trợ 16 ngôn ngữ: tiếng Ả Rập,
tiếng Trung giản thể, tiếng Trung phồn thể, tiếng Anh, tiếng Pháp, tiếng Đức,
tiếng Ý, tiếng Nhật, tiếng Hàn, tiếng Hà Lan, tiếng Ba Lan, tiếng Bồ Đào Nha,
tiếng Tây Ban Nha, tiếng Thái, tiếng Thổ Nhĩ Kỳ, tiếng Nga.
Trong nghiên cứu điển hình này, chúng tôi sẽ sử dụng TensorFlow Hub để tải
mô hình mUSE, Bộ dữ liệu Huggingface để tải tập dữ liệu Yelp Polarity và Py-
Torch Lightning để giúp việc đào tạo đơn giản hơn một chút. mUSE sử dụng nội bộ
Văn bản TensorFlow để mã thông báo, vì vậy chúng tôi cũng cài đặt nó. Chúng có
thể được cài đặt bằng cách chạy lệnh shell được hiển thị trong Liệt kê 4.1.
Sau khi môi trường được thiết lập, bộ mã hóa có thể được tải, như trong Liệt kê
4.2. Chúng tôi cũng xác định một hàm đơn giản chấp nhận danh sách các chuỗi làm
đầu vào và trả về danh sách các mảng Numpy. Lưu ý rằng chúng tôi bao gồm các
chú thích loại của Python 3 để làm rõ. Chúng không cần phải được sử dụng.
mô hình_URL =
"https://tfhub.dev/google/universal-sentence-encoding-multilingual-
large/3 "
Machine Translated by Google
bộ mã hóa = hub.load(model_URL)
Để giúp việc đào tạo mô hình trở nên dễ dàng, nghiên cứu điển hình này sử dụng PyTorch Lightning.
PyTorch Lightning yêu cầu bạn triển khai lớp LightningDataModule, lớp này gói gọn tất cả quá
Chúng tôi chỉ ra cách người ta có thể thực hiện điều này đối với tập dữ liệu Yelp Polarity trong
Liệt kê 4.3. Chúng tôi sử dụng một tập hợp con nhỏ của tập huấn luyện và kiểm tra đầy đủ để giữ
thời gian đào tạo mô hình ở mức tối thiểu. Chúng tôi để nó như một bài tập cho người đọc để mở
rộng sang các tập hợp con lớn hơn hoặc toàn bộ tập dữ liệu.
Phương pháp này tải một tập hợp con của tập huấn luyện và tập kiểm tra.
Nó sử dụng 2% đầu tiên của tập huấn luyện và tập kiểm tra để huấn
"""
self.test_ds = Load_dataset('yelp_Polarity',
Split="test[:2%]")
self.train_ds = Load_dataset('yelp_Polarity',
Split="train[:2%]")
self.val_ds = Load_dataset('yelp_Polarity ',
chia = "đào tạo [99%:]")
def setup(self): #
Tính toán các phần nhúng theo đợt, để tăng tốc độ self.train =
self.train_ds.map(self.encode, batched=True,
batch_size=self.batch_size)
self.train.set_format(type="torch ",
columns=["nhúng", "nhãn"],
out_all_columns=True)
self.test = self.test_ds.map(self.encode,
batched=True, batch_size=self.batch_size)
self.test.set_format(type="torch",
columns=["embedding", "label"],
out_all_columns=True)
def train_dataloader(tự):
trả về DataLoader(self.train,
batch_size=self.batch_size,
num_workers=self.num_workers,
pin_memory=self.pin_memory,
shuffle=True)
def val_dataloader(tự):
trả về DataLoader(self.val,
batch_size=self.batch_size,
num_workers=self.num_workers,
Machine Translated by Google
pin_memory=self.pin_memory)
def test_dataloader(tự):
trả về DataLoader(self.test,
batch_size=self.batch_size,
num_workers=self.num_workers)
mã hóa trả về
Tiếp theo, chúng tôi xác định kiến trúc mô hình trong Liệt kê 4.4.
self.embedding_dim = 512
Machine Translated by Google
lớp = []
prev_dim = self.embedding_dim
lớp.append(nn.Linear(prev_dim, 2))
self.layers = nn.Sequential(*layers)
dim=1).detach().cpu().numpy() loss =
F.cross_entropy(logits, y) trả về loss,
preds, y
"Tính toán các số liệu chuyển tiếp, mất và ghi nhật ký cho một
lô xác nhận"
logger=True)
"Tính toán các số liệu chuyển tiếp, mất và ghi nhật ký cho một
lô thử nghiệm"
logger=True)
Liệt kê 4.4 Kiến trúc phân loại nhị phân đa ngôn ngữ
Bây giờ mô hình đã được xác định, chúng ta có thể tải dữ liệu, sau đó huấn
luyện và đánh giá mô hình. Chúng tôi sẽ đào tạo tối đa năm kỷ nguyên, sẽ theo
dõi tổn thất xác thực trong quá trình đào tạo, sẽ lưu ba điểm kiểm tra mô hình
(mỗi điểm một kỷ nguyên) có tổn thất xác thực thấp nhất. Các điểm kiểm tra sẽ
được lưu trữ trong thư mục có tên 'model'. Các tùy chọn này được chuyển tới
đối tượng Trainer của PyTorch Lightning thông qua lệnh gọi lại ModelCheckpoint.
data = YelpDataModule()
data.prepare_data()
data.setup()
mô hình = Mô hình()
Machine Translated by Google
MAX_EPOCHS = 5
filename="yelp-
sentiment-multilingual-{epoch:02d}- {val_loss:.3f}", save_top_k=3,
mode=" phút")
khác:
trainer = pl.Trainer(max_epochs=MAX_EPOCHS,
callbacks=[checkpoint_callback])
# Huấn luyện mô hình, truyền cho nó dữ liệu huấn luyện và xác thực
máy xúc
trainer.fit(model, data.train_dataloader(),
data.val_dataloader())
Chúng tôi đã đào tạo một mô hình, bây giờ hãy thử nó. Trong Liệt kê 4.6,
chúng tôi xác định hàm dự đoán cảm xúc cho văn bản đầu vào bằng cách sử dụng điểm
kiểm tra mô hình với mức mất xác thực thấp nhất.
kết quả = []
Machine Translated by Google
Score_pair[ best_index]
})
trả về kết quả
dự đoán(["Tôi thích nhà hàng đó!", "Tôi ghét đồ ăn Ý."]) #>> [{"label": 'tích
cực', "điểm": 0,99751616, "text": 'Tôi thích
nhà hàng đó!'},
# {"nhãn": 'tiêu cực', "điểm": 0,9791407, "văn bản": 'Tôi ghét đồ ăn Ý.'}]
Vì chúng tôi đã sử dụng phần nhúng USEm nên chúng tôi có thể dự đoán thời gian
của các ngôn ngữ không phải tiếng Anh. Hãy thử nó. Như đã đề cập trước đó, USEm hỗ
trợ 16 ngôn ngữ: tiếng Ả Rập, tiếng Trung giản thể, tiếng Trung phồn thể, tiếng Anh,
tiếng Pháp, tiếng Đức, tiếng Ý, tiếng Nhật, tiếng Hàn, tiếng Hà Lan, tiếng Ba Lan,
tiếng Bồ Đào Nha, tiếng Tây Ban Nha, tiếng Thái, tiếng Thổ Nhĩ Kỳ, tiếng Nga. Trong
Liệt kê 4.7, chúng tôi so sánh các dự đoán về tình cảm giữa các cặp ngôn ngữ và nhận
thấy rằng mặc dù mô hình của chúng tôi đã được đào tạo trên một tập hợp con nhỏ của
tập huấn luyện Yelp Polarity, nó vẫn có thể hoạt động tốt. Chúng tôi cũng nhận thấy
rằng mô hình này có thể đưa ra dự đoán chính xác cho ít nhất một ngôn ngữ không nằm
trong số 16 ngôn ngữ được hỗ trợ. Chúng tôi sử dụng văn bản đầu vào bằng bốn ngôn ngữ
trong Liệt kê 4.7: tiếng Anh, tiếng Đức, tiếng Ý và tiếng Phần Lan.
# "text": "Máy chủ của chúng tôi thật tệ. Anh ấy đã làm sai đơn hàng
Và "
# "
"thậm chí còn không xin lỗi khi anh ấy làm đổ rượu lên "tóc của
# em gái tôi!"},
# {"nhãn": "phủ định",
# "điểm": 0,9694613,
# "text": "Unser Server chiến tranh schrecklich. Er hat die
"
Bestellung
# "
"durcheinander gebracht und sich nicht einmal "entschuldigt,
# "
als er Wein in die Haare meiner "Schwester verschuttet
# hat!"}]
USEm thậm chí còn hoạt động trên tiếng Phần Lan. Nhưng tại sao? Nếu không đào sâu vào mọi thứ,
sẽ rất khó để biết chắc chắn. Chúng tôi đoán rằng trong quá trình đào tạo
quá trình, các đơn vị từ phụ được sử dụng trong mã thông báo của USEm cho phép
Người chuyển đổi tìm hiểu đơn vị từ phụ nào được sử dụng trên các ngôn ngữ, tương tự như
những gì đã thấy với các tiểu đơn vị lời nói trong wav2vec2 [16]. Các lớp chúng
tôi đã thêm vào USEm, được huấn luyện để phân loại, sau đó cho phép
mô hình tìm hiểu đơn vị từ phụ nào có liên quan đến tích cực hoặc tiêu cực
tình cảm. Có lẽ các đơn vị từ phụ được sử dụng trong tiếng Phần Lan đã đủ gần
cho những người sử dụng một trong 16 ngôn ngữ mà USEm hỗ trợ.
Machine Translated by Google
Machine Translated by Google
CHƯƠNG 5
Máy biến áp
Sửa đổi
Ở đây đã có nhiều sửa đổi được thực hiện đối với kho lưu trữ Transformer.
kiến trúc được giới thiệu trong Chú ý là tất cả những gì bạn cần [254]. Như đã thảo luận
trong phần 1.2.1, có hai loại sửa đổi chính: thay đổi tổ chức của khối Transformer và thay đổi
các mô-đun con bên trong khối Transformer. Chương này thảo luận về các ví dụ cụ thể về những
thay đổi của khối Transformer trong phần 1.2.1.1 và những thay đổi của mô hình con Transformer
Trong phần này chúng ta sẽ xem xét chi tiết một số mô hình có thay đổi
Funnel-Transformer [66] nén đầu ra của lớp bộ mã hóa máy biến áp thông qua việc gộp chung trước
khi nó được chuyển sang lớp tiếp theo, do đó giảm chi phí tính toán. Sau đó, nó sử dụng tính
toán đã lưu để hỗ trợ mô hình sâu hơn hoặc rộng hơn, từ đó tăng dung lượng mô hình.
Bộ mã hóa Máy biến áp tiêu chuẩn sử dụng cùng độ dài chuỗi cho tất cả các lớp. Funnel-
Transformer thay đổi điều này bằng cách đặt một lớp gộp giữa các lớp biến áp để giảm độ dài
chuỗi. Nó thường có nhiều lớp biến áp trong một khối có cùng độ dài chuỗi
Hình 5.1 Sơ đồ kiến trúc của bộ mã hóa Funnel-Transformer. Mỗi lớp đại
diện cho một khối bao gồm một số lớp biến áp có cùng độ dài chuỗi. Hiển
thị ba thao tác gộp giữa các khối, với mỗi thao tác giảm độ dài chuỗi của
đầu ra xuống một nửa.
trước khi thực hiện thao tác gộp. Điều này được thể hiện trong hình 5.1. Nếu
đầu ra của một lớp nhất định là h thì đầu ra của lớp gộp là h = Pooling(h),
T ×d T ×d trong đó h
R và h R , đối với một số T
< T. h được sử dụng để xây dựng truy vấn và kết nối còn lại cho
khối tự chú ý, h được sử dụng cho các vectơ khóa và giá trị:
T ×dk
Q = h WQ, R (5.1)
T ×dk
K = hWK, R (5.2)
T ×dv
V = hWV , R (5.3)
Mối quan hệ này giữa các đầu ra không gộp và gộp và các ma trận truy vấn,
khóa và giá trị của lớp tiếp theo được hiển thị trong Hình 5.2. Đầu ra của lớp
thứ (n + 1) là
(5.4)
Machine Translated by Google
Hình 5.2 Cho thấy hoạt động gộp giữa các lớp mã hóa của Funnel-Transformer ảnh hưởng như thế
nào đến đầu vào của lớp tiếp theo. h là đầu ra của lớp trước khi gộp và h là đầu ra của hoạt
động gộp. Ma trận truy vấn cho lớp tiếp theo được xây dựng từ đầu ra gộp, h . Các ma trận khóa
và giá trị cho lớp tiếp theo được tạo từ đầu ra không gộp, h.
Ma trận trọng số chú ý của mỗi đầu chú ý là (T × T), có độ phức tạp giảm dần cho mỗi lớp kế
tiếp. Đầu ra của sự chú ý nhiều đầu có cùng kích thước với h .
Bằng cách xây dựng truy vấn từ chuỗi gộp cũng như khóa và giá trị từ
chuỗi không gộp, cơ chế chú ý cố gắng tìm hiểu cách các chuỗi gộp và
không gộp nên phối hợp tốt nhất với nhau để mang lại kết quả nén chất
lượng cao. Funnel-Transformer sử dụng tổng hợp trung bình với cả sải chân
và kích thước cửa sổ đều được đặt thành hai.
Bộ giải mã Để hỗ trợ các tác vụ dự đoán cấp mã thông báo trong đó mô hình cần tạo ra một chuỗi
đầu ra đầy đủ, như dịch máy, Funnel-Transformer có một bộ giải mã tùy chọn giúp nâng cấp đầu ra
của bộ mã hóa nén lên độ dài chuỗi đầy đủ. M lớp mã hóa sẽ có chuỗi đầu ra h (M) có độ dài TM
= T/2 (up) được lấy mẫu trong một bước thành h (up) = [h mỗi vectơ ẩn 2 lần:
M 1 . Nó sẽ
1
, . . . , h(up) ] bằng cách lặp lại
T
M 1
(M)
chào
hướng lên
= h i = 1, . . . , T i//2N 1 , (5.5)
tôi
x//y =
sàn(x/y) (5.6)
Machine Translated by Google
Để giải quyết thông tin trùng lặp trong quy trình lấy mẫu lên của Funnel-
Transformer, đầu ra trạng thái ẩn của lớp bộ mã hóa đầu tiên được thêm vào biểu
diễn được lấy mẫu lên: g = h (up) + h (1). Điều này hoạt động như một kết nối
còn lại. Sau đó, họ thêm một vài lớp biến áp lên trên g để tìm hiểu cách kết
hợp tốt nhất các tính năng.
2
Chia tỷ lệ Độ phức tạp về thời gian của Funnel-Transformer là O(d·T 2+T ·d ).
Vì T giảm một nửa ở các lớp mã hóa kế tiếp nên độ phức tạp giảm theo hệ số bốn
2
cho mỗi lớp. Vì O(T · d không đổi d it có xu hướng chiếm ưu ) có số lớn
2
thế, mang lại , sự tăng tốc tuyến tính, thay vì
một bậc hai.
Do việc giảm độ phức tạp nhờ việc gộp giữa các lớp, nên có thể thêm các lớp
bộ mã hóa bổ sung hoặc làm cho các lớp hiện có rộng hơn mà không làm tăng tải
tính toán ở bất kỳ mức độ đáng kể nào.
thái độ.
Hiệu suất Ba kích thước của máy biến áp tiêu chuẩn được so sánh với một số cấu
hình của Máy biến áp phễu, mỗi cấu hình có số lượng hoạt động dấu phẩy động dự
kiến ít hơn hoặc tương tự với máy biến áp mà nó được so sánh:
Các so sánh chất lượng được thực hiện cho GLUE và khi Funnel-Transformer
giảm độ dài chuỗi và thêm nhiều lớp hơn, nó hoạt động tốt hơn so với biến áp
tiêu chuẩn về phân loại văn bản và tất cả các bộ dữ liệu GLUE ngoại trừ STS-B.
Khi độ dài chuỗi giảm nhưng độ sâu không tăng, hiệu suất trên bộ dữ liệu phân
loại văn bản GLUE sẽ giảm.
DeLighT [180] là một kiến trúc Transformer đã được sửa đổi, hoạt động giống như
Transformer tiêu chuẩn về dịch máy và mô hình hóa ngôn ngữ; tất cả trong khi sử
dụng ít tham số và FLOP hơn nhiều. Nó giới thiệu một phép biến đổi trên đầu vào
thành khối Transformer xuất hiện trước các phép chiếu thành các không gian truy
vấn, khóa, giá trị.
Machine Translated by Google
Hình 5.3 Giai đoạn mở rộng của phép biến đổi DeLight, hiển thị
ba phép biến đổi tuyến tính được nhóm (GLT).
Khối DeLighT Khối DeLighT sử dụng N lớp của phép biến đổi lin-ear được nhóm
(GLT) [181] để biến đổi vectơ d chiều đầu tiên
vào không gian có chiều cao hơn dmax = wmdin trong N/2 lớp đầu tiên , sau đó
biến đổi vectơ dmax thành không gian có chiều thấp hơn,
làm, sử dụng N N/2 lớp khác . Vectơ do là thứ sau đó được chiếu trong không
gian truy vấn, khóa và giá trị. Khối DeLighT gần hơn với
đầu ra của mô hình được làm rộng hơn và sâu hơn so với những kết quả gần với mô hình hơn
đầu vào mô hình. DeLightT đã sử dụng do = d/2 và cũng xáo trộn các tính năng
giữa các nhóm trong GLT, sử dụng kết nối bộ trộn [182] để kết hợp
các tính năng được xáo trộn với đầu vào, tương tự như kết nối còn lại.
Pha mở rộng của khối DeLighT được hiển thị trong Hình 5.3.
Mehta và cộng sự. đề xuất rằng bằng cách tăng độ sâu của DeLighT
khối và chiều rộng của các lớp GLT trung gian của nó, máy biến áp
sẽ có khả năng đại diện tăng lên và sau đó người ta có thể
thay thế sự chú ý nhiều đầu bằng sự chú ý một đầu. Tương tự, họ
đề xuất rằng các lớp tuyến tính rộng của khối DeLighT cho phép giảm
kích thước của lớp tiếp liệu lên tới 16x.
Hiệu suất DeLighT hoạt động bằng hoặc tốt hơn máy biến áp tiêu chuẩn trong
dịch máy, mặc dù có một số hạn chế đáng kể.
ít thông số hơn. Tuy nhiên, khi DeLighT được cung cấp nhiều thông số hơn, nó
sẽ hoạt động tốt hơn máy biến áp tiêu chuẩn. Nó cũng đạt được chất lượng
tương tự hoặc tốt hơn so với các mô hình SOTA về dịch máy. Ngoài ra, hiệu suất tăng
với số lượng tham số mạng trong khối DeLighT.
Machine Translated by Google
5.1.2.1 RealFormer
RealFormer, Bộ chuyển đổi lớp chú ý còn lại [107], thêm điểm số còn
lại vào nhật ký chú ý thô (sản phẩm dấu chấm của khóa truy vấn) của
tất cả các đầu chú ý từ lớp trước của bộ biến áp. Trọng số chú ý khi
đó là softmax của nhật ký chú ý tổng hợp. Điều này được thể hiện
dưới dạng sơ đồ trong Hình 5.4 và về mặt toán học trong (5.7)–(5.9).
QKT
Attn dư(Q , K ,V. ,Trước ) = softmax + Trước V √
dk
Phương pháp này có thể được áp dụng cho các kiến trúc máy biến áp
khác, bao gồm cả các lớp giải mã. Khi có nhiều loại mô-đun chú ý trong
máy biến áp, người ta có thể bỏ qua các cạnh để hỗ trợ một kết nối còn
lại cho từng loại chú ý.
Machine Translated by Google
Hiệu suất RealFormer thường hoạt động tốt hơn kiến trúc máy biến áp tiêu
chuẩn, bao gồm cả việc sử dụng nó trong BERT, tất cả đều không làm tăng số
lượng tham số mô hình.
Như đã thấy trong các chương trước, máy biến áp khắc phục các vấn đề liên
quan đến RNN, cụ thể là các nút thắt trong tính toán tuần tự và các vấn đề
biến thiên gradient trong số nhiều vấn đề khác. Hơn nữa, khả năng tự chú
ý, sự đổi mới quan trọng trong máy biến áp, giúp song song hóa việc tính
toán các vectơ dựa trên ngữ cảnh cho mỗi ký hiệu và tạo ra một trường tiếp
nhận toàn cầu trong đó ký hiệu nhận thông tin từ tất cả các ký hiệu. Mặt
khác, việc không có sai lệch quy nạp lặp lại của RNN sẽ trở thành một vấn
đề khi giải quyết các nhiệm vụ có cấu trúc phân cấp vốn có hoặc khi độ dài
thay đổi đáng kể giữa dữ liệu huấn luyện và dữ liệu chưa nhìn thấy mà mô
hình dự đoán. Ngoài ra, số lượng tính toán tuần tự trong máy biến áp
không phụ thuộc vào kích thước đầu vào mà chỉ phụ thuộc vào số lớp, khiến
cho việc tính toán không phổ biến hoặc không hoàn chỉnh về mặt Turing.
Máy biến áp áp dụng cùng một lượng tính toán cho tất cả các đầu vào dẫn
đến kém hiệu quả trong nhiều trường hợp việc tính toán có thể bị ảnh hưởng
bởi độ phức tạp.
Máy biến áp vạn năng (UT) của Dehghani et al. [69] là một phần mở rộng
của máy biến áp trong đó khả năng song song hóa và lợi ích trường tiếp
nhận toàn cục được bổ sung bởi độ lệch quy nạp lặp lại của RNN trong khi
có tính phổ biến về mặt tính toán. Thay vì có một số lớp cố định trong máy
biến áp, máy biến áp Universal có khối máy biến áp Universal, tức là cơ
chế tự chú ý, theo sau là phép biến đổi định kỳ cung cấp độ lệch quy nạp
định kỳ cho từng ký hiệu đầu vào song song.
Như được hiển thị trong Hình 5.5, Máy biến áp vạn năng là một hàm tuần
hoàn không theo thời gian mà theo chiều sâu, phát triển song song các
trạng thái ẩn tương ứng với mọi đầu vào, dựa trên mỗi bước trên chuỗi các
trạng thái ẩn trước đó.
UT có nhiều điểm tương đồng với các kiến trúc thần kinh hiện có, chẳng
hạn như Neural GPU [136] và Neural Turing Machine [98]. Nó cũng có thể
được chứng minh là tương đương với một máy biến áp nhiều lớp với các thông
số ràng buộc giữa các lớp của nó. Graves đã đề xuất Thời gian tính toán
thích ứng (ACT), cho phép RNN tìm hiểu linh hoạt số bước tính toán cần
thực hiện giữa việc chấp nhận đầu vào và phát ra đầu ra (thời gian suy
ngẫm) để khắc phục các vấn đề về số lượng cố định
Machine Translated by Google
Hình 5.5 Máy biến áp vạn năng với thông tin từ các vị trí khác nhau sử
dụng tính năng tự chú ý và áp dụng chức năng chuyển tiếp lặp lại.
các bước tính toán cho mỗi ký hiệu. UT kết hợp cơ chế tạm dừng ACT động cho từng vị trí
lấy cảm hứng từ ACT của Graves để điều chỉnh việc tính toán trên mỗi ký hiệu dựa trên độ
cho thấy UT hoạt động tốt hơn máy biến áp tiêu chuẩn trên nhiều phạm vi
NLP và NLU và đạt được công nghệ tiên tiến mới trong các nhiệm vụ phức tạp như
5.1.4 Mối quan hệ lặp lại giữa các khối máy biến áp
đồng thời tôn trọng ranh giới câu. Nó được giới thiệu vì
Cửa sổ ngữ cảnh có chiều rộng cố định của kiến trúc máy biến áp tiêu chuẩn ngăn chặn
nó từ việc học đến các mô hình phụ thuộc ở các phạm vi nằm ngoài phạm vi cố định của nó
cửa sổ. Transformer-XL có thể xử lý các phần phụ thuộc lâu hơn 450%
biến áp và suy luận tiêu chuẩn nhanh hơn 1800 lần so với
Tái phát cấp độ phân đoạn Transformer-XL mở rộng ngữ cảnh của nó ra ngoài cửa sổ cố định
bằng cách sử dụng phương pháp gọi là tái phát cấp độ phân đoạn.
Tính năng lặp lại ở cấp độ phân đoạn hoạt động bằng cách sử dụng đoạn văn bản trước đó
làm ngữ cảnh bổ sung khi xử lý đoạn văn bản hiện tại. Vì
Machine Translated by Google
để điều này hoạt động, phân đoạn trước đó phải được lưu vào bộ nhớ đệm, cùng với
đầu ra máy biến áp của từng lớp cho đoạn đó.
quần què
(N) (n 1)
t
) giờ = T máy biến áp(h t (5.10)
(n 1)
và tạo nội bộ truy vấn, khóa và giá trị từ h t :
(N) (n 1)
Q t = h t Wq
(N) (n 1)
K t = h t tuần (5.11)
(N) (n 1)
V.t = h t wv
Lưu ý rằng n = 1 đang được coi là lớp máy biến áp đầu tiên và
(0)
n = 0 là đầu vào của lớp biến áp thứ nhất nên h t = X.
Phương trình. (5.11) thay đổi khi bao gồm phân đoạn trước đó. Coi như
hai đoạn văn bản liên tiếp có chứa các phần trình bày được nhúng
Xt và Xt+1, trong đó t chỉ được sử dụng để biểu thị thứ tự phân đoạn. Khi
quần què
tính toán đầu ra của n lớp biến áp cho phân đoạn hiện tại-
(n 1)
ment, Xt+1, chúng ta có sự đóng góp từ h t , cái nào là cái trước
đầu ra của lớp biến áp cho phân đoạn trước,
(N) (n 1) (n 1)
h t+1 = Máy biến áp XL(h t+1 , ).th (5.12)
Sự phụ thuộc vào phân đoạn trước xuất hiện khi tính toán
khóa và giá trị cho phân đoạn hiện tại:
(N) (n 1)
Q t+1 = h t+1 Wq
(n)
K t+1 = h˜ (n
t+1 1)tuần (5.13)
(N)
V.t+1 = h˜ (n
t 1)wv
(n 1) (n 1)
h˜t+1
(n 1) = [StopGradient(h t ); ht+1 ] (5.14)
trong đó StopGradient có nghĩa là độ dốc không được tính toán trong quá trình
hoạt động.
Phương trình. (5.13) và (5.14) cho thấy cơ chế chú ý đang được
được sử dụng để tính toán sự chú ý đã được sửa đổi kết hợp thông tin từ
trình tự đầu vào trước đó để tính toán biểu diễn dòng điện
trình tự đầu vào. Và còn nhiều điều hơn thế nữa. Máy biến áp
đầu ra cho chuỗi dòng điện phụ thuộc vào đầu ra máy biến áp cho
Machine Translated by Google
BẢNG 5.1 Ở độ sâu lớp ba, đầu ra của máy biến áp trên
phân khúc thứ tư có sự đóng góp từ phân khúc đầu tiên. Để cho ngắn gọn,
T được hiển thị ở trên là hoạt động của Transformer-XL như được mô tả trong (5.12)
Lớp (n) S1 (0) S2 S3 S4
Mã hóa vị trí Như đã thảo luận trong Ch. 1, vì Máy biến áp không
chứa các lớp lặp lại hoặc chập, trật tự từ được xây dựng rõ ràng
thông qua mã hóa vị trí. Mỗi chuỗi đầu vào được cung cấp một vị trí
L×d
mã hóa, P R , Trong đó L là độ dài chuỗi tối đa và d là
L×d . Lưu ý rằng
kích thước nhúng và nhúng từ E R
chuỗi đầu vào đầy đủ được biểu thị bằng X = E + P; đây là X giống nhau
Xét hai chuỗi văn bản liên tiếp Xt+1 và Xt , và bên ngoài-
đặt lớp TransformerXL đầu tiên cho mỗi chuỗi. (5.12) cho chúng ta biết
cái đó
h˜ (0)
t+1 = [StopGradient(Xt); Xt+1] (5.16)
Vì Xt = Et + P và mã hóa vị trí độc lập với h˜ (0) nên các mã thông báo
vì h˜ (0) t+1 biểu thị kích thước ngữ cảnh hiệu quả được mở rộng và do đó mỗi
vị trí trong chuỗi phải có các mã hóa vị trí riêng biệt. Nếu không có mã hóa vị
trí riêng biệt, mô hình sẽ mất thông tin về thứ tự từ. Giải pháp cho vấn đề này
là sử dụng mã hóa vị trí tương đối.
Mã hóa vị trí tương đối Công việc trước đó [224, 124] đã giới thiệu mã hóa vị
trí tương đối như một cách để cơ chế chú ý học hỏi từ khoảng cách giữa hai vị
trí trong một chuỗi, thay vì sử dụng mã hóa vị trí tuyệt đối từ máy biến áp tiêu
chuẩn, làm sai lệch vị trí cơ chế chú ý coi vị trí tuyệt đối là quan trọng. Thay
vào đó, thông tin về khoảng cách tương đối giữa qi và kj sẽ được đưa vào tính
toán trọng số chú ý, làm thiên lệch cơ chế chú ý coi khoảng cách i - j là đại
mã hóa vị trí tương đối hình sin [67]. Chúng ta có thể thấy bằng cách đầu tiên
T
mở rộng số hạng (i, j) của QKT trong (5.23), qik j . Nhắc lại (5.22), (5.24),
hàng của X là xi = ei + pi , và đó
quần què
qi = xiWq kj
(5.17)
= xjWk
T
Sử dụng (5.17), chúng tôi mở rộng qikj để có được
T T
Aij = (eiWq + piWq)(WT k e + WT k p j )
j
= T T
eiWqWT k e
j + eiWqWT k p j (5.18)
T T
e
+ piWqWT k j + piWqWT k p j
Máy biến áp XL tham số hóa lại Aij theo năm đại lượng mới:
Ri j , u, v, Wk,E, và Wk,R [67]:
1. Ri j là các mã hóa vị trí tương đối cho một cặp mã thông báo có khoảng
hàng thứ
cách i j và thay thế pj trong (5.18). Ri j là (i j) của ma
L×d
trận mã hóa vị trí tương đối R R .
Machine Translated by Google
4. TransformerXL thay thế khóa K bằng hai bộ khóa: dựa trên nội dung và dựa
trên vị trí. Sự thay đổi này dẫn đến việc thay thế ma trận trọng số khóa,
Wk, bằng hai ma trận trọng số, Wk,E và Wk,R, trong đó Wk,E tạo khóa dựa
trên nội dung và Wk,R tạo khóa dựa trên vị trí [67].
T T
Aij = eiWqWT k,Ee j +eiWqWT k,RRT i j+uWT k,Ee j +vWT k,RRT tôi-j
(5.19)
Lưu ý rằng bằng cách loại bỏ sự phụ thuộc vị trí rõ ràng, xi = ei suy ra X =
E, và do đó qi = eiWq và kj = ejWk,E.
Sử dụng (5.19), chúng ta đi đến dạng cuối cùng của lớp mô hình chú ý của
cơ chế hoạt động của n quần què
Transformer-XL
Một (n)
Attn(n) = softmax t
V. (N), (5.20)
t t
√ dk
trong đó A (n) được sửa đổi (5.19) theo quy định tại (5.13)
t
T T T T
(n) (n) (n) k + q = q
Một (n) t,it,jt,i W(n) RT + bạn k(n) + vW(n) RT (5.21)
t,ij k,R tôi-j t,j k,R tôi-j
Lưu ý rằng tổng trong mẫu số softmax là tổng bị che giấu trên
tập hợp các vị trí quan trọng mà truy vấn hướng tới, Si , như thể hiện trong (5.27).
Hai ví dụ về máy biến đổi phân cấp là Vision Transformer [78], để nhận dạng hình
ảnh và TimeSformer [29], để nhận dạng hành động/phân loại video. Cả hai mô hình
sẽ được đề cập trong Chương 6.
Sự chú ý của nhiều đầu là một cách kết hợp nhiều cơ chế chú ý cho phép
một mô hình tìm hiểu các loại phụ thuộc khác nhau giữa
Machine Translated by Google
đầu vào và đầu ra. Cơ chế chú ý nhiều đầu là cốt lõi của mọi khối máy biến áp.
Cả khối mã hóa và khối giải mã đều sử dụng khả năng tự chú ý nhiều đầu và khối
giải mã có sự chú ý nhiều đầu thứ hai liên quan đến đầu ra của khối mã hóa,
với ràng buộc nhân quả thích hợp.
Trong phần này, chúng tôi sẽ mô tả cấu trúc tính toán tự chú ý nhiều
đầu cho một chuỗi đầu vào duy nhất gồm L mã thông báo, với kích thước
nhúng d. Chuỗi đầu vào có thể được biểu diễn bằng ma trận L×d X R :
x1
.
X = .
. (5.22)
xL
x
(i) trong đó xi = 0(x, . . . , d 1 ) là vectơ nhúng của i mã thông báo.
Như chúng ta đã thấy trong phần 2.4.2.1, đầu ra của cơ chế chú ý
(trước khi nối các đầu) có thể được biểu diễn bằng
QKT √
Attn(Q, K, V) = softmax V, (5.23)
dk
Q = XWq, R L×dk
V = XWv, R L×dv
trong đó dk là thứ nguyên của truy vấn và không gian khóa và thường được
đặt thành d, còn dv là thứ nguyên giá trị. Các ma trận Wq,Wk R d×dk về cơ
bản là ,các
và ma
Wv trận
R quay.
d×dv Mỗi hàng của ma trận truy vấn/khóa/giá trị tương ứng
q1 k1 v1
. . .
Q = . ,K = . ,V = .
. . . (5.25)
ql kL vL
Lưu ý rằng (5.24) có thể được điều chỉnh cho trường hợp chú ý nhiều đầu
giữa hai chuỗi X1 và X2 có độ dài L1 và L2 tương ứng.
Machine Translated by Google
Đối với hai chuỗi, ma trận truy vấn được hình thành từ X1 và ma trận
khóa và giá trị được hình thành từ X2:
Q = X1Wk, R L1×dk×h
V = X2Wv, R L2×dv×h
T
j
exp(qik )
√ dk
Aij = , (5.27)
r
r Si exp(qikT
√ dk
)
trong đó Si là tập hợp các vị trí quan trọng mà truy vấn qi có thể tham gia.
Cho đến nay, chúng ta mới chỉ thảo luận về sự tự chú ý của một cái đầu. Sự
chú ý nhiều đầu chủ yếu là phân chia các ma trận được hiển thị ở trên thành
các phần h , trong đó h là số lượng đầu chú ý.
Mỗi đầu chú ý có truy vấn/khóa/giá trị riêng có được bằng cách chia
các phiên bản một đầu thành h phần có kích thước bằng nhau, được lập chỉ
mục bởi n = 1, . . . , h:
Qn = XW(q) , _ R L×dk/h
Vn = XW(v) , _ R L×dv/h
Điều này không có nghĩa là bây giờ chúng ta có ma trận truy vấn, khóa và
giá trị h , nhưng các ma trận trong (5.28) là một phần của ma trận được hiển
thị trong (5.24). Điều này được thể hiện rõ ràng cho truy vấn trong Hình 5.6.
Các ma trận khóa và giá trị được phân chia thành các phần chú ý
cách tương tự với Q và cách tính sự chú ý cho n như mong đợi: trong phần đầu
quần què
QnKT N
Attn(n) (Qn, Kn, Vn) = softmax Vn, (5.29)
dk/h
Machine Translated by Google
Hình 5.6 Ma trận truy vấn, Q, có thể được phân chia thành h phần tử, như được
mô tả trong (5.28).
Tính toán ma trận trọng số chú ý được mô tả trong phần 5.27 lấy phép nhân ma
2
trận O(L · dk) và tính toán vectơ ngữ cảnh trong phần 5.23 cần O(L độ phức tạp
2
của tự chú ý là O(L · dv) phép nhân ma trận, do đó thời gian com-· dk
2 2
+ L Xem · đv).
xét một chuỗi đầu vào duy nhất của mã thông báo L và truy vấn, khóa và giá
trị có chung một chiều, do đó dk = dv = dmodel. Điều này có nghĩa là Q, K, V
là các ma trận L × dmodel và ma trận trọng số chú ý từ (5.23) là L × L. Giả sử
các số dấu phẩy động 32-bit, việc sử dụng bộ nhớ tăng lên nhanh chóng, như
trong Bảng 5.2. Cần nhiều bộ nhớ hơn khi bao gồm kích thước lô. Ví dụ: nếu kích
thước lô là 32 và độ dài chuỗi là 20.000 thì sẽ cần 51,2 GB để lưu trữ trọng
số tự chú ý. Độ phức tạp về thời gian cũng là bậc hai trong L. Kiểu chia tỷ lệ
này trở nên hạn chế khi chuỗi
BẢNG 5.2 Cách sử dụng bộ nhớ cho trọng số tự chú ý, cho các số float 32-bit [142]
L Bộ nhớ 600 4
MB
1K 1,4 MB
20K 1,6 GB
64K 16,384GB
Machine Translated by Google
chiều dài tăng lên. Ví dụ: nếu độ dài chuỗi tăng gấp đôi, lượng thời gian cần
thiết để tính toán và lưu trữ trọng số chú ý sẽ tăng gấp bốn lần.
Phần này thảo luận về một số mô hình máy biến áp giúp giảm độ phức tạp về mặt
Khi tính toán sự tự chú ý (bỏ qua yêu cầu nhân quả đối với sự tự chú ý giữa khối
mã hóa và bộ giải mã), thường không có hạn chế nào về vị trí nào trong chuỗi có
thể tham dự lẫn nhau. Điều này có nghĩa là, về nguyên tắc, ma trận trọng số chú ý
dành cho mỗi người đứng đầu có thể rất dày đặc. Khi được xem dưới dạng biểu đồ,
nó tương ứng với biểu đồ lưỡng cực có trọng số, được kết nối đầy đủ. Nếu chuỗi có
L mã thông báo thì sẽ có các cạnh L(L 1)/2 . Longformer [25] thay đổi điều này
bằng cách hạn chế các vị trí có thể tham gia lẫn nhau theo các mẫu cụ thể. Điều
này dẫn đến trọng số chú ý thưa thớt trên tất cả các đầu và tương ứng với việc
xóa các cạnh khỏi biểu đồ chú ý.
Longformer kết hợp sự chú ý toàn cầu với hai loại sự chú ý tầm ngắn, cửa sổ
trượt và cửa sổ trượt mở rộng. Mỗi mẫu chú ý tương ứng với một loại mặt nạ chú ý.
Chú ý cửa sổ trượt Thay vì có thể chú ý đến bất kỳ mã thông báo nào trong chuỗi,
mỗi mã thông báo trong chuỗi được cung cấp một cửa sổ ngữ cảnh có kích thước cố
định, w, vì vậy nó chỉ có thể tham dự các hàng xóm của nó. Ví dụ: nếu chúng ta có
một chuỗi gồm chín mã thông báo, (w1, . . ., w9) và kích thước cửa sổ w = 4 thì
ngữ cảnh của mã thông báo ở giữa, w5, sẽ mở rộng sang phải (w3, w4) và sang trái
( w6, w7) bằng hai mã thông báo mỗi cái. Điều này được thể hiện trong hình 5.7.
Trong chế độ xem biểu đồ, điều này có nghĩa là mỗi đỉnh sẽ được liên kết với
tối đa w 1 đỉnh. Vì vậy, sự thay đổi này làm giảm số cạnh từ L(L 1)/2 xuống
L(w 1). Sự thay đổi đơn giản này làm giảm độ phức tạp từ độ phức tạp bậc hai
trong độ dài chuỗi thành độ phức tạp tuyến tính trong độ dài chuỗi, O(Lw), do ma
trận trọng số chú ý của cửa sổ trượt sẽ có các giá trị Lw khác 0 trong mỗi hàng
(hoặc cột).
Sự chú ý của cửa sổ trượt giãn ra Mẫu chú ý này mở rộng chiều rộng của sự chú ý
của cửa sổ trượt bằng cách thêm các khoảng trống có kích thước d trong
Machine Translated by Google
· · · · ·
• •• ••• •· ·· · · · ·
• • • • • · · · · ·
· • • • • • • · · ·
· · • • • • • • · ·
· · · • • • • • • ·
· · · · • • • • • •
· · · · · • • • • •
· · · · · · • • •
cửa sổ ngữ cảnh. Điều này thực sự mở rộng quy mô hiệu quả của bối cảnh
cửa sổ. Ví dụ: trong chuỗi chín mã thông báo được sử dụng ở trên, giả sử
chúng tôi đã thêm độ giãn d = 2. Khi tạo bối cảnh của w5, chúng tôi sẽ
bây giờ bỏ qua một từ ở giữa. Vì vậy, bối cảnh bên trái của w5 sẽ là
(w1, w3) và ngữ cảnh phù hợp sẽ là (w7, w9). Lưu ý rằng mặc dù
chiều rộng ngữ cảnh tổng thể đã tăng lên, mẫu chú ý này cũng ngăn cản
một mã thông báo từ việc tham dự tới hàng xóm trực tiếp của nó hoặc tới bất kỳ mã thông báo nào
là khoảng cách d 1 tính từ tâm cửa sổ hoặc tới bất kỳ vị trí nào
nó chú ý đến điều đó ở bên trong cửa sổ. Những người đứng đầu chú ý khác nhau có thể
sử dụng các giá trị khác nhau của d để giảm thiểu vấn đề nêu trên. Quả sung.
Hình 5.8 cho thấy sự chú ý của cửa sổ trượt giãn ra đối với L = 2, w = 4 và d = 2.
Sự chú ý toàn cầu Mẫu chú ý chung được chọn cho phép một số mã thông báo tham gia vào
bất kỳ mã thông báo nào khác trong chuỗi. Trong những trường hợp như vậy, tất cả các token
trong chuỗi tham dự vào mã thông báo đó. Điều này tương ứng với việc chọn
các hàng cụ thể của ma trận trọng số chú ý và các cột chuyển vị của chúng.
Longformer quyết định token nào được phép thu hút sự chú ý toàn cầu
căn cứ vào nhiệm vụ đào tạo. Ví dụ, trong các nhiệm vụ hỏi đáp, tất cả
mã thông báo trong câu hỏi có sự chú ý toàn cầu. Số lượng token có
sự chú ý toàn cầu nói chung là độc lập với độ dài chuỗi, do đó toàn cầu
sự chú ý cũng tuyến tính theo độ dài chuỗi. Longformer kết hợp
sự chú ý toàn cầu này với sự chú ý của cửa sổ trượt.
Trọng số cho các mẫu chú ý tổng thể và trong phạm vi ngắn được tính
toán riêng biệt bằng cách gán cho các mẫu cửa sổ toàn cầu và cửa sổ trượt.
Machine Translated by Google
· · · · · ·
· •· ·
· ·· ··· ·· ·
· ·· · · · · ·
• · • · · · · · · · · · · ·
· · · · · · · · · · · · · · ·
• · • · · · · · · · · · · · ·
· • · • · · · · · · · · · · ·
· · • · • · · · · · · · · · ·
· · · • · • · · · · · · · · •
· · · · · · · · · · · · · · ·
· · · · · • · • · · · · · •
· · · · · · · · · · · · · ·
· · · · · · · · · · · · •
·
ma trận truy vấn, khóa và giá trị riêng: Qg, Kg, Vg và Qs, Ks, Vs, tương ứng.
Longformer sử dụng kích thước cửa sổ nhỏ cho các lớp thấp hơn và kích thước cửa sổ
lớn hơn cho các lớp cao hơn. Điều này mang lại cho các lớp cao hơn một hệ thống phân cấp
thiên nhiên. Trong thực tế, cửa sổ trượt giãn nở chỉ được sử dụng cho các lớp cao hơn,
để các lớp thấp hơn có thể tập trung vào bối cảnh cục bộ.
Reformer, được giới thiệu trong [142], giải quyết sự phức tạp của cơ chế
chú ý bằng cách sửa đổi cơ chế chú ý và giảm mức sử dụng bộ nhớ
bằng cách sử dụng các mạng dư có thể đảo ngược. Những thủ thuật này cho
phép Reformer bao gồm các cửa sổ ngữ cảnh có độ lớn lớn hơn vài bậc so với
một Máy biến áp (tối đa 1.000.000 từ).
Băm chú ý và nhạy cảm cục bộ Như đã thảo luận trong phần
5.2.1.1, sự chú ý tích số chấm được chia tỷ lệ nằm ở cốt lõi của bộ biến
2
đổi có độ phức tạp về thời gian O(L ), điều này trở nên nghiêm trọng vì
số lượng thẻ trong chuỗi, L, tăng lên. Mô hình cải cách
giải quyết vấn đề này bằng cách sửa đổi cơ chế chú ý bằng tính năng nhạy cảm với địa phương
băm. Điều này thay đổi độ phức tạp về thời gian thành O(L log L).
Machine Translated by Google
Hãy nhớ lại rằng trong chú ý tích số chấm được chia tỷ lệ, ma trận truy vấn, khóa và
giá trị là kết quả của việc chuyển đổi ma trận vectơ đầu vào dmodel -chiều thành các truy
vấn và khóa có thứ nguyên dk và giá trị của thứ nguyên dv.
Trong phương trình của A, số hạng đắt tiền về mặt tính toán là tích QKT , hơn nữa, khi
hàm softmax được áp dụng, chỉ những số hạng lớn nhất dọc theo mỗi chiều dmodel là quan
trọng. Điều này có nghĩa là với mỗi vectơ truy vấn trong Q, chúng ta chỉ cần các khóa
trong K gần nó nhất. Để dễ dàng hơn, họ đặt Q = K, nghĩa là với mỗi vectơ truy vấn, chúng
ta chỉ cần tìm các truy vấn gần nhất. Đây là một vấn đề gần đúng về hàng xóm gần nhất, vì
vậy chúng ta có thể sử dụng hàm băm nhạy cảm cục bộ (LSH).
Băm nhạy cảm cục bộ Băm nhạy cảm cục bộ, hay LSH, được giới thiệu vào năm 1998, trong [129]
như một phương pháp tìm kiếm tương tự gần đúng dựa trên băm. Về mặt hình thức, LSH dựa
trên họ hàm băm F hoạt động trên một tập hợp các mục trong đó, nếu có hai mục như vậy x và
y, P robh F [h(x) = h(y)] = sim( x, y), trong đó sim(x, y) [0, 1] trong hàm tương tự
được xác định trên tập hợp các mục [39]. Hay nói cách khác, bạn có phương pháp LSH bất cứ
khi nào bạn có thể băm các mục trong tập dữ liệu sao cho xác suất xung đột của hai mục bất
kỳ sẽ cao hơn nhiều khi các mục đó ở gần nhau so với khi chúng ở xa nhau.
Có nhiều cách để thực hiện sơ đồ LSH. Reformer sử dụng sơ đồ LSH góc được xác định
trong [6]. Hãy nhớ lại rằng ma trận truy vấn Q (và ma trận khóa K) có hình dạng l ×dk. Để
tính giá trị băm cho Q, hãy bắt đầu bằng cách tạo ma trận R dk × b/2 ngẫu nhiên , trong đó
mỗi cột có một giá trị khác 0 được lấy mẫu thống nhất từ ±1 và b là số lượng giá trị băm.
Tiếp theo, tính toán QR để xoay ma trận truy vấn (và khóa).
Cuối cùng, hàm băm là h(Q) = arg max([QR; QR]) [142]. Sau khi truy vấn và khóa đã được
băm, bạn có thể hoán đổi các chỉ mục sao cho các vị trí chuỗi được băm vào cùng một nhóm
nằm cạnh nhau. Sau đó, trong mỗi nhóm băm, hãy tính toàn bộ mức độ chú ý.
Chúng ta có thể sử dụng thông tin này để xem LSH ảnh hưởng như thế nào đến việc tính
toán sự chú ý bằng cách trước tiên viết lại phương trình về mức độ tự chú ý, (5.23), sử
dụng (5.27):
T
qik j
ai = exp log Z(i, Si) vj , (5h30)
√ dk
j Si
Machine Translated by Google
trong đó Si là tập hợp các vị trí quan trọng mà truy vấn tôi tham dự và Z(i, Si) =
T
qik r
là số hạng chuẩn hóa softmax.
r Si exp
√ dk
Không mất tính tổng quát, chúng ta có thể viết lại (5.30) dưới dạng tổng trên
một tập mở rộng các vị trí then chốt, S˜ i ,Si có thể bao gồm các vị trí mà khí
không quan tâm tới:
T
qik j
ai = điểm kinh nghiệm
m(i, Si) log Z(i, Si) vj (5.31)
√ dk
j S˜i
∞, j /
m(i, Si) = (5.32)
Si 0, ngược lại
Số hạng m(i, Si) trong (5.31) là số hạng che đậy để đảm bảo rằng các vị trí then
chốt mà khí không tham gia sẽ không đóng góp vào tổng.
Như đã đề cập ở trên, tập Si là tập hợp các vị trí chính mà truy vấn tôi tham
gia. Theo sơ đồ LSH được xác định ở trên, Si chỉ nên chứa các vị trí khóa được
băm vào cùng một nhóm với truy vấn, hay nói cách khác
Trước hết, không có gì đảm bảo rằng một truy vấn sẽ có bất kỳ khóa nào để tham
gia. Để giải quyết vấn đề này và đảm bảo rằng h(qi) = h(kj ), [142] sửa khóa kj
qj
sao cho kj = ||qj || . Để tính toán hiệu quả hơn, Reformer thực hiện hai việc đơn
giản
1. Các truy vấn được sắp xếp sao cho các truy vấn trong cùng một nhóm băm sẽ liền kề nhau.
Trong nhóm băm, thứ tự chuỗi ban đầu được giữ nguyên
2. Các truy vấn đã sắp xếp được nhóm thành các khối m truy vấn liên tiếp
2L
m = (5.34)
Số lượng xô
Trong mỗi khối, mỗi vị trí được phép tham gia vào các vị trí khác
trong khối và những vị trí trong khối trước đó. Hai thay đổi này xác định
một tập hợp các vị trí quan trọng mới mà tôi có thể truy vấn:
S
tôi sj tôi
= j : 1 ≤ ≤ , (5.35)
tôi tôi tôi
Tôi
trong đó si là vị trí trong ma trận đã sắp xếp mà vị trí tôi đã được chuyển đến.
(5.35) có thể được sử dụng trong (5.31) để tính toán sự chú ý theo LSH
sơ đồ đã mô tả ở trên.
Machine Translated by Google
LSH nhiều vòng Do tính ngẫu nhiên vốn có của LSH, nên những thứ tương tự
có thể dễ dàng được băm vào các nhóm khác nhau. Để giải quyết vấn đề này,
thông lệ là thực hiện nhiều vòng LSH. Ví dụ: khi tính gần đúng một vectơ
đặc trưng bằng LSH, người ta có thể băm vectơ đó nhiều lần để tạo ra chữ
ký LSH. Sau đó, thay vì so sánh hai vectơ đặc trưng với độ tương tự
cosin, bạn sẽ so sánh các dấu hiệu LSH của chúng bằng khoảng cách
Hamming. Tương tự, trong Reformer, bạn có thể tính toán nhiều hàm băm cho
truy vấn và khóa rồi kết hợp chúng.
Như đã thảo luận ở trên, một truy vấn tại vị trí i có thể quan tâm đến các
vị trí quan trọng trong Si . Tuy nhiên, nếu chúng ta thực hiện n vòng LSH thì
chúng ta sẽ có được n bộ vị trí chính mà vị trí truy vấn mà tôi có thể tham gia
N
(r)
Si = S Tôi , (5.36)
r=1
sắp xếp (r) = {j : h (r) (qi) = h (r) (qj )}. Sau đó, liên quan đến việc
Tôi
(r ) (r) (r )
s
j
=
tôi tôi
S˜ (r)
Tôi j : 1 ≤ ≤ . (5.37)
tôi tôi tôi
Chúng ta có thể cập nhật tương tự (5.31) cho LSH nhiều vòng:
ai = exp log Z(i, S(r) (r) ) Tôi log Z(i, Si) a Tôi (5.38)
r
T
qik j
(r)
= (r)
một
tôi điểm kinh nghiệm
m i,j log Z(i, S(r) ) vj Tôi (5.39)
√ dk
j S˜ (r)
Tôi
∞ (r) j / Tôi S
(r)
tôi = 105 (5,40)
tôi, j
nếu i = j log Ni,j
ngược lại
(r )
Ni,j = {r : j S } Tôi (5.41)
Lưu ý rằng trong trường hợp LSH nhiều vòng, Reformer sửa đổi thuật ngữ
che dấu để bao gồm (và giảm trọng số) trường hợp truy vấn ở vị trí i liên
quan đến khóa ở vị trí i. Trường hợp này được thêm vào bởi vì, trong khi
máy biến áp tiêu chuẩn cho phép một vị trí tự quan sát, thì điều này không
có ích khi Q = K, như trường hợp trong chú ý LSH. Điều này vô ích vì hàm
băm LSH h(qi) của bất kỳ vị trí i nào đều bằng chính nó một cách tầm thường.
Machine Translated by Google
Khả năng đảo ngược và bộ nhớ Reformer cũng giải quyết vấn đề bộ nhớ
sử dụng máy biến áp tiêu chuẩn sử dụng các lớp dư có thể đảo ngược.
Các lớp dư được thiết kế để giải quyết vấn đề lỗi đào tạo
tăng theo độ sâu mạng đồng thời tránh được vấn đề biến mất
Độ dốc. Bằng cách viết lại mạng lưới thần kinh theo hàm dư,
độ chính xác đào tạo có thể được thực hiện để tăng theo độ sâu mạng:
y = x + F(x), (5.42)
trong đó x là đầu vào của lớp và y là đầu ra của lớp [105]. ResNets là ngăn xếp của
những lớp dư này.
Trong máy biến áp tiêu chuẩn, mỗi lớp máy biến áp có nhiều hơn
một lớp dư. Ví dụ, một khối mã hóa máy biến áp có
hai khối dư. Khối dư đầu tiên là sự chú ý của nhiều đầu [254],
tiếp theo là chuẩn hóa lớp [13]. Khối dư thứ hai là
mạng chuyển tiếp theo vị trí (FFN) [254], tiếp theo là chuẩn hóa lớp.
Lưu ý rằng hoạt động chuẩn hóa lớp có dạng
x + Lớp con(x), trong đó Lớp con đại diện cho lớp đến. Cho
khối dư đầu tiên, lớp con là sự chú ý của nhiều đầu và đối với
khối dư thứ hai là lớp FFN.
Các lớp dư có thể đảo ngược là một biến thể có thể đảo ngược của phần dư
các lớp được sử dụng trong nhận dạng hình ảnh và được giới thiệu như một sự
thay thế ít tốn bộ nhớ hơn [94]. Mỗi lớp có thể đảo ngược lấy một cặp (x1, x2) làm
đầu vào và trả về một cặp (y1, y2) làm đầu ra:
y1 = x1 + F(x2)
(5.43)
y2 = x2 + G(y1)
x2 = y2 G(y1)
(5.44)
x1 = y1 F(x2)
Bây giờ, giả sử chúng ta có một chồng n lớp có thể đảo ngược như vậy, sao cho
đầu vào cho n lớp là đầu ra của lớp n-1. Phương trình. (5.43) và (5.44)
quần què
(N) (n 1) (n 1)
y1 = y 1 + F(y 2 ) (5,45)
(N) (n 1) (N)
y = y + G(y 1 ) (5.46)
2 (n 1) 2 (n) (N)
y = y G(y 1 ) (5.47)
2 (n 1) 2 (n) (n 1)
y1 = y 1 F(y 2 ) (5,48)
Machine Translated by Google
Do đó, kích hoạt đầu ra của lớp n-1 có thể được tính từ kích hoạt đầu ra của
lớp n và giá trị của phần dư F và G cho lớp n. Đây là lý do tại sao các kích
hoạt cho lớp dư có thể đảo ngược không cần phải được lưu trữ để thực hiện lan
truyền ngược. Vì các kích hoạt cho các lớp trung gian không cần phải lưu trữ nên
mô hình sẽ sử dụng ít bộ nhớ hơn (mà không làm giảm hiệu suất).
Các lớp có thể đảo ngược trong máy biến áp Bây giờ chúng ta đã hiểu các lớp
dư có thể đảo ngược là gì và chúng tiết kiệm bộ nhớ như thế nào, chúng ta có thể
xem cách chúng được sử dụng trong Reformer [142]. Cơ chế chú ý đóng vai trò là
hàm dư F và mạng chuyển tiếp nguồn cấp dữ liệu theo vị trí là G. Việc chuẩn hóa
lớp trở thành một phần của khối dư vì nó có dạng x+Lớp con(x), trong đó Lớp con
biểu thị hàm dư thích hợp. Tham chiếu [142] cho thấy máy biến áp sử dụng các lớp
dư có thể đảo ngược có hiệu suất tương tự như máy biến áp tiêu chuẩn.
Mô hình Người biểu diễn [53] giảm độ phức tạp của cơ chế chú ý bằng cách sử dụng
phương pháp có tên Chú ý nhanh thông qua các tính năng ngẫu nhiên trực giao tích
cực (FAVOR+). Trình biểu diễn không làm sai lệch cơ chế chú ý trước bằng cách
sử dụng các mẫu chú ý, thay vào đó FAVOR+ tính gần đúng phép tính softmax bằng
cách sử dụng hạt nhân.
Sự chú ý như một hạt nhân Bằng cách viết lại công thức tự chú ý ((5.23)), chủ
QKT √
Attn(Q, K, V) = softmax V. (5.49)
dk
T
qik
điểm kinh nghiệm
j √ dk
V. (5,50)
qikTr
r Si exp √ dk
T
qik j
= D 1 điểm kinh nghiệm V, (5,51)
√ dk
exp Lưu ý rằng mỗi phần tử đường chéo là một phần của tổng trong mẫu số softmax
và nghịch đảo của D chỉ đơn giản là ma trận nghịch đảo.
Trong Reformer, sau đó chúng ta có thể xác định lại trọng số chú ý như
Machine Translated by Google
T
qik
,
= Aij = exp sao cho Dij = δij r Si D 1AV. Các Không khí. Do đó Attn(Q, K, V)
j √ dk
truy vấn và khóa có thể được chia tỷ lệ sao cho chiều khóa được hấp thụ vào
T
chúng, Aij chỉ đơn giản là exp(qik Vì Aij phụ ).
j
thuộc vào tích bên trong của truy vấn và vectơ khóa, nên nó là thước đo mức
độ tương tự giữa qi và kj . Những sự chú ý này trọng số có thể được tính gần
đúng bằng thuật toán FAVOR+:
T T T
Aij = φ(q ) φ(k ), (5,52)
Tôi
j
K R L×r
trong đó ánh xạ φ ánh xạ Q, K R L×dk tới Q , , tương ứng,
T T T T ;
với r > 0. Các hàng của Q là φ(q thì ) và các hàng của K là φ(k )
Tôi
j
(5.49) trở thành
T T T T
Attn (Q, K, V) = Dˆ 1 (Q ((K ) V), Dˆ ij = δij φ(q Tôi
)φ(k m) .(5.53)
m Si
Khi các hàm hạt nhân φ(x) như được định nghĩa trong [53], thì sự chú ý có
T
thể được tính gần đúng bằng
trọng lượng Aij = exp qik j
T T
exp(qik ) = Λcos(ω (qi + kj ))ω,
(5,54)
j
2 2
trong đó Λ = exp(-(qi + kj
)/2) và ω được lấy mẫu từ dk- ω
chiều phân phối chuẩn chuẩn. Nếu như trong (5.54) được thay
√ d ω , thế bằng khi đó ω là điểm bất kỳ trên bề mặt của mặt cầu dk chiều
ω
Big Bird là một nỗ lực khác nhằm cung cấp cho Transformer một cơ chế chú
ý thưa thớt cho phép mở rộng quy mô tuyến tính. Nó cũng được chứng minh
là Turing hoàn chỉnh và một hàm xấp xỉ hàm chuỗi phổ quát [292].
Cơ chế chú ý là một biểu đồ có hướng. Big Bird mô tả cơ chế chú ý dưới
dạng biểu đồ có hướng. Các đỉnh đại diện cho vị trí L trong chuỗi đầu
vào. Các cạnh có hướng biểu thị trọng số chú ý trước softmax. Nói cách
khác, các cạnh có hướng là tích bên trong giữa vectơ truy vấn và vectơ
khóa, trong đó i đỉnh thứ
Machine Translated by Google
sẽ chỉ có các cạnh có hướng với các đỉnh tương ứng với các vị trí then chốt mà nó
Ma trận kề Việc biểu diễn đồ thị đưa ra vấn đề giảm độ phức tạp của cơ chế chú ý
dưới dạng một vấn đề về kích thước đồ thị, có thể được giải quyết bằng lý thuyết
đồ thị. Big Bird mô tả biểu đồ chú ý với ma trận kề L × L , A:
1, j Si 0,
A(i, j) = (5,55)
ngược lại
Khi ma trận kề là tất cả các đơn vị, A(i, j) = 1, (i, j), thì chúng ta có
một đồ thị được kết nối đầy đủ trong đó mỗi đỉnh được kết nối với mọi đỉnh khác
và một cơ chế chú ý có độ phức tạp bậc hai.
Bất cứ khi nào A(i, j) = 0, điều đó có nghĩa là cạnh (i, j) không tồn tại và do
đó vị trí truy vấn i (qi) không thể tham dự vào vị trí khóa j (kj ).
Các mẫu biểu đồ chú ý Sử dụng khung lý thuyết đồ thị, Big Bird kết hợp ba mẫu chú
ý: chú ý ngẫu nhiên, chú ý cửa sổ trượt và chú ý toàn cầu. Mỗi mẫu chú ý tương
ứng với một cách cụ thể để khởi tạo ma trận kề.
Chú ý ngẫu nhiên Mẫu chú ý ngẫu nhiên của Big Bird được lấy cảm hứng từ loại đồ
thị ngẫu nhiên Erdős-Renyi [84] kết nối các đỉnh một cách ngẫu nhiên với xác suất
đồng đều. Trong sự chú ý ngẫu nhiên của Big Bird, mỗi truy vấn qi liên quan đến
một số khóa ngẫu nhiên. Xét về ma trận kề, A(i, :) = 1 với r vị trí then chốt
được chọn ngẫu nhiên, có xác suất bằng nhau. Một ví dụ về ma trận kề cho mẫu chú
ý ngẫu nhiên được hiển thị trong Hình 5.9.
Sự chú ý của cửa sổ trượt Sự chú ý cục bộ của Big Bird bắt nguồn từ biểu đồ thế
giới nhỏ Watts-Strogatz [265] trên một mạng vòng, trong đó mỗi đỉnh được kết nối
với w lân cận, do đó có w/2 lân cận ở mỗi bên. Điều này cho phép truy vấn tại vị
trí i quan tâm đến các khóa tại các vị trí trong cửa sổ [i w/2, i+w/2]. Xét về
mặt ma trận kề, A(i, i w/2 : i+w/2) = 1. Điều này tương tự với sự chú ý của cửa
sổ trượt trong Longformer đã được thảo luận trong Phần. 5.2.2.1. Một ví dụ về ma
trận kề cho cửa sổ trượt được thể hiện trong hình 5.10.
Machine Translated by Google
· · ·
• • • • ·
· · · · • · · ·
· • • ·
· · · · · · · · · ·
· • • · · • • • · · · · ·
• · · • · · • · · • • •
· • • • • • • · • · · • ·
· • • · · · • • • • · · ·
• • • · · • • · · • · ·
· • · · • · • · · • • • • •
• • • · · • • • · · · · ·
· · • · · · · · · · · · •
· • · · · • • · · · · · •
· • • · · • • • • · · · •
· · · · · · · ·
•
•• •• • •· ·
· · · · · · · ·
• • • • • · · · · · · · ·
· • • • • • • · · · · · ·
· · • • • • • • · · · · ·
· · · • • • • • • · · · ·
· · · · • • • • • • · · ·
· · · · · • • • • • • · ·
· · · · · · • • • • • • ·
· · · · · · · • • • • • •
· · · · · · · · • • • • •
· · · · · · · · · • • •
· · • • · · • · · · · ·
· · • • · · • · · · · ·
• • • • • • • • • • • • •
• • • • • • • • • • • • •
· · • • · · • · · · · ·
· · • • · · • · · · · ·
• • • • • • • • • • • • •
· · • • · · • · · · · ·
· · • • · · • · · · · ·
· · • • · · • · · · · ·
· · • • · · • · · · · ·
· · • • · · • · · · · ·
Hình 5.11 Ma trận kề cận chú ý tổng thể cho cấu trúc máy biến áp bên
trong, với L = 12 và G = 3, 4, 7. Hàng i tương ứng
để truy vấn i. Các cột có • là các khóa mà tôi quan tâm đến và ·
thể hiện sự thiếu chú ý (thiếu cạnh).
Sự chú ý toàn cầu Big Bird cũng cho phép một số token tham dự vào tất cả
token trong chuỗi. Những token toàn cầu này cũng được tất cả mọi người tham gia
mã thông báo. Big Bird sử dụng hai loại token toàn cầu: biến áp nội bộ
xây dựng và xây dựng máy biến áp bên ngoài.
Trong cấu trúc máy biến áp bên trong, một tập hợp con của đỉnh L , G,
được thăng cấp thành token toàn cầu. Do đó, các truy vấn hoặc khóa ở các vị trí đó
tham gia vào tất cả các vị trí khác. Ở đây, A(i, :) = A(:, i) = 1, i G.
ma trận kề B mở rộng được thể hiện trên hình 5.11.
Cấu trúc máy biến áp bên ngoài bổ sung thêm g mã thông báo vào
mã thông báo L hiện có . Các token bổ sung có tính toàn cầu. Những ví dụ bao gồm
mã thông báo đặc biệt được sử dụng trong máy biến áp, như [CLS]. Điều này về cơ bản tạo ra một
ma trận kề mới, B, bao gồm các mã thông báo đặc biệt bằng cách thêm vào trước
g hàng và cột trên A. Ở đây, B(i, :) = B(:, i) = 1, trong đó i =
1, . . . , g, và B(g + i, g + j) = A(i, j), trong đó i và j = L. Cái
• • • • • • • • • • • • •
• • • • • • • • • • • • •
• • • • • • • • • • • • •
• • • · · · · · · · · ·
• • • · · · · · · · · ·
• • • · · · · · · · · ·
• • • · · · · · · · · ·
• • • · · · · · · · · ·
• • • · · · · · · · · ·
• • • · · · · · · · · ·
• • • · · · · · · · · ·
• • • · · · · · · · · ·
Hình 5.12 Ma trận kề cận chú ý toàn cục cho cấu trúc biến đổi bên ngoài,
với L = 9 và g = 3. Hàng i tương ứng với truy vấn
Tôi. Các cột có • là các khóa mà tôi tham gia truy vấn và · đại diện cho một
thiếu sự chú ý (thiếu cạnh).
• • • • • • • • • • • • • • •
• • • • • • • • • • • • • • •
• • • • · · · · · · · • • · •
• • • • • • · • · • · · • • ·
• • • • • • • · • · · · • · ·
• • · • • • • • • · · · · • · ·
• • · · • • • • · · • • · · · ·
• • · • · · • • • • · · · • · ·
• • • · · · • • • • · · · • ·
• • · · · · · · · · · · · · · · · •
• • · · · • · · • • • • • · •
• • • · · • · · · · · • • • • · ·
Hình 5.13 Ma trận kề cận chú ý của Big Bird cho cấu trúc biến đổi bên
ngoài, với L = 12, g = 2, w = 4 và r = 4. Hàng i tương ứng với truy vấn
i. Các cột có dấu • là các khóa mà tôi quan tâm đến
và · thể hiện sự thiếu chú ý (thiếu cạnh).
Machine Translated by Google
Nhân ma trận thưa hiệu quả Bằng cách làm cho ma trận kề (và ma trận chú ý tương
ứng) trở nên thưa thớt, tốc độ tăng tốc do GPU cung cấp sẽ bị loại bỏ. Điều này
là do việc nhân các ma trận với độ thưa tùy ý không hiệu quả trên GPU. Tuy
nhiên, các ma trận có độ thưa thớt được nhóm thành các khối có thể được nhân
lên một cách hiệu quả trên GPU [100].
Để giải quyết vấn đề này, Big Bird nhóm các khối truy vấn và khóa lại với
nhau, sau đó thêm độ thưa thớt theo khối thay vì theo vị trí chuỗi riêng lẻ
[292]. Chọn kích thước khối b, sau đó chia độ dài chuỗi L thành các khối L/b .
Vì vậy, thay vì các truy vấn và khóa L , sẽ có các truy vấn và khóa L/b . Điều
này sửa đổi từng kiểu chú ý được thảo luận ở trên theo những cách tương đối đơn
giản:
1. Chú ý ngẫu nhiên Số lượng khóa ngẫu nhiên cho một truy vấn cần quan tâm,
r, trở thành số khối khóa ngẫu nhiên mà khối truy vấn chú ý.
3. Sự chú ý toàn cầu Định nghĩa về sự chú ý toàn cầu không thay đổi, ngoại
trừ việc nó được định nghĩa theo các khối chứ không phải theo vị trí
trình tự.
Bây giờ chúng tôi tập trung vào một số cách mà cơ chế chú ý đã được thay đổi
để cải thiện hiệu suất của máy biến áp.
Vaswani và cộng sự. [254] cho thấy rằng sự chú ý nhiều đầu cho phép bộ chuyển
đổi thực hiện các phép tính chú ý riêng biệt h (số lượng đầu chú ý). Thay vào
đó , Đầu biết nói Chú ý [227] cho phép các đầu chú ý chia sẻ thông tin. Nó
hoạt động bằng cách thêm hai lớp tuyến tính chiếu tích của truy vấn và ma trận
khóa, QKT (logits chú ý), vào một không gian mới và chiếu các trọng số chú ý,
Sof tmax(QKT ), vào một không gian mới.
Talking-Heads Chú ý (THA) cũng phân chia các đầu chú ý thành ba loại: đầu
dành cho truy vấn và khóa, đầu dành cho giá trị và đầu dành cho nhật ký chú ý
và trọng số chú ý. Chúng ta hãy xem xét điều này một cách chi tiết.
Machine Translated by Google
Hãy nhớ lại phần 5.2.1.1 rằng sự chú ý nhiều đầu giữa
Q = X1Wq, R L1×dk×h
V = X2Wv, R L2×dv×h
Phân vùng các đầu chú ý THA sửa đổi cơ chế chú ý theo một số cách
như được trình bày trong (5.56)–(5.59). Đầu tiên, nó thay đổi kích
thước đầu chú ý của Q và K thành số lượng đầu chú ý của khóa truy
vấn hk và thay đổi thứ nguyên đầu chú ý của V thành số lượng đầu
chú ý giá trị hv. Điều này xảy ra bằng cách thay đổi thứ nguyên
của ma trận chiếu tạo ra ma trận truy vấn, khóa và giá trị từ
chuỗi đầu vào. Nói cách khác, (5.56) trở thành
Q = X1Wq, R L1×dk×hk
V = X2Wv, R L2×dv×hv
Chiếu nhật ký chú ý Tiếp theo, nhật ký chú ý α được chiếu bằng một lớp tuyến
tính kết hợp các đầu chú ý của khóa truy vấn với các đầu trọng số/logit chú
ý, Wα R hk×h và chú ý ,
Machine Translated by Google
các trọng số được chiếu bằng một lớp tuyến tính trộn các đầu giá trị chú ý với
các đầu logit/trọng lượng chú ý, các từ WA R h×hv , (5.57)–(5.59) . Ở nơi khác
trở thành
Hiệu suất của Người nói chuyện (THA) được đánh giá bằng cách đào tạo
một mô hình T5 sử dụng THA và các siêu tham số tương tự như bài báo T5
(ngoại trừ việc loại bỏ tình trạng bỏ học trong quá trình đào tạo
trước) và đào tạo mô hình ALBERT tương tự. Các tác giả nhận thấy rằng
THA luôn hoạt động tốt hơn so với sự chú ý của nhiều đầu [227]. Chỉ cần
chiếu nhật ký chú ý hoặc chỉ trọng số chú ý chỉ tốt hơn một chút so với
việc sử dụng chú ý nhiều đầu thuần túy. Hiệu suất tăng đáng kể đến từ
việc sử dụng cả hai dự đoán. Việc sử dụng sự chú ý của người nói trên
các lớp tự chú ý của khối bộ mã hóa có tác động lớn hơn đến hiệu suất
của mô hình so với việc sử dụng sự chú ý của người nói trên các lớp
chú ý của khối giải mã.
Sự chú ý của nhiều người đã phải trả giá và các dự đoán mà THA
bổ sung, Wα và WA, sẽ làm tăng chi phí đó. Tính toán nhật ký chú ý
dự kiến, Pα, cộng L1 · L2 · hk · h phép nhân ma trận và tính toán
trọng số chú ý dự kiến, PA, cộng L1 · L2 · h · hv phép nhân ma
trận. Cùng với nhau, THA cộng các phép nhân ma trận L1 ·L2 · h ·(hk
+ hv) , điều này sẽ làm cho việc tính toán tốn kém hơn. Các tác
giả lưu ý rằng nếu h < dk và h < dv thì chi phí của các phép chiếu
THA sẽ thấp hơn chi phí của các phép tính chú ý nhiều đầu hiện có.
Vì vậy, tóm lại, Talking-Heads Chú ý cải thiện chất lượng mô hình nhưng
phải trả giá bằng việc tăng thời gian tính toán; cho phép người dùng quyết
định loại đánh đổi nào họ muốn thực hiện.
Machine Translated by Google
Phần này thảo luận về một số mô hình thiên vị cơ chế chú ý bằng cách ấn định vị
trí nào có thể tham gia vào vị trí nào. Mô hình Longformer, được thảo luận
trong phần 5.2.2.1 và mô hình Big Bird, được thảo luận trong phần 5.2.2.4 đều
là ví dụ về sự chú ý với người ưu tiên, vì mỗi mô hình sử dụng các mẫu chú ý cụ
thể, như sự chú ý của cửa sổ trượt trong phần 5.2.2.1 và 5.2.2.4 . Chúng ta
cũng đã thảo luận một ví dụ khác về sự chú ý thiên vị với các linh mục trong
phần 5.1.2.1, Realformer.
2
Sự chú ý theo cụm [256] là một phương pháp để tránh sự chú ý của O(L ·dk+
2
L · dv) độ phức tạp về thời gian tuyến tính hóa việc tính toán trọng số tự
chú ý bằng cách phân cụm các truy vấn băm LSH bằng thuật toán phân cụm k-means.
Và sử dụng trọng tâm truy vấn làm truy vấn để tính toán ma trận chú ý.
Phân cụm các vectơ truy vấn Sự chú ý theo cụm xảy ra theo hai giai đoạn. Đầu
tiên, mỗi vectơ truy vấn được băm bằng phép băm nhạy cảm với địa phương. Các
truy vấn băm sau đó được nhóm thành cụm C với phương tiện k.
Số liệu khoảng cách được sử dụng cho phương tiện k là khoảng cách Hamming. Các
trọng tâm của j cụm được đưa ra bởi
quần què
L
c = i=1 Tứ Kỳ
qj
_ L (5,66)
i=1 Sij
c
qj ở đâu là trọng tâm của cụm j và ma trận S {0, 1} phân chia các
quần què
L×C
vectơ truy vấn thành C cụm không chồng lấp, vì vậy nếu Sij = 1 thì qi thuộc cụm
j. Các truy vấn centroid được nhóm R C×dk thành Qc , ma trận truy vấn thực
trận với ma , ma trận các vectơ trọng tâm. Sau đó chúng ta có thể thay thế
centroid truy vấn, Qc và tính toán ma trận chú ý phân cụm:
QcKT
Ac = softmax , R C×L (5,67)
(dk)
Bạn có thể dừng ở đây và chỉ sử dụng các trọng số chú ý được nhóm để tính
toán đầu ra của cơ chế chú ý. Phép tính này có độ phức tạp về thời gian là O(CL
· dk + LC · dv), tuyến tính rõ ràng theo độ dài chuỗi. Tuy nhiên, có thể cải
thiện xấp xỉ mức độ chú ý theo cụm bằng cách tìm k khóa có điểm chú ý cao nhất
trong
Machine Translated by Google
mỗi cụm C. Và, đối với mỗi khóa top-k của một cụm, hãy tính mức độ chú ý với
các truy vấn trong cụm đó:
T
mˆ j exp qikl
, nếu Tjl = 1
t = L T
một
il
r=1 Tjr exp qikr (5,68)
Một
c nếu không thì
cái gì đó,
ở đâu mˆ j = L
i=1 TijAc và T {0, 1} C×L: nếu Tij = 1 thì ki là một trong
ij các khóa top-k trong cụm j.
Sau đó tính toán các vectơ ngữ cảnh (trung bình có trọng số của các giá
trị) của cụm chú ý và sử dụng nó làm ma trận giá trị: Vˆ = AtV, R L×dv .
Điều này làm cho độ phức tạp của phép tính chú ý theo cụm thành O(CL· dk + LC ·
Hiệu suất Sự chú ý theo cụm vượt trội hơn biến áp tiêu chuẩn và Reformer về
nhận dạng giọng nói tự động với bộ dữ liệu âm thanh WSJ và Switch-board. Nó
cũng gần giống với RoBERTa đã được huấn luyện trước trên GLUE và SQuAD, nhưng
hiệu suất bị giảm trong một phút. Nó hoạt động tốt hơn trên GLUE so với RoBERTa,
nhưng không hoạt động tốt hơn trên SQuAD, nơi nó kém hơn một chút.
Khi số lượng cụm tăng lên, phép tính gần đúng sẽ trở nên chính xác hơn. Nó
hội tụ nhanh gấp đôi so với máy biến áp tiêu chuẩn, đối với độ dài chuỗi dài và
đối với độ dài chuỗi ngắn, sự chú ý phân cụm không nhanh hơn máy biến áp tiêu
chuẩn.
Luna [177], viết tắt của Chú ý lồng nhau thống nhất tuyến tính, thay thế tính
toán trọng số chú ý trong mỗi đầu chú ý bằng hai phép tính chú ý tuyến tính
lồng nhau bằng cách sử dụng một chuỗi đầu vào bổ sung, có thể học được, trong
l×d ,
học cách mã hóa thông tin theo ngữ cảnh: P R độ dài của đó l là
chuỗi.
Như đã thảo luận trước đó, đầu ra của phần đầu chú ý giữa một truy vấn có
n×d m×d
trình tự, X R và một chuỗi ngữ cảnh, C R , thể được ghi
BẰNG
T
XWq(CWk) dk/h n×d
Y = Attn(X, C) = softmax CV, R (5,69)
Machine Translated by Google
trong đó Wq,Wk,Wv là các phép chiếu tuyến tính chiếu một chuỗi đầu vào
vào các không gian truy vấn, khóa và giá trị tương ứng, như trong (5.24).
Luna chú ý
Gói chú ý Lớp chú ý đầu tiên được lồng vào nhau sẽ tính toán mức độ chú ý
giữa chuỗi bổ sung P và chuỗi ngữ cảnh C.
Luna gọi đây là “sự chú ý”. Đầu ra của nó là “ngữ cảnh đóng gói”, YP =
l×d
Attn(P, C), độ phức tạp , và nó có cùng chiều với P. Nó
R là O(lm).
Giải nén sự chú ý Lớp thứ hai trong số các lớp chú ý lồng nhau sẽ tính
toán sự chú ý giữa chuỗi đầu vào và chuỗi văn bản ngữ cảnh được đóng gói,
YP . Luna gọi đây là “sự chú ý giải nén”: YX = Attn(X, YP ), R chuỗi đầu
n×d
vào X. Độ phức tạp . Đầu ra của nó có cùng chiều với
của nó là O(ln).
Sự chú ý của Luna Luna kết hợp các lớp chú ý gói và giải nén theo trình
tự, tạo thành lớp Luna: YX, YP = LunaAttn(X, P, C), bao gồm hai lớp chú ý
nhiều đầu được hiển thị trong Hình 5.14. P được khởi tạo cho mã hóa vị trí
của máy biến áp và đối với các khối máy biến áp tiếp theo, YP được sử dụng
thay cho P.
Vì các lớp chú ý gói và chú ý giải nén được sắp xếp theo trình tự nên
độ phức tạp tổng hợp của chúng là O(lm + ln). Do chuỗi đầu vào bổ sung P
có độ dài cố định nên độ phức tạp kết hợp của cơ chế chú ý nhiều đầu của
Luna là tuyến tính theo độ dài của chuỗi đầu vào X. Với những sửa đổi nhỏ,
Luna cũng có thể hỗ trợ sự chú ý chéo nhân quả.
Hiệu suất của Luna được so sánh với hiệu suất của máy biến áp tiêu chuẩn
và 11 máy biến áp hiệu quả khác trên điểm chuẩn Long Range Arena (LRA)
[242]. Nó hoạt động tốt trên tất cả các nhiệm vụ, vượt trội hơn hầu hết,
nhưng không phải tất cả, các mô hình; đạt được độ chính xác trung bình cao
nhất. Luna luôn nhanh hơn máy biến áp tiêu chuẩn và nhiều, nhưng không phải
tất cả, máy biến áp hiệu quả mà nó được so sánh. Nó cũng hiệu quả về bộ nhớ
hơn so với máy biến áp tiêu chuẩn, với mức sử dụng bộ nhớ tương đương với
các máy biến áp hiệu quả khác và đánh bại một số ít.
Machine Translated by Google
Hình 5.14 Kiến trúc của khối mã hóa Luna. P là dãy phụ
cho khối và X là chuỗi đầu vào của khối. P sẽ là
chuỗi bổ sung cho khối Luna tiếp theo và P sẽ là chuỗi đầu vào
của khối Luna tiếp theo.
Trong [259], Wang và cộng sự. chứng minh rằng ma trận trọng số tự chú ý của
máy biến áp tiêu chuẩn [254] có thể xấp xỉ bằng ma trận cấp thấp [83], giảm
2
độ phức tạp từ O(L ) đến O(L), trong đó L là
độ dài trình tự.
Linformer giới thiệu hai ma trận chiếu tuyến tính biến đổi
ma trận khóa và giá trị của i đầu chú ý: Ei = δR và
quần què
k×L
Fi = exp δ R, trong đó R R và các thành phần của nó được rút ra từ
2 3
N (0, 1/k), δ = θ(1/L), k = 5 log(dL)/( ), và là sai số gần
đúng. Ngoài ra, dk = dv = d. Sự gần đúng này có nghĩa là
đầu ra của mỗi đầu chú ý trong cơ chế có thể gần đúng
bởi headi = Ai · FiVi , Ở đâu
T
Khí(EiKi) L×k
Ai = softmax , R (5,70)
dk/h
cũng là một cách để giảm độ phức tạp về không gian và thời gian của cơ chế chú
ý và do đó phù hợp với các phương pháp được thảo luận trong phần 5.2.2.
Các tác giả xem xét ba biến thể của việc chia sẻ tham số để thực hiện
Linformer thậm chí còn hiệu quả hơn:
1. Chia sẻ E và F trên tất cả các mục chú ý (chia sẻ theo chiều hướng): Ei =
E, Fi = F
2. Chia sẻ các phép chiếu giữa các đầu và ma trận khóa/giá trị: Ei = Fi =
E
3. Chia sẻ các phép chiếu giữa các đầu, ma trận khóa/giá trị và bố cục mô hình
ers (chia sẻ theo lớp)
Tốc độ suy luận lần đầu tiên được thử nghiệm dựa trên bộ chuyển đổi tiêu
chuẩn [254]. Khi độ dài chuỗi L tăng lên, máy biến áp tiêu chuẩn trở nên chậm
hơn. Tốc độ Linformer hầu như không đổi và nhanh hơn đáng kể đối với các chuỗi
dài. Vương và cộng sự. giữ cố định độ dài chuỗi và thay đổi kích thước lô để
xử lý chuỗi văn bản.
Hành vi này được mong đợi vì độ dài chuỗi được giữ cố định.
Để kiểm tra hiệu suất, Linformer đã được đào tạo theo cách tương tự như
RoBERTa [170] và so sánh bằng cách sử dụng độ phức tạp xác thực và hiệu suất
của các tác vụ tiếp theo. Dựa trên sự phức tạp, hiệu suất của Linformer tăng
khi k tăng và chất lượng của Linformer gần giống với chất lượng của máy biến
áp tiêu chuẩn với L = 512, k = 128 và L = 1024, k = 256. Dựa trên hiệu suất của
tác vụ xuôi dòng, hiệu suất của Linformer là có thể so sánh với RoBERTa khi L
= 512, k = 128 và hoạt động tốt hơn RoBERTa ở k = 256. Hiệu suất của L = 1024,
k = 256 và L = 512, k = 256 là tương tự nhau, cho thấy hiệu suất của Linformer
được kiểm soát nhiều hơn bằng k nhiều hơn L/k. Có hai kết quả chính:
2. Hiệu suất khi sử dụng chia sẻ theo lớp gần giống với hiệu suất khi sử
dụng không chia sẻ tham số. Điều này cho thấy rằng số lượng tham số do
Linformer giới thiệu có thể giảm đi mà không ảnh hưởng đến chất lượng.
Mô hình Người biểu diễn, đã được thảo luận trong phần 5.2.2.3, cũng dựa
trên sự chú ý gần đúng ở cấp độ thấp.
Machine Translated by Google
5.3.1 ĐIỆN
ELECTRA [58] giới thiệu một nhiệm vụ đào tạo trước mới, giải mã mã thông báo
thay thế, kết hợp những gì tốt nhất của mô hình ngôn ngữ ẩn và mô hình ngôn ngữ
thông thường, cho phép ELECTRA học hiệu quả hơn so với các mô hình trước đó.
ELECTRA là mô hình hai chiều, giống như mô hình ngôn ngữ đeo mặt nạ. Tuy nhiên,
không giống như mô hình ngôn ngữ đeo mặt nạ, nó học từ tất cả các vị trí trong
chuỗi đầu vào.
Phát hiện mã thông báo được thay thế (RTD) giúp mô hình tìm hiểu mã thông báo
nào có nhiều khả năng ở vị trí nhất định trong một chuỗi vì mô hình học cách
thay thế và xác định từng mã thông báo trong dữ liệu huấn luyện. Theo cách này,
ELECTRA giống như người phân biệt đối xử trong Mạng đối thủ sáng tạo (GAN). Ở
đây, không giống như GAN, trình tạo không được huấn luyện để đánh lừa bộ phân
biệt và vectơ nhiễu không được thêm vào đầu vào của trình tạo.
ELECTRA được đào tạo bằng cách sử dụng kết hợp máy tạo và máy phân biệt.
Trình tạo là một mô hình ngôn ngữ đeo mặt nạ và trình phân biệt đối xử chính là
ELECTRA. Do đó, ELECTRA cần ít dữ liệu đào tạo hơn so với các mô hình ngôn ngữ
đeo mặt nạ trước đó, như BERT, vì các mô hình ngôn ngữ đeo mặt nạ không che
giấu mọi mã thông báo trong dữ liệu đào tạo. Bộ tạo và bộ phân biệt đều là bộ
mã hóa máy biến áp.
Quá trình đào tạo bắt đầu bằng việc bộ tạo chọn một tập hợp ngẫu nhiên gồm
k vị trí, m = (m1, . . ., mk), từ chuỗi đầu vào, sao cho mỗi vị trí có i =
trí mi chiều , 1, . . . , k, được rút ra thống nhất từ [1, L], trong đó L là vị
dài chuỗi. Mỗi mã thông báo trong chuỗi đầu vào x = (x1, . . . , xL) tại các vị
trí trong m sẽ được thay thế bằng mã thông báo [MASK].
Trình tự bị che dấu là
che mặt
x = THAY THẾ(x, m, [MASK]) (5,71)
Sau đó, trình tạo sẽ tìm hiểu các phiên bản chưa được che giấu của các to-
ken được che giấu trong x. Xác suất để trình tạo tạo ra một mã thông báo xt cụ
thể là
T
kinh nghiệm _ hG(x)t
P cướpG(xt |x) = , (5,72)
t exp (e(x ) ThG(x)t)
Trình phân biệt đối xử học cách biết mã thông báo nào trong chuỗi được tạo bởi trình
tạo. Điều này hoạt động bằng cách tạo một chuỗi trong đó các mã thông báo bị che giấu đã
được thay thế bằng các mẫu (mã thông báo “hỏng”) từ trình tạo:
nơi tôi m. Sau đó, bộ phân biệt sẽ học cách xác định mã thông báo nào có trong đầu
c
trong x
vào x ban đầu. Ở đây, không giống như GAN, trình tạo không được huấn luyện để đánh
lừa bộ phân biệt và vectơ nhiễu không được thêm vào đầu vào của trình tạo.
5.3.2 T5
T5, Công cụ chuyển đổi văn bản thành văn bản [205], là kết quả của một cuộc khảo sát nhằm
tìm hiểu phương pháp học chuyển văn bản nào hoạt động tốt nhất. Nó định hình lại các tác
vụ NLP tiêu chuẩn dưới dạng chuyển đổi văn bản thành văn bản, trong đó đầu vào và đầu ra là
các chuỗi. Điều này trái ngược với các mô hình ngôn ngữ được che dấu như BERT, xuất ra nhãn
Việc định dạng lại các nhiệm vụ đào tạo có nghĩa là bạn có thể sử dụng cùng một mô
hình và hàm mất mát cho bất kỳ nhiệm vụ NLP nào. Việc sử dụng tính năng chuyển đổi văn bản
thành văn bản (chuyển đổi trình tự) cho phép bạn huấn luyện một mô hình cho nhiều tác vụ
cùng một lúc, sử dụng lại kiến trúc mô hình, hàm mất mát và siêu tham số. Phụ lục D của
Raffel et al. có các ví dụ về cách định dạng đầu vào cho từng bộ dữ liệu mà mô hình T5 đã
Phần này thảo luận về các sửa đổi đối với Máy biến áp mà không sửa đổi
Mô hình Hỗn hợp các chuyên gia (MoE) đã góp phần mang lại nhiều thành công nhưng phải trả
giá bằng sự phức tạp và chi phí đào tạo [225]. Tuy nhiên, sự kết hợp của các mô hình chuyên
Hình 5.15 Khối mã hóa Switch Transformer minh họa hai đầu vào to-kens x1 và x2 đang được
được thay thế bằng việc chuyển FFN thành một trong những chuyên gia.
trong một mô hình thưa thớt với chi phí tính toán đáng kể và đào tạo không ổn định. Máy
biến áp chuyển mạch giải quyết hầu hết các vấn đề này bằng một giải pháp mới
thuật toán định tuyến giữa các chuyên gia, cho phép tăng số lượng tham số mà không tăng
Sự đổi mới cốt lõi của máy biến áp chuyển mạch là thay thế máy biến áp chuyển tiếp
lớp trong máy biến áp với lớp chuyển tiếp nguồn cấp dữ liệu chuyển tiếp, như thể hiện trong
Hình 5.15.
Trong máy biến áp tiêu chuẩn, một mạng chuyển tiếp duy nhất tuân theo
dịch mã thông báo đại diện theo mã thông báo sang máy biến áp tiếp theo
khối đầu vào. Như thể hiện trong hình 5.15, trong một máy biến áp chuyển mạch, thay vì
một mạng chuyển tiếp nguồn cấp dữ liệu, cũng có nhiều mạng chuyển tiếp nguồn cấp dữ liệu
được biết đến như những chuyên gia. Sau sự chú ý của nhiều người đứng đầu, mỗi đại diện
mã thông báo, x, chỉ được chuyển đến một chuyên gia. Chuyên gia được chọn từ
N
một tập hợp N chuyên gia, {Ei(x)} tôi=1
bằng cách tính toán phân bố xác suất
trong đó Wr R
N×d
là một ma trận trọng số có thể học được để xác định
chuyên gia nào được chọn và d là chiều của việc gửi lại mã thông báo, x. Chuyên gia có
thành phần lớn nhất của 5,75: p(x) = (p1, . . . , pN ), gọi nó là pj , và được sử dụng để
tính toán biểu diễn mã thông báo được cập nhật. Vì vậy, mặc dù các thông số
đã tăng gấp bốn lần nhờ có bốn mạng chuyển tiếp nguồn cấp dữ liệu, cứng
định tuyến đảm bảo rằng chi phí tính toán vẫn giữ nguyên. Như vậy
mạng chuyển tiếp nguồn cấp dữ liệu cho phép mở rộng quy mô của các chuyên gia tới bất kỳ
số (bị ràng buộc bởi dung lượng bộ nhớ) mà không tăng tính toán
chi phí và không cần bất kỳ sự chuyển giao nào sẽ giúp ích trong quá trình phân chia.
Tính song song của mô hình sẽ phân chia mô hình trên các thiết bị (lõi/máy)
trong khi sử dụng cùng một dữ liệu trong lô, dẫn đến một lượng lớn
mô hình xử lý chậm hơn do luồng tuần tự; nút cổ chai được giới thiệu bởi giao tiếp.
mô hình có trọng số không đổi và chia nhỏ dữ liệu, cho phép cải thiện
tốc độ tính toán nhưng mô hình có công suất thấp hơn do kích thước. Công tắc
Transformer sử dụng dữ liệu và tính song song của chuyên gia—tức là mỗi dữ liệu được
được phân chia cho một chuyên gia trên một thiết bị sử dụng trọng số chuyên gia của nó để
tính toán. Bản thân các chuyên gia được phân bổ và không liên lạc với nhau, dẫn đến
sự song song hoàn toàn và chi phí tính toán thấp hơn. Các tác giả sử dụng các chuyên
để mở rộng quy mô thành một mô hình khổng lồ mà ngay cả một chuyên gia cũng không phù hợp
thiết bị.
vượt trội trong nhiều nhiệm vụ ngôn ngữ tự nhiên và trong các chế độ đào tạo khác
nhau, chẳng hạn như đào tạo trước, tinh chỉnh và đào tạo đa nhiệm.
Kết quả đa ngôn ngữ ấn tượng hơn khi chúng cho thấy mức tăng so với mô hình MT5
Nghiên cứu điển hình này xem xét trọng số chú ý của mô hình T5 được
tinh chỉnh để trích xuất khoảng tình cảm. Đầu vào của mô hình trích xuất khoảng này
là một khoảng văn bản chứa tình cảm tích cực hoặc tiêu cực.
Đầu ra là chuỗi con của văn bản đầu vào làm cho khoảng
Để sử dụng mô hình này, chúng ta sẽ cần ba thư viện Python: máy biến áp của
Huggingface, câu của Google và thư viện bertviz. Chúng có thể được cài đặt bằng cách
chạy lệnh shell được hiển thị trong Liệt kê 5.1. Sau khi môi trường được thiết lập, mô
hình và mã thông báo có thể được tải vào bộ nhớ, như trong Liệt kê 5.2.
"mrm8488/t5-base-finetuned-span-sentiment-extract"
tokenizer = AutoTokenizer.from_pretrain(model_name) model =
T5ForConditionalGeneration.from_pretrain(model_name) model =
model.to(device)
Để trích xuất cảm xúc theo mô hình này, bạn có thể sử dụng
max_length=80).squeeze()
dự đoán_span = tokenizer.decode(generated_ids,
Skip_special_tokens=True,
clean_up_tokenization_spaces=True)
trả lại dự đoán_span
Liệt kê 5.3 Trích xuất khoảng cảm xúc từ văn bản đầu vào
Machine Translated by Google
câu hỏi: bối cảnh [tích cực/tiêu cực]: [văn bản thể hiện tình cảm cụ thể].
Nghiên cứu điển hình này tập trung vào tình cảm tích cực trong một chuỗi văn
bản có cả tình cảm tích cực và tiêu cực. Dòng chữ có nội dung “Bạn là người tốt
nhưng chân bạn lại có mùi hôi”. Do đó, đối với cảm xúc tích cực, văn bản đầu
vào đầy đủ của mô hình trích xuất span là “câu hỏi: bối cảnh tích cực: Bạn là
người tốt, nhưng chân bạn lại hôi”.
Có nhiều phương pháp đã được sử dụng để phân tích ảnh hưởng của cơ chế chú ý
đến đầu ra của mô hình.
Chúng ta sẽ chỉ xem xét một điều: đơn giản là hình dung các trọng số của sự chú ý
1. bộ mã hóa tự chú ý
2. Bộ giải mã tự chú ý
Mỗi cơ chế chú ý có 12 đầu và do đó có 144 bộ trọng số chú ý, một bộ cho mỗi
lựa chọn lớp và đầu chú ý. Chúng ta sẽ sử dụng thư viện BertViz [255] để xem
trọng số của các đầu chú ý, điều này được hiển thị trong Liệt kê 5.4.
token = tokenizer.convert_ids_to_tokens(input_ids[0])
head_view(output.cross_attentions, token, layer=layer, head=heads)
Để bắt đầu, chúng tôi muốn xem liệu trọng số của bất kỳ đầu chú ý nào có hiển thị
từ “tích cực” trong văn bản đầu vào liên quan đến bất kỳ mã thông báo nào trong chuỗi
Chúng ta có thể thấy rằng “tích cực” liên quan đến “tốt đẹp” trong ba đầu của sự
chú ý của bộ mã hóa. Chúng được thể hiện trong hình 5.16. Trong năm đầu của cơ chế
chú ý chéo, “tích cực” và “tốt đẹp” đều hướng đến “con người”.
Trong khi có 11 người chú ý (trong số 432 người) thể hiện sự chú ý mạnh mẽ giữa “tích
cực” và sự chú ý, thậm chí còn có nhiều người khác không làm như vậy. Nhiều đầu chú ý
khác trong mô hình trích xuất khoảng thuộc loại mẫu chú ý được hiển thị trong [57],
đặc biệt là chú ý rộng rãi trong đó mỗi mã thông báo tham dự gần như mọi mã thông báo
Phân tích trên đặt ra câu hỏi về khả năng sử dụng trọng số chú ý để giải thích các
dự đoán. Và gần đây, [143] nhận thấy phân tích trọng số chú ý trình bày ở trên là một
Hình 5.16 Bộ mã hóa chú ý đến các đầu từ lớp 3 (đầu 5), 4 (đầu 11) và 6 (đầu 11), từ
Hình 5.17 Các đầu chú ý chéo từ các lớp 8, 9 và 10. Hàng trên cùng hiển
thị các đầu 1, 2 và 11 của lớp 8 (từ trái sang phải). Hàng dưới cùng
hiển thị đầu 0 của lớp 9 và đầu 1 của lớp 10.
một cơ chế chú ý Có một số bài viết đề xuất các phương pháp phân tích
khác. Chúng tôi sẽ mô tả một trong số chúng dưới đây.
Định mức đầu ra của cơ chế chú ý Phân tích một cơ chế chú ý bằng
cách sử dụng định mức của các thành phần đầu ra của nó được đề xuất
bởi [143]. Nhớ lại (5.29), cho thấy cách xác định sự tự chú ý trong
máy biến áp tiêu chuẩn cho một đầu chú ý duy nhất. Như được hiển thị
trong (2.19), sau khi nối các đầu chú ý, chúng ta áp dụng một lớp tuyến
tính để thu được đầu ra của cơ chế chú ý. Lớp tuyến tính
Machine Translated by Google
L
yi = Aijv(xj ) (5,76)
j=1 WO
L
= (5,77)
Aij f(xj )
j=1
Trong [143], Kobayashi và cộng sự. đặc biệt đề nghị sử dụng ||Aijf(xj )||
vì đó là mức độ mà tôi chú ý đến mã thông báo j. Họ cũng chứng minh rằng ||
f(xj )|| và Aij là những đại lượng có ý nghĩa và đôi khi đóng vai trò trái
ngược nhau trong việc xác định hành vi của mô hình.
Machine Translated by Google
CHƯƠNG 6
Kiến trúc máy biến áp được giới thiệu như một mô hình ngôn ngữ
đã chuyển văn bản trong một ngôn ngữ này thành văn bản ở một ngôn ngữ khác-
thước đo [254]. Kể từ ứng dụng đầu tiên đó cho dịch máy, kiến trúc máy biến áp đã
được áp dụng cho thị giác máy tính, xử lý âm thanh và xử lý video cũng như các vấn
đề khác trong NLP. Kiến trúc máy biến áp đã được chứng minh là một cách đáng tin cậy
để lấy chuỗi đầu vào và chuyển đổi nó thành một thứ khác.
Phần này mô tả một số cách mà biến áp đã được áp dụng để xử lý văn bản theo miền cụ
thể và một tiến bộ gần đây được thực hiện trong trình tự văn bản đối với xử lý trình
tự văn bản.
Máy biến áp đã được tạo ra cho các ứng dụng dành riêng cho miền bằng cách tinh chỉnh
các mô hình được đào tạo trước như BERT. Chúng ta sẽ xem xét một vài.
6.1.1.1 BioBERT
BioBERT [152] là mô hình ngôn ngữ dành riêng cho miền được xây dựng bằng cách tinh
chỉnh BERT trên một bộ sưu tập lớn văn bản y sinh. BioBERT là
được tạo ra vì ELMo và BERT không hoạt động tốt trong lĩnh vực y sinh
văn bản vì dữ liệu đào tạo của họ không bao gồm nó. BioBERT vượt trội hơn các mô hình
khai thác: nhận dạng thực thể được đặt tên (NER), trích xuất mối quan hệ và
Có ba bước để chuyển từ mô hình BERT được đào tạo trước sang mô hình
Mô hình BioBERT Điểm khởi đầu là mô hình BERT được đào tạo trước. Các
Bước tiếp theo là đào tạo trước mô hình về tóm tắt PubMed và PubMed
Bài viết toàn văn trung tâm. Cuối cùng, sau khi quá trình đào tạo trước kết thúc, BioBERT
được tinh chỉnh thêm về NER, trích xuất mối quan hệ và câu hỏi
trả lời các nhiệm vụ, sử dụng bộ dữ liệu dành riêng cho nhiệm vụ.
BioBERT sử dụng từ vựng BERT viết theo cách không thay đổi. Họ có
không làm điều này, họ sẽ không thể bắt đầu với một nhân viên được đào tạo trước
mô hình BERT. BioBERT được đào tạo trong 23 ngày, trên 8 máy NVIDIA Volta
GPU V100.
SciBERT [24] là mô hình ngôn ngữ được xây dựng để xử lý văn bản khoa học. Nó
sử dụng kiến trúc BERT, nhưng đã được đào tạo về toàn văn và tóm tắt của 1,4
Giống như BERT, SciBERT sử dụng mã thông báo WordPiece với 30.000 to-ken, nhưng nó
không sử dụng vốn từ vựng của BERT. Thay vào đó, kho từ vựng của SciBERT được xây dựng
về năm nhiệm vụ NLP: NER, trích xuất PICO, phân loại văn bản, trích xuất mối quan hệ và
phân tích cú pháp phụ thuộc. Trích xuất PICO là một chuỗi
nhiệm vụ dán nhãn áp dụng cho các bài viết về thử nghiệm lâm sàng trong đó một mô hình
trích xuất các phạm vi đề cập đến những người tham gia, các biện pháp can thiệp, so sánh,
hoặc kết quả của một thử nghiệm lâm sàng. Quá trình đào tạo mất một tuần trên 8 lõi đơn
TPU.
6.1.1.3 FinBERT
Với mô hình ULMFit [119], Howard và Ruder đã chỉ ra rằng việc điều chỉnh
một mô hình ngôn ngữ đã được đào tạo trước trên kho ngữ liệu từ miền đích
dẫn đến các số liệu phân loại được cải thiện. FinBERT [7] là kết quả của
xem liệu ý tưởng tương tự có thể được áp dụng cho BERT hay không, với giá trị bằng hoặc lớn hơn
thành công. FinBERT cố gắng thực hiện điều này theo hai cách: (1) đào tạo thêm trước về
một kho dữ liệu tài chính lớn và (2) chỉ đào tạo trước các câu từ một
tập hợp phân tích tình cảm tài chính. Để đào tạo trước, FinBERT sử dụng
Machine Translated by Google
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 157
tập hợp con của tập dữ liệu Reuters TRC2 đã được lọc để phục vụ mục đích tài chính
từ khóa. Kho văn bản thu được có hơn 29 triệu từ, trên 46.143
các tài liệu. Để phân tích tình cảm, bộ dữ liệu Financial Phrasebank là
đã sử dụng. Nó có 4845 câu từ LexisNexis.
Như đã thảo luận ở phần 5.3.2, mô hình T5 của Raffel et al. [205] đã đóng khung lại
các tác vụ NLP tiêu chuẩn dưới dạng chuyển đổi văn bản thành văn bản, trong đó
là hai tiến bộ quan trọng: một phiên bản đa ngôn ngữ có tên mT5
[281], hỗ trợ 101 ngôn ngữ và một biến thể không có mã thông báo hoạt động
trực tiếp trên byte UTF-8, ByT5 [280]. Trong phần này, chúng tôi thảo luận về ByT5.
6.1.2.1 ByT5
ByT5 [280] là mô hình cấp byte, tận dụng các chuỗi được mã hóa dưới dạng chuỗi byte
là các mô hình không có mã thông báo sẽ mạnh mẽ hơn đối với những từ vựng không có sẵn
từ, lỗi chính tả, cách viết hoa và những thay đổi về hình thái. Không có token
mô hình sẽ không sử dụng từ vựng cố định để ánh xạ bài kiểm tra tới mã thông báo. Một
mô hình cấp byte sẽ chỉ cần 256 vectơ nhúng thay vì số lượng lớn
số lượng cần thiết khi sử dụng một từ vựng cố định. Sự sụt giảm lớn về
kích thước từ vựng đi kèm với việc sử dụng byte có nghĩa là có thể có nhiều tham số hơn
được sử dụng ở nơi khác trong mô hình.
Do các chuỗi byte dài hơn các chuỗi mã thông báo và độ phức tạp tính toán của
phép chuyển đổi là bậc hai về độ dài chuỗi (ngoại trừ sự chú ý được tuyến tính hóa),
công việc trước đó đã cố gắng giảm thiểu độ phức tạp ngày càng tăng đi kèm với việc
trình tự. ByT5 bắt đầu với kiến trúc mT5, nhưng khác với mT5
theo một số cách. Thứ nhất, không có mã thông báo SentencePiece. Các byte UTF-8 thô
được sử dụng làm đầu vào và các phần nhúng được học cho mỗi
256 byte. Ngoài ra, có ba mã thông báo đặc biệt được thêm vào từ vựng: mã thông báo
đệm, mã thông báo EOS và mã thông báo không xác định. Các
nhiệm vụ đào tạo trước được thay đổi sao cho độ dài của phần bị che của
nhịp đầu vào dài hơn in trong T5. trong T5, bộ mã hóa và giải mã
Cuối cùng, các byte UTF-8 bất hợp pháp sẽ bị xóa khỏi đầu ra.
Machine Translated by Google
Như đã thảo luận ở trên, tính mạnh mẽ là một trong những lợi ích được giả thuyết
khi làm việc với byte thay vì mã thông báo. Để kiểm tra tính khả thi của giả
thuyết, các tác giả đã thêm sáu loại nhiễu vào dữ liệu và xem nó ảnh hưởng đến hiệu
1. Thực hiện xóa bằng cách cho mỗi nhân vật có 10% cơ hội xuất hiện
đã xóa.
2. Cho mỗi nhân vật 10% cơ hội được thêm, xóa hoặc biến đổi
3. Cho mỗi nhân vật 20% cơ hội được nhân đôi 1-3 lần.
5. Viết hoa mỗi ký tự khi ngôn ngữ sử dụng chữ hoa chữ thường.
6. Đặt ngẫu nhiên kiểu chữ của từng ký tự khi sử dụng ngôn ngữ
trường hợp.
Nhiễu được đưa vào theo một trong hai cách: vào dữ liệu tinh chỉnh và đánh giá
hoặc chỉ vào dữ liệu đánh giá. Đối với bài tập trả lời câu hỏi, tiếng ồn được thêm
vào ngữ cảnh nhưng không được thêm vào câu hỏi hoặc câu trả lời. Đối với nhiệm vụ
huấn luyện đòi hỏi câu, tiếng ồn được thêm vào tiền đề và giả thuyết. Đối với cả
hai loại tiếng ồn, bài báo cho thấy ByT5 thực sự có khả năng chống ồn tốt hơn mT5.
Một trong những thành công nổi tiếng nhất của các mô hình ngôn ngữ dựa trên máy biến
áp là việc tạo văn bản với các mô hình ngôn ngữ GPT-2 và GPT-3, được xây dựng từ
Nhóm các mô hình đào tạo trước tổng quát là một phần của xu hướng mô hình hóa ngôn
ngữ trong đó mô hình lần đầu tiên được đào tạo trên dữ liệu không được giám sát,
theo kiểu bất khả tri về nhiệm vụ và sau đó được tinh chỉnh cho một nhiệm vụ cụ thể.
Mô hình đầu tiên trong họ này, cùng tên GPT [202], trước tiên huấn luyện trước một
chồng các lớp bộ giải mã máy biến áp trên một lượng lớn văn bản không được gắn nhãn
và sau đó được tinh chỉnh trên dữ liệu dành riêng cho nhiệm vụ được gắn nhãn. GPT
là một mô hình tự hồi quy, có nghĩa là nó sử dụng dữ liệu đầu vào từ các bước trước
của trình tự để dự đoán các giá trị sau trong trình tự. GPT được đánh giá dựa trên bốn loại
Machine Translated by Google
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 159
Nhiệm vụ hiểu ngôn ngữ tự nhiên: suy luận ngôn ngữ tự nhiên, trả lời câu
hỏi, tương tự ngữ nghĩa và phân loại văn bản.
Đào tạo trước không được giám sát Trong giai đoạn này, GPT bắt đầu với một tập hợp mã
thông báo và di chuyển qua đó, học cách dự đoán mã thông báo tiếp theo, dựa trên một
số ngữ cảnh trước đó. Chính thức hơn, với một kho văn bản không được gắn nhãn U =
(w1, . . . , wn), mô hình học xác suất có điều kiện của việc đoán trước mã thông báo
wt với k mã thông báo trước đó , P(wt |wt 1, . . . , wt k), bằng cách giảm thiểu khả
trong đó Θ đại diện cho các tham số mô hình. Tối ưu hóa là giảm độ dốc ngẫu nhiên.
Tinh chỉnh có giám sát Trong giai đoạn này, mô hình được tinh chỉnh trên kho văn bản
có nhãn, dành riêng cho nhiệm vụ, C, trong đó mỗi điểm dữ liệu là một chuỗi mã thông
báo x = (x1, . . . , xm) và nhãn lớp y . Mô hình bộ giải mã được đào tạo trước được sử
dụng làm bộ tạo đặc trưng cho dữ liệu được gắn nhãn và lớp tuyến tính được kết nối đầy
đủ, với kích hoạt softmax và ma trận trọng số W, được thêm vào nó và được đào tạo bằng
Radford và cộng sự. nhận thấy rằng mô hình hội tụ nhanh hơn và tổng quát hóa tốt
hơn khi mục tiêu mô hình hóa ngôn ngữ từ giai đoạn không giám sát, (6.1), được thêm vào
Định dạng dữ liệu để tinh chỉnh Dữ liệu cho từng nhiệm vụ trong bốn nhiệm vụ đào
• Dữ liệu phân loại văn bản có định dạng đơn giản; mỗi phiên bản được đặt trong
dấu ngoặc với mã thông báo bắt đầu và kết thúc, do đó đầu vào được định dạng như
• Một thể hiện suy luận ngôn ngữ tự nhiên (NLI) có hai phần, tiền đề p và giả
thuyết h. Các nhãn có thể mang tính kế thừa, mâu thuẫn hoặc trung tính. Đầu vào
được định dạng như [s, p, $, h,/s], trong đó $ là mã thông báo phân cách.
Machine Translated by Google
• Một thể hiện tương tự văn bản có hai chuỗi văn bản, có thể ở dạng
bất cứ yêu cầu; vì vậy cả hai đơn hàng đều được bao gồm. Đầu vào được định dạng như
một trường hợp kế thừa.
• Đối với việc trả lời câu hỏi và lý luận thông thường, các câu hỏi trắc nghiệm
AKA, mỗi trường hợp là một chuỗi ngữ cảnh, một câu hỏi và
một tập hợp k câu trả lời có thể có, {ak}. Từ một trường hợp như vậy, mô hình k
đầu vào được xây dựng bằng cách nối ngữ cảnh, câu hỏi,
mã thông báo dấu phân cách $ và một trong những câu trả lời có thể có. Mỗi cái được sử dụng
Đào tạo mô hình Mô hình này là một tập hợp gồm 12 lớp giải mã máy biến áp, với 12
các lớp chuyển tiếp sử dụng df f = 3072. Đã học cách nhúng vị trí,
thay vì các phần nhúng cố định được sử dụng trong Máy biến áp tiêu chuẩn.
Dữ liệu đào tạo trước Quá trình đào tạo trước mô hình ngôn ngữ có trên bộ dữ liệu
điểm chuẩn [257]. Năm bộ dữ liệu NLI đã được sử dụng: SNLI, MNLI, QNLI, Sc-iTail và
Đánh giá dựa trên tập dữ liệu Story Cloze Test [190]. Sự giống nhau về mặt ngữ nghĩa
có trong kho dữ liệu Diễn giải của Microsoft (MRPC) [75], Quora
Bộ dữ liệu Cặp câu hỏi (QQP) [43] và Độ tương tự văn bản ngữ nghĩa
điểm chuẩn (STS-B) [38]. Phân loại văn bản được đánh giá trên The Cor-pus of
6.1.3.2 GPT-2
Nếu mô hình GPT đầu tiên thể hiện được sức mạnh của khả năng sáng tạo
đào tạo trước thì GPT-2 [203] cho thấy một mô hình ngôn ngữ có thể học
các nhiệm vụ NLP cụ thể mà không được đào tạo rõ ràng về các nhiệm vụ đó.
Đây là loại ứng dụng zero-shot tương tự của mô hình được thảo luận trong
Chương 3 và 4.
Kiến trúc mô hình Tương tự như GPT, GPT-2 sử dụng một dãy máy biến áp
các khối giải mã. Bộ giải mã được sửa đổi một chút. Trong tiêu chuẩn
máy biến áp, mô-đun định mức lớp xuất hiện sau sự chú ý của nhiều đầu
Machine Translated by Google
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 161
và sau mạng chuyển tiếp theo vị trí, như một phần của kết nối dư. Thay vào đó, trong
GPT-2, mô-đun định mức lớp xuất hiện trước sự chú ý của nhiều đầu và trước quá trình
tiếp liệu theo vị trí. Kết nối còn lại bây giờ chỉ bao gồm phần bổ sung, thay vì phần
bổ sung và định mức lớp. Một mô-đun định mức lớp bổ sung được đặt trong khối giải mã
cuối cùng, sau sự chú ý của nhiều đầu. Trọng số của các lớp dư được khởi tạo khác
với trong mô hình GPT. Trọng số của lớp dư được chia cho 1/ √ N, trong đó N là số lớp
GPT-2 sử dụng mã thông báo mã hóa cặp byte (BPE) [92] để bất kỳ chuỗi UTF-8 nào
cũng có thể được biểu diễn bằng từ vựng chỉ 256 byte. Việc tính toán với các byte
UTF-8 thô chưa được thực hiện ở đây vì các mô hình ngôn ngữ cấp byte không hoạt động
Bốn biến thể với kiến trúc được mô tả đã được huấn luyện. Các
mẫu lớn nhất trong số bốn mẫu này là mẫu có tên "GPT-2". Nó có 1,542 tỷ tham số và sử
dụng 48 lớp giải mã máy biến áp. Mỗi cái được đánh giá trên một số bộ dữ liệu mô hình
GPT-2 đã đạt được tính năng tiên tiến nhất trên bảy trong số tám bộ dữ liệu.
6.1.3.3 GPT-3
GPT-3 [32] là một phần của xu hướng trong các mô hình ngôn ngữ biến đổi trong đó việc
tăng số lượng tham số dẫn đến tăng khả năng của mô hình ngôn ngữ trong việc thực hiện
các tác vụ xuôi dòng mà không cần đào tạo cụ thể về nhiệm vụ.
Kiến trúc mô hình GPT-3 sử dụng kiến trúc mô hình giống như GPT-2, với một ngoại lệ:
các cơ chế chú ý trong các lớp biến áp xen kẽ giữa các mẫu thưa thớt dải tần dày đặc
và cục bộ. Mẫu dải thưa thớt đã được sử dụng trong Máy biến áp thưa thớt [50] bằng
cách chỉ tính toán sự chú ý giữa một số cặp khóa truy vấn được lựa chọn thưa thớt.
Để nghiên cứu ảnh hưởng của việc đếm tham số trong việc học theo ngữ cảnh, Brown
và cộng sự. đã đào tạo tám mô hình có kích cỡ khác nhau. Mô hình nhỏ nhất, “GPT-3
Small” có 125 triệu tham số, 12 lớp giải mã Transformer, kích thước mô hình là 768,
12 đầu chú ý, mỗi đầu chú ý có kích thước 64 ( dk = dv = 64), mã thông báo được xử lý
theo lô 500.000 ,
1Lưu ý rằng điều này đã thay đổi vào năm 2021 với sự ra đời của mô hình ngôn
ngữ ByT5 [280].
Machine Translated by Google
và sử dụng tỷ lệ học tập 6e-4. Model lớn nhất, “GPT-3 175B” hay chỉ
“GPT-3”, có 175 tỷ tham số, 96 lớp giải mã Transformer, kích thước mô hình
12288, 96 đầu chú ý, kích thước đầu 128 (dk = dv = 128), đã được xử lý mã
thông báo theo lô 3,2 triệu và sử dụng tỷ lệ học tập 0,6e-4. GPT-3 có số
lượng thông số gấp hơn 1000 lần so với GPT-3 nhỏ. Tất cả các mô hình đều
được đào tạo trên 300 tỷ mã thông báo và sử dụng cửa sổ ngữ cảnh gồm 2048
mã thông báo. Lưu ý rằng mạng chuyển tiếp theo vị trí có df f = 4dmodel.
Các mô hình lớn hơn sử dụng kích thước lô lớn hơn sử dụng tốc độ học tập
nhỏ hơn.
Hiệu suất Một số kích thước của mô hình GPT-3 đã được đánh giá cho khả
năng học không, một lần và ít lần bắn, Brown và cộng sự. mô tả các loại
hình học tập trong ngữ cảnh khác nhau. Với kiểu học vài lần, GPT-3 cung
cấp cho mô hình nhiều ví dụ về nhiệm vụ mong muốn sẽ phù hợp với cửa sổ
ngữ cảnh (10–100 ví dụ). Học một lần sau đó sẽ cung cấp một ví dụ và mô
tả nhiệm vụ, trong khi phương pháp zero-shot không cung cấp ví dụ nào mà
chỉ cung cấp mô tả nhiệm vụ. Không có cập nhật độ dốc hoặc tinh chỉnh.
Mô hình được đánh giá trên 12 bộ dữ liệu NLP.
Kết quả cho thấy khi số lượng tham số mô hình tăng lên, mô hình cần
ít phần trình diễn hơn để học cách thực hiện một nhiệm vụ (và do đó đạt
được mục tiêu chính xác nhất định). Khi sử dụng vài lần chụp, hiệu suất
của mô hình sẽ tăng nhanh hơn theo kích thước mô hình, cho thấy các mô
hình lớn hơn sẽ học tập trong ngữ cảnh tốt hơn.
Đánh giá và điều hòa mô hình Đối với một vài cảnh quay, K ví dụ được rút
ngẫu nhiên từ tập huấn luyện (hoặc tập phát triển nếu không có tập huấn
luyện được gắn nhãn) để sử dụng làm điều hòa, cách nhau 1–2 dòng mới. K
thay đổi từ 0 đến kích thước của cửa sổ ngữ cảnh. Một số ví dụ chỉ có phần
mô tả nhiệm vụ được sử dụng làm điều kiện. Đối với các nhiệm vụ có nhiều
lựa chọn, K ví dụ về ngữ cảnh với lựa chọn đúng được sử dụng làm điều
kiện và một ví dụ bổ sung về ngữ cảnh chỉ là mục cần hoàn thành. Giống như
GPT-2, điểm khả năng của mô hình ngôn ngữ cho mỗi lần hoàn thành có thể
được tính điểm. Phân loại nhị phân thường được coi là một câu hỏi trắc
nghiệm, trong đó các câu trả lời có thể là những từ có ý nghĩa, như “tích
cực” hoặc “tiêu cực”. Trong một số trường hợp, tác vụ này được định dạng
giống như mô hình T5. Các nhiệm vụ điền vào chỗ trống đã được hoàn thành
bằng cách sử dụng tìm kiếm chùm tia. Xem tài liệu chuyên đề để biết ví dụ
từ mọi tập dữ liệu được sử dụng để đánh giá GPT-3.
Machine Translated by Google
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 163
Mỗi kích thước của mô hình GPT-3 cũng đã được thử nghiệm trên một số
nhiệm vụ khác bằng cách sử dụng điều kiện không, một hoặc vài lần: sắp
xếp lại các từ, so sánh SAT, số học, sử dụng các từ bất thường trong câu
sau khi nhìn thấy từ được xác định, tạo ra nội dung bài báo và sửa lỗi
ngữ pháp tiếng Anh.
Ứng dụng rõ ràng nhất của máy biến áp để xử lý hình ảnh là nhận dạng tuổi hình ảnh (phân
loại hình ảnh AKA). Trước máy biến áp, chất lượng cao nhất trong nhận dạng hình ảnh đến từ
mạng lưới thần kinh tích chập (CNN) [150]. Có một số mô hình biến áp thuần túy được áp
dụng để nhận dạng hình ảnh có khả năng cạnh tranh với các mô hình CNN tiên tiến nhất. Trong
phần này, chúng tôi tập trung vào Vision Transformer (ViT) [78], được giới thiệu để xem
các mô hình biến áp thuần túy có thể có hiệu quả như thế nào đối với thị giác máy tính.
Cho một hình ảnh có các kênh có độ phân giải H × W và C , hình ảnh có thể được biểu thị
bằng x R H×W×C. ViT bắt đầu bằng cách chia hình ảnh hai chiều thành một chuỗi N mảng
2
·C)
hình ảnh, xp R N×(P với độ phân giải P × P, trong đó N = HW/P2 . Chuỗi các mảng hình ,
ảnh giống như chuỗi mã thông báo trong tiêu chuẩn máy biến áp [254].
Trước khi gửi chuỗi bản vá qua lớp nhúng, phần nhúng có thể học được tương tự như mã
thông báo [CLS] trong BERT, xcls được thêm vào trước mỗi vectơ bản vá. Vậy xp [xcls; xp].
Sử dụng lớp nhúng, E R (P Epos R (N+1)×D, chúng tôi tính toán đầu vào cho Máy biến
2
áp. D là kích thước ẩn của ·C)×D và mã hóa vị trí một chiều,
(1) (N)
z0 = [xcls; x P E; · · · ; xp _ E] + Sử thi (6.3)
0
trong đó l = 1, . . . , L và z L là phần nhúng phân loại cho lớp mã hóa cuối
cùng. Ngoài ra, lớp chuyển tiếp nguồn cấp dữ liệu có hai lớp được kết nối đầy đủ,
theo sau là chức năng kích hoạt GELU. Một trong những điểm khác biệt của ViT so với
máy biến áp tiêu chuẩn là trong ViT, hoạt động LayerNorm được áp dụng cho đầu ra
của lớp trước đó trước khi kết nối dư diễn ra. Trong máy biến áp tiêu chuẩn [254],
Thông qua một loạt thử nghiệm với ViT, [78] chứng minh rằng các sai lệch quy
nạp do CNN đưa ra rất hữu ích cho các tập dữ liệu nhỏ, nhưng không hữu ích cho các
tập dữ liệu lớn hơn. Với các tập dữ liệu lớn hơn, mô hình có thể tự tìm hiểu các
mối tương quan có liên quan, như đã được hiển thị cho các Máy biến áp khác nhau.
ViT cũng cho thấy mối quan hệ không gian giữa các mảng (khoảng cách bên trong hình
ảnh) được học bằng mã hóa vị trí. Các bản vá gần nhau sẽ có mã hóa vị trí tương tự
nhau. Các mối tương quan không gian hai chiều cũng được học bằng mã hóa vị trí, tức
là các mảng trong cùng một hàng hoặc cột có mã hóa vị trí tương tự. Các thí nghiệm
cũng chứng minh rằng việc mã hóa cứng cấu trúc hai chiều của các mảng hình ảnh
thành mã hóa vị trí không cải thiện được chất lượng. Điều này có thể là do việc
xây dựng các thành kiến quy nạp vào một mô hình linh hoạt như máy biến áp sẽ ngăn
cản nó tự học được điều gì là quan trọng hoặc không quan trọng.
Cuối cùng, Vision Transformer điều tra việc sửa đổi cơ chế tự chú ý, sự chú ý
hướng trục [126, 114]. Chú ý theo trục, trong đó sự chú ý nằm giữa các mảng trong
cùng một hàng hoặc cùng một cột. ViT thực sự tạo ra các khối biến áp hướng trục,
Nhận dạng giọng nói tự động (ASR), là khi hệ thống tự động chuyển đổi tín hiệu âm
thanh lời nói thành văn bản, đưa ra một thách thức duy nhất không có trong các tác
vụ thị giác máy tính và NLP. Tín hiệu giọng nói là chuỗi các giá trị liên tục chứ
không phải các giá trị rời rạc như những giá trị được thấy trong hình ảnh hoặc văn
bản. Điều này có nghĩa là bạn không thể thực hiện đào tạo trước giống như cách bạn
làm về thị giác máy tính hoặc NLP. Ví dụ: trong NLP, bạn có các từ hoặc đơn vị từ
phụ riêng biệt, được xác định trong chính tín hiệu đầu vào.
Tương tự, trong thị giác máy tính, bạn có các đơn vị con hình ảnh trong tín hiệu
đầu vào, pixel. Không có đơn vị con tích hợp trong tín hiệu giọng nói. Điều này làm
cho việc tập luyện trước trở nên khó khăn, dù có bị che giấu hay không. Phần này
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 165
Bước đầu tiên trong wav2vec 2.0 [16] sử dụng bộ mã hóa tính năng tích chập
(đó là CNN) để chuyển đổi âm thanh lời nói đầu vào, X, thành một chuỗi
Có thể học được các mã hóa vì lời nói được phân tách thành các đơn vị giọng
nói riêng biệt giống như mã thông báo WordPiece được sử dụng làm
đầu vào vào một văn bản Transformer. Các đơn vị giọng nói là một tập hợp hữu hạn
các đơn vị rời rạc của chuỗi âm thanh và ngắn hơn các âm vị (chúng là
dài 25 mili giây). Mã hóa giọng nói tiềm ẩn tương tự như cách nhúng được học trong
lớp nhúng ban đầu trong trình biến đổi văn bản.
Các mã hóa được che giấu này được chuyển vào một máy biến áp để xây dựng các biểu
diễn được văn bản hóa theo ngữ cảnh. Hàm mất tương phản [219, 250] cho phép
máy biến áp wav2vec 2.0 tìm hiểu tầm quan trọng tương đối của bài phát biểu
các đơn vị.
Lưu ý rằng các đơn vị giọng nói riêng biệt cũng cho phép đào tạo đa ngôn ngữ,
trong đó mô hình tìm hiểu đơn vị nào chỉ được sử dụng cho một ngôn ngữ cụ thể.
ngôn ngữ và đơn vị nào được sử dụng trên nhiều ngôn ngữ.
Quá trình đào tạo Như chúng ta đã thấy trong suốt cuốn sách này, những người
chuyển hóa có thể sử dụng đào tạo trước trên một kho ngữ liệu lớn để học nhiều loại
các đặc điểm của ngôn ngữ tự nhiên, sau đó tinh chỉnh cho một tập hợp nhất định
nhiệm vụ. Đây là những gì xảy ra với wav2vec 2.0, ngoại trừ việc nó kết hợp quá
trình đào tạo trước không được giám sát và tự giám sát, chỉ cần một lượng tương đối nhỏ
6.3.2 Speech2Text2
Speech2Text2 [258] là một ứng dụng mạnh mẽ khác của công nghệ không giám sát
huấn luyện trước máy biến áp sang ASR, trong đó khối giải mã được thêm vào
phía trên bộ mã hóa wav2vec 2.0. Sau khi đào tạo trước, mô hình được tinh chỉnh
với tổn thất CTC. Bộ giải mã chỉ được huấn luyện trong quá trình tinh chỉnh, nó
Vì Speech2Text2 sử dụng bộ giải mã nên nó cũng có thể được sử dụng để kết hợp
và phiên âm có thể bằng tiếng Pháp. Vương và cộng sự. cũng đã tinh chỉnh Speech2Text
cho nhiệm vụ này, đạt được công nghệ tiên tiến mới về
Để giải quyết vấn đề không có đơn vị lời nói được xác định trước, Hsu et al. giới thiệu
tạo ra các đơn vị tiếng nói ồn ào mà sau đó có thể được xử lý như các từ phụ
có thể trải qua quá trình đào tạo trước giống như BERT.
HuBERT sử dụng các nhãn nhiễu như một chuỗi các mã thông báo đầu vào có thể
được đeo mặt nạ để đào tạo trước BERT. Vì vậy, giống như BERT học cách biểu diễn văn bản bị
che giấu để có thể dự đoán chính xác nội dung bị che giấu.
mã thông báo, HuBERT tìm hiểu các cách thể hiện của bài phát biểu ồn ào, không bị che giấu
các đơn vị con để nó có thể dự đoán chính xác các đơn vị giọng nói bị che giấu.
Trong HuBERT, tín hiệu giọng nói thô được đưa qua bộ mã hóa CNN để
tạo ra tín hiệu giọng nói được mã hóa X = [x1, . . . , xT ] có chiều dài T, nhiều
giống như trong wav2vec 2.0. Tập hợp các chỉ số trong tín hiệu giọng nói được mã hóa X là
rồi bịt mặt. Trình tự bị che này được sử dụng làm đầu vào cho máy biến áp giống BERT. HuBERT
cũng thực hiện việc tạo mặt nạ theo cách tương tự như
wav2vec 2.0.
HuBERT sử dụng k-mean trên các tính năng MFCC [279] của lời nói thô
tín hiệu để tìm các đơn vị ẩn rời rạc không cần thiết [290]. Nó gọi những thứ này
[z1, . . . , zT ], trong đó zt [C] là biến phân loại của lớp C. Những cái này
zt được sử dụng làm “mã thông báo” đầu ra mà quá trình đào tạo trước BERT cần
dự đoán chính xác. Hsu và cộng sự. cũng thử nghiệm việc sử dụng một nhóm
của các mô hình phân cụm thay cho một phương tiện k duy nhất, theo sau là sản phẩm
Sau khi đào tạo trước, HuBERT sử dụng phương pháp mất phân loại theo thời gian (CTC) kết
nối tiêu chuẩn để tinh chỉnh mô hình bằng cách sử dụng âm thanh được gắn nhãn
dữ liệu. Lưu ý rằng bộ mã hóa tính năng CNN bị treo trong quá trình tinh chỉnh.
Sau khi tỏ ra rất hiệu quả trong nhiều nhiệm vụ NLP, Transformer
đã cho thấy tính hiệu quả của chúng ngay cả trong các nhiệm vụ kết hợp liên quan đến nhiều
các phương thức như hình ảnh, văn bản và video. Đặc biệt xung quanh các nhiệm vụ kết hợp
hình ảnh và văn bản, nhiều kiến trúc máy biến áp đã được đề xuất
mở rộng mô hình BERT cơ sở để kết hợp đầu vào trực quan cùng với
đầu vào ngôn ngữ [173, 123]. Trong phần này chúng ta sẽ đề cập đến một số
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 167
BERT Tầm nhìn và Ngôn ngữ (VilBERT) là một mô hình chung cho việc học tập
các biểu diễn bất khả tri về nhiệm vụ cho hình ảnh và văn bản [173]. Hình ảnh đầu tiên
được chuyển đổi thành một luồng gồm một chuỗi các vùng được ánh xạ tới các vectơ đặc
trưng bằng cách sử dụng mạng phát hiện đối tượng. Văn bản vẫn diễn ra bình thường
luồng mã thông báo được ánh xạ tới các phần nhúng từ và vị trí dưới dạng luồng
của các trình tự. Như được hiển thị trong Hình 6.1, VilBERT sử dụng khối chuyển đổi
khối biến áp tiêu chuẩn để biểu diễn hình ảnh và ngôn ngữ tại
bất kỳ lớp trung gian nào. Tuy nhiên, các khóa và giá trị từ mỗi phương thức được
cung cấp làm đầu vào cho khối chú ý nhiều đầu của phương thức khác. Do đó, khối chú
các tính năng tập trung sự chú ý cho từng phương thức được điều chỉnh dựa trên phương thức khác và
tạo điều kiện cho việc học tập chung. Kiến trúc cho phép nhiều lớp TRM
và Co-TRM để sàng lọc và phụ thuộc vào nhiệm vụ. Đầu ra phụ thuộc vào nhiệm vụ và có
thể đơn giản như một perceptron nhiều lớp (MLP) được theo sau bởi lớp soft-max để
hình ảnh và văn bản. Có thể có nhiều đầu ra tương ứng với
Việc đào tạo VilBERT diễn ra qua nhiều giai đoạn khác nhau tương tự như
đào tạo mạng khởi đầu. Đầu tiên, văn bản và hình ảnh được huấn luyện độc lập. Mô
hình BERT được huấn luyện từ đầu đến cuối trên một kho dữ liệu lớn cho
hai nhiệm vụ: mô hình ngôn ngữ đeo mặt nạ (MLM) và dự đoán câu tiếp theo (NSP). Phát
hiện đối tượng được đào tạo trước dựa trên R-CNN nhanh hơn
mạng trích xuất các hộp giới hạn và các đặc điểm trực quan của chúng từ hình ảnh
và xử lý chúng thông qua mạng. Tiếp theo, chú thích khái niệm
Hình 6.1 ViLBERT xử lý văn bản và hình ảnh để học cách biểu diễn chung cho các tác
vụ đa phương thức.
Machine Translated by Google
tập dữ liệu bao gồm nhiều ví dụ về hình ảnh và chú thích của chúng
được sử dụng cho các nhiệm vụ học tập chung như ánh xạ các vùng trong hình ảnh tới
được đào tạo để giải quyết các nhiệm vụ cụ thể liên quan đến các phương thức trực
quan và văn bản như Trả lời câu hỏi bằng hình ảnh (VQA), Visual Commonsense
Lý luận (VCR), Truy xuất hình ảnh và Nối đất pha. Nghiên cứu
cho thấy VilBERT đạt được kết quả tiên tiến trong cả bốn nhiệm vụ so với các mô hình
Trong tác phẩm của họ Máy biến áp là tất cả những gì bạn cần: Học đa nhiệm đa phương
thức với Máy biến áp hợp nhất [123], Hu và Singh đề xuất một Máy biến áp hợp nhất
Máy biến áp (UniT) có thể cùng học và thực hiện bảy nhiệm vụ trên
phương thức của văn bản và hình ảnh.
Như được hiển thị trong Hình 6.2, đối với mỗi phương thức, có một mạng bộ mã hóa,
và đầu ra của mạng bộ mã hóa được nối để tạo thành một khớp nối
mạng có khối chú ý chéo nhiều đầu để nhúng đầu vào dành riêng cho nhiệm vụ, xuất
kết quả cho từng đầu dành riêng cho nhiệm vụ, chẳng hạn như
như phát hiện lớp đối tượng, trả lời câu hỏi trực quan, phân loại tình cảm,
vân vân.
Hình 6.2 Đơn vị xử lý văn bản và hình ảnh để học cách biểu diễn chung cho các tác
vụ đa phương thức.
Machine Translated by Google
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 169
Để đào tạo các nhiệm vụ chỉ dành cho thị giác và ngôn ngữ hình ảnh, độ tuổi hình ảnh
trước tiên được xử lý bởi khối mạng thần kinh tích chập, sau đó là
bởi một bộ mã hóa biến áp để có được các biểu diễn trực quan ẩn. TRONG
Ngoài ra, do các nhiệm vụ liên quan đến hình ảnh khác nhau như phát hiện đối tượng và VQA
có thể yêu cầu thông tin dành riêng cho nhiệm vụ, vectơ nhúng nhiệm vụ sẽ được thêm vào
sử dụng BERT được đào tạo trước với các phần nhúng văn bản và vectơ nhúng dành riêng cho
nhiệm vụ tương tự như bộ mã hóa hình ảnh. Bộ giải mã là miền bất khả tri lấy các đầu vào
khối chú ý chéo nhiều đầu và các truy vấn dành riêng cho nhiệm vụ chảy vào
sự chú ý nhiều đầu vào của máy biến áp giải mã. Đào tạo
xảy ra trên nhiều nhiệm vụ cùng nhau, trong đó một nhiệm vụ ngẫu nhiên và một tập dữ liệu
điền vào một loạt mẫu được chọn ở mỗi lần lặp đào tạo. mô hình đơn vị
cho thấy hiệu suất mạnh mẽ và có thể so sánh được trên bảy nhiệm vụ trong tám
các bộ dữ liệu cho công việc trước đó đã được thiết lập tốt trên mỗi miền, giữ nguyên
Phần này sẽ thảo luận về một ứng dụng như vậy, phân loại video/nhận dạng hành động.
TimeSformer [29] là câu trả lời cho câu hỏi liệu có thể thực hiện phân loại video
hiệu suất hoặc nhận dạng hành động bằng tính năng tự chú ý thay vì kết hợp hay không.
TimeSformer sử dụng cơ chế chú ý đã được sửa đổi và sử dụng phương pháp phá vỡ của Vision
Transformer
một hình ảnh thành một chuỗi các bản vá làm điểm bắt đầu.
TimeSformer chia một video clip thành một chuỗi các mảng hình ảnh tương tự
về cách Biến đổi Tầm nhìn trong phần 6.2.1 phá vỡ cấu trúc hai chiều
hình ảnh thành một chuỗi các bản vá hình ảnh. Đầu vào của mô hình là một video
với khung F RGB ở độ phân giải H × W. Nó có thể được biểu diễn bằng một
ma trận bốn chiều X R Cao×W×3×F H×W×3
. Mỗi khung hình (R ) bên trong
đầu vào sau đó được phân tách thành N bản vá không chồng chéo có kích thước P × P,
3P 2
trong đó N = HW/P2 . Mỗi miếng vá được chuyển thành một vectơ x(p,t) R ,
Bước tiếp theo là tạo ra một vectơ nhúng, z (p,t) (0) R D, với
(0) tư thế
z
(p,t) = x(p,t)E + e (p,t) , (6.7)
tư thế D
trong đó e R là mã hóa vị trí bao gồm vị trí không gian và chỉ
(p,t)
mục khung, E là lớp nhúng đã học và D là kích thước ẩn (tương tự như dmodel
trong máy biến áp tiêu chuẩn). Lưu ý rằng chỉ số trên (0) trong z biểu thị
(0)
rằng đây là lớp cũ TimeS- (p,t) đầu tiên , có chỉ số 0. Giống như trong
Vision Transformer, (0)
TimeSformer bổ sung thêm phần nhúng đã học vào z tương ứng (p,t)
(0) đến mã thông báo phân loại đặc biệt của BERT, z
(0,0).
6.5.2 Tự chú ý
Trong TimeSformer, cơ chế tự chú ý gần như giống hệt với mọi máy biến áp
khác. Trong hầu hết các máy biến áp, đầu vào của sự chú ý nhiều đầu là ma
trận truy vấn, khóa và giá trị. Tương tự như 5.24, mỗi cái là kết quả của
việc chuyển đổi phần nhúng đầu vào thành một không gian vectơ khác nhau.
Mỗi không gian vectơ được tham số hóa lần lượt bằng các ma trận WQ, WK và
WQ . Ma trận W được sử dụng để xoay các phần nhúng đầu vào vào không gian
truy vấn, khóa và giá trị. Do đó, các vectơ truy vấn, khóa và giá trị cho
một bản vá trong lớp TimeSformer l là
(l,h) (l 1)
= LayerNorm z (p,t) W(l,h) R D/H
q
(p,t) Q (6.8)
(l,h) (l 1) W(l,h) R D/H
k
(p,t)
= LayerNorm z (p,t) K (6.9)
(l,h) (l 1)
v = LayerNorm z (p,t) W(l,h)
V. R D/H
(6.10)
(p,t)
Lưu ý rằng đầu ra của lớp trước được thực hiện thông qua thao tác LayerNorm
trước khi tính toán truy vấn, khóa và giá trị; điều này giống như trong
Vision Transformer, như được trình bày trong phần 6.6.
Machine Translated by Google
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 171
TimeSformer sử dụng chú ý tích số chấm theo tỷ lệ, như được thấy trong phần 5.23.
Sử dụng các vectơ truy vấn, khóa và giá trị được xác định ở trên, chúng ta có thể tính toán
T
(l,h) (l,h) (l,h)
Một
= softmax q · k (p,t) (p ,t) (6.11)
(p,t),(p ,t)
T
(l,h) (l,h) ·
exp q k
(p,t) (p ,t)
=
T
(6.12)
(l,h) (l,h) · k
(u,r)
(u,r) S(p,t) exp q (p,t)
trong đó S(p,t) là tập hợp các bản vá mà bản vá (p, t) có thể xử lý. Lưu ý rằng có chứa phân
(l) vì
z (p,t)loại nhúng tại (0, 0), truy vấn, khóa và giá trị bao gồm thuật ngữ mã thông
Các trọng số NF + 1 cho bản vá (p, t) có thể được nhóm thành một
vectơ
T T
(l,h) (l,h) (l,h) = softmax q · ka (p,t)
(p,t) (0,0)
(l,h) ; k (p,t)
(6.13)
Bằng cách nhìn vào vị trí tương đối của miếng vá (p, t) và miếng vá (p , t ), người ta thấy
rằng có hai loại chú ý trong phần 6.12. Trường hợp (p, t) chỉ được phép tham gia vào các
mảng trong cùng một khung, tức là t = t, là sự chú ý về không gian. Điều này làm giảm số
lượng tích chấm cần tính từ NF +1 xuống N +1. Trường hợp (p, t) chỉ được phép tham gia vào
các miếng vá ở các khung khác nhau nhưng ở cùng một vị trí (p = p) , thì chúng ta có sự chú
ý tạm thời. Điều này làm giảm số lượng tích số chấm cần được tính từ NF + 1 xuống F + 1. Cả
hai cách đơn giản hóa ở trên đều giống như một mặt nạ chú ý và sẽ cần được thêm vào S(p,t)
khi tính hệ số chuẩn hóa của hoạt động softmax. Phần còn lại của quá trình tính toán tự chú
Bài báo [29] xem xét bốn cách hạn chế S(p,t) : chỉ chú ý không gian, chú ý không-thời gian
bị phân chia, chú ý cục bộ và toàn cầu thưa thớt, và chú ý hướng trục.
Sự chú ý không-thời gian bị phân chia có cơ chế chú ý không gian và thời gian riêng
(l)
Việc nhúng đầu ra của chú ý thời gian nhiều đầu, z là (p,t) , được tính toán
sauvà
đó đưa vào khối chú ý không gian nhiều đầu làm đầu vào. Trong sơ đồ này, các khối
thời gian và không gian đều có các không gian truy vấn, khóa và giá trị riêng.
Bởi vì các khối theo thứ tự nên có F + 1 + N + 1 = N + F + 2 so sánh khóa truy
vấn trên mỗi bản vá (p, t). Lưu ý rằng thứ tự của các khối chú ý đã được tìm thấy
thông qua các thử nghiệm. Sự chú ý thưa thớt của địa phương và toàn cầu là sự kết
hợp của sự chú ý không-thời gian cục bộ, trong đó địa phương được xác định là các
mảng F ×H/2×W/2 lân cận và sự chú ý toàn cầu với bước tiến bằng 2 theo chiều thời
gian và không gian. Như đã định nghĩa, sự chú ý cục bộ và toàn cầu thưa thớt là
một sự gần đúng ở mức độ thô đối với sự chú ý đầy đủ về không gian và thời gian.
Cuối cùng, sự chú ý theo trục tương tự như trong Vision Transformer, trong đó có
sự chú ý về không gian giữa các mảng trong một khung nằm trong cùng một hàng hoặc
cột; cũng có sự chú ý tạm thời giữa các miếng vá ở cùng một vị trí trong các
khung hình khác nhau.
Khi độ phân giải không gian tăng lên và video dài hơn, sự chú ý không-thời
gian được phân chia sẽ có tỷ lệ tốt hơn so với sự chú ý không-thời gian chung vì
các thành phần không gian và thời gian được tách biệt trong trường hợp bị chia.
Lưu ý rằng, đối với một bản vá, sự chú ý về không gian và thời gian đều tuyến
tính. Không gian là O(N) và thời gian là O(F), do đó tỷ lệ được chia là O(N + F).
Sự chú ý chung là O(N · F).
Bài viết nhận thấy rằng trong nhiều trường hợp, sự chú ý về không gian còn
quan trọng hơn sự chú ý về thời gian. Tuy nhiên, có những trường hợp sự chú ý
tạm thời là rất quan trọng. Một phát hiện khác là sự chú ý không-thời gian được
phân chia có thể học nhiều hơn sự chú ý không-thời gian chung, đầy đủ vì trường
hợp chia coi chúng như hai cơ chế chú ý riêng biệt và do đó nó có tham số gấp đôi
và về nguyên tắc có thể học nhiều hơn. . Vì lý do này, phương pháp chú ý được đề
xuất là phân chia sự chú ý theo không gian và thời gian.
Máy biến áp có thể được áp dụng cho bộ dữ liệu đồ thị không? Khi một máy biến áp
sử dụng cơ chế chú ý đầy đủ, nghĩa là nó không có độ thưa được mã hóa cứng, nó
sẽ xử lý chuỗi đầu vào dưới dạng biểu đồ được kết nối đầy đủ. Điều này đúng với
văn bản, hình ảnh, video, v.v. Chúng tôi đã thấy điều này đối với dữ liệu văn bản
với Big Bird trong phần 5.2.2.4, đối với hình ảnh với Vision Transformer trong
phần 6.2.1 và với video cho TimeSformer trong phần 6.5. Sự chú ý được kết nối đầy
đủ cho phép mô hình tìm hiểu tầm quan trọng tương đối của từng kết nối. Tuy
nhiên, đối với các tập dữ liệu đồ thị, bất kỳ nút nào cũng có thể có nhiều liên kết sử dụng
Machine Translated by Google
Máy biến áp được đào tạo trước và dành riêng cho ứng dụng 173
sự chú ý được kết nối đầy đủ sẽ khó tính toán, vì sự chú ý hoàn toàn
đã có độ phức tạp bậc hai đối với các chuỗi đơn giản.
Đây là mục đích của Graph Transformer được giới thiệu trong [80]. Nó giải quyết
sự phức tạp của việc tự chú ý bằng cách cho phép một nút tham dự các nút khác
trong vùng lân cận cục bộ của nó.
Như đã thảo luận trong phần 5.2.1, cơ chế chú ý tích số chấm tỷ lệ có độ phức
tạp bậc hai cả về thời gian và bộ nhớ. Vì đồ thị có thể có số lượng nút rất
lớn, nên để biến đổi đồ thị khả thi về mặt tính toán, cần phải có sự chú ý
thưa thớt cục bộ đối với bất kỳ nút nào. Vấn đề với điều này là các biểu đồ
chung không có khái niệm về khoảng cách giữa các nút, khiến việc sử dụng mã
hóa vị trí để cung cấp thước đo khoảng cách hoặc vị trí là không tầm thường,
như thường thấy trong Transformers. Như được mô tả trong [80], vấn đề này được
giải quyết bằng cách sử dụng mã hóa vị trí Laplacian [81], được tạo ra thông
qua việc nhúng quang phổ vào không gian Euclide.
= UTΛU, (6.15)
Trong đó A là ma trận kề, D là ma trận độ, Λ là ma trận giá trị riêng (đường
Chúng ta có thể mô tả đồ thị G như một tập hợp các nút và các cạnh giữa các
nút. Mỗi nút i có đặc điểm αi R dn×1 trong đó dn
, là số đặc điểm của nút. Mỗi
cạnh giữa các nút i và j có đặc điểm βij R de×1 trong đó de là số đặc điểm ,
của cạnh. Lớp đầu vào của Transformer đồ thị có hai lớp nhúng, một để nhúng
các nút và một để nhúng các cạnh. Cả hai lớp nhúng đều tạo ra d chiều