Rumah  >  Artikel  >  Peranti teknologi  >  Mahu memindahkan separuh daripada "A Dream of Red Mansions" ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Mahu memindahkan separuh daripada "A Dream of Red Mansions" ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

WBOY
WBOYke hadapan
2023-05-01 21:01:05785semak imbas

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Dalam dua tahun yang lalu, Makmal Penyelidikan Hazy di Universiti Stanford telah terlibat dalam kerja penting: Meningkatkan panjang jujukan .

Mereka mempunyai pandangan: urutan yang lebih panjang akan membawa kepada era baharu model pembelajaran mesin asas - model yang boleh belajar daripada konteks yang lebih panjang dan pelbagai sumber media, kompleks demonstrasi, dsb. untuk belajar.

Pada masa ini, penyelidikan ini telah mencapai kemajuan baharu. Tri Dao dan Dan Fu dari makmal Penyelidikan Hazy mengetuai penyelidikan dan promosi algoritma FlashAttention Mereka membuktikan bahawa panjang jujukan 32k adalah mungkin dan akan digunakan secara meluas dalam era model asas semasa (OpenAI, Microsoft, NVIDIA dan syarikat lain. model menggunakan algoritma FlashAttention).

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Panjang konteks model asas telah berkembang, jadi apakah peringkat seterusnya ?

  • Alamat kertas: https://arxiv.org/abs/2205.14135
  • Alamat kod: https://github.com/HazyResearch/flash-attention
Seperti yang ditunjukkan oleh maklumat berkaitan GPT4, ia Membenarkan hampir 50 halaman teks sebagai konteks dan melaksanakan tokenisasi/penampalan seperti Deepmind Gato menggunakan imej sebagai konteks.

Dalam artikel ini, penulis memperkenalkan kaedah baharu untuk menambah panjang jujukan pada tahap tinggi dan menyediakan "jambatan" kepada set primitif baharu.

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Transformer semakin dalam dan lebih luas, tetapi melatih mereka pada urutan yang panjang masih sukar . Masalah asas yang dihadapi oleh penyelidik ialah lapisan perhatian Transformer berkembang secara kuadratik dalam panjang jujukan: iaitu, meningkat daripada panjang 32k kepada panjang 64k, kos bukan sahaja meningkat sebanyak 2 kali ganda, tetapi sebanyak 4 kali ganda. Oleh itu, ini mendorong penyelidik untuk meneroka model panjang jujukan dengan kerumitan masa linear.

Di makmal Penyelidikan Hazy, kerja ini bermula dengan Hippo, kemudian S4, H3, dan kini Hyena. Model ini berpotensi untuk mengendalikan panjang konteks dalam berjuta-juta malah berbilion-bilion.

FlashAttention mempercepatkan perhatian dan mengurangkan jejak ingatannya - tanpa sebarang anggaran. "Sejak kami mengeluarkan FlashAttention 6 bulan yang lalu, kami teruja melihat banyak organisasi dan makmal penyelidikan menggunakan FlashAttention untuk mempercepatkan latihan dan inferens mereka," catatan blog itu berbunyi.

FlashAttention ialah kaedah yang menyusun semula pengiraan perhatian dan memanfaatkan teknik klasik (jubin, pengiraan semula) untuk mempercepat dan mengurangkan penggunaan memori daripada kuadratik kepada linear dalam algoritma panjang jujukan. Untuk setiap kepala perhatian, untuk mengurangkan bacaan/tulisan memori, FlashAttention menggunakan teknik jubin klasik untuk memuatkan pertanyaan, kunci dan blok nilai daripada GPU HBM (memori utamanya) ke SRAM (cache pantasnya), mengira perhatian dan menulis output kembali kepada HBM. Pengurangan dalam ingatan membaca/menulis menghasilkan kelajuan yang ketara (2-4x) dalam kebanyakan kes.

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

FlashAttention mempercepatkan perhatian dengan mengurangkan memori GPU membaca dan menulis.

Seterusnya, mari lihat butiran kajian.

Tanda Aras Arena Jarak Jauh dan S4

