Kurva belajar (pemelajaran mesin)

Dalam pemelajaran mesin, suatu **kurva belajar** (atau **kurva pelatihan,** bahasa Inggris**: ''learning curve*** atau ***training curve***) adalah suatu jenis [[kurva]] yang menggambarkan nilai optimal dari [[fungsi kerugian|fungsi rugi]] suatu model untuk suatu himpunan data pelatihan dan dibandingkan dengan fungsi kerugian yang sama jika dilakukan evaluasi pada suatu himpunan data validasi dengan parameter yang sama yang menghasilkan fungsi optimal tersebut. Sinonimnya dari kurva belajar ini, meliputi kurva galat (*error curve*), kurva perkembangan (*improvement curve*), dan kurva generalisasi (*generalization curve*). 

Definisi lebih abstrak dari kurva belajar, adalah kurva dari (usaha pemelajaran atau *learning effort*)-(kinerja prediktif atau *predictive performance*), di mana biasanya usaha pemelajaran berarti jumlah sampel latih dan kinerja prediktif berarti akurasi pada sampel uji.

Kurva belajar dalam pemelajaran mesin bermanfaat untuk berbagai tujuan, termasuk membandingkan berbagai algoritma, memilih parameter model selama desain, menyesuaikan optimisasi untuk meningkatkan konvergensi, dan menentukan jumlah data yang digunakan untuk pelatihan.

== Definisi formal ==
Salah satu model pemelajaran mesin menghasilkan suatu [[Fungsi (matematika)|fungsi]], , yang memberikan beberapa informasi, , yang memprediksi suatu variabel, , dari data latih <math>X_\text{latih} </math> and <math>Y_\text{latih} </math>.Ini berbeda denganoptimisasi matematika karena <math>f </math> harus dapat melakukan prediksi dengan baik untuk <math>x</math> di luar <math>X_\text{latih}</math>.

Sering kali kita membatasi fungsi-fungsi yang mungkin menjadi keluarga fungsi *parameterized'', \{f_\theta(x): \theta \in \Theta \} , agar fungsi kita lebih dapat digeneralisasi atau agar fungsi tersebut memiliki properti tertentu, seperti properti yang membuat pencarian f  yang baik lebih mudah, atau karena kita memiliki alasan a priori untuk percaya bahwa properti-properti ini benar.

Diberikan bahwa tidak mungkin menghasilkan fungsi yang sempurna sesuai dengan data kita, maka perlu untuk menghasilkan fungsi kerugian L(f_\theta(X), Y')  untuk mengukur seberapa baik prediksi kita. Kemudian kita mendefinisikan proses optimisasi yang menemukan suatu \theta  yang meminimalkan L(f_\theta(X_, Y))  yang disebut sebagai \theta^*(X, Y)  .

### Kurva latih untuk jumlah data
Lalu jika data latih kita adalah \{x_1, x_2, \dots, x_n \}, \{ y_1, y_2, \dots y_n \}  dan data uji kita adalah \{ x_1', x_2', \dots x_m' \}, \{ y_1', y_2', \dots y_m' \}  suatu kurva belajar adalah plot dari dua kurva

# i \mapsto L(f_{\theta^*(X_i, Y_i)}(X_i), Y_i ) 
# i \mapsto L(f_{\theta^*(X_i, Y_i)}(X_i'), Y_i' ) 

di mana X_i = \{ x_1, x_2, \dots x_i \} 

### Kurva latih untuk jumlah iterasi
Banyak proses optimisasi bersifat iteratif, mengulangi langkah yang sama hingga proses tersebut konvergen ke nilai optimal. Penurunan gradien dalah salah satu algoritma tersebut. Jika Anda mendefinisikan \theta_i^* sebagai aproksimasi optimal dari \theta setelah langkah i, sebuah kurva belajar adalah plot dari

# i \mapsto L(f_{\theta_i^*(X, Y)}(X), Y) 
# i \mapsto L(f_{\theta_i^*(X, Y)}(X'), Y') 

## Memilih banyaknya data uji
Kurva belajar digunakan untuk menilai seberapa besar keuntungan yang diperoleh oleh model mesin dengan menambahkan lebih banyak data latih dan apakah estimator tersebut lebih rentan terhadap kesalahan variansi atau kesalahan bias. Jika baik skor validasi maupun skor pelatihan konvergen ke nilai yang terlalu rendah dengan peningkatan ukuran himpunan latih, model tidak akan banyak mendapat keuntungan dari penambahan data pelatihan lebih lanjut.

Dalam domain pemelajaran mesin, terdapat dua implikasi dari kurva belajar yang berbeda dalam kurva sumbu-x, dengan pengalaman model yang digambarkan baik sebagai jumlah contoh latih yang digunakan untuk pemelajaran atau jumlah iterasi yang digunakan dalam melatih model.

## Lihat juga

* Overfitting
* kompromi antara bias dan varians
* Seleksi model
* Validasi silang (statistika)
* Validitas (statistika)
* Verifikasi and validasi
* Penurunan ganda

## Referensi