Có bao giờ bạn nghĩ: chúng ta có thể trò chuyện với nhau như thế nào trong một không gian ồn ào của một bữa tiệc, hay là việc chúng ta có thể tìm thấy nhau trong một khu phố đông đúc người. Đây chính là khả năng tập trung của con người. Nói đơn giản, trong quá trình nhận thức một vấn đề, chúng ta chỉ tập trung vào một thứ và bỏ đi những thứ gây nhiễu xung quanh. Đây chính là nguồn gốc của ý tưởng attention trong học máy. Bài viết này sẽ cho độc giả một cái nhìn khái quát về attention trong machine learning.

Attention là gì?

Cơ chế attention, hay còn gọi là cơ chế chú ý, giúp máy tính “tập trung” vào các phần quan trọng của dữ liệu khi thực hiện các nhiệm vụ như dịch thuật, trả lời câu hỏi hay tạo chú thích cho ảnh. Thay vì xử lý toàn bộ dữ liệu một cách đồng đều, attention cho phép máy tính xác định và chú ý đến những phần cần thiết nhất tại mỗi bước xử lý.

Giải thích cơ chế Attention:

Attention là một khái niệm phức tạp trong machine learning. Với giới hạn trong bài viết này, mình muốn độc giả có một cái nhìn chung nhất và dễ hiểu nhất, do đó mình sẽ tránh việc sử dụng các công thức toán và chỉ trình bày một cách dễ hiểu nhất thông qua ví dụ tạo caption cho một bức ảnh cho trước.

Giả sử chúng ta có một bức ảnh về một con mèo ngồi trên ghế sofa và muốn máy tính tạo ra một câu mô tả phù hợp cho bức ảnh này.

Sau đây là việc mà cái máy các bạn sẽ làm khi gặp trường hợp này: 

  • Xử ý ảnh: Đầu tiên, ảnh sẽ được truyền qua một mạng nơ-ron tích chập (CNN) để trích xuất các đặc trưng không gian. Kết quả là một tập hợp các vùng nhỏ trong ảnh, mỗi vùng được biểu diễn bởi một vector chứa thông tin về đặc trưng của vùng đó.
  • Áp dụng attention: Khi máy tính bắt đầu tạo câu chú thích, nó sẽ thực hiện từng từ một. Mỗi khi dự đoán một từ mới, mô hình attention sẽ quyết định vùng nào của ảnh cần được chú ý. Có thể giải thích dễ hiểu như sau:
    • Bước 1: Sau khi mô hình có thể tập trung vào toàn bộ bức ảnh để xác định đối tượng chính. Nó sẽ dự đoán từ “A”.
    • Bước 2: Khi dự đoán từ “cat” (mèo), attention sẽ tập trung vào vùng chứa hình ảnh con mèo.
    • Bước 3: Khi dự đoán từ “sitting” (đang ngồi), mô hình có thể chú ý vào cả con mèo và ghế sofa để hiểu ngữ cảnh tốt hơn.
    • Bước 4: Sau khi nhìn vào con mèo, cái ghế, và ngữ cảnh phía trước là sitting nên từ tiếp theo nó đoán là “on a sofa”.
  • Tạo chú thích: Sử dụng thông tin từ các vùng đã được chú ý, mô hình sẽ tạo ra các từ tiếp theo trong câu chú thích. Quá trình này được lặp lại cho đến khi hoàn thành câu. Kết quả cuối cùng có thể là: “A cat is sitting on a sofa.”

Độ lợi hại của attention:

Nhìn vào ví dụ nêu trên, chắc hẳn các bạn vẫn rất khó hiểu, vì sao phải áp dụng attention vào trong đó làm gì??? Chúng ta có thể không cần mà?? Chúng ta chỉ cần tập trung vào cả bức ảnh là xong. Có gì mà phải làm thế cho phiền phức.

Tuy nhiên, thực tế không như vậy, có lẽ bức ảnh trên chúng ta không cần cũng chả sao nhưng mà đối với các bức ảnh có nhiễu thì sao, như mình đã trình bày trước đó, nếu cái gì chúng ta cũng lấy thì làm sao chúng ta tập trung vào cái cần thiết được chứ??? 

Như vậy, vai trò của attention rất quan trọng, các “lợi ích” có thể kể đến như sau:

  • Tập trung vào phần quan trọng: Thay vì xử lý tất cả dữ liệu cùng một lúc, attention giúp máy tính chỉ tập trung vào các phần quan trọng nhất, tăng hiệu quả và độ chính xác.
  • Hiểu ngữ cảnh tốt hơn: Bằng cách tập trung vào các phần liên quan của dữ liệu, mô hình có thể hiểu ngữ cảnh tốt hơn, đặc biệt hữu ích trong các nhiệm vụ như dịch thuật hoặc tạo chú thích ảnh.
  • Giảm tải tính toán: Việc chỉ xử lý các phần cần thiết giúp giảm tải tính toán, làm cho mô hình hoạt động nhanh hơn và hiệu quả hơn.

Kết luận:

Attention là một trong những cơ chế quan trọng nhất giúp các mô hình deep learning xử lý thông tin hiệu quả hơn, đặc biệt là với các chuỗi dữ liệu dài và phức tạp. Nó giúp mô hình tập trung vào các phần thông tin quan trọng nhất, từ đó cải thiện hiệu suất và độ chính xác.

Nguồn tham khảo:

https://dennybritz.com/posts/wildml/attention-and-memory-in-deep-learning-and-nlp/

https://analyticsindiamag.com/memory-attention-deep-learning-guide/

https://en.wikipedia.org/wiki/Attention_(machine_learning)_qph.cf2.quoracdn.net