XYZNOT

Bài báo · arXiv 2401.04088

Mixtral of Experts

Xuất bản cs.LGcs.CL arXivPDF

Đọc với bản dịch và AI

Tóm tắt trong ba dòng

  1. 🎯 Mở rộng dung lượng và hiệu năng của transformer mà không làm tăng độ trễ suy luận cùng chi phí tính toán quá mức.
  2. 🔧 Kiến trúc decoder-only dạng Sparse Mixture of Experts (SMoE) thay thế các khối truyền thẳng tiêu chuẩn bằng 8 chuyên gia SwiGLU, chọn 2 chuyên gia cho mỗi token thông qua bộ định tuyến học được.
  3. 📈 Tiếp cận tổng cộng 47B tham số nhưng chỉ kích hoạt 13B tham số trên mỗi token, vượt trội hơn Llama 2 70B trên MMLU (70,6% so với 69,9%) và GSM8K (74,4% so với 69,6%).

Tóm tắt

Chúng tôi giới thiệu Mixtral 8x7B, một mô hình ngôn ngữ dạng Sparse Mixture of Experts (SMoE). Mixtral sở hữu kiến trúc tương tự như Mistral 7B, với điểm khác biệt là mỗi tầng được cấu thành từ 8 khối truyền thẳng (tức các chuyên gia - experts). Đối với mỗi token ở từng tầng, một mạng định tuyến (router) sẽ chọn ra hai chuyên gia để xử lý trạng thái hiện tại và kết hợp các đầu ra của chúng. Dù mỗi token chỉ đi qua hai chuyên gia, các chuyên gia được chọn có thể thay đổi ở mỗi bước thời gian. Do đó, mỗi token có quyền truy cập vào 47B tham số, nhưng chỉ sử dụng 13B tham số kích hoạt trong quá trình suy luận. Mixtral được huấn luyện với kích thước ngữ cảnh 32k token và đạt hiệu năng vượt trội hoặc tương đương Llama 2 70B cùng GPT-3.5 trên tất cả các benchmark được đánh giá. Đặc biệt, Mixtral vượt trội đáng kể so với Llama 2 70B về toán học, sinh mã lệnh và các benchmark đa ngôn ngữ. Chúng tôi cũng cung cấp phiên bản tinh chỉnh theo chỉ dẫn, Mixtral 8x7B - Instruct, vượt qua GPT-3.5 Turbo, Claude-2.1, Gemini Pro và mô hình Llama 2 70B - chat trên các benchmark đánh giá bởi con người. Cả mô hình nền tảng và mô hình instruct đều được phát hành theo giấy phép Apache 2.0.

Tóm tắt gốc (tiếng Anh)

We introduce Mixtral 8x7B, a Sparse Mixture of Experts (SMoE) language model. Mixtral has the same architecture as Mistral 7B, with the difference that each layer is composed of 8 feedforward blocks (i.e. experts). For every token, at each layer, a router network selects two experts to process the current state and combine their outputs. Even though each token only sees two experts, the selected experts can be different at each timestep. As a result, each token has access to 47B parameters, but only uses 13B active parameters during inference. Mixtral was trained with a context size of 32k tokens and it outperforms or matches Llama 2 70B and GPT-3.5 across all evaluated benchmarks. In particular, Mixtral vastly outperforms Llama 2 70B on mathematics, code generation, and multilingual benchmarks. We also provide a model fine-tuned to follow instructions, Mixtral 8x7B - Instruct, that surpasses GPT-3.5 Turbo, Claude-2.1, Gemini Pro, and Llama 2 70B - chat model on human benchmarks. Both the base and instruct models are released under the Apache 2.0 license.

Hướng dẫn đọc

Vấn đề và động lực

Các mô hình ngôn ngữ tự hồi quy dày đặc (dense) đòi hỏi chi phí tính toán tỷ lệ thuận trực tiếp với tổng số lượng tham số cho mỗi token được xử lý. Khi các mô hình mở rộng lên quy mô 70B tham số và lớn hơn, việc triển khai phục vụ (serving) với độ trễ thấp và thông lượng cao trở nên vô cùng tốn kém. Các tác giả đặt mục tiêu mở rộng dung lượng mô hình nhưng vẫn giữ chi phí suy luận trên mỗi token tương đương với các mô hình nhỏ hơn nhiều, tạo ra một mô hình trọng số mở có khả năng tương đương hoặc vượt qua Llama 2 70B cùng các mô hình thương mại đóng vai trò cơ sở so sánh như GPT-3.5.

