Masalahnya adalah:
Turunkan gradien sehubungan dengan lapisan input untuk jaringan saraf lapisan tersembunyi tunggal menggunakan sigmoid untuk input -> hidden, softmax untuk hidden -> output, dengan kehilangan entropi silang.
Saya dapat melewati sebagian besar derivasi menggunakan aturan rantai tetapi saya tidak yakin tentang bagaimana sebenarnya "rantai" mereka bersama-sama.
Tentukan beberapa notasi
, σ adalah fungsi sigmoid
,
,Sadalah fungsi Softmax
, y adalah label nyata satu-panas vektor
Kemudian dengan aturan rantai,
Gradien individu adalah:
∂q
Sekarang kita harus merangkai definisi bersama. Dalam variabel tunggal ini mudah, kami hanya mengalikan semuanya. Dalam vektor, saya tidak yakin apakah akan menggunakan perkalian elemen-bijaksana atau perkalian matriks.
Terima kasih!
sumber
Jawaban:
Saya percaya bahwa kunci untuk menjawab pertanyaan ini adalah untuk menunjukkan bahwa penggandaan elemen-bijaksana sebenarnya singkatan dan karena itu ketika Anda mendapatkan persamaan Anda tidak pernah benar - benar menggunakannya.
Operasi yang sebenarnya bukan perkalian elemen-bijaksana tetapi sebagai gantinya, perkalian matriks standar dari gradien dengan Jacobian , selalu .
Dalam kasus nonlinieritas, Jacobian dari output vektor nonlinieritas berkenaan dengan input vektor dari nonlinieritas merupakan matriks diagonal. Oleh karena itu benar bahwa gradien dikalikan dengan matriks ini setara dengan gradien dari output nonlinier sehubungan dengan elemen kerugian-bijaksana dikalikan dengan vektor yang mengandung semua turunan parsial dari nonlinier sehubungan dengan input nonlinier, sehubungan dengan input nonlinier, tetapi ini mengikuti dari Jacobian yang diagonal. Anda harus melewati langkah Jacobian untuk mendapatkan penggandaan elemen-bijaksana, yang mungkin menjelaskan kebingungan Anda.
Dan kemudian gunakan operator elemen-bijaksana.
sumber
Lihat slide kuliah cs224d halaman 30, ini mungkin juga membantu.
sumber