Attention matrix: đọc được gì và không đọc được gì từ nó

Attention matrix: đọc được gì và không đọc được gì từ nó A data-flow diagram generated by Archify. 01 / Ma trận A 02 / Đọc thế nào 03 / Dùng được gì 04 / Giới hạn Ma trận A cỡ n × n · hàng là Query, cột là Key · 01 / Ma trận A · mỗi hàng cộng bằng 1 Ma trận A cỡ n × n hàng là Query, cột là Key mỗi hàng cộng bằng 1 Hàng tired · 0.05 · 0.45 · 0.15 · 0.35 · 02 / Đọc thế nào Hàng tired 0.05 · 0.45 · 0.15 · 0.35 Cột animal · ai đang nhìn vào nó · 02 / Đọc thế nào Cột animal ai đang nhìn vào nó Attention heatmap · nhìn pattern của một head · 03 / Dùng được gì Attention heatmap nhìn pattern của một head Dùng để debug · kiểm tra head đang làm gì · 03 / Dùng được gì Dùng để debug kiểm tra head đang làm gì Không phải lời giải thích · còn residual, MLP, trăm layer · 04 / Giới hạn Không phải lời giải thích còn residual, MLP, trăm layer Khác phân phối, cùng output · Jain và Wallace, 2019 · 04 / Giới hạn Khác phân phối, cùng output Jain và Wallace, 2019 đọc theo hàng đọc theo cột vẽ thành ảnh soi từng head cẩn thận ở đây bằng chứng ngược Legend primary data data flow

Một hàng là một Query, một cột là một Key

  • • Hàng tired đặt 0.45 vào cột animal
  • • Nghĩa là vector mới của tired lấy nhiều từ Value của animal
  • • Toàn bộ một hàng luôn cộng lại đúng bằng 1

Attention weight cao không đồng nghĩa với nguyên nhân

  • • Weight chỉ mô tả mức trộn Value bên trong một head
  • • Output cuối còn đi qua residual, nhiều head, MLP và norm
  • • Nghiên cứu interpretability cho thấy tương quan này không chắc chắn

Nhưng heatmap vẫn có giá trị thật

  • • Rất tốt để debug và quan sát cơ chế cục bộ
  • • Cho thấy một head đang tạo ra interaction nào
  • • Chỉ đừng biến nó thành lời giải thích cho cả model