Ý tưởng cốt lõi

  • Sparse Mixture of Experts (SMoE): Thay thế các khối mạng truyền thẳng (FFN) dày đặc trên toàn bộ 32 tầng transformer bằng 8 mạng chuyên gia riêng biệt, chỉ định tuyến mỗi token đến top-2 chuyên gia hàng đầu.
  • Tách rời số lượng tham số tổng và kích hoạt: Kiến trúc chứa tổng cộng 47B tham số trên các tầng, nhưng chỉ thực thi 13B tham số kích hoạt cho mỗi lượt truyền xuôi (forward pass) của token, tương đương với mức sử dụng tính toán của một mô hình dense kích thước trung bình.
  • Cửa sổ ngữ cảnh đầy đủ 32k: Hỗ trợ tự nhiên độ dài chuỗi 32.768 token với độ chính xác truy xuất 100% trên các benchmark passkey.
  • Định tuyến theo cú pháp thay vì chủ đề: Phân tích thực nghiệm về việc định tuyến token cho thấy việc lựa chọn chuyên gia chủ yếu dựa vào chức năng cú pháp và tính cục bộ theo thời gian hơn là các miền chủ đề cấp cao.

Phương pháp (kèm các phương trình chính)

Mixtral sửa đổi kiến trúc Mistral 7B ( tầng, số chiều ẩn , attention head, key-value head) bằng cách thay thế mỗi khối con FFN bằng một mô-đun MoE bao gồm chuyên gia (), mỗi chuyên gia được triển khai dưới dạng một mạng SwiGLU với số chiều trung gian .

Đối với biểu diễn token đầu vào , một mạng định tuyến sẽ tính toán phân phối cổng thưa (sparse gating) trên các chuyên gia bằng cách sử dụng các giá trị logit top- (): trong đó toán tử Top-K gán giá trị cho tất cả các tọa độ nằm ngoài giá trị lớn nhất của logits :

Đầu ra tổng thể của tầng được tính bằng tổng có trọng số cổng của các đầu ra từ các chuyên gia: Việc thực thi hiệu quả đạt được thông qua các kernel như MegaBlocks, biểu diễn tính toán MoE dưới dạng phép nhân ma trận thưa, kết hợp với kỹ thuật Song song hóa Chuyên gia (Expert Parallelism) trên nhiều GPU.

Kết quả (kèm các số liệu quan trọng nhất)

  • Benchmark tổng quát & suy luận: Trên MMLU (5-shot), Mixtral 8x7B đạt 70,6% so với 69,9% của Llama 2 70B và 70,0% của GPT-3.5. Trên GSM8K (8-shot, maj@8), mô hình đạt 74,4% so với 69,6% của Llama 2 70B. Trên benchmark MATH (4-shot, maj@4), Mixtral đạt 28,4% so với 13,8% của Llama 2 70B.
  • Sinh mã lệnh: Mixtral vượt trội đáng kể so với Llama 2 70B trên HumanEval (40,2% so với 29,3%) và MBPP (60,7% so với 49,8%).
  • Tác vụ đa ngôn ngữ: Việc tăng tần suất lấy mẫu dữ liệu đa ngôn ngữ giúp Mixtral vượt qua Llama 2 70B trên tiếng Pháp, tiếng Đức, tiếng Tây Ban Nha và tiếng Ý trong ARC-Challenge, HellaSwag và MMLU (ví dụ: MMLU tiếng Pháp: 70,9% so với 64,3%).
  • Tinh chỉnh chỉ dẫn & Điểm Arena Elo: Mixtral 8x7B – Instruct (được huấn luyện với SFT và Direct Preference Optimization) đạt 8,30 điểm trên MT-Bench và đạt mức Elo 1121 trên LMSys Chatbot Arena, vượt qua Claude-2.1 (1117), GPT-3.5-Turbo (1117) và Llama-2-70b-chat (1077).
  • Truy xuất ngữ cảnh: Đạt độ chính xác truy xuất 100% trên tác vụ truy xuất passkey tổng hợp trên toàn bộ cửa sổ ngữ cảnh 32k.

Hạn chế và các câu hỏi mở

  • Dung lượng bộ nhớ so với Chi phí tính toán: Mặc dù chi phí tính toán tương đương với 13B tham số kích hoạt, việc phục vụ mô hình đòi hỏi đủ VRAM để chứa toàn bộ 47B tham số, yêu cầu thiết lập đa GPU hoặc các kỹ thuật offloading.
  • Nghẽn cổ chai trong Song song hóa Chuyên gia: Nghiên cứu phát hiện tính cục bộ thời gian cao—các token liên tiếp chia sẻ các phép gán chuyên gia thường xuyên hơn nhiều so với ngẫu nhiên (lên tới 28,4% tỷ lệ lặp lại lựa chọn đầu tiên ở tầng 15 so với 12,5% ngẫu nhiên). Điều này có thể gây mất cân bằng tải và quá tải một số GPU cụ thể khi dùng Expert Parallelism.
  • Thiếu sự chuyên môn hóa theo chủ đề: Việc lựa chọn của router không tự động phân vùng theo các miền khái niệm (ví dụ: sinh học so với triết học), để lại câu hỏi mở về cách cấu trúc cơ chế định tuyến nếu muốn các chuyên gia chuyên môn hóa rõ ràng theo từng miền cụ thể.

