Jadual Kandungan
Pengenalan Projek
Rumah Peranti teknologi AI Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Apr 11, 2023 pm 11:49 PM
gpt Model

Pada masa ini, model bahasa besar (LLM) dianggap sebagai hala tuju kejayaan dalam kecerdasan buatan. Orang ramai cuba menggunakannya untuk melakukan semua jenis perkara yang kompleks, seperti soal jawab, penciptaan, penaakulan matematik dan kod penulisan. Letupan ChatGPT baru-baru ini adalah contoh terbaik.

Walau bagaimanapun, bagi pengamal pembelajaran mesin, ambang untuk model besar adalah sangat tinggi: kerana ia terlalu besar dan sukar untuk dilatih, arah ini telah dimonopoli oleh syarikat besar untuk masa yang lama. . Walau bagaimanapun, baru-baru ini, terdapat lebih banyak cara untuk memudahkan model GPT. Pada pertengahan Januari, bekas Pengarah Kanan Tesla AI Andrej Karpathy (kini kembali ke OpenAI) mengeluarkan Tutorial lengkap untuk membina model GPT dari awal . Walau bagaimanapun, berbanding dengan GPT terlatih dan GPT-3 OpenAI, perbezaan saiz antara keduanya ialah 10,000-1 juta kali.

Baru-baru ini, Jay Mody, pelajar sarjana muda kejuruteraan perisian di McMaster University di Kanada, melaksanakan model GPT dari awal dengan hanya 60 baris kod selepas mengimport perpustakaan NumPy. Ia dinamakan PicoGPT. Bukan itu sahaja, dia juga memuatkan pemberat model GPT-2 terlatih ke dalam pelaksanaannya dan menghasilkan beberapa teks. 60 baris kod ditunjukkan di bawah.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Tetapi untuk melakukan ini, anda perlu biasa dengan Python dan NumPy, dan beberapa Pengalaman asas dalam melatih rangkaian saraf. Penulis menyatakan bahawa blog ini bertujuan untuk memberikan pengenalan GPT yang ringkas, mudah difahami dan lengkap. Oleh itu, penulis hanya menggunakan pemberat model yang telah dilatih untuk melaksanakan kod laluan hadapan.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Alamat kod:

​https://github.com/jaymody/picoGPT/blob/29e78cc52b58ed2c1c483ffea2eb46ff6bdec785/gpt2_pico.py#L3-L58​

Penyelidikan, Andrej Karpathy memberikan empat perkataan: lewat tetapi tiba. Pada masa itu, minGPT dan nanoGPT yang dibina oleh Karpathy memerlukan 300 baris kod.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Perlu dinyatakan bahawa tutorial ini bukanlah ambang sifar sepenuhnya. Untuk membolehkan pembaca memahami, pengarang mula-mula memperkenalkan apa itu GPT, input, output dan kandungan lain, semuanya dengan terperinci.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Mengenai apa yang boleh dilakukan oleh GPT, penulis memberikan beberapa contoh , meringkaskan buku, memberi anda idea kapsyen instagram, menerangkan lubang hitam kepada kanak-kanak berumur 5 tahun, menulis kod dalam SQL, dsb.

Dengan membaca bahagian ini dengan teliti, anda boleh memahami secara kasar beberapa pengetahuan asas GPT. Dengan pengenalan latar belakang ini, langkah seterusnya ialah cara untuk menyediakannya.

Pengenalan Projek

Tetapan

Bab ini terutamanya memperkenalkan cara menyediakan pengekod , hiperparameter dan parameter.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Apa yang anda perlu lakukan, pertama sekali ialah mengklon pangkalan kod:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Kemudian pasang kebergantungan:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Perhatikan bahawa jika anda menggunakan Macbook M1, anda perlu menukar aliran tensor kepada tensorflow-macos dalam requirements.txt sebelum menjalankan pemasangan pip. Di bawah projek ini, fail termasuk encoder.py, utils.py, gpt2.py, gpt2_pico.py:

  • encoder.py: Mengandungi kod OpenAI BPE Tokenizer, Diambil secara langsung daripada repo gpt-2;
  • utils.py: Mengandungi kod untuk memuat turun dan memuatkan berat model GPT-2, tokenizer dan hiperparameter; 🎜>gpt2.py: Mengandungi model GPT dan kod yang dihasilkan, yang boleh dijalankan sebagai skrip python; kod.
  • di mana gpt2.py perlu dilaksanakan dari awal, jadi apa yang anda perlu lakukan ialah memadam gpt2.py dahulu dan mencipta fail kosong sekali lagi:

Kemudian salin kod berikut ke dalam gpt2.py:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Kod di atas mengandungi 4 bahagian utama:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Fungsi gpt2 digunakan untuk melaksanakan GPT kali ini Kod sebenar;

fungsi menjana melaksanakan algoritma penyahkodan autoregresif; 🎜>

