BAB 7 FUZZY

 FUZZY CLUSTERING

[KEMBALI KE MENU SEBELUMNYA]


1. Fuzzy Clustering [BACK]

Fuzzy clustering digunakan untuk mengelompokkan data input-output ke dalam beberapa grup atau cluster berdasarkan karakteristiknya.

Fuzzy clustering dilatarbelakangi oleh Curse of Dimensionality yaitu masalah yang timbul ketika jumlah variabel input dalam FIS meningkat, menyebabkan jumlah aturan yang harus dibuat juga meningkat secara eksponensial.

Tujuan dari penggunaan fuzzy clustering adalah untuk membantu dalam pembangunan FIS tipe Sugeno yang terbaik dengan jumlah aturan minimum. FIS tipe Sugeno merupakan jenis FIS yang menggunakan model linier untuk menghubungkan variabel input dengan variabel output.

Dalam fuzzy clustering, setiap rule dalam FIS akan diasosiasikan dengan suatu cluster data. Ini berarti setiap cluster akan diwakili oleh satu atau beberapa rule dalam FIS.

2. Fuzzy C-Means [BACK]

Fuzzy C-Means (FCM) adalah salah satu teknik dalam fuzzy clustering. Dalam FCM, setiap titik data dikelompokkan dalam suatu cluster dengan derajat keanggotaan tertentu.

Fungsi FCM diimplementasikan dalam MATLAB untuk melakukan pengelompokan data dengan FCM. Proses pengelompokan dimulai dengan inisialisasi pusat-pusat cluster.

Tiap titik data diberikan derajat keanggotaan terhadap cluster berdasarkan tebakan awal pusat cluster. Secara iteratif, pusat-pusat cluster dan derajat keanggotaan titik data diperbaharui untuk mendekati pusat-pusat cluster yang benar.

Fungsi kriteria (objective function) digunakan untuk menentukan seberapa dekat jarak suatu pusat cluster terhadap posisi yang benar.

Keluaran dari fungsi FCM berisi daftar pusat cluster dan fungsi keanggotaan untuk tiap data. Hasil dari FCM dapat membantu dalam pembangunan Fuzzy Inference System (FIS) awal sebelum melatih dengan algoritma lain.

Dalam contoh aplikasi, Fuzzy Logic Toolbox digunakan untuk mengilustrasikan penerapan FCM pada data.

Contoh Aplikasi :

load fcmdata.dat

plot(fcmdata(:,1),fcm(:,2),'*')

Plot data ilustrasi aplikasi teknik FCM

Selanjutnya menerapkan fungsi fcm untuk mencari pusat-pusat cluster dengan distribusi data diatas:

[center,U,objFcn] = fcm(fcmdata,2);

Iteration count = 1, obj. fcn = 8.933363

Iteration count = 2, obj. fcn = 6.910409

Iterasi terus dilanjutkan hingga objek tidak lagi mengecil, dan untuk menampilkan plot digunakan perintah 

plot(objFcn) 

maka akan diperlihatkan seperti gambar berikut :

Propagasi Objective Function

Variabel center akan berisi dua pusat cluster:

    u             berisi derajat keanggotaan tiap data pada masing-masing cluster

    objFcn    berisi nilai fungsi obyektif tiap iterasi.

Selanjutnya untuk menampilkan hasil clustering dengan fcm menggunakan listing berikut dan hasil plot ditampilkan pada gambar 3. 

maxU = max(U);

index1 = find(U(1, :) == maxU);

index2 = find(U(2, :) == maxU);

line(fcmdata(index1, 1), fcmdata(index1, 2), 'linestyle',...

'none','marker', 'o','color','g');

line(fcmdata(index2,1),fcmdata(index2,2),'linestyle',...

'none','marker', 'x','color','r');

hold on

plot(center(1,1),center(1,2),'ko','markersize',15,'LineWidth',2)

plot(center(2,1),center(2,2),'kx','markersize',15,'LineWidth',2)

Hasil clustering dengan fcm

3. Subtractive Clustering  [BACK]

Subtractive Clustering adalah salah satu teknik dalam fuzzy clustering yang cocok digunakan ketika jumlah cluster tidak diketahui sebelumnya.

  • Fungsi genfis2 dalam Fuzzy Logic Toolbox dapat digunakan untuk mengimplementasikan Subtractive Clustering.
  • Fungsi genfis2 memiliki algoritma (single pass) yang cepat dalam menentukan jumlah cluster dan pusat-pusatnya.

a. Contoh Aplikasi

Untuk mengilustrasikan aplikasi teknik subtractive clustering, dapat menggunakan data  file tripdata.m 

Plot data dari file tripdata.m ; input (diatas), output (dibawah)

Sebelum melatih dengan ANFIS, dilakukan pembentukan FIS awal menggunakan fungsi genfis2 dengan memberikan nilai radius klaster. Radius ini menentukan ukuran area klaster.

Setelah pembentukan FIS awal, dilakukan evaluasi dengan data pemeriksaan (testing data) dan menghitung RMSE sebagai metrik evaluasi.

FIS awal dilatih menggunakan ANFIS dengan jumlah epoch tertentu. Proses pelatihan dilakukan tanpa menggunakan data pemeriksaan. Evaluasi dan perbandingan performansi FIS hasil pelatihan juga dilakukan dengan data pemeriksaan. 

Setelah training, diperoleh FIS sgnfis2 yang lebih baik performasi, yang dapat dilihat pada gambar dibawah :

FIS akhir sgnis2 hasil training dengan anfis

b. Analisis Overfiting

Overfitting terjadi ketika proses training memaksa FIS untuk "menghafal" data pelatihan dengan sangat baik, sehingga FIS menjadi khusus untuk data pelatihan dan kurang mampu menggeneralisasi data baru yang belum pernah dilihat sebelumnya.

Langkah-langkah analisis overfitting yang dilakukan adalah sebagai berikut:

1. Training FIS dengan Lebih Banyak Epoch:

Pertama, dilakukan pelatihan FIS sgnfis dengan ANFIS hingga 200 epoch. Dalam proses ini, dicatat nilai error (RMSE) pada setiap epoch terhadap data pelatihan (training error) dan data pemeriksaan (checking error).

2. Plot Training Error dan Checking Error:

Kemudian, dilakukan plot antara training error dan checking error terhadap jumlah epoch.

3. Pemilihan Epoch Terbaik:

Indeks epoch ditemukan dengan mencari posisi checking error minimum dalam data.

Dari plot pada gambar dibawah, Nilai training error pada epoch 52 ditandai dengan 'x'.

Overfitting anfis

c. Clustering Tool

Fuzzy Logic Toolbox dalam dua mode, yaitu command lines dan mode GUI.

  • Mode Command Lines: Dalam mode ini, terdapat dua fungsi utama untuk melakukan klasterisasi, yaitu fcm dan subclust.
  • Mode GUI (Clustering GUI Tool): Dalam mode GUI ini, terdapat alat bantu klasterisasi dengan antarmuka grafis yang disebut Clustering GUI Tool.

GUI ini dapat dipanggil dengan perintah findcluster.

Clustering GUI

4. Video  [BACK]


5. File Download  [BACK]

  • Materi HTML (click here)
  • File Matlab (click here)




  • Tidak ada komentar:

    Posting Komentar

    Bahan Presentasi Untuk Matakuliah Sistem Digital 2023 OLEH: Fadhila Amanda 2110952031 Dosen Pengampu: Dr. Darwison,MT Referensi: a. Anil K. ...