Mengapa kita menggunakan ReLU di jaringan saraf dan bagaimana kita menggunakannya?

31

Mengapa kita menggunakan rectified linear units (ReLU) dengan jaringan saraf? Bagaimana cara meningkatkan jaringan saraf?

Mengapa kita mengatakan bahwa ReLU adalah fungsi aktivasi? Bukankah fungsi aktivasi softmax untuk jaringan saraf? Saya menduga bahwa kami menggunakan keduanya, ReLU dan softmax, seperti ini:

neuron 1 dengan output softmax ----> ReLU pada output neuron 1, yang merupakan
input dari neuron 2 ---> neuron 2 dengan output softmax -> ...

sehingga input neuron 2 pada dasarnya adalah ReLU (softmax (x1)). Apakah ini benar?

pengguna2896492634
sumber

Jawaban:

36

Fungsi ReLU adalah f(x)=maks(0,x).Biasanya ini diterapkan elemen-bijaksana untuk output dari beberapa fungsi lain, seperti produk vektor-matriks. Dalam penggunaan MLP, unit penyearah menggantikan semua fungsi aktivasi lainnya kecuali mungkin lapisan pembacaan. Tapi saya kira Anda bisa mencampur dan mencocokkan mereka jika Anda mau.

Salah satu cara ReLU meningkatkan jaringan saraf adalah dengan mempercepat pelatihan. Komputasi gradien sangat sederhana (0 atau 1 tergantung pada tanda x ). Juga, langkah komputasi ReLU mudah: setiap elemen negatif diatur ke 0,0 - tanpa eksponensial, tidak ada operasi perkalian atau pembagian.

Gradien jaringan singgung logistik dan hiperbolik lebih kecil daripada bagian positif dari ReLU. Ini berarti bahwa bagian positif diperbarui lebih cepat saat pelatihan berlangsung. Namun, ini harus dibayar. Gradien 0 di sebelah kiri memiliki masalah sendiri, yang disebut "dead neuron," di mana pembaruan gradien menetapkan nilai yang masuk ke ReLU sehingga output selalu nol; unit ReLU yang dimodifikasi seperti ELU (atau LeLU Leaky, atau PReLU, dll.) dapat memperbaiki hal ini.

ddxReLU(x)=1x>0. Sebaliknya, gradien unit sigmoid paling banyak0,25; di sisi lain, tingkattanhlebih baik untuk input di wilayah dekat 0 sejak0,25<ddxtanh(x)1x[-1.31,1.31](kurang-lebih).

Sycorax berkata Reinstate Monica
sumber
@aginensky Anda dapat mengajukan pertanyaan dengan mengklik tombol Ajukan Pertanyaan di bagian atas halaman.
Sycorax berkata Reinstate Monica
Saya tidak melihat bukti bahwa saya ingin mengajukan pertanyaan atau saya berpartisipasi di halaman ini. Terus terang saya kagum pada seberapa baik ReLU bekerja, tapi saya sudah berhenti mempertanyakannya :).
aginensky
@aginensky Tampaknya komentar telah dihapus untuk sementara.
Sycorax berkata Reinstate Monica
Komentar itu tidak dihapus oleh saya juga tidak diinformasikan. Saya sudah berhenti menjawab pertanyaan dan saya kira ini berarti saya sudah selesai berkomentar juga.
aginensky
@ Aginensky Saya tidak tahu mengapa ini akan menyebabkan Anda berhenti berkomentar. Jika Anda memiliki pertanyaan tentang komentar dan moderasi, Anda dapat mengajukan pertanyaan di meta.stats.SE.
Sycorax mengatakan Reinstate Monica
4

ρ(x)=maks(0,x)ρρρρ=ρ

masukkan deskripsi gambar di sini

n

Eli Korvigo
sumber
0

ReLU adalah fungsi maks (x, 0) dengan input x misalnya matriks dari gambar yang berbelit-belit. ReLU kemudian menetapkan semua nilai negatif dalam matriks x ke nol dan semua nilai lainnya dijaga konstan.

ReLU dihitung setelah konvolusi dan karenanya fungsi aktivasi nonlinier seperti tanh atau sigmoid.

Softmax adalah classifier di ujung jaringan saraf. Itu adalah regresi logistik untuk mengatur output ke nilai antara 0 dan 1. (Alternatif di sini adalah classifier SVM).

CNN Forward Pass mis: input-> conv-> ReLU-> Pool-> conv-> ReLU-> Pool-> FC-> softmax

Randy Welt
sumber
8
Downvoting. Ini jawaban yang sangat buruk! Softmax bukan classifier! Ini adalah fungsi yang menormalkan (skala) output ke kisaran [0,1] dan memastikan semuanya berjumlah 1. Regresi logistik tidak "mengatur" apa pun! Kalimat "ReLU dihitung setelah konvolusi dan karena itu fungsi aktivasi nonlinier seperti tanh atau sigmoid." tidak memiliki kata kerja, atau akal.
Jan Kukacka
1
Jawabannya tidak seburuk itu. Kalimat tanpa kata kerja harus "ReLU dihitung setelah konvolusi dan karenanya IS fungsi aktivasi nonlinier seperti tanh atau sigmoid." Memikirkan softmax sebagai classifier juga masuk akal. Hal ini dapat dilihat sebagai classifier probabilistik yang memberikan probabilitas untuk setiap kelas. Ini "mengatur" / "menormalkan" output ke interval [0,1].
user118967
0

ReLU adalah saklar literal. Dengan sakelar listrik 1 volt menghasilkan 1 volt keluar, n volt memberi n volt keluar saat dihidupkan. Nyala / Mati saat Anda memutuskan untuk beralih ke nol memberikan grafik yang sama persis dengan ReLU. Jumlah tertimbang (produk titik) dari sejumlah jumlah tertimbang masih merupakan sistem linier. Untuk input tertentu, sakelar ReLU hidup atau mati secara individual. Yang menghasilkan proyeksi linier tertentu dari input ke output, karena berbagai jumlah tertimbang jumlah tertimbang ... dihubungkan bersama oleh sakelar. Untuk input tertentu dan output neuron tertentu ada sistem gabungan jumlah tertimbang yang sebenarnya dapat diringkas menjadi jumlah tertimbang efektif tunggal. Karena ReLU berganti status menjadi nol, tidak ada diskontinuitas mendadak pada output untuk perubahan input secara bertahap.

Ada algoritme penjumlahan tertimbang (titik produk) efisien numerik lainnya seperti transformasi FFT dan Walsh Hadamard. Tidak ada alasan Anda tidak dapat memasukkan mereka ke dalam jaringan saraf berbasis ReLU dan mendapat manfaat dari keuntungan komputasi. (mis. Jaringan neural bank filter tetap.)

Sean O'Connor
sumber