Saat ini saya agak bingung dengan bagaimana mini-batch gradient descent dapat terperangkap di titik sadel.
Solusinya mungkin terlalu sepele sehingga saya tidak mengerti.
Anda mendapatkan sampel baru setiap zaman, dan menghitung kesalahan baru berdasarkan batch baru, sehingga fungsi biaya hanya statis untuk setiap batch, yang berarti bahwa gradien juga harus berubah untuk setiap batch mini .. tetapi menurut ini harus implementasi vanilla memiliki masalah dengan poin sadel?
Tantangan utama lain dari meminimalkan fungsi kesalahan yang sangat non-cembung yang umum untuk jaringan saraf adalah menghindari terjebak dalam banyak minimum lokal suboptimal mereka. Dauphin et al. [19] berpendapat bahwa kesulitan muncul sebenarnya bukan dari minima lokal tetapi dari titik pelana, yaitu titik-titik di mana satu dimensi miring ke atas dan yang lain miring ke bawah. Poin pelana ini biasanya dikelilingi oleh dataran tinggi dari kesalahan yang sama, yang membuatnya sangat sulit bagi SGD untuk melarikan diri, karena gradien mendekati nol di semua dimensi.
Maksud saya, terutama SGD akan memiliki keuntungan yang jelas terhadap poin sadel, karena berfluktuasi menuju konvergensinya ... Fluktuasi dan pengambilan sampel acak, dan fungsi biaya menjadi berbeda untuk setiap zaman harus menjadi alasan yang cukup untuk tidak terjebak dalam satu sadel.
Untuk gradien bets penuh yang layak, apakah masuk akal bahwa ia dapat terjebak dalam sadel, karena fungsi kesalahannya konstan.
Saya agak bingung pada dua bagian lainnya.