


Dengan menukar beberapa baris kod, kelajuan alkimia PyTorch meningkat dan masa pengoptimuman model dikurangkan dengan banyak.
Bagaimana untuk meningkatkan kelajuan PyTorch "Alchemy"?
Baru-baru ini, pembelajaran mesin terkenal dan penyelidik AI Sebastian Raschka menunjukkan kepada kami helahnya. Menurutnya, kaedahnya mengurangkan masa pengoptimuman BERT daripada 22.63 minit kepada 3.15 minit dengan menukar hanya beberapa baris kod tanpa menjejaskan ketepatan model, dan kelajuan latihan ditingkatkan sebanyak 7 kali ganda penuh.
Malah penulis menyatakan bahawa jika anda mempunyai 8 GPU tersedia, keseluruhan proses latihan sahaja mengambil masa 2 minit untuk mencapai pecutan prestasi 11.5x.
Mari kita lihat bagaimana dia mencapainya.
Jadikan latihan model PyTorch dengan lebih pantas
Pertama sekali, model tersebut penulis menggunakan model DistilBERT untuk penyelidikan, iaitu versi BERT yang diperkemas dan 40 kali ganda lebih kecil daripada BERT %, tetapi hampir tiada kehilangan prestasi. Yang kedua ialah set data Set data latihan ialah IMDB Large Movie Review, set data semakan filem yang besar, yang mengandungi sejumlah 50,000 ulasan filem. Penulis akan menggunakan kaedah c dalam rajah di bawah untuk meramalkan sentimen ulasan filem dalam set data.
Setelah tugas asas dijelaskan dengan jelas, berikut ialah proses latihan PyTorch. Untuk membolehkan semua orang memahami tugas ini dengan lebih baik, penulis juga memperkenalkan latihan memanaskan badan, iaitu cara melatih model DistilBERT pada set data semakan filem IMDB. Jika anda ingin menjalankan kod itu sendiri, anda boleh menyediakan persekitaran maya menggunakan perpustakaan Python yang berkaitan, seperti berikut:
Versi perisian yang berkaitan adalah seperti berikut:
Kini kami meninggalkan pengenalan pemuatan data yang membosankan, anda hanya perlu faham bahawa artikel ini membahagikan set data kepada 35,000 contoh latihan, 5000 contoh pengesahan dan 10000 contoh ujian. Kod yang diperlukan adalah seperti berikut:
Tangkapan skrin bahagian kod
Alamat kod penuh:
https://github.com/rasbt/faster -pytorch-blog /blob/main/1_pytorch-distilbert.py
Kemudian jalankan kod pada GPU A100 dan dapatkan hasil berikut:
Tangkapan skrin beberapa keputusan
Seperti yang ditunjukkan dalam kod di atas, model bermula dari pusingan 2 ke pusingan 3 Terdapat sedikit overfitting pada permulaan pusingan, dan ketepatan pengesahan menurun daripada 92.89% kepada 92.09%. Selepas memperhalusi model selama 22.63 minit, ketepatan ujian akhir ialah 91.43%.
Gunakan kelas Jurulatih
Langkah seterusnya ialah menambah baik kod di atas balut model PyTorch dalam LightningModule supaya anda boleh menggunakan kelas Jurulatih daripada Lightning. Beberapa tangkapan skrin kod adalah seperti berikut:
Alamat kod penuh: https://github.com/rasbt/faster-pytorch-blog/blob/main/2_pytorch- with-trainer.py
Kod di atas mencipta LightningModule, yang mentakrifkan cara melakukan latihan, pengesahan dan ujian. Berbanding dengan kod yang diberikan sebelum ini, perubahan utama adalah dalam Bahagian 5 (iaitu ### 5 Finetuning), yang memperhalusi model. Tidak seperti sebelum ini, bahagian penalaan halus membalut model PyTorch dalam kelas LightningModel dan menggunakan kelas Jurulatih agar sesuai dengan model.
Kod sebelumnya menunjukkan bahawa ketepatan pengesahan menurun daripada pusingan 2 kepada pusingan 3, tetapi kod yang dipertingkatkan menggunakan ModelCheckpoint untuk memuatkan model terbaik. Pada mesin yang sama, model itu mencapai ketepatan ujian 92% dalam masa 23.09 minit.
Perhatikan bahawa jika checkpointing dilumpuhkan dan PyTorch dibenarkan untuk dijalankan dalam mod bukan deterministik, larian ini akan berakhir dengan masa berjalan yang sama seperti PyTorch biasa (Masa ialah 22.63 minit dan bukannya 23.09 minit).
Latihan ketepatan campuran automatik
Selanjutnya, jika GPU menyokong latihan ketepatan campuran, anda boleh menghidupkan GPU untuk meningkatkan kecekapan pengkomputeran. Penulis menggunakan latihan ketepatan campuran automatik, bertukar antara titik terapung 32-bit dan 16-bit tanpa mengorbankan ketepatan.
Di bawah pengoptimuman ini, menggunakan kelas Jurulatih, automasi boleh dicapai dengan satu baris kod Latihan ketepatan campuran:
Operasi di atas boleh mengurangkan masa latihan daripada 23.09 minit kepada 8.75 minit, iaitu hampir 3 kali ganda lebih pantas. Ketepatan pada set ujian ialah 92.2%, malah bertambah baik sedikit daripada 92.0% sebelumnya.
Menggunakan Obor.Kompil imej statik
Paparan pengumuman PyTorch 2.0 terbaharu , pasukan PyTorch memperkenalkan fungsi toch.compile baharu. Fungsi ini boleh mempercepatkan pelaksanaan kod PyTorch dengan menjana graf statik yang dioptimumkan dan bukannya menggunakan graf dinamik untuk menjalankan kod PyTorch.
Memandangkan PyTorch 2.0 belum dikeluarkan secara rasmi, torchtriton mesti dipasang terlebih dahulu dan dikemas kini kepada Ciri ini hanya tersedia dalam versi terkini PyTorch.
Kemudian ubah suai kod dengan menambah baris ini:
Keselarian data teragih pada 4 GPU
Perkara di atas memperkenalkan latihan ketepatan campuran kod dipercepatkan pada satu GPU Seterusnya, kami memperkenalkan strategi latihan berbilang GPU. Rajah di bawah meringkaskan beberapa teknik latihan berbilang GPU yang berbeza.
Jika anda ingin mencapai keselarian data teragih, anda boleh mencapainya melalui DistributedDataParallel, hanya ubah suainya Jurulatih boleh digunakan dengan hanya satu baris kod.
Selepas langkah pengoptimuman ini, pada 4 GPU A100, kod ini berjalan selama 3.52 minit dan mencapai 93.1 % ketepatan ujian .
DeepSpeed
Akhir sekali, penulis meneroka hasil penggunaan perpustakaan pengoptimuman pembelajaran mendalam DeepSpeed dan strategi berbilang GPU dalam Trainer. Mula-mula anda mesti memasang perpustakaan DeepSpeed :
Kemudian anda hanya perlu menukar satu baris kod untuk membolehkan perpustakaan:
Selepas gelombang ini, ia mengambil masa 3.15 minit untuk mencapai ketepatan ujian 92.6%. Walau bagaimanapun, PyTorch juga mempunyai alternatif kepada DeepSpeed: fully-sharded DataParallel, called with strategy="fsdp", yang akhirnya mengambil masa 3.62 minit untuk disiapkan.
Di atas adalah kaedah penulis untuk meningkatkan kelajuan latihan model PyTorch boleh Follow blog asal dan cuba, saya percaya anda akan mendapat hasil yang anda inginkan.
Atas ialah kandungan terperinci Dengan menukar beberapa baris kod, kelajuan alkimia PyTorch meningkat dan masa pengoptimuman model dikurangkan dengan banyak.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



0. Apakah fungsi artikel ini? Kami mencadangkan DepthFM: model anggaran kedalaman monokular generatif yang serba boleh dan pantas. Sebagai tambahan kepada tugas anggaran kedalaman tradisional, DepthFM juga menunjukkan keupayaan terkini dalam tugas hiliran seperti mengecat kedalaman. DepthFM cekap dan boleh mensintesis peta kedalaman dalam beberapa langkah inferens. Mari kita baca karya ini bersama-sama ~ 1. Tajuk maklumat kertas: DepthFM: FastMonocularDepthEstimationwithFlowMatching Pengarang: MingGui, JohannesS.Fischer, UlrichPrestel, PingchuanMa, Dmytr

Bayangkan model kecerdasan buatan yang bukan sahaja mempunyai keupayaan untuk mengatasi pengkomputeran tradisional, tetapi juga mencapai prestasi yang lebih cekap pada kos yang lebih rendah. Ini bukan fiksyen sains, DeepSeek-V2[1], model MoE sumber terbuka paling berkuasa di dunia ada di sini. DeepSeek-V2 ialah gabungan model bahasa pakar (MoE) yang berkuasa dengan ciri-ciri latihan ekonomi dan inferens yang cekap. Ia terdiri daripada 236B parameter, 21B daripadanya digunakan untuk mengaktifkan setiap penanda. Berbanding dengan DeepSeek67B, DeepSeek-V2 mempunyai prestasi yang lebih kukuh, sambil menjimatkan 42.5% kos latihan, mengurangkan cache KV sebanyak 93.3% dan meningkatkan daya pemprosesan penjanaan maksimum kepada 5.76 kali. DeepSeek ialah sebuah syarikat yang meneroka kecerdasan buatan am

AI memang mengubah matematik. Baru-baru ini, Tao Zhexuan, yang telah mengambil perhatian terhadap isu ini, telah memajukan keluaran terbaru "Buletin Persatuan Matematik Amerika" (Buletin Persatuan Matematik Amerika). Memfokuskan pada topik "Adakah mesin akan mengubah matematik?", ramai ahli matematik menyatakan pendapat mereka Seluruh proses itu penuh dengan percikan api, tegar dan menarik. Penulis mempunyai barisan yang kuat, termasuk pemenang Fields Medal Akshay Venkatesh, ahli matematik China Zheng Lejun, saintis komputer NYU Ernest Davis dan ramai lagi sarjana terkenal dalam industri. Dunia AI telah berubah secara mendadak Anda tahu, banyak artikel ini telah dihantar setahun yang lalu.

Boston Dynamics Atlas secara rasmi memasuki era robot elektrik! Semalam, Atlas hidraulik hanya "menangis" menarik diri daripada peringkat sejarah Hari ini, Boston Dynamics mengumumkan bahawa Atlas elektrik sedang berfungsi. Nampaknya dalam bidang robot humanoid komersial, Boston Dynamics berazam untuk bersaing dengan Tesla. Selepas video baharu itu dikeluarkan, ia telah pun ditonton oleh lebih sejuta orang dalam masa sepuluh jam sahaja. Orang lama pergi dan peranan baru muncul. Ini adalah keperluan sejarah. Tidak dinafikan bahawa tahun ini adalah tahun letupan robot humanoid. Netizen mengulas: Kemajuan robot telah menjadikan majlis pembukaan tahun ini kelihatan seperti manusia, dan tahap kebebasan adalah jauh lebih besar daripada manusia Tetapi adakah ini benar-benar bukan filem seram? Pada permulaan video, Atlas berbaring dengan tenang di atas tanah, seolah-olah terlentang. Apa yang berikut adalah rahang-jatuh

Awal bulan ini, penyelidik dari MIT dan institusi lain mencadangkan alternatif yang sangat menjanjikan kepada MLP - KAN. KAN mengatasi MLP dari segi ketepatan dan kebolehtafsiran. Dan ia boleh mengatasi prestasi MLP berjalan dengan bilangan parameter yang lebih besar dengan bilangan parameter yang sangat kecil. Sebagai contoh, penulis menyatakan bahawa mereka menggunakan KAN untuk menghasilkan semula keputusan DeepMind dengan rangkaian yang lebih kecil dan tahap automasi yang lebih tinggi. Khususnya, MLP DeepMind mempunyai kira-kira 300,000 parameter, manakala KAN hanya mempunyai kira-kira 200 parameter. KAN mempunyai asas matematik yang kukuh seperti MLP berdasarkan teorem penghampiran universal, manakala KAN berdasarkan teorem perwakilan Kolmogorov-Arnold. Seperti yang ditunjukkan dalam rajah di bawah, KAN telah

Apa? Adakah Zootopia dibawa menjadi realiti oleh AI domestik? Didedahkan bersama-sama dengan video itu ialah model penjanaan video domestik berskala besar baharu yang dipanggil "Keling". Sora menggunakan laluan teknikal yang serupa dan menggabungkan beberapa inovasi teknologi yang dibangunkan sendiri untuk menghasilkan video yang bukan sahaja mempunyai pergerakan yang besar dan munasabah, tetapi juga mensimulasikan ciri-ciri dunia fizikal dan mempunyai keupayaan gabungan konsep dan imaginasi yang kuat. Mengikut data, Keling menyokong penjanaan video ultra panjang sehingga 2 minit pada 30fps, dengan resolusi sehingga 1080p dan menyokong berbilang nisbah aspek. Satu lagi perkara penting ialah Keling bukanlah demo atau demonstrasi hasil video yang dikeluarkan oleh makmal, tetapi aplikasi peringkat produk yang dilancarkan oleh Kuaishou, pemain terkemuka dalam bidang video pendek. Selain itu, tumpuan utama adalah untuk menjadi pragmatik, bukan untuk menulis cek kosong, dan pergi ke dalam talian sebaik sahaja ia dikeluarkan Model besar Ke Ling telah pun dikeluarkan di Kuaiying.

Saya menangis hingga mati. Dunia sedang membina model besar. Data di Internet tidak mencukupi. Model latihan kelihatan seperti "The Hunger Games", dan penyelidik AI di seluruh dunia bimbang tentang cara memberi makan data ini kepada pemakan yang rakus. Masalah ini amat ketara dalam tugas berbilang modal. Pada masa mereka mengalami kerugian, pasukan pemula dari Jabatan Universiti Renmin China menggunakan model baharu mereka sendiri untuk menjadi yang pertama di China untuk menjadikan "suapan data yang dijana model itu sendiri" menjadi kenyataan. Selain itu, ia merupakan pendekatan serampang dua mata dari segi pemahaman dan sisi penjanaan Kedua-dua pihak boleh menjana data baharu berbilang modal yang berkualiti tinggi dan memberikan maklum balas data kepada model itu sendiri. Apakah model? Awaker 1.0, model berbilang modal besar yang baru sahaja muncul di Forum Zhongguancun. Siapa pasukan itu? Enjin Sophon. Diasaskan oleh Gao Yizhao, pelajar kedoktoran di Sekolah Kecerdasan Buatan Hillhouse Universiti Renmin.

Baru-baru ini, bulatan tentera telah terharu dengan berita: jet pejuang tentera AS kini boleh melengkapkan pertempuran udara automatik sepenuhnya menggunakan AI. Ya, baru-baru ini, jet pejuang AI tentera AS telah didedahkan buat pertama kali, mendedahkan misterinya. Nama penuh pesawat pejuang ini ialah Variable Stability Simulator Test Aircraft (VISTA). Ia diterbangkan sendiri oleh Setiausaha Tentera Udara AS untuk mensimulasikan pertempuran udara satu lawan satu. Pada 2 Mei, Setiausaha Tentera Udara A.S. Frank Kendall berlepas menggunakan X-62AVISTA di Pangkalan Tentera Udara Edwards Ambil perhatian bahawa semasa penerbangan selama satu jam, semua tindakan penerbangan telah diselesaikan secara autonomi oleh AI! Kendall berkata - "Sejak beberapa dekad yang lalu, kami telah memikirkan tentang potensi tanpa had pertempuran udara-ke-udara autonomi, tetapi ia sentiasa kelihatan di luar jangkauan." Namun kini,
