Latihan Ketepatan Campuran
Latihan ketepatan campuran mempercepatkan latihan rangkaian saraf dan mengurangkan penggunaan memori dengan melakukan kebanyakan matematik dalam titik terapung 16-bit dan bukannya 32-bit.
Gambaran keseluruhan
It lets the same GPU train bigger models faster with almost no loss in accuracy.
Menyelam dalam
Latihan tradisional menyimpan pemberat dan menjalankan matematik dalam titik terapung 32-bit (FP32). Ketepatan campuran menggunakan format 16-bit berketepatan lebih rendah (FP16 atau bfloat16) untuk pendaraban matriks berat, sambil mengekalkan 'salinan induk' 32-bit pemberat untuk kemas kini yang stabil. Oleh kerana nombor 16-bit adalah separuh saiz, lebih muat dalam memori GPU dan Teras Tensor memprosesnya kira-kira 2-8x lebih pantas. Tangkapan adalah julat sempit FP16: kecerunan kecil boleh mengalir ke sifar. Pembetulan standard ialah penskalaan kerugian, yang mendarabkan kerugian dengan faktor besar sebelum perambatan belakang supaya kecerunan kecil kekal boleh diwakili, kemudian membahagikannya semula sebelum kemas kini berat. Apex NVIDIA dan AMP terbina dalam (Automatic Mixed Precision) dalam PyTorch dan TensorFlow mengautomasikannya.
Wawasan Teknikal
FP16 hanya mempunyai 5 bit eksponen, memberikan julat dinamik kecil yang menyebabkan aliran bawah kecerunan. Bfloat16 menyimpan 8 bit eksponen (padanan dengan julat FP32) tetapi lebih sedikit bit mantissa, jadi ia jarang memerlukan penskalaan kerugian — sebab utama Google TPU dan GPU moden menyukainya. Tensor Cores mempercepatkan kerja dengan mendarab operan 16-bit tetapi mengumpul jumlah separa dalam FP32, mengekalkan ketepatan di mana ralat penjumlahan sebaliknya akan terkompaun.
Kesan Strategik
Kos dan bajet
Keputusan seni bina memacu prestasi dan kos operasi selama bertahun-tahun.
Keputusan yang lebih jelas
Pendidikan teknikal membantu pasukan memilih timbunan yang betul, bukan hanya yang terbaharu.
Kawalan kualiti
Pilihan kejuruteraan yang lebih baik mengurangkan insiden kebolehpercayaan dalam pengeluaran.
Masa Depan Latihan Ketepatan Campuran
Ketepatan terus menurun. Latihan FP8, disokong pada GPU NVIDIA Hopper dan Blackwell, menjadi standard untuk model sempadan, dan penyelidikan ke dalam format FP4 dan penskalaan mikro (MXFP) semakin maju. Jangkakan rangka kerja untuk memilih ketepatan setiap lapisan secara automatik, perkakasan untuk mengendalikan format yang lebih sempit secara asli, dan latihan sedar pengkuantitian untuk mengaburkan garis antara latihan ketepatan rendah dan inferens, mengurangkan kos latihan model trilion parameter.
Pelaksanaan Dunia Sebenar
Torch.cuda.amp.autocast PyTorch membungkus gelung latihan untuk mengurangkan separuh memori secara kasar dan menggandakan pemprosesan pada satu GPU
Melatih model bahasa besar seperti pengubah gaya GPT dalam bfloat16 pada TPU untuk mengelakkan penalaan skala kerugian
Memasang saiz kelompok yang lebih besar pada GPU RTX pengguna dengan menukar latihan imej ResNet daripada FP32 kepada FP16
Ketepatan campuran FP8 pada GPU NVIDIA H100 untuk mengurangkan kos pralatihan model skala sempadan
Risiko & Pengawal
Mengoptimumkan satu penanda aras boleh menyembunyikan kelemahan sistem yang lebih luas.
Kos infrastruktur dan penyelenggaraan sering dipandang remeh.
Jurang keselamatan dan pemerhatian boleh berkembang apabila sistem menjadi lebih kompleks.
Hala Tuju Pelaksanaan
Tentukan sasaran kependaman, kualiti dan kos sebelum pelaksanaan.
Penanda aras di bawah beban realistik dan keadaan data.
Pemantauan instrumen untuk ralat, drift dan kesan pengguna.
Sediakan laluan balik dan tindak balas insiden sebelum penskalaan.
Teruskan Meneroka
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Mixed Precision Training quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Panduan seterusnya
Pelabelan Pseudo dan Latihan Kendiri
Soalan lazim
What is Mixed Precision Training?
Latihan ketepatan campuran mempercepatkan latihan rangkaian saraf dan mengurangkan penggunaan memori dengan melakukan kebanyakan matematik dalam titik terapung 16-bit dan bukannya 32-bit. Ia membolehkan GPU yang sama melatih model yang lebih besar dengan lebih pantas dengan hampir tiada kehilangan ketepatan.
Mengapakah latihan ketepatan campuran menyimpan 'salinan induk' 32-bit pemberat?
Kemas kini berat selalunya sangat kecil; mengumpulnya dalam 16-bit akan kehilangan ketepatan, jadi salinan induk ketepatan penuh memastikan kemas kini tepat.
Apakah masalah yang diselesaikan oleh penskalaan kerugian dalam latihan FP16?
FP16 mempunyai julat dinamik yang terhad, jadi kecerunan kecil boleh dibundarkan kepada sifar; mendarabkan kerugian sebelum backprop memastikan mereka boleh diwakili.
Apakah kelebihan bfloat16 berbanding FP16?
Bfloat16 menyimpan 8 bit eksponen seperti FP32, jadi julat dinamiknya adalah besar dan aliran bawah kecerunan jarang berlaku.
Bagaimanakah Teras Tensor mengekalkan ketepatan semasa menggunakan input 16-bit?
Teras Tensor mendarab operan 16-bit tetapi terkumpul dalam 32-bit, menghalang ralat penjumlahan daripada pengkompaunan.
Apakah faedah utama menggunakan 16-bit dan bukannya nilai 32-bit semasa latihan?
Nombor separuh saiz memuatkan lebih banyak data dalam memori GPU dan biarkan perkakasan khusus memproses matematik matriks beberapa kali lebih pantas.