Transfer Learning


Istilah yang terpampang di judul ini mungkin termasuk area studi yang sedang menjadi trend di dunia machine learning. Istilah lainnya kadang dikenal sebagai Learning to Learn. Apakah sebenarnya makhluk ini?

Sebelumnya saya akan jelaskan sekilas mengenai machine learning terlebih dahulu. Studi ini mungkin sekarang telah menjadi area yang paling populer di dunia artificial intelligence. Dengan machine learning, program komputer dapat melakukan pekerjaan-pekerjaan tertentu dengan “dilatih” menggunakan data, tanpa perlu diprogram secara eksplisit (well, sebenarnya masih perlu diprogram, tapi hanya sekali diawal, yaitu memrogram algoritma machine learning itu sendiri).

Sebagai contoh, buatlah program komputer yang dapat mengklasifikasi genre musik dengan hanya mendengarkan lagunya (contoh genre : pop, rock, jazz, classic). Dengan cara programming konvensional, kita perlu mengetahui detil berbagai kondisi dan variabel apa sajakah yang mencirikan genre suatu lagu. Misalnya, “jika ada nada-nada tertentu yang dimainkan, progresi harmoni tertentu, ritme sekian, tempo sekian, bla.. bla.. bla… (mungkin sampe ratusan kondisi, dan belum tentu benar), maka ini musik Jazz!”. Mungkin kita perlu mengambil pengetahuan dari expert, e.g., musisi dari berbagai genre, untuk benar2 tahu aturannya sehingga program tersebut akurat.

Thanks to the machine learning, yang kita butuhkan adalah koleksi audio musik yang cukup yang telah diketahui genre-nya. Diberikan koleksi lagu, cukup membuat program (learning system) yang dapat menemukan pola/pengetahuan/hubungan antara audio musik dan genre-nya, secara otomatis tanpa perlu banyak campur tangan expert di bidang tersebut. Lalu kita ajarkan learning system tersebut dengan memberi asupan contoh yang kira-kira seperti ini : “Musik A -> Pop”, “Musik B -> Classic”, “Musik C -> Jazz, … “. Setelah selesai belajar, learning system akan dihadapkan dengan situasi dimana ia akan mendengarkan “Musik Z” (yang belum dipelajari sebelumnya), namun masih ada kemiripan karakteristik dengan “Musik A”. Learning system yang berhasil adalah yang mampu mengklasifikasi “Musik Z” sebagai “Pop” !. Apakah program ini akurat? bisa iya atau tidak, bergantung dengan kuantitas dan kualitas data latih, dan juga desain dan pilihan algoritma pembelajarannya.

Salah satu masalah besar di machine learning adalah bagaimana mengaplikasikan learning system di domain yang berbeda dengan data latih, namun masih ada keterkaitan. Sebagai ilustrasi, anggap kita punya learning system yang sudah diajarkan bahasa Indonesia, namun kemudian ia diaplikasikan untuk menerjemahkan bahasa melayu. Solusi yang selama ini dilakukan, ‘buat saja learning system yang baru khusus untuk bahasa melayu !’. Ya, bisa, namun kita menghabiskan banyak waktu untuk membuat sistem baru dan, yang paling krusial, kita perlu cukup data mengenai bahasa melayu. Di berbagai bidang di dunia nyata, sering kali tidak cukup data yang menggambarkan lingkungan dimana suatu learning system akan diaplikasikan.

Transfer learning mencoba untuk mengatasi masalah di atas dengan cara men-transfer pengetahuan yang telah didapatkan sebelumnya untuk diaplikasikan di domain yang berbeda. Merujuk ke contoh sebelumnya, jadi tidak perlu data yang banyak mengenai bahasa melayu, tidak perlu membuat sistem yang baru. Cukup transfer pengetahuan dari sistem yang lama, dilatih sebentar, lalu diaplikasikan ke domain yang baru.

Makhluk hidup, khususnya kita manusia, sadar atau tidak sadar ternyata mudah sekali untuk melakukan transfer pengetahuan. Bagi yang berbahasa Indonesia, akan mudah sekali untuk mengerti bahasa melayu, mungkin begitu pun sebaliknya. Di aplikasi identifikasi objek misalnya, kita hampir tidak bermasalah untuk mengenali wajah seseorang dari berbagai pose (tampak samping, tampak atas/bawah, wajah terbalik), dengan hanya mempelajari tampak depan dari wajah orang tersebut sebelumnya. Metode-metode machine learning konvensional tidak mampu bekerja dengan baik di situasi seperti ini.

Dengan transfer learning, mungkin suatu hari nanti akan ada robot yang cukup diajarkan caranya menulis kata-kata sederhana, lalu dengan sendirinya ia akan bisa menulis kalimat, membuat paragraf, menulis essay, atau bahkan menulis di blog ini? who knows🙂

One thought on “Transfer Learning

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s