XYZNOT

Makalah · arXiv 2401.04088

Mixtral of Experts

Terbit cs.LGcs.CL arXivPDF

Baca dengan terjemahan dan AI

Ringkasan tiga baris

  1. 🎯 Menskalakan kapasitas dan performa transformer tanpa memicu latensi inferensi serta biaya komputasi yang terlampau tinggi.
  2. 🔧 Arsitektur decoder-only Sparse Mixture of Experts (SMoE) yang menggantikan blok feedforward standar dengan 8 pakar SwiGLU, memilih 2 pakar per token melalui perute terpelajar.
  3. 📈 Mengakses 47B parameter total dengan hanya 13B parameter aktif per token, mengungguli Llama 2 70B pada MMLU (70,6% vs 69,9%) dan GSM8K (74,4% vs 69,6%).

Abstrak

Kami memperkenalkan Mixtral 8x7B, sebuah model bahasa Sparse Mixture of Experts (SMoE). Mixtral memiliki arsitektur yang sama dengan Mistral 7B, dengan perbedaan bahwa setiap lapisannya terdiri dari 8 blok feedforward (yaitu pakar/expert). Untuk setiap token, pada setiap lapisan, jaringan perute (router) memilih dua pakar untuk memproses status saat ini dan menggabungkan keluarannya. Meskipun setiap token hanya menggunakan dua pakar, pakar yang dipilih dapat berbeda di setiap langkah waktu. Hasilnya, setiap token memiliki akses ke 47B parameter, tetapi hanya menggunakan 13B parameter aktif selama inferensi. Mixtral dilatih dengan ukuran konteks sebesar 32k token dan mengungguli atau menyaingi Llama 2 70B serta GPT-3.5 di semua tolok ukur yang dievaluasi. Secara khusus, Mixtral jauh mengungguli Llama 2 70B dalam matematika, pembuatan kode, dan tolok ukur multibahasa. Kami juga menyediakan model yang di-fine-tune untuk mengikuti instruksi, Mixtral 8x7B - Instruct, yang melampaui GPT-3.5 Turbo, Claude-2.1, Gemini Pro, dan model Llama 2 70B - chat pada tolok ukur manusia. Baik model dasar maupun instruksi dirilis di bawah lisensi Apache 2.0.

Abstrak asli (bahasa Inggris)

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.

Panduan membaca

Masalah dan motivasi

Model bahasa autoregresif padat (dense) memerlukan biaya komputasi yang berbanding lurus dengan jumlah parameter totalnya untuk setiap token yang diproses. Seiring model diskalakan hingga 70B parameter dan seterusnya, menyajikannya dengan latensi rendah dan throughput tinggi menjadi sangat mahal secara komputasi. Penulis bertujuan untuk meningkatkan kapasitas model sembari menjaga biaya inferensi per token tetap sebanding dengan model yang jauh lebih kecil, menciptakan model berbobot terbuka yang mampu menyaingi atau mengungguli Llama 2 70B dan baseline proprietary seperti GPT-3.5.

Ide utama

  • Sparse Mixture of Experts (SMoE): Mengganti blok feedforward network (FFN) padat di seluruh 32 lapisan transformer dengan 8 jaringan pakar yang berbeda, merutekan setiap token hanya ke 2 pakar teratas.
  • Pemisahan Jumlah Parameter: Arsitektur ini menampung 47B parameter total di seluruh lapisannya, tetapi hanya mengeksekusi 13B parameter aktif per forward pass token, menyamai jejak komputasi model padat berukuran sedang.
  • Jendela Konteks Penuh 32k: Dukungan bawaan untuk panjang sekuens 32.768 token dengan akurasi retrieval 100% pada tolok ukur passkey.
  • Perutean Berbasis Sintaksis alih-alih Topik: Pemeriksaan empiris terhadap perutean token menunjukkan bahwa pemilihan pakar terutama didorong oleh fungsi sintaksis dan lokalitas temporal daripada domain topik tingkat tinggi.

Metode (dengan persamaan utama)

Mixtral memodifikasi arsitektur Mistral 7B ( lapisan, dimensi tersembunyi , attention head, key-value head) dengan mengganti setiap sub-blok FFN dengan modul MoE yang terdiri dari pakar (), masing-masing diimplementasikan sebagai jaringan SwiGLU dengan dimensi perantara .

Untuk representasi token masukan , jaringan perute menghitung distribusi gating renggang (sparse) di seluruh pakar menggunakan logit top- (): di mana operator Top-K menetapkan ke semua koordinat di luar nilai terbesar dari logit :

Keluaran keseluruhan lapisan dihitung sebagai jumlah berbobot gating atas keluaran para pakar: Eksekusi yang efisien dicapai melalui kernel seperti MegaBlocks, yang merepresentasikan komputasi MoE sebagai perkalian matriks renggang, bersama dengan Expert Parallelism di beberapa GPU.

