Biểu diễn Mã hóa hai chiều từ Transformer (BERT)

Một phần của tài liệu Tổng hợp âm nhạc sử dụng học sâu (Trang 40 - 44)

Đôi nét về các cách biểu diễn ngôn ngữ tự nhiên phổ biến hiện nay:

• Các mơ hình embedding từ như word2vec [17][18] và GloVe (Global Vectors for Word Representation) [19] có tính chất độc lập với ngữ cảnh. Hai mơ hình này gán cùng một vector được tiền huấn luyện cho cùng một từ bất kể ngữ cảnh xung quanh của từ đó là gì (nếu có). Do đó, rất khó để các mơ hình này xử lý tốt các trường hợp phức tạp về ngữ nghĩa hay đa nghĩa trong các ngơn ngữ tự nhiên.

• Đối với các biểu diễn từ nhạy ngữ cảnh như ELMo (embedding từ các mơ hình ngơn ngữ (Embeddings from Language Models)) [20] và GPT (Generative Pre-Training) [21], biểu diễn của từ phụ thuộc vào ngữ cảnh của từ đó.

• ELMo mã hóa ngữ cảnh theo hai chiều nhưng sử dụng kiến trúc đặc thù phụ thuộc vào các tác vụ trong ngôn ngữ tự nhiên cần xử lý như phân tích cảm xúc, suy luận ngơn ngữ tự nhiên, trả lời câu hỏi, ... Bởi vì trên thực tế khơng dễ để tạo ra một kiến trúc đặc thù cho mọi tác vụ xử lý ngôn ngữ tự nhiên trong khi đó GPT khơng phân biệt tác vụ nhưng chỉ mã hóa ngữ cảnh theo chiều từ trái sang phải.

Kết hợp những điều tốt nhất của hai phương pháp ELMo và GPT, BERT (biểu diễn mã hóa hai chiều từ Transformer - Bidirectional Encoder Representations from Transformers)[22] mã hóa ngữ cảnh theo hai chiều và chỉ yêu cầu vài thay đổi kiến trúc tối thiểu cho một loạt các tác vụ xử lý ngôn ngữ tự nhiên. Sử dụng bộ mã hóa Transformer được tiền huấn luyện, BERT có thể biểu diễn bất kỳ token nào dựa trên ngữ cảnh hai chiều của nó. Trong q trình học có giám sát trên các tác vụ xi dịng, BERT tương tự như GPT ở hai khía cạnh. Đầu tiên, các biểu diễn BERT sẽ được truyền vào một tầng đầu ra được bổ sung, với những thay đổi tối thiểu tới kiến trúc mơ hình tùy thuộc vào bản chất của tác vụ, chẳng hạn như dự đoán cho mỗi token hay dự đốn cho tồn bộ chuỗi. Thứ hai, tất cả các tham số của bộ mã hóa Transformer đã tiền huấn luyện đều được tinh chỉnh, trong khi tầng đầu ra bổ sung sẽ được huấn luyện từ đầu.

Hình 2.22:So sánh giữa ELMO, GPT, và BERT. (Nguồn: [15])

BERT cải thiện kết quả tân tiến nhất đối với mười một tác vụ xử lý ngôn ngữ tự nhiên trải khắp các hạng mục gồm: i) phân loại văn bản đơn (như phân tích cảm xúc), ii) phân loại cặp văn bản (như suy luận ngôn ngữ tự nhiên), iii) trả lời câu hỏi, và iv) gán thẻ văn bản (như nhận dạng thực thể có tên). Tất cả các kỹ thuật được đề xuất trong năm 2018, từ ELMo nhạy ngữ cảnh cho tới GPT không phân biệt tác vụ và BERT, tuy về ý tưởng đều đơn giản nhưng trên thực nghiệm là những phương pháp tiền huấn luyện hiệu quả cho các biểu diễn sâu của ngôn ngữ tự nhiên, và đã mang đến những giải pháp mang tính cách mạng cho nhiều tác vụ xử lý ngôn ngữ tự nhiên.

2.9.1 Biểu diễn đầu vào

Trong xử lý ngôn ngữ tự nhiên, một số nhiệm vụ (như phân tích cảm xúc) lấy một câu văn làm đầu vào, trong khi một số tác vụ khác (như suy diễn ngôn ngữ tự nhiên), đầu vào là một cặp chuỗi văn bản. Chuỗi đầu vào BERT biểu diễn một cách tường minh cả văn bản đơn và cặp văn bản. Với văn bản đơn, chuỗi đầu vào BERT là sự ghép nối của token phân loại đặc biệt “<cls>”, token của chuỗi văn bản, và token phân tách đặc biệt “<sep>”. Với cặp văn bản, chuỗi đầu vào BERT là sự ghép nối của “<cls>”, token của chuỗi văn bản đầu, “<sep>”, token của chuỗi văn bản thứ hai, và “<sep>”. Ta sẽ phân biệt nhất quán thuật ngữ “chuỗi đầu vào BERT” với các kiểu “chuỗi” khác. Chẳng hạn, một chuỗi đầu vào BERT có thể bao gồm cả một chuỗi văn bản hoặc hai chuỗi văn bản.

