Download - Radial Basis Function Network (RBFN)
RADIAL BASIS FUNCTIONSISTEM PAKAR
TOPOLOGI JARINGAN
• Seperti halnya jaringan syaraf tiruan yang lain, Radial Basis Function Network (RBFN), juga memiliki jaringan.
• Topoloagi RBFN terdiri dari layer :• Input unit
• Hidden unit
• Output unit
j
1
Yk
Y1
Bias (b)
X1
Xi
Input Unit Hidden Unit Output Unit
Sifat Khusus RBFN
• 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
Fungsi Gaussian
• 𝜑 𝑟 = 𝑒𝑥𝑝 −𝑟2
2𝜎2untuk 𝜎 > 0
• Dimana ∶ 𝜎 nilai spread
• 𝜎 =𝑀𝑎𝑥.𝐷𝑖𝑠𝑡𝑎𝑛𝑐𝑒 𝑏𝑒𝑡𝑤𝑒𝑒𝑛 𝑎𝑛𝑦 2 𝑐𝑒𝑛𝑡𝑒𝑟𝑠
𝑛𝑢𝑚𝑏𝑒𝑟 𝑜𝑓 𝑐𝑒𝑛𝑡𝑒𝑟𝑠=
𝑑𝑚𝑎𝑥
𝑚1
• Nilai spread menentukan bagaimana data tersebar. Jika nilaispread makin besar, sensitivitas antar data semakinberkurang.
• Centers adalah pusat cluster data
Hubungan nilai spread dg grafiknya padafungsi Gaussian
nilai spread makinbesar, sensitivitas antardata semakinberkurang.
Fungsi Aktivasi selain Fungsi Gaussian
• Multi-Quadric Functions
∅ 𝑟 = (𝑟2 + 𝜎2)1/2 parameter >0
• Generalized Multi-Quadric Functions
∅ 𝑟 = 𝑟2 + 𝜎2 𝛽 parameter >0, 1>>0
• Inverse Multi-Quadric Functions∅ 𝑟 = 𝑟2 + 𝜎2 −1/2 𝑝𝑎𝑟𝑎𝑚𝑒𝑡𝑒𝑟 𝜎 > 0
• Generalized Inverse Multi-Quadric Functions∅ 𝑟 = 𝑟2 + 𝜎2 −𝛼 𝑃𝑎𝑟𝑎𝑚𝑒𝑡𝑒𝑟 𝜎 > 0, 1 > 𝛼 > 0
• Thin Plate Spline Function∅ 𝑟 = 𝑟2 ln 𝑟
• Cubic Function∅ 𝑟 = 𝑟3
• 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
Algoritma Pelatihan Jaringan
• Berguna atau tidaknya suatu JST ditentukan dari hasil pelatihan(bobot neuron-nya)
• RBFN mempunyai algoritma pelatihan yang agak unik, karena terdiridari cara Supervised dan unsupervised sekaligus.
• Pelatihan RBFN terdiri dari 2 tahap, yaitu :1. Tahap Clustering Data
2. Pembaharuan Bobot
Tahap 1 : Clustering Data
• Data di cluster / dikelompokkan berdasarkan kedekatan tertentu(misalnya kedekatan 2 warna pixel, kedekatan jarak 2 titik, dll)
• Penentuan cluster akan memunculkan center / pusat cluster darikelompok data
• Jumlah cluster menentukan jumlah hidden unit yg dipakai
• Cara menentukan center ada 2, yaitu :1. Menentukan center secara acak dari sekelompok data (paling mudah)2. 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
Tahap 2 : Pembaharuan Bobot
• JST menyimpan pengetahuannya dalam bobot neuron-neuronnya.
• Bobot diperbaharui melalui serangkaian perhitungan.
• Dibutuhkan data training dan target (supervised)
Langkah2 Tahap 2
• Meneruskan sinyal input ke hidden & menghitung nilai aktivasi padatiap hidden layer
𝜑 𝑋𝑚 − 𝑡𝑗 = 𝑒𝑋𝑚−𝑡𝑗𝜎2
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
Langkah2 Tahap 2
• Menyusun matriks Gaussian dari hasil perhitungan langkah 1
• 𝐺 =
𝜑11 𝜑12 … .𝜑21 𝜑22 … .… . … . … .
𝜑1𝑐𝜑2𝑐… .
𝜑𝑚1 𝜑𝑚2 … . 𝜑𝑚𝑐• Dimana : m vector input ke-m
c hidden unit ke-c
• Menghitung bobot baru (w) dengan mengalikan pseudoinvers darimatrik G, dengan vector target (d) dari data training.
Rumus : W = G+d
= (GTG)-1 GTd
• Menghitung nilai output JST :
𝑦 𝑥 = 𝑡=1𝑤𝐺 𝑥 − 𝑡𝑡 + 𝑏
Dimana b nilai bobot bias
G(x) pada rumus ini artinya sama dengan (x)
Langkah2 Tahap 2
Pusat Cluster
Center of cluster