Apa itu few-shot learning?

Apa itu few-shot learning?

Few-shot learning adalah kerangka kerja machine learning di mana model AI belajar membuat prediksi akurat dengan melatih sejumlah kecil contoh berlabel. Biasanya digunakan untuk melatih model untuk tugas klasifikasi ketika data pelatihan yang sesuai terbatas.

Few-shot learning (FSL) adalah bagian dari apa yang kadang disebut secara lebih umum sebagai n-shot learning, sebuah kategori kecerdasan buatan yang juga mencakup one-shot learning (di mana hanya ada satu contoh berlabel dari setiap kelas yang harus dipelajari) dan zero-shot learning (di mana tidak ada contoh berlabel sama sekali). Meskipun one-shot learning pada dasarnya hanya merupakan varian FSL yang menantang, zero-shot learning merupakan masalah pembelajaran yang berbeda yang membutuhkan metodologi uniknya sendiri.

 Pada prinsipnya, FSL bertujuan untuk meniru kemampuan manusia untuk belajar dari segelintir contoh saja. Ini berbeda dengan supervised learning konvensional, yang biasanya menggunakan ratusan (atau ribuan) titik data berlabel di banyak putaran pelatihan untuk mengajarkan model AI mengenali kelas data. Meskipun pembelajaran ini canggih, supervised learning tidak praktis di beberapa kasus dunia nyata: mendapatkan contoh berlabel sering kali sulit karena biaya yang mahal, keahlian khusus domain yang diperlukan untuk membuat anotasi data dengan benar, atau, dalam skenario seperti tulisan tangan yang unik, penyakit langka, atau spesies yang terancam punah dan yang baru ditemukan, langkanya sampel yang ada.

Meskipun algoritma dan arsitektur neural network tertentu telah mencapai keberhasilan yang luar biasa pada tugas FSL, few-shot learning ditentukan oleh sifat masalah pembelajaran daripada penggunaan metode atau struktur model tertentu. Metode few-shot learning sangat beragam, mulai dari mengadaptasi model yang sudah dilatih sebelumnya untuk digunakan dalam tugas yang serupa hingga menggunakan AI generatif untuk membuat sampel baru hingga metode pembelajaran meta yang melatih model untuk generalisasi yang baik pada masalah klasifikasi baru dan kelas data yang berbeda, daripada hanya melakukan satu tugas tertentu.

Tren AI terbaru, dipersembahkan oleh para pakar

Dapatkan kurasi insight tentang berita AI yang paling penting dan menarik. Berlangganan buletin Think mingguan. Lihat Pernyataan Privasi IBM.

Terima kasih! Anda telah berlangganan.

Langganan Anda akan dikirimkan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM kami untuk informasi lebih lanjut.

Bagaimana cara kerja klasifikasi few-shot?

Meskipun few-shot learning dapat memanfaatkan berbagai macam algoritma atau arsitektur jaringan saraf, sebagian besar metode dibangun di sekitar transfer learning atau meta learning (atau kombinasi keduanya).

Meskipun few-shot learning juga dapat diterapkan pada tugas regresi (atau bahkan reinforcement learning), sebagian besar literatur FSL berfokus pada contoh penggunaan klasifikasi. Beberapa metode FSL dapat digunakan bersama dengan solusi lain yang mengatasi kelangkaan data berlabel: misalnya, dalam metode pembelajaran semi-diawasi yang menggabungkan informasi dari sejumlah besar data tak berlabel bersama dengan informasi dari pembelajaran dengan sedikit sampel berlabel yang tersedia.1

Pembelajaran transfer

Metode berbasis pembelajaran transfer berfokus pada adaptasi model yang telah dilatih sebelumnya untuk mempelajari tugas-tugas baru atau kelas data yang sebelumnya tidak terlihat.

Ketika beberapa sampel berlabel tersedia, menggunakan pembelajaran yang diawasi untuk melatih model dari awal, terutama yang memiliki sejumlah besar parameter, seperti convolutional neural networks (CNN) yang biasanya digunakan dalam visi komputer atau jaringan berbasis transformator yang digunakan dalam pemrosesan bahasa alami (NLP), seringkali mengarah pada overfitting: model mungkin berkinerja baik pada data pengujian, tetapi buruk pada data dunia nyata. Tetapi mengumpulkan data dalam jumlah yang cukup besar untuk menghindari overfitting seringkali merupakan hambatan dalam pelatihan model.

