Untuk memahami masalahnya, lakukan tugas berikut:
- Nyatakan sasaran untuk produk yang Anda kembangkan atau faktorkan ulang.
- Tentukan apakah sasaran tersebut paling baik dipecahkan menggunakan ML prediktif, AI generatif, atau solusi non-ML.
- Verifikasi bahwa Anda memiliki data yang diperlukan untuk melatih model jika Anda menggunakan pendekatan ML prediktif.
Nyatakan sasaran
Mulai dengan menyatakan sasaran Anda dalam istilah non-ML. Tujuan adalah jawaban atas pertanyaan, "Apa yang saya coba capai?"
Tabel berikut menyatakan sasaran dengan jelas untuk aplikasi hipotetis:
Aplikasi | Sasaran |
---|---|
Aplikasi Cuaca | Menghitung presipitasi dalam penambahan enam jam untuk wilayah geografis. |
Aplikasi mode | Membuat berbagai desain kemeja. |
Aplikasi video | Merekomendasikan video yang berguna. |
Aplikasi email | Mendeteksi spam. |
Aplikasi keuangan | Meringkas informasi keuangan dari beberapa sumber berita. |
Aplikasi peta | Hitung waktu perjalanan. |
Aplikasi perbankan | Mengidentifikasi transaksi penipuan. |
Aplikasi makan | Mengidentifikasi masakan berdasarkan menu restoran. |
Aplikasi E-commerce | Balas ulasan dengan jawaban yang bermanfaat. |
Kasus penggunaan yang jelas untuk ML
Beberapa orang melihat ML sebagai alat universal yang dapat diterapkan untuk semua masalah. Pada kenyataannya, ML adalah alat khusus yang hanya cocok untuk masalah tertentu. Anda tidak ingin menerapkan solusi ML yang kompleks ketika solusi non-ML yang lebih sederhana akan berfungsi.
Sistem ML dapat dibagi menjadi dua kategori besar: ML prediktif dan AI generatif. Tabel berikut mencantumkan karakteristik penentunya:
Input | Output | Teknik pelatihan | |
---|---|---|---|
ML Prediktif |
Kirim pesan teks Gambar Audio Video Numerik |
Membuat prediksi, misalnya, mengklasifikasikan suatu email sebagai spam atau bukan spam, menebak curah hujan besok, atau memprediksi harga saham. Output biasanya dapat diverifikasi dengan kenyataan. | Biasanya menggunakan banyak data untuk melatih model unsupervised, atau reinforcement learning untuk melakukan tugas tertentu. |
AI Generatif |
Teks Gambar Audio Video Numerik |
Menghasilkan output berdasarkan intent pengguna, misalnya, meringkas artikel, atau membuat klip audio atau video singkat. | Biasanya menggunakan banyak data tidak berlabel untuk melatih model bahasa besar atau generator gambar untuk mengisi data yang tidak ada. Model ini kemudian dapat digunakan untuk tugas yang dapat dibingkai sebagai tugas mengisi kekosongan, atau dapat disesuaikan dengan melatihnya pada data berlabel untuk beberapa tugas tertentu, seperti Klasifikasi kalimat tunggal, |
Untuk mengonfirmasi bahwa ML adalah pendekatan yang tepat, verifikasi terlebih dahulu bahwa solusi non-ML saat ini dioptimalkan. Jika Anda tidak menerapkan solusi non-ML, coba selesaikan masalah secara manual menggunakan heuristik.
Solusi non-ML adalah tolok ukur yang akan Anda gunakan untuk menentukan apakah ML adalah kasus penggunaan yang baik untuk masalah Anda. Pertimbangkan pertanyaan-pertanyaan berikut saat membandingkan pendekatan non-ML ke ML:
Kualitas. Seberapa baik menurut Anda solusi ML? Jika Anda berpikir bahwa solusi ML mungkin hanya perbaikan kecil, yang mungkin menunjukkan solusi saat ini adalah yang terbaik.
Biaya dan pemeliharaan. Seberapa mahal solusi ML pada jangka pendek dan jangka panjang? Dalam beberapa kasus, biayanya jauh lebih mahal dalam hal resource komputasi dan waktu untuk menerapkan ML. Pertimbangkan pertanyaan berikut:
- Dapatkah solusi ML ini menjustifikasi kenaikan biaya? Perhatikan bahwa kecil peningkatan dalam sistem yang besar dapat dengan mudah memperhitungkan biaya dan pemeliharaan penerapan solusi ML.
- Berapa banyak pemeliharaan yang diperlukan solusi ini? Dalam banyak kasus, penerapan ML memerlukan pemeliharaan jangka panjang khusus.
- Apakah produk Anda memiliki sumber daya untuk mendukung pelatihan atau perekrutan orang dengan keahlian ML?
Memeriksa Pemahaman Anda
ML dan data prediktif
Data adalah pendorong ML prediktif. Untuk kebaikan prediksi, Anda memerlukan data berisi fitur dengan fitur daya. Data Anda harus memiliki karakteristik berikut:
Berlimpah. Contoh yang lebih relevan dan berguna dalam dataset, semakin baik model Anda.
Konsisten dan andal. Memiliki data yang dikumpulkan secara konsisten dan andal akan menghasilkan model yang lebih baik. Misalnya, model cuaca berbasis ML akan mendapatkan manfaat dari data yang dikumpulkan selama bertahun-tahun dari instrumen yang andal dan sama.
Tepercaya. Pahami dari mana data Anda akan berasal. Apakah data akan berasal dari sumber tepercaya yang Anda kontrol, seperti log dari produk Anda, atau akankah data tersebut berasal dari sumber yang tidak banyak Anda ketahui, seperti output dari sistem ML lain?
Tersedia. Pastikan semua input tersedia pada waktu prediksi di format yang benar. Jika akan sulit untuk mendapatkan nilai fitur tertentu pada waktu prediksi, hapus fitur tersebut dari set data Anda.
Benar. Dalam {i>dataset<i} besar, tidak terelakkan bahwa beberapa label akan memiliki nilai yang salah, tetapi jika ada sebagian kecil label yang salah, model akan menghasilkan prediksi yang buruk.
Representatif. {i>Dataset-dataset <i}tersebut harus mewakili seluas mungkin. Dengan kata lain, {i>dataset<i} harus secara akurat mencerminkan peristiwa, perilaku pengguna, dan/atau fenomena yang terjadi di dunia nyata sesuai model. Melatih pada {i>dataset<i} yang tidak representatif dapat menyebabkan kinerja yang buruk saat model diminta membuat prediksi di dunia nyata.
Jika Anda tidak bisa mendapatkan data yang dibutuhkan dalam format yang diperlukan, model Anda akan prediksi yang buruk.
Daya prediktif
Agar model dapat membuat prediksi yang baik, fitur dalam set data Anda harus memiliki kemampuan prediktif. Semakin besar korelasi antara fitur dengan label, semakin besar adalah untuk memprediksinya.
Beberapa fitur akan memiliki kemampuan prediktif yang lebih baik daripada yang lain. Misalnya, dalam set data cuaca, fitur seperti cloud_coverage
, temperature
, dan dew_point
akan menjadi prediktor hujan yang lebih baik daripada moon_phase
atau day_of_week
. Untuk contoh aplikasi video, Anda dapat berhipotesis bahwa fitur
seperti video_description
, length
, dan views
mungkin merupakan prediktor yang baik untuk
video mana yang ingin ditonton pengguna.
Perhatikan bahwa kemampuan prediktif fitur dapat berubah karena konteks atau
domain berubah. Misalnya, di aplikasi video, fitur seperti upload_date
mungkin—secara umum—berkorelasi lemah dengan label. Namun, di
sub-domain video game, upload_date
mungkin sangat berkorelasi dengan
label.
Menentukan fitur mana yang memiliki kemampuan prediktif dapat menjadi proses yang memakan waktu. Anda dapat mempelajari keunggulan prediksi fitur secara manual dengan menghapus dan menambahkannya saat melatih model. Anda dapat mengotomatiskan pencarian metode kekuatan prediktif dengan menggunakan algoritma seperti Korelasi Pearson, Informasi bersama (AMI) yang disesuaikan, dan Nilai Shapley, yang memberikan penilaian numerik untuk menganalisis kekuatan prediksi suatu feature.
Memeriksa Pemahaman Anda
Untuk panduan selengkapnya tentang cara menganalisis dan menyiapkan set data, lihat Persiapan Data dan Rekayasa Fitur untuk Machine Learning.
Prediksi vs. tindakan
Tidak ada nilai dalam memprediksi sesuatu jika Anda tidak dapat mengubah prediksi menjadi tindakan yang membantu pengguna. Artinya, produk Anda harus mengambil tindakan dari output model.
Misalnya, model yang memprediksi apakah suatu video akan berguna bagi pengguna harus feed ke dalam aplikasi yang merekomendasikan video yang berguna. Model yang memprediksi apakah akan turun hujan harus dimasukkan ke dalam aplikasi cuaca.
Memeriksa Pemahaman Anda
Berdasarkan skenario berikut, tentukan apakah penggunaan ML adalah pendekatan terbaik untuk masalah tersebut.
Tim engineer di organisasi besar bertanggung jawab untuk mengelola panggilan telepon masuk.
Sasaran: Untuk memberi tahu pemanggil berapa lama mereka akan menunggu dalam mode tunggu mengingat volume panggilan saat ini.
Mereka tidak memiliki solusi apa pun, tetapi mereka berpikir heuristik akan adalah membagi arus jumlah pelanggan yang ditahan dengan jumlah karyawan yang menjawab telepon, kemudian dikalikan 10 menit. Namun, mereka tahu bahwa beberapa pelanggan telah menyelesaikan masalah dalam dua menit, sementara yang lain dapat memerlukan waktu hingga 45 menit atau lebih.
Heuristik mereka mungkin tidak akan mendapatkan angka yang cukup akurat. Mereka
dapat membuat set data dengan kolom berikut:
number_of_callcenter_phones
, user_issue
,
time_to_resolve
, call_time
,
time_on_hold
.
time_on_hold
.