Sebuah teknologi baru, model bahasa besar (LLM) memprediksi token atau urutan token, terkadang ada banyak paragraf token yang diprediksi. Ingat bahwa token bisa berupa sebuah kata, subkata (subkata yang satu kata), atau bahkan satu karakter. LLM membuat prediksi yang jauh lebih baik daripada model bahasa N-gram atau jaringan saraf berulang karena:
- LLM berisi lebih banyak parameter dibandingkan model berulang.
- LLM mengumpulkan lebih banyak konteks.
Bagian ini memperkenalkan arsitektur yang paling berhasil dan banyak digunakan untuk membangun LLM: Transformer.
Apa itu Transformer?
Transformer adalah arsitektur termutakhir untuk berbagai model bahasa besar, seperti penerjemahan:
![Gambar 1. Inputnya adalah: Saya seorang yang baik. Berbasis transformator
penerjemah mengubah input tersebut menjadi output: Je suis un bon
chien, yang merupakan kalimat yang sama
dan diterjemahkan ke dalam bahasa Prancis.](https://developers.google.cn/static/machine-learning/crash-course/images/Iamagooddog.png?authuser=19&hl=id)
Transformer penuh terdiri dari encoder dan decoder:
- Encoder melakukan konversi memasukkan teks ke dalam representasi perantara. Encoder adalah layanan neural net.
- Decoder mengonversi representasi perantara menjadi teks yang berguna. Decoder juga merupakan jaringan neural yang sangat besar.
Misalnya, dalam penerjemah:
- Encoder memproses teks input (misalnya, kalimat bahasa Inggris) ke dalam beberapa representasi perantara.
- Decoder mengonversi representasi perantara tersebut menjadi teks output (untuk kalimat Prancis yang setara).
![Gambar 2. Penerjemah berbasis Transformer
dimulai dengan encoder,
yang menghasilkan representasi perantara bahasa Inggris
kalimat. Decoder mengonversi representasi perantara tersebut menjadi
kalimat output bahasa Prancis.](https://developers.google.cn/static/machine-learning/crash-course/images/TransformerBasedTranslator.png?authuser=19&hl=id)
Apa itu self-attention?
Untuk meningkatkan konteks, Transformer sangat bergantung pada konsep yang disebut perhatian diri sendiri. Secara efektif, atas nama setiap token input, fitur self-attention meminta pertanyaan berikut:
“Seberapa besar pengaruh setiap token input terhadap penafsiran ini token tersebut?"
"Mandiri" dalam "perhatian diri" mengacu pada urutan input. Sedikit perhatian mekanisme hubungan bobot token input dengan token dalam urutan output seperti terjemahan atau token dalam urutan lain. Namun, hanya berfokus pada diri sendiri bobot pentingnya hubungan antara token dalam urutan input.
Untuk menyederhanakan masalah, anggaplah setiap token adalah sebuah kata dan konteks hanya berupa satu kalimat. Pertimbangkan kalimat berikut:
The animal didn't cross the street because it was too tired.
Kalimat sebelumnya berisi sebelas kata. Tiap-tiap dari sebelas kata memperhatikan sepuluh kata lainnya, bertanya-tanya berapa banyak itu sendiri. Misalnya, perhatikan bahwa kalimat itu berisi sebutan . Sebutan sering kali ambigu. Kata ganti itu biasanya mengacu pada kata benda atau frasa nomina terbaru, tetapi dalam contoh kalimat, yang kata benda terakhirnya apa yang dimaksud dengan—hewan atau jalan?
Mekanisme self-attention menentukan relevansi setiap kata yang ada di sekitar dengan sebutan it. Gambar 3 menunjukkan hasilnya—semakin biru garis, semakin pentingnya kata tersebut dalam sebutan itu. Artinya, hewan lebih merupakan lebih penting daripada street ke kata ganti it.
![Gambar 3. Relevansi masing-masing dari sebelas kata dalam kalimat:
'Hewan itu tidak menyeberang jalan karena terlalu lelah'
menjadi kata ganti 'itu'. Kata 'animal' adalah yang paling relevan dengan
sebutan 'itu'.](https://developers.google.cn/static/machine-learning/crash-course/images/Theanimaldidntcrossthestreet.png?authuser=19&hl=id)
Sebaliknya, anggaplah kata akhir dalam kalimat tersebut berubah seperti berikut:
The animal didn't cross the street because it was too wide.
Dalam kalimat yang direvisi ini, self-attention diharapkan akan menilai jalan sebagai lebih relevan daripada animal untuk sebutan it.
Beberapa mekanisme self-attention bersifat dua arah, artinya mekanisme tersebut menghitung skor relevansi untuk token yang mendahului dan mengikuti kata yang dihadiri. Misalnya, dalam Gambar 3, perhatikan bahwa kata-kata di kedua sisi itu akan diperiksa. Jadi, mekanisme self-attention dua arah dapat mengumpulkan konteks dari kata-kata di kedua sisi dari kata yang sedang dibahas. Sebaliknya, Mekanisme self-attention searah hanya dapat mengumpulkan konteks dari kata-kata di satu sisi dari kata yang sedang diperhatikan. Self-attention dua arah adalah sangat berguna untuk menghasilkan representasi dari keseluruhan urutan, sementara aplikasi yang menghasilkan urutan token-demi-token memerlukan self-attention. Karena alasan ini, encoder menggunakan self-attention dua arah, sedangkan decoder menggunakan searah.
Apa itu multi-head self-attention?
Setiap lapisan {i>self-attention<i} biasanya terdiri dari beberapa kepala yang memperhatikan diri sendiri. Output lapisan adalah operasi matematika (misalnya, rata-rata tertimbang atau produk dot) dari output kepala yang berbeda.
Karena setiap lapisan self-attention diinisialisasi ke nilai acak, head yang berbeda dapat mempelajari hubungan yang berbeda antara setiap kata yang dipahami dan kata yang berdekatan. Misalnya, lapisan self-attention yang dijelaskan dalam yang berfokus pada penentuan kata benda yang dirujuk . Namun, lapisan self-attention lainnya mungkin mempelajari relevansi tata bahasa dari setiap kata ke setiap kata lain, atau mempelajari interaksi lainnya.
Mengapa Transformer berukuran sangat besar?
Transformer berisi ratusan miliar atau bahkan triliunan parameter. Kursus ini umumnya merekomendasikan membangun model dengan jumlah parameter daripada parameter dengan jumlah parameter yang lebih besar. Lagi pula, model dengan jumlah parameter yang lebih sedikit menggunakan resource lebih sedikit membuat prediksi daripada model dengan jumlah parameter yang lebih besar. Namun, penelitian menunjukkan bahwa Transformer dengan lebih banyak parameter secara konsisten mengungguli Transformer dengan parameter yang lebih sedikit.
Namun, bagaimana cara LLM menghasilkan teks?
Anda telah melihat bagaimana para peneliti melatih LLM untuk memprediksi satu atau dua kata yang hilang, dan Anda Anda mungkin tidak terkesan. Lagi pula, memprediksi satu atau dua kata pada dasarnya adalah pelengkapan otomatis yang dibangun ke dalam berbagai perangkat lunak teks, email, dan penulisan. Anda mungkin bertanya-tanya bagaimana LLM dapat menghasilkan kalimat atau paragraf atau haiku tentang arbitrase.
Faktanya, LLM pada dasarnya adalah mekanisme pelengkapan otomatis yang secara otomatis memprediksi (menyelesaikan) ribuan token. Misalnya, pikirkan sebuah kalimat diikuti dengan kalimat yang disamarkan:
My dog, Max, knows how to perform many traditional dog tricks. ___ (masked sentence)
LLM dapat menghasilkan probabilitas untuk kalimat yang disamarkan, termasuk:
Probability | Kata |
---|---|
3,1% | Misalnya, ia bisa duduk, tinggal, dan melewatinya. |
2,9% | Misalnya, ia tahu cara duduk, tetap, dan melewatinya. |
LLM yang cukup besar dapat menghasilkan probabilitas untuk paragraf dan seluruh esai. Anda dapat menganggap pertanyaan pengguna kepada LLM sebagai "pemberian" kalimat diikuti oleh topeng imajiner. Contoh:
User's question: What is the easiest trick to teach a dog? LLM's response: ___
LLM menghasilkan probabilitas untuk berbagai kemungkinan respons.
Sebagai contoh lain, LLM dilatih dengan sejumlah besar “kata” matematika masalah" dapat memberikan kesan melakukan penalaran matematis yang canggih. Namun, LLM tersebut pada dasarnya hanya melengkapi prompt masalah kata secara otomatis.
Manfaat LLM
LLM dapat menghasilkan teks yang jelas dan mudah dipahami untuk berbagai beragam target audiens. LLM dapat membuat prediksi tentang tugas-tugas yang dilatih secara eksplisit. Beberapa peneliti mengklaim bahwa LLM juga dapat membuat prediksi untuk input yang tidak digunakan untuk melatih model secara eksplisit, tetapi para peneliti membantah klaim ini.
Masalah terkait LLM
Pelatihan LLM memerlukan banyak masalah, termasuk:
- Mengumpulkan set pelatihan yang sangat besar.
- Mengonsumsi beberapa bulan dan sumber daya komputasi yang sangat besar dan listrik.
- Menyelesaikan tantangan paralelisme.
Menggunakan LLM untuk menyimpulkan prediksi akan menyebabkan masalah berikut:
- LLM berhalusinasi, artinya prediksi mereka sering kali berisi kesalahan.
- LLM menggunakan sumber daya komputasi dan listrik dalam jumlah yang sangat besar. Melatih LLM pada {i>dataset<i} yang lebih besar biasanya mengurangi jumlah sumber daya yang diperlukan untuk inferensi, meskipun pelatihan menyediakan lebih banyak sumber daya pelatihan.
- Seperti semua model ML, LLM dapat menunjukkan segala macam bias.