導航:首頁 > 方法技巧 > 如何對聚類方法進行優化

如何對聚類方法進行優化

發布時間:2022-07-03 05:44:10

1. 如何用excel對數據進行聚類分析

用excel對數據進行聚類分析的方法如下:

  1. 因為數據量綱不同將影響聚類分析的結果,所以在分析之前要對數據進行無量綱化處理,無量綱化處理的方法有很多種,我們可以根據自己的實際需要進行選擇。本經驗示例較為簡單,只需要對有序尺度數據進行無量綱化。

    對於有序尺度,可以採用數值編碼的方式將其轉換為間距型。

    如:優、良、中、及格、不及格

2. K均值聚類分析的原理

在訓練圖像中,數據事件數量非常多。如果將這些數據事件逐一與模擬區域數據模式進行比對,對計算機性能要求高,計算效率低下。對數據事件分析發現,很多數據事件具有很高的相似性,可以將其劃分為同一類。這樣大大減少數據事件的個數,提高了運算效率。基於這樣考慮,聚類分析技術被引入到多點地質統計學中。

J.B.MacQueen在1967年提出的K-means演算法是到目前為止用於科學和工業應用的諸多聚類演算法中一種極有影響的技術。它是聚類方法中一個基本的劃分方法,常常採用誤差平方和准則函數作為聚類准則函數,誤差平方和准則函數定義為

多點地質統計學原理、方法及應用

式中:mi(i=1,2,…,k)是類i中數據對象的均值,分別代表K個類。

K-means演算法的工作原理:首先隨機從數據集中選取K個點作為初始聚類中心,然後計算各個樣本到聚類中的距離,把樣本歸到離它最近的那個聚類中心所在的類。計算新形成的每一個聚類的數據對象的平均值來得到新的聚類中心,如果相鄰兩次的聚類中心沒有任何變化,說明樣本調整結束,聚類准則函數已經收斂。本演算法的一個特點是在每次迭代中都要考察每個樣本的分類是否正確。若不正確,就要調整,在全部樣本調整完後,再修改聚類中心,進入下一次迭代。如果在一次迭代演算法中,所有的樣本被正確分類,則不會有調整,聚類中心也不會有任何變化,這標志著已經收斂,因此演算法結束。

基本步驟如下:

a.對於數據對象集,任意選取K個對象作為初始的類中心;

b.根據類中對象的平均值,將每個對象重新賦給最相似的類;

c.更新類的平均值,即計算每個類中對象的平均值;

d.重復b和c步驟;

e.直到不再發生變化。

圖2-7是利用K-means方法做的一個數據事件的聚類分析結果。數據類定義為10個。數據事件來自於圖2-8,採用的數據樣板是8×8的數據樣板。

K-means演算法優點為當聚類是密集的,且類與類之間區別明顯時,效果較好。對於處理大數據集,這個演算法是相對可伸縮和高效的,缺點主要有三個:

圖2-7 K-means方法聚類結果

圖2-8 用於聚類的訓練圖像,數據樣板選擇為8*8

1)在K-means演算法中K是事先給定的,這個K值的選定是非常難以估計的。很多時候,事先並不知道給定的數據集應該分成多少個類別才最合適。這是K-means演算法的一個不足。

2)在K-means演算法中,首先需要根據初始聚類中心來確定一個初始劃分,然後對初始劃分進行優化。這個初始聚類中心的選擇對聚類結果有較大的影響,一旦初始值選擇的不好,可能無法得到有效的聚類結果,這也成為K-means演算法的一個主要問題。

3)從K-means演算法框架可以看出,該演算法需要不斷地進行樣本分類調整,不斷地計算調整後的新的聚類中心,因此當數據量非常大時,演算法的時間開銷是非常大的。所以需要對演算法的時間復雜度進行分析、改進,提高演算法應用范圍。

3. 聚類演算法的具體方法

