


Penalaan halus LLaMA mengurangkan separuh keperluan memori, Tsinghua mencadangkan pengoptimum 4-bit
Latihan dan penalaan halus model besar mempunyai keperluan tinggi pada memori video, dan keadaan pengoptimuman ialah salah satu perbelanjaan utama memori video. Baru-baru ini, pasukan Zhu Jun dan Chen Jianfei dari Universiti Tsinghua mencadangkan pengoptimum 4-bit untuk latihan rangkaian saraf, yang menjimatkan overhed memori latihan model dan boleh mencapai ketepatan yang setanding dengan pengoptimum ketepatan penuh.
Pengoptimum 4-bit telah diuji pada pelbagai tugas pra-latihan dan penalaan halus, dan boleh mengurangkan overhed memori penalaan halus LLaMA-7B sambil mengekalkan ketepatan tanpa kehilangan sebanyak 57%.
Kertas: https://arxiv.org/abs/2309.01507
#๐๐ /arxiv.org/abs/2309.01507 /github.com/thu-ml/low-bit-optimizers
Kesempitan memori latihan model#๐ ##๐๐ #Dari GPT-3, Gopher kepada LLaMA, ia telah menjadi konsensus industri bahawa model besar mempunyai prestasi yang lebih baik. Walau bagaimanapun, sebaliknya, saiz memori video GPU tunggal telah berkembang dengan perlahan, yang menjadikan memori video sebagai hambatan utama untuk latihan model besar Bagaimana untuk melatih model besar dengan memori GPU terhad telah menjadi masalah penting.
Untuk tujuan ini, kita perlu terlebih dahulu menjelaskan sumber yang menggunakan memori video. Sebenarnya, terdapat tiga jenis sumber iaitu:
1 "Data memory", termasuk data input dan output nilai pengaktifan oleh setiap lapisan saraf rangkaian, saiznya secara langsung dipengaruhi oleh saiz kelompok dan resolusi imej/panjang konteks;
2, termasuk parameter model, kecerunan dan keadaan pengoptimum saiznya adalah berkadar dengan bilangan parameter model;
3 "Memori video sementara" termasuk memori sementara dan cache lain yang digunakan dalam pengiraan kernel GPU. Apabila saiz model bertambah, perkadaran memori model meningkat secara beransur-ansur, menjadi hambatan utama.
Saiz keadaan pengoptimum ditentukan oleh pengoptimum yang digunakan. Pada masa ini, pengoptimum AdamW sering digunakan untuk melatih Transformers, yang perlu menyimpan dan mengemas kini dua keadaan pengoptimum semasa proses latihan, iaitu detik pertama dan kedua. Jika bilangan parameter model ialah N, maka bilangan keadaan pengoptimum dalam AdamW ialah 2N, yang jelas merupakan overhed memori grafik yang besar.
Mengambil LLaMA-7B sebagai contoh, bilangan parameter model ini adalah kira-kira 7B Jika pengoptimum AdamW berketepatan penuh (32-bit). memperhalusinya, kemudian Saiz memori video yang diduduki oleh keadaan pengoptimum adalah lebih kurang 52.2GB. Di samping itu, walaupun pengoptimum SGD yang naif tidak memerlukan keadaan tambahan dan menyimpan memori yang diduduki oleh keadaan pengoptimum, prestasi model sukar untuk dijamin. Oleh itu, artikel ini memfokuskan pada cara mengurangkan keadaan pengoptimum dalam memori model sambil memastikan prestasi pengoptimum tidak terjejas.
Kaedah untuk menjimatkan ingatan pengoptimum
Pada masa ini, dari segi algoritma latihan, kita boleh menyimpan memori overhead pengoptimum. Terdapat tiga kategori kaedah utama:
1. Pemfaktoran); #๐๐ #
2 Elakkan menyimpan kebanyakan keadaan pengoptimum dengan hanya melatih set parameter kecil, seperti LoRA #๐##๐ ##๐๐ #3 Berdasarkan pemampatan, gunakan format berangka ketepatan rendah untuk mewakili status pengoptimum.
Khususnya, Dettmers et al (ICLR 2022) mencadangkan pengoptimum 8-bit yang sepadan untuk SGD dengan momentum dan AdamW, dengan menggunakan kuantisasi blok (block- Wise quantization) dan teknologi format berangka eksponen dinamik (format berangka eksponen dinamik) telah mencapai hasil yang sepadan dengan pengoptimum ketepatan penuh asal dalam tugas seperti pemodelan bahasa, klasifikasi imej, pembelajaran diselia sendiri dan terjemahan mesin.
Berdasarkan ini, kertas kerja ini mengurangkan lagi ketepatan berangka bagi keadaan pengoptimum kepada 4 bit, mencadangkan kaedah pengkuantitian untuk keadaan pengoptimum yang berbeza, dan akhirnya mencadangkan 4- sedikit pengoptimum AdamW. Pada masa yang sama, kertas kerja ini meneroka kemungkinan menggabungkan kaedah pemampatan dan penguraian peringkat rendah, dan mencadangkan pengoptimum Faktor 4-bit ini menikmati prestasi yang baik dan kecekapan memori yang lebih baik. Kertas kerja ini menilai pengoptimuman 4-bit pada beberapa tugas klasik, termasuk pemahaman bahasa semula jadi, klasifikasi imej, terjemahan mesin dan arahan penalaan halus model besar.
Pada semua tugasan, pengoptimum 4-bit mencapai hasil yang setanding dengan pengoptimum ketepatan penuh sambil menggunakan kurang memori.
Tetapan masalah
Rangka kerja berasaskan pemampatan๐๐ yang cekap #
Pertama, kita perlu memahami cara memperkenalkan operasi mampatan ke dalam pengoptimum yang biasa digunakan, yang diberikan oleh Algoritma 1. dengan A ialah pengoptimum berasaskan kecerunan (seperti SGD atau AdamW). Pengoptimum mengambil parameter sedia ada w, kecerunan g dan keadaan pengoptimum s dan mengeluarkan parameter baharu dan keadaan pengoptimum. Dalam Algoritma 1, s_t ketepatan penuh adalah sementara, manakala ketepatan rendah (s_t ) ฬ
dikekalkan dalam memori GPU. Sebab penting mengapa kaedah ini boleh menjimatkan memori video adalah bahawa parameter rangkaian saraf sering disambungkan bersama dari vektor parameter setiap lapisan. Oleh itu, kemas kini pengoptimum juga dilakukan lapisan demi lapisan/tensor Di bawah Algoritma 1, keadaan pengoptimum paling banyak satu parameter dibiarkan dalam ingatan dalam bentuk ketepatan penuh, dan keadaan pengoptimum yang sepadan dengan lapisan lain berada dalam keadaan termampat. negeri.

