Saya telah membaca di tempat lain bahwa pilihan seseorang untuk fungsi aktivasi lapisan tersembunyi dalam NN harus didasarkan pada kebutuhan seseorang , yaitu jika Anda membutuhkan nilai dalam rentang -1 hingga 1 gunakan tanh dan gunakan sigmoid untuk rentang 0 hingga 1.
Pertanyaan saya adalah bagaimana seseorang tahu apa yang dibutuhkan seseorang ? Apakah ini didasarkan pada rentang lapisan input, misalnya menggunakan fungsi yang dapat mencakup rentang nilai penuh lapisan input, atau entah bagaimana mencerminkan distribusi lapisan input (fungsi Gaussian)? Atau apakah masalah kebutuhan / domain spesifik dan pengalaman / penilaian seseorang diperlukan untuk membuat pilihan ini? Atau itu hanya "menggunakan apa yang memberikan kesalahan pelatihan minimum divalidasi silang terbaik?"
sumber
1 + (1 / exp(-sum))
. Membuat kebutuhan sangat sulit untuk dipahami tanpa mencoba keduanya pada setiap set data. The kebutuhan seperti yang disebutkan di sini terkait dengan hubungan yang sebenarnya sedang belajar, yaitu satu set data biner akan belajar lebih cepat atau tidak sama sekali aktivasi yang berbeda diberikan.Jawaban:
LeCun membahas ini di Backprop Efisien Bagian 4.4. Motivasinya mirip dengan motivasi untuk menormalkan input menjadi rata-rata nol (Bagian 4.3). Output rata-rata dari fungsi aktivasi tanh lebih cenderung mendekati nol daripada sigmoid, yang output rata-rata harus positif.
sumber
Kebutuhan yang disebutkan dalam paragraf pertama dari pertanyaan terkait dengan fungsi aktivasi lapisan keluaran , bukan fungsi aktivasi lapisan tersembunyi. Memiliki output yang berkisar dari 0 hingga 1 adalah nyaman karena itu berarti mereka dapat secara langsung mewakili probabilitas. Namun, IIRC, sebuah jaringan dengan fungsi aktivasi lapisan keluaran tanh dapat dengan mudah diubah menjadi jaringan dengan fungsi aktivasi lapisan keluaran logistik, sehingga tidak terlalu penting dalam praktiknya.
IIRC alasan untuk menggunakan tanh daripada fungsi aktivasi logistik di unit tersembunyi, yaitu bahwa perubahan yang dilakukan terhadap bobot menggunakan backpropagation tergantung pada output dari neuron lapisan tersembunyi dan pada turunan dari fungsi aktivasi, sehingga menggunakan aktivasi logistik fungsi Anda dapat memiliki keduanya pergi ke nol pada saat yang sama, yang dapat berakhir dengan unit lapisan tersembunyi menjadi beku.
Singkatnya, gunakan tanh untuk fungsi aktivasi lapisan tersembunyi, pilih fungsi aktivasi lapisan output untuk menegakkan batasan yang diinginkan pada output (pilihan umum: linier - tanpa kendala, logistik - output terletak antara 0 dan 1 dan eksponensial - output sangat positif).
sumber
Konsep umum untuk memilih sigmoid untuk tujuan Anda adalah memilih yang sesuai dengan aturan, nilai output Anda berada dalam kisaran poin, membuat turunan kedua fungsi sigmoid menjadi maksimum.
sumber