哪個SciPy包用於實現聚類?


聚類是最有用的無監督機器學習方法之一。它用於查詢輸入資料樣本之間的關係模式和相似性。找到這些模式後,無監督演算法將具有相似性的資料樣本聚類到組中,如下圖所示:

異常檢測、影像分割、醫學影像、社交網路分析和市場細分是一些常見的聚類應用。K均值和層次聚類是兩種最常見的聚類形式。

為了實現聚類,SciPy 提供了一個聚類包 (scipy.cluster),該包進一步包含以下兩個模組:

  • scipy.cluster.vq 模組 - 此 SciPy 模組提供用於 K 均值聚類和向量量化的函式。它還透過將 K 均值模型與程式碼本中的質心進行比較來生成 K 均值模型的程式碼本。下表解釋了 scipy.cluster.vq 模組中的例程及其描述:

例程描述
scipy.cluster.vq.whiten(obs, check_finite=True )此例程對特徵上的觀察組進行歸一化。
scipy.cluster.vq.vq(obs, code_book,check_finite=True)此例程將程式碼本中的程式碼分配給觀察值。
scipy.cluster.vq.kmeans(obs, k_or_guess, iter=20, thresh=1e-05, check_finite=True)此例程對一組觀察向量執行 K 均值演算法,形成 K 個聚類。
scipy.cluster.vq.kmeans2(data,k,iter=10, thresh=1e-05, minit='random', missing='warn', check_finite=True)此例程使用 K 均值演算法將一組觀察值分類到 K 個聚類中。
  • scipy.cluster.hierarchy 模組 - 如名稱所示,此 SciPy 模組提供用於層次聚類及其型別的函式,例如凝聚聚類。它具有各種例程,我們可以用它來:

    • 計算層次結構上的統計資料

    • 將層次聚類切割成扁平聚類。

    • 實現凝聚聚類。

    • 視覺化扁平聚類。

    • 檢查兩個扁平聚類分配的同構性。

    • 繪製聚類。

更新於:2021年11月23日

141 次瀏覽

啟動你的職業生涯

透過完成課程獲得認證

開始學習
廣告