Model dan platform AI

Mamba: Mengubah Model Sekuensial dan Mengungguli Arsitektur Transformer

mm
Tambahkan Unite.AI ke sumber pilihan Anda di Google

Dalam artikel ini tentang Mamba, kita akan menjelajahi bagaimana model ruang keadaan (SSM) inovatif ini merevolusi model sekuen. Dikembangkan oleh Albert Gu dan Tri Dao, Mamba dikenal karena efisiensinya dalam memproses sekuen kompleks dalam bidang seperti pemrosesan bahasa, genomika, dan analisis audio. Model sekuen linear-waktunya dengan ruang keadaan selektif memastikan kinerja luar biasa di berbagai modality.

Kita akan menyelami kemampuan Mamba untuk mengatasi tantangan komputasi yang dihadapi oleh Transformer tradisional, terutama dengan sekuen panjang. Pendekatan selektifnya dalam model ruang keadaan memungkinkan inferensi yang lebih cepat dan skala linear dengan panjang sekuen, secara signifikan meningkatkan throughput.

Keunikan Mamba terletak pada kemampuan pemrosesannya yang cepat, lapisan SSM selektif, dan desain yang ramah perangkat keras yang terinspirasi oleh FlashAttention. Fitur-fitur ini memungkinkan Mamba untuk mengungguli banyak model yang ada, termasuk yang berbasis pada pendekatan transformer, membuatnya menjadi kemajuan yang signifikan dalam pembelajaran mesin.

Transformer vs Mamba

Transformer, seperti GPT-4, telah menetapkan benchmark dalam pemrosesan bahasa alami. Namun, efisiensinya menurun dengan sekuen yang lebih panjang. Di sinilah Mamba melompat ke depan, dengan kemampuan untuk memproses sekuen panjang lebih efisien dan arsitektur unik yang menyederhanakan proses secara keseluruhan.

Transformer yang terampil dalam menangani sekuen data, seperti teks untuk model bahasa. Tidak seperti model sebelumnya yang memproses data secara berurutan, Transformer memproses sekuen secara bersamaan, memungkinkan mereka untuk menangkap hubungan kompleks dalam data.

Mereka menggunakan mekanisme perhatian, yang memungkinkan model untuk fokus pada bagian yang berbeda dari sekuen ketika membuat prediksi.

Perhatian ini dihitung menggunakan tiga set bobot: kueri, kunci, dan nilai, yang berasal dari data input. Setiap elemen dalam sekuen dibandingkan dengan elemen lain, memberikan bobot yang menunjukkan pentingnya, atau ‘perhatian’, yang harus diterima oleh setiap elemen ketika memprediksi elemen berikutnya dalam sekuen.

Transformer mempertahankan dua blok utama: encoder, yang memproses data input, dan decoder, yang menghasilkan output. Encoder terdiri dari beberapa lapisan, masing-masing berisi dua sub-lapisan: mekanisme perhatian multi-kepala dan jaringan feed-forward sederhana yang berbasis posisi. Normalisasi dan koneksi residu digunakan pada setiap sub-lapisan untuk membantu dalam pelatihan jaringan yang dalam.

Decoder juga memiliki lapisan dengan dua sub-lapisan serupa dengan encoder tetapi menambahkan sub-lapisan ketiga yang melakukan perhatian multi-kepala atas output encoder. Sifat berurutan dari decoder memastikan bahwa prediksi untuk posisi hanya dapat mempertimbangkan posisi sebelumnya, mempertahankan sifat autoregresif.

Sebaliknya, model Mamba mengambil pendekatan yang berbeda. Sementara Transformer menangani masalah sekuen panjang dengan menggunakan mekanisme perhatian yang lebih kompleks, Mamba menggunakan ruang keadaan selektif, memberikan cara yang lebih efektif untuk memproses sekuen.

