Untuk membangun jaringan saraf yang mempelajari nonlinieritas , mulailah dengan struktur model yang sudah dikenal berikut ini: model linier berbentuk $y' = b + w_1x_1 + w_2x_2 + w_3x_3$.
Kita dapat memvisualisasikan persamaan ini seperti yang ditunjukkan di bawah ini, di mana $x_1$, $x_2$, dan $x_3$ adalah tiga node input kita (berwarna biru), dan $y'$ adalah node output kita (berwarna hijau).
Latihan 1
Pada model di atas, nilai bobot dan bias telah diinisialisasi secara acak. Lakukan tugas-tugas berikut untuk membiasakan diri dengan antarmuka dan menjelajahi model linier. Anda dapat mengabaikan menu tarik-turun Fungsi Aktivasi untuk saat ini; kita akan membahas topik ini nanti di modul ini.
Klik tombol Putar (▶️) di atas jaringan untuk menghitung nilai node keluaran untuk nilai masukan $x_1 = 1.00$, $x_2 = 2.00$, dan $x_3 = 3.00$.
Klik node kedua pada lapisan input , dan tingkatkan nilainya dari 2,00 menjadi 2,50. Perhatikan bahwa nilai node output berubah. Pilih node output (berwarna hijau) dan tinjau panel Perhitungan untuk melihat bagaimana nilai output dihitung.
Klik node output (berwarna hijau) untuk melihat nilai parameter bobot ($w_1$, $w_2$, $w_3$) dan bias ($b$). Kurangi nilai bobot untuk $w_3$ (sekali lagi, perhatikan bahwa nilai node output dan perhitungan di bawah ini telah berubah). Kemudian, tingkatkan nilai bias. Tinjau bagaimana perubahan ini memengaruhi output model.
Menambahkan lapisan ke jaringan
Perhatikan bahwa ketika Anda menyesuaikan nilai bobot dan bias jaringan pada Latihan 1 , hal itu tidak mengubah hubungan matematis keseluruhan antara input dan output. Model kita masih merupakan model linier.
Namun bagaimana jika kita menambahkan lapisan lain ke jaringan, di antara lapisan input dan lapisan output? Dalam terminologi jaringan saraf, lapisan tambahan di antara lapisan input dan lapisan output disebut lapisan tersembunyi , dan node di lapisan ini disebut neuron .
Nilai setiap neuron di lapisan tersembunyi dihitung dengan cara yang sama seperti keluaran model linier: jumlahkan hasil perkalian setiap inputnya (neuron di lapisan jaringan sebelumnya) dan parameter bobot unik, ditambah bias. Demikian pula, neuron di lapisan berikutnya (di sini, lapisan keluaran) dihitung menggunakan nilai neuron lapisan tersembunyi sebagai input.
Lapisan tersembunyi baru ini memungkinkan model kita untuk menggabungkan kembali data masukan menggunakan serangkaian parameter lain. Dapatkah ini membantu model kita mempelajari hubungan nonlinier?
Latihan 2
Kami telah menambahkan lapisan tersembunyi yang berisi empat neuron ke dalam model.
Klik tombol Putar (▶️) di atas jaringan untuk menghitung nilai dari empat node lapisan tersembunyi dan node keluaran untuk nilai masukan $x_1 = 1.00$, $x_2 = 2.00$, dan $x_3 = 3.00$.
Kemudian, jelajahi model tersebut, dan gunakan untuk menjawab pertanyaan-pertanyaan berikut.
Cobalah memodifikasi parameter model, dan amati efeknya pada nilai node lapisan tersembunyi dan nilai output (Anda dapat meninjau panel Perhitungan di bawah untuk melihat bagaimana nilai-nilai ini dihitung).
Bisakah model ini mempelajari nonlinieritas?
Jika Anda mengklik setiap node di lapisan tersembunyi dan meninjau perhitungan di bawahnya, Anda akan melihat bahwa semuanya bersifat linier (terdiri dari operasi perkalian dan penjumlahan).
Jika Anda kemudian mengklik node output dan meninjau perhitungan di bawahnya, Anda akan melihat bahwa perhitungan ini juga linier. Perhitungan linier yang dilakukan pada output dari perhitungan linier juga bersifat linier, yang berarti model ini tidak dapat mempelajari nonlinieritas.