1 điểm bởi GN⁺ 2024-10-09 | 1 bình luận | Chia sẻ qua WhatsApp
  • Transformer decoder-only đã trở thành kiến trúc tiêu chuẩn của LLM, nhưng trong ngữ cảnh dài, nhiễu attention — việc bỏ lỡ thông tin cốt lõi và phân bổ sự chú ý cho các token không liên quan — làm dao động hiệu năng
  • differential attention chia query và key thành hai nhóm để tạo hai bản đồ attention bằng softmax, rồi trừ bản đồ thứ hai đã áp dụng λ có thể học được để tính attention score cuối cùng
  • DIFF Transformer cho kết quả tốt hơn Transformer trong các thí nghiệm tăng kích thước mô hình, số token huấn luyện và độ dài ngữ cảnh; để đạt hiệu năng tương tự, chỉ cần khoảng 65% kích thước mô hình hoặc token huấn luyện
  • Thể hiện ưu điểm ở mô hình hóa ngữ cảnh dài, truy hồi thông tin cốt lõi, giảm ảo giác, in-context learning, suy luận toán học và giảm activation outlier; trong QA và tóm tắt, ảnh hưởng của ngữ cảnh không liên quan cũng giảm đi
  • Giữ nguyên layout tổng thể như Transformer và chỉ thay softmax attention, nên có thể tái sử dụng FlashAttention trong khi vẫn khớp số lượng tham số và khối lượng tính toán

Vấn đề nhiễu attention của Transformer

  • Transformer decoder-only là kiến trúc tiêu chuẩn trên thực tế của LLM, với phần cốt lõi là attention mechanism gán trọng số bằng softmax cho mức độ quan trọng của các token trong chuỗi
  • LLM gặp khó khăn khi xác định chính xác thông tin cốt lõi trong ngữ cảnh; đặc biệt càng có nhiều ngữ cảnh không liên quan, manh mối dẫn đến đáp án càng dễ bị chôn vùi
  • Trong ví dụ phải tìm đáp án được chèn vào giữa một đống tài liệu, Transformer có xu hướng chỉ gán attention score nhỏ cho đáp án, trong khi phân bổ score quá mức cho ngữ cảnh không liên quan
  • Những attention score không thể bỏ qua được phân bổ cho ngữ cảnh không liên quan như vậy đóng vai trò là attention noise
  • Ví dụ Multi-Needle Retrieval trong Figure 1 hiển thị độ chính xác của Transformer và Differential Transformer lần lượt là 55%85%

Cách differential attention hoạt động

  • DIFF Transformer là kiến trúc nền tảng cho sequence modeling và LLM; nó giữ nguyên macro layout của Transformer hiện có và thay thế softmax attention thông thường bằng differential attention
  • Từ đầu vào X, chiếu query, key và value, nhưng chia query và key thành hai nhóm Q1, Q2, K1, K2, còn value để là V
  • Đầu ra attention được tính bằng hiệu của hai bản đồ attention softmax
    • DiffAttn(X) = (softmax(Q1K1^T / √d) − λ softmax(Q2K2^T / √d))V
    • Đây là cấu trúc loại bỏ nhiễu chung bằng cách trừ bản đồ attention thứ hai khỏi bản đồ attention thứ nhất
  • λ là một scalar có thể học được và được tái tham số hóa như sau để khớp động lực học huấn luyện
    • λ = exp(λq1 · λk1) − exp(λq2 · λk2) + λinit
    • Trong thí nghiệm mặc định, dùng λinit = 0.8 − 0.6 × exp(−0.3 · (l − 1))
    • Nhóm tác giả cũng xem xét cách dùng cùng một λinit cho mọi layer, chẳng hạn 0.8; trong ablation, hiệu năng tỏ ra tương đối bền vững trước khác biệt về chiến lược khởi tạo
  • Cách này tương tự ý tưởng của differential amplifier, vốn loại bỏ common-mode noise bằng hiệu của hai tín hiệu, và của tai nghe chống ồn
  • Naderi et al. chứng minh rằng differential attention làm cho spectral distribution của attention matrix cân bằng hơn, nhờ đó giải quyết hiệu quả rank collapse

Cấu trúc multi-head và kiến trúc tổng thể

  • Multi-head differential attention sử dụng các projection matrix khác nhau cho từng head, và trong cùng một layer thì scalar λ được chia sẻ giữa các head
  • Đầu ra của mỗi head được áp dụng RMSNorm độc lập rồi nhân với (1 − λinit), các head được concatenate theo channel dimension, sau đó đi qua output projection WO
  • Ký hiệu GroupNorm trong Figure 2 nhấn mạnh rằng normalization được áp dụng độc lập cho từng head
    • Differential attention có xu hướng có pattern sparse hơn, nên thông tin thống kê giữa các head đa dạng hơn
    • Normalization theo từng head chuẩn hóa từng head trước khi concatenate, giúp cải thiện gradient statistics
  • Toàn bộ DIFF Transformer layer gồm hai module
    • MultiHead(LN(Xl)) + Xl
    • SwiGLU(LN(Yl)) + Yl
  • Về cấu trúc, nó dùng pre-RMSNormSwiGLU, theo các cải tiến của dòng LLaMA

Hiệu quả và độ ổn định huấn luyện

  • Differential attention có thể tái sử dụng trực tiếp FlashAttention, nhờ đó cải thiện đáng kể hiệu quả của mô hình
  • Số head được đặt là h = dmodel / 2d, trong đó d bằng head dimension của Transformer
  • Thiết lập này nhằm khớp số lượng tham số và độ phức tạp tính toán với Transformer
  • Sau head normalization, dùng multiplier cố định (1 − λinit) để khớp luồng gradient với Transformer
  • Appendix G cho thấy luồng gradient tổng thể được duy trì tương tự Transformer, qua đó có thể kế thừa các hyperparameter tương tự và đảm bảo độ ổn định huấn luyện

Kết quả thí nghiệm và hiệu quả ứng dụng

  • Các thí nghiệm language modeling mở rộng DIFF Transformer theo hướng tăng parameter count, training tokens và context length
  • Trên scaling curve, để DIFF Transformer đạt hiệu năng language modeling tương tự Transformer, kích thước mô hình hoặc token huấn luyện cần thiết chỉ khoảng 65%
  • Trong các downstream task, nó cũng cho hiệu năng tốt hơn Transformer; trong đánh giá long-sequence, khi ngữ cảnh dài hơn, mô hình tận dụng ngữ cảnh hiệu quả hơn
  • Trong truy hồi thông tin cốt lõi, mô hình thể hiện pattern gán attention score cao hơn cho span chứa đáp án và score thấp hơn cho ngữ cảnh không liên quan
  • Trong QA và text summarization, mô hình ít bị phân tâm bởi ngữ cảnh không liên quan hơn, qua đó giảm hallucination
  • Trong in-context learning, mô hình vừa tăng độ chính xác, vừa bền vững hơn trước order permutation, vốn được xem là vấn đề dai dẳng về độ vững chắc
  • Kết quả giảm activation outlier mở ra cơ hội mới cho quantization

