機器學習之最鄰近規則分類KNN

2021-09-24 06:39:38 字數 1390 閱讀 4594

k最近鄰(k-nearest neighbor,knn)演算法,是著名的模式識別統計學方法,在機器學習分類演算法中占有相當大的地位。它是乙個理論上比較成熟的方法。既是最簡單的機器學習演算法之一,也是基於例項的學習方法中最基本的,又是最好的文字分類演算法之一。

如果乙個例項在特徵空間中的k個最相似(即特徵空間中最近鄰)的例項中的大多數屬於某乙個類別,則該例項也屬於這個類別。所選擇的鄰居都是已經正確分類的例項。

該演算法假定所有的例項對應於n維歐式空間ân中的點。通過計算乙個點與其他所有點之間的距離,取出與該點最近的k個點,然後統計這k個點裡面所屬分模擬例最大的,則這個點屬於該分類。

一張圖助你理解:

該演算法涉及3個主要因素:例項集、距離或相似的衡量、k的大小。

乙個例項的最近鄰是根據標準歐氏距離定義的。更精確地講,把任意的例項x表示為下面的特徵向量:

1.為了判斷未知例項的類別,以所有已知類別的例項作為參照

2.選擇引數k

3.計算某未知例項與已知例項的距離

4.選擇k個最近的已知例項

5.根據少數服從多數的投票法則(majority-voting),讓未知例項歸類為k個最近臨近樣本中最多數的類別

以下由打鬥次數和接吻次數的資料集以及對應的電影型別,預知在某一打鬥次數和接吻次數條件下應該歸為哪一類 :

把訓練集虛擬成向量(點集):

計算g點與所有點的距離:

若給定的k值為3,則選擇最小的3個距離 的點:a,b,c

在a,b,c中投票選取最大概率出現的型別:romance

所以g的歸類應該是romance

根據k值的不同討論綠色點的歸類:

選取不同的k值對歸類結果存在影響,可以通過增大k值減少噪音(最好選取奇數)

機器學習分類篇 最鄰近規則分類KNN

最鄰近規則分類演算法 k nearest neighbor cover和hart在1968年提出了最初的鄰近演算法,也被稱為基於例項的學習或懶惰學習,與決策樹演算法相比,處理訓練集的時候並不建立任何模型,進行分類時才將測試樣例和所有已知例項進行比較進而分類。如上圖,主要有兩種色塊,藍色方塊和紅色三角...

機器學習鄰近演算法(KNN)

臨近演算法 臨近演算法 knn 是資料探勘分類技術中最簡單的方法之一。所謂k最近鄰,就是k個最近的鄰居的意思,說的是每個樣本都可以用它最接近的k個鄰居來代表,knn方法既可以做分類,也可以做回歸。knn演算法的核心思想是如果乙個樣本在特徵空間中的k個最相鄰的樣本中的大多數屬於某乙個類別,則該樣本也屬...

機器學習 KNN鄰近演算法

1 knn 演算法概述 cover和hart在1968年提出了最初的鄰近演算法。所謂k最近鄰,就是k個最近的鄰居的意思,說的是每個樣本都可以用它最接近的k個鄰居來代表。knn是一種分類 classification 演算法,它輸入基於例項的學習 instance based learning 屬於懶...