分類(二):K最近鄰演算法(KNN
最新
05-14
1.簡介:K最近鄰演算法是機器學習分類演算法中最簡單的方法之一。所謂K最近鄰,就是K個最近鄰居的意思,說的是每個樣本都可以用它最接近的K個鄰居來代表。
2.距離:空間有任意兩個點P(x1, x2,…,xn),Q(y1,y2,…,yn),兩點之間的距離公式有以下四種:
(1)閔可夫斯基距離:
(2)歐氏距離:當p=2時,
(3)曼哈頓距離:當p=1時,
(4)切比雪夫距離:當p趨向於無窮時,
3.演算法步驟:
(1)選擇k值,也即新的數據點旁邊的K個點,K一般默認為5
(2)根據歐式距離(或其他距離),取距離新的數據點最近的K個鄰居
(3)在這K個鄰居點中,計算出這些點在每個分類中的數目
(4)把新的數據歸結到數目最大的那個分類中
4.例子:
(1)選取K=5
(2)根據距離公式,距離新的數據點的最近的5個點為以下5個點
(3)計算這5個點在每個分類中的數目,其中分類1的數目=3,分類2的數目=2
(4)將這個新的數據點歸於分類1
5.實例:自變數為年齡與薪水,因變數是購買意願,屬於分類變數,其中1代表願意購買,代表不願意購買。
(1)讀取數據及其描述性分析
(2)分離出訓練集和測試集
(3)數據的歸一化
(4)KNN演算法的應用
(5)預測
(6)模型評估
(7)訓練集的可視化
(8)測試集的可視化