k-means 演算法接受輸入量 k ;然後將n個數據對象劃分為 k個聚類以便使得所獲得的聚類滿足:同一聚類中的對象相似度較高;而不同聚類中的對象相似度較小。聚類相似度是利用各聚類中對象的均值所獲得一個「中心對象」(引力中心)來進行計算的。
k-means 演算法的工作過程說明如下:
首先從n個數據對象任意選擇 k 個對象作為初始聚類中心;而對於所剩下其它對象,則根據它們與這些聚類中心的相似度(距離),分別將它們分配給與其最相似的(聚類中心所代表的)聚類;
然後再計算每個所獲新聚類的聚類中心(該聚類中所有對象的均值);不斷重復這一過程直到標准測度函數開始收斂為止。
一般都採用均方差作為標准測度函數. k個聚類具有以下特點:各聚類本身盡可能的緊湊,而各聚類之間盡可能的分開。 K-MEANS有其缺點:產生類的大小相差不會很大,對於臟數據很敏感。
改進的演算法:k—medoids 方法。這兒選取一個對象叫做mediod來代替上面的中心的作用,這樣的一個medoid就標識了這個類。K-medoids和K-means不一樣的地方在於中心點的選取,在K-means中,我們將中心點取為當前cluster中所有數據點的平均值,在 K-medoids演算法中,我們將從當前cluster 中選取這樣一個點——它到其他所有(當前cluster中的)點的距離之和最小——作為中心點。
步驟:
1,任意選取K個對象作為medoids(O1,O2,…Oi…Ok)。
以下是循環的:
2,將餘下的對象分到各個類中去(根據與medoid最相近的原則);
3,對於每個類(Oi)中,順序選取一個Or,計算用Or代替Oi後的消耗—E(Or)。選擇E最小的那個Or來代替Oi。這樣K個medoids就改變了,下面就再轉到2。
4,這樣循環直到K個medoids固定下來。
這種演算法對於臟數據和異常數據不敏感,但計算量顯然要比K均值要大,一般只適合小數據量。 上面提到K-medoids演算法不適合於大數據量的計算。Clara演算法,這是一種基於采樣的方法,它能夠處理大量的數據。
Clara演算法的思想就是用實際數據的抽樣來代替整個數據,然後再在這些抽樣的數據上利用K-medoids演算法得到最佳的medoids。Clara演算法從實際數據中抽取多個采樣,在每個采樣上都用K-medoids演算法得到相應的(O1, O2 … Oi … Ok),然後在這當中選取E最小的一個作為最終的結果。 Clara演算法的效率取決於采樣的大小,一般不太可能得到最佳的結果。
在Clara演算法的基礎上,又提出了Clarans的演算法,與Clara演算法不同的是:在Clara演算法尋找最佳的medoids的過程中,采樣都是不變的。而Clarans演算法在每一次循環的過程中所採用的采樣都是不一樣的。
與上面所講的尋找最佳medoids的過程不同的是,必須人為地來限定循環的次數。

4. 如何對用戶進行聚類分析

需要搜集用戶的哪些特徵?

聚類分析變數選擇的原則是:在哪些變數組合的前提,使得類別內部的差異盡可能的小,即同質性高,類別間的差異盡可能的大,即同質性低,並且變數之間不能存在高度相關。

常用的用戶特徵變數有:


人口學變數:如年齡、性別、婚姻、教育程度、職業、收入等。通過人口學變數進行分類,了解每類人口的需求有何差異。


用戶目標:如用戶為什麼使用這個產品?為什麼選擇線上購買?了解不同使用目的的用戶的各自特徵,從而查看各類目標用戶的需求。


用戶使用場景:用戶在什麼時候,什麼情況下使用這個產品?了解用戶在各類場景下的偏好/行為差異。


用戶行為數據:如使用頻率,使用時長,客單價等。劃分用戶活躍等級,用戶價值等級等。


態度傾向量表:如消費偏好,價值觀等,看不同價值觀、不同生活方式的群體在消費取向或行為上的差異。

需要多少樣本量?

沒有限制,通常情況下與實際應用有關,如果非要加一個理論的限制,通常認為,樣本的個數要大於聚類個數的平方。

