AI 101
Apa itu Jaringan Neural Transformer?

Transformer Jaringan Neural Dijelaskan
Transformers adalah jenis model pembelajaran mesin yang mengkhususkan diri dalam memproses dan menafsirkan data berurutan, membuatnya optimal untuk tugas pemrosesan bahasa alami. Untuk lebih memahami apa itu transformer pembelajaran mesin, dan bagaimana mereka beroperasi, mari kita lihat lebih dekat pada model transformer dan mekanisme yang menggerakkan mereka.
Artikel ini akan membahas:
- Model Urutan-ke-Urutan
- Arsitektur Jaringan Neural Transformer
- Mekanisme Perhatian
- Perbedaan Antara Transformers dan RNNs/LSTMs
Model Urutan-ke-Urutan
Model urutan-ke-urutan adalah jenis model NLP yang digunakan untuk mengubah urutan satu jenis menjadi urutan lainnya. Ada beberapa jenis model urutan-ke-urutan, seperti Recurrent Neural Network model dan Long Short-Term Memory (LSTM) model.
Model urutan-ke-urutan tradisional seperti RNNs dan LSTMs tidak menjadi fokus artikel ini, tetapi pemahaman tentang mereka diperlukan untuk menghargai bagaimana model transformer beroperasi dan mengapa mereka superior dibandingkan dengan model urutan-ke-urutan tradisional.
Secara singkat, model RNN dan LSTM terdiri dari jaringan pengkode dan pengode yang menganalisis data input pada berbagai langkah waktu. Model pengkode bertanggung jawab untuk membentuk representasi terkode dari kata-kata dalam data input. Pada setiap langkah waktu, jaringan pengkode mengambil urutan input dan keadaan tersembunyi dari langkah waktu sebelumnya dalam seri. Nilai keadaan tersembunyi diperbarui saat data melalui jaringan, sampai langkah waktu terakhir, di mana “vektor konteks” dihasilkan. Vektor konteks kemudian diteruskan ke jaringan pengode, yang digunakan untuk menghasilkan urutan target dengan memprediksi kata yang paling mungkin yang berpasangan dengan kata input untuk langkah waktu yang bersesuaian.
Model ini dapat ditingkatkan melalui penggunaan “mekanisme perhatian”. Mekanisme perhatian menentukan bagian mana dari vektor input yang harus difokuskan jaringan untuk menghasilkan output yang tepat. Dengan kata lain, mekanisme perhatian memungkinkan model transformer untuk memproses satu kata input sambil juga memperhatikan informasi relevan yang terkandung dalam kata-kata input lainnya. Mekanisme perhatian juga menutupi kata-kata yang tidak mengandung informasi relevan.
Arsitektur Jaringan Neural Transformer
Kami akan membahas mekanisme perhatian lebih detail nanti, tetapi untuk sekarang mari kita lihat arsitektur jaringan neural transformer pada tingkat yang lebih tinggi.
Secara umum, jaringan neural transformer terlihat seperti berikut:

