(機器學習筆記2)K means演算法

2021-08-28 14:13:26 字數 808 閱讀 4139

k-means演算法

機器學習常用的方法分為監督學習、非監督學習(分類)

監督學習:已有的訓練樣本--->得到訓練後的模型---->未知資料輸入模型得到分類結果(knn)

非監督學習:無訓練樣本---->構建分類模型(k-means)

k均值是發現給定資料集的k個簇的演算法。k為手動設定(可能不是最合適的,需要調整),每個簇用其中所有點的中心表示。聚類效果用sse(誤差平方和)度量。

過程如下:

1.隨機確定k個初始點作為質心(整個演算法受初始質點的影響);

2.將資料集中的點按照與初始k個質心的距離分配到k個簇中;

3.每個簇的質心更新為該簇所有點的平均值;

4.計算所有點與新調整後的k個質心的距離,重新劃分簇;

5.不斷重複3、4直至演算法收斂(即質心不變)。

缺點:1.最適合的分類數並不一定一次就找到;

2.初始隨機選取的點不同,最後分的類可能也不同;

3.可能收斂到區域性最小值(非全域性最小),在大規模資料集上收斂較慢;

4.對雜訊和離群點敏感。

二分k-均值演算法

二分k-均值演算法的提出是為了克服k-均值演算法收斂於區域性最小值的問題。

過程:

1.將所有點看成乙個簇;

2.將該簇一分為二(計算總誤差,進行k-均值聚類,其中k=2);

3.計算一分為二後的總誤差,選擇其中乙個簇繼續劃分(選擇標準:其劃分是否能降低sse的值);

4.重複2、3至k達到指定簇數。

機器學習筆記 k means演算法

k means是一種無監督的聚類演算法,也就是不給標籤,演算法自動來進行分類,最終分成k個簇。輸入 k 簇的個數 訓練集 無標籤的樣本集合 輸出 k個簇 k應該比樣本數量小 1 隨機初始化k個均值向量 代表k個簇的中心 可以隨機選取k個訓練樣本作為初始均值向量。2 開始迴圈 1 對每個樣本進行遍歷,...

機器學習 K Means演算法

簡介 又叫k 均值演算法,是非監督學習中的聚類演算法。基本思想 k means演算法比較簡單。在k means演算法中,用cluster來表示簇 容易證明k means演算法收斂等同於所有質心不再發生變化。基本的k means演算法流程如下 選取k個初始質心 作為初始cluster,每個初始clus...

機器學習 KMeans學習筆記

機器學習 kmeans學習筆記 coding utf 8 spyder editor this is a temporary script file.from numpy import def loaddataset filename file open filename datamat for l...