Berikut adalah gambaran tingkat tinggi tentang bagaimana transformer berfungsi:

  1. Pemrosesan Input: Transformer pertama kali mengkodekan data input menjadi format yang dapat dipahami oleh model, sering menggunakan embeddings yang juga mencakup posisi setiap elemen dalam sekuen.
  2. Mekanisme Perhatian: Pada intinya, mekanisme perhatian menghitung skor yang mewakili seberapa banyak fokus yang harus diberikan pada bagian lain dari sekuen input ketika memahami elemen saat ini.
  3. Arsitektur Encoder-Decoder: Model transformer terdiri dari encoder untuk memproses input dan decoder untuk menghasilkan output. Kedua-duanya terdiri dari beberapa lapisan yang memperbaiki pemahaman model tentang input.
  4. Perhatian Multi-Kepala: Di dalam encoder dan decoder, perhatian multi-kepala memungkinkan model untuk secara bersamaan memperhatikan bagian yang berbeda dari sekuen dari ruang representasi yang berbeda, meningkatkan kemampuannya untuk belajar dari konteks yang beragam.
  5. Jaringan Feed-Forward Berbasis Posisi: Setelah perhatian, jaringan neural sederhana memproses output dari setiap posisi secara terpisah dan identik. Ini digabungkan dengan input melalui koneksi residu dan diikuti oleh normalisasi lapisan.
  6. Generasi Output: Decoder kemudian memprediksi sekuen output, dipengaruhi oleh konteks encoder dan apa yang telah dihasilkan sejauh ini.

Kemampuan transformer untuk menangani sekuen secara paralel dan mekanisme perhatian yang kuat membuatnya kuat untuk tugas seperti terjemahan dan generasi teks.

Sebaliknya, model Mamba beroperasi secara berbeda dengan menggunakan ruang keadaan selektif untuk memproses sekuen. Pendekatan ini menangani ketidakefisienan komputasi dalam Transformer saat menangani sekuen panjang. Desain Mamba memungkinkan inferensi yang lebih cepat dan skala linear dengan panjang sekuen, menetapkan paradigma baru untuk model sekuen yang dapat lebih efisien, terutama saat sekuen menjadi semakin panjang.

Mamba

Apa yang membuat Mamba benar-benar unik adalah keberangkatannya dari perhatian dan blok MLP tradisional. Penyederhanaan ini menghasilkan model yang lebih ringan dan lebih cepat yang skala linear dengan panjang sekuen – prestasi yang tidak tertandingi oleh pendahulunya.

Fitur kunci Mamba termasuk:

  1. SSM Selektif: Ini memungkinkan Mamba untuk menyaring informasi yang tidak relevan dan fokus pada data yang relevan, meningkatkan kemampuannya untuk menangani sekuen. Selektivitas ini sangat penting untuk alasan konten yang efisien.
  2. Algoritma yang Ramah Perangkat Keras: Mamba menggunakan algoritma paralel yang dioptimalkan untuk perangkat keras modern, terutama GPU. Desain ini memungkinkan komputasi yang lebih cepat dan mengurangi kebutuhan memori dibandingkan dengan model tradisional.
  3. Arsitektur yang Disederhanakan: Dengan mengintegrasikan SSM selektif dan menghilangkan perhatian dan blok MLP, Mamba menawarkan struktur yang lebih sederhana dan lebih homogen. Ini menghasilkan skala yang lebih baik dan kinerja.

Mamba telah menunjukkan kinerja yang unggul dalam berbagai domain, termasuk bahasa, audio, dan genomika, unggul dalam pra-pelatihan dan tugas khusus domain. Misalnya, dalam pemodelan bahasa, Mamba mencocokkan atau melebihi kinerja model Transformer yang lebih besar.

Kode dan model pra-pelatihan Mamba tersedia secara terbuka untuk digunakan oleh komunitas di GitHub.

Tugas Salin Standar mudah untuk model linier. Salin Selektif dan Kepala Induksi memerlukan memori dinamis dan sadar konten untuk LLM.

Tugas Salin Standar mudah untuk model linier. Salin Selektif dan Kepala Induksi memerlukan memori dinamis dan sadar konten untuk LLM.

Model Ruang Keadaan Terstruktur (S4) baru-baru ini muncul sebagai kelas model sekuen yang menjanjikan, mencakup sifat dari RNN, CNN, dan model ruang keadaan klasik. Model S4 mengambil inspirasi dari sistem kontinu, khususnya jenis sistem yang memetakan fungsi satu dimensi atau sekuen melalui keadaan laten implisit. Dalam konteks pembelajaran dalam, mereka mewakili inovasi signifikan, memberikan metodologi baru untuk merancang model sekuen yang efisien dan sangat adaptif.