①如果需要聚類的數據量較少(<100),那麼三種方法(層次聚類法,K-均值聚類法,兩步聚類法)都可以考慮使用。優先考慮層次聚類法,因為層次聚類法產生的樹狀圖更加直觀形象,易於解釋,並且,層次聚類法提供方法、距離計算方式、標准化方式的豐富程度也是其他兩種方法所無法比擬的。

②如果需要聚類的數據量較大(>1000),應該考慮選擇快速聚類別法或者兩步聚類法進行。

③如果數據量在100~1000之間,理論上現在的計算條件是可能滿足任何聚類方法的要求的,但是結果的展示會比較困難,例如不可能再去直接觀察樹狀圖了。

應用定量方法還是定性方法?

聚類分析是一種定量分析方法,但對聚類分析結果的解釋還需要結合定性資料討論。

1.聚類分析的定義與用途

聚類分析(Cluster Analysis)是一種探索性的數據分析方法,根據指標/變數的數據結構特徵,對數據進行分類,使得類別內部的差異盡可能的小,即同質性高,類別間的差異盡可能的大,即同質性低。

2.聚類分析的方法

①層次聚類法(Hierarchical),也叫系統聚類法。既可處理分類變數,也可處理連續變數,但不能同時處理兩種變數類型,不需要指定類別數。聚類結果間存在著嵌套,或者說層次的關系。

②K-均值聚類法(K-Means Cluster),也叫快速聚類法。針對連續變數,也可處理有序分類變數,運算很快,但需要指定類別數。K-均值聚類法不會自動對數據進行標准化處理,需要先自己手動進行標准化分析。

③兩步聚類法(Two-Step Cluster):可以同時處理分類變數和連續變數,能自動識別最佳的類別數,結果比較穩定。如果只對連續變數進行聚類,描述記錄之間的距離性時可以使用歐氏(Euclidean)距離,也可以使用對數似然值(Log-likelihood),如果使用前者,則該方法和傳統的聚類方法並無太大區別;但是若進行聚類的還有離散變數,那麼就只能使用對數似然值來表述記錄間的差異性。當聚類指標為有序類別變數時,Two-Step Cluster出來的分類結果沒有K-means cluster的明晰,這是因為K-means演算法假定聚類指標變數為連續變數。

3.聚類分析的步驟

①確定研究目的:研究問題關注點有哪些、是否有先驗分類數…

②問卷編制:態度語句李克特項目、有序類別…

③確定分析變數:問卷變數的類型,連續or分類,有序類別or無序類別、是否納入後台數據,變數間相關性低…

④聚類分析:聚類分析方法選擇、數據標准化方法、聚類類別數確定…

⑤結果檢驗:類別間差異分析、是否符合常理…

⑥聚類結果解釋:類別的命名、類別間的差異、結合定性資料解釋…

閱讀全文

與如何對聚類方法進行優化相關的資料

熱點內容
陽光過敏的治療方法 瀏覽:25
用有限元的方法分析應力張量 瀏覽:807
簡單實用減肥小方法 瀏覽:173
治療腋臭的小方法 瀏覽:801
油豆腐的製作方法視頻 瀏覽:774
缺鈣最佳鍛煉方法 瀏覽:168
快速收集寶箱的方法 瀏覽:300
下橫叉的正確方法男生 瀏覽:264
手機合成足球形狀的圖片方法 瀏覽:22
香梨鑒別方法 瀏覽:296
噴槍噴漆槍的使用方法 瀏覽:597
檢測水泥的含泥量的方法 瀏覽:351
餐廳排長隊的技巧和方法 瀏覽:534
節稅十種方法和技巧 瀏覽:492
土方計算方法的適用范圍和條件 瀏覽:33
名人有哪些讀書方法 瀏覽:569
茶室泡茶的方法步驟 瀏覽:938
清洗消毒後病毒的檢測方法 瀏覽:24
緩解女性衰老有哪些方法 瀏覽:632
種植罌粟的方法 瀏覽:541