K means學習筆記

2021-08-29 01:50:00 字數 2010 閱讀 8631

根據要分成幾類隨機初始化幾個點,稱為聚類中心。 而類別在聚類問題中稱為將樣本根據與1中初始化點的距離遠近進行歸類

將代表類別的各聚類中心移到所屬他們樣本點的均值處

重複前三個步驟,直到聚類中心不再改變位置,此時我們稱k-mean已經聚合

###1.2.1 input:

###1.2.2 output:

故最後某點x

ix_i

xi​所屬的簇稱為μci

\mu_

μci​

###1.2.3 cost function:

j (c

1,..

..,c

m,μ1

….,μ

k)=1

m∑1m

∣∣xi

−μci

∣∣2j(c^1,....,c^m,\mu_1….,\mu_k)=\cfrac\sum_1^m||x^i-\mu_||^2

j(c1,.

...,

cm,μ

1​….

,μk​

)=m1

​1∑m

​∣∣x

i−μc

i​∣∣

2 失真代價函式(distortion)

找出m in

jmin j

minj

的c 1−

cm和μ

1−μk

c^1-c^m和\mu_1-\mu_k

c1−cm和

μ1​−

μk​ .

學證

明可證明

2過程中

兩個fo

r迴圈實

際上就是

在選擇c

和μ來m

inim

ize損

失函式j

數學證明可證明2過程中兩個for迴圈實際上就是在選擇c和\mu來minimize 損失函式j

數學證明可證

明2過程

中兩個f

or迴圈

實際上就

是在選擇

c和μ來

mini

mize

損失函式

j首先確認k是否小於樣本數m,為了下面的選擇

隨機地選擇k個訓練樣本

令μ 1,

...,

μk\mu_1,...,\mu_k

μ1​,..

.,μk

​等於2中選到的k個樣本。

​ 由於聚類中心隨機初始化的隨機性,聚類最終有可能會得到區域性最優解,通常的解決方案是隨機初始化50-1000次,執行50-1000次k-mean,然後選擇cost function最小的那一種結果。

​ 這種方法更適用於k取值較小時(如2-10次),當k取值較大時,隨機初始化不會有太大的改善效果。這是因為k值較大時,往往沒那麼容易取到區域性最優。

​ 1. 通常我們會使用肘部法則(elbow method)

​ 我們取k為1,2,3,…並計算其代價函式j,如果得到下圖所示的資料,那麼k=3就是我們需要的k值了,因為k取3時,j在這裡有個明顯的轉折點,很像人的肘部。

在實際過程中,得到的資料可能是如下圖的曲線,那麼elbow method就不太管用了。

實際情況中,應該根據實際需要的情況選擇k值。如我們要將一萬件t恤衫的尺寸資料聚類,我們想分成xs,s,m,l,xl五個尺碼,那麼就選擇k=5.

​ k-mean是無監督學習的代表演算法,優點有模型簡單、引數少、收斂速度也還不錯。但缺點是非凸函式容易造成區域性最優的問題,k值的選取難以把握。

學習筆記 K means演算法

在資料探勘中,k means演算法是一種cluster analysis的演算法,其主要是來計算資料聚集的演算法,主要通過不斷地取離種子點最近均值的演算法。問題k means演算法主要解決的問題如下圖所示。我們可以看到,在圖的左邊有一些點,我們用肉眼可以看出來有四個點群,但是我們怎麼通過電腦程式找出...

學習筆記 K means 演算法

學習k means 演算法前,需要先學習k means演算法,可以參考這篇部落格看得懂的k means 既然了解了k means演算法,那麼我們來對比下k means 有什麼變化。首先k means最大的問題就是對初始點選擇特別敏感,那麼我們就乙個乙個選,而不是k個一起選。步驟與k means類似 ...

學習筆記 K means演算法

我們先來看一下乙個k means的聚類效果圖 隨機設定k個特徵空間內的點作為初始的聚類中心 對於其他每個點計算到k個中心的距離,未知的點選擇最近的乙個聚類中心點作為標記類別 接著對著標記的聚類中心之後,重新計算出每個聚類的新中心點 平均值 如果計算得出的新中心點與原中心點一樣,那麼結束,否則重新進行...