0
0
Lập trình
NM

Hiểu Rõ Về Self-Attention và Multi-head Self-Attention Trong Mô Hình Transformers

Đăng vào 3 ngày trước

• 3 phút đọc

Mô Hình Transformers: Tại sao lại được nhắc đến nhiều trong lĩnh vực machine learning? Trước khi Google giới thiệu bài báo nổi tiếng "Attention Is All You Need", thuật ngữ transformers chỉ đơn giản là "Các máy biến hình" hay "Máy biến áp". Tuy nhiên, sau bài báo đó, transformers đã trở thành một kiến trúc chủ chốt trong xử lý ngôn ngữ tự nhiên (NLP) và nhận dạng hình ảnh. Với khả năng xử lý song song và khả năng nắm bắt mối quan hệ phức tạp giữa các từ trong câu, transformers đã vượt qua những giới hạn của mạng RNN cùng các biến thể như LSTM và GRU. Kiến trúc độc đáo này dựa vào cơ chế self-attention, cho phép mô hình tập trung vào những thông tin quan trọng, hiểu rõ ngữ cảnh của từng từ trong câu và có khả năng ghi nhớ rất lâu. Một ứng dụng thực tiễn có thể thấy là trong dịch máy, mô hình sẽ tiếp nhận một câu bằng ngôn ngữ này và xuất ra bản dịch bằng ngôn ngữ khác.

1. Self-Attention Là Gì?

Word Embedding là những vector thể hiện ngữ nghĩa của từ trong câu. Ở bước tiền xử lý, các vector này được tổ chức thành một không gian vector với những từ có nghĩa tương đồng gần nhau. Tuy nhiên, ý nghĩa của từ trong ngữ cảnh có thể thay đổi. Ví dụ, từ "apple" trong câu "The apple on the table" chỉ đơn giản là quả "táo". Nhưng trong câu "The Apple keynote was interesting", "Apple" ám chỉ tới công ty công nghệ.

Cơ chế Self-Attention, được giới thiệu trong bài báo "Attention Is All You Need", giúp giải quyết vấn đề này bằng cách so sánh các từ với nhau, kể cả tự chú ý đến chính nó (self), để xác định độ quan trọng của mỗi từ. Điều này giúp mô hình hiểu đúng ý nghĩa ngữ cảnh của từng từ.

2. Cơ Chế Hoạt Động Của Self-Attention.

2.1 Attention Trong Seq2seq.

Trong bài toán dịch máy, nếu dịch từng từ một cách trực tiếp, điều này sẽ không đầy đủ và hiệu quả. Mô hình seq2seq đã giới thiệu cơ chế attention, cho phép so sánh các từ đích với các từ ở câu nguồn để xác định mối quan hệ. Mỗi từ được biểu diễn bằng vector embedding, với việc tính toán "score attention" bằng tích vô hướng (dot product). Những từ có ngữ nghĩa gần gũi sẽ có score attention cao.

Khi dịch câu "Tôi rất thích ăn cơm nếp", sau khi tính toán các vector embedding, chúng ta có thể nhận diện và phân tích cách mà câu từ nên "chú ý" đến nhau trong bản dịch.

2.2 Chi Tiết Về Self-Attention.

Điểm khác biệt đáng chú ý giữa attention và self-attention là bản thân mỗi từ cũng chú ý đến chính nó. Ví dụ, trong câu "Tôi cảm thấy tôi không được khỏe", self-attention giúp mô hình nhận ra hai lần xuất hiện của từ "tôi" đang chỉ cùng một chủ thể, đảm bảo cấu trúc câu được hiểu rõ.

Self-attention cho phép mỗi từ giữ lại ý nghĩa riêng và nhận ra các mối quan hệ trong các cấu trúc câu phức tạp.

Positional Encoding?
Vì transformers xử lý tất cả các embedding đồng thời, điều này có thể khiến thông tin vị trí bị mất. Để giải quyết, tác giả đã giới thiệu positional encoding, giúp mỗi từ được gán một vector biểu thị vị trí của nó

3. Multi-head Self-Attention.

Trong mô hình transformer, các encoder và decoder đều sử dụng nhiều self-attention (các head attention). Phương pháp này cải thiện hiệu suất của lớp attention theo hai cách:

  1. Mô hình có thể chú ý đến nhiều vị trí khác nhau trong câu.
  2. Tạo ra nhiều không gian con cho biểu diễn, giúp phản ánh embedding đầu vào trong các không gian khác nhau.

Kết quả của multi-head attention cho phép mô hình xử lý thông tin phức tạp thì năng suất hơn, từ đó cải thiện độ chính xác trong các tác vụ như dịch thuật.

Kết Luận.

Self-attention và multi-head attention trong mô hình transformers đã chứng tỏ hiệu quả của nó, đặc biệt trong xử lý ngôn ngữ tự nhiên và nhận diện hình ảnh. Hy vọng bài viết giúp bạn có cái nhìn rõ hơn về kiến thức này. Cảm ơn bạn đã đọc bài viết.

Tài Liệu Tham Khảo:

  • Attention Is All You Need
  • Multi-head Attention
  • Attention Networks: A Simple Way to Understand Self-Attention
    source: viblo
Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào