2 điểm bởi GN⁺ 2024-03-29 | 1 bình luận | Chia sẻ qua WhatsApp
  • Các nhà nghiên cứu từ MIT và nhiều đơn vị khác xác nhận rằng mô hình ngôn ngữ lớn (LLM), nền tảng của các chatbot AI như ChatGPT, thường dùng một hàm tuyến tính đơn giản để lấy ra một số sự thật đã được lưu trữ
  • Hàm này thay đổi theo từng loại sự thật, như “nhạc cụ một người chơi” hay “bang nơi một người sinh ra”, và cùng một hàm giải mã được áp dụng cho các sự thật có loại tương tự
  • Sau khi ước lượng các hàm cho 47 quan hệ rồi kiểm thử bằng cách thay chủ thể, nhóm nghiên cứu thu hồi đúng thông tin đối tượng trong hơn 60% trường hợp ở các quan hệ như “thủ đô của một quốc gia”
  • Ngay cả khi mô hình đưa ra đáp án sai, trong nhiều trường hợp đáp án đúng vẫn còn bên trong, và điều này dẫn tới attribute lens để quan sát thông tin cụ thể được lưu ở lớp nào của transformer
  • Không phải mọi tri thức đều được lưu theo dạng tuyến tính, nên việc tìm hiểu các sự thật không thể truy ra bằng hàm tuyến tính và kiểm chứng độ chính xác trên các mô hình lớn hơn vẫn là nhiệm vụ cho nghiên cứu tiếp theo

Cách truy xuất tri thức đơn giản được phát hiện bên trong LLM

  • Các nhà nghiên cứu từ MIT và nhiều tổ chức khác thu được kết quả cho thấy mô hình ngôn ngữ transformer phức tạp thường dùng các hàm tuyến tính đơn giản để truy hồi những sự thật đã lưu trữ
  • Hàm tuyến tính là một dạng đơn giản biểu diễn mối quan hệ thẳng giữa hai biến
    • Ngay cả bên trong LLM, nơi thực hiện các phép tính phi tuyến phức tạp, một phần việc truy xuất tri thức vẫn vận hành bằng cơ chế đơn giản như vậy
  • Bài báo liên quan là “Linearity of Relation Decoding in Transformer Language Models”, và nghiên cứu sẽ được trình bày tại International Conference on Learning Representations

Sự thật được xử lý như quan hệ giữa chủ thể và đối tượng

  • Nhiều tri thức được lưu trong transformer có thể được biểu diễn dưới dạng quan hệ nối giữa chủ thể và đối tượng
    • “Miles Davis plays the trumpet” là một quan hệ nối chủ thể Miles Davis với đối tượng trumpet
    • Với prompt “Miles Davis plays the...”, mô hình phải trả lời trumpet chứ không phải Illinois, bang nơi Miles Davis sinh ra
  • Khi mô hình thu được nhiều tri thức hơn về một chủ đề nào đó, nhiều sự thật liên quan đến chủ đề đó sẽ được lưu qua nhiều lớp
  • Khi có truy vấn, mô hình phải giải mã sự thật liên quan nhất để tạo phản hồi

Hàm giải mã tuyến tính thay đổi theo từng loại quan hệ

  • Qua các thí nghiệm khảo sát LLM, nhóm nghiên cứu xác nhận rằng trong một số trường hợp mô hình giải mã thông tin quan hệ bằng một hàm tuyến tính đơn giản
  • Hàm này cũng thay đổi tùy theo loại sự thật cần truy xuất
    • Hàm dùng để xuất ra nhạc cụ một người chơi khác với hàm dùng để xuất ra bang nơi một người sinh ra
  • Nhóm nghiên cứu đã xây dựng phương pháp ước lượng các hàm như vậy và tính toán hàm cho 47 quan hệ như “thủ đô của một quốc gia”, “ca sĩ chính của một ban nhạc”
  • Vì số lượng quan hệ có thể có là vô hạn, thí nghiệm dùng một tập con đại diện cho các loại sự thật có thể xử lý theo cách này

Hơn 60% truy hồi thành công và giới hạn của lưu trữ tuyến tính

  • Mỗi hàm được kiểm tra xem có thể truy hồi đúng thông tin đối tượng khi thay đổi chủ thể hay không
    • Hàm “thủ đô của một quốc gia” phải truy hồi Oslo khi chủ thể là Norway và London khi chủ thể là England
  • Trong hơn 60% trường hợp, các hàm truy hồi được thông tin chính xác
  • Một phần thông tin bên trong transformer có thể được mã hóa và truy hồi theo cách này
  • Tuy nhiên, không phải mọi thông tin đều được mã hóa tuyến tính
    • Có những sự thật mà mô hình biết và vẫn dự đoán văn bản phù hợp với sự thật đó, nhưng nhóm nghiên cứu không tìm được hàm tuyến tính
    • Trong những trường hợp như vậy, mô hình đang dùng cách phức tạp hơn để lưu trữ thông tin đó

