Dari video ini oleh Andrew Ng sekitar pukul 5:00
Bagaimana dan diturunkan? Bahkan, apa artinya ? didapat dengan membandingkan ke y, tidak ada perbandingan seperti itu untuk output dari lapisan tersembunyi, kan?
Dari video ini oleh Andrew Ng sekitar pukul 5:00
Bagaimana dan diturunkan? Bahkan, apa artinya ? didapat dengan membandingkan ke y, tidak ada perbandingan seperti itu untuk output dari lapisan tersembunyi, kan?
Jawaban:
Saya akan menjawab pertanyaan Anda tentang , tetapi ingat bahwa pertanyaan Anda adalah sub pertanyaan dari pertanyaan yang lebih besar, itulah sebabnya:δ( l )saya
Pengingat tentang langkah-langkah di jaringan saraf:
Langkah 1: meneruskan propagasi (perhitungan )Sebuah( l )saya
Langkah 2a: propagasi mundur: perhitungan kesalahanδ( l )saya
Langkah 2b: propagasi mundur: perhitungan gradien∇( l )saya j dari J (Θ ) menggunakan kesalahan δ( l + 1 )saya dan Sebuah( l )saya ,
Langkah 3: gradient descent: hitung yang baruθ( l )saya j menggunakan gradien ∇( l )saya j
Pertama, untuk memahami apa ituδ( l )saya adalah , apa yang mereka wakili dan mengapa Andrew NG membicarakannya , Anda perlu memahami apa yang sebenarnya dilakukan Andrew pada saat itu dan mengapa kami melakukan semua perhitungan ini: Dia menghitung gradien∇( l )saya j dari θ( l )saya j untuk digunakan dalam algoritma keturunan Gradient.
Gradien didefinisikan sebagai:
Karena kita tidak dapat benar-benar menyelesaikan rumus ini secara langsung, kita akan memodifikasinya menggunakan DUA TRIK MAGIK untuk sampai pada formula yang sebenarnya dapat kita hitung. Formula akhir yang dapat digunakan ini adalah:
Untuk sampai pada hasil ini, TRIK MAGIC PERTAMA adalah kita dapat menulis gradien∇( l )saya j dari θ( l )saya j menggunakan δ( l )saya :
Dan kemudian TRIC MAGIC KEDUA menggunakan hubungan antaraδ( l )saya dan δ( l + 1 )saya , untuk menentukan indeks lainnya,
Dan seperti yang saya katakan, akhirnya kita bisa menulis formula yang kita tahu semua istilah:
DEMONSTRASI TRIK AJAIB PERTAMA:∇(l)ij=δ(l)i∗a(l−1)j
Kami mendefinisikan:
The Rantai aturan untuk dimensi yang lebih tinggi (Anda harus benar-benar membaca properti ini dari Rantai aturan) memungkinkan kita untuk menulis:
Namun, seperti:
Kami kemudian dapat menulis:
Karena linearitas diferensiasi [(u + v) '= u' + v '], kita dapat menulis:
dengan:
Kemudian untuk k = i (jika tidak sama dengan nol):
Akhirnya, untuk k = i:
Sebagai hasilnya, kita dapat menulis ekspresi gradien pertama kita∇( l )saya j :
Yang setara dengan:
Atau:
DEMONSTRASI TRIK SIHIR KEDUA :δ( l )saya=θ( l + 1)Tδ( l + 1 ). ∗ (Sebuah( l )saya( 1 -Sebuah( l )saya) ) atau:
Ingatlah bahwa kami berpose:
Sekali lagi, aturan Rantai untuk dimensi yang lebih tinggi memungkinkan kita untuk menulis:
Mengganti∂C∂z( l + 1 )k oleh δ( l + 1 )k , kita punya:
Sekarang, mari fokus∂z( l + 1 )k∂z( l )saya . Kita punya:
Kemudian kami menurunkan ungkapan ini tentangz( i )k :
Karena linearitas derivasi, kita dapat menulis:
Jika j≠ Lalu saya ∂θ( l )k j∗ g(z( l )j)∂z( l )saya= 0
Sebagai konsekuensi:
Lalu:
Sebagai g '(z) = g (z) (1-g (z)), kita memiliki:
Dan sebagaig(z( l )saya=Sebuah( l )saya , kita punya:
Dan akhirnya, menggunakan notasi vektor:
sumber
Perhitungan ini membantu. Satu-satunya perbedaan dari hasil ini dengan hasil Andrew adalah karena definisi theta. Dalam definisi Andrew, z (l + 1) = theta (l) * a (l). Dalam perhitungan ini, z (l + 1) = theta (l + 1) * a (l). Jadi sebenarnya tidak ada perbedaan.
sumber