Apa itu transformer dalam kecerdasan buatan?

Transformer adalah jenis arsitektur jaringan neural yang mengubah atau mengubah urutan input menjadi urutan keluaran. Mereka melakukan ini dengan mempelajari konteks dan melacak hubungan antara komponen urutan. Misalnya, pertimbangkan urutan input ini: "Apa warna langit?" Model transformator menggunakan representasi matematika internal yang mengidentifikasi relevansi dan hubungan antara kata warna, langit, dan biru. Ini menggunakan pengetahuan itu untuk menghasilkan output: "Langit biru." 

Organisasi menggunakan model transformator untuk semua jenis konversi urutan, dari pengenalan ucapan hingga terjemahan mesin dan analisis urutan protein.

Baca tentang jaringan neural

Baca tentang kecerdasan buatan (AI)

Mengapa transformator penting?

Model deep learning awal yang berfokus secara luas pada tugas-tugas pemrosesan bahasa alami (NLP) yang bertujuan membuat komputer memahami dan merespons bahasa alami manusia. Mereka menebak kata berikutnya dalam urutan berdasarkan kata sebelumnya.

Untuk memahami lebih baik, pertimbangkan fitur pelengkapan otomatis di ponsel cerdas Anda. Ini membuat saran berdasarkan frekuensi pasangan kata yang Anda ketik. Misalnya, jika Anda sering mengetik “Saya baik-baik saja,” ponsel Anda akan otomatis menyarankan baik-baik saja setelah Anda mengetik saya.

Model machine learning (ML) awal menerapkan teknologi serupa pada skala yang lebih luas. Mereka memetakan frekuensi hubungan antara pasangan kata atau kelompok kata yang berbeda dalam kumpulan data pelatihan mereka dan mencoba menebak kata berikutnya. Namun, teknologi awal tidak dapat mempertahankan konteks di luar panjang input tertentu. Misalnya, model ML awal tidak dapat menghasilkan paragraf yang bermakna karena tidak dapat mempertahankan konteks antara kalimat pertama dan terakhir dalam paragraf. Untuk menghasilkan output seperti "Saya dari Italia. Aku suka menunggang kuda. Saya berbicara bahasa Italia.", model perlu mengingat hubungan antara Italia dan Bahasa Italia, yang tidak bisa dilakukan oleh jaringan neural awal.

Model transformator secara mendasar mengubah teknologi NLP dengan memungkinkan model untuk menangani dependensi jarak jauh seperti itu dalam teks. Berikut ini adalah lebih banyak manfaat dari transformator.

Aktifkan model skala besar

Transformator memproses urutan panjang secara keseluruhan dengan komputasi paralel, yang secara signifikan mengurangi waktu pelatihan dan pemrosesan. Ini telah memungkinkan pelatihan model bahasa besar (LLM), seperti GPT dan BERT, yang dapat mempelajari representasi bahasa yang kompleks. Mereka memiliki miliaran parameter yang menangkap berbagai bahasa dan pengetahuan manusia, dan mereka mendorong penelitian ke arah sistem AI yang lebih dapat digeneralisasi.

Baca tentang model bahasa besar

Baca tentang GPT

Aktifkan penyesuaian yang lebih cepat

Dengan model transformator, Anda dapat menggunakan teknik seperti pembelajaran transfer dan retrieval augmented generation (RAG). Teknik-teknik ini memungkinkan penyesuaian model yang ada untuk aplikasi khusus organisasi industri. Model dapat dilatih sebelumnya pada set data besar dan kemudian disesuaikan pada set data khusus tugas yang lebih kecil. Pendekatan ini telah mendemokratisasikan penggunaan model canggih dan menghilangkan batasan kendala sumber daya dalam melatih model besar dari awal. Model dapat berkinerja baik di beberapa domain dan tugas untuk berbagai kasus penggunaan.

Memfasilitasi sistem AI multi-modal