Attribute lens để quan sát mô hình biết gì

  • Các hàm đã được ước lượng có thể dùng để kiểm tra mô hình xem điều gì là đúng về một chủ đề cụ thể
  • Một thí nghiệm bắt đầu từ prompt “Bill Bradley was a” rồi áp dụng các hàm giải mã tương ứng với “chơi thể thao” và “đã học đại học”
    • Đây là cách kiểm tra xem mô hình có biết rằng thượng nghị sĩ Bill Bradley từng là cầu thủ bóng rổ và học ở Princeton hay không
  • Cách làm này cho thấy ngay cả khi mô hình đang tập trung vào thông tin khác trong quá trình sinh văn bản, bên trong nó vẫn có thể có nhiều thông tin liên quan được mã hóa
  • Từ đó, một lưới gọi là attribute lens đã được tạo ra
    • Attribute lens trực quan hóa thông tin về một quan hệ cụ thể được lưu ở đâu trong nhiều lớp của transformer
    • Nó có thể được tạo tự động và dùng như một phương pháp đơn giản hóa để hiểu mô hình

Khả năng sửa đáp án sai và các câu hỏi nghiên cứu còn lại

  • Ngay cả khi mô hình trả lời sai trước một prompt, trong nhiều trường hợp nó vẫn lưu thông tin đúng bên trong
  • Cách tiếp cận này có thể được dùng để tìm và sửa thông tin sai lệch bên trong mô hình, từ đó có thể góp phần giảm xu hướng chatbot AI đưa ra câu trả lời thiếu chính xác hoặc vô nghĩa
  • Nghiên cứu trong tương lai sẽ tập trung vào việc hiểu rõ hơn điều gì xảy ra với những sự thật không được lưu theo dạng tuyến tính
  • Nhóm nghiên cứu cũng dự định thử nghiệm trên các mô hình lớn hơn và nghiên cứu độ chính xác của các hàm giải mã tuyến tính
  • Mor Geva Pipek của Tel Aviv University đánh giá rằng nghiên cứu này đã hé lộ một mảnh ghép còn thiếu trong việc hiểu cách LLM hồi tưởng tri thức sự thật khi suy luận, đồng thời cho thấy các phép tính phi tuyến phức tạp để trích xuất thuộc tính có thể được xấp xỉ tốt bằng các hàm tuyến tính đơn giản

