/ #machine learning #artificial intelligence 

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Komputer dan data adalah dua kata yang sangat berkaitan erat. Sejauh ini, komputer sangat baik dalam menyimpan data, mengorganisasi, mengeluarkan data maupun memproses data dengan volume yg sangat besar.

Maka tidak heran kemampuan komputer tersebut bisa diaplikasikan sempurna seperti pada e-commerce yang berisi jutaan barang, & jutaan pembeli. Tapi bagaimana kalau kita ingin menggunakan komputer tersebut tidak hanya untuk mengeluarkan dan menampilkan data saja? melainkan untuk melakukan decision (keputusan) berdasarkan data. Inilah esensi dari Pembelajaran Mesin (Machine Learning) yaitu, algoritma yang memberi komputer kemampuan untuk belajar dari data, lalu membuat prediksi atau keputusan.

Dasar-Dasar

Sebuah komputer dengan kemampuan seperti ini sangatlah berguna. Contohnya untuk membedakan apakah suatu email adalah spam? rekomendasi video apa lagi yg bisa user dapatkan kalau sudah nonton video tertentu?

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Meskipun program seperti ini berguna, kita tidak mungkin menyebut program ini “cerdas” seperti halnya kecerdasan otak manusia. Oleh karena itu, saintis komputer menyebut machine learning adalah beberapa kumpulan teknik/algoritma yg ada di dalam Kecerdasan Buatan / Artificial Intelligence atau lebih pendeknya, AI. Sebuah misi ambisius kita semua.

Algoritma Machine Learning dan AI cenderung sangatlah canggih. Oleh karena itu, dari pada kita semua tersesat karena penjelasannya terlalu teknis, dua hal tersebut kami jelaskan secara konseptual. Mari kita mulai dengan contoh sederhana: membedakan Ngengat Luna dan Ngengat Emperor. Proses membuat keputusan ini disebut “Klasifikasi” (Classification). Sedangkan algoritma yg digunakan disebut “Classifier”.

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Walaupun sekarang terdapat teknik maupun algoritma lain yg bisa dilatih menggunakan data mentah seperti foto atau suara, banyak algoritma yang mengurangi kompleksitas dunia nyata dengan menggunakan features. Fitur adalah nilai yang berguna untuk menggolongkan sesuatu yg kita klasifikasi. Untuk contoh ngengat ini, kita akan menggunakan 2 fitur untuk mencirikan mana ngengat Luna mana yg Emperor, yaitu

  1. lebar sayap
  2. berat

Untuk melatih Classifier kita untuk membuat prediksi yang bagus, kita butuh yang namanya training data. Mendapatkan data tersebut bisa dari mana saja. Bisa dari Entomologis/Ahli ilmu serangga, dan kalian minta tolong ke paknya. “Pak tulung gawekna labeled data”. Seperti inilah contoh data yang sudah diberi label :

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Karena kita memiliki 2 fitur saja, maka sangat mudah untuk dibuatkan scatter plot dengan sumbu x dan y untuk membedakan mana yang ngengat Luna mana yang ngengat Emperor. Namun kalau kita lihat di gambar di bawah ini, terdapat titik-titik yang saling overlap di tengah sehingga sangat sulit membedakannya. Secara sederhananya, inilah yang dilakukan oleh algoritma machine learning, mencari pemisah yg optimal

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Jika kita memisahkannya dengan kemampuan manusia, kasihlah contoh pak Joni yg entah siapa itu, pasti dengan mudah memisahkannya dengan tarik garis ditengah-tengah kerumunan data diatas. Namun akan ada ngengat Luna yang terdeteksi ngengat Emperor Maupun sebaliknya.

Kalaupun pak Joni menambahkan satu lagi garis pemisah horizontal, maka tetaplah tidak terlalu signifikan meembantu. Lihat gambar dibawah, kalo kita lihat tabel, masing-masing mendapatkan kesalahan prediksi sebesar 14 dan 18, jika data tersebut 100. Tabel ini disebut dengan Confussion Matrix

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Mengklasifikasikan sesuatu dengan suatu garis sangatlah jarang bisa mendapatkan akurasi 100%, bahkan tidak mungkin. Fungsi dari algoritma machine learning adalah memaksimalkan kolom berwarna ijo di confussion matrix di atas sambil meminimilasir error. Pada gambar diatas kita mendapatkan 168 ngengat yang berhasil diklasifikasi, dengankan salah sebanyak 32. Maka akurasi dengan metode diatas adalah 84 persen.

Masuk Decision Tree & SVM

