Fungsi kerugian Anda tidak akan berfungsi karena ini memberikan insentif pengaturan ke nilai hingga apa pun dan hingga .θ1θ0−∞
Mari kita sebut yang sisa untuk .r(x,y)=1m∑mi=1hθ(x(i))−yh
Tujuan Anda adalah untuk membuat sedekat mungkin dengan nol , bukan hanya memperkecilnya . Nilai negatif tinggi sama buruknya dengan nilai positif tinggi.r
EDIT: Anda dapat melawan ini dengan secara artifisial membatasi ruang parameter (mis. Anda ingin ). Dalam hal ini, parameter optimal akan terletak pada titik-titik tertentu pada batas ruang parameter. Lihat https://math.stackexchange.com/q/896388/12467 . Ini bukan yang kamu inginkan.Θ|θ0|<10
Mengapa kita menggunakan kerugian kuadrat
Kesalahan kuadrat memaksa dan untuk mencocokkan. Ini diminimalkan pada , jika mungkin, dan selalu , karena itu adalah kuadrat dari bilangan real .h(x)yu=v≥0u−v
|u−v|juga akan bekerja untuk tujuan di atas, seperti , dengan bilangan bulat positif. Yang pertama sebenarnya digunakan (ini disebut kerugian ; Anda mungkin juga menemukan kerugian , yang merupakan nama lain untuk kesalahan kuadrat).(u−v)2nnℓ1ℓ2
Jadi, mengapa kerugian kuadrat lebih baik daripada ini? Ini adalah pertanyaan mendalam terkait hubungan antara kesimpulan Frequentist dan Bayesian . Singkatnya, kesalahan kuadrat terkait dengan Gaussian Noise .
Jika data Anda tidak cocok untuk semua poin persis, yaitu tidak nol untuk beberapa titik tidak peduli apa Anda pilih (seperti yang akan selalu terjadi dalam praktek), itu mungkin karena dari kebisingan . Dalam sistem yang kompleks akan ada banyak penyebab independen kecil untuk perbedaan antara model Anda dan kenyataan : kesalahan pengukuran, faktor lingkungan dll. Dengan Central Limit Theorem (CLT), total kebisingan akan didistribusikan secara normal , yaitu sesuai dengan Distribusi Gaussian . Kami ingin memilih yang paling cocokh(x)−yθ h yθmemperhitungkan distribusi kebisingan ini. Asumsikan , bagian dari yang tidak dapat dijelaskan oleh model Anda, mengikuti distribusi Gaussian . Kami menggunakan huruf kapital karena kami berbicara tentang variabel acak sekarang.R=h(X)−YyN(μ,σ)
Distribusi Gaussian memiliki dua parameter, berarti dan varians . Lihat di sini untuk memahami istilah-istilah ini dengan lebih baik.μ=E[R]=1m∑ihθ(X(i))−Y(i))σ2=E[R2]=1m∑i(hθ(X(i))−Y(i)))2
Pertimbangkan , itu adalah kesalahan sistematik dari pengukuran kami. Gunakan untuk memperbaiki kesalahan sistematis, sehingga (latihan untuk pembaca). Tidak ada lagi yang bisa dilakukan di sini.μh′(x)=h(x)−μμ′=E[R′]=0
σ mewakili kesalahan acak , juga disebut noise . Setelah kami merawat komponen noise sistematis seperti pada poin sebelumnya, prediktor terbaik diperoleh ketika diminimalkan. Dengan kata lain, prediktor terbaik adalah yang dengan distribusi paling ketat (varian terkecil) di sekitar nilai prediksi, yaitu varians terkecil. Meminimalkan kerugian kuadrat terkecil adalah hal yang sama dengan meminimalkan varians! Itu menjelaskan mengapa kerugian kuadrat terkecil bekerja untuk berbagai masalah. Kebisingan yang mendasari sangat sering Gaussian, karena CLT, dan meminimalkan kesalahan kuadrat ternyata tepatσ2=1m∑i(hθ(X(i))−Y(i)))2 sesuatu yang harus dikerjakan!
Untuk secara bersamaan memperhitungkan mean dan varians, kami menyertakan istilah bias dalam classifier kami (untuk menangani kesalahan sistematis ), kemudian meminimalkan kerugian kuadrat.μ
Pertanyaan tindak lanjut:
Rugi kuadrat terkecil = Kesalahan Gaussian. Apakah setiap fungsi kerugian lainnya juga sesuai dengan beberapa distribusi kebisingan? Iya. Misalnya, kerugian (meminimalkan nilai absolut alih-alih kesalahan kuadrat) sesuai dengan distribusi Laplace (Lihat rumus untuk PDF di kotak info - hanya Gaussian dengan alih-alih ). Kehilangan populer untuk distribusi probabilitas adalah KL-divergence . -Distribusi Gaussian sangat termotivasi karena Teorema Limit Sentralℓ1|x−μ|(x−μ)2, yang kita bahas sebelumnya. Kapan distribusi Laplace model kebisingan yang tepat? Ada beberapa keadaan di mana hal itu terjadi secara alami, tetapi itu lebih umum sebagai regulator untuk menegakkan sparsity : kerugian adalah yang paling tidak cembung di antara semua kerugian cembung.ℓ1
- Seperti yang disebutkan Jan dalam komentar, minimizer dari deviasi kuadrat adalah mean dan minimizer dari jumlah deviasi absolut adalah median . Mengapa kita ingin menemukan median residu daripada rata-rata? Tidak seperti rata-rata, median tidak terlempar oleh pencilan yang sangat besar. Jadi, kerugian digunakan untuk meningkatkan ketahanan. Terkadang kombinasi keduanya digunakan.ℓ1
Apakah ada situasi di mana kita meminimalkan Mean dan Varians? Iya. Carilah Bias-Variance Trade-off . Di sini, kita melihat sekumpulan classifier dan menanyakan yang terbaik di antara mereka. Jika kita bertanya yang set pengklasifikasi adalah yang terbaik untuk masalah, meminimalkan baik bias dan varians menjadi penting. Ternyata selalu ada trade-off di antara mereka dan kami menggunakan regularisasi untuk mencapai kompromi.hθ∈H
Mengenai jangka12
1/2 tidak masalah dan sebenarnya, tidak juga - keduanya adalah konstanta. Nilai optimal dari akan tetap sama di kedua kasus.mθ
Ekspresi untuk gradien menjadi lebih cantik dengan , karena 2 dari istilah kuadrat dibatalkan.12
- Saat menulis kode atau algoritme, kami biasanya lebih mementingkan gradien, sehingga membantu membuatnya ringkas. Anda dapat memeriksa kemajuan hanya dengan memeriksa norma gradien. Fungsi kerugian itu sendiri kadang-kadang dihilangkan dari kode karena hanya digunakan untuk validasi jawaban akhir.
The berguna jika Anda memecahkan masalah ini dengan gradient descent. Kemudian gradien Anda menjadi rata-rata istilah alih-alih jumlah, jadi skalanya tidak berubah saat Anda menambahkan lebih banyak titik data.mm
- Saya pernah mengalami masalah ini sebelumnya: Saya menguji kode dengan sejumlah kecil poin dan berfungsi dengan baik, tetapi ketika Anda mengujinya dengan seluruh dataset ada kehilangan presisi dan kadang-kadang over / under-flow, yaitu gradien Anda menjadi
nan
atau inf
. Untuk menghindarinya, normalisasikan saja jumlah titik data.
Keputusan estetika ini digunakan di sini untuk mempertahankan konsistensi dengan persamaan di masa depan di mana Anda akan menambahkan istilah regularisasi . Jika Anda memasukkan , parameter regularisasi tidak akan bergantung pada ukuran dataset dan akan lebih dapat diinterpretasikan di seluruh masalah.mλm