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ợ với 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 transformer ban đầu được đề xuất trong bài báo nổi tiếng “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 nội bộ 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, các đổi mới kiến trúc và các chi tiết thực hiện đã thúc đẩy những mô hình này đến vị trí hàng đầu trong nghiên cứu và ứng dụng NLP.
Kiến trúc Transformer: Một Lời Giới Thiệu
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 xem lại kiến trúc transformer, nền tảng mà những mô hình này được xây dựng. Transformer đã 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 kết hợp.
Kiến trúc transformer 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 Transformer
Tại trung tâm của transformer 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:
- Đề xuất Truy vấn, Khóa và Giá trị: Chuỗi đầu vào được chiếu vào ba biểu diễn riêng biệt: truy vấn (Q), khóa (K) và giá trị (V). Những biểu diễ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 vectơ truy vấn tương ứng và tất cả vectơ 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 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 vectơ 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ộ 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ã nguyên nhân 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 Transformer 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ã Nguyên nhân
Kiến trúc giải mã nguyên nhân 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 quá khứ và chính nó. Cả token đầu vào và đầu ra đượ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 kinh ngạc. Nhiều LLM, bao gồm OPT, BLOOM và Gopher, đã áp dụng rộng rãi bộ giải mã nguyên nhân.
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 nguyên nhân, kiến trúc giải mã tiền tố sửa đổi cơ chế mặt nạ của bộ giải mã nguyên nhân để 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ã, 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ả ba loại kiến trúc này có thể được mở rộng bằng cách sử dụng kỹ thuật trộn chuyên gia (MoE), cho phép mô hình kết hợp nhiều mô hình chuyên gia, mỗi chuyên gia chuyên về một tập hợp con cụ thể của dữ liệu hoặc nhiệm vụ. 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ỉ Transformer: Ứng dụng Tính Tự Hồi quy
Mặc dù kiến trúc transformer 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 bởi các token được tạo trước đó.
Bộ giải mã chỉ transformer, một biến thể đơn giản hóa của kiến trúc transformer, 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ỉ transformer và bộ giải mã transformer ban đầu nằm trong cơ chế chú ý tự. Trong thiết lập 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à nguyên nhân. Đ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à mặt nạ chúng ra 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 các token, có thể là từ, subword 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à độ hạt 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 biểu diễn vector 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í: Mô hình transformer 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í, nhúng vị trí được thêm vào 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 đượ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ộ 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 hoạt động và gradient, cải thiện hơn nữa sự ổn định đào tạo và hiệu suất.
Lớp Truyền Tiếp
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 tiếp, áp dụng một mạng nơ-ron truyền tiếp đơ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 tiếp 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à Transformer Hiệu quả
Mặc dù cơ chế chú ý tự là 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ó trở nên tốn kém về tính toán đối với 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 hợ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 vẫn 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 transformer 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 đủ.
Đệm Cache Bộ nhớ Trượt: Để giảm hơn nữa 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 một đệm cache bộ nhớ trượt. Kỹ thuật này lưu trữ và tái sử dụng các vectơ 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ú ý Truy vấn Nhóm: Được giới thiệu trong mô hình LLaMA 2, chú ý truy vấn 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 vẫn duy trì kết quả chất lượng cao.














