AI 101
Apa itu Few-Shot Learning?

Few-shot learning mengacu pada berbagai algoritma dan teknik yang digunakan untuk mengembangkan model AI menggunakan jumlah data pelatihan yang sangat kecil. Few-shot learning berusaha untuk memungkinkan model AI mengenali dan mengklasifikasikan data baru setelah terpapar pada beberapa contoh pelatihan yang relatif sedikit. Few-shot training berbeda dengan metode tradisional pelatihan model pembelajaran mesin, di mana jumlah data pelatihan yang besar biasanya digunakan. Few-shot learning utamanya digunakan dalam komputer visi.
Untuk mengembangkan intuisi yang lebih baik tentang few-shot learning, mari kita telaah konsep ini lebih detail. Kami akan menelaah motivasi dan konsep di balik few-shot learning, menjelajahi beberapa jenis few-shot learning, dan membahas beberapa model yang digunakan dalam few-shot learning pada tingkat yang lebih tinggi. Akhirnya, kami akan menelaah beberapa aplikasi untuk few-shot learning.
Apa itu Few-Shot Learning?
“Few-shot learning” menjelaskan praktik pelatihan model pembelajaran mesin dengan jumlah data minimal. Biasanya, model pembelajaran mesin dilatih pada volume data yang besar, semakin besar semakin baik. Namun, few-shot learning adalah konsep pembelajaran mesin yang penting karena beberapa alasan.
Salah satu alasan menggunakan few-shot learning adalah bahwa dapat secara dramatis mengurangi jumlah data yang diperlukan untuk melatih model pembelajaran mesin, yang mengurangi waktu yang diperlukan untuk melabeli dataset besar. Demikian pula, few-shot learning mengurangi kebutuhan untuk menambahkan fitur khusus untuk berbagai tugas ketika menggunakan dataset umum untuk membuat sampel yang berbeda. Few-shot learning dapat membuat model lebih robust dan mampu mengenali objek berdasarkan data yang lebih sedikit, menciptakan model yang lebih umum daripada model yang sangat khusus yang merupakan norma.
Few-shot learning paling umum digunakan dalam bidang komputer visi, karena sifat masalah komputer visi memerlukan volume data yang besar atau model yang fleksibel.
Sub-Kategori
Istilah “few-shot” learning sebenarnya hanya salah satu jenis pembelajaran yang menggunakan contoh pelatihan yang sangat sedikit. Karena Anda menggunakan hanya “beberapa” contoh pelatihan, ada subkategori few-shot learning yang juga melibatkan pelatihan dengan jumlah data yang minimal. “One-shot” learning adalah jenis lain dari pelatihan model yang melibatkan mengajar model untuk mengenali objek setelah melihat hanya satu gambar dari objek tersebut. Taktik umum yang digunakan di one-shot learning dan few-shot learning adalah sama. Perlu diingat bahwa istilah “few-shot” learning mungkin digunakan sebagai istilah payung untuk menjelaskan situasi di mana model sedang dilatih dengan sangat sedikit data.
Pendekatan untuk Few-Shot Learning
Sebagian besar pendekatan few-shot learning dapat dimasukkan ke dalam salah satu dari tiga kategori: pendekatan tingkat data, pendekatan tingkat parameter, dan pendekatan berbasis metrik.
Pendekatan Tingkat Data
Pendekatan tingkat data untuk few-shot learning sangat sederhana dalam konsep. Untuk melatih model ketika Anda tidak memiliki cukup data pelatihan, Anda dapat hanya mendapatkan lebih banyak data pelatihan. Ada beberapa teknik yang dapat digunakan oleh ilmuwan data untuk meningkatkan jumlah data pelatihan yang mereka miliki.
Data pelatihan yang serupa dapat mendukung data target yang tepat yang Anda latih pada klasifikasi. Misalnya, jika Anda melatih klasifikasi untuk mengenali jenis anjing tertentu tetapi kekurangan banyak gambar dari spesies yang Anda coba klasifikasikan, Anda dapat memasukkan banyak gambar anjing yang akan membantu klasifikasi menentukan fitur umum yang membuat anjing.
Data augmentasi dapat menciptakan lebih banyak data pelatihan untuk klasifikasi. Ini biasanya melibatkan menerapkan transformasi pada data pelatihan yang ada, seperti memutar gambar yang ada sehingga klasifikasi memeriksa gambar dari sudut yang berbeda. GAN juga dapat digunakan untuk menghasilkan contoh pelatihan baru berdasarkan apa yang mereka pelajari dari contoh pelatihan yang autentik yang Anda miliki.
Pendekatan Tingkat Parameter
Meta-pembelajaran
Salah satu pendekatan tingkat parameter untuk few-shot learning melibatkan penggunaan teknik yang disebut “meta-pembelajaran”. Meta-pembelajaran melibatkan mengajar model bagaimana cara belajar yang fitur yang penting dalam tugas pembelajaran mesin. Ini dapat dilakukan dengan membuat metode untuk mengatur bagaimana ruang parameter model dieksplorasi.
Meta-pembelajaran menggunakan dua model yang berbeda: model guru dan model siswa. Model “guru” dan model “siswa”. Model guru belajar bagaimana mengenkapsulasi ruang parameter, sedangkan algoritma siswa belajar bagaimana mengenali dan mengklasifikasikan item yang sebenarnya dalam dataset. Dengan kata lain, model guru belajar bagaimana mengoptimalkan model, sedangkan model siswa belajar bagaimana mengklasifikasikan. Keluaran model guru digunakan untuk melatih model siswa, menunjukkan model siswa bagaimana menegosiasikan ruang parameter yang besar yang dihasilkan dari terlalu sedikit data pelatihan. Oleh karena itu, “meta” dalam meta-pembelajaran.
Salah satu masalah utama dengan model few-shot learning adalah bahwa mereka dapat dengan mudah overfit pada data pelatihan, karena mereka sering memiliki ruang parameter yang tinggi. Membatasi ruang parameter model menyelesaikan masalah ini, dan meskipun dapat dilakukan dengan menerapkan teknik regularisasi dan memilih fungsi kerugian yang tepat, penggunaan algoritma guru dapat secara dramatis meningkatkan kinerja model few-shot.
Model klasifikasi few-shot learning (model siswa) akan berusaha untuk menggeneralisasi berdasarkan jumlah data pelatihan yang kecil yang disediakan, dan akurasi dapat ditingkatkan dengan model guru untuk mengarahkannya melalui ruang parameter yang tinggi. Arsitektur umum ini disebut sebagai “gradient-based” meta-pembelajar.
Proses pelatihan lengkap gradient-based meta-pembelajar adalah sebagai berikut:
- Buat model base-learner (guru)
- Latih model base-learner pada set dukungan
- Buat model base-learner mengembalikan prediksi untuk set kueri
- Latih meta-pembelajar (siswa) pada kerugian yang dihasilkan dari kesalahan klasifikasi
Variasi pada Meta-pembelajaran
Model-Agnostic Meta-pembelajaran adalah metode yang digunakan untuk meningkatkan teknik meta-pembelajaran gradient-based dasar yang kita bahas di atas.
Seperti yang kita bahas di atas, gradient-based meta-pembelajar menggunakan pengalaman sebelumnya yang diperoleh oleh model guru untuk memperbarui diri dan menghasilkan prediksi yang lebih akurat untuk jumlah data pelatihan yang kecil. Namun, memulai dengan parameter yang diinisialisasi secara acak berarti bahwa model masih dapat overfit pada data. Untuk menghindari ini, “Model-agnostik” meta-pembelajar dibuat dengan membatasi pengaruh model guru/model dasar. Alih-alih melatih model siswa langsung pada kerugian untuk prediksi yang dibuat oleh model guru, model siswa dilatih pada kerugian untuk prediksi yang dibuat oleh model siswa sendiri.
Untuk setiap episode pelatihan model-agnostik meta-pembelajar:
- Salinan model meta-pembelajar saat ini dibuat.
- Salinan dilatih dengan bantuan model dasar/guru.
- Salinan mengembalikan prediksi untuk data pelatihan.
- Kerugian yang dihitung digunakan untuk memperbarui meta-pembelajar.
Pembelajaran Metrik
Pendekatan pembelajaran metrik untuk merancang model few-shot learning biasanya melibatkan penggunaan metrik jarak dasar untuk membuat perbandingan antara sampel dalam dataset. Algoritma pembelajaran metrik seperti jarak kosinus digunakan untuk mengklasifikasikan sampel kueri berdasarkan kesamaan dengan sampel dukungan. Untuk klasifikasi gambar, ini berarti hanya mengklasifikasikan gambar berdasarkan kesamaan karakteristik superficial. Setelah set dukungan gambar dipilih dan diubah menjadi vektor penyematan, hal yang sama dilakukan dengan set kueri dan kemudian nilai untuk vektor yang dua dibandingkan, dengan klasifikasi memilih kelas yang memiliki nilai yang paling dekat dengan vektor yang diquery.
Solusi metrik yang lebih maju adalah “jaringan prototipe”. Jaringan prototipe mengelompokkan titik data bersama-sama dengan menggabungkan model pengelompokan dengan klasifikasi metrik yang dijelaskan di atas. Seperti dalam pengelompokan K-means, sentroid untuk klaster dihitung untuk kelas dalam set dukungan dan kueri. Metrik jarak euclidean kemudian diterapkan untuk menentukan perbedaan antara set kueri dan sentroid set dukungan, mengasignkan set kueri ke kelas yang lebih dekat.
Sebagian besar pendekatan few-shot learning lainnya hanya variasi dari teknik inti yang dibahas di atas.
Aplikasi untuk Few-Shot Learning
Few-shot learning memiliki aplikasi dalam berbagai subbidang ilmu data, seperti komputer visi, pemrosesan bahasa alami, robotika, kesehatan, dan pemrosesan sinyal.
Aplikasi few-shot learning dalam ruang komputer visi termasuk pengenalan karakter yang efisien, klasifikasi gambar, pengenalan objek, pelacakan objek, prediksi gerakan, dan lokalisisasi aksi. Aplikasi pemrosesan bahasa alami untuk few-shot learning termasuk terjemahan, penyelesaian kalimat, klasifikasi niat pengguna, analisis sentimen, dan klasifikasi teks multi-label. Few-shot learning dapat digunakan dalam bidang robotika untuk membantu robot belajar tentang tugas dari hanya beberapa demonstrasi, memungkinkan robot belajar bagaimana melakukan aksi, bergerak, dan menavigasi dunia di sekitar mereka. Penemuan obat few-shot adalah bidang AI kesehatan yang baru muncul. Akhirnya, few-shot learning memiliki aplikasi untuk pemrosesan sinyal akustik, yang merupakan proses menganalisis data suara, memungkinkan sistem AI untuk mengkloning suara berdasarkan hanya beberapa sampel pengguna atau konversi suara dari satu pengguna ke pengguna lain.












