機器演算法學習筆記1 原理篇k近鄰法(knn)

2021-09-11 21:11:33 字數 516 閱讀 8947

給定乙個訓練資料集,對於新的輸入例項,在資料集中找到與該例項最鄰近的k個例項,這k個例項多數屬於哪一類,就把該輸入例項分為這個類。

優點:精度高、對異常值不敏感、無資料輸入假定。

缺點:計算複雜度高、空間複雜度高。

k值選擇:應用中k值一般取乙個比較小的數值,通常採用交叉驗證選取最優的k值。

距離度量:lp距離,歐氏距離(p=2),曼哈頓距離(p=1),切比雪夫距離(p=無窮)

分類決策規則:多數表決

特徵維數大及訓練資料容量大時,可以使用特殊的結構儲存訓練資料,以減少計算距離的次數。比如kd樹。

1.kd樹的構造

(1)構造根節點,選擇第一維座標中位數的位置(根節點)為切分點,將該維度分為兩部分。

(2)下一維度切割。

(3)所有點切分完畢停止。

tip:切割維度的選擇可以使用方差,選擇方差大的維度進行切割。**:

2.kd樹搜尋原文:

K 近鄰演算法學習

coding utf 8 from numpy import import operator def createdataset group array 1.0,1.1 1.0,1.0 0,0 0,0.1 labels a a b b return group,labels def classify...

(機器學習實戰)K 近鄰演算法學習過程

k 近鄰演算法,簡單地說,k 近鄰演算法採用測量不同特徵值之間的距離方法進行分類 k近鄰演算法特徵 詳細優點 精度高 對異常值不敏感 無資料輸入假定 缺點計算複雜度高 空間複雜度高 適用資料範圍 數值型和標稱型 k 近鄰演算法的一般流程 收集資料 可以使用任何方法 準備資料 距離計算所需要的數值,最...

機器學習演算法一 k 近鄰演算法(1)

採用測量不同特徵值之間的距離方法進行分類。knn工作原理 訓練樣本集中每個資料有乙個一一對應的所屬分類的標籤。需要分類的新資料沒有標籤,將新資料的每個特徵與樣本集中資料對應的特徵進行比較,然後將樣本集中與其特徵最相似 最近鄰 的資料標籤作為新資料的標籤。一般來說,我們選擇樣本集中前k個最相似的資料 ...