Rumah > Peranti teknologi > AI > teks badan

Helah kecil dengan kesan besar, 'hanya baca gesaan dua kali' membolehkan model bahasa kitaran mengatasi Transformer++

WBOY
Lepaskan: 2024-08-05 17:09:49
asal
483 orang telah melayarinya

Dalam bidang AI semasa, seni bina arus perdana yang digunakan oleh model bahasa besar ialah Transformer. Walau bagaimanapun, dengan kemunculan seni bina seperti RWKV dan Mamba, terdapat trend yang jelas: model bahasa besar kitaran yang bersaing dengan Transformer dari segi kebingungan pemodelan bahasa dengan cepat menarik perhatian orang ramai.

Apa yang menarik ialah seni bina ini menggunakan jumlah ingatan yang berterusan semasa inferens. Walau bagaimanapun, disebabkan ingatan yang terhad, model bahasa berulang (LM) tidak dapat mengingat dan menggunakan semua maklumat dalam konteks yang panjang, yang membawa kepada kualiti pembelajaran dalam konteks (ICL) yang lemah. Oleh itu, cabaran utama dalam mendapatkan model bahasa besar yang cekap ialah memilih maklumat yang hendak disimpan atau dibuang.

Dalam kertas baru-baru ini "Baru baca dua kali: menutup jurang ingatan untuk model bahasa berulang", penyelidik dari Universiti Stanford dan Universiti di Buffalo mendapati melalui pemerhatian mudah bahawa data mengalir ke dalam kutub penyisihan model bahasa berulang semasa inferens menjejaskan kesukaran meramal maklumat yang hendak disimpan dalam ingatan terhad.

Kami mengandaikan bahawa kami mengajukan soalan berdasarkan dokumen D (seperti Wikipedia terperinci Galileo Galilei): Bilakah Galileo berpindah ke Florence? Pada masa ini, jika gesaan mengikut pesanan [Q, D], model hanya perlu mengingati satu fakta dalam dokumen D. Sebaliknya, jika isyarat mengikut susunan [D, Q], model perlu mengingati semua fakta. Ini ditunjukkan dalam Rajah 1 (kiri) di bawah.

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

Oleh itu, kertas kerja ini mula-mula secara teorinya memformalkan cara pengisihan data mempengaruhi keperluan memori, dan kemudian mencadangkan dua kaedah untuk mengurangkan pergantungan pada pengisihan data, iaitu strategi gesaan Just-read-twice (JRT) dan JRT seni bina. Artikel ini terbahagi terutamanya kepada bahagian berikut:

Memahami peranan pengisihan data. Wawasan pertama yang diperoleh penyelidik adalah bahawa kekerasan masalah ingatan harus dikurangkan kepada sama seperti set disjointness (SD), yang merupakan masalah paling tipikal dalam teori kerumitan komunikasi yang telah berlangsung selama beberapa dekad. SD memerlukan algoritma penstriman (seperti model berulang) untuk memutuskan sama ada untuk mengelupas set input yang disediakan dalam konteks:

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

Analisis teori dan keputusan eksperimen menunjukkan bahawa set pertama |A| mendominasi memori yang diperlukan untuk menyelesaikan SD. Model kausal memerlukan menyimpan semua unsur dalam A untuk dibandingkan dengan unsur dalam B. Ini menunjukkan bahawa menggunakan "pesanan data yang betul" dalam konteks (seperti meletakkan set min terkecil (|A|, |B|) dahulu) akan membantu model yang dikekang memori. Tambahan pula, diperhatikan bahawa model dengan logik sebab kontekstual boleh menyelesaikan SD dalam ruang terkecil (|A|, |B|) tanpa mengambil kira susunan data.

Kedua ialah menggunakan pengisihan "betul". Artikel ini mencadangkan strategi JRT-Prompt yang sangat mudah yang mengulangi maklumat beberapa kali dalam konteks sebelum model menjana jawapan (ditunjukkan dalam Rajah 1 di atas, kanan). Dalam pusingan kedua dan seterusnya, model bahasa adalah bersyarat pada konteks lengkap apabila memutuskan maklumat yang hendak disimpan, dengan berkesan mengelakkan masalah "memperbaharui" pengisihan data.

