Tugas 5
Model Linear
- Binary Classification
Binary classification adalah mengklasifikasikan data menjadi dua kelas (binary). Contoh model linear sederhana untuk binary classification diberikan
pada persamaan 5.6. Perhatikan, pada persamaan 5.6, suatu data direpresentasikan sebagai feature vector x, dan terdapat bias2
b. Klasifikasi dilakukan
dengan melewatkan data pada fungsi yang memiliki parameter. Fungsi tersebut menghitung bobot setiap fitur pada vektor dengan mengalikannya dengan parameter (dot product). Persamaan 5.6 dapat ditulis kembali sebagai
persamaan 5.7, dimana xi merupakan elemen ke-i dari vektor x. Fungsi ini
memiliki range [−∞, ∞]. Pada saat ini, kamu mungkin bingung. Bagaimana
mungkin fungsi regresi yang menghasilkan nilai kontinu digunakan untuk
klasifikasi kelas kategorial. Kita dapat menggunakan thresholding, atau dengan memberikan batas nilai tertentu. Misal, bila f(x) > threshold maka dimasukkan ke kelas pertama; dan sebaliknya f(x) ≤ threshold dimasukkan
ke kelas kedua. Threshold menjadi bidang pembatas antara kelas satu dan
kelas kedua (decision boundary, Gambar 5.3). Pada umumnya, teknik threshold diterapkan dengan menggunakan fungsi sign (sgn, Gambar 5.4) untuk
merubah nilai fungsi menjadi [−1, 1] sebagai output (persamaan 5.8); dimana
−1 merepresentasikan input dikategorikan ke kelas pertama dan nilai 1 merepresentasikan input dikategorikan ke kelas kedua.
- Overfitting dan Underfitting
Tujuan machine learning adalah membuat model yang mampu memprediksi
data yang belum pernah dilihat (unseen instances) dengan tepat; disebut
sebagai generalisasi (generalization). Seperti yang sudah dijelaskan pada bab
pertama, kita dapat membagi dataset menjadi training, development, dan testing dataset. Ketiga dataset ini berasal dari populasi yang sama dan dihasilkan
oleh distribusi yang sama (identically and independently distributed). Dalam
artian, ketiga jenis dataset mampu melambangkan (merepresentasikan) karakteristik yang sama8
. Dengan demikian, kita ingin loss atau error pada training, development, dan testing bernilai kurang lebih bernilai sama (i.e., kinerja
yang sama untuk data dengan karakteristik yang sama). Akan tetapi, underfitting dan overfitting mungkin terjadi.
Underfitting adalah keadaan ketika kinerja model bernilai buruk baik pada
training atau development maupun testing data. Overfitting adalah keadaan
ketika kinerja model bernilai baik untuk training tetapi buruk pada unseen
data. Hal ini diilustrasikan pada Gambar 5.14. Underfitting terjadi akibat
model yang terlalu tidak fleksibel, yaitu memiliki kemampuan yang rendah untuk mengestimasi variasi fungsi. Sedangkan, overfitting terjadi ketika
model terlalu fleksibel, yaitu memiliki kemampuan yang terlalu tinggi untuk
mengestimasi banyak fungsi atau terlalu mencocokkan diri terhadap training data. Perhatikan kembali Gambar 5.14, dataset asli diambil (sampled)
dari fungsi polinomial orde-3. Model underfitting hanya mampu mengestimasi dalam orde-1 (kemampuan terlalu rendah), sedangkan model overfitting
mampu mengestimasi sampai orde-9 (kemampuan terlalu tinggi).
Komentar
Posting Komentar