fire.Fire (utama) Tukar fail kepada aplikasi CLI supaya anda akhirnya boleh menjalankan kod: python gpt2.py "some prompt here".
  • Fungsi utama mengandungi pengekodan, hparams, parameter params dan melaksanakan kod berikut:
  • Kemudian model dan fail tokenizer yang diperlukan akan dimuat turun ke fail model/124M.

Selepas persediaan selesai, pengarang mula memperkenalkan beberapa butiran pengekod, hiperparameter dan parameter. Mengambil pengekod sebagai contoh, pengekod dalam artikel ini adalah sama dengan tokenizer BPE yang digunakan oleh GPT-2. Berikut ialah beberapa contoh teks yang dikodkan dan dinyahkod oleh pengekod ini:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Panjang token sebenar Ini kelihatan seperti:

Perhatikan bahawa kadangkala token ialah perkataan (cth. Tidak), kadangkala ia adalah perkataan tetapi didahului oleh ruang (cth. Ġall, Ġ mewakili ruang), kadangkala ia adalah sebahagian daripada perkataan (cth. capes dibahagikan kepada Ġcap dan es), kadangkala ia adalah tanda baca (cth. .).

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Satu faedah BPE ialah ia boleh mengekod rentetan sewenang-wenangnya dan jika ia menemui sesuatu yang tiada dalam perbendaharaan kata ia akan memecahkannya kepada subrentetan yang difahaminya :

Tiada butiran lanjut. Seterusnya, kami akan memperkenalkan rangkaian saraf asas Bahagian ini lebih asas, terutamanya termasuk GELU, fungsi Softmax, Normalisasi Lapisan dan Linear. Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Terdapat contoh kod dalam setiap bahagian kecil, contohnya, dalam bahagian Linear, penulis menunjukkan pendaraban matriks piawai + bias :

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Kod untuk unjuran lapisan linear dari satu ruang vektor ke ruang vektor yang lain adalah seperti berikut:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Seni bina GPT

Bahagian ini memperkenalkan struktur GPT itu sendiri.

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Seni bina pengubah adalah seperti berikut:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Transformer hanya menggunakan timbunan penyahkod (bahagian kanan rajah):

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Perlu diingatkan bahawa disebabkan untuk menyingkirkan pengekod, lapisan perhatian silang tengah juga dipadamkan. ​

Pada tahap tinggi, seni bina GPT mempunyai tiga bahagian berikut:

  • Pembenaman teks + lokasi;
  • Timbunan penyahkod pengubah;
  • diunjurkan kepada perbendaharaan kata.

Kodnya kelihatan seperti ini:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Tangkapan skrin bahagian kod

Seterusnya, setiap tiga bahagian di atas akan diuraikan dengan lebih terperinci, dan saya tidak akan menerangkan butiran di sini .

Di atas ialah pelaksanaan GPT oleh pengarang Langkah seterusnya ialah menggabungkannya bersama-sama dan menjalankan kod untuk mendapatkan gpt2.py. Keseluruhan kandungannya hanya 120 baris kod (60 baris jika anda mengalih keluar ulasan dan ruang kosong).

Pengarang menguji keputusan oleh:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Hasil keluaran adalah seperti berikut:

Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.

Seperti yang penulis katakan: eksperimen ini adalah berjaya.

Artikel ini hanya memperkenalkan secara ringkas keseluruhan proses mengikut idea penulis. Rakan-rakan yang ingin mengetahui lebih lanjut boleh merujuk pada pautan asal.

Pautan asal: https://jaykmody.com/blog/gpt-from-scratch/#basic-layers

Atas ialah kandungan terperinci Pelajar sarjana menggunakan 60 baris kod untuk mengajar anda cara membuat model GPT yang besar dengan tangan Pengenalan teknikal adalah setanding dengan tutorial.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Model MoE sumber terbuka paling berkuasa di dunia ada di sini, dengan keupayaan bahasa Cina setanding dengan GPT-4, dan harganya hanya hampir satu peratus daripada GPT-4-Turbo Model MoE sumber terbuka paling berkuasa di dunia ada di sini, dengan keupayaan bahasa Cina setanding dengan GPT-4, dan harganya hanya hampir satu peratus daripada GPT-4-Turbo May 07, 2024 pm 04:13 PM

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

Apr 09, 2024 am 11:52 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.

Google gembira: prestasi JAX mengatasi Pytorch dan TensorFlow! Ia mungkin menjadi pilihan terpantas untuk latihan inferens GPU Google gembira: prestasi JAX mengatasi Pytorch dan TensorFlow! Ia mungkin menjadi pilihan terpantas untuk latihan inferens GPU Apr 01, 2024 pm 07:46 PM

