Lompat ke isi

Early stopping (pemelajaran mesin)

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas

Dalam pemelajaran mesin, early stopping (lit: penghentian dini) adalah salah satu bentuk regularisasi yang digunakan untuk menghindari overfitting ketika melatih model menggunakan metode iteratif, seperti penurunan gradien. Metode iteratif memperbarui model agar semakin cocok dengan data latih pada setiap iterasi. Metode ini dapat meningkatkan kinerja model pada data di luar data pelatihan (misalnya, data validasi) sampai batasan tertentu. Namun, ketika telah melampaui batasan tersebut, peningkatan kecocokan model terhadap data pelatihan akan mengorbankan kemampuan generalisasi model. Dengan menggunakan early stopping, jumlah iterasi yang dapat dijalankan sebelum model pemelajaran mulai mengalami overfitting dapat diketahui. Teknik ini juga telah digunakan dalam banyak metode pemelajaran mesin yang berbeda dengan landasan teoritis yang beragam.

Latar belakang

[sunting | sunting sumber]

Bagian ini menyajikan beberapa konsep dasar pemelajaran mesin yang diperlukan untuk memahami early stopping.

Overfitting

[sunting | sunting sumber]
Gambar 1. Garis hijau melambangkan model yang terlalu pas dan garis hitam melambangkan model yang teregulasi. Walaupun garis hijau mengikuti data pelatihan dengan sangat baik, garis ini terlalu bergantung pada data latih tersebut dan cenderung memiliki tingkat kesalahan lebih tinggi pada data baru yang tak terlihat yang diilustrasikan dengan titik-titik bergaris hitam, dibandingkan dengan garis hitam.

Algoritma pemelajaran mesin melatih model pada data pelatihan yang terbatas. Selama proses pelatihan ini, model dievaluasi berdasarkan seberapa baik model tersebut memprediksi pengamatan yang terdapat dalam set pelatihan. Namun, secara umum, tujuan pemelajaran mesin adalah untuk menghasilkan model yang digeneralisasi, yaitu memprediksi pengamatan yang belum pernah terlihat sebelumnya. Overfitting terjadi ketika suatu model memprediksi data dengan sangat baik dalam set pelatihan, sementara mengalami kesalahan generalisasi yang lebih besar.

Regularisasi

[sunting | sunting sumber]

Dalam konteks pemelajaran mesin, regularisasi merujuk pada proses memodifikasi algoritma pemelajaran untuk mencegah overfitting. Proses ini umumnya melibatkan penerapan semacam kendala kelancaran (smoothness constraint) pada model yang dipelajari.[1] Kendala ini umumnya dapat diberlakukan secara eksplisit, misalnya dengan membatasi jumlah parameter dalam model, atau dengan menambah fungsi biaya seperti dalam regularisasi Tikhonov. Regularisasi Tikhonov, bersama dengan regresi komponen utama dan banyak skema regularisasi lainnya, termasuk dalam lingkup regularisasi spektral, yaitu regularisasi yang dicirikan oleh penerapan sebuah filter. Early stopping juga termasuk dalam metode ini.

Metode penurunan gradien (gradient descent)

[sunting | sunting sumber]

Metode penurunan gradien merupakan metode optimasi orde pertama yang bersifat iteratif. Setiap iterasi memperbarui solusi perkiraan dari masalah optimasi dengan mengambil langkah ke arah negatif gradien dari fungsi objektif. Dengan memilih ukuran langkah (step size) yang tepat, metode ini dapat dibuat konvergen ke minimum lokal dari fungsi objektif. Dalam pemelajaran mesin, penurunan gradien digunakan dengan mendefinisikan fungsi kerugian (loss function) yang mencerminkan kesalahan model pada data pelatihan, lalu meminimalkan fungsi tersebut.

Early stopping berdasarkan hasil analisis

[sunting | sunting sumber]

Early stopping dalam teori pembelajaran statistik

[sunting | sunting sumber]

Early stopping dapat digunakan sebagai teknik regularisasi dalam masalah regresi non-parametrik yang sering ditemui dalam pemelajaran mesin. Untuk ruang masukan tertentu, , ruang keluaran, , dan sampel yang diambil dari suatu distribusi probabilitas yang tidak diketahui, , pada , tujuan dari permasalahan ini adalah untuk memperkirakan fungsi regresi, , yang diberikan oleh

