Mengapa menggunakan regularisasi dalam regresi polinomial daripada menurunkan derajat?

32

Ketika melakukan regresi, misalnya, dua parameter hiper untuk memilih seringkali adalah kapasitas fungsi (mis. Eksponen terbesar polinomial), dan jumlah regularisasi. Yang saya bingung, mengapa tidak hanya memilih fungsi kapasitas rendah, dan kemudian mengabaikan regularisasi? Dengan begitu, itu tidak akan overfit. Jika saya memiliki fungsi kapasitas tinggi bersama dengan regularisasi, bukankah itu sama dengan memiliki fungsi kapasitas rendah dan tidak ada regularisasi?

Karnivaurus
sumber

Jawaban:

49

Baru-baru ini saya membuat sedikit di aplikasi browser yang dapat Anda gunakan untuk bermain dengan ide-ide ini: Scatterplot Smoothers (*).

Berikut adalah beberapa data yang saya buat, dengan tingkat polinomial yang rendah

Quadratic Fit

Jelas bahwa polinomial kuadrat tidak cukup fleksibel untuk memberikan data yang cocok. Kami memiliki daerah dengan bias sangat tinggi, antara dan semua data di bawah fit, dan setelah semua data berada di atas kurva.0,85 0,850.60.850.85

Untuk menghilangkan bias, kita dapat meningkatkan derajat kurva menjadi tiga, tetapi masalahnya tetap, kurva kubik masih terlalu kaku

Cocok kubik

Jadi kami terus meningkatkan derajat, tetapi sekarang kami mengalami masalah yang berlawanan

Sepuluh Derajat Fit

Kurva ini melacak data terlalu dekat, dan memiliki kecenderungan untuk terbang ke arah yang tidak begitu baik ditunjukkan oleh pola umum dalam data. Di sinilah regularisasi masuk. Dengan kurva derajat yang sama (sepuluh) dan beberapa regularisasi dipilih dengan baik

Regularizaton Tingkat Sepuluh

Kami mendapatkan yang sangat bagus!

Perlu sedikit fokus pada satu aspek yang dipilih dengan baik di atas. Ketika Anda menyesuaikan polinomial dengan data, Anda memiliki serangkaian pilihan untuk gelar. Jika kurva derajat tiga underfit dan kurva derajat empat overfit, Anda tidak punya tempat lain di tengah. Regularisasi menyelesaikan masalah ini, karena memberikan Anda berbagai parameter kompleksitas yang berkesinambungan untuk dimainkan.

bagaimana Anda mengklaim "Kami mendapatkan hasil yang sangat bagus!". Bagi saya mereka semua terlihat sama, yaitu tidak dapat disimpulkan. Rasional mana yang Anda gunakan untuk memutuskan mana yang bagus dan tidak pas?

Titik adil.

Asumsi yang saya buat di sini adalah bahwa model yang cocok seharusnya tidak memiliki pola yang jelas dalam residu. Sekarang, saya tidak merencanakan residu, jadi Anda harus melakukan sedikit pekerjaan saat melihat gambar, tetapi Anda harus dapat menggunakan imajinasi Anda.

Pada gambar pertama, dengan kurva kuadrat yang cocok dengan data, saya dapat melihat pola berikut dalam residual

  • Dari 0,0 hingga 0,3 mereka ditempatkan secara merata di atas dan di bawah kurva.
  • Dari 0,3 hingga sekitar 0,55 semua titik data berada di atas kurva.
  • Dari 0,55 hingga sekitar 0,85 semua titik data berada di bawah kurva.
  • Dari 0,85 dan seterusnya, mereka semua berada di atas kurva lagi.

Saya menyebut perilaku ini sebagai bias lokal , ada daerah di mana kurva tidak mendekati rata-rata kondisional data.

Bandingkan ini dengan pas terakhir, dengan spline kubik. Saya tidak dapat memilih daerah mana pun dengan mata yang cocok tidak terlihat tepat melalui pusat massa titik data. Ini umumnya (meskipun tidak tepat) yang saya maksud dengan kecocokan.


Catatan Akhir : Ambil semua ini sebagai ilustrasi. Dalam praktiknya, saya tidak merekomendasikan menggunakan ekspansi basis polinomial untuk tingkat lebih tinggi dari . Masalah mereka dibahas dengan baik di tempat lain, tetapi, misalnya:2

  • Perilaku mereka di batas data Anda bisa sangat kacau, bahkan dengan regularisasi.
  • Mereka bukan lokal dalam arti apa pun. Mengubah data Anda di satu tempat dapat secara signifikan memengaruhi kecocokan di tempat yang sangat berbeda.

Sebagai gantinya, saya dalam situasi seperti yang Anda gambarkan, merekomendasikan menggunakan spline kubik alami bersama dengan regularisasi, yang memberikan kompromi terbaik antara fleksibilitas dan stabilitas. Anda dapat melihatnya sendiri dengan memasang beberapa splines di aplikasi.

