Algoritma Fuzzy C-Means

Embed Size (px)

Citation preview

  • 8/13/2019 Algoritma Fuzzy C-Means

    1/4

    Algori tma Fuzzy C-Means

    1Kusrini,

    2Emha Taufiq Luthfi

    1Jurusan Sistem Informasi,

    2Jurusan Teknik Informatika

    1, 2STMIK AMIKOM Yogykakarta

    1,2Jl. Ringroad Utara Condong Catur Sleman Yogyakarta

    Analisis kluster atau clustering merupakan proses membagi data dalam suatu himpunanke dalam beberapa kelompok yang mana kesamaan data dalam suatu kelompok lebihbesar dibandingkan kesamaan data tersebut dengan data dalam kelompok lain (Jang,Sun, dan Mizutani, 2004).

    Potensi dari clustering adalah dapat digunakan untuk mengetahui struktur dalam datayang dapat digunakan lebih lanjut dalam berbagai aplikasi secara luas seperti klasifikasi,pengolahan gambar, pengenalan pola.

    Clustering dapat diterapkan ke dalam data yang kuantitatif (numerik), kualitatif(kategorikal) atau kombinasi dari keduanya. Data dapat merupakan hasil pengamatandari suatu proses. Setiap pengamatan dapat memiliki n variabel pengukuran, dandikelompokan dalam n dimensi vektor . Sebuah himpunan

    dari N pengamatan di notasikan dengan dan direpresentasikan

    sebagai matriks n x N :

    Dalam terminologi pengenalan pola, kolom dalam matrik disebut dengan patternsatauobjects, baris disebut dengan featuresatau attribute, dan Z disebut dengan patternataudata matrix. Arti dari kolom dan baris dalam Z bergantung pada konteks. Dalamdiagnosis medik, sederhananya, kolom Z dapat direpresentasikan sebagai pasien, danbaris merupakan symptomsatau pemeriksaan pasien untuk pasien bersangkutan.Cluster secara umum merupakan wujud himpunan bagian dari suatu himpunan data,dan metode clustering dapat diklasifikasikan berdasarkan himpunan bagian yangdihasilkan apakah fuzzyatau crisp(hard).

    Metode hard clustering merupakan model yang berdasar pada teori himpunan klasik,yang mana suatu obyek menjadi anggota atau tidak menjadi anggota secara penuh ke

    dalam suatu kelompok. Hard clustering membagi data ke dalam sejumlah himpunanbagian secara ekslusif.

    Sebaliknya, metode Fuzzy clustering mengijinkan obyek untuk menjadi bagian daribeberapa kelompok secara bersamaan dengan perbedaan level keanggotaan.

    Sebagai contoh dalam hard clustering, misal himpunan data Z = {z1, z2, z3, , z10} di jikadibagi menjadi 2 kelompok maka himpunan U yang merupakan matriks partisi yangmenunjukan level keanggotaan elemen himpunan Z dalam kelompok A1 atau A2akanberwujud sebagai berikut :

  • 8/13/2019 Algoritma Fuzzy C-Means

    2/4

    Baris atas matriks partisi U menunjukan level keanggotaan elemen himpunan Z dalamA1 dan baris bawah menunjukan level keanggotaan elemen himpunan Z dalam A2.Tampak bahwa setiap elemen himpunan Z secara khusus atau penuh akan menjadianggota kelompok (A1atau A2) dengan level keanggotaan 1. Dan tidak menjadi anggotadalam suatu kelompok dengan level keanggotaan 0. x

    1, x

    2, x

    3, x

    4, x

    5 dan x

    6 secara

    khusus merupakan anggota dari A2, x7, x8, x9dan x10secara khusus merupakan anggotadari kelompok A2.

    Sementara itu dalam fuzzy clustering level keanggotaan data dalam suatu kelompokbukan hanya 0 dan 1 akan tetapi dapat memiliki nilai antara interval [0,1].

    Baris ke i dalam matriks partisi mengandung level keanggotaan I terhadap Ai. Nilai level

    keanggotaan dalam setiap kolom matriks partisi yang berarti nilai keanggotaan datadalam setiap kelompok akan selalu berjumlah 1.

    Sebagai contoh : himpunan Z = {z1, z2, z3, , z10}. Dalam pembagian samar jikahimpunan Z dibagi menjadi 2 kelompok Z1 dan Z2, maka matriks partisi U dapatdituliskan seperti berikut :

    Baris atas matriks partisi U menunjukan level keanggotaan elemen himpunan Z dalam

    A1 dan baris bawah menunjukan level keanggotaan elemen himpunan Z dalam A2.Dalam hard clustering ini tampak bahwa setiap elemen himpunan Z dapat menjadianggota kelompok (A1atau A2) dengan level keanggotaan antara 0 sampai dengan 1. x1,x2, x3, x4 menjadi anggota A1 dengan level keanggotaan 1.0 dan menjadi anggota A2dengan level keanggotaan 0 sedangkan x5 menjadi anggota A1 dengan levelkeanggotaan 0.7 dan menjadi anggota A2dengan level keanggotaan 0.3 dan seterusnya.

    Terdapat banyak algoritma yang digunakan untuk clustering, salah satunya Fuzzy C-Means (FCM). Fuzzy C-Means Clustering (FCM) merupakan algoritma clustering datayang mana setiap data menjadi anggota dari suatu kluster dengan derajat didefinisikandengan level keangggotaan (Jang, Sun, dan Mizutani, 2004).

    Algoritma FCM didasar pada minimasi fungsi objektif yang diformulasikan dalampersamaan :

    Dengan :

    merupakan level keanggotaan dari dalam cluster j

    merupakan nilai data ke i dari d-dimensi data

    merupakan nilai ke j dari d-dimensi cluster center

  • 8/13/2019 Algoritma Fuzzy C-Means

    3/4

    merupakan sembarang bilangan real lebih besar dari 1

    Selanjutnya algoritma FCM disusun dengan langkah sebagai berikut :Langkah1 : Tentukan himpunan data Z, tentukan jumlah cluster yang diharapkan 1 < c

    < N, nilai pembobot m > 1, toleransi penghentian > 0.Langkah 2 : Inisialisasi matriks partisi secara acak, .

    Ulangi untuk l = 3, 4, 5

    Langkah 3 : Hitung cluster center (means):

    Langkah 4 : hitung jarak :

    Langkah 5 : Perbaharui matriks partisi :Untuk 1k NJika untuk semua i=1,2, , c

    Atau dengan kata lain

    Ulangi sampai

    Contoh :Diberikan data sebagai berikut

    Akan dilaksanakan fuzzy clusteringdengan FCM.Langkah 1 :

    - Jumlah cluster yang diharapkan c = 3

    - Nilai pembobot m = 3- Toleransi penghentian = 1.10-6.

    - Maksimum iterasi = 100

  • 8/13/2019 Algoritma Fuzzy C-Means

    4/4

    Langkah 2 inisialisasi matriks partisi awal secara acak :

    Iterasi 1 :Langkah 3 Hitung cluster center (means) :

    Langkah 4 dan 5 Hitung jarak dan perbaharui matriks partisi. Didapatkan matriks partisibaru sebagai berikut :

    = 31.154( > )

    Iterasi 2 :Langkah 3 Hitung cluster center (means) :

    Langkah 4 dan 5 Hitung jarak dan perbaharui matriks partisi. Didapatkan matriks partisibaru sebagai berikut :

    = 0.05( > )

    Dan seterusnya, perhitungan akan dilaksanakan hingga terpenuhi.

    Atau maksimum iterasi tercapai.

    Contoh implementasi algoritma Fuzzy C-Means dibahas dalam buku Algoritma DataMining

    Daftar Pustaka

    Jang, JSR; Sun, CT dan Mizutani, E. 2004. Neuro-Fuzzy and Soft Computing.Singapore. Pearson Education

    Kusrini dan Luthfi, E. T., 2009,Algoritma Data Mining, Andi Offset, Yogyakarta