← Về danh sách
AI & Dữ liệu
#MoE#혼합전문가#희소활성화#게이팅네트워크#조건부계산
Cập nhật lần cuối · 2026-09-01

Mô hình hỗn hợp chuyên gia (MoE, Mixture of Experts)

1. Tổng quan

Định nghĩa: Mô hình hỗn hợp chuyên gia (MoE) là kiến trúc dựa trên tính toán có điều kiện (conditional computation), trong đó một mạng nơ-ron khổng lồ được chia thành nhiều mạng con chuyên gia (Expert), và mạng cổng (Gating Network, bộ định tuyến - router) chỉ kích hoạt có chọn lọc một số ít chuyên gia cho mỗi token đầu vào (kích hoạt thưa - sparse activation) để thực hiện tính toán.

Bối cảnh ra đời của MoE nằm ở mâu thuẫn căn bản mà các mô hình ngôn ngữ lớn (LLM) phải đối mặt: "muốn tăng số tham số nhưng không gánh nổi chi phí tính toán". Transformer tuân theo quy luật mở rộng (scaling law), tức là hiệu năng cải thiện một cách có thể dự đoán khi tăng tham số và dữ liệu, nhưng các mô hình dày đặc (Dense) truyền thống phải tính toàn bộ tham số cho mọi đầu vào. Nghĩa là khi tăng gấp đôi số tham số, chi phí huấn luyện và suy luận cũng tăng gần gấp đôi; khi quy mô tham số vượt quá hàng trăm tỷ, chi phí bộ nhớ GPU và điện năng tăng theo cấp số nhân.

MoE giải quyết vấn đề này bằng cách tách "dung lượng tri thức của mô hình (tổng tham số)" khỏi "lượng tính toán thực tế trên mỗi token (tham số kích hoạt)". Ví dụ, nếu có 8 chuyên gia và mỗi token chỉ kích hoạt 2, mô hình chứa lượng tri thức gấp 8 lần nhưng chỉ phải tính toán cho 2 chuyên gia. Đây là cùng nguyên lý với việc một tổ chức con người không giao mọi công việc cho một người mà phân công cho các chuyên gia theo lĩnh vực — ý tưởng "chỉ lấy ra tri thức cần thiết để dùng".

Nhờ kích hoạt thưa, MoE đạt được dung lượng hiệu dụng lớn hơn nhiều so với mô hình dày đặc trong cùng ngân sách tính toán (FLOPs), và đã trở thành thiết kế cốt lõi của các mô hình siêu lớn mới nhất như GPT-4, Mixtral, DeepSeek-V3, Gemini. Trong bài làm, nên trình bày MoE không chỉ như một kỹ thuật tăng hiệu năng đơn thuần, mà là "mô hình mở rộng định nghĩa lại sự đánh đổi giữa hiệu quả tính toán và quy mô mô hình".

2. Kiến trúc tổng thể của MoE

MoE thường được triển khai bằng cách thay thế lớp mạng nơ-ron truyền thẳng (FFN) bên trong khối Transformer — thay vì một FFN lớn — bằng nhiều FFN chuyên gia cùng một bộ định tuyến. Sơ đồ khái niệm dưới đây thể hiện khung tổng thể: token đầu vào đi qua bộ định tuyến, được phân phối đến k chuyên gia hàng đầu, và đầu ra của chúng được kết hợp có trọng số rồi chuyển sang lớp tiếp theo.

flowchart TB
    IN["Biểu diễn token đầu vào"] --> ATT["Tự chú ý đa đầu (Multi-head self-attention)"]
    ATT --> AN["Kết nối phần dư + chuẩn hóa"]
    AN --> ROUTER["Mạng cổng (bộ định tuyến)"]
    ROUTER -->|"Chọn top-k"| E1["Chuyên gia 1 (FFN)"]
    ROUTER --> E2["Chuyên gia 2 (FFN)"]
    ROUTER -.->|"Không kích hoạt"| E3["Chuyên gia 3 (FFN)"]
    ROUTER -.->|"Không kích hoạt"| E4["Chuyên gia N (FFN)"]
    E1 --> COMB["Kết hợp có trọng số (trọng số cổng)"]
    E2 --> COMB
    COMB --> OUT["Chuyển sang lớp tiếp theo"]

