TOPOLOGI JARINGAN
Seperti halnya jaringan syaraf tiruan yang lain, Radial Basis Function Network (RBFN), juga memiliki jaringan.
Topologi RBFN terdiri dari layer :
- Input unit
- Hidden unit
- Output unit
Gambar 1. JST RBFN |
Sifat Khusus RBFN adalah sebagai berikut :
- Pemrosesan dari Input ke hidden bersifat non-linier
- Pemrosesan dari hidden ke output bersifat linier
- Pada hidden layer digunakan fungsi aktivasi yang berbasis radial, misalnya fungsi Gaussian
- Pada output unit , sinyal dijumlahkan seperti biasa
- Sifat jaringannya adalah feed forward
- Nilai spread menentukan bagaimana data tersebar. Jika nilai spread makin besar, sensitivitas antar data semakin berkurang.
- Centers adalah pusat cluster data
Gambar 2. Center of Cluster |
Hubungan nilai
spread dg grafiknya pada fungsi
Gaussian
Gambar 3. Perbandingan Nilai Spread |
Nilai spread makin besar (sebaran datanya berjauhan), sensitivitas antar data
semakin berkurang.
Fungsi Aktivasi selain Fungsi Gaussian
- Multi-Quadric Functions
- Generalized Multi-Quadric Functions
- Inverse Multi-Quadric Functions
- Generalized Inverse Multi-Quadric Functions
- Thin Plate Spline Function
- Cubic Function
- Linear Function
RBFN
- Biasa digunakan untuk menyelesaikan 2 jenis permasalahan, yaitu :
- Pattern Classification
- Time series modelling
- Untuk Pattern Classification menggunakan fungsi aktivasi Gaussian
- Time Series Modelling menggunakan fungsi aktivasi thin-plate spline
- Berguna atau tidaknya suatu JST ditentukan dari hasil pelatihan (bobot neuron-nya)
- RBFN mempunyai algoritma pelatihan yang agak unik, karena terdiri dari cara Supervised dan unsupervised sekaligus.
- Pelatihan RBFN terdiri dari 2 tahap, yaitu :
- Tahap Clustering Data
- Pembaharuan Bobot
- Data di cluster / dikelompokkan berdasarkan kedekatan tertentu (misalnya kedekatan 2 warna pixel, kedekatan jarak 2 titik, dll)
- Penentuan cluster akan memunculkan center / pusat cluster dari kelompok data
- Jumlah cluster menentukan jumlah hidden unit yg dipakai
- Cara menentukan center ada 2, yaitu :
- Menentukan center secara acak dari sekelompok data (paling mudah)
- Menggunakan algoritma clustering. Algoritma yang paling mudah adalah K-Means. Dengan Algoritma ini, JST mampu mencari sendiri center yg terbaik.
- Melihat cara tersebut, maka jelas tahap 1 ini adalah unsupervised
- JST menyimpan pengetahuannya dalam bobot neuron-neuronnya.
- Bobot diperbaharui melalui serangkaian perhitungan.
- Dibutuhkan data training dan target (supervised)
- Meneruskan sinyal input ke hidden & menghitung nilai aktivasi pada tiap hidden layer
Dimana :
m = 1,2,3….sesuai dg jumlah training pattern
j = 1,2,3…. Sesuai dengan jumlah hidden unit
x = vector input
t = vector data yg dianggap sebagai center
- Menyusun matriks Gaussian dari hasil perhitungan langkah 1
- Dimana :
m = vector input ke-m
c = hidden unit ke-c
- Menghitung bobot baru (w) dengan mengalikan pseudoinvers dari matrik G, dengan vector target (d) dari data training.
= (G^tG)^-1 G^T.d
- Menghitung nilai output JST :
Dimana b = nilai bobot bias
G(x) pada rumus ini artinya sama dengan j(x)
Catatan Tambahan :
Apabila memerlukan presentasi berikut saya buatkan link presentasinya :
bapak saya mau tanya, apakah ada alasan lain untuk memakai fungsi aktivasi gaussian?
ReplyDeleteMungkin ini jawaban saya yang mudah-mudahan bisa menjawabnya.
ReplyDeleteAlasannya adalah karena fungsi ini menggunakan pendekatan jarak. Untuk mengetahui kedekatan sebaran datanya.