機器學習之k NN(學習筆記一)

2021-07-02 06:40:08 字數 724 閱讀 6798

原理思想:如果乙個樣本在特徵空間中的k個最相似的樣本中的大多數屬於某乙個類別,則該樣本也屬於這個類別。

演算法過程:

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

2)按照距離遞增的次序進行排序;

3)選擇與當前點(待分類點)距離最小的k個點作為評判標準;

4)確定前k個點中,各個點的數量,或是概率有多少;

5)概率多大的,或數出現率最高的類別作為當前點的**分類;

k值選擇問題,因為它對k近鄰演算法的結果會產生重大影響。

1、如果選擇較小的k值,就相當於用較小的領域中的訓練例項進行**,「學習」近似誤差會減小,只有與輸入例項較近或相似的訓練例項才會對預      測結果起作用,與此同時帶來的問題是「學習」的估計誤差會增大,換句話說,k值的減小就意味著整體模型變得複雜,容易發生過擬合;

2、如果選擇較大的k值,就相當於用較大領域中的訓練例項進行**,其優點是可以減少學習的估計誤差,但缺點是學習的近似誤差會增大。這                時候,與輸入例項較遠(不相似的)訓練例項也會對**器作用,使**發生錯誤,且k值的增大就意味著整體的模型變得簡單。

3、k=n,則完全不足取,因為此時無論輸入例項是什麼,都只是簡單的**它屬於在訓練例項中最多的累,模型過於簡單,忽略了訓練例項中大                量有用資訊。

在實際應用中,k值一般取乙個比較小的數值,例如採用交叉驗證法(簡單來說,就是一部分樣本做訓練集,一部分做測試集)來選擇最優的k值。

機器學習之KNN

knn主要應用於文字分類 聚類分析 分析 降維等 中心思想是採用測量不同特徵值之間的距離方法進行分類 演算法非常簡單,不過這是乙個監督演算法,訓練資料需要經過人工標記。演算法中心思想是 計算候選樣本到所有訓練樣本之間的距離,選取k個最近距離資料中出現次數最多的分類作為新樣本的類別。from nump...

機器學習之KNN

knn分類演算法 k nearest neighbors classification 即k近鄰演算法 給定乙個訓練資料集,對新的輸入例項,在訓練資料集中找到與該例項最鄰近的k個例項,這k個例項的多數屬於某個類,就把該輸入例項分類到這個類中。核心思想 要確定測試樣本屬於哪一類,就尋找所有訓練樣本中與...

機器學習之KNN

以下部落格主要由兩部分構成。一是理論講解,而是 實現 因為工程上使用knn的頻率不是很高,所以 不是目的,一些 中的技巧就顯得很重要了 首先knn是什麼?k nearest neighbors knn 以下的均來自 貪心科技 不是打廣告,純粹是尊重智財權。因為便於投票分類 怎麼選擇合適的k,一般會用...