Chuyên gia (Expert) là các FFN có tham số độc lập, và trong quá trình huấn luyện chúng tự nhiên chuyên biệt hóa cho các dạng mẫu khác nhau (ví dụ: một ngôn ngữ cụ thể, cấu trúc ngữ pháp, tri thức miền). Tuy nhiên, điều quan trọng là sự chuyên biệt hóa này không do con người chỉ định tường minh, mà hình thành một cách tự phát (emergent) thông qua phân phối dữ liệu và việc học định tuyến. Thực tế đã quan sát thấy hiện tượng một chuyên gia thiên về token mã nguồn, trong khi chuyên gia khác thiên về công thức và dấu câu.

Bộ định tuyến (mạng cổng) nhận vector token đầu vào, tính điểm cho từng chuyên gia, rồi qua softmax để chọn k chuyên gia hàng đầu. Bộ định tuyến thường chỉ là một lớp tuyến tính nên có rất ít tham số, nhưng quyết định "gửi token nào đến chuyên gia nào" lại chi phối hiệu năng mô hình, vì vậy đây là phần nhạy cảm nhất trong thiết kế MoE.

Ở bước kết hợp (Combine), đầu ra của các chuyên gia được chọn được cộng có trọng số theo trọng số cổng do bộ định tuyến gán. Các chuyên gia không được kích hoạt sẽ bỏ qua hoàn toàn việc tính toán, nên dù tổng tham số lớn đến đâu, lượng tính toán trên mỗi token vẫn cố định ở mức k chuyên gia.

3. Cơ chế định tuyến và quy trình hoạt động

Thành bại của MoE phụ thuộc vào định tuyến. Phương pháp tiêu biểu là định tuyến Top-k: Switch Transformer của Google theo đuổi độ thưa cực đoan với k=1 (chỉ một chuyên gia mạnh nhất), còn Mixtral 8x7B chọn k=2 trong 8 chuyên gia. Sơ đồ dưới đây thể hiện luồng xử lý định tuyến theo đơn vị token và cân bằng tải.

flowchart LR
    T["Vector token x"] --> G["Tính điểm cổng (W_g · x)"]
    G --> SM["Softmax"]
    SM --> TOPK["Chọn top-k chuyên gia"]
    TOPK --> CAP{"Vượt dung lượng (capacity) chuyên gia?"}
    CAP -->|"Còn chỗ"| DISP["Gửi đến chuyên gia tương ứng"]
    CAP -->|"Vượt"| DROP["Loại bỏ token hoặc đi vòng qua phần dư"]
    DISP --> EXP["Tính toán của chuyên gia"]
    EXP --> WSUM["Cộng có trọng số theo trọng số cổng"]
    WSUM --> Y["Đầu ra y"]

Quy trình hoạt động theo từng bước như sau. Thứ nhất, bộ định tuyến nhân vector token với ma trận trọng số cổng để tính điểm ưu tiên cho từng chuyên gia. Thứ hai, chuyển thành xác suất bằng softmax rồi chọn k chuyên gia hàng đầu. Thứ ba, mỗi chuyên gia có một giới hạn trên về số token có thể xử lý gọi là hệ số dung lượng (capacity factor); nếu token dồn vào một chuyên gia và vượt dung lượng, các token dư thừa không được xử lý mà bị loại bỏ (drop) hoặc đi vòng qua kết nối phần dư. Thứ tư, đầu ra của các chuyên gia được chọn được cộng có trọng số để tạo đầu ra cuối cùng.

Tại đây phát sinh thách thức lớn nhất của MoE là mất cân bằng tải (load imbalance). Nếu bộ định tuyến chỉ ưu ái một số ít chuyên gia, token sẽ dồn dập vào các chuyên gia đó làm tăng số token bị loại bỏ, còn các chuyên gia còn lại không được huấn luyện và trở thành "chuyên gia chết". Để ngăn điều này, người ta thêm hàm mất mát cân bằng tải phụ trợ (auxiliary load-balancing loss) vào hàm mất mát huấn luyện nhằm khuyến khích token được phân tán đều trên toàn bộ chuyên gia. Gần đây, DeepSeek-V3 đã giới thiệu kỹ thuật cân bằng chỉ bằng số hạng thiên lệch (bias) mà không cần mất mát phụ trợ, nhằm giảm tác dụng phụ làm suy giảm hiệu năng của mất mát phụ trợ.