Pembelajaran transfer menawarkan solusi praktis: memanfaatkan fitur dan representasi yang berguna yang telah dipelajari oleh model yang telah dilatih. Salah satu pendekatan sederhana adalah menerapkan fine tuning pada model klasifikasi untuk melakukan tugas yang sama untuk kelas baru melalui pembelajaran yang diawasi pada sejumlah kecil contoh berlabel. Pendekatan yang lebih rumit mengajarkan keterampilan baru melalui desain tugas hiliryang relevan, seringkali tugas meta learning, ke model yang telah dilatih sebelumnya melalui tugas pra-pelatihan yang diawasi sendiri: ini semakin umum di NLP, terutama dalam konteks model dasar.

Pendekatan transfer learning yang lebih kompleks mengadaptasi neural network yang terlatih melalui perubahan arsitektur jaringan: misalnya, mengganti atau melatih kembali lapisan luar neural network, di mana klasifikasi akhir terjadi, sambil mempertahankan lapisan internal tempat ekstraksi fitur terjadi. Membekukan (atau mengatur perubahan pada) bobot model untuk semua kecuali lapisan terluar dapat memastikan bahwa pembaruan berikutnya tidak menghasilkan “catastrophic forgetting” (lupa drastis) dari pengetahuan yang sudah dipelajari. Hal ini memungkinkan pembelajaran yang sangat dipercepat dalam konteks few-shot.

Transfer learning paling berhasil ketika pelatihan awal model relevan dengan tugas baru. Sebagai contoh, model yang dilatih pada spesies burung tertentu akan menggeneralisasi dengan baik untuk spesies burung yang tidak terlihat setelah penyesuaian dengan hanya beberapa sampel berlabel, karena bobot yang dipelajari dari filter yang digunakan CNN untuk konvolusi telah dioptimalkan untuk menangkap fitur yang relevan dengan klasifikasi burung (seperti bulu, paruh, ukuran sayap, dll.) - tetapi menggunakan pembelajaran dengan beberapa bidikan untuk mengajarkan model yang sama untuk mengenali kendaraan akan menghasilkan kinerja yang kurang memuaskan.

Pendekatan tingkat data

Solusi alternatif untuk masalah sampel data berlabel terbatas adalah dengan menghasilkan sampel pelatihan tambahan. Hal ini sangat berguna ketika contoh dunia nyata dari kelas data tertentu sangat langka, seperti yang mungkin terjadi ketika berurusan dengan penyakit langka atau spesies eksotis.

Penghasilan data, melalui model generatif seperti Generative Adversarial Networks (GAN) atau variational autoencoders (VAE), dapat berpotensi menghasilkan sampel yang cukup mirip dengan sampel berlabel asli untuk melakukan pembelajaran yang diawasi konvensional, asalkan sampel asli memiliki keragaman yang cukup untuk menghindari overfitting.

Augmentasi data, proses pembuatan sampel baru dengan menerapkan transformasi yang berbeda pada sampel asli, dapat dikombinasikan dengan metode lain: misalnya, metode ini dapat digunakan untuk membuat sampel yang cocok untuk digunakan dalam metrik meta learning dalam proses yang mirip dengan pembelajaran yang diawasi sendiri yang kontras.

meta learning

Tidak seperti supervised learning atau fine-tuning, di mana pengklasifikasi dilatih pada tugas-tugas yang akan digunakan dan set pelatihan berisi kelas-kelas yang sama dengan yang akan diuji oleh model, meta learning mengambil pendekatan yang lebih luas dan tidak langsung. Sementara pendekatan yang dibangun di atas transfer learning mengadaptasi model yang sudah dilatih sebelumnya, metode meta learning sering kali melatih sistem secara menyeluruh dari awal. 

