Trí tuệ nhân tạo
Mô hình Ngôn ngữ Lớn Dựa trên Bộ giải mã: Hướng dẫn Toàn diện
Mô hình Ngôn ngữ Lớn (LLM) đã cách mạng hóa lĩnh vực xử lý ngôn ngữ tự nhiên (NLP) bằng cách thể hiện khả năng đáng kinh ngạc trong việc tạo ra văn bản giống con người, trả lời câu hỏi và hỗ trợ nhiều nhiệm vụ liên quan đến ngôn ngữ. Tại trung tâm của những mô hình mạnh mẽ này là kiến trúc bộ giải mã chỉ, một biến thể của kiến trúc bộ chuyển đổi ban đầu được đề xuất trong bài báo cơ bản “Chú ý là Tất cả những gì Bạn Cần” của Vaswani et al.
Trong hướng dẫn toàn diện này, chúng tôi sẽ khám phá các hoạt động bên trong của LLM dựa trên bộ giải mã, đi sâu vào các khối xây dựng cơ bản, đổi mới kiến trúc và chi tiết triển khai đã thúc đẩy những mô hình này lên vị trí hàng đầu trong nghiên cứu và ứng dụng NLP.
Kiến trúc Bộ chuyển đổi: Một Bài ôn lại
Trước khi đi sâu vào các đặc điểm của LLM dựa trên bộ giải mã, điều quan trọng là phải ôn lại kiến trúc bộ chuyển đổi, nền tảng mà những mô hình này được xây dựng. Bộ chuyển đổi đã giới thiệu một cách tiếp cận mới để mô hình hóa chuỗi, dựa hoàn toàn vào các cơ chế chú ý để bắt捉 các phụ thuộc dài hạn trong dữ liệu, mà không cần các lớp hồi quy hoặc convolutional.
Kiến trúc bộ chuyển đổi ban đầu bao gồm hai thành phần chính: bộ mã hóa và bộ giải mã. Bộ mã hóa xử lý chuỗi đầu vào và tạo ra một biểu diễn được ngữ cảnh hóa, sau đó được bộ giải mã tiêu thụ để tạo ra chuỗi đầu ra. Kiến trúc này ban đầu được thiết kế cho các nhiệm vụ dịch máy, nơi bộ mã hóa xử lý câu đầu vào trong ngôn ngữ nguồn và bộ giải mã tạo ra câu tương ứng trong ngôn ngữ đích.
Chú ý Tự: Chìa khóa cho Thành công của Bộ chuyển đổi
Ở trung tâm của bộ chuyển đổi là cơ chế chú ý tự, một kỹ thuật mạnh mẽ cho phép mô hình đánh giá và tổng hợp thông tin từ các vị trí khác nhau trong chuỗi đầu vào. Không giống như các mô hình chuỗi truyền thống, xử lý các token đầu vào tuần tự, chú ý tự cho phép mô hình bắt捉 các phụ thuộc giữa bất kỳ cặp token nào, bất kể vị trí của chúng trong chuỗi.
Hoạt động chú ý tự có thể được chia thành ba bước chính:
- Phát triển Truy vấn, Khóa và Giá trị: Chuỗi đầu vào được phát triển thành ba biểu diễn riêng biệt: truy vấn (Q), khóa (K) và giá trị (V). Những phát triển này được thu được bằng cách nhân đầu vào với các ma trận trọng số đã học.
- Tính toán Điểm Chú ý: Đối với mỗi vị trí trong chuỗi đầu vào, các điểm chú ý được tính toán bằng cách lấy tích chấm giữa vector truy vấn tương ứng và tất cả vector khóa. Những điểm này đại diện cho sự liên quan của mỗi vị trí với vị trí hiện tại đang được xử lý.
- Tổng hợp Có trọng số của Giá trị: Các điểm chú ý được chuẩn hóa bằng cách sử dụng hàm softmax, và các trọng số chú ý kết quả được sử dụng để tính tổng hợp có trọng số của các vector giá trị, tạo ra biểu diễn đầu ra cho vị trí hiện tại.
Chú ý đa đầu, một biến thể của cơ chế chú ý tự, cho phép mô hình bắt捉 các loại mối quan hệ khác nhau bằng cách tính toán điểm chú ý trên nhiều “đầu” song song, mỗi đầu có bộ phát triển truy vấn, khóa và giá trị riêng.
Biến thể Kiến trúc và Cấu hình
Mặc dù các nguyên tắc cốt lõi của LLM dựa trên bộ giải mã vẫn nhất quán, các nhà nghiên cứu đã khám phá các biến thể kiến trúc và cấu hình khác nhau để cải thiện hiệu suất, hiệu quả và khả năng tổng quát hóa. Trong phần này, chúng tôi sẽ đi sâu vào các lựa chọn kiến trúc khác nhau và ý nghĩa của chúng.
Loại Kiến trúc
LLM dựa trên bộ giải mã có thể được phân loại rộng rãi thành ba loại chính: mã hóa-giải mã, giải mã nhân quả và giải mã tiền tố. Mỗi loại kiến trúc thể hiện các mẫu chú ý khác biệt.
Kiến trúc Mã hóa-Giải mã
Dựa trên mô hình Bộ chuyển đổi vanilla, kiến trúc mã hóa-giải mã bao gồm hai ngăn xếp: bộ mã hóa và bộ giải mã. Bộ mã hóa sử dụng các lớp chú ý tự đa đầu xếp chồng để mã hóa chuỗi đầu vào và tạo ra các biểu diễn ẩn. Bộ giải mã sau đó thực hiện chú ý chéo trên những biểu diễn này để tạo ra chuỗi đích. Mặc dù hiệu quả trong nhiều nhiệm vụ NLP, chỉ có một số LLM, như Flan-T5,采用 kiến trúc này.
Kiến trúc Giải mã Nhân quả
Kiến trúc giải mã nhân quả kết hợp một mặt nạ chú ý đơn hướng, cho phép mỗi token đầu vào chỉ chú ý đến các token trong quá khứ và chính nó. Cả token đầu vào và đầu ra đều được xử lý trong cùng một bộ giải mã. Các mô hình đáng chú ý như GPT-1, GPT-2 và GPT-3 được xây dựng trên kiến trúc này, với GPT-3 thể hiện khả năng học trong ngữ cảnh đáng kể. Nhiều LLM, bao gồm OPT, BLOOM và Gopher, đã áp dụng rộng rãi bộ giải mã nhân quả.
Kiến trúc Giải mã Tiền tố
Còn được gọi là kiến trúc giải mã không nhân quả, kiến trúc giải mã tiền tố sửa đổi cơ chế mặt nạ của bộ giải mã nhân quả để cho phép chú ý hai chiều trên các token tiền tố và chú ý đơn hướng trên các token được tạo. Giống như kiến trúc mã hóa-giải mã, các bộ giải mã tiền tố có thể mã hóa chuỗi tiền tố hai chiều và dự đoán các token đầu ra tự hồi quy bằng cách sử dụng các tham số chung. LLM dựa trên bộ giải mã tiền tố bao gồm GLM130B và U-PaLM.
Tất cả三个 loại kiến trúc đều có thể được mở rộng bằng cách sử dụng kỹ thuật trộn chuyên gia (MoE), kỹ thuật này hoạt động thưa một tập hợp con của trọng số mạng nơ-ron cho mỗi đầu vào. Cách tiếp cận này đã được áp dụng trong các mô hình như Switch Transformer và GLaM, với việc tăng số lượng chuyên gia hoặc kích thước tham số tổng thể cho thấy sự cải thiện hiệu suất đáng kể.
Bộ giải mã Chỉ: Ứng dụng Tính tự hồi quy
Mặc dù kiến trúc bộ chuyển đổi ban đầu được thiết kế cho các nhiệm vụ chuỗi-sang-chuỗi như dịch máy, nhiều nhiệm vụ NLP, như mô hình hóa ngôn ngữ và tạo văn bản, có thể được định hình như các vấn đề tự hồi quy, nơi mô hình tạo ra một token tại một thời điểm, có điều kiện dựa trên các token được tạo trước đó.
Bộ giải mã chỉ, một biến thể đơn giản hóa của kiến trúc bộ chuyển đổi, giữ lại chỉ thành phần bộ giải mã. Kiến trúc này đặc biệt phù hợp với các nhiệm vụ tự hồi quy, vì nó tạo ra các token đầu ra một cách tuần tự, tận dụng các token được tạo trước đó làm ngữ cảnh đầu vào.
Sự khác biệt chính giữa bộ giải mã chỉ và bộ giải mã bộ chuyển đổi ban đầu nằm trong cơ chế chú ý tự. Trong cài đặt bộ giải mã chỉ, hoạt động chú ý tự được sửa đổi để ngăn mô hình chú ý đến các token trong tương lai, một tính chất được gọi là nhân quả. Điều này được thực hiện thông qua một kỹ thuật gọi là “chú ý tự mặt nạ”, nơi các điểm chú ý tương ứng với các vị trí trong tương lai được đặt thành âm vô cùng, hiệu quả là loại bỏ chúng trong bước chuẩn hóa softmax.
Thành phần Kiến trúc của LLM dựa trên Bộ giải mã
Mặc dù các nguyên tắc cốt lõi của chú ý tự và chú ý tự mặt nạ vẫn giống nhau, các LLM dựa trên bộ giải mã hiện đại đã giới thiệu một số đổi mới kiến trúc để cải thiện hiệu suất, hiệu quả và khả năng tổng quát hóa. Hãy khám phá một số thành phần và kỹ thuật chính được sử dụng trong các LLM hàng đầu.
Biểu diễn Đầu vào
Trước khi xử lý chuỗi đầu vào, LLM dựa trên bộ giải mã sử dụng các kỹ thuật phân tích cú pháp và nhúng để chuyển đổi văn bản thô thành một biểu diễn số phù hợp với mô hình.
Phân tích cú pháp: Quá trình phân tích cú pháp chuyển đổi văn bản đầu vào thành một chuỗi token, có thể là từ, phụ từ hoặc thậm chí các ký tự riêng lẻ, tùy thuộc vào chiến lược phân tích cú pháp được sử dụng. Các kỹ thuật phân tích cú pháp phổ biến cho LLM bao gồm Mã hóa Cặp Byte (BPE), SentencePiece và WordPiece. Những phương pháp này nhằm tìm kiếm sự cân bằng giữa kích thước từ vựng và độ mịn của biểu diễn, cho phép mô hình xử lý các từ hiếm hoặc không có trong từ vựng một cách hiệu quả.
Nhúng Token: Sau khi phân tích cú pháp, mỗi token được ánh xạ đến một vector biểu diễn dày gọi là nhúng token. Những nhúng này được học trong quá trình đào tạo và bắt捉 các mối quan hệ ngữ nghĩa và cú pháp giữa các token.
Nhúng Vị trí: Bộ chuyển đổi xử lý toàn bộ chuỗi đầu vào đồng thời, thiếu khái niệm vị trí token vốn có trong các mô hình hồi quy. Để kết hợp thông tin vị trí, các nhúng vị trí được thêm vào các nhúng token, cho phép mô hình phân biệt giữa các token dựa trên vị trí của chúng trong chuỗi. Các LLM đầu tiên sử dụng nhúng vị trí cố định dựa trên hàm sinus, trong khi các mô hình gần đây hơn đã khám phá nhúng vị trí có thể học hoặc các kỹ thuật mã hóa vị trí thay thế như nhúng vị trí quay.
Khối Chú ý Đa Đầu
Các khối xây dựng cơ bản của LLM dựa trên bộ giải mã là các lớp chú ý đa đầu, thực hiện hoạt động chú ý tự mặt nạ được mô tả trước đó. Những lớp này được xếp chồng nhiều lần, với mỗi lớp chú ý đến đầu ra của lớp trước, cho phép mô hình bắt捉 các phụ thuộc và biểu diễn ngày càng phức tạp.
Đầu Chú ý: Mỗi lớp chú ý đa đầu bao gồm nhiều “đầu chú ý“, mỗi đầu có bộ phát triển truy vấn, khóa và giá trị riêng. Điều này cho phép mô hình chú ý đến các khía cạnh khác nhau của đầu vào đồng thời, bắt捉 các mối quan hệ và mẫu đa dạng.
Kết nối Dư và Chuẩn hóa Lớp: Để tạo điều kiện cho việc đào tạo các mạng sâu và giảm thiểu vấn đề gradient biến mất, LLM dựa trên bộ giải mã sử dụng kết nối dư và kỹ thuật chuẩn hóa lớp. Kết nối dư thêm đầu vào của một lớp vào đầu ra của nó, cho phép gradient chảy dễ dàng hơn trong quá trình ngược. Chuẩn hóa lớp giúp ổn định các hoạt động và gradient, cải thiện thêm sự ổn định và hiệu suất của đào tạo.
Lớp Truyền thẳng
Ngoài các lớp chú ý đa đầu, LLM dựa trên bộ giải mã kết hợp các lớp truyền thẳng, áp dụng một mạng nơ-ron truyền thẳng đơn giản cho mỗi vị trí trong chuỗi. Những lớp này giới thiệu các phi tuyến tính và cho phép mô hình học các biểu diễn phức tạp hơn.
Hàm Kích hoạt: Lựa chọn hàm kích hoạt trong các lớp truyền thẳng có thể ảnh hưởng đáng kể đến hiệu suất của mô hình. Trong khi các LLM đầu tiên dựa vào hàm kích hoạt ReLU rộng rãi, các mô hình gần đây hơn đã áp dụng các hàm kích hoạt tinh vi hơn như Gaussian Error Linear Unit (GELU) hoặc kích hoạt SwiGLU, đã thể hiện hiệu suất cải thiện.
Chú ý Thưa và Bộ chuyển đổi Hiệu quả
Mặc dù cơ chế chú ý tự mạnh mẽ, nó đi kèm với độ phức tạp tính toán bậc hai đối với độ dài chuỗi, khiến nó tốn kém về mặt tính toán cho các chuỗi dài. Để giải quyết thách thức này, một số kỹ thuật đã được đề xuất để giảm yêu cầu tính toán và bộ nhớ của chú ý tự, cho phép xử lý hiệu quả các chuỗi dài hơn.
Chú ý Thưa: Các kỹ thuật chú ý thưa, như được sử dụng trong mô hình GPT-3, chọn lọc chú ý đến một tập con các vị trí trong chuỗi đầu vào, thay vì tính toán điểm chú ý cho tất cả các vị trí. Điều này có thể giảm đáng kể độ phức tạp tính toán trong khi duy trì hiệu suất hợp lý.
Chú ý Cửa sổ Trượt: Được giới thiệu trong mô hình Mistral 7B, chú ý cửa sổ trượt (SWA) là một kỹ thuật đơn giản nhưng hiệu quả, hạn chế phạm vi chú ý của mỗi token đến một kích thước cửa sổ cố định. Cách tiếp cận này tận dụng khả năng của các lớp bộ chuyển đổi truyền tải thông tin qua nhiều lớp, hiệu quả tăng phạm vi chú ý mà không có độ phức tạp bậc hai của chú ý tự đầy đủ.
Bộ nhớ đệm Cửa sổ Trượt: Để giảm thêm yêu cầu bộ nhớ, đặc biệt là đối với các chuỗi dài, mô hình Mistral 7B sử dụng bộ nhớ đệm cửa sổ trượt. Kỹ thuật này lưu trữ và tái sử dụng các vector khóa và giá trị đã tính toán cho một kích thước cửa sổ cố định, tránh các tính toán trùng lặp và giảm thiểu sử dụng bộ nhớ.
Chú ý Câu hỏi Nhóm: Được giới thiệu trong mô hình LLaMA 2, chú ý câu hỏi nhóm (GQA) là một biến thể của cơ chế chú ý đa truy vấn, chia các đầu chú ý thành các nhóm, mỗi nhóm chia sẻ một ma trận khóa và giá trị chung. Cách tiếp cận này tìm kiếm sự cân bằng giữa hiệu quả của chú ý đa truy vấn và hiệu suất của chú ý tự chuẩn, cung cấp thời gian suy luận cải thiện trong khi duy trì kết quả chất lượng cao.