Kaedah mampatan utama: kuantisasi #๐ ๐๐#
Kuantisasi ialah teknologi yang menggunakan nilai berangka berketepatan rendah untuk mewakili data berketepatan tinggi Artikel ini mengasingkan operasi kuantifikasi kepada dua bahagian: normalisasi dan pemetaan, supaya ia boleh Reka bentuk yang lebih ringan dan eksperimen. dengan kaedah pengkuantitian baharu. Dua operasi, penormalan dan pemetaan, digunakan secara berurutan pada data ketepatan penuh dengan cara mengikut unsur. Penormalan bertanggungjawab untuk mengunjurkan setiap elemen dalam tensor kepada selang unit, di mana penormalan tensor (penormalan setiap tensor) dan penormalan dari segi blok (penormalan mengikut blok) ditakrifkan seperti berikut: #๐๐ ##๐ ๐#
Kaedah normalisasi yang berbeza mempunyai butiran yang berbeza, dan keupayaannya untuk mengendalikan outlier akan berbeza, dan overhed memori tambahan yang mereka bawa juga berbeza. Operasi pemetaan bertanggungjawab untuk memetakan nilai ternormal kepada integer yang boleh diwakili dengan ketepatan yang rendah. Secara formal, diberi sedikit lebar b (iaitu, setiap nilai diwakili oleh b bit selepas pengkuantitian) dan fungsi yang dipratentukan T #
Operasi pemetaan ditakrifkan sebagai:
#๐๐ #
Oleh itu, cara mereka bentuk T yang sesuai untuk mengurangkan Ralat pengkuantitian memainkan peranan penting. Artikel ini mempertimbangkan pemetaan linear (linear) dan pemetaan eksponen dinamik (eksponen dinamik). Akhir sekali, proses dekuantisasi adalah untuk menggunakan operator songsang pemetaan dan normalisasi dalam urutan. 
Kaedah mampatan momen pesanan pertama
Berikut adalah terutamanya untuk status pengoptimum pertama AdamW -order momen dan detik tertib kedua) mencadangkan kaedah kuantifikasi yang berbeza. Untuk detik pertama, kaedah pengkuantitian dalam kertas ini adalah berdasarkan kaedah Dettmers et al (ICLR 2022), menggunakan penormalan blok (saiz blok 2048) dan pemetaan eksponen dinamik.
Dalam eksperimen awal, kami secara langsung mengurangkan lebar bit daripada 8 bit kepada 4 bit dan mendapati bahawa momen tertib pertama adalah sangat teguh untuk pengkuantitian dan telah digunakan dalam banyak tugas Kesan padanan dicapai, tetapi terdapat juga kehilangan prestasi pada beberapa tugas. Untuk meningkatkan lagi prestasi, kami mengkaji corak detik pertama dengan teliti dan mendapati terdapat banyak outlier dalam satu tensor.
Kerja sebelum ini telah melakukan beberapa kajian tentang corak outlier dalam parameter dan nilai pengaktifan Agihan parameter adalah agak lancar, manakala nilai pengaktifan diagihkan mengikut saluran. Artikel ini mendapati bahawa taburan outlier dalam keadaan pengoptimum adalah rumit, dengan sesetengah tensor mempunyai outlier yang diagihkan dalam baris tetap dan tensor lain mempunyai outlier yang diagihkan dalam lajur tetap.
Untuk tensor dengan taburan outlier mengikut lajur, normalisasi blok baris pertama mungkin menghadapi kesukaran. Oleh itu, kertas kerja ini mencadangkan untuk menggunakan blok yang lebih kecil dengan saiz blok 128, yang boleh mengurangkan ralat pengkuantitian sambil mengekalkan overhed memori tambahan dalam julat yang boleh dikawal. Rajah di bawah menunjukkan ralat pengkuantitian untuk saiz blok yang berbeza.
Kaedah mampatan momen tertib kedua
Berbanding dengan momen tertib pertama, pengkuantitian momen tertib kedua adalah lebih sukar dan akan membawa ketidakstabilan masalah latihan. Kertas kerja ini menentukan bahawa masalah titik sifar adalah kesesakan utama dalam mengira detik tertib kedua Selain itu, kaedah penormalan yang lebih baik dicadangkan untuk taburan terpencil yang tidak terkondisi: penormalan peringkat-1. Artikel ini juga mencuba kaedah penguraian (pemfaktoran) momen tertib kedua.
masalah titik sifar
#๐ syarat-syarat nilai pengaktifan๐ , dan kecerunan Dalam pengkuantitian, titik sifar selalunya amat diperlukan, dan ia juga merupakan titik dengan kekerapan tertinggi selepas pengkuantitian. Walau bagaimanapun, dalam formula lelaran Adam, saiz kemas kini adalah berkadar dengan kuasa -1/2 momen kedua, jadi perubahan dalam julat sekitar sifar akan mempengaruhi saiz kemas kini, menyebabkan ketidakstabilan.