Hasilnya menunjukkan bahawa JRT-Prompt mencapai purata peningkatan 11.0 ± 1.3 mata peratusan pada 16 model bahasa berulang sedia ada dan 6 tugasan ICL, manakala daya pemprosesan ialah 11.9 daripada FlashAttention-2 (panjang 32k, saiz kelompok 16) kali. Walaupun JRT-Prompt meningkatkan panjang konteks, ia masih secara asimtotik lebih pengiraan dan cekap memori daripada perhatian.

Melebihi Model Kausal. Kertas kerja ini mencadangkan JRT-RNN, yang diilhamkan oleh reka bentuk seni bina pengekod-penyahkod Prefix-LM yang ringkas. Kebanyakan input pembelajaran kontekstual mengandungi dua bahagian, iaitu gesaan input (konteks, arahan) dan teks yang dihasilkan model sebagai output. Dalam seni bina Awalan-LM, LM tidak memproses rantau kiu mengikut logik sebab, tetapi menyahkod keluaran secara sebab, di mana hanya kerugian ramalan token seterusnya standard digunakan pada rantau sebab dan kerugian pada rantau bukan sebab.

Namun, malangnya, kaedah latihan model Prefix-LM sebelum ini telah mencapai kejayaan yang terhad dan menggunakan tulang belakang Transformer yang tidak cekap. Oleh itu, artikel ini meningkatkan kualiti dan kecekapan melalui beberapa perubahan mudah, termasuk menambah baik kehilangan latihan dan menggunakan formula perhatian linear yang dipanggil "Perhatian Linear Awalan, PLA". Para penyelidik mendapati bahawa menggunakan pelaksanaan IO-aware mereka, JRT-RNN boleh memberikan peningkatan kualiti purata sebanyak 13.7 dan 6.9 mata peratusan pada tetapan parameter 360m dan 1.3b, masing-masing, dengan daya pemprosesan 19.2 kali ganda daripada FA2.

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

  • Alamat kertas: https://arxiv.org/pdf/2407.05483

  • Laman utama projek: https://github.com/HazyResearch/prefix-linear-attention

    🜎
  • Gambaran keseluruhan kaedah segera

Kontextuelle Lernaufgaben verwenden (C, Q, Y) als Eingabe, wobei C eine Kontextquelle (z. B. ein Dokument oder ein Code-Repository), Q eine Frage oder Anforderung an das Modell angesichts des Kontexts und Y die Antwort ist. Beim Standard-Kontextlernen mit autoregressivem LM A nimmt der Forscher die Eingaben C und Q und wertet die resultierende Ausgabe Yˆ = A (C, Q) anhand der korrekten Vervollständigung Y aus.

JRT-Prompt ist eine äußerst einfache Methode, die die Informationen in der Eingabeaufforderung (z. B. Fragen und Dokumente) im Kontext wiederholt, bevor das Modell aufgefordert wird, die Antwort auszugeben, z. B. Yˆ = A (C, Q, C rechts in). Abbildung 1 unten) , Q). Daher entscheidet das Modell beim zweiten Auftreten des Kontexts, welche Informationen gespeichert werden sollen, basierend auf dem vollständigen Kontext.

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

Darüber hinaus kann JRT-Prompt mit vorgefertigtem LLM verwendet werden. Die Forscher bewerteten das folgende LM anhand einer Reihe speicherintensiver kontextbezogener Aufgaben unter Eingabeaufforderungen ohne Stichproben:

  • Basierend auf vorab trainiertem LM mit einer Parametergröße von 1,3 B, trainiert auf Piles 10–50B-Tokens

  • Mamba vorab trainiertes LM, Parametergröße ist 130M, 370M, 1,4B und 2,8B, trainiert auf Piles 300B-Token;

  • Gated Linear Attention vorab trainiertes LM, Parametergröße ist 1,3B und 2,7B, trainiert auf 100B-Token des SlimPajama-Datensatzes;

  • Mamba-2 vorab trainiertes LM mit Parametergrößen von 130M, 370M, 1,3B und 2,7B, trainiert auf 300B Pile-Token.

