1 poin oleh GN⁺ 2024-02-25 | 1 komentar | Bagikan ke WhatsApp

Cara Mengoptimalkan Kueri Database

  • Penjelasan tentang cara membuat kueri database berjalan lebih cepat.

Mengimplementasikan Model GPT dengan SQL

  • Teori dan proses implementasi nyata tentang cara mengimplementasikan model GPT dengan SQL.
  • Model GPT adalah fungsi yang menerima string teks sebagai masukan dan mengembalikan array berisi string dan angka.
  • Fungsi ini bersifat deterministik, dan selalu mengembalikan keluaran yang sama untuk masukan yang sama.

Teori

  • Penjelasan singkat tentang cara kerja internal model GPT.
  • Penjelasan tentang apa itu model bahasa besar generatif dari sudut pandang teknis.
  • Nilai balik fungsi adalah array tuple yang menunjukkan kata untuk melanjutkan prompt yang diberikan beserta probabilitasnya.

Makna Nilai

  • Nilai yang dikembalikan fungsi adalah array tuple yang terdiri dari kata dan angka yang menunjukkan probabilitas kata tersebut untuk melanjutkan prompt.

Berbagai Metode Pembuatan Teks

  • Model bahasa besar digunakan dalam aplikasi teks, dan bekerja dengan memilih kata yang diusulkan model lalu menambahkannya ke prompt.
  • Proses ini menghasilkan teks yang memuat tata bahasa, sintaks, kecerdasan, dan penalaran bahasa manusia.

Arti Generative Pre-trained Transformer

  • "Generative" berarti menghasilkan teks, dan "Transformer" menunjukkan bahwa model ini menggunakan jenis jaringan saraf tertentu.
  • "Pre-trained" menunjukkan bahwa kemampuan model untuk melanjutkan teks awalnya dianggap sebagai tahap pra-pelatihan untuk tugas khusus, tetapi model yang cukup besar dapat mengikuti instruksi bahasa manusia bahkan tanpa pelatihan tambahan.

Generasi

  • Penjelasan proses menghasilkan teks dari prompt menggunakan GPT2.
  • Teks diubah menjadi daftar token, lalu algoritme dijalankan untuk menghitung probabilitas token kandidat.
  • Token berikutnya dipilih dan ditambahkan ke daftar token, lalu proses ini diulang sampai cukup banyak kata dihasilkan.

Tokenizer

  • Proses mengubah teks menjadi daftar angka sebelum dimasukkan ke jaringan saraf.
  • GPT2 mengimplementasikan tokenizer menggunakan varian algoritme Byte pair encoding.

Embedding

  • Karena token merepresentasikan bagian dari bahasa manusia, hubungan antartoken yang diperlukan untuk melengkapi teks harus dienkodekan.
  • GPT2 melakukan embedding setiap token menggunakan vektor berdimensi 768.

Mekanisme Attention

  • Penjelasan tentang mekanisme self-attention, inti dari arsitektur Transformer.
  • Vektor setiap token saling memengaruhi sehingga properti diteruskan ke vektor terakhir.

Feedforward

  • Tahap yang dilakukan dalam jaringan saraf mendalam, yang memproses masukan melalui beberapa lapisan.
  • Setiap lapisan mentransformasikan masukan menggunakan parameter yang telah dipelajari.

Blok

  • Proses yang dijelaskan pada tahap sebelumnya diulang di beberapa lapisan (blok).
  • Keluaran dari setiap blok digunakan sebagai masukan untuk blok berikutnya.

Pendapat GN⁺

  • Artikel ini sangat bermanfaat bagi pakar database maupun insinyur perangkat lunak, dan dapat membantu memahami proses kompleks dalam mengimplementasikan model GPT dengan SQL.
  • Dengan menjelaskan prinsip dasar dan metode implementasi model GPT, pembaca dapat memperoleh wawasan tentang cara kerja model bahasa AI.
  • Artikel ini memuat isi teknis, tetapi juga membantu memahami tren terbaru di bidang tersebut dengan menyajikan contoh menarik tentang perpaduan teknologi AI dan database.

1 komentar

 
GN⁺ 2024-02-25
Komentar Hacker News
  • Ini adalah sesuatu yang indah. Penulis mengatakan bahwa sebelumnya ia meneliti ke arah yang sama menggunakan SQLite, dan saat itu masih jauh dari memasukkan jaringan saraf. Terinspirasi oleh seri kuliah makemore, sekitar 1 jam kemudian ia mulai menggunakan jaringan saraf, dan inilah sejauh yang berhasil ia capai. Memecahnya ke dalam model relasional ternyata merupakan latihan yang sangat baik.
  • Demonya bagus, tetapi penjelasan tentang causal masking di artikel itu membingungkan. Causal masking ada untuk mencegah model “mengintip” token masa depan selama pelatihan, dan dalam arsitektur seperti GPT juga ada untuk memaksakan sifat autoregresif saat inferensi. Saat inferensi, bagaimanapun, hanya token terakhir yang digunakan, sehingga token ini akan memperhatikan seluruh urutan input. Jadi token ini jelas tidak ditentukan hanya oleh embedding token terakhir saja.
  • Bertanya-tanya apakah ini representasi yang tepat dari loop driver GPT. Kodenya tampak mengubah string menjadi daftar token, menjalankan algoritme untuk mengembalikan probabilitas token, memilih token berikutnya dari daftar kandidat, menambahkannya ke daftar token, lalu mengulangi proses itu sambil memutuskan apakah generasi harus dihentikan. Terakhir, daftar token tampaknya diubah kembali menjadi string dan dikembalikan. Ini terlihat sangat mirip dengan state machine yang mengimplementasikan algoritme Shlemiel the painter, dan menimbulkan pertanyaan tentang biaya komputasi yang melekat pada tugas generasi.
  • Machine learning modern tidak menuntut kelengkapan Turing, tetapi orang-orang sedang mempertimbangkan kemungkinan AGI. Akan cukup menarik jika kelengkapan Turing memang tidak diperlukan.
  • Tautan terkait: "GPT 60 baris yang dibuat dengan NumPy" - Februari 2023 (146 komentar)
  • Suka sekali dengan ini. Sesuatu yang setahun lalu terasa seperti semacam sihir kini dijelaskan dengan sangat baik dan hampir dengan cara yang kekanak-kanakan.
  • Selama ini saya sepenuhnya menghindari GPT dan LLM. Ini tampaknya bisa menghasilkan keluaran teks dengan tingkat kefasihan tertentu, tetapi rasanya tidak bisa dipakai untuk mem-parsing pertanyaan dan menjawabnya. Saya penasaran bagaimana cara kerjanya, atau apakah ada posting blog sederhana atau kursus yang merilis engine mainan dalam bahasa seperti Python. Semua materi pembelajaran yang saya lihat sejauh ini berfokus pada cara menggunakan platform.
  • Ini luar biasa. Dalam konteks yang mirip, penulis juga mengimplementasikan GPT hanya dengan menggunakan fungsi spreadsheet, dan menyediakan tutorial video bersamanya.
  • Secara tak terduga ini penuh wawasan, dan memberikan jawaban atas beberapa pertanyaan awal yang saya miliki: bukan hanya tentang "bagaimana", tetapi juga "mengapa". Kita sering melihat pola softmax. Saya berharap orang-orang mengajarkannya sebagai "argmax yang dapat didiferensiasikan" alih-alih langsung memberikan rumusnya. Memang bukan hanya itu, tetapi sering kali digunakan seperti itu.
  • Saya terus membaca bahwa GPT hanyalah Markov yang "lebih pintar" dan "lebih kompleks" yang memuntahkan kata berikutnya dengan probabilitas tertentu. Namun dari pengalaman saya, itu tampaknya tidak benar — ia harus belajar dengan cara tertentu. Misalnya, jika saya mengatakan sesuatu yang terjadi hari ini dan bertentangan dengan masa lalu (saya menggunakannya untuk menguji Piala Dunia Qatar), lalu mengajukan pertanyaan yang dipengaruhi oleh peristiwa itu, ia menjawab dengan tepat. Saya penasaran bagaimana kalimat sederhana (informasi yang saya berikan) bisa mengubah probabilitas token berikutnya sejauh itu.