1 bình luận

 
GN⁺ 2024-10-09
Các ý kiến trên Hacker News
  • Tôi có cảm giác ở đây đang bỏ lỡ trực giác cốt lõi. Có thể hiểu vấn đề rằng attention softmax thông thường khó gán mức chú ý gần 0 cho những thứ không liên quan, và cũng có thể hiểu rằng nếu có cấu trúc phép trừ thì có thể tạo ra trọng số attention đúng bằng hoặc gần bằng 0 mà không cần các giá trị kích hoạt ngoại lai
    Tuy nhiên, cấu trúc này có vẻ cũng dễ tạo ra trọng số attention âm, và điều đó trông giống như gán chú ý dương cho phần phủ định của vector giá trị. Theo trực giác, có vẻ khó cân bằng để giữ tất cả những thứ không quan tâm ở gần 0. Dù vậy, Figure 1 cho thấy nó hoạt động tốt nên tôi không nghi ngờ khả năng này, chỉ là tôi chưa hình dung rõ mạng cụ thể đã làm điều đó như thế nào

    • Softmax và attention thông thường có một lỗi. Softmax phải là exp()/1+∑exp()
      Điểm mấu chốt là mẫu số được thêm 1. Ở giới hạn âm, softmax có thể trở thành 0 chứ không phải một epsilon nào đó. Thêm một giá trị 0 vào x cũng có thể tạo ra hiệu ứng tương tự. Nhược điểm là để sửa điều này thì phải huấn luyện lại mô hình từ đầu
    • Việc cho phép trọng số âm thay vì đưa nó qua thứ gì đó như ReLU nghe có vẻ như sẽ cản trở mô hình đôi chút. Nhưng xử lý này có thể là một vấn đề dễ hơn ta nghĩ đối với mô hình
      Nhìn vào hình trọng số attention đầu tiên, thực ra có các điểm số âm ở vùng nhiễu. Dù vậy, mức chú ý dành cho vùng đó vốn đã rất nhỏ. Bản đồ attention thứ hai chỉ cần dự đoán nhiễu của bản đồ thứ nhất, và vì nó có quyền truy cập đầy đủ vào đầu vào thứ nhất nên đây là việc có thể làm khá chính xác
      Quay lại phép ví von thực tế trong bài báo, tai nghe chống ồn có micro để tiếp cận âm thanh mà tai nghe được, nên có thể tạo ra tín hiệu triệt tiêu chính xác. Tương tự, bản đồ attention thứ hai biết những gì được đưa vào bản đồ thứ nhất, nên có thể tạo ra tín hiệu triệt tiêu tương ứng. Không hoàn hảo, nhưng tai nghe chống ồn cũng không hoàn hảo, và dù vậy vẫn đạt tới 99%, đủ để cải thiện hiệu năng
    • Theo trực giác, có vẻ sẽ rất dễ để mô hình tối ưu lambda về 0 trong quá trình huấn luyện. Khi đó về bản chất nó trở thành một Transformer thông thường được gắn thêm một cơ chế cắt tỉa tham số quá phức tạp
      Cắt tỉa đã được thiết lập khá vững trong tài liệu như một cách giảm số lượng tham số hiệu quả đến mức đáng ngạc nhiên, có thể giảm khoảng tới 40%. Mô hình thực tế có thể không hoạt động chính xác như vậy, nhưng cuối cùng nếu nó chỉ xấp xỉ Transformer thông thường thì cũng không có gì đáng ngạc nhiên
    • Giá trị âm có thể tăng khả năng biểu đạt
  • Rất thông minh. Tôi thích những công việc đi vào chi tiết như thế này, và thay đổi cũng nhỏ nên có vẻ người khác có thể dễ dàng áp dụng. Tuyệt vời
    Tuy nhiên, câu cuối ở phần mở đầu của mục "2 Differential Transformer" hơi khiến tôi lo. Họ nói dùng các cải tiến từ những bài báo trước, nhưng theo ngữ cảnh ngữ pháp thì không rõ các cải tiến đó được đưa vào cả Transformer thông thường lẫn diff Transformer hay không. Nếu không thì phép so sánh sẽ bị mờ đi. Cụm "main difference" trong câu ngay trước đó đã khiến tôi chú ý
    Tất nhiên, các nhà nghiên cứu thiện chí có thể đã biết điều này nên không cảm thấy cần phải nói rõ. Nhưng với một số nghiên cứu được xuất bản trong lĩnh vực này, cẩn thận đến mấy cũng không thừa

    • Đúng vậy. Trông thực sự tốt. Có cải thiện perplexity trên diện rộng theo thời gian huấn luyện, theo mỗi token huấn luyện và theo kích thước mô hình
      Tôi liên tưởng đến kiến trúc MoE, nơi người ta chọn mô hình nhỏ tối ưu để xử lý một phần hoặc toàn bộ tác vụ suy luận. Tôi tò mò liệu MoE có đạt được lợi ích tương tự vì Transformer bị buộc phải phân biệt giữa các khả năng thay thế hay không
      Dù sao, nếu các con số vẫn giữ được thì có vẻ nó sẽ được áp dụng rộng rãi. Như đã nói, về cơ bản có vẻ không có nhược điểm và cũng dễ tái hiện
    • Hai thay đổi khác mà họ nhắc đến đã được áp dụng rộng rãi, và cũng có trong một số mô hình được dùng làm đối tượng so sánh. Có vẻ họ liệt kê các thay đổi so với kiến trúc Transformer gốc để cho đầy đủ
  • Cũng như hầu hết mọi thứ trong thế giới mới này của machine learning, thật sự rất khó hiểu vì sao nó hoạt động
    Phép ví von với tai nghe chống ồn có ích, nhưng trong trường hợp đó ta biết rõ đâu là tín hiệu và đâu là nhiễu. Nếu ở đây cũng biết được như vậy thì tôi không hiểu tại sao ngay từ đầu lại cần làm việc khử nhiễu

    • Một softmax đơn lẻ không thể dự đoán chính xác 0, mà chỉ dự đoán được một số rất nhỏ. Khi có nhiều giá trị cần cộng vào, các giá trị nhỏ này trộn rất nhiều thứ không liên quan vào đầu ra, làm nó bị ô nhiễm bởi thứ mà bài báo gọi là nhiễu
      Tệ hơn nữa, gradient của các giá trị attention thấp trở nên rất nhỏ, nên cần nhiều lần cập nhật trọng số để sửa những sai lầm đó. Ngược lại, nếu lấy đầu ra của hai softmax trừ nhau, mô hình có thể dự đoán các trọng số đúng bằng 0 cho một số giá trị, đồng thời vẫn duy trì được luồng gradient hợp lý
      Nói cách khác, mô hình vốn đã biết đâu là nhiễu, nhưng softmax đơn lẻ khiến việc loại trừ nó trở nên khó khăn. Ngoài ra, với softmax đơn lẻ, đầu ra của mọi head bị buộc phải nằm trong bao lồi của các vector giá trị, còn trong biến thể này, mỗi head có thể chọn lambda riêng để dịch phạm vi đầu ra ra ngoài bao lồi do các giá trị định sẵn. Vì vậy năng lực biểu diễn của toàn bộ mô hình tăng lên
    • Tai nghe chống ồn có lẽ là một phép ví von sai ở đây
      Ví dụ tốt hơn là tín hiệu vi sai được dùng trong audio chuyên nghiệp và nhiều giao thức tín hiệu số như Ethernet, HDMI, USB. Thay vì dùng một dây lấy đất làm mốc, tín hiệu được truyền bằng độ chênh giữa hai dây. Hai dây mang cùng một tín hiệu với cực tính ngược nhau và chạy song song, nên nhiễu bên ngoài tác động giống nhau lên cả hai
      Điện áp sẽ thay đổi, nhưng hiệu điện áp giữa hai dây vẫn giữ nguyên. Ở đầu nhận, khi trừ hai điện áp cho nhau thì nhiễu đơn giản là bị triệt tiêu
    • Đừng cố tìm phép ví von; cứ xem nó là việc bổ sung một năng lực toán học mới. Nó cho phép attention âm, để mạng có thể nói trong phép tính attention rằng “tôi muốn trừ phần đóng góp của token này”. Trước đây mạng chỉ có thể giảm mức độ cộng vào
      Cách đơn giản để làm điều này là bỏ softmax hoặc dùng sigmoid, nhưng trên thực tế có vẻ softmax hoạt động tốt hơn
    • Một giả thuyết về lý do nó hoạt động là vì nó giảm nhẹ nhược điểm của RoPE
      Nói đơn giản, RoPE là một chiến lược hiện đại cung cấp cho mô hình thông tin về khoảng cách giữa query và key khi thực hiện attention. Đây là chiến lược tốt nhất hiện có, nhưng nó có một nhược điểm lớn: làm cho một số liên kết giữa các token ở xa nhau mạnh hơn rất nhiều so với mong muốn. Xpos (https://arxiv.org/pdf/2212.10554) cũng là bài báo của Microsoft xử lý vấn đề RoPE; xem Figure 1 ở trang 4 sẽ thấy cách diễn giải trực quan về cường độ attention dạng sóng sin. Ban đầu ta muốn nó mượt hơn
      Tôi cho rằng lý do lớn khiến Differential Transformer hoạt động tốt, đặc biệt với chuỗi dài, là ngay cả khi q1q2 đều không khớp với một token nào đó, cường độ tương đối của RoPE vẫn có cùng giá trị nên nhiễu bị triệt tiêu. Chỉ những khớp có chủ đích còn lại, dù cái giá là các giá trị mà RoPE vốn mang lại bị làm yếu đi phần nào
      Tất nhiên đây chỉ là giả thuyết. Có thể kiểm chứng dễ dàng bằng cách thí nghiệm so với baseline dùng alibi attention (https://arxiv.org/pdf/2108.12409) cho cả hai. Alibi có những đánh đổi khác mà phương pháp này không giảm nhẹ được, nhưng dù vậy đây vẫn là một kết quả thật sự thú vị
    • Một phần các công trình trước đó ở đây là ladder networks và, ở mức hơi mang tính phỏng đoán, residual nets. Cả hai đều có thể được diễn giải là huấn luyện mô hình để giảm lỗi của dự đoán trước đó, thay vì trực tiếp dự đoán kết quả cuối cùng
      Trực giác về lý do chúng hoạt động có vẻ là chúng làm cho bề mặt tối ưu của gradient descent “thân thiện” hơn một chút, giúp học dễ hơn theo các bước nhỏ. Bởi giờ đây bản thân mạng được thiết kế tường minh theo ý tưởng rằng ban đầu nó sẽ mắc nhiều lỗi trong dự đoán rồi dần dần cải thiện theo thời gian
  • Nếu tôi hiểu đúng câu “Differential attention takes the difference between two softmax attention functions to eliminate attention noise”, thì cấu trúc này có vẻ là một đánh đổi: dùng gấp đôi bộ nhớ attention để đổi lấy mô hình chất lượng cao hơn, hoặc chất lượng tương tự với ít tham số hơn
    Phần “6.8B-size DIFF Transformer achieves a validation loss comparable to 11B-size Transformer, requiring only 62.2% of parameters” khiến tôi có vài câu hỏi. Nếu chỉ có 60% tham số, liệu điều đó có bù lại việc không gian attention tăng gấp đôi để đặc tính bộ nhớ trở nên tương tự Transformer truyền thống hay không, và liệu sự đánh đổi đó có khác biệt đáng kể giữa huấn luyện và suy luận không

    • Tôi hiểu rằng các tham số bổ sung cần cho cơ chế attention thứ hai cũng được tính trong 6.8B tham số đó. Nghĩa là đây là tổng số tham số của mô hình, không phải một số tham số giả định mà Transformer chuẩn sẽ có. Vì vậy kết quả ấn tượng gấp đôi
      Trong bài báo có viết: “We set the number of heads h = dmodel/2d, where d is equal to the head dimension of Transformer. So we can align the parameter counts and computational complexity.” Nói cách khác, họ giảm một nửa số attention head ở mỗi tầng để bù lại điều này
    • Có vẻ họ giảm một nửa tổng số head và làm V và O lớn gấp đôi để giảm bớt bộ nhớ và tính toán bổ sung. Tôi chưa kiểm tra toán học thực tế, nhưng nếu bỏ qua các phép rẻ như nhân hằng số và phép trừ, số phép toán dấu phẩy động có vẻ tương đương
    • Việc tiết kiệm RAM có lẽ sẽ bị triệt tiêu, nhưng có thể giảm dung lượng cần khi lưu trữ và, tùy vào tốc độ bộ nhớ lưu trữ cũng như kích thước mô hình, cũng giảm thời gian khởi động ban đầu. Vì vậy nó có thể ổn cho các mô hình cấu hình thấp trên thiết bị tiêu dùng
    • Kích thước KV cache sẽ tăng gấp đôi, và với kích thước ngữ cảnh lớn, con số này có thể lên tới mức vài GB khá đáng kể
  • Tôi tò mò không biết đằng sau công thức “We empirically find that the setting λᵢₙᵢₜ = 0.8 − 0.6 × exp(−0.3 · (l − 1)) works well in practice” có câu chuyện gì

    • 0.8 có vẻ chạy tốt, nhưng ở các tầng thấp thì thử giá trị khởi tạo thấp hơn xem. Lấy khoảng 0.2. Tốt, giờ cần một công thức dao động từ 0.2 đến 0.8 và từ từ tiến tới 0.8. Cảm giác như họ đã loay hoay với các con số khoảng 20 phút rồi thấy thế này là được
    • Thật sự có rất nhiều thứ được tối ưu tinh chỉnh bằng cách vặn núm xoay analog thử hoặc nghe thử cho đến khi thấy ổn
    • Công thức này, ít nhất ở giai đoạn đầu huấn luyện, có vẻ làm cho hạng attention âm ở các tầng phía trước, tức l nhỏ, nhỏ hơn so với các tầng phía sau. Nghe hợp lý. Vì trước khi kết luận đâu là vài vị trí thực sự cần nhìn, ta có lẽ sẽ muốn chú ý một chút đến mọi thứ
      Tuy nhiên có vẻ tác giả không thảo luận riêng lựa chọn này trong bài báo
  • Điểm cốt lõi ban đầu tôi không hiểu là chuyện gì xảy ra nếu hai nhóm attention học cùng một thứ. Vì các mask attention bị trừ lẫn nhau, nếu cả hai đều xuất ra các giá trị tương tự thì attention tổng sẽ rơi về 0 và loss tăng lên
    Vì vậy cách duy nhất để giảm loss là học sao cho chúng chú ý tới những thứ khác nhau. Một trong những chiến lược đơn giản nhất chúng có thể học, như bài báo lập luận, là một nhóm tập trung vào ngữ cảnh liên quan, còn nhóm kia tập trung vào ngữ cảnh không liên quan. Như vậy một nhóm học nhiễu, nhóm kia học tín hiệu. Thực tế chắc không rạch ròi như vậy, nhưng đây là cách đơn giản hóa hữu ích để hiểu

    • Phần thú vị là không phải phép trừ đơn giản, mà chỉ trừ một phần của softmax thứ hai
      Điều này có lý nếu nghĩ rằng nếu hai bản sao giống hệt nhau thì đầu ra softmax cũng giống hệt, khiến hiệu ở mọi nơi đều bằng 0. Nhưng nếu trừ một bản sao đã được scale, quá trình chuẩn hóa hiệu dường như làm nổi bật giá trị tín hiệu lớn hơn nhiễu, khiến tín hiệu nổi rõ hơn so với trước khi chuẩn hóa
    • Tôi tò mò liệu có phép ví von nào với trải nghiệm ngạc nhiên của chính chúng ta và tính hữu dụng của nó, liên quan đến việc chuyện gì xảy ra khi hai nhóm attention học cùng một thứ không
      Kiểu như một attention head tăng trọng số nếu nó ngạc nhiên trước thứ head khác đã học, còn nếu cả hai cùng tìm thấy một thứ thì coi là không mấy ngạc nhiên và giảm trọng số
      Phải thừa nhận rằng “ngạc nhiên” chiếm một vùng khá lớn trong nền tảng kiến thức của tôi[1][2][3]. Vừa là một cảm xúc chủ quan, vừa là một chức năng thích nghi của tâm trí, một trong những hệ thích nghi phức tạp nhất mà ta biết
      [1] https://plus.maths.org/content/information-surprise
      [2] https://blakeelias.name/papers/Multi-Agent-Cooperation-Intri...
      [3] https://complexity.simplecast.com/episodes/81/transcript
    • Có một khả năng nhỏ là cả hai học cùng một thứ, nhưng có lẽ không lớn đến mức trở thành vấn đề chính
    • Biết đâu loss function cũng có thể phạt việc cả hai học cùng một thứ
  • Tôi tò mò ở đây ta đánh mất điều gì. Chắc chắn phải có đánh đổi
    Tôi cũng tự hỏi liệu nó có ảnh hưởng đến tính sáng tạo hay khả năng nội suy giữa các khái niệm không. Ảo giác và sáng tạo trông có vẻ khá liên quan. Tôi hiểu ảo giác là thứ lệch khỏi không gian nội suy mà con người cảm thấy phù hợp

    • Tôi không hiểu vì sao ảo giác và sáng tạo lại có vẻ liên quan. Với tôi nó chỉ là lỗi sampling
      Tất nhiên sai lầm đôi khi có thể truyền cảm hứng, nhưng sáng tạo còn nhiều hơn sai lầm rất nhiều
      Các mô hình ngôn ngữ kiểu này là bộ dự đoán token tiếp theo. Token tiếp theo được dự đoán bằng cách sampling từ không gian xác suất mà mô hình xuất ra. Quá trình sampling đó có thể phi tất định
      Ảo giác là khi kết quả sampling đó cho ra các token tạo thành câu sai hoặc không như ý. Cũng có thể coi mọi thứ mô hình xuất ra đều là ảo giác, nhưng chúng ta huấn luyện mô hình để nó xuất ra một không gian có xác suất cao hơn trong việc ảo giác ra thứ chúng ta muốn. Nếu không thì nó chỉ phun ra nhiễu vô nghĩa
      “Ảo giác” là một từ thật sự tệ để mô tả thứ nó đang cố giải thích
    • Một đánh đổi là tốc độ và bộ nhớ. Vì khối attention có số trọng số Q và K nhiều gấp đôi, throughput trên H100 của họ giảm khoảng 10%. Có trong Bảng 7 của Phụ lục A
    • Không phải mọi ảo giác đều là sáng tạo. Hãy tưởng tượng một ứng dụng RAG: mô hình phải bám theo tài liệu được cung cấp
  • Tôi tò mò bao nhiêu phần giá trị ở đây đến từ việc triệt tiêu nhiễu vị trí do RoPE tạo ra. Ngoài các mô hình RoPE ở đây, tôi cũng muốn thấy một bảng so sánh phiên bản alibi với baseline alibi
    Dù sao đây vẫn là một cải thiện rất lớn, xin chúc mừng các nhà nghiên cứu

  • Có phải điều đang xảy ra ở đây là softmax không thể đẩy giá trị về 0, nhưng nếu trừ hai bản đồ softmax thì có thể tạo ra đầu ra bằng 0 không

    • Câu hỏi tiếp theo là, chẳng phải khả năng xuất ra 0 là cực kỳ thấp sao
    • Hoặc cũng có thể là giá trị âm
  • Đây là một vấn đề hay cần giải, nhưng tôi cho rằng cách tiếp cận là sai
    Để biết đã chú ý vào cái gì và toàn bộ ngữ cảnh, cần làm theo cách phân cấp. Nếu vector sai phân được tính từ cùng đầu vào với vector attention, tôi không thấy làm sao nó biết cách sửa vector attention cho đúng

    • Chẳng phải cuối cùng mọi thứ đều được điều chỉnh theo hướng mà đạo hàm lan truyền ngược chỉ ra và tỷ lệ với gradient của nó sao. Nói cách khác, miễn là hệ thống backpropagation hoạt động, tôi nghĩ việc phải chỉnh trọng số theo hướng nào không phải là vấn đề