什么是聚類分析
聚類分析指將物理或抽象對象的集合分組成為由類似的對象組成的多個類的分析過程。它是一種重要的人類行為。
聚類與分類的不同在于,聚類所要求劃分的類是未知的。
聚類是將數(shù)據(jù)分類到不同的類或者簇這樣的一個過程,所以同一個簇中的對象有很大的相似性,而不同簇間的對象有很大的相異性。
聚類分析的目標就是在相似的基礎(chǔ)上收集數(shù)據(jù)來分類。聚類源于很多領(lǐng)域,包括數(shù)學,計算機科學,統(tǒng)計學,生物學和經(jīng)濟學。在不同的應用領(lǐng)域,很多聚類技術(shù)都得到了發(fā)展,這些技術(shù)方法被用作描述數(shù)據(jù),衡量不同數(shù)據(jù)源間的相似性,以及把數(shù)據(jù)源分類到不同的簇中。
從統(tǒng)計學的觀點看,聚類分析是通過數(shù)據(jù)建模簡化數(shù)據(jù)的一種方法。傳統(tǒng)的統(tǒng)計聚類分析方法包括系統(tǒng)聚類法、分解法、加入法、動態(tài)聚類法、有序樣品聚類、有重疊聚類和模糊聚類等。采用k-均值、k-中心點等算法的聚類分析工具已被加入到許多著名的統(tǒng)計分析軟件包中,如SPSS、SAS等。
從機器學習的角度講,簇相當于隱藏模式。聚類是搜索簇的無監(jiān)督學習過程。與分類不同,無監(jiān)督學習不依賴預先定義的類或帶類標記的訓練實例,需要由聚類學習算法自動確定標記,而分類學習的實例或數(shù)據(jù)對象有類別標記。聚類是觀察式學習,而不是示例式的學習。
從實際應用的角度看,聚類分析是數(shù)據(jù)挖掘的主要任務(wù)之一。而且聚類能夠作為一個獨立的工具獲得數(shù)據(jù)的分布狀況,觀察每一簇數(shù)據(jù)的特征,集中對特定的聚簇集合作進一步地分析。聚類分析還可以作為其他算法(如分類和定性歸納算法)的預處理步驟。
聚類分析的主要應用
在商業(yè)上
聚類分析被用來發(fā)現(xiàn)不同的客戶群,并且通過購買模式刻畫不同的客戶群的特征。
聚類分析是細分市場的有效工具,同時也可用于研究消費者行為,尋找新的潛在市場、選擇實驗的市場,并作為多元分析的預處理。
在生物上
聚類分析被用來動植物分類和對基因進行分類,獲取對種群固有結(jié)構(gòu)的認識
在地理上
聚類能夠幫助在地球中被觀察的數(shù)據(jù)庫商趨于的相似性
在保險行業(yè)上
聚類分析通過一個高的平均消費來鑒定汽車保險單持有者的分組,同時根據(jù)住宅類型,價值,地理位置來鑒定一個城市的房產(chǎn)分組
在因特網(wǎng)應用上
聚類分析被用來在網(wǎng)上進行文檔歸類來修復信息
在電子商務(wù)上
聚類分析在電子商務(wù)中網(wǎng)站建設(shè)數(shù)據(jù)挖掘中也是很重要的一個方面,通過分組聚類出具有相似瀏覽行為的客戶,并分析客戶的共同特征,可以更好的幫助電子商務(wù)的用戶了解自己的客戶,向客戶提供更合適的服務(wù)。
聚類分析的主要步驟
1.數(shù)據(jù)預處理,
2.為衡量數(shù)據(jù)點間的相似度定義一個距離函數(shù),
3.聚類或分組,
4.評估輸出。
數(shù)據(jù)預處理包括選擇數(shù)量,類型和特征的標度,它依靠特征選擇和特征抽取,特征選擇選擇重要的特征,特征抽取把輸入的特征轉(zhuǎn)化為一個新的顯著特征,它們經(jīng)常被用來獲取一個合適的特征集來為避免“維數(shù)災”進行聚類,數(shù)據(jù)預處理還包括將孤立點移出數(shù)據(jù),孤立點是不依附于一般數(shù)據(jù)行為或模型的數(shù)據(jù),因此孤立點經(jīng)常會導致有偏差的聚類結(jié)果,因此為了得到正確的聚類,我們必須將它們剔除。
既然相類似性是定義一個類的基礎(chǔ),那么不同數(shù)據(jù)之間在同一個特征空間相似度的衡量對于聚類步驟是很重要的,由于特征類型和特征標度的多樣性,距離度量必須謹慎,它經(jīng)常依賴于應用,例如,通常通過定義在特征空間的距離度量來評估不同對象的相異性,很多距離度都應用在一些不同的領(lǐng)域,一個簡單的距離度量,如Euclidean距離,經(jīng)常被用作反映不同數(shù)據(jù)間的相異性,一些有關(guān)相似性的度量,例如PMC和SMC,能夠被用來特征化不同數(shù)據(jù)的概念相似性,在圖像聚類上,子圖圖像的誤差更正能夠被用來衡量兩個圖形的相似性。
將數(shù)據(jù)對象分到不同的類中是一個很重要的步驟,數(shù)據(jù)基于不同的方法被分到不同的類中,劃分方法和層次方法是聚類分析的兩個主要方法,劃分方法一般從初始劃分和最優(yōu)化一個聚類標準開始。CrispClustering,它的每一個數(shù)據(jù)都屬于單獨的類;FuzzyClustering,它的每個數(shù)據(jù)可能在任何一個類中,CrispClustering和FuzzyClusterin是劃分方法的兩個主要技術(shù),劃分方法聚類是基于某個標準產(chǎn)生一個嵌套的劃分系列,它可以度量不同類之間的相似性或一個類的可分離性用來合并和分裂類,其他的聚類方法還包括基于密度的聚類,基于模型的聚類,基于網(wǎng)格的聚類。
評估聚類結(jié)果的質(zhì)量是另一個重要的階段,聚類是一個無管理的程序,也沒有客觀的標準來評價聚類結(jié)果,它是通過一個類有效索引來評價,一般來說,幾何性質(zhì),包括類間的分離和類內(nèi)部的耦合,一般都用來評價聚類結(jié)果的質(zhì)量,類有效索引在決定類的數(shù)目時經(jīng)常扮演了一個重要角色,類有效索引的最佳值被期望從真實的類數(shù)目中獲取,一個通常的決定類數(shù)目的方法是選擇一個特定的類有效索引的最佳值,這個索引能否真實的得出類的數(shù)目是判斷該索引是否有效的標準,很多已經(jīng)存在的標準對于相互分離的類數(shù)據(jù)集合都能得出很好的結(jié)果,但是對于復雜的數(shù)據(jù)集,卻通常行不通,例如,對于交疊類的集合。
聚類分析的算法
聚類分析是數(shù)據(jù)挖掘中的一個很活躍的研究領(lǐng)域,并提出了許多聚類算法。傳統(tǒng)的聚類算法可以被分為五類:劃分方法、層次方法、基于密度方法、基于網(wǎng)格方法和基于模型方法。
1.劃分方法(PAM:PArtitioningmethod)首先創(chuàng)建k個劃分,k為要創(chuàng)建的劃分個數(shù);然后利用一個循環(huán)定位技術(shù)通過將對象從一個劃分移到另一個劃分來幫助改善劃分質(zhì)量。典型的劃分方法包括:
k-means,k-medoids,CLARA(ClusteringLARgeApplication),
CLARANS(ClusteringLargeApplicationbaseduponRANdomizedSearch).
FCM
2.層次方法(hierarchicalmethod)創(chuàng)建一個層次以分解給定的數(shù)據(jù)集。該方法可以分為自上而下(分解)和自下而上(合并)兩種操作方式。為彌補分解與合并的不足,層次合并經(jīng)常要與其它聚類方法相結(jié)合,如循環(huán)定位。典型的這類方法包括:
BIRCH(BalancedIterativeReducingandClusteringusingHierarchies)方法,它首先利用樹的結(jié)構(gòu)對對象集進行劃分;然后再利用其它聚類方法對這些聚類進行優(yōu)化。
CURE(ClusteringUsingREprisentatives)方法,它利用固定數(shù)目代表對象來表示相應聚類;然后對各聚類按照指定量(向聚類中心)進行收縮。
ROCK方法,它利用聚類間的連接進行聚類合并。
CHEMALOEN方法,它則是在層次聚類時構(gòu)造動態(tài)模型。
3.基于密度的方法,根據(jù)密度完成對象的聚類。它根據(jù)對象周圍的密度(如DBSCAN)不斷增長聚類。典型的基于密度方法包括:
DBSCAN(Densit-basedSpatialClusteringofApplicationwithNoise):該算法通過不斷生長足夠高密度區(qū)域來進行聚類;它能從含有噪聲的空間數(shù)據(jù)庫中發(fā)現(xiàn)任意形狀的聚類。此方法將一個聚類定義為一組“密度連接”的點集。
OPTICS(OrderingPointsToIdentifytheClusteringStructure):并不明確產(chǎn)生一個聚類,而是為自動交互的聚類分析計算出一個增強聚類順序。
4.基于網(wǎng)格的方法,首先將對象空間劃分為有限個單元以構(gòu)成網(wǎng)格結(jié)構(gòu);然后利用網(wǎng)格結(jié)構(gòu)完成聚類。
STING(STatisticalINformationGrid)就是一個利用網(wǎng)格單元保存的統(tǒng)計信息進行基于網(wǎng)格聚類的方法。
CLIQUE(ClusteringInQUEst)和Wave-Cluster則是一個將基于網(wǎng)格與基于密度相結(jié)合的方法。
5.基于模型的方法,它假設(shè)每個聚類的模型并發(fā)現(xiàn)適合相應模型的數(shù)據(jù)。典型的基于模型方法包括:
統(tǒng)計方法COBWEB:是一個常用的且簡單的增量式概念聚類方法。它的輸入對象是采用符號量(屬性-值)對來加以描述的。采用分類樹的形式來創(chuàng)建一個層次聚類。
CLASSIT是COBWEB的另一個版本.。它可以對連續(xù)取值屬性進行增量式聚類。它為每個結(jié)點中的每個屬性保存相應的連續(xù)正態(tài)分布(均值與方差);并利用一個改進的分類能力描述方法,即不象COBWEB那樣計算離散屬性(取值)和而是對連續(xù)屬性求積分。但是CLASSIT方法也存在與COBWEB類似的問題。因此它們都不適合對大數(shù)據(jù)庫進行聚類處理.
傳統(tǒng)的聚類算法已經(jīng)比較成功的解決了低維數(shù)據(jù)的聚類問題。但是由于實際應用中數(shù)據(jù)的復雜性,在處理許多問題時,現(xiàn)有的算法經(jīng)常失效,特別是對于高維數(shù)據(jù)和大型數(shù)據(jù)的情況。因為傳統(tǒng)聚類方法在高維數(shù)據(jù)集中進行聚類時,主要遇到兩個問題。①高維數(shù)據(jù)集中存在大量無關(guān)的屬性使得在所有維中存在簇的可能性幾乎為零;②高維空間中數(shù)據(jù)較低維空間中數(shù)據(jù)分布要稀疏,其中數(shù)據(jù)間距離幾乎相等是普遍現(xiàn)象,而傳統(tǒng)聚類方法是基于距離進行聚類的,因此在高維空間中無法基于距離來構(gòu)建簇。
高維聚類分析已成為聚類分析的一個重要研究方向。同時高維數(shù)據(jù)聚類也是聚類技術(shù)的難點。隨著技術(shù)的進步使得數(shù)據(jù)收集變得越來越容易,導致數(shù)據(jù)庫規(guī)模越來越大、復雜性越來越高,如各種類型的貿(mào)易交易數(shù)據(jù)、Web文檔、基因表達數(shù)據(jù)等,它們的維度(屬性)通常可以達到成百上千維,甚至更高。但是,受“維度效應”的影響,許多在低維數(shù)據(jù)空間表現(xiàn)良好的聚類方法運用在高維空間上往往無法獲得好的聚類效果。高維數(shù)據(jù)聚類分析是聚類分析中一個非常活躍的領(lǐng)域,同時它也是一個具有挑戰(zhàn)性的工作。目前,高維數(shù)據(jù)聚類分析在市場分析、信息安全、金融、娛樂、反恐等方面都有很廣泛的應用。