叢集

已完成

叢集是一種非監督式機器學習的形式,其中的觀察值會根據其資料值中的相似性或特徵,分組到叢集。 這種機器學習被視為不受監督,因為其不會使用先前已知的標籤值來定型模型。 在叢集模型中,可僅根據其功能,將標籤視為指派觀察的目標叢集。

範例 - 叢集

例如,假設植物學家觀察花卉樣本,並記錄每種花卉的葉片和花瓣數目:

Diagram of some flowers.

資料集中沒有已知的標籤,只有兩個特徵。 目標不在於識別不同類型 (品種) 的花卉;只是根據葉片和花瓣數目將類似的花卉分組在一起。

葉片 (x1) 花瓣 (x2)
0 5
0 6
1 3
1 3
1 6
1 8
2 3
2 7
2 8

定型叢集模型

您可以使用多個演算法來進行叢集。 其中一個最常用的演算法是「K-Means」 叢集,包含下列步驟:

  1. 特徵 (x) 值會經過向量化,以定義 n 維度座標 (其中 n 是特徵數目)。 在花朵範例中有兩個特徵:葉片數目 (x1) 和花瓣數目 (x2)。 特徵向量有兩個座標,我們可以使用這兩個座標,在二維空間 ([x1,x2]) 中繪製資料點的概念圖
  2. 您可以決定要用來分組花卉的叢集數目,呼叫此值 k。 例如,若要建立三個叢集,您會使用 k 值 3。 然後以隨機座標繪製 k 點。 這些點會是每個叢集的中心點,因此稱為「形心」。
  3. 每個資料點 (在此案例中是指花卉) 會指派至其最近的形心。
  4. 每個形心都會根據點之間的平均距離,移至指派給它的資料點中心。
  5. 移動形心之後,資料點現在可能更接近不同的形心,因此會根據最近的新形心將資料點重新指派給叢集。
  6. 形心移動和叢集重新配置步驟會重複,直到叢集變成穩定或達到預先決定的反覆運算次數上限為止。

下圖顯示此流程:

Diagram of an animation showing the k-means clustering process.

評估叢集模型

由於沒有任何已知標籤可比較預測的叢集指派,因此叢集模型的評估是根據結果叢集彼此分隔的方式。

您可以使用多個計量來評估叢集區隔,包括:

  • 與叢集中心的平均距離:叢集中每個點與叢集矩心的平均接近距離。
  • 與其他中心的平均距離:叢集中每個點與所有其他叢集矩心的平均接近距離。
  • 與叢集中心的最大距離:叢集中某個點與其矩心之間的最遠距離。
  • 輪廓:介於 -1 和 1 之間的值,摘要了相同叢集中點與不同叢集中點之間的距離比率 (愈接近 1,叢集區隔就愈好)。