Rajah berikut menunjukkan kuasa saat-1/2 Adam kedua sebelum dan selepas kuantisasi dalam bentuk Taburan histogram, iaitu, h (v)=1/(โv+10^(-6) ). Jika sifar dimasukkan (rajah b), maka kebanyakan nilai ditolak sehingga 10^6, mengakibatkan ralat anggaran yang besar. Pendekatan mudah adalah untuk mengalih keluar sifar dalam peta eksponen dinamik, selepas berbuat demikian (rajah c) penghampiran kepada saat kedua menjadi lebih tepat. Dalam situasi sebenar, untuk menggunakan keupayaan ekspresif nilai berangka ketepatan rendah dengan berkesan, kami mencadangkan untuk menggunakan pemetaan linear yang mengalihkan titik sifar dan mencapai keputusan yang baik dalam eksperimen.

Rank-1 Dinormalisasi ##๐๐๐##๐๐๐##๐๐๐##๐ ๐#Berdasarkan pengedaran terpencil yang kompleks bagi momen tertib pertama dan detik tertib kedua, dan diilhamkan oleh pengoptimum SM3, artikel ini mencadangkan kaedah normalisasi baharu, Dinamakan peringkat-1 normalisasi. Untuk tensor matriks bukan negatif xโR^(nรm), statistik satu dimensinya ditakrifkan sebagai:
#๐๐ #
Kemudian penormalan peringkat-1 boleh ditakrifkan sebagai: 
peringkat-1 mengeksploitasi penormalan satu -maklumat dimensi tensor dengan cara yang lebih halus, dan boleh mengendalikan outlier dari segi baris atau lajur dengan lebih bijak dan cekap. Di samping itu, normalisasi peringkat-1 boleh digeneralisasikan dengan mudah kepada tensor dimensi tinggi, dan apabila saiz tensor meningkat, overhed memori tambahan yang dijananya adalah lebih kecil daripada normalisasi blok. 
Di samping itu, artikel ini mendapati bahawa kaedah penguraian peringkat rendah bagi momen tertib kedua dalam pengoptimum Adafaktor boleh mengelakkan masalah titik sifar dengan berkesan, jadi ia juga mempunyai kelebihan kaedah penguraian peringkat rendah dan pengkuantitian diterokai secara gabungan. Rajah di bawah menunjukkan satu siri eksperimen ablasi untuk momen tertib kedua, yang mengesahkan bahawa masalah titik sifar ialah kesesakan pengiraan detik tertib kedua Ia juga mengesahkan keberkesanan kaedah penormalan peringkat-1 dan penguraian peringkat rendah.
Hasil eksperimen
#๐#๐ berasaskan##๐#๐๐ pada pemerhatian Berdasarkan fenomena dan kaedah penggunaan, dua pengoptimum ketepatan rendah akhirnya dicadangkan: AdamW 4-bit dan Faktor 4-bit, dan dibandingkan dengan pengoptimum lain, termasuk AdamW 8-bit, Adafactor dan SM3. Kajian telah dipilih untuk penilaian pada pelbagai tugas, termasuk pemahaman bahasa semula jadi, klasifikasi imej, terjemahan mesin, dan penalaan halus arahan model besar. Jadual di bawah menunjukkan prestasi setiap pengoptimum pada tugas yang berbeza.
Anda boleh lihat semua itu tugasan , termasuk NLU, QA, NLG, pengoptimum 4-bit boleh memadankan atau bahkan melebihi AdamW 32-bit Pada masa yang sama, pada semua tugasan pra-latihan, pengoptimum CLS, MT dan 4-bit mencapai tahap. setanding dengan ketepatan penuh. Ia boleh dilihat daripada tugas penalaan halus arahan bahawa 4-bit AdamW tidak memusnahkan keupayaan model pra-latihan, dan pada masa yang sama boleh membolehkan mereka memperoleh keupayaan untuk mematuhi arahan dengan lebih baik. 
Selepas itu, kami menguji memori dan kecekapan pengiraan pengoptimum 4-bit, dan hasilnya ditunjukkan dalam jadual di bawah. Berbanding dengan pengoptimum 8-bit, pengoptimum 4-bit yang dicadangkan dalam artikel ini boleh menjimatkan lebih banyak memori, dengan penjimatan maksimum 57.7% dalam eksperimen penalaan halus LLaMA-7B. Selain itu, kami menyediakan versi pengendali gabungan AdamW 4-bit, yang boleh menjimatkan memori tanpa menjejaskan kecekapan pengiraan. Untuk tugasan penalaan halus arahan LLaMA-7B, 4-bit AdamW juga membawa kesan pecutan kepada latihan akibat tekanan cache yang berkurangan. Tetapan dan keputusan percubaan terperinci boleh didapati dalam pautan kertas.

