為什麼說K-Means是基於距離的聚類演算法?
K-means演算法是很典型的基於距離的聚類演算法,採用距離作為相似性的評價指標,兩個物件的距離越近,其相似度就越大。K-means演算法認為簇是由距離靠近的物件組成的,因此把得到緊湊且獨立的簇作為最終目標。
k-means聚類,需要使用者設定一個聚類個數k作為輸入資料。k個初始類聚類中心點的選取,對聚類結果具有較大的。為了用k-means達到高質量的聚類,需要估計k值。可根據需要的聚類個數,估計k值。
比如一百萬篇文章,如果平均500篇分為一類,k值可以取2000(1百萬/500)。
演算法步驟
1)隨機選取任意k個物件作為初始聚類中心,初始代表一個簇;
2)計算點到質心的距離,並把它歸到最近的質心的類;
3)重新計算已經得到的各個類的質心;
4)迭代2~3步直至新的質心與原質心相等或小於指定閾值,演算法結束。
EM的典型
這種兩步演算法是最大期望演算法(EM)的典型例子,第一步是計算期望(E),利用對隱藏變數的現有估計值,計算其最大似然估計值;第二步是最大化(M),最大化在E 步上求得的最大似然值來計算引數的值。M 步上找到的引數估計值,被用於下一個E 步計算中,這個過程不斷交替進行。
執行k-means聚類
K-mean聚類用到KMeansClusterer或KMeansDriver類,前一個是在記憶體(in-memory)裡對節點聚類,後者採用MapReduce任務執行。
這兩種方法可以:從盤上讀取和寫入資料,就像普通的Java程式。也可以通過分散式檔案系統讀寫資料,在hadoop上執行聚類。先測試執行KMeansExample,使用一個隨機點生成函式來建立一些點。這些點,生成向量格式的點,以正態分佈出現,圍繞著一箇中心。可使用KMeansClusterer聚類方法,對這些點聚類。
k-means聚類輸出的兩類目錄
clusters-*目錄:在每一輪迭代末尾生成,clusters-0目錄在第1輪迭代之後生成,clusters-1目錄在第2輪迭代後生成,以此類推。包含了簇的資訊:中心、標準差等。
clusteredPoints目錄:包含了從簇ID到文件ID的最終對映。是根據最後一輪MapReduce操作的輸出生成的。
相關文章
- 04聚類演算法-程式碼案例一-K-means聚類聚類演算法
- k-means聚類聚類
- 聚類演算法與K-means實現聚類演算法
- 02聚類演算法-相似度距離公式、維度災難聚類演算法公式
- 【Python機器學習實戰】聚類演算法(1)——K-Means聚類Python機器學習聚類演算法
- k-medoids與k-Means聚類演算法的異同聚類演算法
- 距離-有這麼多類
- 07 聚類演算法 - 程式碼案例三 - K-Means演算法和Mini Batch K-Means演算法效果評估聚類演算法BAT
- 演算法金 | 一文讀懂K均值(K-Means)聚類演算法演算法聚類
- 【機器學習】K-means聚類分析機器學習聚類
- 基於使用者行為的視訊聚類方案聚類
- 機器學習—聚類5-1(K-Means演算法+瑞士捲)機器學習聚類演算法
- 為什麼說 TCP 是安全的TCP
- 為什麼說 HTTPS 是安全的?HTTP
- 什麼是框架?為什麼說 Angular 是框架?框架Angular
- 什麼是Python演算法?分為哪幾類?Python演算法
- 最小距離分類器,互動式選取影像樣本分類資料,進行最小距離分類(實現歐式距離,馬氏距離,計程距離)
- 編輯距離及編輯距離演算法演算法
- 學點高階技術:基於密度的聚類演算法——FDBSCAN演算法聚類演算法
- 06聚類演算法-程式碼案例二-K-Means演算法和MiniBatchK-Means演算法比較聚類演算法BAT
- 為什麼說 Serverless 是雲的未來?Server
- 編輯距離演算法演算法
- 什麼是倉庫管理系統?為什麼選擇基於雲的WMS?
- 為什麼說5S是精益生產落地的基礎?
- 聚類演算法聚類演算法
- 為什麼說基於機器學習的AI預測更智慧?機器學習AI
- 為什麼milvus 計算出來的歐式距離和實際不符合?
- (分享)為什麼說React是UI的未來ReactUI
- 從零開始學機器學習——K-Means 聚類機器學習聚類
- 為什麼 JavaScript 是 TypeScript 的基礎JavaScriptTypeScript
- 聚類(part3)--高階聚類演算法聚類演算法
- 聚類之K均值聚類和EM演算法聚類演算法
- Spark中的聚類演算法Spark聚類演算法
- 機器學習基礎:相似度和距離度量究竟是什麼機器學習
- 什麼是基於模型的管理,它可以為組織帶來什麼好處?- modernanalyst模型NaN
- 為什麼說培訓是入行IT效率最高的方式?
- 為什麼說 Kubernetes 是一輛翻斗車
- 為什麼說CDN有利於網站網站