Dengan adalah distribusi kondisional pada yang diinduksi oleh [2] Salah satu pendekatan umum untuk memperkirakan fungsi regresi adalah menggunakan fungsi dari <i>ruang Hilbert kernel reproducing</i>.[2] Ruang ini dapat berdimensi takhingga sehingga mampu menghasilkan solusi yang overfit pada himpunan data pelatihan dengan ukuran berapapun. Oleh karena itu, regularisasi menjadi sangat penting dalam metode ini. Salah satu cara untuk melakukan regularisasi pada masalah regresi nonparametrik adalah dengan menerapkan early stopping yang lebih awal pada metode iteratif, seperti penurunan gradien.

Aturan early stopping yang diusulkan untuk masalah seperti ini didasarkan pada analisis batas atas kesalahan generalisasi yang bergantung pada jumlah iterasi. Aturan ini memberikan rekomendasi tentang seberapa banyak iterasi yang harus dijalankan, yan dapat dihitung sebelum proses penyelesaian dimulai.[3][4]

Contoh: Kerugian kuadrat terkecil

[sunting | sunting sumber]

(Diadaptasi dari Yao, Rosasco dan Caponnetto, 2007[3])

Misal dan Diberikan satu himpunan sampel

diambil secara independen dari , meminimalkan fungsi berikut.

dengan adalah anggota ruang Hilbert kernel reproduksi . Artinya, meminimalkan risiko ekspektasi untuk fungsi kerugian kuadrat terkecil. Karena bergantung pada ukuran probabilitas yang tidak diketahui , maka tidak dapat digunakan dalam perhitungan. Seagai gantinya, pertimbangkan resiko empiris berikut.

Misal, dan adalah iterasi ke- t dari metode penurunan gradien yang diterapkan pada risiko ekspektasi dan resiko empiris yang keduanya diinisialisasi di titik asal, dan menggunakan ukuran langkah . Iterasi lalu membentuk iterasi populasi yang konvergen ke , tetapi tidak dapat digunakan dalam perhitungan, sementara membentuk iterasi sampel yang biasanya konvergen ke solusi overfitting.

Kita ingin mengontrol selisih antara risiko ekspektasi dari iterasi sampel dan risiko ekspektasi minimum, yaitu risiko ekspektasi dari fungsi regresi:

Selisih ini dapat ditulis ulang sebagai jumlah dari dua suku: selisih risiko ekspektasi antara iterasi sampel dan iterasi populasi, serta antara iterasi populasi dan fungsi regresi:

Persamaan ini menggambarkan tradeoff bias-varians, yang kemudian diselesaikan untuk memberikan aturan penghentian optimal yang mungkin bergantung pada distribusi probabilitas yang tidak diketahui. Aturan tersebut memiliki batas probabilistik terkait dengan kesalahan generalisasi. Untuk analisis yang mengarah pada aturan penghentian dini (early stopping) dan batas-batasnya, pembaca dapat merujuk ke artikel asli.[3] Dalam praktiknya, metode berbasis data, misalnya validasi silang (cross-validation) dapat digunakan untuk memperoleh aturan penghentian adaptif.

Early stopping dalam boosting

[sunting | sunting sumber]

Boosting mengacu pada keluarga algoritma yang terdiri atas sejumlah weak learner atau pembelajar lemah (yang hanya sedikit berkorelasi dengan proses atau distribusi yang mendasari data) dan digabungkan untuk menghasilkan strong learner (pembelajar yang lebih kuat). Telah dibuktikan, untuk beberapa algoritma boosting (termasuk AdaBoost ), bahwa regularisasi melalui early stopping dapat memberikan jaminan konsistensi, yaitu bahwa hasil algoritma menghampiri solusi sebenarnya ketika jumlah sampel mendekati tak terhingga.[5][6][7][8]

L 2-boosting

[sunting | sunting sumber]

Metode boosting memiliki hubungan erat dengan metode gradient descent yang dijelaskan di atas dapat dianggap sebagai metode boosting berdasarkan kerugian =: Boosting L 2. [3]

Early boosting berbasis validasi

[sunting | sunting sumber]

