一種聚類中心快速確定的數據聚類方法
【專利摘要】一種聚類中心快速確定的聚類方法,包括以下步驟:1)讀取原始數據集,通過占優分析選取相應的距離計算方法,求出整個數據集的距離矩陣;2)快速確定聚類中心;3)最優dc的選取,過程如下:3.1找出相似度距離矩陣中的最大值dmax和最小值dmin,通過設定percent的值來計算出當前的dc值;3.2當dc被選定并得到聚類結果后,設計Fitness函數作為評價指標;3.3采用爬山算法選取最優dc;3.4輸出最優dc以及最優dc時的聚類結果。本發明具有較高準確率、不同數據集聚類效果差異性較小和參數依賴性較小。
【專利說明】
一種聚類中心快速確定的數據聚類方法
技術領域
[0001] 本發明屬于數據分析技術,尤其涉及一種數據聚類方法。
【背景技術】
[0002] 大數據技術的發展,隨之產生的數據量高速增加,聚類分析作為對各種數據的分 析的重要技術再次成為研究熱點。聚類分析在金融、市場營銷、信息檢索、信息過濾、科學觀 測與工程等各個領域廣泛應用。傳統的聚類算法包括:基于劃分的算法、基于層次的算法、 基于密度的算法等。
[0003] 基于劃分的算法有k-means算法和PAM算法。其中k-means算法的相似度計算是根 據一個簇中對象的平均值來進行。該算法的目標是根據輸入參數k,將數據集劃分成k個簇。 算法采用迭代更新的方法:在每一輪中,依據k個參照點將其周圍的點分別組成k個簇,而每 個簇的質心將被作為下一輪迭代的參照點。迭代使得選取的參照點越來越接近真實的簇質 心,所以聚類效果越來越好。PAM算法對所有的對象進行分析,把每個類中的一個對象看作 中心點。對各種可能的組合,估算聚類結果的質量。PAM方法在小數據集上可以工作的很好, 但是對于大數據集合處理效果并不理想。
[0004] 基于層次的算法如BIRCH算法、CURE算法、ROCK算法等。BIRCH聚類算法是一個綜合 的層次聚類方法。它首先將數據集以一種緊湊的壓縮格式存放,然后直接在壓縮的數據集 (而不是原始的數據集)上進行聚類,其I/O成本與數據集的大小呈線性關系。BIRCH特別適 合大數據集,且支持增量聚類或動態聚類。算法掃描數據集一遍就可生成較好的聚類,增加 掃描次數可用來進一步改進聚類質量。實驗顯示該算法具有對對象數目的線性伸縮性,及 較好的聚類質量。但是如果簇不是球形的,BIRCH就不能很好地工作,因為它用了半徑或直 徑的概念來控制聚類的邊界。CURE算法采用了一種新穎的分層聚類算法,該算法選擇基于 質心和基于代表對象方法之間的中間策略。它不是用單個質心或對象來代表一個簇,而是 選擇數據空間中多個具有代表性的點(代表點)來表示一個簇,并以一個收縮因子使它們向 簇中心收縮,因而可以識別非球形及規模相差較大的簇,并有效抑制孤立點。
[0005] 基于密度的算法有DBSCAN算法和PTICS算法。DBSCAN算法是基于密度聚類方法中 的一個典型,它通過引入密度可達的概念,將大于某一密度的點定義為核心點。相鄰核心點 相互直接可達,所有相互可達的點形成一個聚類,而不屬于任一類的點視為噪聲數據。 DBSCAN算法不進行任何的預處理而直接對整個數據集進行聚類操作。當數據量非常大時, 就必須有大量內存支持,I/O消耗也非常大。其時間復雜度較高,聚類過程的大部分時間用 在區域查詢操作上。DBSCAN算法對參數Eps及Minpts非常敏感,且這兩個參數很難確定。 OPTICS算法是DBSCAN算法的一個擴展,它并不明確產生一個數據集的聚類,而是生成代表 基于密度的聚類結構的一個參數化的數據庫的排序。它包含的信息,等同于從一個寬廣的 參數設置范圍所獲得的基于密度的聚類,并且是自動聚類分析與交互聚類分析的基礎。聚 類的結果可以用圖或者其他可視化技術來表示。
【發明內容】
[0006] 針對現有的數據聚類方法存在的聚類中心需要人工確定、聚類準確率低、不同數 據集聚類效果差異性大和參數依賴性大的不足,本發明提出了一種基于密度的聚類中心快 速確定、具有較高準確率、不同數據集聚類效果差異性較小和參數依賴性較小的聚類中心 快速確定的數據聚類方法。
[0007] 本發明解決其技術問題所采用的技術方案是:
[0008] -種聚類中心快速確定的聚類方法,所述聚類方法包括以下步驟:
[0009] 1)讀取原始數據集,對數據集進行占優分析,通過占優分析選取相應的距離計算 方法,使用該種距離計算方法求出整個數據集的距離矩陣,過程如下:
[0010] 1.1若輸入的數據集有P維數值屬性的數據和q維分類屬性的數據,則通過比較P和 q的大小,將數據集分成數值占優型數據集和分類占優型數據集;
[0011] 1.2根據占優分析得到的結果,采用相應的距離計算公式對該數據集進行計算,得 到數據集的相似度距離矩陣;
[0012] 2)快速確定聚類中心,過程如下:
[0013] 2.1對于任意數據點i,通過公式Pi = Ef (dij-dc)和式51=111;[11((^)(0」^^)計算出 該數據點對象的口:和^,再根據公式γ 算出數據點的γ 1;
[0014] 2.2根據每個數據點的γ值做出關于γ的密度分布圖,計算出γ的樣本均值和樣 本方差,采用矩估計的方法得到數據集有關γ值整體分布的均值μ和方差σ2;
[0015] 2.3做出服從均值為μ,方差為σ2的正態分布曲線,用該曲線擬合γ的概率密度曲 線,并根據正態分布的5〇原則劃定置信區間;
[0016] 2.4根據劃定的置信區間篩選出落于置信區間外的奇異點,對這些點的P和δ進行 歸一化處理,得到ρ?Ρδ'設置參數k,若對于奇異點i,存在f < fc g < fc,則將該奇異點 選為聚類中心點;
[0017] 2.5根據求得的聚類中心點,采用將數據點i與密度高于它且離它最近的數據點歸 于一類的方法,將所有的數據點進行聚類劃分,最終得到聚類結果;
[0018] 3)最優dc的選取,過程如下:
[0019] 3.1找出相似度距1?矩陣中的最大值dmax和最小值dmin,米用公式dc = dmin+(dmax- dmin)*percent/100,通過設定percent的值來計算出當前的dc值;
[0020] 3.2當dc被選定并得到聚類結果后,為比較對于不同dc時聚類效果的好壞,設計 Fitness函數作為評價指標;
[0021] Fitness由兩部分組成:
[0024] 其中,m表示簇的個數,CdPCj表示第i個和第j個簇的聚類中心,I Cj I表示該簇的數 據對象個數;
[0022]
[0023]
[0025] Fitnessl代表了全局的平均簇內距離,Fitness2則代表全局的平均簇間距離,根 據聚類效果好壞的最本質定義:簇內距離越小越好,簇間距離越大越好,令
[0026]
[0027 ] 對于一個給定的dc,F i tne s s函數值越大,則說明聚類效果越好;
[0028] 3.3采用爬山算法選取最優dc,設定percent的初始值和迭代次數,對當前的 percent值進行3.1~3.2的操作,通過比較不同percent下的Fitness函數值來對當前的 percent值進行更新,若滿足迭代次數,則跳至3.4 [0029] 3.4輸出最優dc以及最優dc時的聚類結果。
[0030] 進一步,所述步驟2.2中,對于μ和σ的計算作如下調整:
[0031] 先求出樣本均值巧,為修正因數據缺失對μ和σ求取的偏差,引入參數η,設定閾值 π3^,對于任意一個數據點i,若其值γ ,大于閾值,則將該數據點從以和〇的計算中剔除;
[0032] 對于所有的數據點進行篩選后,對剩余的數據點進行均值和方差的求取,記作^ 和S,再利用矩估計計算出樣本的μ和〇值;
[0033] 根據對稱性原則,在這里令η = 2,即只選取[ΟΡ?區間內的點進行μ和σ的計算。
[0034] 本發明的有益效果主要表現在:能夠處理包含數值型和分類型屬性的數據集,并 且能識別出任意形狀的類簇,采用快速聚類的算法實現聚類中心自動確定,降低了聚類方 法的參數敏感性問題。在真實數據集上的實驗結果表明,該算法具有良好的適用性和可擴 展性,能夠有效的處理相關的數據集,取得較好的聚類效果。
【附圖說明】
[0035]圖1是DataSetl的數據分布圖與P和δ分布圖,其中,左半部分為數據分布圖,右半 部分為數據對象的P和S分布圖。
[0036] 圖2是DataSetl確定聚類中心順序圖,其中,(a)為γ值密度分布圖,(b)為對γ值 擬合后的正態分布曲線;(c)為落于置信區間外的奇異點;(d)為決策圖中的聚類中心。
[0037] 圖3是ccro算法流程圖。
[0038] 圖4是尋找最優dc方法流程圖。
[0039] 圖5是CH-CCFDAC算法流程圖。
【具體實施方式】
[0040]下面結合附圖對本發明作進一步描述。
[0041]參照圖1~圖5,一種聚類中心快速確定的聚類方法,包括以下步驟:
[0042] 1)讀取原始數據集,對數據集進行占優分析,通過占優分析選取相應的距離計算 方法,使用該種距離計算方法求出整個數據集的距離矩陣,過程如下:
[0043] 1.1若輸入的數據集有p維數值屬性的數據和q維分類屬性的數據,則通過比較p和 q的大小,將數據集分成數值占優型數據集和分類占優型數據集。
[0044] 1.2根據占優分析得到的結果,采用相應的距離計算公式對該數據集進行計算,得 到數據集的相似度距離矩陣。
[0045] 2)快速確定聚類中心,過程如下:
[0046] 2.1對于任意數據點i,通過公式Pi = Ef (dij-d。)和式5i=min(dij)(Pj彡Pi)計算出 該數據點對象的口:和^,再根據公式γ 算出數據點的γ 1〇
[0047] 2.2根據每個數據點的γ值做出關于γ的密度分布圖。計算出γ的樣本均值和樣 本方差,采用矩估計的方法得到數據集有關γ值整體分布的均值μ和方差σ 2。
[0048] 2.3做出服從均值為μ,方差為σ2的正態分布曲線,用該曲線擬合γ的概率密度曲 線,并根據正態分布的5 〇原則劃定置信區間。
[0049] 2.4根據劃定的置信區間篩選出落于置信區間外的奇異點,對這些點的P和δ進行 歸一化處理,得到pip#,設置參數k,若對于奇異點i,存_.則將該奇異 點選為聚類中心點。
[0050] 2.5根據求得的聚類中心點,采用將數據點i與密度高于它且離它最近的數據點歸 于一類的方法,將所有的數據點進行聚類劃分,最終得到聚類結果。
[0051] 3)最優dc的選取
[0052] 3.1找出相似度距離矩陣中的最大值dmax和最小值dmin,采用公式d c = dmin+(dmax- dmin)*percent/100,通過設定percent的值來計算出當前的dc值。
[0053] 3.2當dc被選定并得到聚類結果后,為比較對于不同dj寸聚類效果的好壞,我們設 計了一個Fi tnes s函數作為評價指標。
[0054] Fitness由兩部分組成:
[0055]
[0056]
[0057] 其中m表示簇的個數,CdPCj表示第i個和第j個簇的聚類中心,I Cj I表示該簇的數 據對象個數。
[0058] 從上面兩個公式可以看出,Fitnessl代表了全局的平均簇內距離,Fitness2則代
表全局的平均簇間距離。根據聚類效果好壞的最本質定義:簇內距離越小越好,簇間距離越 大越好,4
[0059]
[0000 ]別· ^--個貧疋的dc,Ki tne s s函數值越大,則說明聚類效果越好。
[0061] 3.3采用爬山算法選取最優dc。設定percent的初始值和迭代次數,對當前的 percent值進行3.1~3.2的操作,通過比較不同percent下的Fitness函數值來對當前的 percent值進行更新,若滿足迭代次數,則跳至3.4。
[0062] 3.4輸出最優dc以及最優dc時的聚類結果。
[0063]所述步驟2.2中,對于一個數據集的γ密度分布圖進一步分析,可以發現所有數據 的γ值均為非負。在這一點上說明對于任意數據點i,其γ值的分布并非嚴格的正態分布, 因為在γ值為負的區間內存在數據點的缺失。這將會對μ和〇的計算結果造成較大的影響。 為能夠準確地求取μ和σ,現對于μ和σ的計算作如下調整:
[0064] 先求出樣本均值17,為修正因數據缺失對μ和σ求取的偏差,引入參數η,設定閾值 11^7,對于任意一個數據點i,若其值丫:大于閾值,則將該數據點從μ和σ的計算中剔除。對于 所有的數據點進行篩選后,對剩余的數據點進行均值和方差的求取,記作石和S,再利用矩 估計計算出樣本的μ和σ值。根據對稱性原則,在這里令η = 2,即只選取[0,2巧]區間內的 點進行μ和σ的計算,從而有效地提高了μ值和σ值的準確性。
[0065] CH-CCroAC主要分為相似度距離的計算,快速確定聚類中心的方法和尋找最優dc 三個部分。相似度距離計算中,先根據數據集本身的數據性質將數據集分成分類占優型數 據集和數值占優型數據集,再采用相應的距離公式計算出數據集的相似度距離矩陣。快速 確定聚類中心時,用一條正態分布曲線對數據集γ值的概率密度函數進行擬合,并給定置 信區間找出落于置信區間外的奇異點,再通過設定參數k剔除這些點中P和δ相對值相差過 大的點,最終找出聚類中心并完成對所有數據點的聚類劃分。計算最優dc時,使用爬山算法 對不同的dc值進行迭代,在滿足迭代次數時輸出尋得的最優dc和該dc下的聚類結果。
[0066] 對于給定的一個含η個數據的數據集D,其每個樣本具有d維屬性,其中包含P維數 值屬性和q維分類屬性,容易得到d = p+q。現根據p和q的大小對數據集進行占優分析。
[0067] 1)若p>q,則該數據集為數值占優數據集。
[0068] 2)若p〈q,則該數據集為分類占優數據集。
[0069] 3)若p = q,則該數據集為均衡屬性數據集。
[0070] 對于占優分析結果不同的數據集,我們采用不同的相似度計算方法來求取數據之 間的距離。
[0071] 對于一個包含η條數據的數據集D= {Ai, A2,…,An},其樣本Ai具有d維屬性
用(KA1, AJn表示數值屬性部分的距離,用(!(A1,~)。表示分類屬性部分的 距離,則:
[0072] 1)若數據集D是數值屬性占優數據集,則對于任意兩個對象仏和心有:
[0073]
(1)
[0074]對于分類屬性每一維的距離采用二元化方法,如對于仏和^的第k維分類屬性,有:
[0075]
(2)
[0076] 分類屬件的總距離為:
[0077]
(3)
[0078] 2)若教抿隼D縣分類雇件片優教據集,則對于第k維的數值屬性,有:
[0079]
(4)
[0080] 其中A^dXjPA;^n分別表示該維樣本數據的最大值和最小值。
[0081 ]數值屬性的總距離為:
[0082]
(5)
[0083]其分類屬性的計算距離方式和數值型占優數據集中分類屬性的計算距離方式相 同。
[0084] 3)若數據集D是均衡屬性數據集,則對不同維度的數據進行權重分析,最終劃分至 數值屬性占優數據集或分類屬性占優數據集,再按上述距離計算公式進行距離的計算。
[0085] 對于數值屬性占優數據集,當數值屬性維度的樣本值較大時,可以有效減少分類 屬性距離對總體相似度計算的影響;而對于分類屬性占優數據集,任何數值屬性維度上的 距離均被限制在區間[0,1]內,防止了一些數值屬性維度的樣本值過大而導致分類屬性距 離被忽略,使計算結果更加合理準確。
[0086] 宙^ 1:對干仵意數據對象i ,其局部密度計算方法為
[0087]
[0088] (?)
[0089] 具中,dij表不點i和日」的跑咼。
[0090] 定義2:對于任意對象,其到局部密度比它大的點的最近距離
[0091] 5i=min(dij) (Pj^=Pi) (8)
[0092]對于P值最大的點,存在 [0093] 5i=max(5j) (i^j) (9)
[0094]參照圖1,設計一個橫坐標為P,縱坐標為δ的二維坐標系,根據每個點的Pi和S i做出 一張二維的P-δ分布圖。例如,對于樣本數據對象DataSetl,其分布圖如圖1左半部分所示, 其相應的P-δ圖如圖1右半部分所示。其中,Al、Α2、Α3是圖1左半部分中的三個聚類中心,他 們在圖1左半部分的P-S圖中表現出了較大的P值和δ值;BI、Β2、Β3是圖1左半部分中的三個 噪聲點,其在圖1右半部分中對應密度P較小而距離δ較大的點;對于其他點,稱其為邊界點, 它們均屬于某一個類簇,但表現出較小的δ值。
[0095] 基于以上對P-δ圖的分析,本專利引入變量γ,對于任意一個數據點i,其γ定義 為:
[0096] γ i = Pi*5i (10)
[0097] 根據γ的概率分布情況,對于該γ的分布進行曲線的擬合,發現其圖形的擬合曲 線形狀類似于一條正態分布曲線。現利用選取置信區間的方式在與擬合曲線相應的正態分 布曲線中尋找出奇異點的信息,此處奇異點表示落在置信區間以外的點,即是聚類的聚類 中心,奇異點的個數代表了聚類中心的個數。
[0098]定義:若隨機變量X服從一個數學期望為μ、方差為σ2的高斯分布,記為Ν(μ,σ2)。其 概率密度函數為正態分布函數。
[0099]實際工作中,正態曲線下橫軸上一定區間的面積反映該區間的例數占總例數的百 分比,或變量值落在該區間的概率(概率分布)。比例軸與正態曲線之間的面積恒等于1,不 同范圍內正態曲線下的面積可用公式計算。正態曲線下,橫軸區間(μ-σ,μ+σ)內的面積為 68.268949%,橫軸區間化-2〇4+2〇)內的面積為95.449974%,橫軸區間化-3〇4+3〇)內的 面積為99.730020 %,橫軸區間(μ-5σ,μ+5σ)內的面積為99.99999999 % ^ 1。在樣本容量滿 足不是充分大的條件下,可認為隨機變量的X的所有取值包含在區間(μ_5σ,μ+5σ)內,將該 區間稱為置信區間,未落在該區間內的點即為不服從該正態分布的奇異點。
[0100] 定理1:對于任意一條正態分布曲線,存在一個置信區間(μ_5σ,μ+5σ),在樣本不是 充分大時,若數據點落于該區間外,則認為該數據點為奇異點,即可將該數據點視為算法所 提取出的聚類中心。
[0101] 對于任意數據點i,現假設其對應的丫,均是服從均值為μ,標準差為〇的隨機正態 分布,記作Yi-Nb,#)。首先計算出樣本均值無和樣本方差S,再根據矩估計原理,則可得:
[0102]
(11)
[0103] 對于一個數據集的γ密度分布圖進一步分析,可以發現所有數據的γ值均為非 負。在這一點上說明對于任意數據點i,其γ值的分布并非嚴格的正態分布,因為在γ值為 負的區間內存在數據點的缺失。這將會對公式(Il)的結果造成較大的影響。為能夠準確地 求取μ和σ,現對于μ和σ的計算作如下調整:
[0104] 先求出樣本均值Ι?,為修正因數據缺失對μ和〇求取的偏差,引入參數η,設定閾值 11石,對于任意一個數據點i,若其值丫:大于閾值,則將該數據點從μ和σ的計算中剔除。對于 所有的數據點進行篩選后,對剩余的數據點進行均值和方差的求取,記作寫和S,再利用公 式(11)計算出樣本的μ和σ值。
[0105] 上述方法通設定參數η來剔除一些γ值較大的點,目的是為了解決因為γ〈0區間 上數據點的缺失而對原本的μ和σ值造成影響的問題。根據對稱性原則,在這里令η = 2,即只 選取[區間內的點進行以和0的計算,從而有效地提高了μ值和σ值的準確性。
[0106] 求出μ和σ的值后,我們就能得到一條正態分布曲線,現在根據正態分布的5〇原則 選取置信區間以找出奇異點。具體方法為:
[0107] 設置邊界值Wide=y+5〇,將數據集中所有點的γ值與Wide進行比較。對于數據點 i,若γ i>Wide,則標記i為奇異點。
[0108] 考慮到奇異點中可能存在P和δ的相對指標相差較大的點,故在
[0109] 此還需對奇異點進行一次篩選以確定最終的聚類中心個數。篩選方法為:
[0110] 將奇異點的P和δ做歸一化處理得到ρ?Ρδ%設置參數k,若對于奇異點i,存在 < /cand-; < fe,則將該奇異點選為聚類中心點。 0 1 p'
[0111] 以DataSetl數據集為例,圖2展示了運用CCro算法自動確定聚類中心的主要流程。 首先根據每個數據點的γ值做出數據集關于γ的密度分布圖(圖2(a));接著按照上文所述 方法求出用于擬合γ密度分布的正態分布曲線,并根據正態分布曲線確定置信區間(圖2 (b));通過置信區間從密度分布圖中篩選出落在置信區間以外的奇異點Al,Α2,Α3(圖2 (C));最后在決策圖中,做出斜率分別為k和Ι/k的兩條直線,選取落在兩條直線之間的奇異 點作為真正的聚類中心(圖2(d))。此處k = 3,通過實驗數據集分析,一般k = 3時能有效排除 奇異點中的干擾信息,較為準確地選出真正的聚類中心。
[0112] ccro算法的具體流程圖如圖3所示。
[0113] 當參數d。確定時,通過采取自動聚類中心的方法就能有效地提取出聚類中心并進 行聚類。因此最優dc的選取顯得十分重要。為選取合適的d c,我們先從所有數據點間的距離 中選出最大距離dmax和最小距離dmin,引入參數percent,令
[0114]
[0115] Dc確定后,利用CCH)算法自動選取聚類中心,并根據每個點的P和δ值,將數據點按 照將其與P值大于該數據點且與該數據點的S值最小的數據點歸于一類的原則進行劃分聚 類,從而得到聚類結果。
[0116] 得到聚類結果后,為比較對于不同dj寸聚類效果的好壞,我們設計了一個Fitness 函數作為評價指標。
[0117] Fitness由兩部分組成:
[0118] (13): (14)
[0119]其中m表示簇的個數,CdPCj表示第i個和第j個簇的聚類中心,I Cj I表示該簇的數 據對象個數。
[0120]從公式(13)和公式(14)可以看出,Fitnessl代表了全局的平均簇內距離, Fitness2則代表全局的平均簇間距離。根據聚類效果好壞的最本質定義:簇內距離越小越 好,簇間距離越太越好,今
[0121]
(15)
[0122 ]別· ^--個貧疋的dc,Ki tne s s函數值越大,則說明聚類效果越好。
[0123] 將dc的設定轉化為percent的取值,且percent的取值范圍為1 %~20%。現利用爬 山算法在該范圍內尋找出最優dc。方法的流程圖如圖4所示。具體的步驟描述為:
[0124] Stepl:讀取數據集的相似度距離矩陣;
[0125] Step2:設置percent的初始值P。和迭代半徑r,計算出此時的dc值;
[0126] Step3:計算出 percent 為P〇、P。+!·和Po-r 時各自的Fitness 值;
[0127] Step4:選取Fitness值最大的percent作為臨時的最優percent,記為Ptbest,并使迭 代半徑減小〇.5%(r = r_0.5);
[0128] Step5:判斷r是否為0,若r辛0,則跳到Step2,用Ptbest代替P。進行計算;若r = 0,則 停止迭代,此時令全局最優半徑Pbest = Ptbest,即得到最優dc。
[0129] 其具體流程圖如圖4所示。
[0130] 該方法的迭代次數ξ的計算公式為:
[0131] (16)
[0132]
[0133] (17)
[0134] CH-CCFDAC的主要思想是:首先對參與聚類的數據集進行處理,得到了不同數據點 之間的相似度距離,構成了數據集的相似度距離矩陣;然后調用ccro算法,在給定參數dc時 進行聚類中心的自動選取,并以聚類中心為起點對其他所有的數據點進行劃分聚類;為衡 量數據集在給定dc狀態下的聚類質量,我們設計了 Fitness函數作為聚類效果好壞的評價 指標,采用爬山算法對dc進行迭代,選取使Fitness取得最大值時的d c作為最優dc,最終輸出 最優dc下的聚類結果。
[0135] CH-CCFDAC總體的算法流程圖如圖5所示,其具體步驟為:
[0136] 步驟1:對輸入的數據集進行占優分析,并根據占優分析的結果使用相應的相似度 計算公式計算出數據集的相似度距離矩陣。
[0137] 步驟2:設定dc的初始值,并調用CCH)算法進行第一次快速聚類。
[0138] 步驟3:調用爬山算法對dc進行迭代,通過公式(13-15)計算出每個dc對應的 Fi tness函數值,通過比較Fi tness函數值的大小對最優dc進行更新。
[0?39]步驟4:獲得最優dc,輸出最優dc下的最終聚類結果。
【主權項】
1. 一種聚類中心快速確定的聚類方法,其特征在于:所述聚類方法包括以下步驟: 1) 讀取原始數據集,對數據集進行占優分析,通過占優分析選取相應的距離計算方法, 使用該種距離計算方法求出整個數據集的距離矩陣,過程如下: 1.1若輸入的數據集有P維數值屬性的數據和q維分類屬性的數據,則通過比較P和q的 大小,將數據集分成數值占優型數據集和分類占優型數據集; 1.2根據占優分析得到的結果,采用相應的距離計算公式對該數據集進行計算,得到數 據集的相似度距離矩陣; 2) 快速確定聚類中心,過程如下: 2.1對于任意數據點i,通過公式Pi = Ef (dij-dc)和式5i=min(dij) (Pj彡Pi)計算出該數 據點對象的PdPi,再根據公式γ 算出數據點的γ 1; 2.2根據每個數據點的γ值做出關于γ的密度分布圖,計算出γ的樣本均值和樣本方 差,采用矩估計的方法得到數據集有關γ值整體分布的均值μ和方差σ2; 2.3做出服從均值為μ,方差為σ2的正態分布曲線,用該曲線擬合γ的概率密度曲線,并 根據正態分布的5〇原則劃定置信區間;2.4根據劃定的置信區間篩選出落于置信區間外的奇異點,對這些點的Ρ和δ進行歸一 化處理,得到PIP#,設置參數k,若對于奇異點i 則將該奇異點選為 聚類中心點; 2.5根據求得的聚類中心點,采用將數據點i與密度高于它且離它最近的數據點歸于一 類的方法,將所有的數據點進行聚類劃分,最終得到聚類結果; 3) 最優dc的選取,過程如下: 3.1找出相似度距離矩陣中的最大值dmax和最小值dmin,米用公式dc = dmin+(dmax-dmin)* percent/100,通過設定percent的值來計算出當前的dc值; 3.2當dc被選定并得到聚類結果后,為比較對于不同dc時聚類效果的好壞,設計 Fitness函數作為評價指標; Fitness由兩部分組成:其中,m表示簇的個數,CdPQ表示第i個和第j個簇的聚類中心,|Q|表示該簇的數據對 象個數; Fitnessl代表了全局的平均簇內距離,Fitness2則代表全局的平均簇間距離,根據聚 類效果好壞的最本質定義:簇內距離越小越好,簇間距離越大越好,令對于一個給定的dc,Fi tness函數值越大,則說明聚類效果越好; 3.3采用爬山算法選取最優dc,設定percent的初始值和迭代次數,對當前的percent值 進行3.1~3.2的操作,通過比較不同percent下的Fitness函數值來對當前的percent值進 行更新,若滿足迭代次數,則跳至3.4 3.4輸出最優dc以及最優dc時的聚類結果。2.如權利要求1所述的一種聚類中心快速確定的聚類方法,其特征在于:所述步驟2.2 中,對于μ和σ的計算作如下調整: 先求出樣本均值為修正因數據缺失對μ和σ求取的偏差,引入參數η,設定閾值1^7, 對于任意一個數據點i,若其值γ :大于閾值,則將該數據點從μ和σ的計算中剔除; 對于所有的數據點進行篩選后,對剩余的數據點進行均值和方差的求取,記作石和S, 再利用矩估計計算出樣本的μ和σ值; 根據對稱性原則,在這里令η = 2,即只選取[0,2$5]區間內的點進行以和〇的計算。
【文檔編號】G06K9/62GK106056136SQ201610343213
【公開日】2016年10月26日
【申請日】2016年5月20日
【發明人】陳晉音, 林翔, 鄭海斌, 保星彤
【申請人】浙江工業大學