Dasar-dasar AI
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. Pelatihan few-shot berbeda dengan metode tradisional dalam melatih model pembelajaran mesin, di mana jumlah data pelatihan yang besar biasanya digunakan. Few-shot learning digunakan terutama dalam penglihatan komputer.
Untuk mengembangkan pemahaman yang lebih baik tentang few-shot learning, mari kita lihat konsep ini lebih detail. Kita akan membahas 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, kita akan membahas beberapa aplikasi untuk few-shot learning.
Apa itu Few-Shot Learning?
“Few-shot learning” menggambarkan praktik melatih 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 untuk beberapa alasan.
Satu alasan menggunakan few-shot learning adalah bahwa dapat secara dramatis mengurangi jumlah data yang dibutuhkan untuk melatih model pembelajaran mesin, yang mengurangi waktu yang dibutuhkan untuk melabeli dataset besar. Selain itu, 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, membuat model yang lebih umum daripada model yang sangat khusus yang biasanya digunakan.
Few-shot learning paling umum digunakan dalam bidang penglihatan komputer, karena sifat masalah penglihatan komputer memerlukan volume data yang besar atau model yang fleksibel.
Sub-Kategori
Istilah “few-shot” learning sebenarnya hanya salah satu jenis pembelajaran yang menggunakan beberapa contoh pelatihan. Karena Anda menggunakan hanya “beberapa” contoh pelatihan, ada subkategori few-shot learning yang juga melibatkan pelatihan dengan jumlah data 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 seluruh one-shot learning dan few-shot learning sama. Perlu diingat bahwa istilah “few-shot” learning mungkin digunakan sebagai istilah payung untuk menggambarkan 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 tidak memiliki banyak gambar dari spesies yang Anda coba klasifikasikan, Anda dapat memasukkan banyak gambar anjing yang akan membantu klasifikasi menentukan fitur umum yang membuat anjing.
Pengayaan data dapat membuat 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 beberapa contoh pelatihan yang Anda miliki.
Pendekatan Tingkat Parameter
Meta-pembelajaran
Satu pendekatan tingkat parameter untuk few-shot learning melibatkan penggunaan teknik yang disebut “meta-pembelajaran”. Meta-pembelajaran melibatkan mengajar model bagaimana cara belajar fitur mana 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 besar yang dihasilkan dari terlalu sedikit data pelatihan. Oleh karena itu, “meta” dalam meta-pembelajaran.
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 kecil yang diberikan, dan akurasi dapat ditingkatkan dengan model guru untuk mengarahkannya melalui ruang parameter yang tinggi. Arsitektur umum ini disebut sebagai “gradient-based” meta-pembelajar.
Proses lengkap pelatihan meta-pembelajar berbasis gradien adalah sebagai berikut:
- Buat model pembelajar dasar (guru)
- Latih model pembelajar dasar pada set dukungan
- Buat model pembelajar dasar 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 dasar yang kita bahas di atas.
Sebagaimana kita bahas di atas, meta-pembelajar berbasis gradien menggunakan pengalaman sebelumnya yang diperoleh oleh model guru untuk memperbarui dirinya sendiri 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 data. Untuk menghindari ini, meta-pembelajar “model-agnostik” dibuat dengan membatasi pengaruh model guru/model dasar. Sebagai gantinya, model siswa dilatih pada kerugian untuk prediksi yang dibuat oleh model siswa sendiri.
Untuk setiap episode pelatihan meta-pembelajar model-agnostik:
- Buat salinan model meta-pembelajar saat ini.
- Salinan itu dilatih dengan bantuan model dasar/model guru.
- Salinan itu mengembalikan prediksi untuk data pelatihan.
- Kerugian yang dihitung digunakan untuk memperbarui meta-pembelajar.
Metric-Pembelajaran
Pendekatan metric-pembelajaran untuk merancang model few-shot learning biasanya melibatkan penggunaan metrik jarak dasar untuk membuat perbandingan antara sampel dalam dataset. Algoritma metric-pembelajaran seperti jarak kosinus digunakan untuk mengklasifikasikan sampel kueri berdasarkan kesamaan dengan sampel dukungan. Untuk klasifikasi gambar, ini berarti mengklasifikasikan gambar berdasarkan kesamaan karakteristik superficial. Setelah set dukungan gambar dipilih dan diubah menjadi vektor pengikut, hal yang sama dilakukan dengan set kueri dan kemudian nilai untuk dua vektor dibandingkan, dengan klasifikasi memilih kelas yang memiliki nilai yang paling dekat dengan vektor kueri yang diubah.
Penyelesaian metric yang lebih maju adalah “jaringan prototipe”. Jaringan prototipe mengelompokkan titik data bersama-sama dengan menggabungkan model pengelompokan dengan klasifikasi berbasis metrik yang dijelaskan di atas. Seperti dalam pengelompokan K-means, sentroid untuk kelas dalam set dukungan dan kueri dihitung. Metrik jarak euclidean kemudian diterapkan untuk menentukan perbedaan antara set kueri dan sentroid set dukungan, mengasignasikan set kueri ke kelas set dukungan 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 penglihatan komputer, pemrosesan bahasa alami, robotika, kesehatan, dan pemrosesan sinyal.
Aplikasi few-shot learning dalam ruang penglihatan komputer 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 yang muncul dalam kesehatan AI. Akhirnya, few-shot learning memiliki aplikasi untuk pemrosesan sinyal akustik, yang merupakan proses menganalisis data suara, memungkinkan sistem AI untuk mengkloning suara berdasarkan beberapa sampel pengguna atau konversi suara dari satu pengguna ke pengguna lain.