Aturan early stopping ini bekerja dengan membagi set pelatihan asli menjadi satu data pelatihan baru dan satu data validasi. Kesalahan pada data validasi digunakan sebagai proksi untuk kesalahan generalisasi dalam menentukan kapan overfitting telah dimulai. Metode ini digunakan dalam pelatihan banyak algoritma pemelajaran mesin berbasis iteratif, termasuk jaringan saraf (berbasis epoch). Prechelt memberikan ringkasan berikut ini mengenai implementasi naif dari early stopping berbasis holdout sebagai berikut:[9]

  1. Pisahkan data pelatihan menjadi dua bagian: satu bagian untuk set pelatihan dan satu bagian untuk set validasi, misalnya dengan rasio 2:1.
  2. Latih model hanya menggunakan data pada set pelatihan dan evaluasi pada data validasi, misalkan, seperti setelah setiap 5 epoch.
  3. Hentikan proses pelatihan ketika galat pada data validasi lebih besar daripada saat terakhir kali diperiksa.
  4. Gunakan bobot pada jaringan sebelumnya sebagai hasil dari pelatihan tersebut.
    — Lutz Prechelt, Early Stopping – But When?

Validasi silang adalah alternatif yang dapat digunakan untuk masalah non-deret waktu. Validasi silang terdiri atas pemisahan data menjadi beberapa partisi yang masing-masing dibagi menjadi data pelatihan dan data validasi–alih-alih partisi tunggal yang hanya terdiri dari satu data pelatihan dan satu data validasi. Meskipun prosedur ini terlihat sederhana, dalam praktiknya menjadi lebih rumit karena kesalahan validasi bisa berfluktuasi selama pelatihan, yang menghasilkan beberapa titik minimum lokal. Komplikasi ini telah mendorong terciptanya berbagai aturan ad hoc untuk memutuskan kapan overfitting benar-benar dimulai.[9]

Lihat juga

[sunting | sunting sumber]

Referensi

[sunting | sunting sumber]
  1. ^ Girosi, Federico; Michael Jones; Tomaso Poggio (1995-03-01). "Regularization Theory and Neural Networks Architectures". Neural Computation. 7 (2): 219–269. doi:10.1162/neco.1995.7.2.219. ISSN 0899-7667. 
  2. ^ a b Smale, Steve; Ding-Xuan Zhou (2007-08-01). "Learning Theory Estimates via Integral Operators and Their Approximations". Constructive Approximation. 26 (2): 153–172. doi:10.1007/s00365-006-0659-y. ISSN 0176-4276. 
  3. ^ a b c d Yao, Yuan; Lorenzo Rosasco; Andrea Caponnetto (2007-08-01). "On Early Stopping in Gradient Descent Learning". Constructive Approximation. 26 (2): 289–315. doi:10.1007/s00365-006-0663-2. ISSN 0176-4276. 
  4. ^ Raskutti, G.; M.J. Wainwright; Bin Yu (2011). "Early stopping for non-parametric regression: An optimal data-dependent stopping rule". 2011 49th Annual Allerton Conference on Communication, Control, and Computing (Allerton). 2011 49th Annual Allerton Conference on Communication, Control, and Computing (Allerton). pp. 1318–1325. doi:10.1109/Allerton.2011.6120320.
  5. ^ Wenxin Jiang (February 2004). "Process consistency for AdaBoost". The Annals of Statistics. 32 (1): 13–29. doi:10.1214/aos/1079120128. ISSN 0090-5364. 
  6. ^ Bühlmann, Peter; Bin Yu (2003-06-01). "Boosting with the L₂ Loss: Regression and Classification". Journal of the American Statistical Association. 98 (462): 324–339. doi:10.1198/016214503000125. ISSN 0162-1459. JSTOR 30045243. 
  7. ^ Tong Zhang; Bin Yu (2005-08-01). "Boosting with Early Stopping: Convergence and Consistency". The Annals of Statistics. 33 (4): 1538–1579. arXiv:math/0508276alt=Dapat diakses gratis. Bibcode:2005math......8276Z. doi:10.1214/009053605000000255. ISSN 0090-5364. JSTOR 3448617. 
  8. ^ Stankewitz, Bernhard (2024-04-01). "Early stopping for L2-boosting in high-dimensional linear models". The Annals of Statistics. 52 (2): 491–518. arXiv:2210.07850alt=Dapat diakses gratis. doi:10.1214/24-AOS2356. 
  9. ^ a b Prechelt, Lutz; Geneviève B. Orr (2012-01-01). "Early Stopping — But When?". Dalam Grégoire Montavon; Klaus-Robert Müller. Neural Networks: Tricks of the TradeAkses gratis dibatasi (uji coba), biasanya perlu berlangganan. Lecture Notes in Computer Science. Springer Berlin Heidelberg. hlm. 53–67. doi:10.1007/978-3-642-35289-8_5. ISBN 978-3-642-35289-8.