KNN演算法,K聚類的優缺點

2021-09-09 08:50:35 字數 1380 閱讀 1502

適用資料範圍:數值型和標稱型 (目標變數的結果只在有限目標集中取值,如真與假,標稱型目標變數主要用於分類)

優點① 簡單,易於理解,易於實現,無需引數估計,無需訓練;

② 對異常值不敏感(個別噪音資料對結果的影響不是很大);

③ 適合對稀有事件進行分類;

④ 適合於多分類問題(multi-modal,物件具有多個類別標籤),knn要比svm表現要好;

缺點① 對測試樣本分類時的計算量大,記憶體開銷大,因為對每乙個待分類的文字都要計算它到全體已知樣本的距離,才能求得它的k個最近鄰點。目前常用的解決方法是事先對已知樣本點進行剪輯,事先去除對分類作用不大的樣本;

② 可解釋性差,無法告訴你哪個變數更重要,無法給出決策樹那樣的規則;

③ k值的選擇:最大的缺點是當樣本不平衡時,如乙個類的樣本容量很大,而其他類樣本容量很小時,有可能導致當輸入乙個新樣本時,該樣本的k個鄰居中大容量類的樣本占多數。該演算法只計算「最近的」鄰居樣本,某一類的樣本數量很大,那麼或者這類樣本並不接近目標樣本,或者這類樣本很靠近目標樣本。無論怎樣,數量並不能影響執行結果。可以採用權值的方法(和該樣本距離小的鄰居權值大)來改進;

④ knn是一種消極學習方法、懶惰演算法。

演算法步驟:

1、計算已知類別資料集中的點與當前點之間的距離;

2、按照距離遞增次序排序;

3、選取與當前點距離最小的k個點;

4、確定k個點所在類別的出現頻率;

(k用於選擇最近鄰的數目,k的選擇非常敏感。k值越小意味著模型複雜度越高,從而容易產生過擬合;k值越大則 意味著整體的模型變得簡單,學習的近似誤差會增大,在實際的應用中,一般採用乙個比較小的k值,用交叉驗證的 方法,選取乙個最優的k值。)

5、返回前k個點出現頻率最高的類別作為當前點的**分類

參考:

適用資料範圍:數值型

優點:容易實現

缺點:① 簡單,易於理解,易於實現,無需引數估計,無需訓練;

② 可能收斂到區域性最小值(2分 k均值);

③ 在大規模資料集上收斂較慢;

④ 對異常值敏感;

演算法步驟:

1) 選取資料空間中的k個物件作為初始中心,每個物件代表乙個聚類中心(可隨機可指定);

2) 對於樣本中的資料物件,根據它們與這些聚類中心的歐氏距離,按距離最近的準則將它們分到距離它們最近的聚類中心(最相似)所對應的類;

3) 更新聚類中心:將每個類別中所有物件所對應的均值作為該類別的聚類中心,計算目標函式的值;

4) 判斷聚類中心和目標函式的值是否發生改變,若不變,則輸出結果,若改變,則返回2)。

確定k的個數:

1、按需選擇(規定的k)

2、觀察法

3、手肘法(將k作為自變數,每個k都會得到所有樣本到k簇的距離和,將這個和作為因變數,畫圖,擬合,找到極值點)

參考:

聚類演算法優缺點總結

聚類演算法優缺點總結 k均值演算法 二分k 均值演算法 min單鏈凝聚層次聚類 max全鏈凝聚層次聚類 組平均凝聚層次聚類 ward方法 質心方法 lance williams公式 dbscan密度聚類 資料具有大小很不同的簇 高維資料 具有離群點的資料 具有高度不規則區域的資料 具有球形簇的資料 ...

聚類演算法優缺點分析

演算法定義 優點缺點 kmeans 簡單 高效 快速收斂 當簇接近高斯分布式,聚類效果好 必須定義平均值,k事先給定,k的值影響聚類效果,對異常值影響大 dbscan 可以對任意形狀進行聚類,對異常值不敏感 對簇密度相差較大,不均勻的話,聚類效果不好,樣本大,收斂時間長 凝聚式層次聚類 速度快,對異...

k means聚類,密度聚類,層次聚類優缺點

k means 優點 1,簡單,易於理解和實現 2,時間複雜度低 缺點 1,需要對均值給出定義,2,需要指定要聚類的數目 3,一些過大的異常值會帶來很大影響 4,演算法對初始選值敏感 5,適合球形聚類 層次聚類 優點 1,距離和規則的相似度容易定義,限制少 2,不需要預先制定聚類數 3,可以發現類的...