Apa Itu Machine Learning?

 


Teknologi machine learning (ML) ini merupakan salah satu cabang dari AI yang sangat menarik perhatian, kenapa? Karena machine learning merupakan mesin yang bisa belajar layaknya manusia. Kembali pada kecerdasan buatan. Kecerdasan buatan pada pengaplikasiannya secara garis besar terbagi tujuh cabang, yaitu machine learningnatural language processingexpert systemvisionspeechplanning dan robotics. Percabangan dari kecerdasan buatan tersebut dimaksudkan untuk mempersempit ruang lingkup saat pengembangan atau belajar AI, karena pada dasarnya kecerdasan buatan memiliki ruang lingkup yang sangat luas.


Pada artikel ini, kita akan berfokus pada salah satu cabang dari kecerdasan buatan yaitu machine learning (ML) ML ini merupakan teknologi yang mampu mempelajari data yang ada dan melakukan tugas-tugas tertentu sesuai dengan apa yang ia pelajari. Sebelum kita membahas lebih jauh mengenai machine learning, mari kita telusuri terlebih definisinya. 

Teknologi machine learning (ML) adalah mesin yang dikembangkan untuk bisa belajar dengan sendirinya tanpa arahan dari penggunanya. Pembelajaran mesin dikembangkan berdasarkan disiplin ilmu lainnya seperti statistika, matematika dan data mining sehingga mesin dapat belajar dengan menganalisa data tanpa perlu di program ulang atau diperintah.

Jadi machine learning adalah tentang belajar dari data. Nah dari sini muncul pertanyaan, data apa aja sih yang dipelajari?. Jadi ada 2 jenis data yaitu data terstruktur dan tidak terstruktur. Data terstruktur merupakan data yang yang dapat diproses, disimpan, dan diambil dalam format tetap. Data terstruktur merupakan data yang memiliki informasi yang lengkap dan sesuai dengan kriteria yang dibutuhkan sehingga lebih mudah untuk dibaca dan diolah. Normalnya kita mengenal sebagai data terstruktur yang ada dalam excel atau spreadsheet. Sedangkan data tidak terstruktur merupakan data yang tidak memiliki bentuk atau struktur khusus . Data tidak terstruktur merupakan data yang memiliki informasi yang kurang lengkap atau tidak sesuai dengan kriteria yang dibutuhkan sehingga dibutuhkan proses lanjutan agar mudah untuk dibaca dan diolah. Contohnya adalah data yang berformat foto atau gambar, video, atau suara.

Teknik dalam Machine Learning ada 3 yaitu Supervised, Unsupervised dan Reinforcement Learning.


Supervised Learning

Algoritma supervised learning digunakan untuk menyelesaikan berbagai persoalan yang terkait dengan:

  • Classification (klasifikasi)
  • Regression (regresi)

Algoritma supervised learning membutuhkan sekumpulan data set yang “berpasangan”, yaitu data set yang memiliki input variable dan output variable. Data set ini digunakan dalam proses training untuk melatih komputer. Umumnya data set yang tersedia berjumlah sangat banyak, sehingga sangat sulit untuk dievaluasi tanpa bantuan komputer.

Selama proses training inilah komputer akan belajar memahami data set guna menghasilkan model yang diharapkan. Data set (D) yang digunakan oleh algoritma supervised learning didefinisikan:

D = {(x0,y0), (x1,y1), … , (xn,yn)}

Supervised learning menggunakan labeled training data (training set yang sudah diberi label) untuk belajar melakukan mapping fungsi (function). Function ini menghubungkan input (x) dengan output (y). Kaitan keduanya dirumuskan sebagai:

y = f(x)

Setelah proses traning selesai maka akan terbentuk sebuah model. Model ini perlu diuji kembali dengan data set lain, bukan data set yang digunakan selama training (test set) sehingga dapat diketahui apakah fase training sudah dianggap berhasil atau tidak.

Selanjutnya, untuk mengetahui apakah model yang dihasilkan sudah cukup bagus maka dilakukan uji statistika.

Pada Supervised Learning: (1) komputer dituntun melakukan sesuatu; (2) dataset berpasangan ada variabel input dan output D = {(x0,y0), (x1,y1), … , (xn,yn)}; dan (3) digunakan menyelesaikan masalah yang berkaitan dengan Classification, dan Regression. Algoritma yang termasuk supervised learning:

  • Support Vector Machine
  • Linear Regression
  • Logistic Regression
  • Naïve Bayes
  • Linear Discriminant Analysis (LDA)
  • Decision Tree
  • K-nearest neighbor
  • Neural Networks (multilayer perceptron)
  • Similiarity Learning, dll

Unsupervised Learning

Pada algoritma supervised learning komputer akan “dituntun” melakukan sesuatu, tapi pada algoritma unsupervised learning komputer “dibiarkan” belajar sendiri. Disebabkan komputer hanya menerima input variable dari data set, tanpa ada output variable yang bisa menuntunnya selama proses training.


Unsupervised Learning: (1) komputer dibiarkan belajar sendiri; (2) dataset tidak berpasangan hanya variabel input D = {x0, x1, … , xn}; dan (3) digunakan untuk menyelesaikan persoalan Association, dan Clustering. Algoritma yang termasuk unsupervised learning:

  • K-means
  • Hierarchical Clustering
  • DBSCAN
  • Fuzzy C-means
  • Local Outlier Factor
  • Deep Belief Nets
  • Generative Adversarial Networks
  • Expectation Maximization (EM), dll

Reinforcement Learning

reinforcement learning adalah subbidang machine learning dimana mesin bisa “hidup” dalam lingkungan dan mampu memahami state lingkungan tersebut sebagai vektor fitur. Mesin dapat menjalankan action di setiap state. Action yang berbeda membawa reward yang berbeda dan juga dapat memindahkan mesin ke state lingkungan lain.

Tujuan dari algoritma reinforcement learning adalah untuk mempelajari suatu policy. Policy adalah fungsi f (mirip dengan model dalam supervised learning) yang mengambil vektor fitur suatu state sebagai masukan dan keluaran sebagai action optimal untuk dijalankan dalam state tersebut. Action akan menjadi optimal jika memaksimalkan expected avearge reward.

Reinforcement Learning: (1) komputer melakukan pencarian sendiri –self discovery dengan cara berinteraksi dengan lingkungan; (2) dataset didapatkan dari pengalaman / experience, input didapatkan dari proses training; dan (3) digunakan untuk menyelesaikan persoalan Classification, dan Control.

Algoritma yang termasuk reinforcement learning: Q-Learning, State-Action-Reward-State-Action (SARSA), Deep Q Network (DQN), Deep Deterministic Policy Gradient (DDPG), Actor Critic, Monte Carlo Tree Search (MCTS).







Comments