Prosedur Umum Machine Learning – Part 1

machine-learning-370x229

Image source: opsrule.com

Saya minta maaf sekali karena sudah lama tidak posting di blog ini karena cukup sibuk dengan project saya. Kali ini saya akan posting dalam bahasa indonesia dan bukan teknikal. Posting kali ini lebih tentang proses atau prosedur aplikasi machine learning.

Posting kali ini didasari dari pengalaman saya membantu klien dalam perjalanan mereka mendapatkan ‘harta karun’ tersembunyi dari tumpukan data yang mereka punyai. Apa hubungannya dengan Big Data? Big data memungkinkan untuk mendapatkan ‘harta karun’ itu meskipun tumpukan harta tersebut luar biasa besar (paling tidak ratusan Giga Bytes).

Secara umum ada dua cara untuk mendapatkan insight dari data kita. Pertama dengan analisis konvensional. Hal ini baisanya melibatkan query dari data-data kita dengan menggunakan pengetahuan tentang bisnis proses yang sudah kita miliki.

Hal ini umum dilakukan akan tetapi memiliki keterbatasan. Pertama hanya terbatas untuk data yang sudah terstruktur, dalam tabel database. Kedua umumnya teknik ini susah diimplementasikan untuk data yang sangat besar. Susah dalam hal ini bisa jadi tidak mungkin atau sangat lambat jika harus menjalankan query untuk data yang sangat besar. Apalagi dengan format yang berbeda-beda. Hal ini berlaku untuk sistem yang tidak menggunakan Big Data.

Ketiga adalah teknik konvensional ini tidak bisa mendapatkan informasi di luar data yang sudah ada. Informasi yang saya maksudkan disini misalnya informasi tentang prediksi di masa depan, pengelompokkan data secara fuzzy yang tidak kaku (misalnya pengelompokkan email spam/no spam di GMail), dsb-nya.

Meskipun memiliki keterbatasan-keterbatasan tersebut teknik ini masih tetap berguna karena bisa memberikan gambaran yang lengkap dan cepat dari data yang kita punya. teknik ini masih menjadi yang paling banyak digunakan di dunia. Untuk implementasinya sudah saya sebutkan diatas menggunakan query/SQL pada database berbasis SQL yang lazim digunakan untuk menyimpan data. Atau menggunakan tools untuk melakukan query pada sistem Big Data misalnya Map Reduce, Hive, Pig, Impala, Spark dan lain-lain.

Kedua adalah teknik analisis dengan menggunakan machine learning. Seperti yang pernah saya sebutkan di posting saya sebelumnya. Machine learning untuk teknologi Big Data merupakan pencapaian tertinggi saat ini. Karena dengan machine learning kita bisa mendapatkan informasi lebih dari data yang sudah kita miliki. Dengan machine learning kita bisa membuat model yang bisa memprediksi masa depan, mengenali data yang baru/belum pernah kita tangani sebelumnya, dsb-nya. Yang kesemuanya itu pada akhirnya bisa digunakan untuk mendongkrak pemasukan. Memang hasil dari machine learning tidak bisa memprediksi 100% secara akurat tetapi meskipun, misalnya, hanya menambah 10% saja sudah cukup signifikan untuk suatu perusahaan.

Untuk implementasi teknik machine learning ini sudah saya banyak bahas di posting sebelumnya yaitu dengan menggunakan banyak library yang sudah ada seperti Spark MLLib, Flink, Scikit learn, dsb-nya. Untuk dua pilihan pertama umumnya ditujukan untuk big data sedangkan yang terakhir untuk data yang lebih kecil. Sedikit informasi. Apache Flink yang saya tuliskan dalam posting beberapa waktu lalu kini telah menjapai tingkat maturity yang cukup bagus dengan di release-nya versi 1.0. Sepertinya memang Apache Spark punya saingan yang cukup kuat.

Meskipun Scikit-learn tidak bisa menganalisis data sebesar Spark atau Flink, bukan berarti untuk Anda yang memiliki data besar, hal ini tidak bisa digunakan. Dalam dunia statistik dikenal istilah sampling. Dimana untuk mendapatkan gambaran sebuah data yang besar, kita tidak perlu menganalisis seluruh data tetapi hanya cukup mengambil sebagian data yang cukup representatif dari keseluruhan data dan menganalisa data tersebut untuk mendapatkan gambaran dari keseluruhan data. Dan banyak startup yang memilih cara ini karena bisa digunakan dengan sumber daya (orang, waktu dan uang) yang lebih sedikit.

Pada postingan berikutnya saya akan jelaskan prosedur penggunakan library machine learning ini yang baik dan benar berdasarkan pengalaman saya. So stay tuned.

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout /  Ubah )

Foto Google

You are commenting using your Google account. Logout /  Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout /  Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout /  Ubah )

Connecting to %s