- Menjelaskan secara visual proses komputer menggunakan teknik statistical learning untuk secara otomatis mengidentifikasi pola dalam data dan membuat prediksi
- Memvisualisasikan langkah demi langkah proses membangun model yang membedakan rumah di New York dan San Francisco dengan memanfaatkan dataset perumahan
- Dengan berfokus pada decision tree, materi ini menunjukkan secara konkret proses pembelajaran dan prediksi melalui konsep seperti split point, branch, dan leaf node
- Dalam proses meningkatkan akurasi model, materi ini juga menampilkan secara visual masalah overfitting serta menjelaskan perbedaan antara training data dan test data
- Ini adalah materi pembelajaran visual interaktif yang dirancang agar konsep inti machine learning dapat dipahami secara intuitif
Konsep dasar machine learning
- Machine learning adalah teknologi yang memungkinkan komputer menerapkan teknik statistical learning untuk secara otomatis mengidentifikasi pola dalam data dan, berdasarkan itu, melakukan prediksi yang akurat
- Sebagai contoh, dibangun model untuk mengklasifikasikan rumah di New York dan San Francisco menggunakan data perumahan
- Tugas klasifikasi semacam ini dalam machine learning disebut masalah classification
Pembedaan intuitif dan feature
- San Francisco memiliki banyak perbukitan sehingga elevasinya tinggi
- Karena itu, elevation rumah dapat menjadi kriteria yang berguna untuk membedakan dua kota tersebut
- Misalnya, jika elevasi di atas 240 kaki, rumah dapat diklasifikasikan sebagai San Francisco
- Jika ditambahkan price per square foot, pembedaan bisa menjadi lebih rinci
- Jika elevasi 240 kaki atau kurang dan harga per kaki persegi $1776 atau lebih, rumah diklasifikasikan sebagai New York
- Setiap dimensi data disebut feature, predictor, atau variable
Boundary dan pembelajaran model
- Boundary dapat divisualisasikan pada scatterplot berdasarkan elevasi dan harga
- Mengidentifikasi boundary data secara matematis adalah inti dari statistical learning
- Dataset aktual memiliki 7 dimensi, dan berdasarkan itu model dilatih (training)
- Hubungan antarvariabel dieksplorasi secara visual melalui scatterplot matrix
Cara kerja Decision Tree
- Machine learning memanfaatkan statistical learning untuk menemukan pola dalam data, dan salah satu metodenya adalah decision tree
- Decision tree membagi data dengan menerapkan aturan if-then berdasarkan satu variabel pada satu waktu
- Contoh: menerapkan aturan “jika elevasi berada di atas nilai tertentu, maka San Francisco”
- Titik percabangan seperti ini disebut split point dan membentuk setiap branch pada tree
Akurasi pemisahan dan trade-off
- Pemisahan awal (misalnya berdasarkan 240 kaki) salah mengklasifikasikan sebagian rumah San Francisco (false negatives)
- Sebaliknya, jika ingin memasukkan semua rumah San Francisco, rumah New York juga ikut masuk (false positives)
- Best split adalah pemisahan yang membuat data pada setiap branch semaksimal mungkin homogeneous
- Metode untuk menghitungnya antara lain Gini index dan cross entropy
Recursion dan pertumbuhan tree
- Algoritme mengulangi proses ini untuk setiap subset data dan memperluas tree secara recursive
- Pada elevasi rendah, harga per kaki persegi dipilih sebagai variabel pemisahan berikutnya, sedangkan pada elevasi tinggi, harga total dipilih
- Semakin banyak pemisahan diulang, semakin tinggi prediction accuracy tree
- Menambahkan satu tahap meningkatkan akurasi menjadi 84%, dan beberapa tahap dapat meningkatkannya hingga 96%
- Jika semua percabangan ditambahkan, akurasi 100% dapat dicapai
- Titik percabangan akhir adalah leaf node, dan setiap node mengklasifikasikan rumah berdasarkan kelas mayoritas
Prediksi dan validasi
- Decision tree yang telah dilatih memprediksi kota dengan mengikuti percabangan tree untuk setiap titik data
- Data yang digunakan untuk pelatihan dibedakan sebagai training data, sedangkan data baru disebut test data
- Model bisa bekerja sempurna pada training data, tetapi performanya dapat menurun pada data baru
- Hal ini terjadi karena overfitting, yaitu ketika model mempelajari detail yang tidak perlu
Ringkasan dan langkah berikutnya
- Machine learning melakukan prediksi dengan menemukan boundary data dan mengidentifikasi pola
- Decision tree adalah metode representatif untuk mengklasifikasikan data melalui aturan if-then
- Overfitting adalah fenomena ketika model mempelajari pemisahan yang tidak bermakna sehingga kemampuan generalisasinya menurun
- Tulisan berikutnya akan membahas hubungan antara overfitting dan bias/variance tradeoff
1 komentar
Komentar Hacker News
Saya adalah salah satu pembuat R2D3. Senang sekali melihat tulisan ini lagi hari ini. Saya terbuka untuk pertanyaan di sini atau di Bluesky
Ini benar-benar sebuah mahakarya. Setiap kali memperkenalkan machine learning, saya memakai penjelasan interaktif ini. Ada kumpulan materi serupa di sini
Saya pernah menyebut daftar resource pembelajaran S-TIER yang saya buat.
S-TIER berarti konten dengan kombinasi sempurna antara animasi, visualisasi, dan elemen interaktif.
A-TIER tetap informatif tetapi kurang visual, dan blog yang berfokus pada opini saya tempatkan paling bawah.
Situs S-TIER pilihan saya adalah:
growingswe.com/blog, ciechanow.ski/archives, mlu-explain.github.io, seeing-theory.brown.edu, svg-tutorial.com, lumafield.com/scan-of-the-month/health-wearables
Berdasarkan kriteria ini, saya ingin membuat bookmark manager yang secara otomatis mengklasifikasikan semua tautan blog di HN
Dua proyek lama buatan saya yang paling saya sukai adalah Fill in the Blank dan Grokking
Disimpan ke bookmark. Sebagian besar tulisan penjelasan LLM kekurangan referensi visual seperti ini.
Biasanya isinya entah makalah 10 ribu kata, atau sekadar ringkasan satu baris seperti tweet, jadi tidak ada tahap perantaranya
Ini adalah karya dari 2015. Baik secara teknis maupun konseptual, ini adalah karya yang melampaui zamannya
Sangat keren. Ini adalah bidang menarik di persimpangan visualisasi data dan AI/ML.
Tempat yang layak dijadikan referensi antara lain mlu-explain.github.io, visxai.io, explorables dari Google PAIR, dan poloclub dari GA Tech
Saya berharap ada lebih banyak tulisan seperti ini. Saya suka belajar secara visual.
Ini mengingatkan saya pada tulisan Build Your Own React. Tidak terkait langsung, tetapi blog itu mudah diikuti dengan gaya yang serupa. Tulisan dengan format seperti ini sangat efisien untuk belajar
Ini adalah penjelasan decision tree terbaik yang pernah saya lihat sejauh ini.
Animasi yang memperlihatkan proses pemisahan saat kita scroll terasa jauh lebih intuitif daripada penjelasan panjang di buku teks
Penjelasan interaktif seperti ini masih merupakan contoh terbaik untuk membuat konsep ML terasa intuitif.
Pendekatan seperti ini jauh lebih efektif daripada tulisan teknis yang langsung dimulai dari rumus
Saya penasaran apakah ada materi yang menjelaskan konsep tingkat tinggi seperti mekanisme attention pada Transformer dengan gaya R2D3