聚類分析
A+醫學百科 >> 聚類分析 |
聚類分析指將物理或抽象對象的集合分組成為由類似的對象組成的多個類的分析過程。它是一種重要的人類行為。
聚類與分類的不同在於,聚類所要求劃分的類是未知的。
聚類是將數據分類到不同的類或者簇這樣的一個過程,所以同一個簇中的對象有很大的相似性,而不同簇間的對象有很大的相異性。
聚類分析的目標就是在相似的基礎上收集數據來分類。聚類源於很多領域,包括數學,計算機科學,統計學,生物學和經濟學。在不同的應用領域,很多聚類技術都得到了發展,這些技術方法被用作描述數據,衡量不同數據源間的相似性,以及把數據源分類到不同的簇中。
從統計學的觀點看,聚類分析是通過數據建模簡化數據的一種方法。傳統的統計聚類分析方法包括系統聚類法、分解法、加入法、動態聚類法、有序樣品聚類、有重疊聚類和模糊聚類等。採用k-均值、k-中心點等演算法的聚類分析工具已被加入到許多著名的統計分析軟體包中,如SPSS、SAS等。
從機器學習的角度講,簇相當於隱藏模式。聚類是搜索簇的無監督學習過程。與分類不同,無監督學習不依賴預先定義的類或帶類標記的訓練實例,需要由聚類學習演算法自動確定標記,而分類學習的實例或數據對象有類別標記。聚類是觀察式學習,而不是示例式的學習。
從實際應用的角度看,聚類分析是數據挖掘的主要任務之一。而且聚類能夠作為一個獨立的工具獲得數據的分布狀況,觀察每一簇數據的特徵,集中對特定的聚簇集合作進一步地分析。聚類分析還可以作為其他演算法(如分類和定性歸納演算法)的預處理步驟。
目錄 |
主要應用
在商業上
聚類分析被用來發現不同的客戶群,並且通過購買模式刻畫不同的客戶群的特徵。
聚類分析是細分市場的有效工具,同時也可用於研究消費者行為,尋找新的潛在市場、選擇實驗的市場,並作為多元分析的預處理。
在生物上
聚類分析被用來動植物分類和對基因進行分類,獲取對種群固有結構的認識
在地理上
聚類能夠幫助在地球中被觀察的資料庫商趨於的相似性
在保險行業上
聚類分析通過一個高的平均消費來鑒定汽車保險單持有者的分組,同時根據住宅類型,價值,地理位置來鑒定一個城市的房產分組
在網際網路應用上
聚類分析被用來在網上進行文檔歸類來修複信息
在電子商務上
聚類分析在電子商務中網站建設數據挖掘中也是很重要的一個方面,通過分組聚類出具有相似瀏覽行為的客戶,並分析客戶的共同特徵,可以更好的幫助電子商務的用戶了解自己的客戶,向客戶提供更合適的服務。
主要步驟
1. 數據預處理,
2. 為衡量數據點間的相似度定義一個距離函數,
3. 聚類或分組,
4. 評估輸出。
數據預處理包括選擇數量,類型和特徵的標度,它依靠特徵選擇和特徵抽取,特徵選擇選擇重要的特徵,特徵抽取把輸入的特徵轉化為一個的顯著特徵,它們經常被用來獲取一個合適的特徵集來為避免「維數災」進行聚類,數據預處理還包括將孤立點移出數據,孤立點是不依附於一般數據行為或模型的數據,因此孤立點經常會導致有偏差的聚類結果,因此為了得到正確的聚類,我們必須將它們剔除。
既然相類似性是定義一個類的基礎,那麼不同數據之間在同一個特徵空間相似度的衡量對於聚類步驟是很重要的,由於特徵類型和特徵標度的多樣性,距離度量必須謹慎,它經常依賴於應用,例如,通常通過定義在特徵空間的距離度量來評估不同對象的相異性,很多距離度都應用在一些不同的領域,一個簡單的距離度量,如Euclidean距離,經常被用作反映不同數據間的相異性,一些有關相似性的度量,例如PMC和SMC,能夠被用來特徵化不同數據的概念相似性,在圖像聚類上,子圖圖像的誤差更正能夠被用來衡量兩個圖形的相似性。
將數據對象分到不同的類中是一個很重要的步驟,數據基於不同的方法被分到不同的類中,劃分方法和層次方法是聚類分析的兩個主要方法,劃分方法一般從初始劃分和最優化一個聚類標準開始。Crisp Clustering,它的每一個數據都屬於單獨的類;Fuzzy Clustering,它的每個數據可能在任何一個類中,Crisp Clustering和Fuzzy Clusterin是劃分方法的兩個主要技術,劃分方法聚類是基於某個標準產生一個嵌套的劃分系列,它可以度量不同類之間的相似性或一個類的可分離性用來合併和分裂類,其他的聚類方法還包括基於密度的聚類,基於模型的聚類,基於網格的聚類。
評估聚類結果的質量是另一個重要的階段,聚類是一個無管理的程序,也沒有客觀的標準來評價聚類結果,它是通過一個類有效索引來評價,一般來說,幾何性質,包括類間的分離和類內部的耦合,一般都用來評價聚類結果的質量,類有效索引在決定類的數目時經常扮演了一個重要角色,類有效索引的最佳值被期望從真實的類數目中獲取,一個通常的決定類數目的方法是選擇一個特定的類有效索引的最佳值,這個索引能否真實的得出類的數目是判斷該索引是否有效的標準,很多已經存在的標準對於相互分離的類數據集合都能得出很好的結果,但是對於複雜的數據集,卻通常行不通,例如,對於交疊類的集合。
聚類分析演算法
聚類分析是數據挖掘中的一個很活躍的研究領域,並提出了許多聚類演算法。傳統的聚類演算法可以被分為五類:劃分方法、層次方法、基於密度方法、基於網格方法和基於模型方法。
1 劃分方法(PAM:PArtitioning method) 首先創建k個劃分,k為要創建的劃分個數;然後利用一個循環定位技術通過將對象從一個劃分移到另一個劃分來幫助改善劃分質量。典型的劃分方法包括:
k-means,k-medoids,CLARA(Clustering LARge Application),
CLARANS(Clustering Large Application based upon RANdomized Search).
FCM
2 層次方法(hierarchical method) 創建一個層次以分解給定的數據集。該方法可以分為自上而下(分解)和自下而上(合併)兩種操作方式。為彌補分解與合併的不足,層次合
並經常要與其它聚類方法相結合,如循環定位。典型的這類方法包括:
BIRCH(Balanced Iterative Reducing and Clustering using Hierarchies) 方法,它首先利用樹的結構對對象集進行劃分;然後再利用其它聚類方法對這些聚類進行優化。
CURE(Clustering Using REprisentatives) 方法,它利用固定數目代表對象來表示相應聚類;然後對各聚類按照指定量(向聚類中心)進行收縮。
ROCK方法,它利用聚類間的連接進行聚類合併。
CHEMALOEN方法,它則是在層次聚類時構造動態模型。
3 基於密度的方法,根據密度完成對象的聚類。它根據對象周圍的密度(如DBSCAN)不斷增長聚類。典型的基於密度方法包括:
DBSCAN(Densit-based Spatial Clustering of Application with Noise):該演算法通過不斷生長足夠高密度區域來進行聚類;它能從含有噪聲的空間資料庫中發現任意形狀的聚類。此方法將一個聚類定義為一組「密度連接」的點集。
OPTICS(Ordering Points To Identify the Clustering Structure):並不明確產生一個聚類,而是為自動交互的聚類分析計算出一個增強聚類順序。。
4 基於網格的方法,首先將對象空間劃分為有限個單元以構成網格結構;然後利用網格結構完成聚類。
STING(STatistical INformation Grid) 就是一個利用網格單元保存的統計信息進行基於網格聚類的方法。
CLIQUE(Clustering In QUEst)和Wave-Cluster 則是一個將基於網格與基於密度相結合的方法。
5 基於模型的方法,它假設每個聚類的模型並發現適合相應模型的數據。典型的基於模型方法包括:
統計方法COBWEB:是一個常用的且簡單的增量式概念聚類方法。它的輸入對象是採用符號量(屬性-值)對來加以描述的。採用分類樹的形式來創建一個層次聚類。
CLASSIT是COBWEB的另一個版本.。它可以對連續取值屬性進行增量式聚類。它為每個結點中的每個屬性保存相應的連續常態分佈(均值與方差);並利用一個改進的分類能力描述方法,即不象COBWEB那樣計算離散屬性(取值)和而是對連續屬性求積分。但是CLASSIT方法也存在與COBWEB類似的問題。因此它們都不適合對大資料庫進行聚類處理.
傳統的聚類演算法已經比較成功的解決了低維數據的聚類問題。但是由於實際應用中數據的複雜性,在處理許多問題時,現有的演算法經常失效,特別是對於高維數據和大型數據的情況。因為傳統聚類方法在高維數據集中進行聚類時,主要遇到兩個問題。①高維數據集中存在大量無關的屬性使得在所有維中存在簇的可能性幾乎為零;②高維空間中數據較低維空間中數據分布要稀疏,其中數據間距離幾乎相等是普遍現象,而傳統聚類方法是基於距離進行聚類的,因此在高維空間中無法基於距離來構建簇。
高維聚類分析已成為聚類分析的一個重要研究方向。同時高維數據聚類也是聚類技術的難點。隨著技術的進步使得數據收集變得越來越容易,導致資料庫規模越來越大、複雜性越來越高,如各種類型的貿易交易數據、Web 文檔、基因表達數據等,它們的維度(屬性)通常可以達到成百上千維,甚至更高。但是,受「維度效應」的影響,許多在低維數據空間表現良好的聚類方法運用在高維空間上往往無法獲得好的聚類效果。高維數據聚類分析是聚類分析中一個非常活躍的領域,同時它也是一個具有挑戰性的工作。目前,高維數據聚類分析在市場分析、信息安全、金融、娛樂、反恐等方面都有很廣泛的應用。
關於「聚類分析」的留言: | 訂閱討論RSS |
目前暫無留言 | |
添加留言 |