一、聚類
聚類分析是非監督學習的很重要的領域。所謂非監督學習,就是資料是沒有類別標記的,演算法要從對原始資料的探索中提取出一定的規律。而聚類分析就是試圖將資料集中的樣本劃分為若干個不相交的子集,每個子集稱為乙個「簇」。它的難點是不好調參和評估。下面是sklearn中對各種聚類演算法的比較。
二、k-means演算法
kmeans演算法在給定乙個數k之後,能夠將資料集分成k個「簇」c
='>=
c=,不論這種分類是否合理,或者是否有意義。演算法需要最小化平方誤差:
其中μi=1
|ci|
∑x∈c
ix'>μi
是簇ci
'>ci
的均值向量,或者說是質心。其中‖x−
μi‖2
'>‖x−μi‖^2
代表每個樣本點到均值點的距離(其實也是範數)。這裡就稍微提一下距離度量。
所以要得到簇的個數,需要指定k值
質心:均值,即向量各維取平均即可
距離的度量:常用歐幾里得距離和余弦相似度(先標準化)
優化目標:
工作流程:
根據給定的k值,隨便取k個點作為k個簇的質心,比如k=2,然後計算各個點到兩個質心的距離,離哪個近則劃入那一邊,然後重新調整質心位置,再分簇,直至質心不再變動為止。
優勢:簡單,快速,適合常規資料集
劣勢:
機器學習筆記 kMeans聚類
優點 容易實現。缺點 可能收斂到區域性最小值,在大規模資料集上收斂較慢。適用資料型別 數值型資料 k 均值演算法 先隨機確定k個初始點作為質心,然後將資料集中的每個點分配到乙個簇中,具體來講為每個點找距其最近的質心,並將其分配給該質心所對應的簇。再每個簇更新質心為該簇所有點的平均值。import n...
機器學習之Kmeans聚類
本次學習總結 1 理解相似度度量的各種方法及其相互聯絡 2 掌握k means演算法思路及其使用條件 3 層次聚類的思路和方法 4 密度聚類並能夠應用於實踐 dbscan 密度最大值聚類 5 譜聚類演算法 譜聚類演算法與pca之間的關係 聚類的定義 聚類就是將大量未知標註的資料,按照資料的內在相似性...
機器學習之聚類演算法 K Means
參考 聚類演算法可以分為 中心點方法 層次聚類方法 基於密度方法 基於網格 基於模型方法。其中最為經典的是k means演算法 k means屬於中心點方法 也有叫劃分方法 演算法經典簡單。演算法 人工選取k值,並選取k個點作為k個簇的質心 對所有樣本分別計算到k個簇的質心的距離 歐式或者曼哈頓 取...