Perbedaan supervised dan unsupervised learning

Perbedaan Supervised dan Unsupervised Learning

Posted by

Terlihat dari namanya, mungkin sebagian dari kita sudah bisa menebak apa itu supervised learning dan unsupervised learning. Supervise berarti mengawasi, mengamati, dan mengarahkan suatu pengerjaan tugas, projek, atau aktivitas lainnya, sedangkan unsupervised berarti sebaliknya.

Di dalam machine learning, kita tidak akan mengamati seseorang melainkan kita akan mengamati model machine learning dalam melakukan pekerjaan seperti misalnya klasifikasi.

Lalu, apa perbedaan supervised dan unsupervised learning?

Supervised Learning

Supervised learning biasanya digunakan untuk menyelesaikan masalah klasifikasi dan regresi. Algoritma supervised learning sangat bergantung pada kesesuaian antara input dan output pada dataset yang diberikan, sehingga kita (user/data scientist) berperan besar dalam memvalidasi input dan output tersebut.

Input disini maksudnya adalah variabel-variabel atau fitur-fitur yang menjadi ukuran penentu hasilnya (output). Perhatikan gambar berikut.

Baca juga: Pengenalan Machine Learning atau Pembelajaran Mesin

Input dan output pada supervised learning

Gambar di atas saya buat berdasarkan dataset Iris yang sudah sangat populer di kalangan data science learners yang dapat diakses disini.

Pada gambar di atas, bagian kotak merah merupakan inputnya atau variabel yang akan diamati, sedangkan bagian kotak kuning adalah outputnya.

Masih belum paham? Baiklah. Intinya, supervised learning itu jika sebuah dataset sudah memiliki target class yang menjadi outputnya.

Misalnya pada dataset Iris di atas, kita sudah tahu bahwa ada tiga kategori yang menjadi target class. Jadi nantinya jika kita masukkan data input baru, outputnya sudah pasti adalah salah satu dari tiga kategori tersebut, yaitu Iris-setosa, Iris-versicolor, atau Iris-virginica.

Baca juga: 3 Metode Normalisasi Data di Pandas Python

Seperti telah disinggung sebelumnya, algoritma supervised learning juga digunakan untuk menyelesaikan masalah regresi atau masalah yang outputnya adalah bilangan kontinu. Contoh permasalahan regresi diantaranya memprediksi harga mobil, nilai mahasiswa (dalam angka), dan sebagainya.

Lalu bagaimana caranya kita “mengajari” sebuah model machine learning agar menghasilkan output yang akurat?

Contoh dataset Iris yang memiliki nilai input baru

Seperti pada gambar tabel di atas, ada data input baru yang dimasukkan tetapi belum memiliki class label.

Cara “mengajari” model machine learning adalah dengan melatih (train) data yang sudah memiliki label menggunakan algoritma supervised learning agar dapat menentukan hasil dari sebuah input baru.

Unsupervised Learning

Kita sudah mengetahui bahwa unsupervised learning berarti kita tidak mengawasi dan mengarahkan model machine learning, namun kita membiarkan model tersebut belajar sendiri untuk menemukan informasi yang mungkin tidak terlihat oleh mata manusia.

Masih bingung?

Jadi, jika di supervised learning kita “mengajari” model dengan memberikan “jawaban”, dalam hal ini class label-nya (output), kemudian si model belajar dari kombinasi input dan output tersebut, nah, pada unsupervised learning kita tidak memberikan “jawaban” (output) di datasetnya.

Seperti dapat dilihat pada contoh data di atas, data yang diberikan hanya berupa input variabelnya, tidak ada labelnya (output). Dalam kasus ini, model melatih dataset kemudian menemukan informasi serta menarik kesimpulan sendiri dari data tersebut.  

Secara umum, unsupervised learning lebih sulit jika dibandingkan dengan supervised learning karena kita tidak mengetahui dengan pasti hasil apa yang diharapkan dari dataset tersebut.

Baca juga: 3 Contoh Penerapan Data Formatting dengan Pandas

Clustering atau klasterisasi adalah salah satu masalah yang menggunakan teknik unsupervised learning. Contoh klasterisasi misalnya segmentasi customer bank atau segmentasi berita-berita online.

Pada intinya, teknik unsupervised learning digunakan ketika sebuah dataset tidak memiliki label class. Dengan kata lain, algoritma ini mampu secara otomatis membagi data tersebut ke dalam sejumlah klaster berdasarkan kriteria tertentu, misalnya tingkat kemiripannya.

Jadi, dapat kita simpulkan bahwa perbedaan supervised dan unsupervised learning adalah dari ada atau tidaknya label class atau target pada dataset. Jika ada label berarti supervised, jika tidak ada berarti unsupervised.

Jika Anda yang sedang belajar data science atau mengolah data dengan bahasa pemrograman Python namun masih suka bingung menulis kode Python-nya, kami telah menyusun Paket E-modul Data Science dengan Python yang didesain khusus untuk pemula dengan penjelasan bahasa Indonesia yang lengkap untuk setiap blok kode-nya. Dapatkan sekarang juga dengan klik di sini!