Aplikasi semasa model bahasa besar dihadkan oleh had panjang jujukan, yang mengehadkan penggunaannya dalam bidang kecerdasan buatan. Sebagai contoh, terdapat cabaran tertentu dalam dialog berbilang pusingan, pemahaman teks yang panjang, dan pemprosesan dan penjanaan data berbilang modal. Sebab asas untuk had ini ialah seni bina Transformer yang biasa digunakan dalam model bahasa besar pada masa ini mempunyai hubungan kuadratik antara kerumitan pengiraan dan panjang jujukan. Oleh itu, apabila panjang jujukan meningkat, permintaan untuk sumber pengkomputeran meningkat secara eksponen. Oleh itu, cara memproses urutan panjang dengan cekap sentiasa menjadi salah satu cabaran yang dihadapi oleh model bahasa yang besar.
Pendekatan terdahulu tertumpu terutamanya pada menyesuaikan model bahasa besar kepada urutan yang lebih panjang semasa peringkat inferens. Satu pendekatan adalah menggunakan Alibi atau pengekodan kedudukan relatif yang serupa untuk membolehkan model menyesuaikan diri dengan urutan input dengan panjang yang berbeza. Pendekatan lain ialah menggunakan RoPE atau pengekodan kedudukan relatif yang serupa untuk perbezaan, dan memperhalusi secara ringkas model yang telah dilatih untuk memanjangkan panjang jujukan. Kaedah ini membolehkan model besar mempunyai keupayaan pemodelan jujukan panjang tertentu, tetapi overhed latihan dan inferens tidak dikurangkan.
Pasukan OpenNLPLab telah membuka mekanisme perhatian linear baharu yang dipanggil Lightning Attention-2, yang direka untuk menyelesaikan masalah jujukan panjang model bahasa besar. Mekanisme ini mengekalkan kos latihan dan membuat kesimpulan urutan panjang konsisten dengan panjang jujukan 1K, membolehkan penyelesaian set-dan-lupakan. Walaupun sebelum mengalami kesesakan memori, peningkatan panjang jujukan tidak memberi kesan negatif terhadap kelajuan latihan model, sekali gus membolehkan pralatihan panjang tanpa had. Di samping itu, kos inferens bagi teks yang sangat panjang juga konsisten atau lebih rendah berbanding Token 1K, sekali gus mengurangkan kos inferens model bahasa besar semasa. Seperti yang ditunjukkan dalam rajah di bawah, apabila saiz model ialah 400M, 1B dan 3B, apabila panjang jujukan meningkat, kelajuan latihan LLaMA yang disokong oleh FlashAttention2 mula berkurangan dengan cepat, manakala kelajuan TansNormerLLM disokong oleh Lightning Attention-2 hampir tiada perubahan. . Alamat kertas: https:// arxiv.org/pdf/2401.04658.pdf
Open Sumber Alamat: https://github.com/opennlplab/lightnning-attention
1 Salah satu idea teras Perhatian Linear ialah mengeluarkan operator softmax yang mahal secara pengiraan, supaya formula pengiraan Perhatian boleh ditulis sebagai O=((QK^T)⊙M_) V. Walau bagaimanapun, disebabkan kewujudan matriks topeng M dalam tugasan sehala, borang ini masih boleh melakukan pengiraan pendaraban kiri sahaja, jadi kerumitan O (N) tidak dapat diperolehi. Tetapi untuk tugas dua hala, kerana tiada matriks topeng, formula pengiraan Perhatian Linear boleh dipermudahkan lagi kepada O=(QK^T) V. Kehalusan Perhatian Linear ialah dengan hanya menggunakan hukum bersekutu pendaraban matriks, formula pengiraannya boleh diubah lagi menjadi: O=Q (K^T V Borang pengiraan ini dipanggil pendaraban betul, dan bekas yang sepadan ialah Ambil kiri. Daripada Rajah 2, kita secara intuitif dapat memahami bahawa Perhatian Linear boleh mencapai kerumitan O (N) yang menarik dalam tugasan dua arah!
2 Namun, memandangkan model GPT penyahkod sahaja secara beransur-ansur menjadi standard de facto LLM, cara menggunakan ciri pendaraban Linear Attention yang betul untuk mempercepatkan tugasan sehala telah menjadi masalah mendesak untuk diselesaikan. Untuk menyelesaikan masalah ini, penulis artikel ini mencadangkan untuk menggunakan idea "bahagi dan menakluki" untuk membahagikan pengiraan matriks perhatian kepada dua bentuk: matriks pepenjuru dan matriks bukan pepenjuru, dan menggunakan kaedah yang berbeza. cara untuk mengira mereka. Seperti yang ditunjukkan dalam Rajah 3, Linear Attention-2 menggunakan idea Tiling yang biasa digunakan dalam medan komputer untuk membahagikan matriks Q, K, dan V kepada bilangan blok yang sama. Antaranya, pengiraan bongkah itu sendiri (intra-blok) masih mengekalkan kaedah pengiraan pendaraban kiri kerana kewujudan matriks topeng, dengan kerumitan O (N^2 manakala pengiraan bongkah (antara-); blok) tidak mempunyai matriks topeng, anda boleh menggunakan kaedah pengiraan pendaraban yang betul untuk menikmati kerumitan O (N). Selepas kedua-duanya dikira secara berasingan, ia boleh ditambah terus untuk mendapatkan output Perhatian Linear Oi sepadan dengan blok ke-i. Pada masa yang sama, keadaan KV terkumpul melalui cumsum untuk digunakan dalam pengiraan blok seterusnya. Dengan cara ini, kerumitan algoritma bagi keseluruhan Lightning Attention-2 ialah O (N^2) untuk intra-blok dan O (N) untuk Trade-off antara blok. Cara untuk mendapatkan pertukaran yang lebih baik ditentukan oleh saiz blok Tiling.
3 Pembaca yang teliti akan mendapati bahawa proses di atas hanyalah sebahagian daripada algoritma Lightning Attention-2 Sebab mengapa ia dinamakan Lightning adalah kerana penulis mempertimbangkan sepenuhnya kecekapan proses algoritma dalam proses pelaksanaan perkakasan GPU. . Diilhamkan oleh siri kerja FlashAttention, apabila benar-benar melakukan pengiraan pada GPU, pengarang mengalihkan tensor Q_i, K_i, V_i split daripada HBM yang lebih perlahan dengan kapasiti yang lebih besar di dalam GPU kepada SRAM yang lebih pantas dengan kapasiti yang lebih kecil sistem, dengan itu mengurangkan sejumlah besar overhed IO memori. Selepas blok melengkapkan pengiraan Perhatian Linear, hasil keluarannya O_i akan dialihkan kembali ke HBM. Ulangi proses ini sehingga semua blok telah diproses.
Pembaca yang ingin mengetahui butiran lanjut boleh membaca Algoritma 1 dan Algoritma 2 dengan teliti dalam artikel ini, serta proses terbitan terperinci dalam kertas. Kedua-dua Algoritma dan proses derivasi membezakan antara proses hadapan dan belakang Lightning Attention-2, yang boleh membantu pembaca memahami dengan lebih mendalam.
Rajah 3
400M) model parameter kilat perhatian -1 perbezaan ketepatan, seperti yang ditunjukkan dalam rajah di bawah, hampir tiada perbezaan antara kedua-duanya.
Kemudian penyelidik membandingkan TransNormerLLM (TNL-LA2) yang disokong oleh Lightning Attention-2 dengan rangkaian seni bina bukan Transformer termaju dan LLaMA yang disokong oleh FlashAttention2 pada 1B dan 3B di bawah korpus yang sama. Seperti yang ditunjukkan dalam rajah di bawah, TNL-LA2 dan LLaMA mengekalkan arah aliran yang sama, dan prestasi kerugian adalah lebih baik. Percubaan ini menunjukkan bahawa Lightning Attention-2 mempunyai prestasi ketepatan yang tidak kalah dengan seni bina Transformer terkini dalam pemodelan bahasa.
Dalam tugas model bahasa yang besar, penyelidik membandingkan keputusan TNL-LA2 15B dan Pythia pada penanda aras biasa untuk model besar dengan saiz yang serupa. Seperti yang ditunjukkan dalam jadual di bawah, di bawah syarat memakan token yang sama, TNL-LA2 adalah lebih tinggi sedikit daripada model Pythia berdasarkan perhatian Softmax dalam penaakulan akal dan keupayaan komprehensif pelbagai pilihan.
Para penyelidik membandingkan kelajuan modul tunggal dan penggunaan memori Lightning Attention-2 dan FlashAttention2. Seperti yang ditunjukkan dalam rajah di bawah, berbanding Lightning Attention-1 dan FlashAttention2, Lightning Attention-2 menunjukkan peningkatan linear yang ketat dalam kelajuan berbanding dengan panjang jujukan. Dari segi penggunaan memori, ketiga-tiga menunjukkan arah aliran yang sama, tetapi Lightning Attention-2 mempunyai jejak memori yang lebih kecil. Sebabnya ialah penggunaan memori FlashAttention2 dan Lightning Attention-1 juga lebih kurang linear. . Dari segi kelajuan penaakulan, tidak banyak pengenalan. Ini adalah kerana perhatian linear boleh ditukar tanpa rugi kepada mod RNN semasa inferens, dengan itu mencapai kesan yang sama, iaitu, kelajuan membuat kesimpulan satu token adalah malar. Untuk Transformer, kelajuan inferens token semasa adalah berkaitan dengan bilangan token sebelumnya.
Pengarang menguji perbandingan dalam kelajuan inferens antara TransNormerLLM-7B yang disokong oleh Lightning Attention-1 dan model 7B biasa. Seperti yang ditunjukkan dalam rajah di bawah, di bawah anggaran saiz parameter, kelajuan pemprosesan Lightning Attention-1 ialah 4 kali ganda daripada Baichuan dan lebih daripada 3.5 kali ganda daripada ChatGLM, menunjukkan kelebihan kelajuan inferens yang sangat baik.
Ringkasan
Lightning Attention-2 mewakili kemajuan besar dalam mekanisme perhatian linear, menjadikannya pengganti sempurna untuk perhatian Softmax tradisional dari segi ketepatan dan kelajuan, menyediakan platform untuk lebih dan lebih banyak perhatian pada masa hadapan. Pasukan OpenNLPLab akan mengkaji algoritma selari berjujukan berdasarkan mekanisme perhatian linear pada masa hadapan untuk menyelesaikan masalah halangan memori yang dihadapi pada masa ini.
Atas ialah kandungan terperinci Mekanisme perhatian generasi baharu Perhatian Kilat-2: panjang jujukan tanpa had, overhed kuasa pengkomputeran berterusan, ketepatan pemodelan yang lebih tinggi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!