Ganti satu baris kod untuk menggunakannya dalam PyTorch
import lpmmoptimizer = lpmm.optim.AdamW (model.parameters (), lr=1e-3, betas=(0.9, 0.999))
Kami menyediakan pengoptimum 4-bit di luar kotak, anda hanya perlu menggantikan pengoptimum asal dengan pengoptimum 4-bit pada masa ini menyokong versi ketepatan rendah Adam dan SGD. Pada masa yang sama, kami juga menyediakan antara muka untuk mengubah suai parameter pengkuantitian untuk menyokong senario penggunaan tersuai.











Atas ialah kandungan terperinci Penalaan halus LLaMA mengurangkan separuh keperluan memori, Tsinghua mencadangkan pengoptimum 4-bit. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Meneroka kerja -kerja dalam model bahasa dengan skop Gemma Memahami kerumitan model bahasa AI adalah satu cabaran penting. Pelepasan Google Gemma Skop, Toolkit Komprehensif, menawarkan penyelidik cara yang kuat untuk menyelidiki

Membuka Kejayaan Perniagaan: Panduan untuk Menjadi Penganalisis Perisikan Perniagaan Bayangkan mengubah data mentah ke dalam pandangan yang boleh dilakukan yang mendorong pertumbuhan organisasi. Ini adalah kuasa penganalisis Perniagaan Perniagaan (BI) - peranan penting dalam GU