Penyelidik di Google melancarkan penanda aras Arena Jarak Jauh (LRA) pada tahun 2020 untuk menilai sejauh mana model yang berbeza mengendalikan kebergantungan jarak jauh. LRA mampu menguji pelbagai tugasan yang meliputi pelbagai jenis dan modaliti data yang berbeza, seperti teks, imej dan ungkapan matematik, dengan panjang jujukan sehingga 16K (Laluan-X: Pengelasan imej terbentang ke dalam piksel tanpa sebarang bias generalisasi spatial). Terdapat banyak kerja hebat untuk menskalakan Transformer kepada jujukan yang lebih panjang, tetapi banyak daripadanya seolah-olah mengorbankan ketepatan (seperti yang ditunjukkan dalam imej di bawah). Perhatikan lajur Path-X: semua kaedah Transformer dan variannya berprestasi lebih teruk daripada meneka rawak.

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Tanda aras berbilang varian Transformer pada set data LRA dan Bandingkannya dengan S4.

Sekarang mari kita mengenali S4, yang dibangunkan oleh Albert Gu. Diilhamkan oleh hasil penanda aras LRA, Albert Gu ingin mengetahui cara untuk memodelkan kebergantungan jarak jauh dengan lebih baik Berdasarkan penyelidikan jangka panjang tentang hubungan antara polinomial ortogon dan model rekursif dan model konvolusi, beliau melancarkan S4—— Model jujukan baharu. berdasarkan model ruang keadaan berstruktur (SSM).

Intinya ialah kerumitan masa SSM apabila memanjangkan urutan panjang N hingga 2N ialah Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu, tidak seperti perhatian Mekanisme ini juga berkembang pada aras persegi! S4 berjaya memodelkan kebergantungan jarak jauh dalam LRA dan menjadi model pertama yang mencapai prestasi melebihi purata pada Path-X (kini mencapai ketepatan 96.4%!). Sejak keluaran S4, ramai penyelidik telah membangun dan berinovasi atas dasar ini, dengan model baharu seperti model S5 pasukan Scott Linderman, DSS Ankit Gupta (dan makmal Penyelidikan Hazy S4D berikutnya), Hasani dan Lechner's Liquid-S4, dll. Model.

Selain itu, apabila Hazy Research mengeluarkan FlashAttention, sudah mungkin untuk meningkatkan panjang jujukan Transformer. Mereka juga mendapati Transformer juga mencapai prestasi unggul pada Path-X (63%) hanya dengan meningkatkan panjang jujukan kepada 16K.

Kekurangan dalam pemodelan

Tetapi terdapat jurang dalam kualiti pemodelan bahasa dalam S4 setinggi 5% kebingungan (untuk konteks, ini adalah model 125M dan 6.7 B jurang antara model). Untuk merapatkan jurang ini, penyelidik telah mengkaji bahasa sintetik seperti ingatan bersekutu untuk menentukan sifat yang perlu dimiliki oleh bahasa. Reka bentuk akhir ialah H3 (Hungry Hungry Hippos): lapisan baharu yang menyusun dua SSM dan mendarabkan outputnya dengan get pendaraban.

Menggunakan H3, penyelidik di Hazy Research menggantikan hampir semua lapisan perhatian dalam Transformer gaya GPT dan dapat mencapai kebingungan yang lebih tinggi dan Setanding dengan transformer dari segi penilaian hiliran.

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Oleh kerana lapisan H3 dibina pada SSM, kerumitan pengiraannya juga tinggi dari segi panjang jujukan . Berkembang pada kadar Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu. Dua lapisan perhatian menjadikan kerumitan keseluruhan model masih

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu Isu ini akan dibincangkan secara terperinci kemudian.

Sudah tentu, Hazy Research bukan satu-satunya yang mempertimbangkan arah ini: GSS juga mendapati bahawa SSM dengan gating boleh berfungsi dengan baik dengan perhatian dalam pemodelan bahasa (H3 yang diilhamkan ini), Meta mengeluarkan model The Mega, yang juga menggabungkan SSM dan perhatian, model BiGS menggantikan perhatian dalam model gaya BERT, dan RWKV telah mengusahakan pendekatan bergelung sepenuhnya.

Kemajuan baharu: Hyena