Menurut Santoro, dkk, “meta learning” mengacu pada skenario di mana banyak tugas digunakan untuk melatih model pada tingkat jangka pendek dan jangka panjang. Dalam setiap tugas, model belajar dengan cepat untuk membuat prediksi yang relevan dengan domain terbatas dari tugas spesifik tersebut; di seluruh tugas, model ini secara bertahap memperoleh pengetahuan dengan menangkap perbedaan pola dan struktur tugas di seluruh domain target. Proses dua tingkat ini sering digambarkan sebagai model “belajar untuk belajar.” 2

Sebagai contoh, tujuan dari banyak metode meta learning yang terkemuka adalah untuk melatih fungsi model, di beberapa episode pelatihan, untuk menghasilkan prediksi tingkat kemiripan antara titik-titik data dari kelas mana pun, termasuk kelas yang belum dilihat oleh model, untuk kemudian menggunakan pembelajaran dari proses tersebut untuk menyelesaikan tugas-tugas hilir (seperti masalah klasifikasi yang ditentukan secara khusus).

Beberapa pendekatan meta learning bekerja pada tingkat yang lebih abstrak, dengan melatih model agar mudah dilatih. Dalam supervised learning tradisional, parameter model (seperti bobot dan bias) adalah apa yang “dipelajari”, sedangkan model hiper parameter—seperti laju pembelajaran, atau bagaimana parameter diinisialisasi—dikonfigurasikan sebelum pelatihan dan bukan merupakan bagian dari proses pembelajaran. Meta learning dapat memperkirakan manfaat dari pembelajaran transfer dengan mempelajari titik awal yang ideal: inisialisasi parameter atau pilihan hiperparameter lainnya yang akan menggeneralisasi dengan baik ke kumpulan data yang berbeda dalam jumlah langkah pelatihan yang minimal.

Klasifikasi N-way-K-shot

Kendati beragam arsitektur model machine learning dapat digunakan untuk pembelajaran beberapa langkah, struktur pelatihan dan evaluasi FSL umumnya mengikuti kerangka kerja N-way-K-shot , di mana N mewakili jumlah kelas dan K mewakili jumlah contoh (atau “percobaan”) yang disediakan untuk setiap kelas.

 Dalam klasifikasi N-way-K-shot, model mengalami beberapa episode pelatihan. Setiap episode pelatihan terdiri dari satu atau beberapa tugas pelatihan. Model dievaluasi melalui tugas-tugas tes, yang strukturnya mencerminkan tugas-tugas pelatihan. Setiap tugas pelatihan (dan tugas tes) terdiri dari dua kumpulan data:

  • Himpunan dukungan berisi sampel pelatihan berlabel K untuk masing-masing N kelas. Model menggunakan sampel dukungan ini untuk mempelajari representasi umum untuk setiap kelas. Contohnya, kumpulan data untuk tugas klasifikasi 3-way-2-shot (3-arah-2-contoh) berisi 3 kelas gambar dan menyediakan 2 contoh dari masing-masing kelas. Jika K=1, tugas ini merupakan pembelajaran satu contoh. Jika K=0, masalahnya adalah pembelajaran tanpa contoh— yang biasanya membutuhkan solusi unik.

  • Kumpulan kueri berisi satu atau beberapa contoh baru untuk setiap kelas N. Dengan menggunakan representasi yang dipelajari dari set dukungan, model memprediksi klasifikasi untuk setiap contoh dalam set kueri. Fungsi kerugian mengukur perbedaan (“kerugian”) antara prediksi model dan prediksi yang “benar"; setelah setiap episode pelatihan, parameter model disesuaikan—dioptimalkan—untuk meminimalkan kerugian. 

Karena tujuan meta learning adalah melatih model untuk menggeneralisasi dengan baik pada data yang tidak terlihat, bukan untuk mengenali kelas data tertentu, setiap tugas pelatihan biasanya menyertakan kelas data yang berbeda dari yang digunakan dalam tugas pelatihan sebelumnya.

Untuk menguji kemampuan model dalam membuat prediksi kemiripan yang akurat untuk kelas-kelas yang belum pernah dilihat sebelumnya, kumpulan dukungan dan kumpulan kueri yang digunakan untuk pengujian harus berisi kelas-kelas data yang sama sekali baru yang belum pernah dilihat oleh model dalam tugas pelatihan.

