Jaringan Syaraf Tiruan berfungsi menirukan fungsi otak manusia yang berisi neuron-neuron. Neuron ini ketika bekerja mengatur bobot dan bias sesuai dengan masukan dan targetnya. Ketika mengatur bobot dan bias terkadang diperlukan bilangan-bilangan yang mudah diolah. Biasanya lebih disukai yang sudah dinormalkan (normal Euclidean). Selain itu untuk kasus tertentu seperti data gambar, lebih disukai yang berbentuk 1 dan -1 dibanding dengan 1 dan 0 (lihat buku-buku tentang JST), untuk image black-white. Sementara bentuk 1 dan nol lebih mudah ketika mengetik/membuat matriks (karena tanpa mengetik minus “-“). Tentu saja repot jika mengubah manual nol menjadi -1, tetapi dengan cara berikut, hanya diperlukan satu langkah untuk merubah 1 dan nol menjadi 1 dan -1.
- >> empat=[1 0 1;1 0 1;1 1 1;0 0 1;0 0 1]
- empat =
- 1 0 1
- 1 0 1
- 1 1 1
- 0 0 1
- 0 0 1
Logika sederhana adalah dengan mengurang 0 dengan 1 agar menjadi -1. Tetapi tentu saja yang 1 akan menjadi nol. Oleh karena itu kita kalikan dua agar 1 menjadi 2 dan jika dikurangkan 1 menjadi 1. Sementara nol dikalikan 2 tidak berubah.
-
>> empatb=empat*2
-
empatb =
-
2 0 2
-
2 0 2
-
2 2 2
-
0 0 2
-
0 0 2
Setelah dikalikan dengan 2 kurangkan dengan satu seluruh matriks itu. Gunakan fungsi ones untuk membuat matriks berisi angka 1.
-
>> empatc=empatb-ones(5,3)
-
empatc =
-
1 -1 1
-
1 -1 1
-
1 1 1
-
-1 -1 1
-
-1 -1 1
Tampak hasilnya sesuai dengan yang diinginkan. Coba lihat dengan fungsi imshow apakah hasilnya tampak sama dengan sebelumnya, yaitu angka “4”. Beberapa literatur menyarankan menggunakan versi -1 dibandingkan dengan nol ketika mengolah data dengan jaringan syaraf tiruan (neural networks).
imshow(empatc,’InitialMagnification’,5000)
Lihat yang berwarna putih menunjukan angka “4”. Jadi caranya mudah, kalikan dengan “2” dan kurangkan dengan matriks 1 (fungsi “ones”). Sekian, semoga bermanfaat.