Prestasi JAX, yang dipromosikan oleh Google, telah mengatasi Pytorch dan TensorFlow dalam ujian penanda aras baru-baru ini, menduduki tempat pertama dalam 7 penunjuk. Dan ujian tidak dilakukan pada TPU dengan prestasi JAX terbaik. Walaupun dalam kalangan pembangun, Pytorch masih lebih popular daripada Tensorflow. Tetapi pada masa hadapan, mungkin lebih banyak model besar akan dilatih dan dijalankan berdasarkan platform JAX. Model Baru-baru ini, pasukan Keras menanda aras tiga hujung belakang (TensorFlow, JAX, PyTorch) dengan pelaksanaan PyTorch asli dan Keras2 dengan TensorFlow. Pertama, mereka memilih satu set arus perdana

KAN, yang menggantikan MLP, telah diperluaskan kepada konvolusi oleh projek sumber terbuka KAN, yang menggantikan MLP, telah diperluaskan kepada konvolusi oleh projek sumber terbuka Jun 01, 2024 pm 10:03 PM

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

Hello, Atlas elektrik! Robot Boston Dynamics hidup semula, gerakan pelik 180 darjah menakutkan Musk Hello, Atlas elektrik! Robot Boston Dynamics hidup semula, gerakan pelik 180 darjah menakutkan Musk Apr 18, 2024 pm 07:58 PM

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

FisheyeDetNet: algoritma pengesanan sasaran pertama berdasarkan kamera fisheye FisheyeDetNet: algoritma pengesanan sasaran pertama berdasarkan kamera fisheye Apr 26, 2024 am 11:37 AM

Pengesanan objek ialah masalah yang agak matang dalam sistem pemanduan autonomi, antaranya pengesanan pejalan kaki adalah salah satu algoritma terawal untuk digunakan. Penyelidikan yang sangat komprehensif telah dijalankan dalam kebanyakan kertas kerja. Walau bagaimanapun, persepsi jarak menggunakan kamera fisheye untuk pandangan sekeliling agak kurang dikaji. Disebabkan herotan jejari yang besar, perwakilan kotak sempadan standard sukar dilaksanakan dalam kamera fisheye. Untuk mengurangkan perihalan di atas, kami meneroka kotak sempadan lanjutan, elips dan reka bentuk poligon am ke dalam perwakilan kutub/sudut dan mentakrifkan metrik mIOU pembahagian contoh untuk menganalisis perwakilan ini. Model fisheyeDetNet yang dicadangkan dengan bentuk poligon mengatasi model lain dan pada masa yang sama mencapai 49.5% mAP pada set data kamera fisheye Valeo untuk pemanduan autonomi

Robot Tesla bekerja di kilang, Musk: Tahap kebebasan tangan akan mencapai 22 tahun ini! Robot Tesla bekerja di kilang, Musk: Tahap kebebasan tangan akan mencapai 22 tahun ini! May 06, 2024 pm 04:13 PM

Video terbaru robot Tesla Optimus dikeluarkan, dan ia sudah boleh berfungsi di kilang. Pada kelajuan biasa, ia mengisih bateri (bateri 4680 Tesla) seperti ini: Pegawai itu juga mengeluarkan rupanya pada kelajuan 20x - pada "stesen kerja" kecil, memilih dan memilih dan memilih: Kali ini ia dikeluarkan Salah satu sorotan video itu ialah Optimus menyelesaikan kerja ini di kilang, sepenuhnya secara autonomi, tanpa campur tangan manusia sepanjang proses. Dan dari perspektif Optimus, ia juga boleh mengambil dan meletakkan bateri yang bengkok, memfokuskan pada pembetulan ralat automatik: Berkenaan tangan Optimus, saintis NVIDIA Jim Fan memberikan penilaian yang tinggi: Tangan Optimus adalah robot lima jari di dunia paling cerdik. Tangannya bukan sahaja boleh disentuh

DualBEV: mengatasi BEVFormer dan BEVDet4D dengan ketara, buka buku! DualBEV: mengatasi BEVFormer dan BEVDet4D dengan ketara, buka buku! Mar 21, 2024 pm 05:21 PM

Kertas kerja ini meneroka masalah mengesan objek dengan tepat dari sudut pandangan yang berbeza (seperti perspektif dan pandangan mata burung) dalam pemanduan autonomi, terutamanya cara mengubah ciri dari perspektif (PV) kepada ruang pandangan mata burung (BEV) dengan berkesan dilaksanakan melalui modul Transformasi Visual (VT). Kaedah sedia ada secara amnya dibahagikan kepada dua strategi: penukaran 2D kepada 3D dan 3D kepada 2D. Kaedah 2D-ke-3D meningkatkan ciri 2D yang padat dengan meramalkan kebarangkalian kedalaman, tetapi ketidakpastian yang wujud dalam ramalan kedalaman, terutamanya di kawasan yang jauh, mungkin menimbulkan ketidaktepatan. Manakala kaedah 3D ke 2D biasanya menggunakan pertanyaan 3D untuk mencuba ciri 2D dan mempelajari berat perhatian bagi kesesuaian antara ciri 3D dan 2D melalui Transformer, yang meningkatkan masa pengiraan dan penggunaan.

See all articles