Contoh tugas klasifikasi 3-way-2-shot untuk few-shot learning, yang mana algoritma dilatih untuk membedakan gambar berbagai jenis hewan satu sama lain Contoh tugas klasifikasi 3-way-2-shot untuk few-shot learning

Pembelajaran meta berbasis metrik

Algoritme meta learning berbasis metrik beroperasi dengan prinsip yang serupa dengan K-nearest neighbors: alih-alih memprediksi klasifikasi dengan memodelkan secara langsung batas keputusan antar kelas, pendekatan berbasis metrik menghasilkan nilai berlanjut (seperti penyematan vektor) untuk merepresentasikan sampel data yang diberikan, dan membuat kesimpulan dengan mempelajari sebuah fungsi yang mengukur suatu metrik jarak yang merepresentasikan kemiripan antara nilai tersebut dengan nilai sampel atau kelas yang berbeda yang dibandingkan.

Algoritma FSL berbasis metrik

Jaringan Siamese

Perkembangan yang relatif awal dalam algoritme berbasis metrik, jaringan Siamese memecahkan masalah klasifikasi biner dengan menggunakan pembelajaran kontras: diperlihatkan dua sampel, jaringan Siam memprediksi apakah itu pasangan positif (cocok) atau negatif (tidak cocok). Fungsi kerugian model digunakan untuk meminimalkan jarak antara penyematan vektor pasangan positif dan memaksimalkan jarak antara penyematan pasangan negatif. Model triplet loss sangat mirip: diberikan sampel “jangkar” dan dua sampel tambahan, satu yang cocok, satu yang tidak cocok, model ini memprediksi mana yang cocok dan mana yang tidak.

Dalam kedua metode tersebut, sampel pelatihan harus relatif sulit dibedakan satu sama lain. Jika tidak, model tidak akan dipaksa untuk mempelajari parameter yang menghasilkan penyematan yang lebih efektif. Augmentasi data sering digunakan ketika sampel yang cocok langka.

Jaringan yang cocok

Sementara jaringan Siam hanya dapat menyelesaikan tugas klasifikasi biner, jaringan pencocokan dapat melakukan klasifikasi multi arah. Dengan demikian, ini dianggap sebagai salah satu algoritma few-shot learning khusus pertama. 

Jaringan yang cocok menghasilkan penyematan untuk setiap sampel dalam set dukungan dan kueri menggunakan neural network yang sesuai (seperti CNN untuk tugas gambar atau LLM untuk tugas bahasa alami) dan memprediksi klasifikasi dengan mengukur jarak kosinus antara penyematan sampel kueri dan sampel dukungan yang tersedia.

Jaringan prototipe

Jaringan prototipe menghitung rata-rata fitur dari semua sampel yang tersedia untuk masing-masing kelas dalam perhitungan prototipe untuk setiap kelas. Klasifikasi titik data tertentu kemudian ditentukan oleh kedekatan relatifnya dengan prototipe untuk setiap kelas. Tidak seperti jaringan pencocokan, jaringan prototipe menggunakan jarak Euclidian daripada jarak kosinus.

Banyak penyempurnaan terhadap pendekatan ini telah diusulkan: misalnya, Zhu dan Koniusz mengusulkan penggunaan propagasi label untuk meningkatkan proses pembuatan prototipe.3

Jaringan hubungan

Jaringan relasi (RN) beroperasi dengan prinsip umum yang sama dengan jaringan pencocokan dan prototipe. RN juga menggunakan modul penyisipan yang belajar menghitung penyisipan untuk gambar input dan prototipe kelas, tetapi tidak seperti kedua algoritme tersebut, yang mendefinisikan terlebih dahulu fungsi jarak yang digunakan untuk membandingkan penyisipan, RN menambahkan modul relasi yang mempelajari fungsi jarak non-linear yang paling sesuai dengan masalah klasifikasi spesifik yang dihadapi.

Mixture of Experts | 12 Desember, episode 85

Decoding AI: Rangkuman Berita Mingguan