Berdasarkan siri kerja terdahulu, penyelidik di Hazy Research mendapat inspirasi untuk membangunkan seni bina baharu: Hyena. Mereka cuba menyingkirkan dua lapisan perhatian terakhir dalam H3 dan mendapatkan model yang tumbuh hampir secara linear untuk panjang jujukan yang lebih panjang. Ternyata dua idea mudah adalah kunci untuk mencari jawapan:

  • Setiap SSM boleh dilihat sebagai penapis konvolusi dengan panjang yang sama dengan jujukan input. Oleh itu, SSM boleh digantikan dengan lilitan saiz yang sama dengan jujukan input untuk mendapatkan model yang lebih berkuasa dengan usaha pengiraan yang sama. Khususnya, penapis konvolusi secara tersirat diparameterkan oleh rangkaian saraf kecil yang lain, menggunakan kaedah berkuasa daripada literatur medan saraf dan berfungsi pada CKConv/FlexConv. Di samping itu, lilitan boleh dikira dalam masa O (NlogN), di mana N ialah panjang jujukan, mencapai pengembangan hampir linear; mengambil tiga unjuran input dan berulang-ulang berbelit dan menggunakan gating. Di Hyena, hanya menambahkan lebih banyak unjuran dan lebih banyak gerbang membantu membuat generalisasi kepada seni bina yang lebih ekspresif dan merapatkan jurang dengan perhatian.
  • Hyena mula-mula mencadangkan model lilitan temporal hampir linear sepenuhnya, yang boleh memadankan Transformer dalam kebingungan dan tugas hiliran, dan mencapai keputusan yang baik dalam hasil percubaan. Dan model kecil dan sederhana telah dilatih pada subset PILE, dan prestasinya adalah setanding dengan Transformer:

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Dengan beberapa pengoptimuman (lebih lanjut mengenai perkara di bawah), model Hyena adalah lebih perlahan sedikit daripada Transformer dengan saiz yang sama pada panjang jujukan 2K, tetapi lebih pantas pada panjang jujukan yang lebih panjang.

Apa yang masih perlu dipertimbangkan ialah, sejauh manakah model ini boleh digeneralisasikan? Adakah mungkin untuk menskalakannya kepada saiz penuh PILE (400B token)? Apakah yang akan berlaku jika anda menggabungkan idea terbaik H3 dan Hyena, dan sejauh mana ia boleh pergi?

FFT atau pendekatan yang lebih asas?

Dalam semua model ini, operasi asas yang biasa ialah FFT, yang merupakan cara yang cekap untuk mengira lilitan dan hanya mengambil masa O (NlogN). Walau bagaimanapun, FFT kurang disokong pada perkakasan moden dengan seni bina yang dominan ialah unit pendaraban matriks khusus dan GEMM (cth. teras tensor pada GPU NVIDIA).

Jurang kecekapan boleh ditutup dengan menulis semula FFT sebagai satu siri operasi pendaraban matriks. Ahli pasukan penyelidik mencapai matlamat ini dengan menggunakan matriks rama-rama untuk meneroka latihan yang jarang. Baru-baru ini, penyelidik Hazy Research telah memanfaatkan sambungan ini untuk membina algoritma lilitan pantas seperti FlashConv dan FlashButterfly, dengan menggunakan penguraian rama-rama untuk mengubah pengiraan FFT kepada satu siri operasi pendaraban matriks.

Tambahan pula, sambungan yang lebih mendalam boleh dibuat dengan menggunakan kerja sebelumnya: termasuk membiarkan matriks ini dipelajari, yang juga mengambil masa yang sama tetapi menambah parameter tambahan. Penyelidik telah mula meneroka sambungan ini pada beberapa set data kecil dan telah mencapai keputusan awal. Kita boleh melihat dengan jelas apa yang boleh ditimbulkan oleh sambungan ini (mis. cara menjadikannya terpakai pada model bahasa):

Mahu memindahkan separuh daripada A Dream of Red Mansions ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu

Pelanjutan ini patut diterokai dengan lebih mendalam: apakah jenis transformasi yang dipelajari oleh sambungan ini dan apakah yang ia membenarkan anda lakukan? Apakah yang berlaku apabila anda menerapkannya pada pemodelan bahasa?

Ini adalah arah yang menarik, dan perkara yang akan menyusul ialah urutan yang lebih panjang dan lebih panjang serta seni bina baharu yang membolehkan kami menerokai kawasan baharu ini dengan lebih lanjut. Kami perlu memberi perhatian khusus kepada aplikasi yang boleh mendapat manfaat daripada model jujukan panjang, seperti pengimejan resolusi tinggi, format data baharu, model bahasa yang boleh membaca keseluruhan buku, dsb. Bayangkan memberikan keseluruhan buku kepada model bahasa untuk dibaca dan meringkaskan jalan cerita, atau mempunyai model penjanaan kod menjana kod baharu berdasarkan kod yang anda tulis. Terdapat begitu banyak senario yang mungkin, dan semuanya sangat menarik.

Atas ialah kandungan terperinci Mahu memindahkan separuh daripada "A Dream of Red Mansions" ke dalam kotak input ChatGPT? Jom selesaikan masalah ini dahulu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam