Ada utas serupa di sini ( Fungsi biaya jaringan saraf adalah non-cembung? ) Tapi saya tidak dapat memahami poin-poin dalam jawaban di sana dan alasan saya untuk bertanya lagi berharap ini akan menjelaskan beberapa masalah:
Jika saya menggunakan jumlah fungsi biaya selisih kuadrat, saya akhirnya mengoptimalkan sesuatu dari bentuk mana adalah nilai label aktual selama pelatihan fase dan adalah nilai label yang diprediksi. Karena ini memiliki bentuk persegi, ini harusnya merupakan fungsi biaya cembung. Jadi apa yang bisa membuatnya menjadi non-cembung di NN? y y
Jawaban:
Sebagai contoh, mari kita pertimbangkan sebuah jaringan dengan 1 lapisan tersembunyi unit dan lapisan output linier: fungsi biaya kami adalah mana dan (dan saya menghilangkan istilah bias untuk kesederhanaan). Ini tidak harus cembung bila dilihat sebagai fungsi dari (tergantung pada : jika fungsi aktivasi linier digunakan maka ini masih bisa cembung). Dan semakin dalam jaringan kita, semakin sedikit hal-hal yang cembung.g ( α , W ) = ∑ i ( y i - α i σ ( W x i ) ) 2 x i ∈ R p W ∈ R N × pN
Sekarang tentukan fungsi oleh mana adalah dengan atur ke dan atur ke . Ini memungkinkan kita untuk memvisualisasikan fungsi biaya karena dua bobot ini berbeda-beda. h ( u , v ) = g ( α , W ( u , v ) ) W ( u , v ) W W 11 u W 12 vh : R × R → R h ( u , v ) = g( α , W( kamu , v ) ) W( kamu , v ) W W11 kamu W12 v
Gambar di bawah menunjukkan ini untuk fungsi aktivasi sigmoid dengan , , dan (jadi arsitektur yang sangat sederhana). Semua data (baik dan ) adalah iid , seperti halnya bobot yang tidak bervariasi dalam fungsi plot. Anda dapat melihat kurangnya konveksitas di sini.p = 3 N = 1 x y N ( 0 , 1 )n = 50 p = 3 N= 1 x y N(0,1)
Inilah kode R yang saya gunakan untuk membuat gambar ini (meskipun beberapa parameter berada pada nilai yang sedikit berbeda sekarang daripada ketika saya membuatnya sehingga mereka tidak akan sama):
sumber