機器學習演算法(六) K 均值

2021-09-11 16:58:15 字數 462 閱讀 2168

一、介紹

1、k-means屬於無監督學習,主要解決聚類問題。

2、k-means需要提前設定引數k,這個值最終要生成k個簇,也就是聚類生成的類別的數量。使用k-means演算法將乙個資料歸入到k個集群中。

3、k-means演算法適用於數值型資料,在資料探勘領域中有廣泛的應用。

二、原理

隨機確定k個初始點作為質心,然後將資料集中的每個點分配到乙個簇中。具體來說:(1)為每個點找距其最近的質心,並將其分配給該質心所對應的簇。(2)然後,每個簇的質心更新為該簇所有點的平均值,按照:計算質心》分配》重新計算反覆迭代,直到所有資料點的簇分配結果不再改變為止。

三、求倆點之間的距離

常用的求向量間的距離的方法有

歐式距離(euclidean distance):

曼哈頓距離(manhattan distance):

余弦夾角:

余弦夾角範圍是[-1,1],

機器學習演算法之Kmeans演算法(K均值演算法)

kmeans演算法是典型的基於距離的聚類演算法,採用距離作為相似性的評價指標,即認為兩個物件的距離越近,其相似度就越大。該演算法認為簇是由距離靠近的物件組成的,因此把得到緊湊且獨立的簇作為最終目標。兩個樣本在歐式空間中的距離 引入新概念 cluster 表示乙個簇 centroid 表示當前簇的中心...

機器學習第六回 無監督學習 K 均值演算法

k 均值是最普及的聚類演算法,演算法接受乙個未標記的資料集,然後將資料聚類成不同的組。k 均值是乙個迭代演算法,假設我們想要將資料聚類成 n 個組,其流程為 選擇?個隨機的點,稱為聚類中心 cluster centroids 對於資料集中的每乙個資料,按照距離?個中心點的距離,將其與距離最近的中心點...

機器學習實戰 K 均值學習筆記

k 均值 因為可以發現k個不同的簇,且每個簇的中心採用簇中所含的均值計算而成。聚類和分類的區別 最大的區別在於,分類的目標事先已知,而聚類的不一樣,其產生的結果和分類相同,但是類別沒有預先定義,因此聚類有時候也被稱為無監督分類 如下 from numpy import def loaddataset...