Dengan transformator, Anda dapat menggunakan AI untuk tugas yang menggabungkan kumpulan data yang kompleks. Misalnya, model seperti DALL-E menunjukkan bahwa transformator dapat menghasilkan gambar dari deskripsi tekstual, menggabungkan kemampuan NLP dan visi komputer. Dengan transformator, Anda dapat membuat aplikasi AI yang mengintegrasikan berbagai jenis informasi dan meniru pemahaman dan kreativitas manusia lebih dekat.

Baca tentang visi komputer

Penelitian AI dan inovasi industri

Transformator telah menciptakan generasi baru teknologi AI dan penelitian AI, mendorong batas-batas apa yang mungkin dalam ML. Keberhasilan mereka telah menginspirasi arsitektur dan aplikasi baru yang memecahkan masalah inovatif. Mereka telah memungkinkan mesin untuk memahami dan menghasilkan bahasa manusia, menghasilkan aplikasi yang meningkatkan pengalaman pelanggan dan menciptakan peluang bisnis baru.

Apa kasus penggunaan untuk transformator?

Anda dapat melatih model transformator besar pada data berurutan apa pun seperti bahasa manusia, komposisi musik, bahasa pemrograman, dan banyak lagi. Berikut adalah beberapa contoh kasus penggunaan.

Pemrosesan bahasa alami

Transformator memungkinkan mesin untuk memahami, menafsirkan, dan menghasilkan bahasa manusia dengan cara yang lebih akurat daripada sebelumnya. Mereka dapat meringkas dokumen besar dan menghasilkan teks yang koheren dan relevan secara kontekstual untuk semua jenis kasus penggunaan. Asisten virtual seperti Alexa menggunakan teknologi transformator untuk memahami dan menanggapi perintah suara.

Terjemahan mesin

Aplikasi terjemahan menggunakan transformator untuk menyediakan terjemahan waktu nyata dan akurat antar bahasa. Transformator telah secara signifikan meningkatkan kelancaran dan akurasi terjemahan dibandingkan dengan teknologi sebelumnya.

Baca tentang terjemahan mesin

Analisis urutan DNA

Dengan memperlakukan segmen DNA sebagai urutan yang mirip dengan bahasa, transformator dapat memprediksi efek mutasi genetik, memahami pola genetik, dan membantu mengidentifikasi daerah DNA yang bertanggung jawab atas penyakit tertentu. Kemampuan ini sangat penting untuk pengobatan yang dipersonalisasi, di mana memahami susunan genetik individu dapat mengarah pada perawatan yang lebih efektif.

Analisis struktur protein

Model transformator dapat memproses data sekuensial, yang membuatnya sangat cocok untuk memodelkan rantai panjang asam amino yang terlipat menjadi struktur protein kompleks. Memahami struktur protein sangat penting untuk penemuan obat dan memahami proses biologis. Anda juga dapat menggunakan transformator dalam aplikasi yang memprediksi struktur 3D protein berdasarkan urutan asam aminonya.

Bagaimana cara kerja transformator?

Jaringan neural telah menjadi metode terkemuka dalam berbagai tugas AI seperti pengenalan gambar dan NLP sejak awal 2000-an. Mereka terdiri dari lapisan simpul komputasi yang saling berhubungan, atau neuron, yang meniru otak manusia dan bekerja sama untuk memecahkan masalah yang kompleks.

Jaringan neural tradisional yang menangani urutan data sering menggunakan pola arsitektur encoder/decoder. Encoder membaca dan memproses seluruh urutan data input, seperti kalimat bahasa Inggris, dan mengubahnya menjadi representasi matematika yang ringkas. Representasi ini adalah ringkasan yang menangkap esensi dari input. Kemudian, decoder mengambil ringkasan ini dan, langkah demi langkah, menghasilkan urutan keluaran, yang bisa menjadi kalimat yang sama diterjemahkan ke dalam bahasa Prancis.

