Jaringan Saraf Tiruan
Jaringan Syaraf Tiruan, atau singkatnya jaringan saraf, bukanlah ide baru. Sudah ada sekitar 80 tahun.
Baru pada tahun 2011, Deep Neural Networks menjadi populer dengan penggunaan teknik baru, ketersediaan set data yang besar, dan komputer yang kuat.
Jaringan saraf meniru neuron, yang memiliki dendrit, nukleus, akson, dan akson terminal.
Untuk sebuah jaringan, kita membutuhkan dua neuron. Neuron ini mentransfer informasi melalui sinaps antara dendrit satu dan akson terminal lainnya.
Model yang mungkin dari neuron buatan terlihat seperti ini -
Jaringan saraf akan terlihat seperti yang ditunjukkan di bawah ini -
Lingkaran adalah neuron atau node, dengan fungsinya pada data dan garis / tepi yang menghubungkannya adalah bobot / informasi yang diteruskan.
Setiap kolom adalah lapisan. Lapisan pertama data Anda adalah lapisan masukan. Kemudian, semua lapisan antara lapisan masukan dan lapisan keluaran adalah lapisan tersembunyi.
Jika Anda memiliki satu atau beberapa lapisan tersembunyi, Anda memiliki jaringan saraf yang dangkal. Jika Anda memiliki banyak lapisan tersembunyi, Anda memiliki jaringan saraf yang dalam.
Dalam model ini, Anda memiliki data masukan, Anda menimbangnya, dan meneruskannya melalui fungsi di neuron yang disebut fungsi ambang atau fungsi aktivasi.
Pada dasarnya, ini adalah jumlah dari semua nilai setelah membandingkannya dengan nilai tertentu. Jika Anda menembakkan sinyal, maka hasilnya adalah (1) keluar, atau tidak ada yang ditembakkan, maka (0). Itu kemudian diberi bobot dan diteruskan ke neuron berikutnya, dan jenis fungsi yang sama dijalankan.
Kita dapat memiliki fungsi sigmoid (bentuk-s) sebagai fungsi aktivasi.
Adapun bobot, mereka hanya acak untuk memulai, dan mereka unik per masukan ke dalam node / neuron.
Dalam "umpan maju" tipikal, jenis jaringan neural yang paling dasar, informasi Anda diteruskan langsung melalui jaringan yang Anda buat, dan Anda membandingkan keluarannya dengan apa yang Anda harapkan dari keluaran akan menggunakan data sampel Anda.
Dari sini, Anda perlu menyesuaikan bobot untuk membantu Anda mendapatkan keluaran agar sesuai dengan keluaran yang Anda inginkan.
Tindakan mengirim data langsung melalui jaringan saraf disebut a feed forward neural network.
Data kita beralih dari masukan, ke lapisan, secara berurutan, lalu ke keluaran.
Ketika kita mundur dan mulai menyesuaikan bobot untuk meminimalkan kerugian / biaya, inilah yang disebut back propagation.
Ini adalah sebuah optimization problem. Dengan jaringan saraf, dalam praktik nyata, kita harus berurusan dengan ratusan ribu variabel, atau jutaan, atau lebih.
Solusi pertama adalah menggunakan stochastic gradient descent sebagai metode optimasi. Sekarang, ada opsi seperti AdaGrad, Adam Optimizer, dan sebagainya. Bagaimanapun, ini adalah operasi komputasi besar-besaran. Itulah mengapa Jaringan Neural sebagian besar ditinggalkan di rak selama lebih dari setengah abad. Baru belakangan ini kami bahkan memiliki kekuatan dan arsitektur di mesin kami untuk mempertimbangkan melakukan operasi ini, dan kumpulan data berukuran tepat agar cocok.
Untuk tugas klasifikasi sederhana, jaringan neural memiliki kinerja yang relatif dekat dengan algoritme sederhana lainnya seperti K Neighbours Terdekat. Kegunaan sebenarnya dari jaringan neural terwujud saat kita memiliki data yang jauh lebih besar, dan pertanyaan yang jauh lebih kompleks, yang keduanya mengungguli model pembelajaran mesin lainnya.