Ngoài ra, quyết định định tuyến dễ bất ổn ở giai đoạn đầu huấn luyện, nên các kỹ thuật ổn định hóa được áp dụng song song như dùng router z-loss để kìm hãm sự phân kỳ của logit cổng, hoặc bảo đảm tính nhất quán định tuyến giữa huấn luyện và suy luận.

4. So sánh với mô hình Dense và các trường hợp áp dụng

Sự khác biệt giữa MoE và mô hình dày đặc (Dense) không chỉ là khác biệt cấu trúc mà xuất phát từ khác biệt về triết lý phân bổ tài nguyên. Mô hình dày đặc đầu tư lượng tính toán như nhau cho mọi token, trong khi MoE thực hiện tính toán có điều kiện, chỉ phân bổ tính toán cho các chuyên gia cần thiết với từng token. Kết quả là xuất hiện các đặc tính trái ngược như sau.

Tiêu chí Mô hình Dense Mô hình MoE
Tham số kích hoạt Toàn bộ tham số = tham số kích hoạt Tham số kích hoạt ≪ tổng tham số
Lượng tính toán (suy luận) Lớn, tỷ lệ với số tham số Nhỏ, chỉ tính cho các chuyên gia kích hoạt
Bộ nhớ (VRAM) Bằng lượng tham số kích hoạt Phải nạp toàn bộ tổng tham số
Độ ổn định huấn luyện Ổn định Rủi ro mất cân bằng tải, sụp đổ định tuyến
Tinh chỉnh (fine-tuning) Dễ dàng Khó do quá khớp và bất ổn

Điểm cốt lõi trong so sánh này là MoE "tiết kiệm tính toán nhưng không tiết kiệm bộ nhớ". Vì không biết khi nào một chuyên gia chưa kích hoạt sẽ được chọn, toàn bộ tham số phải được nạp sẵn vào bộ nhớ GPU. Do đó MoE mang lại lợi ích lớn trong môi trường mà tính toán (FLOPs) là nút thắt cổ chai, nhưng có thể bất lợi trong môi trường trên thiết bị (on-device) hoặc biên (edge) thiếu bộ nhớ. Tại đây, kỹ thuật phân tán "song song hóa chuyên gia (expert parallelism)" trở nên quan trọng: các chuyên gia được phân bố trên nhiều GPU và token được gửi đến GPU tương ứng (giao tiếp all-to-all) để chia sẻ gánh nặng bộ nhớ. Tuy nhiên, chính giao tiếp all-to-all này lại trở thành nút thắt mới, khiến băng thông truyền thông trở thành yếu tố quyết định tốc độ huấn luyện MoE.

Về trường hợp cụ thể, Mixtral 8x7B có tổng khoảng 46,7 tỷ tham số nhưng tham số kích hoạt trên mỗi token chỉ khoảng 12,9 tỷ, cho hiệu năng ngang với mô hình dày đặc cỡ 70 tỷ với chi phí suy luận cỡ 13 tỷ. Switch Transformer mở rộng lên tới 1,6 nghìn tỷ tham số trong khi vẫn giữ lượng tính toán mỗi token ở mức T5 truyền thống, và DeepSeek-V3 nâng cao đáng kể hiệu quả huấn luyện nhờ thiết kế chuyên gia chi tiết (fine-grained), chỉ kích hoạt khoảng 37 tỷ trên tổng số 671 tỷ tham số cho mỗi token. Như vậy, MoE đang chứng minh bằng số liệu lợi ích thực chất: "dung lượng tri thức lớn hơn trong cùng ngân sách tính toán".

5. Chuyên sâu: Xu hướng mới nhất và sự tiến hóa của thiết kế

Thiết kế MoE gần đây đang được tinh chỉnh theo một số hướng. Thứ nhất, xu hướng chuyên gia chi tiết (fine-grained experts): thay vì vài chuyên gia lớn, dùng nhiều chuyên gia nhỏ để tăng tính đa dạng của tổ hợp và thúc đẩy chuyên biệt hóa tri thức. Thứ hai, đưa vào chuyên gia dùng chung (shared expert): một chuyên gia chung luôn được kích hoạt đảm nhận tri thức chung, để các chuyên gia định tuyến còn lại tập trung vào tri thức chuyên biệt, qua đó giảm trùng lặp tri thức (DeepSeek-MoE). Thứ ba, kỹ thuật auxiliary-loss-free — loại bỏ mất mát phụ trợ vốn cản trở huấn luyện và cân bằng tải chỉ bằng điều chỉnh thiên lệch — đang lan rộng.

