MATLAB er en industri - standard programvare pakke for analyse av en rekke tekniske og vitenskapelige data . En underliggende målet for mange analytiske metodene er å gjenkjenne mønstre i de underliggende data . Ofte innebærer dette å dele data i forskjellige grupper eller klynger . En hyppig brukt clustering algoritmen er uklar c - midler clustering , utviklet av Dunn i 1973 og forbedret av Bezdek i 1981 . Oversikt
fuzzy c - midler clustering , eller FCM , kan datapunkter tilhøre mer enn én klynge . En iterativ algoritme minimerer en objektiv funksjon for å finne den optimale klynge medlemskap for hvert punkt i dataene blir gruppert . Iterasjon av clustering algoritmen vil stoppe når mål-funksjonen når et minimums-eller saddle punkt. FCM kan kombineres med andre søke algoritmer for å sikre et optimalt resultat
målfunksjonen
FCM målfunksjonen J_m er lik: .
< P > sum ( i = 1 ... N) [ sum ( j = 1 ... C ) [ u_ij ^ m norm ( x_i - c_j ) ^ 2 ] ]
målfunksjonen anses enn realverdier av m mellom 1 og positiv uendelig . Verdien u_ij er medlemskap i datapunkt x_i i jth klyngen , sentrert på c_j
algoritme
FCM optimaliseringsalgoritme har fire trinn. :
en . Initialiser matrise U_0 = [ u_ij ] .2 . Beregn klyngen sentre C_k = [ c_j ] fra U_k , der k er et helt tall iterasjon av algorithm.3 . Update U_ (k +1 ) fra den nye C_k.4 . Beregne verdien av J_k . Hvis den nye stopp forårsaket J_k å øke, stoppe, ellers tilbake til trinn 2. .
MATLAB Bruk
MATLAB implementerer fuzzy c - midler clustering i FCM ( )-funksjonen . The Fuzzy Logic verktøykasse er nødvendig for bruk av FCM ( )-funksjonen . Den ringer syntaks er : en
[ sentre , U , objFun ] = fcm ( my_data , n_clusters ) ;
my_data variabelen er inndata, hvor hver rad representerer et datapunkt . Den n_clusters variabelen er antall klaser for å gruppere dataene inn . Den sentra -utgang er matrisen av optimale cluster sentre . U er den optimale fuzzy partisjon eller medlemskap matrise. Den objFun variabelen er den endelige verdien av målfunksjonen .