Q, K, V đến từ đâu: ba phép chiếu tuyến tính học được

Q, K, V đến từ đâu: ba phép chiếu tuyến tính học được A workflow diagram generated by Archify. 01 / Query 02 / Key 03 / Value W_Q · d_model × d_k · Query W_Q d_model × d_k q_i · d_k chiều · Query q_i d_k chiều Token i tìm gì? · phía đặt câu hỏi · Query Token i tìm gì? phía đặt câu hỏi Hidden state x_i · một hàng của X · Key Hidden state x_i một hàng của X W_K · d_model × d_k · Key W_K d_model × d_k k_i · d_k chiều · Key k_i d_k chiều Tìm i theo gì? · phía được so khớp · Key Tìm i theo gì? phía được so khớp W_V · d_model × d_v · Value W_V d_model × d_v v_i · d_v chiều · Value v_i d_v chiều i gửi gì đi? · phía truyền thông tin · Value i gửi gì đi? phía truyền thông tin nhân ma trận nhân ma trận nhân ma trận cùng một x_i câu hỏi nhãn để khớp nội dung Legend Agent logic Context / trace Cloud service External system

Không có ba bảng embedding riêng cho Q, K và V

  • • Chỉ có một hidden state và ba ma trận trọng số
  • • Q, K, V được tính lại mỗi lần model chạy
  • • Ở layer sâu, X đã là hidden state có ngữ cảnh chứ không phải embedding gốc

Ba ma trận này là tham số, không phải quy ước

  • • Không ai lập trình rằng Q là chủ ngữ hay K là động từ
  • • Gradient descent chỉnh chúng theo objective của model
  • • Vai trò trong sơ đồ là cách diễn giải, không phải ràng buộc

Vì thế đừng đọc một head quá cứng nhắc

  • • Một số head có pattern dễ diễn giải trên vài input
  • • Nhưng vai trò đó là emergent, không được kiến trúc đặt ra
  • • Cùng một chức năng có thể phân tán qua nhiều head và nhiều layer