Pernyataan Jadual Alter SQL: Menambah lajur secara dinamik ke pangkalan data anda Dalam pengurusan data, kebolehsuaian SQL adalah penting. Perlu menyesuaikan struktur pangkalan data anda dengan cepat? Pernyataan Jadual ALTER adalah penyelesaian anda. Butiran panduan ini menambah colu

Pengenalan Bayangkan pejabat yang sibuk di mana dua profesional bekerjasama dalam projek kritikal. Penganalisis perniagaan memberi tumpuan kepada objektif syarikat, mengenal pasti bidang penambahbaikan, dan memastikan penjajaran strategik dengan trend pasaran. Simu

Pengiraan dan Analisis Data Excel: Penjelasan terperinci mengenai fungsi Count dan Counta Pengiraan dan analisis data yang tepat adalah kritikal dalam Excel, terutamanya apabila bekerja dengan set data yang besar. Excel menyediakan pelbagai fungsi untuk mencapai matlamat ini, dengan fungsi Count dan CountA menjadi alat utama untuk mengira bilangan sel di bawah keadaan yang berbeza. Walaupun kedua -dua fungsi digunakan untuk mengira sel, sasaran reka bentuk mereka disasarkan pada jenis data yang berbeza. Mari menggali butiran khusus fungsi Count dan Counta, menyerlahkan ciri dan perbezaan unik mereka, dan belajar cara menerapkannya dalam analisis data. Gambaran keseluruhan perkara utama Memahami kiraan dan cou

Revolusi AI Google Chrome: Pengalaman melayari yang diperibadikan dan cekap Kecerdasan Buatan (AI) dengan cepat mengubah kehidupan seharian kita, dan Google Chrome mengetuai pertuduhan di arena pelayaran web. Artikel ini meneroka exciti

Impak Reimagining: garis bawah empat kali ganda Selama terlalu lama, perbualan telah dikuasai oleh pandangan sempit kesan AI, terutama memberi tumpuan kepada keuntungan bawah. Walau bagaimanapun, pendekatan yang lebih holistik mengiktiraf kesalinghubungan BU

Perkara bergerak terus ke arah itu. Pelaburan yang dicurahkan ke dalam penyedia perkhidmatan kuantum dan permulaan menunjukkan bahawa industri memahami kepentingannya. Dan semakin banyak kes penggunaan dunia nyata muncul untuk menunjukkan nilainya


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa