Pengantar Model Transformer: Apa Itu dan Cara Kerjanya

Diterbitkan: 2024-08-07

Transformers merupakan terobosan dalam AI, khususnya dalam pemrosesan bahasa alami (NLP). Terkenal karena kinerja dan skalabilitasnya, mereka sangat penting dalam aplikasi seperti terjemahan bahasa dan AI percakapan. Artikel ini membahas strukturnya, perbandingannya dengan jaringan saraf lain, serta pro dan kontranya.

Daftar isi

  • Apa itu model transformator?
  • Transformers vs. CNN dan RNN
  • Cara kerja model transformator
  • Contoh model trafo
  • Keuntungan
  • Kekurangan

Apa itu model transformator?

Transformator adalah jenis model pembelajaran mendalam yang banyak digunakan di NLP. Karena kinerja tugas dan skalabilitasnya, ini adalah inti dari model seperti seri GPT (dibuat oleh OpenAI), Claude (dibuat oleh Anthropic), dan Gemini (dibuat oleh Google) dan digunakan secara luas di seluruh industri.

Model pembelajaran mendalam terdiri dari tiga komponen utama: arsitektur model, data pelatihan, dan metode pelatihan. Dalam kerangka ini, transformator mewakili satu jenis arsitektur model. Ini mendefinisikan struktur jaringan saraf dan interaksinya. Inovasi utama yang membedakan transformator dari model pembelajaran mesin (ML) lainnya adalah penggunaan “perhatian”.

Perhatian adalah mekanisme dalam transformator yang memungkinkan mereka memproses masukan secara efisien dan menyimpan informasi dalam rangkaian yang panjang (misalnya, keseluruhan esai).

Berikut ini contoh untuk diilustrasikan. “Kucing itu duduk di tepi sungai. Ia kemudian berpindah ke cabang pohon terdekat.” Anda dapat mengetahui bahwa “bank” di sini bukanlah bank tempat Anda menyimpan uang. Anda mungkin akan menggunakan petunjuk konteks “sungai” untuk mengetahuinya. Perhatian bekerja dengan cara yang sama; ia menggunakan kata lain untuk mendefinisikan arti setiap kata. Apa yang dimaksud dengan “itu” dalam contoh? Model tersebut akan melihat kata “bergerak” dan “pohon” sebagai petunjuk untuk menyadari bahwa jawabannya adalah “kucing”.

Pertanyaan penting yang belum terjawab adalah bagaimana model mengetahui kata mana yang harus dilihat. Kita akan membahasnya nanti. Namun sekarang kita telah mendefinisikan model transformator, mari kita jelaskan lebih lanjut mengapa model ini banyak digunakan.

Bekerja lebih cerdas dengan Grammarly
Mitra penulisan AI bagi siapa saja yang memiliki pekerjaan yang harus diselesaikan

Transformers vs. CNN dan RNN

Jaringan saraf berulang (RNN) dan jaringan saraf konvolusional (CNN) adalah dua model pembelajaran mendalam umum lainnya. Meskipun RNN dan CNN memiliki kelebihannya masing-masing, transformator lebih banyak digunakan karena mereka menangani masukan yang panjang dengan lebih baik.

Transformer vs. RNN

RNN adalah model sekuensial. Analogi yang tepat adalah manusia sedang membaca buku. Saat mereka membaca, kata demi kata, ingatan dan pemahaman mereka tentang buku tersebut berkembang. Bagi pembaca yang cerdik, mereka bahkan mungkin memprediksi apa yang akan terjadi selanjutnya berdasarkan apa yang terjadi sebelumnya. RNN berfungsi dengan cara yang sama. Ia membaca kata demi kata, memperbarui ingatannya (disebut keadaan tersembunyi), dan kemudian dapat membuat prediksi (misalnya, kata berikutnya dalam kalimat atau sentimen dari suatu teks). Kelemahannya adalah keadaan tersembunyi tidak dapat menyimpan banyak informasi. Jika Anda memasukkan seluruh buku ke dalam RNN, RNN tidak akan mengingat banyak detail tentang bab pendahuluan karena hanya ada begitu banyak ruang dalam keadaan tersembunyinya. Bab-bab selanjutnya, karena baru-baru ini ditambahkan ke keadaan tersembunyi, mendapat prioritas.

Transformer tidak mengalami masalah memori yang sama. Mereka membandingkan setiap kata dengan setiap kata lain yang dimasukkan (sebagai bagian dari mekanisme perhatian) sehingga mereka tidak perlu menggunakan keadaan tersembunyi atau “mengingat” apa yang terjadi sebelumnya. Menggunakan analogi buku yang sama, transformator seperti manusia yang membaca kata berikutnya dalam sebuah buku dan kemudian melihat setiap kata sebelumnya dalam buku tersebut untuk memahami kata baru dengan benar. Jika kalimat pertama sebuah buku berisi frasa “Dia lahir di Prancis,” dan kalimat terakhir sebuah buku berisi frasa “bahasa ibunya”, sang transformator akan dapat menyimpulkan bahwa bahasa aslinya adalah bahasa Prancis. RNN mungkin tidak dapat melakukan hal tersebut, karena status tersembunyi tidak dijamin menyimpan informasi tersebut. Selain itu, RNN perlu membaca setiap kata satu per satu dan kemudian memperbarui status tersembunyinya. Sebuah transformator dapat menerapkan perhatiannya secara paralel.

Transformers vs. CNN

CNN menggunakan konteks sekitar setiap item secara berurutan untuk memberikan makna. Untuk sebuah kata di halaman, CNN akan melihat kata-kata yang mengelilinginya untuk mengetahui arti kata tersebut. Itu tidak akan bisa menghubungkan halaman terakhir dan pertama sebuah buku. CNN sebagian besar digunakan dengan gambar karena piksel lebih sering berhubungan dengan tetangganya daripada kata-kata. Meskipun demikian, CNN juga dapat digunakan untuk NLP.

Transformer berbeda dari CNN karena mereka melihat lebih dari sekedar tetangga dekat suatu benda. Mereka menggunakan mekanisme perhatian untuk membandingkan setiap kata dengan kata lain dalam masukan, sehingga memberikan pemahaman konteks yang lebih luas dan komprehensif.

Bagaimana cara kerja model transformator?

Transformer memiliki lapisan blok perhatian, jaringan saraf feedforward (FNN), dan penyematan. Model menerima masukan berbasis teks dan mengembalikan teks keluaran. Untuk melakukannya, ikuti langkah-langkah berikut:

1 Tokenisasi:Mengubah teks menjadi token (mirip dengan memecah kalimat menjadi kata-kata individual).

2 Penyematan:Mengonversi token menjadi vektor, menggabungkan penyematan posisi sehingga model memahami lokasi token di masukan.

3 Mekanisme perhatian:Memproses token menggunakan perhatian mandiri (untuk token masukan) atau perhatian silang (antara token masukan dan token yang dihasilkan). Mekanisme ini memungkinkan model untuk mempertimbangkan pentingnya token yang berbeda saat menghasilkan keluaran.

4 FNN:Meneruskan hasil melalui FNN, yang memungkinkan model menangkap pola kompleks dengan memperkenalkan nonlinier.

5 Pengulangan:Langkah 3–4 diulang beberapa kali melalui beberapa lapisan untuk menyempurnakan keluaran.

6 Distribusi keluaran:Menghasilkan distribusi probabilitas pada semua token yang mungkin.

7 Pemilihan token:Memilih token dengan probabilitas tertinggi.

Proses ini membentuk satu lintasan maju melalui model transformator. Model melakukan ini berulang kali hingga teks keluarannya selesai. Dalam setiap lintasan, proses penyematan dapat dilakukan secara paralel, begitu pula mekanisme perhatian dan tahap umpan maju. Pada dasarnya, trafo tidak perlu melakukan setiap token satu per satu. Itu dapat menarik perhatian di semua token pada saat yang bersamaan.

Sekarang kita dapat beralih ke pertanyaan sebelumnya: Bagaimana model mengetahui token mana yang harus diperhatikan? Jawabannya hanya dengan melihat banyak data pelatihan. Pada awalnya, model akan menangani token yang salah sehingga menghasilkan keluaran yang salah. Dengan menggunakan keluaran benar yang disertakan dengan data pelatihan, mekanisme perhatian dapat dimodifikasi untuk menghasilkan jawaban yang benar di lain waktu. Lebih dari miliaran (dan bahkan triliunan) contoh, mekanisme perhatian dapat memilih token yang tepat hampir sepanjang waktu.

Contoh model trafo

Transformer ada dimana-mana. Meskipun pertama kali dirancang untuk penerjemahan, trafo telah berkembang dengan baik ke hampir semua tugas bahasa, penglihatan, dan bahkan audio.

Model bahasa besar

Arsitektur transformator mendukung hampir semua model bahasa besar (LLM): GPT, Claude, Gemini, Llama, dan banyak model sumber terbuka yang lebih kecil. LLM dapat menangani berbagai tugas teks (dan, semakin banyak, gambar dan audio), seperti menjawab pertanyaan, klasifikasi, dan pembuatan bentuk bebas.

Hal ini dicapai dengan melatih model transformator pada miliaran contoh teks (biasanya diambil dari internet). Kemudian, perusahaan menyempurnakan model berdasarkan contoh klasifikasi untuk mengajarkan model cara melakukan klasifikasi dengan benar. Singkatnya, model tersebut mempelajari basis pengetahuan yang luas dan kemudian “diajarkan” keterampilan melalui penyesuaian.

Transformator penglihatan

Transformator visi adalah transformator standar yang disesuaikan untuk bekerja pada gambar. Perbedaan utamanya adalah proses tokenisasi harus bekerja dengan gambar, bukan teks. Setelah masukan diubah menjadi token, komputasi transformator normal terjadi, dan terakhir, token keluaran digunakan untuk mengklasifikasikan gambar (misalnya gambar kucing). Transformator visi sering kali digabungkan dengan LLM teks untuk membentuk LLM multimodal. Model multimodal ini dapat mengambil gambar dan mempertimbangkannya, seperti menerima sketsa antarmuka pengguna dan mendapatkan kembali kode yang diperlukan untuk membuatnya.

CNN juga populer untuk tugas gambar, tetapi transformator memungkinkan model menggunakan semua piksel dalam gambar, bukan hanya piksel di dekatnya. Misalnya, jika gambar berisi tanda berhenti di sisi paling kiri dan mobil di sisi paling kanan, model dapat menentukan bahwa mobil tersebut perlu berhenti. CNN mungkin tidak dapat menghubungkan kedua titik data tersebut karena jarak keduanya dalam gambar.

Transformator audio

Transformator audio, seperti transformator visi, adalah transformator standar dengan skema tokenisasi unik yang disesuaikan untuk data audio. Model ini dapat memproses teks dan audio mentah sebagai masukan, menghasilkan keluaran teks atau audio. Contohnya adalah Whisper, model ucapan-ke-teks yang mengubah audio mentah menjadi transkrip. Hal ini dilakukan dengan mengelompokkan audio menjadi beberapa bagian, mengubah bagian tersebut menjadi spektogram, dan menyandikan spektogram tersebut ke dalam embeddings. Penyematan ini kemudian diproses oleh transformator, yang menghasilkan token transkrip akhir.

Selain aplikasi ucapan-ke-teks, transformator audio memiliki berbagai kasus penggunaan lainnya, termasuk pembuatan musik, pembuatan teks otomatis, dan konversi suara. Selain itu, perusahaan mengintegrasikan transformator audio dengan LLM untuk mengaktifkan interaksi berbasis suara, memungkinkan pengguna mengajukan pertanyaan dan menerima tanggapan melalui perintah suara.

Keuntungan dari model transformator

Transformer telah banyak digunakan dalam bidang pembelajaran mesin karena skalabilitas dan kinerjanya yang luar biasa dalam beragam tugas. Keberhasilan mereka disebabkan oleh beberapa faktor utama:

Konteks yang panjang

Mekanisme perhatian dapat membandingkan semua token dalam urutan masukan satu sama lain. Jadi, informasi di seluruh masukan akan diingat dan digunakan untuk menghasilkan keluaran. Sebaliknya, RNN melupakan informasi lama, dan CNN hanya dapat menggunakan informasi yang dekat dengan setiap token. Inilah sebabnya mengapa Anda dapat mengunggah ratusan halaman ke chatbot LLM, mengajukan pertanyaan tentang halaman mana pun, dan mendapatkan respons yang akurat. Kurangnya konteks yang panjang di RNN dan CNN adalah alasanterbesarmengapa transformator mengalahkan mereka dalam tugas.

Paralelisasi

Mekanisme perhatian pada transformator dapat dijalankan secara paralel di semua token dalam urutan masukan. Hal ini berbeda dengan RNN yang memproses token secara berurutan. Hasilnya, transformator dapat dilatih dan diterapkan dengan lebih cepat, sehingga memberikan respons yang lebih cepat kepada pengguna. Kemampuan pemrosesan paralel ini secara signifikan meningkatkan efisiensi transformator dibandingkan dengan RNN.

Skalabilitas

Para peneliti terus meningkatkan ukuran transformator dan jumlah data yang digunakan untuk melatihnya. Mereka belum melihat batasan seberapa banyak transformator dapat belajar. Semakin besar model trafo, semakin kompleks dan bernuansa teks yang dapat dipahami dan dihasilkan (GPT-3 memiliki 175 miliar parameter sedangkan GPT-4 memiliki lebih dari 1 triliun). Hebatnya, meningkatkan model transformator, seperti membuat model dengan 10 miliar parameter dibandingkan dengan model dengan 1 miliar parameter, tidak memerlukan waktu yang jauh lebih lama. Skalabilitas ini menjadikan transformator alat yang ampuh untuk berbagai aplikasi tingkat lanjut.

Kekurangan model transformator

Kelemahan model transformator adalah memerlukan banyak sumber daya komputasi. Mekanisme perhatiannya bersifat kuadrat: setiap token dalam masukan dibandingkan dengan setiap token lainnya. Dua token akan memiliki 4 perbandingan, tiga token akan memiliki 9, empat token akan memiliki 16, dan seterusnya—pada dasarnya, biaya komputasi adalah kuadrat dari jumlah token. Biaya kuadrat ini mempunyai beberapa implikasi:

Perangkat keras khusus

LLM tidak dapat dijalankan dengan mudah di komputer rata-rata. Karena ukurannya, mereka sering kali memerlukan puluhan gigabyte RAM untuk memuat parameter model. Selain itu, CPU tradisional tidak dioptimalkan untuk komputasi paralel; GPU diperlukan sebagai gantinya. LLM yang berjalan pada CPU memerlukan waktu beberapa menit untuk menghasilkan satu token. Sayangnya, GPU bukanlah perangkat keras termurah atau paling mudah diakses.

Panjang masukan terbatas

Transformer memiliki jumlah teks terbatas yang dapat mereka proses (dikenal sebagai panjang konteksnya). GPT-3 awalnya hanya dapat memproses 2,048 token. Kemajuan dalam penerapan perhatian telah menghasilkan model dengan panjang konteks hingga 1 juta token. Meski begitu, penelitian substansial diperlukan untuk menemukan setiap bukti tambahan dari panjang konteks. Sebaliknya, RNN tidak memiliki panjang konteks maksimum. Akurasinya menurun drastis seiring bertambahnya masukan, tetapi Anda dapat memasukkan masukan sepanjang 2 juta token ke dalam satu masukan sekarang.

Biaya energi

Pusat data yang menggerakkan komputasi transformator memerlukan energi untuk menjalankannya dan air untuk mendinginkannya. Berdasarkan perkiraan, GPT-3 memerlukan 1.300 megawatt-jam listrik untuk berlatih: setara dengan memberi daya pada 130 rumah di AS selama satu tahun penuh. Semakin besar modelnya, semakin besar pula jumlah energi yang dibutuhkan. Pada tahun 2027, industri AI mungkin membutuhkan listrik setiap tahunnya sebanyak kebutuhan listrik di Belanda. Upaya signifikan telah dilakukan untuk mengurangi kebutuhan trafo energi, namun masalah ini belum teratasi.