Skip to main content

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

Popular posts from this blog

Cara Mengatasi Missing Value Pada Dataset

  Ketika kita ingin mengolah data untuk menjadi sebua model machine learning, maka data yang harus disajikan harus bersih dari field field kosong. Biasanya kita akan menjumpai filed field bernilai NaN yang artinya field tersebut kosong atau tak diketahui. Ini sangat berpengaruh hasil model data kita Inilah yang disebut Missing Value. Nilai yang hilang dari beberapa baris dataset Cara Mengetahui Bahwa Dataset Kita Terdapat Missing Value? Cara termudah adalah dengan menggunakan method method yang tersedia oleh package Pandas Dengan Pandas, tak hanya kita bisa mengetahui dataset terdapat Missing Value atau tidak, kita bisa mencari mean, median dan modus, mengisikan data data yang kosong tersebut, dan melihat hasil data tersebut dari beberapa range tertentu Pandas juga bisa membantu kita untuk memeriksa apakah dataset kita memiliki data yang kosong. Tak mungkinkan kita melihat satu persatu ratusan atau ribuan data. Maka dari itu kita membutuhkan method yang dikerjakan oleh python dalam pa

Cara Mengatasi Hang/Freeze Pada Laptop Asus TUF Gaming

  Ada beberapa kendala ketika membeli laptop. Seperti ada aplikasi yang tidak kompaktibel, ada yang hardwarenya crashed, dan bahkan memang harus dibawa ke manufakturnya untuk diktukar karena ada barang yang kita beli adalah miss saat quality control Terlepas dari semua kendala tersebut. Saya akan memberikan sekedar solusi yang bisa menjadi manfaat jika permasalahan itu sama dengan kalian. Yaitu, laptop yang suka freeze, hang, saat kita operasikan Sedikit Cerita Saya belum ada setahun menggunakan laptop Asus varian Tuf Gaming ini. Namun saat beberapa minggu pertama saya mencobanya, ada beberapa kendala yaitu laptop sering hang dan freeze tanpa sebab. Ini terjadi secara tiba tiba. Dan seumpamam saya bawa lagi ke outlet laptop ini berasal, saya gak bisa memberikan alasan yang jelas kenapa laptop ini bisa freeze dan hang. Karena memang terjadi tiba tiba saja.  Hingga beberapa bulan selanjutnya, laptop ini semakin sering hang. Baru beberapa menit dipakai freeze, saya force shut down lewat t

Kupas Tuntas Seputar Agile Dan Contoh Penerapannya

  Startup, perusahaan digital, atau bahkan programmer yang sedang melayani clientnnya untuk mengerjakan sebuah aplikasi memiliki metode.  Metode ini menjadi panduan baku yang kerap digunakan dimananpun dalam pengemabangan produk digital Lebih mudahnya saat kita membangun aplikasi mobile. Kita akan mempelajari bahasa pemograman apa saja yang dibutuhkan, juga serba serbi framework dan tool yang memudahkan segala prosesnya Metode yang baru saja saya ceritakan diatas dinamakan Agile . Sedangkan project yang menerapkan konsep tersebut dinamakan, Agile Project Apa Itu Agile dan Agile Project? Menurut Wikipedia .  Sekumpulan praktek yang bertujuan untuk menaikkan keefeketifan pengembangan suatu aplikasi secara profesional, tim dan terorganisir. Agile melibatkan pengembangan solusi melalui usaha secara kolaboratif dari sifat yang sudah terorganisir, fungsionalitas dan pelanggan Metode ini sangat mengandalkan kolaborasi. Mulai dari para engineer hingga product manager, semuanya harus melalui s