Proses ini terjadi secara berurutan, yang berarti harus memproses setiap kata atau bagian dari data satu demi satu. Prosesnya lambat dan dapat kehilangan beberapa detail yang lebih halus dalam jarak jauh.

Mekanisme perhatian diri

Model transformator memodifikasi proses ini dengan memasukkan sesuatu yang disebut mekanisme perhatian diri. Alih-alih memproses data secara berurutan, mekanisme memungkinkan model untuk melihat bagian yang berbeda dari urutan sekaligus dan menentukan bagian mana yang paling penting. 

Bayangkan Anda berada di ruangan yang sibuk dan mencoba mendengarkan seseorang berbicara. Otak Anda secara otomatis berfokus pada suara mereka sambil menyetel suara yang kurang penting. Perhatian diri memungkinkan model melakukan sesuatu yang serupa: ia lebih memperhatikan bit informasi yang relevan dan menggabungkannya untuk membuat prediksi keluaran yang lebih baik. Mekanisme ini membuat transformator lebih efisien, memungkinkan mereka untuk dilatih pada set data yang lebih besar. Ini juga lebih efektif, terutama ketika berhadapan dengan potongan teks yang panjang di mana konteks dari jauh ke belakang dapat memengaruhi makna dari apa yang akan terjadi selanjutnya.

Apa saja komponen arsitektur transformator?

Arsitektur jaringan neural transformator memiliki beberapa lapisan perangkat lunak yang bekerja sama untuk menghasilkan output akhir. Gambar berikut menunjukkan komponen arsitektur transformasi, seperti yang dijelaskan di sisa bagian ini.


Penyematan masukan

Tahap ini mengubah urutan input ke dalam domain matematika yang dipahami algoritma perangkat lunak. Pada awalnya, urutan input dipecah menjadi serangkaian token atau komponen urutan individu. Misalnya, jika input adalah kalimat, token adalah kata-kata. Menanamkan kemudian mengubah urutan token menjadi urutan vektor matematika. Vektor membawa informasi semantik dan sintaks, direpresentasikan sebagai angka, dan atributnya dipelajari selama proses pelatihan.

Anda dapat memvisualisasikan vektor sebagai serangkaian koordinat dalam ruang n- dimensi. Sebagai contoh sederhana, pikirkan grafik dua dimensi, di mana x mewakili nilai alfanumerik dari huruf pertama kata dan y mewakili kategorinya. Kata pisang memiliki nilai (2,2) karena dimulai dengan huruf b dan termasuk dalam kategori buah. Kata mangga memiliki nilai (13,2) karena dimulai dengan huruf m dan juga termasuk dalam kategori buah. Dengan cara ini, vektor (x,y) memberi tahu jaringan neural bahwa kata pisang dan mangga berada dalam kategori yang sama. 

Sekarang bayangkan ruang n-dimensi dengan ribuan atribut tentang tata bahasa, makna, dan penggunaan kata apa pun dalam kalimat yang dipetakan ke serangkaian angka. Perangkat lunak dapat menggunakan angka untuk menghitung hubungan antara kata-kata dalam istilah matematika dan memahami model bahasa manusia. Penyematan menyediakan cara untuk merepresentasikan token diskret sebagai vektor berkelanjutan yang dapat diproses dan dipelajari oleh model.

Pengkodean posisi

Pengkodean posisi adalah komponen penting dalam arsitektur transformator karena model itu sendiri tidak memproses data sekuensial secara berurutan. Transformator membutuhkan cara untuk mempertimbangkan urutan token dalam urutan input. Pengkodean posisi menambahkan informasi ke penyematan setiap token untuk menunjukkan posisinya dalam urutan. Hal ini sering dilakukan dengan menggunakan serangkaian fungsi yang menghasilkan sinyal posisi unik yang ditambahkan ke penyematan setiap token. Dengan pengkodean posisi, model dapat mempertahankan urutan token dan memahami konteks urutan.