Die Ergebnisse sind in Tabelle 1 unten dargestellt. Durch die Erhöhung der Zustandsgröße stellte der Forscher fest, dass die JRT-Prompt-Methode bei verschiedenen Modellen und Aufgaben eine durchschnittliche Leistungsverbesserung von 11,0 ± 1,3 Prozentpunkten brachte Die Methode übertrifft im Durchschnitt Transformer-Modelle, die Standardhinweise verwenden.

Sie fanden außerdem heraus, dass JRT-Prompt dem Transformer-Modell zugute kommen kann und dass die Methode bei einigen Aufgaben effektiver ist als das Lernen mit wenigen Schüssen (Anhang 2). Es ist erwähnenswert, dass Springer et al. in dem Artikel „Wiederholung verbessert die Einbettung von Sprachmodellen“ vorgeschlagen haben, das autoregressive Transformer-Modell zu verwenden, um den Zweck der Generierung von Einbettungen zu erreichen. Die Forscher konzentrieren sich auf subquadratische Architektur und kontextuelle Lernaufgaben.

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

JRT-Prompt Obwohl die Kontextlänge aufgrund von Wiederholungen zunimmt, ist die verwendete subquadratische Schleifenarchitektur immer noch effizienter als die Verwendung des quadratischen Transformer-Modells. Die Forscher fanden heraus, dass die Verwendung von JRT-Prompt (Sequenzlänge 2N) den 11,9-fachen Durchsatz von FlashAttention-2 (Sequenzlänge N) auf dem NVIDIA H100 bei Sequenzlänge N = 32768 und Stapelgröße 16 lieferte.

JRT-RNN: Encoder-Decoder-Loop-Architektur

JRT-RNN ist von Prefix-LMs inspiriert, konzentriert sich jedoch auf die Erweiterung der Pareto-Grenze des Kompromissraums zwischen Qualität und Effizienz. Um die Qualität zu verbessern, verwendet JRT-RNN separate k_e- und v_e-Zuordnungen auf der Encoderseite und k_d- und v_d-Zuordnungen auf der Decoderseite. Obwohl das Prefix-LM-Modell gemeinsame Mapping-Gewichte für die Encoder- und Decoder-Regionen verwendet, stellten die Forscher fest, dass die Verwendung von zwei Mapping-Sätzen die Qualität verbessert.

Um die Effizienz zu verbessern, verwendet JRT-RNN nicht-kausale lineare Aufmerksamkeit für den Encoder und standardmäßige kausale lineare Aufmerksamkeit für den Decoder. Die Forscher nennen es Prefix Linear Attention (PLA) (rechts in Abbildung 1), und die Formel lautet wie folgt:

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

JRT-RNN-Trainingsziel. Präfix-LMs berechnen typischerweise keine Verluste in nicht-kausalen Regionen, während JRT-RNN die Vorhersage des nächsten Tokens mit einem Masked Language Modeling (MLM)-Ziel kombiniert. Und für das hinzugefügte MLM-Ziel ersetzten die Forscher Token mit Anteil P aus der Encoderregion {u_1, ..., u_M} durch einen [MASK]-Token und maßen den Kreuzentropieverlust Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++ bei der Vorhersage des ursprünglichen Tokens.

Die Verluste sind wie folgt:

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

Experimentelle Ergebnisse

Im Experiment bewerteten die Forscher die Qualität und Effizienz von JRT-RNN anhand der folgenden drei Indikatoren:

  • Qualität des Kontextlernens

  • Gesamtsprachmodellierung

  • Generierung

Qualität des Kontextlernens

Wie in Tabelle 2 unten gezeigt, stellten die Forscher fest, dass JRT-RNN besser ist als die reine Decoder-Basislinie (basiert), wenn die Parameter 360M betragen (30B-Tokens) Der Durchschnitt ist 13,7 Prozentpunkte höher, und der Durchschnitt ist 6,9 Prozentpunkte höher, wenn der Parameter 1,3B (50B-Tokens) beträgt.

Gleichzeitig wird die Lücke zwischen JRT-RNN und Transformer++ auf 0,5 Prozentpunkte bzw. 1,9 Prozentpunkte verringert, wenn die Parameter 360M bzw. 1,3B betragen.

