Tracks
Huấn luyện các mô hình ngôn ngữ lớn (LLM) thường đòi hỏi nhiều tài nguyên tính toán, điều này có thể là rào cản đối với nhiều tổ chức và nhà nghiên cứu.
Kỹ thuật mixture of experts (MoE) giải quyết thách thức này bằng cách chia nhỏ các mô hình lớn thành những mạng chuyên biệt nhỏ hơn.
Khái niệm MoE bắt nguồn từ bài báo năm 1991 Adaptive Mixture of Local Experts. Kể từ đó, MoE đã được áp dụng trong các mô hình có hàng nghìn tỷ tham số, chẳng hạn như Switch Transformers 1,6 nghìn tỷ tham số được mở mã nguồn.
Trong bài viết này, tôi sẽ đi sâu khám phá MoE, bao gồm các ứng dụng, lợi ích và thách thức của nó.
Mixture of Experts (MoE) là gì?
Hãy hình dung một mô hình AI như một đội ngũ chuyên gia, mỗi người có một mảng chuyên môn riêng. Mô hình mixture of experts (MoE) hoạt động dựa trên nguyên tắc này bằng cách chia một nhiệm vụ phức tạp cho các mạng nhỏ hơn, chuyên biệt gọi là “chuyên gia”.
Mỗi chuyên gia tập trung vào một khía cạnh cụ thể của vấn đề, giúp mô hình xử lý nhiệm vụ hiệu quả và chính xác hơn. Tương tự như có bác sĩ cho vấn đề y tế, thợ máy cho xe cộ và đầu bếp cho việc nấu nướng—mỗi chuyên gia xử lý phần việc mà họ giỏi nhất.
Bằng cách phối hợp, các chuyên gia này có thể giải quyết phạm vi vấn đề rộng hơn hiệu quả hơn so với một người tổng quát đơn lẻ.
Hãy xem sơ đồ dưới đây—chúng ta sẽ giải thích ngay sau đó.

