Loading
Nagitec

Mengenal Machine Learning, Teknik dan Cara Kerjanya

image title

Bagaimana cara perusahaan transportasi on-demand Gojek memobilisasi orang, barang, dan uang, sehingga terjadi jutaan transaksi antara jutaan pihak, mulai dari pelanggan, pengemudi, merchant, hingga berbagai penyedia jasa lain? Semua itu dimungkinkan karena adanya sistem teknologi Machine Learning (ML).

ML membantu Gojek mempelajari banyak hal, mulai dari pola perilaku pelanggan dan mitra hingga kondisi lalu lintas yang menjadi insight baru. Data dari jutaan pesanan yang diproses setiap hari dalam platform Gojek kembali diolah untuk menjawab kebutuhan pengguna.

Tak hanya itu, sistem ML di Gojek juga diterapkan pada proses penetapan label menu GoFood yang awalnya dilakukan secara manual dengan memisahkan kategori hanya berdasarkan jenis makanan. Sekarang, sistem secara otomatis akan menyaring menu kuliner berdasarkan kategori lainnya, seperti nominal harga tertentu sampai pengelompokkan rasa manis atau asin. Sistem ini secara signifikan berpengaruh terhadap efisiensi waktu pelanggan dalam menemukan kuliner yang diinginkan, karena secara otomatis akan menampilkan menu yang dipersonalisasi sesuai preferensi dan kebiasaan setiap pelanggan. Hal ini juga berdampak positif pada mitra merchant GoFood, karena promosi atas menu baru di restorannya akan lebih tepat sasaran.

Ada dua kunci penting yang menentukan kekuatan model ML, yaitu jumlah data yang tersedia untuk dianalisis dan algoritma perhitungan untuk melakukan analisis. Semakin banyak volume data yang masuk melalui platform Gojek, memungkinkannya untuk menganalisis data yang lebih besar dan lebih kompleks sehingga bisa menghasilkan insight yang lebih akurat. Selanjutnya, algoritma perhitungan akan semakin terlatih dengan meningkatnya volume dan kompleksitas data yang masuk.

Ya, ML adalah metode analisis yang membantu menangani data besar dengan cara mengembangkan algoritma komputer. Dengan menggunakan data, pembelajaran mesin memungkinkan komputer menemukan wawasan tersembunyi tanpa diprogram secara eksplisit saat mencarinya. Dengan adanya email baru, algoritma tersebut kemudian akan menghasilkan prediksi apakah email baru itu spam atau tidak.

Sejatinya, ML adalah aplikasi artificial intelligence (AI) yang menyediakan sistem kinerja secara otomatis serta belajar memperbaiki diri dari pengalaman tanpa diprogram secara eksplisit. Pembelajaran mesin berfokus pada pengembangan program komputer yang bisa mengakses data dan menggunakannya untuk belajar sendiri.

Proses pembelajaran dimulai dengan observasi data, seperti: pengelaman langsung, atau intruksi untuk mencari pola data dan membuat keputusan yang lebih baik dimasa depan berdasarkan contoh tersebut. Tujuan utamanya adalah membiarkan komputer belajar secara otomatis tanpa intervensi atau bantuan manusia dan menyesuaikan aktivitas yang sesuai.

Aplikasi ML membutuhkan data sebagai bahan belajar (training) sebelum mengeluarkan output. Aplikasi sejenis ini juga biasanya berada dalam domain spesifik alias tidak bisa diterapkan secara general untuk semua permasalahan.

Jadi, ML adalah metode yang digunakan untuk membuat program yang bisa belajar dari data. Berbeda dengan program komputer biasa yang statis, program ML adalah program yang dirancang untuk mampu belajar sendiri.

Cara belajar program ML mengikuti cara belajar manusia, yakni belajar dari contoh-contoh. ML akan mempelajari pola dari contoh-contoh yang dianalisa, untuk menentukan jawaban dari pertanyaan-pertanyaan berikutnya.

Memang tidak semua masalah bisa dipecahkan dengan program ML. Namun, seringkali algoritma yang sifatnya kompleks, ternyata bisa dipecahkan dengan sangat simpel oleh ML. Beberapa contoh program ML yang telah digunakan dalam kehidupan sehari-hari: pendeteksi spam, pendeteksi wajah, rekomendasi produk, asisten virtual, diagnosa medis, pendeteksi penipuan kartu kredit, pengenal digit, perdagangan saham, segmentasi pelanggan, mobil yang bisa mengendarai sendiri.

Pada dasarnya ada hal empat yang dipelajari dalam ML. Pertama, Pembelajaran Terarah (Supervised Learning), yaitu algoritma ML yang dapat menerapkan informasi yang telah ada pada data dengan memberikan label tertentu, misalnya data yang telah diklasifikasikan sebelumnya (terarah). Algoritma ini mampu memberikan target terhadap output yang dilakukan dengan membandingkan pengalaman belajar di masa lalu. Kedua, Pembelajaran Tak Terarah (Unsupervised Learning), yaitu algoritma machine learning yang digunakan pada data yang tidak mempunyai informasi yang dapat diterapkan secara langsung (tidak terarah). Algoritma ini diharapkan mampu menemukan struktur tersembunyi pada data yang tidak berlabel.

Ketiga, Pembelajaran Semi Terarah (Semi-supervised Learning), yaitu algoritma yang digunakan untuk melakukan pembelajaran data berlabel dan tanpa label. Sistem yang menggunakan metode ini dapat meningkatkan efesiensi output yang dihasilkan. Keempat, Reinforcement Learning, yaitu algoritma yang mempunyai kemampuan untuk berinteraksi dengan proses belajar yang dilakukan, algoritma ini akan memberikan poin (reward) saat model yang diberikan semakin baik atau mengurangi poin (error) saat model yang dihasilkan semakin buruk. Salah satu penerapannya adalah pada mesin pencari.

Lalu, bagaimana alur atau tahapan kerja dari ML ini? Alur kerja ML mencakup: Memilih data: pisahkan data menjadi 3 bagian, yakni data yang akan dilatih (training data), data yang akan digunakan untuk validasi (validation data), dan data yang digunakan untuk percobaan prediksi (test data); Model data: gunakan training data untuk membangun model menggunakan fitur-fitur yang sesuai dengan tujuan (regresi linear, regresi logistik, neural network, dan lain-lain); Validasi model: uji model yang telah ada dengan validation data. Hal ini berguna untuk mendapatkan feedback dari input, process, dan output yang digunakan; Test model: lihat perbandingan kinerja model yang sudah divalidasi dengan test data; Gunakan test model: aplikasikan model yang sudah dilatih untuk membuat prediksi data baru; Sesuaikan model: perbaiki kinerja algoritma dengan lebih banyak data, fitur yang berbeda, dan parameter yang disesuaikan.

Sejatinya, akurasi awal dari program ML biasanya sangat buruk. Sebab pada awalnya program ini “tidak tahu apa-apa”. Namun, seiring berjalannya waktu, semakin sering kita melatih program, semakin banyak contoh-contoh yang dipelajari oleh program, maka program ini akan semakin “cerdas” dan akurat. (*dari berbagai sumber)