Natural Cubic Spline

(*) Saya percaya ini hanya bekerja di chrome dan firefox karena saya menggunakan beberapa fitur javascript modern (dan kemalasan keseluruhan untuk memperbaikinya dalam safari dan ie). Kode sumber ada di sini , jika Anda tertarik.

Matthew Drury
sumber
3
Terima kasih, dan alat peramban Anda luar biasa - Saya suka demo interaktif kecil seperti itu!
Karnivaurus
@Karnivaurus Terima kasih, saya senang saya bisa membantu. Alat itu menyenangkan untuk dibangun, saya suka menulis javascript:)
Matthew Drury
3
+6. Kerja bagus menulis alat ini! Anda akan mendapatkan hadiah dari saya setelah utasnya cukup tua untuk memberi hadiah padanya.
Amoeba berkata Reinstate Monica
4
+1 Ini adalah jawaban yang sangat bagus. Salah satu cara untuk menunjukkan ketidakstabilan fit polinomial derajat tinggi adalah dengan merencanakan regresi tingkat tinggi dengan satu titik data dihapus untuk setiap titik, dan membandingkannya dengan solusi RCS.
Sycorax berkata Reinstate Monica
1
@MatthewDrury "splines kubik terbatas" - maaf tentang itu.
Sycorax berkata Reinstate Monica
4

Tidak, tidak sama. Bandingkan, misalnya, polinomial orde kedua tanpa regularisasi dengan polinomial orde empat dengannya. Yang terakhir dapat menempatkan koefisien besar untuk kekuatan ketiga dan keempat selama ini tampaknya meningkatkan akurasi prediksi, sesuai dengan prosedur apa pun yang digunakan untuk memilih ukuran penalti untuk prosedur regularisasi (mungkin validasi silang). Ini menunjukkan bahwa salah satu manfaat dari regularisasi adalah memungkinkan Anda untuk menyesuaikan kompleksitas model secara otomatis untuk mencapai keseimbangan antara overfitting dan underfitting.

Kodiologis
sumber
Tetapi jika Anda menambahkan regularisasi ke polinomial orde keempat, ini mencegahnya menggunakan tingkat ekspresi sepenuhnya. Jadi dengan cukup regularisasi, ekspresifitas akan direduksi ke titik di mana ekspresifnya sama dengan polinomial orde kedua. Tidak?
Karnivaurus
1
Mungkin jika Anda memperbaiki ukuran penalti Anda di muka, tetapi apa artinya itu? Ukuran penalti harus dipilih berdasarkan data.
Kodiologist
4

Untuk polinomial, bahkan perubahan kecil pada koefisien dapat membuat perbedaan untuk eksponen yang lebih tinggi.

L2 (kuadrat terkecil) biasanya mendorong banyak koefisien kecil tetapi tidak ada yang tepat 0 dan karena itu monomial orde tinggi dapat membuat perbedaan.

pembaca matematika
sumber
2

Semua jawaban sangat bagus dan saya memiliki simulasi yang sama dengan Matt untuk memberi Anda contoh lain untuk menunjukkan mengapa model kompleks dengan regularisasi biasanya lebih baik daripada model sederhana .

Saya membuat analogi untuk memiliki penjelasan intuitif.

  • Kasus 1 Anda hanya memiliki siswa sekolah menengah dengan pengetahuan terbatas (model sederhana tanpa regularisasi)
  • Kasus 2 Anda memiliki seorang mahasiswa pascasarjana tetapi membatasi dia hanya menggunakan pengetahuan sekolah tinggi untuk menyelesaikan masalah. (model kompleks dengan regularisasi)

Jika dua orang memecahkan masalah yang sama, biasanya mahasiswa pascasarjana akan bekerja solusi yang lebih baik, karena pengalaman dan wawasan tentang pengetahuan.

Gambar 1 menunjukkan 4 fitting untuk data yang sama. 4 fitting adalah line, parabola, model urutan ke-3 dan model pesanan ke-5. Anda dapat mengamati bahwa model urutan ke-5 mungkin memiliki masalah overfitting.

masukkan deskripsi gambar di sini

Di sisi lain, dalam percobaan kedua, kita akan menggunakan model orde 5 dengan tingkat regularisasi berbeda. Bandingkan yang terakhir dengan model urutan kedua. (dua model disorot) Anda akan menemukan yang terakhir mirip (kira-kira memiliki kompleksitas model yang sama) dengan parabola, tetapi sedikit lebih fleksibel untuk data dengan baik.

masukkan deskripsi gambar di sini

Haitao Du
sumber
1
"secara kasar memiliki kompleksitas model yang sama" ... itu secara visual perbandingan "jelas", apakah ada cara matematis untuk mengukurnya?
Silverfish