聚類演算法 Clustering

2022-10-11 10:18:07 字數 1092 閱讀 6826

此系列筆記**於

coursera上吳恩達老師的機器學習課程

步驟:1、隨機生成兩點

這兩點叫做聚類中心,選擇兩點是因為這裡想把資料分成兩類

2、迭代

在內迴圈中的第一步是 簇分配

這裡將每個綠點根據距離誰最近分成紅藍兩部分

即計算\(c^=min_k||x^-\mu_k||^2\),k表示第k個聚類中心

第二步是 移動聚類中心

對於第k個聚類中心,計算所有\(c^=k\)的點的平均值,並令該聚類中心,即\(\mu_k\)等於這個平均值點

代價函式

隨機初始化

執行k均值演算法前我們需要先初始化,選取幾個初始的聚類中心。

由於一次的隨機初始化,效果可能不太好,會導致區域性最優解,因此我們會進行多次k均值演算法。

初始化時,令\(\mu_i=x^\)

另外這個演算法在k較小時,如\(2-10\)會有比較好的效果,當聚類中心數量較大時,未必有非常好的效果。

選擇聚類數量

1、最常見的是根據影象手動選擇聚類數量

可以是兩個也可以是三個四個

2、運用肘部法則

如左圖,我們做出曲線後,可以選擇這個拐點

但當影象如右圖時,用肘部法則便是十分困難的

3、根據實際目的

比如賣t恤

我們要提供多種尺寸的t恤,那麼就根據目的選擇k的種數即可

關於聚類(Clustering)

聚類即物以類聚,他是為了實現將資料按照某一標準 相似度 將整個資料集分為若干子集 簇 最終的分類結果要盡量保證組內相似度盡可能大,組間相似度盡可能小。聚類是典型的無監督學習 unsupervised learning 它與分類問題最明顯的區別就是分類問題有事先的標註,而聚類的分組是完全靠自己學習得來...

第九章 聚類 Clustering

unsupervised learning 無監督學習 訓練樣本的標記資訊是未知的,通過對無標記資料的訓練來找出資料內部所存在的規律以及性質 為進一步的資料分析打下基礎 知識點 聚類過程中會自動的形成簇結構,但是演算法對簇 cluster 沒有概念,這是在運算過程中自己出現的聚類現象,這個簇的名字需...

聚類演算法 近鄰聚類演算法

time is always too short for those who need it,but for those who love,it lasts forever.dracula untold 近鄰聚類法同樣是一種基於距離閾值的聚類演算法。coding utf 8 近鄰聚類演算法的pyth...