Bergabunglah dengan panel insinyur, peneliti, pemimpin produk, dan sosok kelas dunia lainnya selagi mereka mengupas tuntas tentang AI untuk menghadirkan berita dan insight terbaru seputar AI.

Meta learning berbasis optimasi

Pembelajaran mendalam biasanya memerlukan banyak pembaruan berulang pada parameter model melalui propagasi mundur dan penurunan gradien, yang pada gilirannya bergantung pada sejumlah besar contoh berlabel untuk mengisi kumpulan pelatihan. Untuk melatih neural network secara efisien dari awal untuk few-shot learning memerlukan cara untuk mengoptimalkan bobot model hanya dalam beberapa langkah pembaruan.

Metode FSL berbasis optimasi

Pendekatan meta learning berbasis optimasi, yang juga disebut sebagai gradient-based meta learning (GMBL), bertujuan untuk mempelajari parameter model awal atau hiperparameter untuk jaringan syaraf yang dapat disetel secara efisien untuk tugas-tugas yang relevan. Mereka mencapainya dengan mengoptimalkan proses penurunan gradien-yaitu, dengan optimasi meta pada proses optimasi itu sendiri.

Model agnostic meta-learning (MAML)

MAML (Model Agnostic Meta-Learning) merupakan salah satu pendekatan berbasis optimasi yang paling menonjol, dan telah menjadi fondasi bagi sejumlah pendekatan yang berasal dari metodologi intinya. Seperti namanya, MAML tidak fokus pada tugas tertentu atau arsitektur model AI: dapat digunakan pada model apa pun yang belajar melalui penurunan gradien.

MAML memerlukan dua tingkat pembaruan parameter yang berbeda di seluruh rangkaian tugas pelatihan FSL yang bervariasi, p(T). Pada setiap episode pelatihan, tugas baru Ti diambil secara acak dari p(T); penurunan gradien, yang dilakukan dalam K langkah dalam ukuran α, digunakan untuk mengoptimalkan vektor parameter model khusus tugas (θ’i) setelah setiap tugas pelatihan. Di beberapa episode pelatihan, satu set parameter meta) dioptimalkan dengan menerapkan penurunan gradien, dalam langkah meta dalam ukuran β, ke parameter khusus tugas θ’i. Dengan kata lain, ketika penurunan gradien biasa menghitung turunan untuk mengoptimalkan parameter model untuk tugas yang diberikan, MAML menghitung turunan dari turunan (atau “turunan tingkat kedua”) untuk mengoptimalkan parameter awal model untuk pengoptimalan khusus tugas berikutnya.

Sesuai dengan makalah aslinya, tujuan dari penelitian ini adalah untuk “menemukan parameter model yang sensitif terhadap perubahan tugas, sehingga perubahan kecil pada parameter akan menghasilkan perbaikan besar pada fungsi kerugian dari setiap tugas yang diambil dari p(T)." Hal ini menghasilkan manfaat yang serupa dengan pembelajaran transfer sekaligus menghindari kebutuhan data berlabel dalam jumlah besar untuk pra-pelatihan.

Adaptasi yang diusulkan terhadap MAML meliputi:

  • MAML Tingkat Pertama (FOMAML): Ketergantungan MAML pada turunan tingkat kedua secara komputasi mahal dan membutuhkan banyak memori. FOMAML menyederhanakan proses melalui serangkaian asumsi yang memungkinkan optimasi meta dengan hanya menggunakan turunan tingkat pertama.
     

  • Reptile:Reptile menyajikan titik tengah antara kecanggihan MAML dan kesederhanaan FOMAML: Reptile menggunakan turunan tingkat pertama, tetapi mengimplementasikan aturan unik tentang bagaimana parameter diperbarui.4
     

  • Mengoptimalkan ukuran langkah: Varian seperti Meta-SGD5 dan AlphaMAML6 menambahkan kemampuan untuk mengoptimalkan ukuran langkah dan arah untuk α dan β. Demikian pula, MAML++7 memperkenalkan sejumlah modifikasi untuk meningkatkan stabilitas dan efisiensi komputasi.

Pembelajar meta LTSM