Thuật ngữ chính

Sparse Mixture of Experts (SMoE)
Một kiến trúc mạng nơ-ron nơi việc tính toán có điều kiện định tuyến mỗi token đầu vào đến một tập con thưa gồm các mạng con truyền thẳng (các chuyên gia) thay vì kích hoạt toàn bộ tham số.
Active Parameter Count
Số lượng tham số thực sự được tải và tính toán trong quá trình suy luận cho một token đơn lẻ, con số này là 13B ở Mixtral so với tổng số 47B tham số thưa của mô hình.
SwiGLU
Một biến thể kích hoạt đơn vị tuyến tính có cổng kết hợp hàm Swish và phép nhân từng phần tử, được sử dụng làm kiến trúc bên trong của mỗi khối truyền thẳng chuyên gia.
TopK Gating
Cơ chế định tuyến áp dụng phép chiếu tuyến tính lên biểu diễn của token, giữ lại K giá trị lớn nhất trong khi che các giá trị còn lại bằng âm vô cùng, sau đó chuẩn hóa chúng thông qua hàm softmax.
Expert Parallelism (EP)
Chiến lược phân vùng phân tán ánh xạ các chuyên gia khác nhau vào các GPU riêng biệt và định tuyến các kích hoạt của token qua các thiết bị đến chuyên gia được chỉ định tương ứng.
Direct Preference Optimization (DPO)
Thuật toán căn chỉnh tối ưu hóa trực tiếp các tham số của mô hình ngôn ngữ dựa trên các cặp sở thích mà không cần huấn luyện một mô hình phần thưởng học tăng cường tường minh.
Passkey Retrieval
Bài kiểm tra đánh giá tổng hợp đo lường khả năng của mô hình trong việc xác định vị trí và trả về một chuỗi khóa ngắn (passkey) được đặt ngẫu nhiên trong các câu lệnh ngữ cảnh dài lên đến 32k token.
Positional Locality
Khuynh hướng được quan sát thấy trong đó các token liên tiếp trong một chuỗi liên tục được gán cho cùng một chuyên gia với xác suất cao hơn nhiều so với phân phối ngẫu nhiên đồng đều.

Câu hỏi thường gặp

Tại sao Mixtral được gọi là 8x7B nếu nó chỉ có 47B tham số thay vì 56B?

Mặc dù có 8 chuyên gia trên mỗi tầng và kiến trúc bắt nguồn từ Mistral 7B, các trọng số self-attention và các tầng embedding được dùng chung cho tất cả các chuyên gia. Chỉ có các khối con truyền thẳng là được nhân bản 8 lần, dẫn đến tổng cộng 47B tham số thay vì 8 × 7B = 56B.

Có bao nhiêu chuyên gia được kích hoạt cho mỗi token trong quá trình suy luận?

Bộ định tuyến chọn chính xác 2 chuyên gia () trong số 8 chuyên gia có sẵn ở mỗi tầng cho từng token, dẫn đến 13B tham số kích hoạt trong mỗi lượt truyền xuôi.

Các chuyên gia khác nhau có chuyên môn hóa vào các chủ đề học thuật hoặc lĩnh vực khác nhau không?

Không tìm thấy sự chuyên biệt rõ ràng theo miền nội dung. Phân tích trên The Pile cho thấy phân phối phân bổ chuyên gia gần như giống hệt nhau trên các chủ đề như ArXiv, PubMed và PhilPapers; thay vào đó, các quyết định định tuyến tương quan chặt chẽ với cú pháp, danh tính token và tính cục bộ vị trí.

Các mô hình Mixtral 8x7B được phát hành theo giấy phép phần mềm nào?

Cả mô hình nền tảng Mixtral 8x7B và Mixtral 8x7B – Instruct đều được phát hành theo giấy phép Apache 2.0 cấp phép rộng rãi cho mục đích học thuật và thương mại.

Phần giải thích trên trang này do AI viết dựa trên bài báo và có thể có sai sót. Hãy đọc bài báo gốc để biết chi tiết.

Đọc với bản dịch và AI