綜述
1.1 Cover和Hart在1968年提出了最初的鄰近算法
1.2 分類(classification)算法
1.3 輸入基於實例的學習(instance-based learning), 懶惰學習(lazy learning)例子:
未知電影屬於什麼類型?
3. 算法詳述
3.1 步驟:
爲了判斷未知實例的類別,以所有已知類別的實例作爲參照
選擇參數K
計算未知實例與所有已知實例的距離
選擇最近K個已知實例
根據少數服從多數的投票法則(majority-voting),讓未知實例歸類爲K個最鄰近樣本中最多數的類別
3.2 細節:
關於K
關於距離的衡量方法:
3.2.1 Euclidean Distance 定義
其他距離衡量:餘弦值(cos), 相關度 (correlation), 曼哈頓距離 (Manhattan distance)
3.3 舉例
算法優缺點:
4.1 算法優點
簡單
易於理解
容易實現
通過對K的選擇可具備丟噪音數據的健壯性4.2 算法缺點
需要大量空間儲存所有已知實例
算法複雜度高(需要比較所有已知實例與要分類的實例)
當其樣本分佈不平衡時,比如其中一類樣本過大(實例數量過多)佔主導的時候,新的未知實例容易被歸類爲這個主導樣本,因爲這類樣本實例的數量過大,但這個新的未知實例實際並木接近目標樣本改進版本
考慮距離,根據距離加上權重
比如: 1/d (d: 距離)