Jenis Jenis Machine Learning


Sebelumnya kita sudah membuat model linear regression menggunakan bahasa Python. Kini saatnya lebih mengenal beberapa macam hal dalam machine learning -selain linear regression yang dapat membantu kita memahami machine learning dengan lebih sempurna

Machine Learning terbagi menjadi 4 kategori model

Supervised Learning

jenis machine learning yang membutuhkan dataset dengan label. Label adalah data yang menunjukan identitas suatu data. Misalkan, apel berwarna merah, diambil dari kebun Pak Budi, rasanya manis, dan harganya dua ribu rupiah perbuah. Data data tersebut adalah label. Intinya, data yang memberikan identitas. 
Kita menggunakan model Supervised Learning dimana kita menjumpau dataset yang sesuai dengan sifat sifat diatas.

Secara matematik Supervised Learning (SL) bisa kita rumuskan dengan

y = f(x)

Dimana kita membutuhkan inputan (x) untuk mengetahui keluaran (y). Yang nantinya jika sewaktu waktu masukkan x itu berubah atau bervariasi maka kita bisa memprediksi hasil keluarannya

Dalam mendapatkan hasil keluaran kita harus menggunakan dua model machine learning dalam Supervised Learning

1. Regression


adalah model yang memberikan keluaran berupa nilai angka. Seperti, umur, gaji, berat badan, dll

2. Classification

salah satu model Classification untuk pengkategorian pengidap diabetes

adalah model yang memberikan keluaran berupa data data deskriptif seperti suku, ras, agama, warna kulit, tempat tinggal dll

Algoritma populer yang digunakan dalam Supervised Learning
  • Linear Regression untuk Regression Problem. Kalian bisa mempelajari linear regression bahkan untuk pemula disini
  • Random Forest untuk Classification dan Regression
  • Support Vector Machines untuk Classification Problem

Unsupervised Learning

membutuhkan dataset yang tidak memiliki label. Artinya, machine learning yang mampu mengerjakan sekumpulan data 'random' dengan jumlah yang banyak. Kita tak mempedulikan apa saja label/identitas yang dimiliki oleh data data tersebut. 

Yang kita butuhkan adalah jumlah sehingga nanti kita buatkan kluster untuk mengelempokkan data data tersebut. Contohnya, seribu pengunjung website yang kita perlu mencari tahu berapa umur mereka, honi mereka, dan tempat tinggal mereka. Dan lain sebagainya

Unsupervised Learning memiliki dua model untuk memprediksi data deskriptif/bukan angka

1. Clustering

adalah model yang berfungsi untuk mengelompokkan data. Biasanya berdasarkan behaviour, sifat dan perilaku data data tersebut

2. Association

adalah model untuk menggambarkan asosiasi hubungan data X dengan Y. Atau mencari hubungan antar dua domain. Contohnya, model untuk mencari tahu pola pembelian mainan dengan rentan umur pembeli. Kita bisa mendapatkan data yang di dapat

Semi Supervised Learning

gabungan dari supervised dan unsupervised learning. Yang mana sekumpulan data sudah ditandai data datanya namun memiliki jumlah yang masif, sehingga kita tetap harus mengelompokkan data tersebut menggunakan machine learning. Contoh aplikasi yang menerapkan konsep ini adalah Google Photo, yang menampung foto foto beserta identitas yang melekat. Sehingga machine learning akan memproses hal hal yang kita butuhkan. Bisa kita ingin mengelompokkan berdasarkan tanggal foto itu diambil/diupload, bisa pola wajahnya, dan lain lain

Semi Supervised hampir mirip dengan kedua  kategori sebelumnya. Ingat yang membedakan hanyalah 'campur' atau 'tidak'-nya dataset tersebut

Kalo sebuah dataset dominan dengan dataset yang memiliki identitas, maka itu adalah kita membutuhkan Supervised Learning
Jika dataset tersebut tidak memiliki identitas namun memiliki jumlah yang masif/banyak maka kita membutuhkan Unsupervised Learning
Namun, jika sebuah data set ternyata banyak, memiliki identitas yang beragam, dan kita kesulitan untuk menentukan label yang mampu menggambarkan data dengan jumlah besar. Maka kita memerlukan Semi Supervised Learning

Kabar baiknya industri saat ini sangat jarang menggunakan pengumpulan data seperti ini. Karena mahal dan boros waktu. Kecuali Google dengan Google Photonya itu.

Perusahaan lebih dominan menggunakan Unsupervised Learning dalam pengumpulan data karena murah dan lebih mudah dimodelkan untuk memproduksi hasil keluaran (y)

Kalian bisa mengerti lebih lanjut seputar Supervised, Unsupervised dan Semi Supervised dalam artikel ini

Reinforcement Learning

Reinforcement Learning adalah model ML yang menerapkan konsep reward dan penalti. RL akan mencoba menghindari langkah langkah yang berpotensi memberikan penalti, jika ia sekali mendapat penalti maka ia akan mencari cara langkah lain untuk mendapatkan reward hingga berhasil sesuai harapan. 



Penerapan RL ada pada sebuah program AlphaGo dari Google yang berhasil mengalahkan pemain Go (sejenis permainan papan dari Cina) professional. 



Tantangan dalam mengembangkan RL adalah kita harus menyiapkan environtment untuk mengukur skala error dan sukses yang dihasilkan. Selain itu, kita harus mengoptimalkannya sehingga jangan sampai model RL ketika diterapkan pada software atau aplikasi gagal sehingga membahayakan. Contohnya adalah penerapan RL pada self-driving car. Jika RL hanya optimal pada enviroment saja tapi tidak optimal ketika benar benar digunakan, maka bisa berakibat fatal

Layaknya manusia, RL juga rentan lupa untuk merekam segala langkah langkah error atau sukses. Sehingga optimasi RL harus terus dikembangkan. Kalian bisa membaca paper riset untuk mengatasi kendala ini disini 

Comments

Video Baru!