In Tabelle 3 unten vergleichen die Forscher die Leistung von JRT-RNN mit ähnlichen Inferenzstrategien, wenn die Vorfülllänge l kleiner als die Encoderlänge M ist.

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

Allgemeines Verständnis natürlicher Sprache

Basierend auf früheren Untersuchungen haben Forscher die Verwirrung weiter in zwei Gruppen unterteilt: Das assoziative Gedächtnis „AR-Slice“ umfasst Token, die als „AR-Hits“ bezeichnet werden und erfordern, dass das Modell dem Gedächtnis folgt nacheinander, um das nächste Token korrekt vorherzusagen, und das „Andere Slice“ enthält die verbleibenden Token (z. B. gespeichertes Wissen).

Bei der Speicherfrequenz schneidet JRT-RNN im „AR-Slice“ gut ab. Bei Bigrammen, die während des Trainings ungewöhnlich sind (d. h. weniger wahrscheinlich in den Modellparametern gespeichert werden), verbessert sich die Perplexität von JRT-RNN im Vergleich zu Based und Mamba, zwei starken Basislinien für Kausalschleifen.

Bei der Speicherdistanz vergrößert sich im „AR-Slice“ die Lücke zwischen JRT-RNN und der Nur-Decoder-Basislinie, wenn die Anzahl der wiederholten Bigramme im Kontext zunimmt. Dies beweist weiter, dass JRT-RNN dabei helfen kann, längere kontextbezogene Gedächtnisaufgaben zu erledigen.

Nicht-Speicherfrequenz. Für „andere Slices“ von Bigrammen ohne Speicher, die während des Trainings selten gesehen werden, weist JRT-RNN eine größere Verwirrung auf als der Nur-Decoder-LM. Dies ist ein erwartetes Ergebnis, da JRT-RNN den Verlust nur für 65 % der Token des Decoder-LM berechnet.

Wir gehen davon aus, dass diese Lücke mit zunehmender Größe und Trainingszeit kleiner wird (mit zunehmender Bigram-Häufigkeit zunimmt) (Abbildung 3, oben links).

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

Generationsdurchsatz

Generation kann in zwei Schritte zerlegt werden: Eingabeaufforderung „Vorabfüllungsverarbeitung“ und Dekodierung „Nächste Token-Vorhersage“. Im Vergleich zum Standard-Decoder-Only-Loop-Modell ändert JRT-RNN den Decodierungsschritt nicht, daher konzentriert sich die Diskussion auf die Vorfüllphase.

Unter Verwendung des in der Arbeit „Simple linear Attention Language Models Balance the Recall-Throughput Tradeof“ von Simran Arora et al. vorgeschlagenen Based CUDAn-Kernels beträgt der Durchsatz von JRT-Prompt bei der Verarbeitung der Vorfüllung 11,9 und 13,7 des FlashAttention-2 und FLA-Triton-Kernel-Zeiten, wie in Tabelle 5 unten gezeigt.

Als die Forscher die Chargengröße auf 64 erhöhten, war der JRT-Prompt-Durchsatz 6,1-mal bzw. 7,2-mal höher als der der FlashAttention-2- bzw. FLA-Triton-Kernel.

Als nächstes erweiterten sie den Based-Kernel, um JRT-RNN zu unterstützen, und zeigten, dass bei einer Erhöhung der Sequenzlänge auf 32768 der Durchsatz 19,2-mal bzw. 22,0-mal so hoch war wie bei FlashAttention-2 bzw. FLA. Bei einer Erhöhung der Batch-Größe auf 64 bietet JRT-RNN weitere 9,7-fache bzw. 11,5-fache Durchsatzverbesserungen. Die von JRT-RNN benötigte Zeit beträgt das 1,24-fache der Zeit von Based Prefill, was effizienter als JRT-Prompt ist.

Helah kecil dengan kesan besar, hanya baca gesaan dua kali membolehkan model bahasa kitaran mengatasi Transformer++

Weitere technische Details und experimentelle Ergebnisse finden Sie im Originalpapier.

Atas ialah kandungan terperinci Helah kecil dengan kesan besar, 'hanya baca gesaan dua kali' membolehkan model bahasa kitaran mengatasi Transformer++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:jiqizhixin.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!