Saya telah membangun jaringan saraf tiruan dalam python menggunakan fungsi optimisasi scipy.optimize.minimize (Conjugate gradient).
Saya telah menerapkan pemeriksaan gradien, mengecek semuanya dll dan saya cukup yakin itu berfungsi dengan benar.
Saya telah menjalankannya beberapa kali dan mencapai 'Pengoptimalan berhasil dihentikan' namun ketika saya meningkatkan jumlah lapisan tersembunyi, biaya hipotesis meningkat (semua yang lain tetap sama) setelah berhasil dihentikan.
Secara intuitif rasanya seolah-olah biaya harus turun ketika jumlah lapisan tersembunyi meningkat, karena mampu menghasilkan hipotesis yang lebih kompleks yang dapat sesuai dengan data yang lebih baik, namun ini tampaknya tidak menjadi masalah.
Saya tertarik untuk memahami apa yang terjadi di sini, atau jika saya salah menerapkan neural net?
sumber
Meningkatkan jumlah lapisan tersembunyi untuk jaringan saraf standar sebenarnya tidak akan meningkatkan hasil dalam sebagian besar kasus. Mengubah ukuran lapisan yang tersembunyi akan.
Fakta ini (bahwa jumlah lapisan tersembunyi sangat sedikit) sebenarnya telah dicatat secara historis dan merupakan motivasi di balik bidang pembelajaran yang mendalam. Pembelajaran mendalam adalah cara cerdas untuk melatih jaringan saraf multilayer dengan, misalnya, mengisolasi subset fitur ketika melatih lapisan yang berbeda.
Video pengantar yang bagus tentang topik ini di YouTube
sumber