Namun dari hasil ini, jika terdapat satu ngengat baru dengan lebar sayap x dan berat y, kita tentunya bisa memasukkannya di scatter plot dan langsung memprediksi apakah dia lunar moth atau emperor moth. Pendekatan sederhana yang menginspirasi lahirnya metode decision tree yang bisa divisualisasikan dengan garis menyerupai akar pohon maupun dengan if else sederhana.

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Sebuah machine learning dengan algoritma decission tree sama sama menggunakan features untuk membedakan seperti “lebar sayap” dan juga “berat”. Sama seperti di atas namun dengan nilai untuk membedakan, lebih kurang tertentu atau lebih sedikit.

Decision Tree merupakan 1 algoritma yang sederhana. Terdapat ratusan algoritma di paper-paper dan akan selalu ada algoritma yang terus bermunculan tiap bulannya. Beberapa algoritma juga didalamnya juga digabungkan dengan decision tree di dalamnya untuk membuat prediksi.

Saintis komputer menyebutnya dengan “Forest” atau Hutan. Karena Algoritma tersebut memiliki ratusan decision tree.

Dalam membuat prediksi, ada juga algoritma yang tidak berbasiskan “pohon” seperti halnya SVM atau “Support Vector Machine”. SVM memisahkan kedua data diatas tidak selalu dengan garis lurus, bisa juga meliuk-liuk untuk mendapatkan hasil yang lebih optimal. Divisualisasikan seperti gambar dibawah :

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

SVM tidak hanya bisa mengatasi data dengan 2 fitur saja, di aplikasi nyata, SVM digunakan untuk banyak fitur dan banyak label. seperti data yang berbentuk 3 dimensi (3 fitur) di bawah ini. Sehingga Pak Joni pun pasti susah untuk mengklasifikasikan. Namun bagi komputer, hal dibawah ini tidaklah terlalu susah, dan normal saja.

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Sayang sekali tidak ada cara untuk memvisualisasikan data dengan 4 fitur atau 20 fitur atau ribuan fitur. Paling bisa kita pahami dengan maksimal 3 fitur di atas ini. Namun ribuan fitur adalah standar apa yang machine learning lakukan hari ini di komputer-komputer facebook, amazon, google, dengan ribuan dimensional. Bisakah kalian bayangkan?

Seperti Statistika ?

Jika kalian pernah belajar tentang statistika, mungkin sejauh ini yang kalian baca adalah tentang bagian ilmu statistika. Kalian Benar kok. Teknik seperti Decision Tree maupun Support Vector Machine sudah ada di dasar ilmu Statistika untuk menentukan keputusan dari data jauh sebelum komputer ditemukan.

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Banyak pendekatan algoritma Machine Learning didasari dengan statistika. Namun ada algoritma yang tidak ditemukan dasarnya di ilmu statistika. Yang paling populer adalah Artificial Neural Network. Yang mana terinspirasi cara kerja Otak Manusia.

Neural Network

Untuk memahami Artificial Neural Network atau orang sebut JST (Jaringan Saraf Tiruan) kita perlu memahami dasar biologisnya. Secara dasar, Neuron adalah sel yang memproses dan mengirimkan pesan menggunakan sinyal elektrik dan kimia. Dia menerima input dari satu atau lebih sel lainnya, memproses sinyal tersebut dan mengirimkannya. Hal ini membentuk banyak jaringan yang saling terhubung serta dapat memproses informasi yang kompleks. Informasi seperti informasi artikel ini yang diproses otak kalian.

JST sangatlah sama secara cara kerja.

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

tiap neuron mendapatkan input, menggabungkannya, dan mengirimkan input sinyal tersebut. Namun bukan sinyal elektrik ataupun kimia, JST memasukkan angka-angka sebagai inputnya.

JST terorganisasi melalui layer yang menghubungkan antar neuron. JST sederhana tentu harus memiliki 3 layer, yaitu input layer, output layer dan hidden layer. Input layer merupakan fitur dan output layer merupakan label. Hidden layer lah yang bekerja untuk mengklasifikasikan.

Kerja hidden layer antara lain weighting, summing, biasing, dan applying activation function di tiap neuronnya, lalu diteruskan ke layer berikutnya. Hal yang penting adalah, layer pada hidden layer bisa sangatlah banyak. Inilah yang disebut dengan DEEP LEARNING

Memahami Apa itu Machine Learning dan Artificial Intelligence dengan Konsep Sederhana

Training dengan layer yg kompleks seperti ini memerlukan banyak komputasi dan data. Walaupun Neural Network telah ditemukan 50 tahun lalu, Deep Learning baru bisa praktikal beberapa tahun belakangan dengan bantuan GPU yang semakin hari semakin turun harga-nya namun kekuatan prosesnya lebih besar dan cepat.

Selengkapnya di artikel eat-fire