Dinamika Model S4

SSM (S4) Ini adalah model ruang keadaan terstruktur dasar. Ini mengambil sekuen x dan menghasilkan output y menggunakan parameter yang dipelajari A, B, C, dan parameter tunda Δ. Transformasi ini melibatkan diskritisasi parameter (mengubah fungsi kontinu menjadi diskrit) dan menerapkan operasi SSM, yang bersifat waktu-invariant—artinya tidak berubah selama langkah waktu yang berbeda.

Signifikansi Diskritisasi

Diskritisasi adalah proses kunci yang mengubah parameter kontinu menjadi diskrit melalui rumus tetap, memungkinkan model S4 untuk mempertahankan koneksi dengan sistem waktu kontinu. Ini memberikan model dengan sifat tambahan, seperti invarian resolusi, dan memastikan normalisasi yang tepat, meningkatkan stabilitas dan kinerja model. Diskritisasi juga menarik paralel dengan mekanisme penguncian yang ditemukan dalam RNN, yang kritis untuk mengelola aliran informasi melalui jaringan.

Linear Waktu Invariant (LTI)

Fitur inti dari model S4 adalah invarian waktu linier. Sifat ini menyiratkan bahwa dinamika model tetap konsisten selama waktu, dengan parameter yang tetap untuk semua langkah waktu. LTI adalah fondasi dari rekurensi dan konvolusi, menawarkan kerangka sederhana namun kuat untuk membangun model sekuen.

Mengatasi Keterbatasan Fundamental

Kerangka S4 secara tradisional dibatasi oleh sifat LTI-nya, yang menimbulkan tantangan dalam memodelkan data yang memerlukan dinamika adaptif. Makalah penelitian terbaru mempresentasikan pendekatan yang mengatasi keterbatasan ini dengan memperkenalkan parameter waktu-variabel, sehingga menghilangkan keterbatasan LTI. Ini memungkinkan model S4 untuk menangani berbagai sekuen dan tugas, secara signifikan memperluas kemampuan mereka.

Istilah ‘model ruang keadaan’ secara luas mencakup setiap proses berulang yang melibatkan keadaan laten dan telah digunakan untuk menjelaskan konsep yang berbeda di berbagai disiplin. Dalam konteks pembelajaran dalam, model S4, atau model ruang keadaan terstruktur, merujuk pada kelas model tertentu yang telah dioptimalkan untuk komputasi yang efisien sambil mempertahankan kemampuan untuk memodelkan sekuen yang kompleks.

Model S4 dapat diintegrasikan ke dalam arsitektur jaringan neural ujung-ke-ujung, berfungsi sebagai transformasi sekuen mandiri. Mereka dapat dianggap analog dengan lapisan konvolusi dalam CNN, memberikan kerangka untuk model sekuen dalam berbagai arsitektur jaringan neural.

SSM vs SSM + Seleksi

SSM vs SSM + Seleksi

Motivasi untuk Selektivitas dalam Pemodelan Sekuen

Model Ruang Keadaan Terstruktur

Model Ruang Keadaan Terstruktur

Makalah tersebut berpendapat bahwa aspek fundamental dari pemodelan sekuen adalah kompresi konteks menjadi keadaan yang dapat dikelola. Model yang dapat secara selektif fokus pada atau menyaring input memberikan cara yang lebih efektif untuk mempertahankan keadaan yang terkompresi, menghasilkan model sekuen yang lebih efisien dan kuat. Selektivitas ini sangat penting untuk model untuk mengontrol aliran informasi secara adaptif sepanjang dimensi sekuen, kemampuan yang esensial untuk menangani tugas yang kompleks dalam pemodelan bahasa dan di luar itu.

Model SSM selektif meningkatkan model SSM konvensional dengan memungkinkan parameter mereka menjadi bergantung pada input, memperkenalkan derajat adaptivitas yang sebelumnya tidak dapat dicapai dengan model waktu-invariant. Ini menghasilkan model SSM waktu-variabel yang tidak dapat lagi menggunakan konvolusi untuk komputasi yang efisien tetapi bergantung pada mekanisme rekurensi linear, penyimpangan signifikan dari model tradisional.