1 bình luận

 
GN⁺ 2024-03-29
Ý kiến trên Hacker News
  • Công trình rất ấn tượng, nhưng theo tôi nó cũng cho thấy vấn đề lớn của làn sóng AI hiện nay. Thực tế, lĩnh vực này vẫn không thoát ra khỏi những nơ-ron hay tập quy tắc vốn chẳng khác mấy perceptron với hàm cộng đơn giản
    Chỉ vì pha lan truyền thuận ở mức nơ-ron đơn lẻ là dễ nhất cho việc huấn luyện và chạy trên GPU, không có nghĩa đó thực sự là cách tốt nhất để giải quyết bài toán
    Cũng có rất nhiều phương pháp huấn luyện và cách mã hóa độc đáo không được dùng chỉ vì các thư viện lớn không hỗ trợ, và cho đến khi có thay đổi thật sự ở tập quy tắc nền tảng của mạng nơ-ron, có lẽ chúng ta vẫn sẽ tiếp tục vật lộn với “perceptron có thêm nhiều tầng”

    • Như vậy là bỏ qua cả núi bài báo từng thử xây dựng mô hình bằng mọi cách tiếp cận có thể. Cuối cùng đó vẫn là tiến hóa qua chọn lọc, và transformer là kẻ chiến thắng sau cùng
    • Bạn nói “perceptron là hàm cộng đơn giản”, vậy tôi tò mò không biết bạn sẽ đề xuất gì
      Một khía cạnh của NP-đầy đủ, theo cách tôi hiểu, là mọi thuật toán trong lớp độ phức tạp đó rốt cuộc đều có thể quy về kiểu ‘hàm cộng’ như vậy
    • Tôi không hiểu vì sao lại nói chúng ta đang mắc kẹt ở cực đại cục bộ. Vì chỉ trong 2 năm qua đã có những đột phá khoa học AI theo đúng nghĩa đen
    • Tôi không hiểu chủ đề này đủ sâu, nhưng ngay cả khi các mô hình khác có chỉ số tốt hơn nếu xét cùng số lượng nơ-ron hay cùng thời gian chạy tiệm cận, thì thước đo quan trọng nhất rốt cuộc vẫn là độ đúng và độ chính xác trên số tiền bỏ ra
      Ngay cả khi GPT cần nhiều nơ-ron gấp 10 lần để đạt cùng hiệu năng, nếu chi phí mua tính toán và bộ nhớ cho số nơ-ron đó rẻ hơn, thì GPT vẫn là phương tiện tốt hơn để đạt mục tiêu
    • Đây là bài học cay đắng. http://www.incompleteideas.net/IncIdeas/BitterLesson.html
      Nếu bạn tìm được một cấu trúc đơn giản hơn và có thể học được thì có thể bạn đã nắm được điều gì đó. Những nỗ lực làm mọi thứ phức tạp hơn đã được thử rồi và đều biến mất
  • Tôi tự hỏi câu “sự thật được lưu trữ dưới dạng hàm tuyến tính” có nghĩa là bên trong LLM tồn tại một kiểu không gian sự thật N chiều được mã hóa theo cách nào đó, và các sự thật được cắm vào đó như các điểm, siêu cầu, hay đa tạp Voronoi hay không
    Nếu vậy thì việc gợi lại một sự thật, xét trừu tượng, có phải là mạng nơ-ron tính toán hoặc ghi nhớ một khóa để rồi thực hiện truy vấn khóa-giá trị trong không gian đó không?
    Nếu đúng thế thì tôi cũng muốn biết người ta đưa kho khóa-giá trị vào trong mô hình đồ thị lan truyền theo cạnh như thế nào, và liệu hiện nay đã có kỹ thuật nổi tiếng nào để con người chủ động thiết kế như vậy chưa
    Ngoài ra, liệu kỹ thuật “cung điện ký ức” có thể được xem là một ví dụ cho việc não người đặt sự thật vào các hàm tuyến tính để truy xuất dễ hơn không?

    • Phép toán cơ bản của transformer là softmax(Q.K^T).V, về bản chất rất gần với một truy vấn kho khóa-giá trị
      Bạn lấy tích vô hướng giữa truy vấn và các khóa, rồi dùng softmax để chọn ra chủ yếu một khóa thắng cuộc, tức khóa gần truy vấn nhất, sau đó dùng giá trị tương ứng
      Điểm khác là nó mềm hơn một chút nên có thể khớp nhiều khóa, và có thể tối ưu bằng các phương pháp kiểu gradient descent để tìm được ánh xạ QKV phù hợp
    • Layer normalization dường như giới hạn các vector khổng lồ biểu diễn token, tức các mảnh đầu vào, vào các vị trí trên mặt cầu đơn vị; còn cơ chế attention thì theo tôi hoạt động bằng cách xoay các vector không bị ràng buộc theo tổng các góc của chúng với mọi vector khác
      Tôi chỉ lướt qua bài báo, nhưng điểm chính có vẻ là tồn tại những hàm tương đối đơn giản ẩn bên trong, hoặc có thể trích xuất ra từ, mạng lớn hơn, và chúng xử lý các loại quan hệ cụ thể giữa các khái niệm
      Nếu có thể tách riêng những hàm đó thì về lý thuyết ta có thể tối ưu trực tiếp hơn, và điều này có thể dẫn đến tiến bộ trong cách huấn luyện các mô hình kiểu này
      Rốt cuộc, một trong những phê phán xác đáng với AI “hiện đại” là cảm giác chúng ta chỉ đang khuấy một nồi súp đại số tuyến tính; nhưng nếu cho phép một mức độ mô-đun hóa hay quy giản nào đó, ta có thể tiến gần hơn đến cách tiếp cận dựa trên thành phần thay vì chỉ xem nó như một hộp đen đơn giản
    • Tôi không hiểu vì sao “cung điện ký ức” lại là hàm tuyến tính
    • Cung điện ký ức là một mẹo hoạt động được vì, theo nghĩa tiến hóa, mục đích của bộ não chúng ta là giúp khám phá thế giới và hành động hiệu quả trong đó
      Muốn vậy, não phải rất giỏi ghi nhớ vị trí, lập kế hoạch đường đi trong và ngoài không gian đó, rồi chuyển điều đó thành lời nói hay hành động
  • Thật sự rất thú vị. Tôi lập tức nghĩ đến việc tri thức lập trình được mã hóa thành dạng hàm nào, và nếu đó cũng chỉ là những hàm tuyến tính đơn giản, liệu có thể tải thẳng thư viện chuẩn hay các thư viện khác vào bộ não của LLM mà không cần huấn luyện tốn kém hay fine-tuning làm giảm hiệu năng không
    Hiện giờ vẫn còn như khoa học viễn tưởng, nhưng có vẻ chúng ta đang ngày càng tiến gần hơn

    • Đây là một điểm hay: có lẽ ta sẽ có thể tải trực tiếp thông tin vị từ vào LLM. Điều này đặc biệt hữu ích khi cần mã hóa dữ liệu dạng bảng
      Chắc ở đâu đó đã có người đọc điều này và nghĩ cách xuất Excel hay cơ sở dữ liệu vào LLM
      Việc đã có nghiên cứu nhìn được vào bên trong hộp đen một cách thành công là điều đáng khích lệ
      Một kết quả lớn khác trong lĩnh vực này là bài báo tìm ra biểu diễn của bàn cờ bên trong một LLM được huấn luyện để chơi game. Tôi cũng tò mò liệu còn kết quả tốt nào khác theo hướng này không
      Như các tác giả chỉ ra, LLM không chỉ mã hóa thông tin vị từ, và đó cũng chỉ là một phần trong số đó
  • Tôi tự hỏi liệu quan hệ này có còn giữ nguyên ngay cả ở các mô hình mới nhất được đổ vào nhiều tính toán hơn hay không
    Trực giác của tôi là chính cấu trúc nội tại của ngôn ngữ đã làm cho Word2Vec trở nên khả thi. Sau đó, khi huấn luyện trên hàng terabyte văn bản do con người viết được mã hóa bằng Word2Vec và positional encoding, mô hình dường như có thể dự đoán encoding tiếp theo với mức nhận thức siêu nhân ngay trong lúc huấn luyện
    Tôi có cảm giác bag-of-words với vai trò là cơ chế vào/ra, cùng với cửa sổ ngữ cảnh bị giới hạn để positional encoding hoạt động, tạo ra một sự lệch pha rất lớn với cấu trúc nhận thức bên trong
    Vì vậy, xét đến lượng tính toán lớn hơn rất nhiều đã được đổ vào GPT-4 và các mô hình tương tự, hoàn toàn có khả năng những dạng biểu diễn mới đã tiến hóa, và con người vẫn chưa phát hiện ra vì còn phải dò từng trọng số
    Tôi nghĩ MemGPT rốt cuộc có thể trở thành AGI nhờ bộ nhớ dài hạn không giới hạn, nhưng hình thái có khả năng cao hơn có lẽ sẽ gần với nhân vật chính của Memento
    [1] https://en.wikipedia.org/wiki/Memento_(film)

    • Xin lỗi nếu tôi đọc nhầm, nhưng có vẻ bạn đang nói các LLM dùng GPT-3+ như ChatGPT là mô hình bag-of-words. Chúng là mô hình tuần tự
  • Điều này làm tôi nhớ đến ví dụ embedding nổi tiếng “King - Man + Woman = Queen”. Việc các thuộc tính ngữ nghĩa tồn tại trong embedding giải thích vì sao ngay cả các hàm tuyến tính đơn giản cũng có thể hoạt động tốt

  • Cảm giác khá giống với vector quan hệ của word2vec. Nếu cộng thêm một vector như “của X” thì thường sẽ ra đáp án đúng
    Về nguyên lý thì vẫn vậy, và có thể transformer chỉ đơn giản là đã giỏi hơn nhiều trong việc ánh xạ thực thể vào không gian embedding

    • Tôi cũng nghĩ vậy. Khó mà tin rằng các ranh giới quyết định trong những mô hình này lại uốn lượn đủ nhiều như nếp gấp của não bộ để thật sự tận dụng các vector FP32
      Nói cách khác, thay vì kiểu x = 0 là “bay”, x = 0.01 là “lái xe”, x = 0.02 là “màu tím”, tôi nghĩ nó gần với kiểu x < 1.5 là “lạnh”, x > 1.5 là “nóng” hơn
      Đó cũng là một trong những lý do lượng tử hóa, kể cả lượng tử hóa 1 bit, thường vẫn hoạt động
      Đồng thời đây cũng là lý do vì sao khi đưa văn bản hay hình ảnh vào các mô hình kiểu BERT hoặc CLIP rồi áp dụng các mô hình machine learning cổ điển vốn thường dùng ranh giới quyết định tuyến tính, ta vẫn thu được kết quả tốt
  • LLM trông giống như một cơ chế nén tốt
    Thật đáng kinh ngạc khi có thể để một bản sao llama trên PC cục bộ mà về cơ bản vẫn tiếp cận được gần như toàn bộ internet

    • Hoàn toàn không đến mức “gần như toàn bộ internet”. Thậm chí còn không gần nổi 1%
      Theo bản dump mới nhất, Common Crawl có 4,3 tỷ trang, nhưng Google từng ước tính vào năm 2016 rằng web có 130 nghìn tỷ trang
      Chênh lệch giữa 130 nghìn tỷ và 4,3 tỷ gần như vẫn là 130 nghìn tỷ. Ngay cả nếu thu hẹp xuống chỉ còn chỉ mục văn bản có thể tìm kiếm của Google thì vẫn là “hàng trăm tỷ trang”, khoảng 100PB, so với 400TB của Common Crawl
    • Đúng, nhưng đó là nén mất dữ liệu. Phần bị mất sẽ được bù bằng ảo giác tại thời điểm suy luận
    • Học PAC là nén
      Khả năng học PAC, VC dimension hữu hạn, và dạng nén sau đây là hoàn toàn tương đương
      https://arxiv.org/abs/1610.03592
      Về cơ bản, từng nơ-ron hay perceptron riêng lẻ chỉ làm việc chia không gian thành hai không gian con
  • Tôi không hiểu làm sao một tệp CSV/cơ sở dữ liệu/mô hình có 70 tỷ “tham số” với trọng số 4 bit lại có thể trở thành một LLM/GPT hội thoại gần như thông thái về mọi chủ đề
    Tìm hiểu thì có phải 4 bit chỉ là một cách nén, và rốt cuộc mô hình vẫn nhìn thấy f32?
    Lượng tử hóa được mô tả là quá trình ánh xạ các số thực dấu phẩy động 32 bit — tức trọng số của mạng nơ-ron — sang biểu diễn ít bit hơn nhiều, như giá trị 4 bit, để tiết kiệm lưu trữ và bộ nhớ
    Giải lượng tử hóa xảy ra khi mô hình được sử dụng, tức trong suy luận hoặc đôi khi cả lúc huấn luyện, khi các trọng số lượng tử hóa 4 bit được chuyển ngược thành các số dấu phẩy động dùng cho tính toán thực tế
    Vậy tôi tự hỏi mối quan hệ giữa “tham số” và “số lượng token riêng biệt mà mô hình biết”, tức kích thước từ vựng, là gì
    Bề ngoài thì có vẻ LLaMA chỉ có kích thước từ vựng 32.000 và 65 tỷ tham số khi so với GPT-3
    65 tỷ tham số của một mô hình như LLaMA được cho là hoạt động như một hệ thống ánh xạ cực kỳ phức tạp, quyết định cách phản hồi đầu vào dựa trên các quan hệ đã học giữa các token trong dữ liệu huấn luyện

    • Câu trả lời ngắn gọn là: nó không trở thành như vậy
      Nói dài hơn một chút thì ngay cả một bản dump văn bản Wikipedia đã nén cũng chưa đến 70GB, và đây là dạng nén mất dữ liệu của internet
    • Ở đây, lượng tử hóa nói đến độ chính xác của từng giá trị trong vector, ma trận hoặc tensor
      Nếu embedding token của mô hình đó có độ dài 1024, thì ngay cả với lượng tử hóa 1 bit, mỗi token vẫn có 2^1024 giá trị khả dĩ
      Nếu độ dài ngữ cảnh là 32.000 token, thì số đầu vào khả dĩ là 32,000^2^1024
  • Có thể nói một cách khái quát rằng ở chế độ học, LLM tự động tạo ra vô số quy tắc IF-THEN từ lượng thông tin khổng lồ mà trước đây là bất khả thi không?

  • Bài báo này rất hay, và tôi cũng thích việc họ đã chạy thí nghiệm để kiểm chứng những ý tưởng này. Chỉ là tôi không chắc bản thân ý tưởng đó mới đến mức nào
    Nếu LLM tự nhiên học được những xu hướng thống kê đơn giản giữa các từ, thì chẳng phải các kết quả như vậy là điều có thể dự đoán được sao?
    Ngược lại, điều thú vị hơn nhiều là nó cho thấy rõ rằng không phải mọi hành vi của LLM đều có thể được giải thích đơn giản theo cách này