Blok transformator

Model transformator tipikal memiliki beberapa blok transformator yang ditumpuk bersama. Setiap blok transformator memiliki dua komponen utama: mekanisme perhatian diri multi-kepala dan jaringan neural umpan maju berdasarkan posisi. Mekanisme perhatian diri memungkinkan model untuk menimbang pentingnya token yang berbeda dalam urutan. Ini berfokus pada bagian yang relevan dari input saat membuat prediksi.

Misalnya, perhatikan kalimat "Jangan berbohong" dan "Dia berbaring." Dalam kedua kalimat tersebut, arti kata bohong tidak dapat dipahami tanpa melihat kata-kata di sebelahnya. Kata-kata bicara dan turun sangat penting untuk memahami makna yang benar. Perhatian diri memungkinkan pengelompokan token yang relevan untuk konteks.

Lapisan umpan maju memiliki komponen tambahan yang membantu model transformator melatih dan berfungsi lebih efisien. Misalnya, setiap blok transformator meliputi:

  • Koneksi di sekitar dua komponen utama yang bertindak seperti pintasan. Mereka memungkinkan aliran informasi dari satu bagian jaringan ke bagian lain, melewatkan operasi tertentu di antaranya.
  • Normalisasi lapisan yang menjaga angka—khususnya keluaran dari berbagai lapisan dalam jaringan—dalam rentang tertentu sehingga model dilatih dengan lancar.
  • Transformasi linier berfungsi agar model menyesuaikan nilai agar dapat melakukan tugas yang sedang dilatih dengan lebih baik—seperti ringkasan dokumen dibandingkan penerjemahan.

Blok linier dan softmax

Pada akhirnya model perlu membuat prediksi konkret, seperti memilih kata berikutnya dalam urutan. Di sinilah blok linier masuk. Ini adalah lapisan lain yang sepenuhnya terhubung, juga dikenal sebagai lapisan padat, sebelum tahap akhir. Ini melakukan pemetaan linier yang dipelajari dari ruang vektor ke domain input asli. Lapisan penting ini adalah di mana bagian pengambilan keputusan dari model mengambil representasi internal yang kompleks dan mengubahnya kembali menjadi prediksi spesifik yang dapat Anda interpretasikan dan gunakan. Output dari lapisan ini adalah satu set skor (sering disebut logit) untuk setiap token yang mungkin.

Fungsi softmax adalah tahap akhir yang mengambil skor logit dan menormalkannya menjadi distribusi probabilitas. Setiap elemen output softmax mewakili kepercayaan model pada kelas atau token tertentu.

Bagaimana transformator berbeda dari arsitektur jaringan neural lainnya?

Jaringan neural berulang (RNN) dan jaringan neural konvolusional (CNN) adalah jaringan neural lain yang sering digunakan dalam machine learning dan tugas deep learning. Berikut ini mengeksplorasi hubungan mereka dengan transformator.

Transformator vs. RNN

Model transformator dan RNN keduanya merupakan arsitektur yang digunakan untuk memproses data sekuensial.

RNN memproses urutan data satu elemen pada satu waktu dalam iterasi siklik. Proses dimulai dengan lapisan input menerima elemen pertama dari urutan. Informasi tersebut kemudian diteruskan ke lapisan tersembunyi, yang memproses input dan meneruskan output ke langkah waktu berikutnya. Output ini, dikombinasikan dengan elemen berikutnya dari urutan, diumpankan kembali ke lapisan tersembunyi. Siklus ini berulang untuk setiap elemen dalam urutan, dengan RNN mempertahankan vektor keadaan tersembunyi yang diperbarui pada setiap langkah waktu. Proses ini secara efektif memungkinkan RNN untuk mengingat informasi dari input masa lalu.