Để phân biệt cặp văn bản, các embedding đoạn đã họceA và eB được cộng tương ứng vào các embedding token của chuỗi thứ nhất và chuỗi thứ hai. Đối với đầu vào là văn bản đơn, ta chỉ sử dụngeA.

Kiến trúc hai chiều của BERT là bộ mã hóa Transformer. Thơng thường trong bộ mã hóa Trans- former, các embedding vị trí được cộng vào mỗi vị trí của chuỗi đầu vào BERT. Tuy nhiên, khác với bộ mã hóa Transformer ngun bản, BERT sử dụng các embedding vị trí có thể học được.

Hình 2.23:Embedding của chuỗi đầu vào BERT là tổng các embedding của token, embeddingđoạn và embedding vị trí. (Nguồn: [15]) đoạn và embedding vị trí. (Nguồn: [15])

2.9.2 Những tác vụ Tiền huấn luyện

Suy luận xuôi của BERTEncoder cho ra biểu diễn BERT của mỗi token của văn bản đầu vào và các token đặc biệt được thêm vào “<cls>” và “<seq>”. Kế tiếp, ta sẽ sử dụng các biểu diễn này để tính tốn hàm mất mát khi tiền huấn luyện BERT. Tiền huấn luyện gồm hai tác vụ: masked language modeling và next sentence prediction.

2.9.2.1 Masked Language Modeling

Như chúng ta đã biết, một mơ hình ngơn ngữ dự đốn một token bằng cách sử dụng ngữ cảnh phía bên trái của nó. Để mã hóa ngữ cảnh hai chiều khi biểu diễn mỗi token, BERT ngẫu nhiên che các token và sử dụng các token lấy từ ngữ cảnh hai chiều để dự đốn các token được che đó. Trong tác vụ tiền huấn luyện này, 15% số token sẽ được lựa chọn ngẫu nhiên để làm các token che khuyết cho việc dự đoán. Để dự đốn một token được che mà khơng sử dụng nhãn, một hướng tiếp cận đơn giản là luôn luôn thay thế nó bằng token đặc biệt “<mask>” trong chuỗi đầu vào BERT. Tuy nhiên, token “<mask>” sẽ không bao giờ xuất hiện khi tinh chỉnh. Để tránh sự không đồng nhất giữa tiền huấn luyện và tinh chỉnh, nếu một token được cheạ để dự đốn (ví dụ, từ “great” được chọn để che và dự đoán trong câu “this movie is great”), trong đầu vào nó sẽ được thay thế bởi:

• token đặc biệt “<mask>”, chiếm 80% số lần (ví dụ, “this movie is great” trở thành “this movie is <mask>”);

• token ngẫu nhiên, chiếm 10% số lần (ví dụ, “this movie is great” trở thành “this movie is drink”);

• chính token đó, chiếm 10% số lần (ví dụ, “this movie is great” trở thành “this movie is great”).

Lưu ý rằng trong 15% token được chọn để che khuyết, 10% số token đó sẽ được thay thế bằng một token ngẫu nhiên. Việc thi thoảng thêm nhiễu sẽ giúp BERT giảm thiên kiến về phía token được che (đặc biệt khi token nhãn khơng đổi) khi mã hóa ngữ cảnh hai chiều.

2.9.2.2 Next Sentence Prediction

Mặc dù masked language modeling có thể mã hóa ngữ cảnh hai chiều để biểu diễn từ ngữ, nó khơng thể mơ hình hóa các mối quan hệ logic giữa các cặp văn bản một cách tường minh. Để hiểu hơn về mối quan hệ giữa hai chuỗi văn bản, BERT sử dụng tác vụ phân loại nhị phân, dự đoán câu tiếp theo (next sentence prediction) trong quá trình tiền huấn luyện. Khi sinh các cặp câu cho quá trình tiền huấn luyện, một nửa trong số đó là các cặp câu liên tiếp nhau trong thực tế và được gán nhãn “Đúng” (True); và trong nửa còn lại, câu thứ hai được lấy mẫu ngẫu nhiên từ kho ngữ liệu và cặp này được gán nhãn “Sai” (False).

Khi tiền huấn luyện BERT, hàm mất mát cuối cùng là tổ hợp tuyến tính của cả hai hàm mất mát trong tác vụ masked language modeling và next sentence prediction.

Một phần của tài liệu Tổng hợp âm nhạc sử dụng học sâu (Trang 40 - 44)

Tải bản đầy đủ (PDF)

(94 trang)