Meskipun struktur umum ini mungkin berubah antara jaringan, bagian inti akan tetap sama: pengkodean posisional, vektor kata, mekanisme perhatian, jaringan saraf maju.
Pengkodean Posisional dan Vektor Kata
Jaringan neural transformer beroperasi dengan mengambil urutan input dan mengubahnya menjadi dua urutan lainnya. Transformer menghasilkan urutan vektor kata dan pengkodean posisional.
Vektor kata hanya teks yang diwakili dalam format numerik yang dapat diproses jaringan neural. Sementara itu, pengkodean posisional adalah representasi vektor yang mengandung informasi tentang posisi kata saat ini dalam kalimat input, relatif terhadap kata-kata lain.
Model jaringan neural berbasis teks lainnya seperti RNNs dan LSTMs menggunakan vektor untuk merepresentasikan kata-kata dalam data input. Vektor ini memetakan kata-kata ke nilai konstan, tetapi ini membatasi karena kata-kata dapat digunakan dalam konteks yang berbeda. Jaringan transformer memecahkan masalah ini dengan membuat nilai kata lebih fleksibel, menggunakan fungsi sinusoidal untuk memungkinkan vektor kata mengambil nilai yang berbeda tergantung pada posisi kata dalam kalimat.
Hal ini memungkinkan model jaringan neural untuk mempertahankan informasi tentang posisi relatif kata-kata input, bahkan setelah vektor melewati lapisan jaringan transformer.
Pengkodean posisional dan vektor kata dijumlahkan bersama, kemudian dimasukkan ke dalam jaringan pengkode dan pengode. Meskipun jaringan neural transformer menggunakan skema pengkode/pengode seperti RNNs dan LSTMs, perbedaan besar antara mereka adalah bahwa semua data input dimasukkan ke dalam jaringan pada saat yang sama, sedangkan pada RNNs/LSTMs, data dimasukkan secara berurutan.
Jaringan pengkode bertanggung jawab untuk mengubah input menjadi representasi yang dapat dipelajari jaringan, sedangkan jaringan pengode melakukan kebalikannya dan mengubah pengkodean menjadi distribusi probabilitas yang digunakan untuk menghasilkan kata-kata yang paling mungkin dalam kalimat output. Yang sangat penting, baik jaringan pengkode maupun pengode memiliki mekanisme perhatian.
Karena GPU dapat melakukan pemrosesan paralel, beberapa mekanisme perhatian digunakan secara paralel, menghitung informasi relevan untuk semua kata input. Kemampuan untuk memperhatikan beberapa kata sekaligus, yang disebut “perhatian multi-kepala”, membantu jaringan neural mempelajari konteks kata dalam kalimat, dan ini adalah salah satu kelebihan utama yang dimiliki jaringan transformer dibandingkan dengan RNNs dan LSTMs.
Mekanisme Perhatian
Mekanisme perhatian adalah bagian paling penting dari jaringan transformer. Mekanisme perhatian memungkinkan model transformer untuk melampaui batas perhatian model urutan-ke-urutan tradisional. Model urutan-ke-urutan tradisional membuang semua keadaan antara dan hanya menggunakan keadaan akhir/vektor konteks saat menginisialisasi jaringan pengode untuk menghasilkan prediksi tentang urutan input.
Membuang semua kecuali vektor konteks akhir bekerja dengan baik saat urutan input cukup pendek. Namun, saat panjang urutan input meningkat, kinerja model akan menurun dengan menggunakan metode ini. Ini karena sangat sulit untuk merangkum urutan input panjang sebagai vektor tunggal. Solusinya adalah untuk meningkatkan “perhatian” model dan menggunakan keadaan pengkode antara untuk membuat vektor konteks untuk jaringan pengode.
Mekanisme perhatian menentukan seberapa penting token input lainnya bagi model saat pengkodean dibuat untuk token tertentu. Misalnya, “itu” adalah kata ganti yang umum, sering digunakan untuk merujuk pada hewan saat jenis kelaminnya tidak diketahui. Mekanisme perhatian memungkinkan model transformer untuk menentukan bahwa dalam konteks saat ini “itu” merujuk pada tupai, karena dapat memeriksa semua kata relevan dalam kalimat input.
Mekanisme perhatian dapat digunakan dalam tiga cara yang berbeda: pengode-ke-pengode, pengode-saja, pengode-tunggal.
Perhatian pengode-ke-pengode memungkinkan pengode untuk mempertimbangkan urutan input saat menghasilkan output, sedangkan mekanisme perhatian pengode-saja dan pengode-tunggal memungkinkan jaringan untuk mempertimbangkan semua bagian dari urutan sebelumnya dan saat ini.
Pembangunan mekanisme perhatian dapat dibagi menjadi lima langkah:
- Menghitung skor untuk semua keadaan pengkode.
- Menghitung bobot perhatian
- Menghitung vektor konteks
- Memperbarui vektor konteks dengan output langkah waktu sebelumnya
- Menghasilkan output dengan pengode
Langkah pertama adalah membuat pengode menghitung skor untuk semua keadaan pengkode. Ini dilakukan dengan melatih jaringan pengode, yang merupakan jaringan neural maju dasar. Saat pengode dilatih pada kata pertama dalam urutan input, tidak ada keadaan internal/tersembunyi yang telah dibuat, sehingga keadaan terakhir pengkode biasanya digunakan sebagai keadaan sebelumnya pengode.
Untuk menghitung bobot perhatian, fungsi softmax digunakan untuk menghasilkan distribusi probabilitas untuk bobot perhatian.
Setelah bobot perhatian dihitung, vektor konteks perlu dihitung. Ini dilakukan dengan mengalikan bobot perhatian dan keadaan tersembunyi bersama untuk setiap langkah waktu.
Setelah vektor konteks dihitung, digunakan bersama dengan kata yang dihasilkan pada langkah waktu sebelumnya untuk menghasilkan kata berikutnya dalam urutan output. Karena pengode tidak memiliki output sebelumnya untuk dirujuk pada langkah waktu pertama, token “mulai” khusus sering digunakan sebagai gantinya.
Perbedaan Antara Transformers & RNNs/LSTMs
Mari kita bahas beberapa perbedaan antara RNNs dan LSTMs.
RNNs memproses input secara berurutan, sedangkan vektor keadaan tersembunyi dipertahankan dan diubah oleh kata-kata input saat melewati jaringan. Keadaan tersembunyi RNN biasanya mengandung sangat sedikit informasi relevan tentang input sebelumnya. Input baru sering menggantikan keadaan saat ini, yang menyebabkan kehilangan informasi dan menurunkan kinerja seiring waktu.
Dalam kontras, model transformer memproses seluruh urutan input sekaligus. Mekanisme perhatian memungkinkan setiap kata output untuk diberitahu oleh setiap input dan keadaan tersembunyi, membuat jaringan lebih dapat diandalkan untuk teks panjang.
LSTMs adalah versi modifikasi RNNs, disesuaikan untuk menangani urutan input yang lebih panjang. Arsitektur LSTM menggunakan struktur yang disebut “gerbang”, dengan “gerbang input”, “gerbang output”, dan “gerbang lupa”. Desain gerbang ini menangani kehilangan informasi yang umum pada model RNN. Data masih diproses secara berurutan, dan desain rekuren arsitektur membuat model LSTM sulit dilatih menggunakan komputasi paralel, membuat waktu pelatihan lebih lama secara keseluruhan.
Insinyur LSTM sering menambahkan mekanisme perhatian ke jaringan, yang diketahui dapat meningkatkan kinerja model. Namun, kemudian ditemukan bahwa mekanisme perhatian saja dapat meningkatkan akurasi. Penemuan ini menyebabkan pembuatan jaringan transformer yang menggunakan mekanisme perhatian dan komputasi paralel berkat GPU.