Hãy phân tích các thành phần của sơ đồ này:
- Đầu vào: Đây là vấn đề hoặc dữ liệu bạn muốn AI xử lý.
- Chuyên gia: Đây là các mô hình AI nhỏ hơn, mỗi mô hình được huấn luyện để giỏi một phần cụ thể của vấn đề tổng thể. Hãy coi họ như những chuyên gia khác nhau trong đội của bạn.
- Mạng định tuyến (gating): Giống như người quản lý quyết định chuyên gia nào phù hợp nhất cho từng phần của vấn đề. Nó xem xét đầu vào và xác định ai nên làm gì.
- Đầu ra: Đây là câu trả lời hoặc lời giải cuối cùng mà mô hình AI tạo ra sau khi các chuyên gia đã xử lý xong phần việc của họ.
Các ưu điểm của việc dùng MoE gồm có:
- Hiệu quả: Chỉ những chuyên gia giỏi ở một phần cụ thể của vấn đề mới được kích hoạt, tiết kiệm thời gian và sức mạnh tính toán.
- Linh hoạt: Bạn có thể dễ dàng thêm chuyên gia mới hoặc thay đổi chuyên môn của họ, giúp hệ thống thích ứng với nhiều vấn đề khác nhau.
- Kết quả tốt hơn: Vì mỗi chuyên gia tập trung vào thế mạnh của mình, lời giải tổng thể thường chính xác và đáng tin cậy hơn.
Hãy đi sâu hơn một chút vào mạng chuyên gia và mạng định tuyến.
Mạng chuyên gia
Hãy coi các "mạng chuyên gia" trong mô hình MoE như một đội ngũ chuyên gia. Thay vì một mô hình AI làm tất cả, mỗi chuyên gia tập trung vào một loại nhiệm vụ hoặc dữ liệu cụ thể.
Trong một mô hình MoE, các chuyên gia này giống như những mạng nơ-ron riêng lẻ, mỗi mạng được huấn luyện trên các tập dữ liệu hoặc nhiệm vụ khác nhau.
Chúng hoạt động thưa, nghĩa là chỉ một vài chuyên gia được kích hoạt tại một thời điểm, tùy thuộc vào bản chất của đầu vào. Điều này giúp hệ thống không bị quá tải và đảm bảo những chuyên gia liên quan nhất đang xử lý vấn đề.
Nhưng mô hình làm sao biết chọn chuyên gia nào? Đó là lúc mạng định tuyến (gating) xuất hiện.
Mạng định tuyến (gating)
Mạng định tuyến (bộ định tuyến) là một loại mạng nơ-ron khác học cách phân tích dữ liệu đầu vào (như một câu cần dịch) và xác định chuyên gia nào phù hợp nhất để xử lý.
Nó làm điều này bằng cách gán một "trọng số" hoặc điểm quan trọng cho mỗi chuyên gia dựa trên đặc điểm của đầu vào. Những chuyên gia có trọng số cao nhất sẽ được chọn để xử lý dữ liệu.
Có nhiều cách (gọi là "thuật toán định tuyến") để mạng định tuyến chọn chuyên gia phù hợp. Dưới đây là một vài cách phổ biến:
- Top-k routing: Đây là phương pháp đơn giản nhất. Mạng định tuyến chọn 'k' chuyên gia có điểm phù hợp cao nhất và gửi dữ liệu đầu vào cho họ.
- Expert choice routing: Ở phương pháp này, thay vì dữ liệu chọn chuyên gia, các chuyên gia quyết định dữ liệu nào họ xử lý tốt nhất. Chiến lược này nhằm đạt cân bằng tải tối ưu và cho phép ánh xạ dữ liệu—chuyên gia theo nhiều cách khác nhau.
- Định tuyến thưa (sparse routing): Cách tiếp cận này chỉ kích hoạt một vài chuyên gia cho mỗi mẩu dữ liệu, tạo nên mạng thưa. Định tuyến thưa dùng ít tài nguyên tính toán hơn so với định tuyến dày (dense), nơi tất cả chuyên gia đều hoạt động cho mọi mẩu dữ liệu.
Trong quá trình suy luận (dự đoán), mô hình kết hợp đầu ra từ các chuyên gia, theo cùng quy trình nó dùng để phân công nhiệm vụ cho chuyên gia. Với một nhiệm vụ, có thể cần hơn một chuyên gia, tùy mức độ phức tạp và đa dạng của vấn đề.
Giờ hãy tìm hiểu cách MoE hoạt động.
Cách Mixture of Experts (MoE) hoạt động
MoE vận hành qua hai giai đoạn:
- Giai đoạn huấn luyện
- Giai đoạn suy luận
Giai đoạn huấn luyện
Tương tự như các mô hình machine learning khác, MoE bắt đầu bằng việc huấn luyện trên một tập dữ liệu. Tuy nhiên, quá trình huấn luyện không áp dụng cho toàn bộ mô hình mà được thực hiện riêng lẻ cho từng thành phần.
Huấn luyện chuyên gia
Mỗi thành phần trong khung MoE được huấn luyện trên một tập con dữ liệu hoặc nhiệm vụ cụ thể. Mục tiêu là giúp mỗi thành phần tập trung vào một khía cạnh của vấn đề lớn hơn.
Sự tập trung này đạt được bằng cách cung cấp cho mỗi thành phần dữ liệu phù hợp với nhiệm vụ được giao. Chẳng hạn, trong bài toán xử lý ngôn ngữ, một thành phần có thể tập trung vào cú pháp trong khi thành phần khác tập trung vào ngữ nghĩa.
Việc huấn luyện cho từng thành phần tuân theo quy trình huấn luyện mạng nơ-ron tiêu chuẩn, nơi mô hình học cách tối thiểu hóa hàm mất mát cho tập dữ liệu con của mình.
Huấn luyện mạng định tuyến
Mạng định tuyến có nhiệm vụ học cách chọn chuyên gia phù hợp nhất cho một đầu vào nhất định.
Trong quá trình huấn luyện mạng định tuyến, nó được huấn luyện song song với các mạng chuyên gia. Nó nhận cùng đầu vào như các chuyên gia và học cách dự đoán phân phối xác suất trên các chuyên gia. Phân phối này cho biết chuyên gia nào phù hợp nhất để xử lý đầu vào hiện tại.
Mạng định tuyến thường được huấn luyện bằng các phương pháp tối ưu vừa tính đến độ chính xác của chính nó vừa tính đến hiệu suất của các chuyên gia được chọn.
Huấn luyện kết hợp
Trong giai đoạn huấn luyện kết hợp, toàn bộ hệ thống MoE, bao gồm cả các mô hình chuyên gia và mạng định tuyến, được huấn luyện cùng nhau.
Chiến lược này đảm bảo cả mạng định tuyến và các chuyên gia đều được tối ưu để phối hợp nhịp nhàng. Hàm mất mát trong huấn luyện kết hợp gộp tổn thất từ từng chuyên gia và mạng định tuyến, khuyến khích tối ưu hóa mang tính cộng tác.
Các gradient của tổn thất kết hợp sau đó được lan truyền qua cả mạng định tuyến và các mô hình chuyên gia, tạo điều kiện cập nhật để cải thiện hiệu suất tổng thể của hệ thống MoE.
Giai đoạn suy luận
Suy luận liên quan đến việc tạo đầu ra bằng cách kết hợp ngữ cảnh từ mạng định tuyến với đầu ra từ các chuyên gia. Trong MoE, quy trình này được thiết kế để giữ chi phí suy luận ở mức tối thiểu.
Định tuyến đầu vào
Trong bối cảnh MoE, vai trò của mạng định tuyến rất quan trọng trong việc quyết định những mô hình nào sẽ xử lý một đầu vào cụ thể.
Khi nhận được đầu vào, mạng định tuyến đánh giá và tạo một phân phối xác suất trên tất cả các mô hình. Phân phối này sau đó điều hướng đầu vào đến những mô hình phù hợp nhất, tận dụng các mẫu đã học trong giai đoạn huấn luyện. Điều này đảm bảo chuyên môn đúng được áp dụng cho từng nhiệm vụ, tối ưu hóa quá trình ra quyết định.
Lựa chọn chuyên gia
Chỉ một vài mô hình, thường là một hoặc một số ít, được chọn để xử lý mỗi đầu vào. Việc lựa chọn này được quyết định bởi các xác suất do mạng định tuyến gán.
Chọn số lượng mô hình hạn chế cho mỗi đầu vào giúp sử dụng tài nguyên tính toán hiệu quả trong khi vẫn tận dụng được kiến thức chuyên biệt trong khung MoE.
Đầu ra từ mạng định tuyến đảm bảo những mô hình được chọn là phù hợp nhất để xử lý đầu vào, từ đó nâng cao hiệu quả và hiệu suất tổng thể của hệ thống.
Kết hợp đầu ra
Bước cuối trong quá trình suy luận là hợp nhất các đầu ra từ những mô hình đã chọn.
Việc hợp nhất này thường được thực hiện bằng cách trung bình có trọng số, trong đó trọng số phản ánh các xác suất do mạng định tuyến gán. Trong một số trường hợp, có thể dùng các phương pháp thay thế như bỏ phiếu hoặc kỹ thuật kết hợp học được để hợp nhất đầu ra của các chuyên gia. Mục tiêu là tích hợp những hiểu biết đa dạng từ các mô hình đã chọn thành một dự đoán cuối cùng thống nhất và chính xác, qua đó tận dụng điểm mạnh của kiến trúc MoE.
Với sự phát triển nhanh chóng của công nghệ, nhu cầu về các kỹ thuật nhanh, hiệu quả và tối ưu để xử lý mô hình lớn ngày càng tăng. MoE đang nổi lên như một giải pháp đầy hứa hẹn. Vậy MoE còn mang lại những lợi ích nào khác?
Lợi ích của Mixture of Experts (MoE)
Kiến trúc Mixture of Experts (MoE) mang lại một số ưu điểm:
- Hiệu năng: Bằng cách chỉ kích hoạt những chuyên gia liên quan cho một nhiệm vụ, mô hình MoE tránh được tính toán không cần thiết, dẫn đến tốc độ cải thiện và giảm tiêu thụ tài nguyên.
- Tính linh hoạt: Năng lực đa dạng của các chuyên gia giúp mô hình MoE có tính linh hoạt cao. Bằng cách gọi đến các chuyên gia có năng lực chuyên biệt, mô hình MoE có thể thành công trên phạm vi nhiệm vụ rộng hơn.
- Khả năng chịu lỗi: Cách tiếp cận "chia để trị" của MoE, trong đó các nhiệm vụ được thực thi riêng rẽ, nâng cao khả năng chống chịu lỗi của mô hình. Nếu một chuyên gia gặp sự cố, điều đó không nhất thiết ảnh hưởng đến toàn bộ chức năng của mô hình.
- Khả năng mở rộng - Phân rã các vấn đề phức tạp thành những nhiệm vụ nhỏ hơn, dễ quản lý hơn giúp mô hình MoE xử lý các đầu vào ngày càng phức tạp.
Ứng dụng của Mixture of Experts (MoE)
Việc MoE đã xuất hiện trong 30 năm qua khiến nó trở thành một kỹ thuật được sử dụng rộng rãi trong nhiều lĩnh vực của machine learning.
Xử lý ngôn ngữ tự nhiên (NLP)
MoE mang đến một hướng tiếp cận độc đáo để huấn luyện mô hình lớn với hiệu quả cải thiện, tiền huấn luyện nhanh hơn và tốc độ suy luận cạnh tranh.
Trong các mô hình dày truyền thống, mọi tham số đều được dùng cho mọi đầu vào. Tính thưa cho phép mô hình chỉ chạy những phần cụ thể của hệ thống dựa trên đầu vào, giảm đáng kể tính toán.
Một ví dụ là API dịch của Microsoft, Z-code. Kiến trúc MoE trong Z-code hỗ trợ quy mô tham số mô hình khổng lồ trong khi vẫn giữ lượng tính toán không đổi.
Thị giác máy tính
V-MoE của Google, một kiến trúc thưa dựa trên Vision Transformers (ViT), minh chứng tính hiệu quả của MoE trong các tác vụ thị giác máy tính.
Bằng cách chia ảnh thành các mảnh nhỏ và đưa chúng vào một lớp định tuyến, V-MoE có thể linh hoạt chọn những chuyên gia phù hợp nhất cho từng mảnh, tối ưu cả độ chính xác lẫn hiệu quả.
Một lợi thế đáng chú ý của cách tiếp cận này là tính linh hoạt. Bạn có thể giảm số chuyên gia được chọn trên mỗi token để tiết kiệm thời gian và tài nguyên tính toán, mà không cần huấn luyện lại trọng số mô hình.
Hệ thống gợi ý
MoE cũng đã được áp dụng thành công vào các hệ thống gợi ý. Ví dụ, các nhà nghiên cứu Google đã đề xuất một hệ thống xếp hạng dựa trên MMoE (Multi-Gate Mixture of Experts) cho gợi ý video YouTube.
Họ trước tiên nhóm mục tiêu nhiệm vụ thành hai loại: tương tác và hài lòng. Với danh sách video ứng viên từ bước truy xuất, hệ thống xếp hạng của họ sử dụng các đặc trưng ứng viên, người dùng và ngữ cảnh để học dự đoán các xác suất tương ứng với hai nhóm hành vi người dùng này.
Một lưu ý trong cách tiếp cận này là họ không áp dụng lớp MoE trực tiếp lên đầu vào vì chiều dữ liệu quá cao sẽ dẫn đến chi phí huấn luyện và phục vụ mô hình đáng kể.
MoE đã được ứng dụng rộng rãi trong ngành cho nhiều bài toán. Quy trình học của chúng chia nhiệm vụ thành các bài toán con phù hợp, mỗi bài toán có thể được giải bằng một mạng chuyên gia rất đơn giản. Năng lực này cho phép huấn luyện song song và suy luận nhanh, khiến MoE hấp dẫn cho các hệ thống ở quy mô lớn.
Mixture of Experts (MoE): Thách thức
Các chuyên gia đặc biệt hữu ích cho kịch bản thông lượng cao trên nhiều máy. Với ngân sách tính toán cố định cho tiền huấn luyện, một mô hình thưa có thể hiệu quả hơn.
Tuy nhiên, các mô hình thưa yêu cầu bộ nhớ đáng kể trong quá trình chạy, vì tất cả chuyên gia cần được lưu trong bộ nhớ. Đây có thể là hạn chế đáng kể trên các hệ thống có VRAM thấp, nơi những mô hình như vậy có thể gặp khó khăn.
Hãy khám phá các hạn chế khác của MoE.
Độ phức tạp khi huấn luyện
Huấn luyện mô hình MoE phức tạp hơn so với huấn luyện một mô hình đơn. Lý do là:
- Phối hợp: Cần để mạng định tuyến học cách định tuyến đúng đầu vào tới đúng chuyên gia trong khi mỗi chuyên gia lại chuyên sâu về các phần dữ liệu khác nhau. Cân bằng điều này có thể khó.
- Tối ưu hóa: Hàm mất mát dùng cho huấn luyện kết hợp phải cân bằng hiệu suất của các chuyên gia và mạng định tuyến, làm phức tạp quá trình tối ưu.
- Điều chỉnh siêu tham số: Mô hình MoE có nhiều siêu tham số hơn, như số lượng chuyên gia và kiến trúc mạng định tuyến. Việc tinh chỉnh chúng có thể tốn thời gian và phức tạp.
Hiệu quả suy luận
Suy luận trong mô hình MoE có thể kém hiệu quả do một vài yếu tố:
- Mạng định tuyến: Mạng định tuyến cần chạy cho mỗi đầu vào để xác định chuyên gia phù hợp. Điều này làm tăng thêm tính toán.
- Lựa chọn và kích hoạt chuyên gia: Dù chỉ một tập con chuyên gia được kích hoạt cho mỗi đầu vào, việc chọn và kích hoạt này tạo ra chi phí phụ, có thể làm tăng thời gian suy luận.
- Tính song song: Chạy nhiều chuyên gia song song có thể là thách thức, đặc biệt trong môi trường tài nguyên tính toán hạn chế. Tính song song hiệu quả đòi hỏi lập lịch và quản lý tài nguyên nâng cao.
Kích thước mô hình tăng
Mô hình MoE có xu hướng lớn hơn mô hình đơn do có nhiều chuyên gia:
- Yêu cầu lưu trữ: Lưu trữ nhiều mạng chuyên gia và mạng định tuyến làm tăng nhu cầu lưu trữ tổng thể, có thể là bất lợi trong môi trường hạn chế dung lượng.
- Sử dụng bộ nhớ: Huấn luyện và suy luận cần nhiều bộ nhớ hơn vì nhiều mô hình phải được nạp và duy trì trong bộ nhớ cùng lúc. Điều này có thể gây khó khăn trong môi trường hạn chế tài nguyên.
- Thách thức triển khai: Triển khai mô hình MoE khó hơn do kích thước và độ phức tạp. Triển khai hiệu quả trên nhiều nền tảng, bao gồm thiết bị biên, có thể đòi hỏi tối ưu hóa và nỗ lực kỹ thuật bổ sung.
Kết luận
Trong bài viết này, chúng ta đã khám phá kỹ thuật Mixture of Experts (MoE), một cách tiếp cận tinh vi để mở rộng mạng nơ-ron nhằm xử lý các nhiệm vụ phức tạp và dữ liệu đa dạng. MoE sử dụng nhiều chuyên gia chuyên biệt và một mạng định tuyến để điều phối đầu vào hiệu quả.
Chúng ta đã đề cập các thành phần cốt lõi của MoE, bao gồm các mạng chuyên gia và mạng định tuyến, đồng thời thảo luận về quy trình huấn luyện và suy luận.
Những lợi ích như hiệu năng cải thiện, khả năng mở rộng và khả năng thích ứng đã được nêu bật, cùng với các ứng dụng trong xử lý ngôn ngữ tự nhiên, thị giác máy tính và hệ thống gợi ý.
Bất chấp các thách thức về độ phức tạp khi huấn luyện và kích thước mô hình, MoE mang đến một phương pháp đầy hứa hẹn để nâng cao năng lực AI.
Kỹ sư GenAI cao cấp và người sáng tạo nội dung, đã thu hút 20 triệu lượt xem nhờ chia sẻ kiến thức về GenAI và khoa học dữ liệu.