Sebaliknya, transformator memproses seluruh urutan secara bersamaan. Paralelisasi ini memungkinkan waktu pelatihan yang jauh lebih cepat dan kemampuan untuk menangani urutan yang jauh lebih lama daripada RNN. Mekanisme perhatian diri pada transformator juga memungkinkan model untuk mempertimbangkan seluruh urutan data secara bersamaan. Ini menghilangkan kebutuhan untuk pengulangan atau vektor tersembunyi. Sebaliknya, pengkodean posisi mempertahankan informasi tentang posisi setiap elemen dalam urutan.

Transformator sebagian besar telah menggantikan RNN dalam banyak aplikasi, terutama dalam tugas NLP, karena mereka dapat menangani dependensi jarak jauh dengan lebih efektif. Mereka juga memiliki skalabilitas dan efisiensi yang lebih besar daripada RNN. RNN masih berguna dalam konteks tertentu, terutama di mana ukuran model dan efisiensi komputasi lebih penting daripada menangkap interaksi jarak jauh.

Transformator vs. CNN

CNN dirancang untuk data seperti grid, seperti gambar, di mana hierarki spasial dan lokalitas adalah kuncinya. Mereka menggunakan lapisan konvolusi untuk menerapkan filter di seluruh input, menangkap pola lokal melalui tampilan yang difilter ini. Misalnya, dalam pemrosesan gambar, lapisan awal mungkin mendeteksi tepi atau tekstur, dan lapisan yang lebih dalam mengenali struktur yang lebih kompleks seperti bentuk atau objek.

Transformator terutama dirancang untuk menangani data berurutan dan tidak dapat memproses gambar. Model transformator visi sekarang memproses gambar dengan mengubahnya menjadi format berurutan. Namun, CNN terus tetap menjadi pilihan yang sangat efektif dan efisien untuk banyak aplikasi visi komputer praktis.

Apa saja jenis model transformator?

Transformator telah berkembang menjadi keluarga arsitektur yang beragam. Berikut ini adalah beberapa jenis model transformator.

Transformator dua arah

Representasi encoder dua arah dari model transformator (BERT) memodifikasi arsitektur dasar untuk memproses kata-kata dalam kaitannya dengan semua kata lain dalam kalimat daripada secara terpisah. Secara teknis, ia menggunakan mekanisme yang disebut model bahasa bertopeng dua arah (MLM). Selama pra-pelatihan, BERT secara acak menutupi beberapa persentase token input dan memprediksi token bertopeng ini berdasarkan konteksnya. Aspek dua arah berasal dari fakta bahwa BERT memperhitungkan urutan token kiri-ke-kanan dan kanan-ke-kiri di kedua lapisan untuk pemahaman yang lebih besar.

Transformator pra-terlatih generatif

Model GPT menggunakan dekoder transformator bertumpuk yang telah dilatih sebelumnya pada korpus teks besar dengan menggunakan tujuan pemodelan bahasa. Mereka bersifat autoregresif, yang berarti bahwa mereka mundur atau memprediksi nilai berikutnya dalam urutan berdasarkan semua nilai sebelumnya. Dengan menggunakan lebih dari 175 miliar parameter, model GPT dapat menghasilkan urutan teks yang disesuaikan dengan gaya dan nada. Model GPT telah memicu penelitian dalam AI untuk mencapai kecerdasan umum buatan. Ini berarti bahwa organisasi dapat mencapai tingkat produktivitas baru sambil menciptakan kembali aplikasi dan pengalaman pelanggan mereka.

Transformator dua arah dan autoregresif

Transformator dua arah dan auto-regresif (BART) adalah jenis model transformator yang menggabungkan sifat dua arah dan autoregresif. Ini seperti perpaduan encoder dua arah BERT dan decoder autoregresif GPT. Ini membaca seluruh urutan input sekaligus dan dua arah seperti BERT. Namun, ini menghasilkan urutan keluaran satu token pada satu waktu, dikondisikan pada token yang dihasilkan sebelumnya dan input yang disediakan oleh encoder.