Hasil (dengan angka-angka terpenting)

  • Tolok Ukur Umum & Penalaran: Pada MMLU (5-shot), Mixtral 8x7B mencapai 70,6% dibandingkan 69,9% untuk Llama 2 70B dan 70,0% untuk GPT-3.5. Pada GSM8K (8-shot, maj@8), ia mencapai 74,4% versus 69,6% untuk Llama 2 70B. Pada tolok ukur MATH (4-shot, maj@4), Mixtral meraih 28,4% versus 13,8% untuk Llama 2 70B.
  • Pembuatan Kode: Mixtral mengungguli Llama 2 70B secara substansial pada HumanEval (40,2% vs 29,3%) dan MBPP (60,7% vs 49,8%).
  • Tugas Multibahasa: Upsampling data multibahasa memungkinkan Mixtral melampaui Llama 2 70B pada bahasa Prancis, Jerman, Spanyol, dan Italia di ARC-Challenge, HellaSwag, dan MMLU (misalnya, MMLU bahasa Prancis: 70,9% vs 64,3%).
  • Instruction Fine-Tuning & Arena Elo: Mixtral 8x7B – Instruct (dilatih dengan SFT dan Direct Preference Optimization) meraih skor 8,30 pada MT-Bench dan mencapai Elo LMSys Chatbot Arena sebesar 1121, melampaui Claude-2.1 (1117), GPT-3.5-Turbo (1117), dan Llama-2-70b-chat (1077).
  • Retrieval Konteks: Mencapai akurasi retrieval 100% pada tugas retrieval passkey sintetis di seluruh jendela konteks 32k.

Keterbatasan dan pertanyaan terbuka

  • Jejak Memori vs. Komputasi: Meskipun biaya komputasi sebanding dengan 13B parameter aktif, penyajian membutuhkan VRAM yang cukup untuk menampung seluruh 47B parameter, sehingga menuntut pengaturan multi-GPU atau teknik offloading.
  • Bottleneck Expert Parallelism: Makalah ini menemukan lokalitas temporal yang tinggi—token yang berurutan memiliki penetapan pakar yang sama jauh lebih sering daripada peluang acak (hingga 28,4% pengulangan pilihan pertama pada lapisan 15 vs 12,5% acak). Hal ini dapat menyebabkan ketidakseimbangan beban dan kelebihan beban pada GPU tertentu dalam Expert Parallelism.
  • Kurangnya Spesialisasi Topik: Pemilihan perute tidak secara alami terbagi berdasarkan domain konseptual (misalnya, biologi vs. filsafat), menyisakan pertanyaan terbuka tentang bagaimana menyusun gating jika spesialisasi pakar untuk domain tertentu secara eksplisit diinginkan.

Istilah kunci

Sparse Mixture of Experts (SMoE)
Arsitektur jaringan saraf di mana komputasi kondisional merutekan setiap token masukan ke subset renggang dari sub-jaringan feedforward (pakar), alih-alih mengaktifkan semua parameter.
Active Parameter Count
Jumlah parameter yang benar-benar dimuat dan dikomputasi selama inferensi untuk satu token, yaitu 13B pada Mixtral dibandingkan dengan total 47B parameter renggangnya.
SwiGLU
Varian aktivasi gated linear unit yang menggabungkan Swish dan perkalian per elemen yang digunakan sebagai arsitektur internal dari setiap blok feedforward pakar.
TopK Gating
Mekanisme perutean yang menerapkan proyeksi linear pada representasi token, mempertahankan nilai tertinggi top-K sambil menutupi sisanya dengan minus tak hingga, dan menormalisasikannya melalui softmax.
Expert Parallelism (EP)
Strategi partisi terdistribusi yang memetakan pakar yang berbeda ke GPU yang berbeda dan merutekan aktivasi token lintas perangkat ke pakar yang ditugaskan.
Direct Preference Optimization (DPO)
Algoritma penyelarasan yang mengoptimalkan parameter model bahasa secara langsung pada pasangan preferensi tanpa melatih model reward reinforcement learning eksplisit.
Passkey Retrieval
Uji evaluasi sintetis yang mengukur kemampuan model untuk menemukan dan mengembalikan kunci sandi singkat yang ditempatkan secara acak di dalam prompt konteks panjang hingga 32k token.
Positional Locality
Kecenderungan yang teramati di mana token berurutan dalam suatu sekuens berulang kali ditetapkan ke pakar yang sama jauh melampaui probabilitas acak seragam.

Pertanyaan

Mengapa Mixtral disebut 8x7B jika hanya memiliki 47B parameter, bukan 56B?

Meskipun terdapat 8 pakar per lapisan dan arsitekturnya diturunkan dari Mistral 7B, bobot self-attention dan lapisan embedding dibagi bersama di antara semua pakar. Hanya sub-blok feedforward yang direplikasi 8 kali, menghasilkan total 47B parameter alih-alih 8 × 7B = 56B.

Berapa banyak pakar yang diaktifkan untuk setiap token selama inferensi?

Perute memilih tepat 2 pakar () dari 8 pakar yang tersedia di setiap lapisan untuk setiap token, menghasilkan 13B parameter aktif per forward pass.

Apakah pakar yang berbeda memiliki spesialisasi dalam topik akademis atau domain yang berbeda?

Tidak ditemukan spesialisasi domain yang jelas. Analisis pada The Pile menunjukkan distribusi penetapan pakar yang hampir identik di berbagai subjek seperti ArXiv, PubMed, dan PhilPapers; sebagai gantinya, keputusan perutean sangat berkorelasi dengan sintaksis, identitas token, dan lokalitas posisi.

Di bawah lisensi perangkat lunak apa model Mixtral 8x7B dirilis?

Baik model dasar Mixtral 8x7B maupun Mixtral 8x7B – Instruct dirilis di bawah lisensi permisif Apache 2.0 untuk penggunaan akademis dan komersial.

Ulasan di halaman ini ditulis oleh AI dari makalah dan mungkin mengandung kesalahan. Baca makalahnya untuk detail.

Baca dengan terjemahan dan AI