Pendekatan pembelajaran meta dapat menggunakan jaringan memori jangka panjang pendek (LSTM) berbasis RNN untuk melatih model pembelajar meta untuk menangkap pengetahuan jangka pendek dari setiap tugas pelatihan dan pengetahuan jangka panjang yang umum untuk setiap tugas. Pembelajar meta ini kemudian digunakan untuk melatih pengklasifikasi jaringan neural.

Pengoptimalan penyematan laten (LEO)

Daripada secara eksplisit menginstansiasi dan memperbarui serangkaian parameter meta model θ yang unik, pengoptimalan penyematan laten mempelajari distribusi generatif dari parameter model khusus tugas dengan cara yang mirip dengan variational autoencoder (VAE), yang memiliki tujuan yang sama. Pengoptimalan gradien kemudian dapat dilakukan dalam ruang penyematan dimensi rendah yang dipelajari.

Contoh penggunaan few-shot learning

Teknik pembelajaran bidikan sedikit memiliki beragam luas aplikasi, karena banyak industri dan bidang penelitian yang memanfaatkan kemampuan untuk belajar secara cepat dan efektif dari contoh yang relatif sedikit.

Visi komputer

Meskipun banyak algoritma FSL terkemuka yang pada awalnya dikembangkan untuk (atau terbukti pada) tugas klasifikasi gambar, FSL juga dapat digunakan untuk masalah visi komputer yang lebih kompleks.

Meskipun deteksi objek adalah masalah yang jauh lebih kompleks daripada klasifikasi gambar, karena objek tidak hanya harus diklasifikasikan tetapi juga dilokalisasi secara akurat, pada umumnya klasifikasi gambar dibutuhkan sebagai prasyarat. Dengan demikian, banyak ide yang digunakan untuk klasifikasi dapat diadopsi untuk deteksi objek few-shot.8

Demikian juga, sejumlah arsitektur model telah diusulkan untuk segmentasi semantik few-shot.9

Robotika

FSL dapat memungkinkan robot untuk beradaptasi dengan cepat terhadap lingkungan baru dan tugas baru melalui tugas klasifikasi beberapa bidikan10 dan reinforcement learning.11

Pemrosesan bahasa alami

FSL telah menunjukkan hasil yang menjanjikan untuk pemrosesan bahasa alami (NLP), terutama melalui pembelajaran transfer: ini adalah cara intuitif untuk mengadaptasi model bahasa besar (LLM), yang telah dilatih sebelumnya pada korpus besar data tanpa label, untuk tugas-tugas spesifik seperti klasifikasi teks dan analisis sentimen yang mungkin memerlukan pemahaman kontekstual tertentu.

Pelayanan Kesehatan

Potensi FSL untuk menyesuaikan model dengan cepat ke kelas data yang langka dan tidak terlihat sangat menjanjikan untuk bidang medis, di mana kelangkaan kondisi tertentu atau keahlian yang diperlukan untuk secara akurat membuat anotasi data medis (seperti MRI atau ekokardiografi) dapat membuat akuisisi sampel berlabel dalam jumlah besar menjadi sangat sulit.

Solusi terkait
IBM watsonx.ai

Latih, validasi, lakukan tuning, dan terapkan AI generatif, model dasar, dan kemampuan machine learning dengan IBM watsonx.ai, studio perusahaan generasi berikutnya untuk pembangun AI. Bangun aplikasi AI dalam waktu singkat, dengan sedikit data.

Temukan watsonx.ai
Solusi kecerdasan buatan (AI)

Gunakan AI di bisnis Anda dalam perpaduan antara keahlian AI terdepan di industri dari IBM dan portofolio solusi Anda.

Jelajahi solusi AI
Konsultasi dan layanan AI

Temukan kembali alur kerja dan operasi yang penting dengan menambahkan AI untuk memaksimalkan pengalaman, pengambilan keputusan secara real-time, dan nilai bisnis.

Jelajahi layanan AI
Ambil langkah selanjutnya

Dapatkan akses satu atap ke kemampuan yang mencakup siklus hidup pengembangan AI. Hasilkan solusi AI yang kuat dengan antarmuka ramah pengguna, alur kerja yang efisien, serta akses ke API dan SDK berstandar industri.

Jelajahi watsonx.ai Pesan demo langsung