Transformator untuk tugas multimodal

Model transformator multimodal seperti ViLBERT dan VisualBERT dirancang untuk menangani berbagai jenis data input, biasanya teks dan gambar. Mereka memperluas arsitektur transformator dengan menggunakan jaringan dual-stream yang memproses input visual dan tekstual secara terpisah sebelum menggabungkan informasi. Desain ini memungkinkan model untuk mempelajari representasi lintas modal. Misalnya, ViLBERT menggunakan lapisan transformator co-atensi untuk memungkinkan aliran terpisah berinteraksi. Ini penting untuk situasi di mana memahami hubungan antara teks dan gambar adalah kuncinya, seperti tugas menjawab pertanyaan visual.

Transformator visi

Vision transformator (ViT) menggunakan kembali arsitektur transformator untuk tugas klasifikasi gambar. Alih-alih memproses gambar sebagai kisi piksel, mereka melihat data gambar sebagai urutan tambalan ukuran tetap, mirip dengan bagaimana kata-kata diperlakukan dalam kalimat. Setiap patch diratakan, tertanam secara linier, dan kemudian diproses secara berurutan oleh encoder transformator standar. Penyematan posisi ditambahkan untuk mempertahankan informasi spasial. Penggunaan perhatian diri global ini memungkinkan model untuk menangkap hubungan antara sepasang tambalan apa pun, terlepas dari posisinya.

Bagaimana AWS dapat mendukung persyaratan model transformator Anda?

Amazon Web Services (AWS) menawarkan layanan AI/ML berikut yang dapat Anda gunakan untuk persyaratan model transformator Anda.

Amazon SageMaker JumpStart adalah hub ML tempat Anda dapat mengakses model transformator yang telah dilatih sebelumnya untuk melakukan tugas-tugas seperti ringkasan artikel dan pembuatan gambar. Model yang telah dilatih sebelumnya sepenuhnya dapat disesuaikan untuk kasus penggunaan Anda dengan data Anda, dan Anda dapat dengan mudah menerapkannya ke dalam produksi dengan antarmuka pengguna atau SDK.

Amazon Bedrock adalah layanan yang dikelola sepenuhnya yang menawarkan pilihan model transformator berkinerja tinggi dari perusahaan AI terkemuka seperti AI21 Labs, Anthropic, Cohere, Meta, Stability AI, dan Amazon dengan satu API. Dengan serangkaian kemampuan yang luas yang Anda perlukan untuk membangun aplikasi AI generatif, Amazon Bedrock menyederhanakan pengembangan sambil menjaga privasi dan keamanan. Misalnya, Anda dapat:

  • Mudah bereksperimen dengan berbagai model fondasi teratas dan sesuaikan secara pribadi dengan data Anda
  • Buat agen terkelola yang menjalankan tugas bisnis yang kompleks, semuanya tanpa menulis kode apa pun
  • Mengintegrasikan dan menerapkan kemampuan AI generatif dengan aman ke dalam aplikasi Anda tanpa perlu mengelola infrastruktur

Anda juga dapat melatih model transformator Anda lebih cepat dengan menggunakan AWS Trainium, akselerator ML generasi kedua yang dibuat khusus AWS untuk pelatihan deep learning dari lebih dari 100 miliar model parameter. Setiap instans Trn1 Amazon Elastic Compute Cloud (Amazon EC2) melakukan deployment hingga 16 akselerator Trainium untuk menghadirkan solusi berbiaya rendah dan berperforma tinggi utnuk pelatihan deep learning di cloud

Mulailah dengan model transformator di AWS dengan membuat akun hari ini.

Langkah Berikutnya di AWS

Daftar untuk akun gratis

Dapatkan akses secara instan ke AWS Tingkat Gratis.

Daftar 
Mulai membangun di konsol

Mulai membangun di Konsol Manajemen AWS.

Masuk