SSM + Seleksi (S6) Variasi ini mencakup mekanisme seleksi, menambahkan ketergantungan input pada parameter B dan C, dan parameter tunda Δ. Ini memungkinkan model untuk secara selektif fokus pada bagian tertentu dari sekuen input x. Parameter diskritisasi mempertimbangkan seleksi, dan operasi SSM diterapkan dalam cara waktu-variabel menggunakan operasi scan, yang memproses elemen secara berurutan, menyesuaikan fokus secara dinamis sepanjang waktu.

Sorotan Kinerja Mamba

Mamba adalah yang terbaik di kelasnya dalam setiap hasil evaluasi

Mamba adalah yang terbaik di kelasnya dalam setiap hasil evaluasi

Dalam hal kinerja, Mamba unggul dalam kecepatan inferensi dan akurasi. Desainnya memungkinkan utilitas yang lebih baik dari konteks yang lebih panjang, yang ditunjukkan dalam pemodelan DNA dan audio, mengungguli model sebelumnya dalam tugas yang kompleks yang memerlukan ketergantungan jangka panjang. Kelenturannya juga ditunjukkan dalam evaluasi zero-shot di berbagai tugas, menetapkan standar baru untuk model tersebut dalam hal efisiensi dan skalabilitas.

Mulai dengan Mamba

Bagi mereka yang tertarik untuk memanfaatkan Mamba, persyaratan teknis termasuk sistem operasi Linux, GPU NVIDIA , PyTorch 1.12+, dan CUDA 11.6+. Instalasi melibatkan perintah pip sederhana untuk menginstal paket yang diperlukan dari repo Mamba. Jika masalah kompatibilitas muncul dengan versi PyTorch, menggunakan bendera –no-build-isolation dengan pip dapat membantu. Model ini, yang dilatih pada dataset ekstensif seperti Pile dan SlimPajama, dirancang untuk memenuhi berbagai kebutuhan komputasi dan benchmark kinerja.

Mamba menawarkan berbagai tingkat antarmuka, dari lapisan SSM selektif hingga blok Mamba dan struktur model bahasa lengkap. Blok Mamba, yang merupakan modul utama arsitektur, menggunakan lapisan Conv1d kausal dan dapat dengan mudah diintegrasikan ke dalam desain jaringan neural. Contoh penggunaan yang disediakan dalam Python menunjukkan instantiation model Mamba dan pemrosesan data melalui itu, menyoroti kesederhanaan dan fleksibilitas sistem.

Model Mamba pra-pelatihan tersedia di Hugging Face, dengan ukuran mulai dari 130M hingga 2,8B parameter, dilatih pada dataset Pile ekstensif dan dataset SlimPajama. Model ini dirancang untuk memenuhi kebutuhan komputasi dan kinerja yang beragam, mematuhi standar dimensional GPT-3. Pengguna dapat mengharapkan throughput yang tinggi dan akurasi dari model ini, membuat Mamba menjadi pilihan yang kompetitif untuk berbagai aplikasi, termasuk tetapi tidak terbatas pada pemodelan bahasa.

Dampak Mamba

Mamba mewakili lompatan besar dalam pemodelan sekuen, menawarkan alternatif kuat untuk arsitektur Transformer untuk memproses data yang kaya informasi. Desainnya sejalan dengan tuntutan perangkat keras modern, mengoptimalkan penggunaan memori dan kemampuan pemrosesan paralel. Ketersediaan kode sumber Mamba dan model pra-pelatihannya yang terbuka membuatnya menjadi alat yang dapat diakses dan kuat untuk peneliti dan pengembang di bidang AI dan pembelajaran dalam.

Saya telah menghabiskan lima tahun terakhir dengan membenamkan diri dalam dunia Machine Learning dan Deep Learning yang menarik. Minat dan keahlian saya telah memimpin saya untuk berkontribusi pada lebih dari 50 proyek rekayasa perangkat lunak yang beragam, dengan fokus khusus pada AI/ML. Rasa ingin tahu saya yang terus-menerus juga telah menarik saya ke arah Natural Language Processing, sebuah bidang yang saya ingin jelajahi lebih lanjut.