Unit sebelumnya memperkenalkan model berikut, yang banyak melakukan kesalahan kategori
pohon di set pengujian:
Model sebelumnya berisi banyak bentuk yang kompleks. Apakah cara yang lebih sederhana
model ini menangani data baru dengan lebih baik? Misalkan Anda mengganti model yang kompleks dengan
model yang sangat sederhana--garis lurus.
Model sederhana dapat melakukan generalisasi dengan lebih baik daripada model yang kompleks pada data baru. Yaitu,
model sederhana membuat prediksi yang lebih baik
pada set pengujian daripada model yang kompleks.
Kesederhanaan telah lama mengalahkan kerumitan. Bahkan,
preferensi untuk kesederhanaan berasal
dari Yunani kuno. Berabad-abad kemudian,
seorang friar abad keempat belas bernama William dari Occam meresmikan preferensi
kesederhanaan dalam filosofi yang dikenal sebagai Occam's
pisau cukur. Filosofi ini
tetap menjadi prinsip dasar yang penting bagi banyak ilmu, termasuk
machine learning tertentu.
Latihan: Menguji pemahaman Anda
Anda sedang mengembangkan persamaan fisika. Manakah di antara rumus berikut
lebih dekat dengan Pisau Cukur Occam?
Formula dengan tiga variabel.
Tiga variabel lebih cocok untuk Occam daripada dua belas variabel.
Formula dengan dua belas variabel.
Dua belas variabel tampaknya terlalu rumit, bukan?
Dua rumus fisika paling terkenal sepanjang masa (F=ma dan
E=mc2) masing-masing hanya melibatkan tiga variabel.
Anda berada di project machine learning baru, dan akan memilih
fitur pertama. Berapa banyak fitur yang sebaiknya Anda pilih?
Pilih 1–3 fitur yang tampaknya memiliki kemampuan prediksi yang kuat.
Sebaiknya pipeline pengumpulan data Anda memulai dengan hanya satu atau
dua fitur. Hal ini akan membantu Anda mengonfirmasi bahwa model ML berfungsi sebagaimana mestinya.
Juga, ketika Anda membangun
{i>baseline<i} dari beberapa fitur,
Anda akan merasa membuat kemajuan!
Pilih 4–6 fitur yang tampaknya memiliki kemampuan prediksi yang kuat.
Anda mungkin akhirnya menggunakan
banyak fitur ini, tetapi akan lebih baik untuk
mulailah dengan lebih sedikit. Lebih sedikit fitur biasanya berarti lebih sedikit hal yang tidak diperlukan
widget tampilan jam.
Pilih fitur sebanyak mungkin, agar Anda dapat mulai mengamati fitur
fitur memiliki kemampuan prediksi terkuat.
Mulai dengan yang lebih kecil. Setiap fitur baru menambahkan dimensi baru ke pelatihan Anda
{i>dataset<i} aslinya. Saat dimensialitas meningkat, volume ruang
meningkat begitu cepat sehingga data pelatihan
yang tersedia menjadi renggang. Tujuan
semakin jarang data Anda, maka semakin sulit bagi model untuk mempelajari hubungan
antara fitur yang benar-benar penting dan label. Fenomena ini
disebut "kutukan dimensi".
Regularisasi
Model machine learning harus secara bersamaan memenuhi dua tujuan yang bertentangan:
Paskan data dengan baik.
Menyesuaikan data sesederhana mungkin.
Salah satu pendekatan untuk menjaga agar model tetap sederhana
adalah dengan menghukum model yang kompleks; yaitu,
untuk memaksa model menjadi lebih sederhana selama pelatihan. Kompleks penghukuman
adalah salah satu bentuk regularisasi.
Kehilangan dan kompleksitas
Sejauh ini, materi ini telah menyarankan bahwa satu-satunya tujuan
ketika pelatihan adalah untuk
meminimalkan kerugian; yaitu:
$$\text{minimize(loss)}$$
Seperti yang Anda lihat, model yang hanya berfokus untuk meminimalkan kerugian cenderung overfit.
Algoritma pengoptimalan pelatihan yang lebih baik
meminimalkan beberapa kombinasi
kerugian dan kompleksitas:
$$\text{minimize(loss + complexity)}$$
Sayangnya, kerugian dan kompleksitas biasanya berbanding terbalik. Sebagai
kompleksitas meningkat, kerugian menurun. Ketika kompleksitas menurun, kerugian akan meningkat.
Anda harus menemukan jalan tengah yang
wajar di mana model itu bagus
prediksi pada data pelatihan dan data di dunia nyata.
Dengan begitu, model Anda harus menemukan
kompromi yang wajar
antara kerugian dan kompleksitas.
Apakah kompleksitas itu?
Anda telah melihat beberapa cara berbeda untuk mengukur kerugian. Bagaimana
Anda mengukur kompleksitas? Mulai eksplorasi Anda melalui latihan berikut:
Latihan: Periksa intuisi Anda
Sejauh ini, kita kurang memahami apa yang dimaksud dengan kompleksitas
alamat IP internalnya. Manakah di antara ide-ide berikut ini yang menurut Anda masuk akal
metrik kompleksitas ini?
Kompleksitas adalah fungsi dari bobot model.
Ya, ini adalah salah satu cara untuk mengukur beberapa model kompleksitas performa yang signifikan.
Metrik ini disebut
Regularisasi L1.
Kompleksitas adalah fungsi dari kuadrat bobot model.
Ya, Anda dapat mengukur beberapa model kompleksitasnya dengan
cara seperti ini. Metrik ini
disebut
Regularisasi L2.
Kompleksitas adalah fungsi dari bias semua fitur dalam
model transformer.