Ngoài ra, các hướng như tái chế (upcycling) chuyển mô hình dày đặc thành MoE, tối ưu hóa xấp xỉ và lượng tử hóa định tuyến khi suy luận để giảm chi phí phục vụ, hay MoE đa phương thức (multimodal) phân bổ chuyên gia cho nhiều miền và phương thức đang được nghiên cứu sôi nổi. Các xu hướng này rốt cuộc có thể hiểu là quá trình tinh chỉnh mục tiêu căn bản của MoE — "mô hình lớn hơn với ít tính toán hơn" — và từ góc nhìn Kỹ sư chuyên nghiệp (Professional Engineer), cần lưu ý rằng thiết kế phần cứng (dung lượng HBM, băng thông kết nối liên thông) và phần mềm (định tuyến, song song hóa) phát triển gắn kết với nhau.

6. Các vấn đề cần cân nhắc và hàm ý

Thứ nhất, cần nhận thức rõ sự đánh đổi giữa tính toán và bộ nhớ. MoE giảm tính toán suy luận nhưng phải nạp toàn bộ tổng tham số, vì vậy trước khi áp dụng cần chẩn đoán môi trường mục tiêu là nút thắt tính toán hay nút thắt bộ nhớ, và xây dựng chiến lược áp dụng phân biệt giữa phục vụ quy mô lớn trên đám mây (nút thắt tính toán) và biên/trên thiết bị (nút thắt bộ nhớ).

Thứ hai, độ ổn định định tuyến và cân bằng tải là rủi ro vận hành. Mất cân bằng tải gây ra chuyên gia chết và suy giảm hiệu năng, nên cần kết hợp tinh chỉnh mất mát cân bằng tải, hệ số dung lượng, chuẩn hóa bộ định tuyến, đồng thời xây dựng hệ thống khả năng quan sát (observability) để giám sát liên tục phân phối token theo từng chuyên gia trong huấn luyện và phục vụ.

Thứ ba, cần cân nhắc độ khó của tinh chỉnh và thích ứng miền. MoE dễ bị quá khớp và sụp đổ định tuyến khi tinh chỉnh hơn so với mô hình dày đặc, nên đòi hỏi chiến lược thận trọng như chỉ điều chỉnh một phần chuyên gia hoặc đóng băng bộ định tuyến, cùng với đủ dữ liệu.

Thứ tư, tính toán tổng chi phí sở hữu (TCO) từ góc độ hạ tầng và chi phí là quan trọng. Nếu chỉ nhìn vào chi phí suy luận thấp tính theo tham số kích hoạt mà áp dụng, chi phí có thể lớn hơn dự kiến do đầu tư GPU dung lượng cao để nạp toàn bộ tham số, kết nối tốc độ cao (NVLink, InfiniBand) và chi phí phụ trội của giao tiếp all-to-all; vì vậy cần đánh giá tổng hợp chi phí tính toán, bộ nhớ và truyền thông theo góc nhìn FinOps.

Thứ năm, về triển vọng, MoE đang dần trở thành kỹ thuật mở rộng tiêu chuẩn trên thực tế của các mô hình siêu lớn, và nguyên lý tính toán có điều kiện được dự báo sẽ được ứng dụng rộng rãi hơn nữa trong các mô hình đa phương thức và dạng tác tử (agent). Tuy nhiên, giới hạn của cách tiếp cận "chỉ tăng quy mô" cũng đang được thảo luận, nên cần phát triển cân bằng với chất lượng dữ liệu, căn chỉnh (alignment) và tối ưu hiệu quả.


Tóm tắt một câu: MoE là kiến trúc mở rộng cốt lõi của AI quy mô lớn, dùng tính toán có điều kiện trong đó mạng cổng chỉ kích hoạt có chọn lọc một số ít chuyên gia cho mỗi token, qua đó tách "tổng tham số (dung lượng tri thức)" khỏi "tham số kích hoạt (lượng tính toán)" để hiện thực hóa mô hình lớn hơn nhiều trong cùng ngân sách tính toán.