更新時間:2021-04-28 來源:黑馬程序員 瀏覽量:
根據(jù)你的“鄰居”來推斷出你的類別
K Nearest Neighbor算法又叫KNN算法,這個算法是機(jī)器學(xué)習(xí)里面一個比較經(jīng)典的算法, 總體來說KNN算法是相對比較容易理解的算法
定義
如果一個樣本在特征空間中的k個最相似(即特征空間中最鄰近)的樣本中的大多數(shù)屬于某一個類別,則該樣本也屬于這個類別。
來源:KNN算法最早是由Cover和Hart提出的一種分類算法
距離公式
兩個樣本的距離可以通過如下公式計(jì)算,又叫歐式距離 ,關(guān)于距離公式會在后面進(jìn)行討論
假設(shè)我們現(xiàn)在有幾部電影
其中? 號電影不知道類別,如何去預(yù)測?我們可以利用K近鄰算法的思想
分別計(jì)算每個電影和被預(yù)測電影的距離,然后求解
1)計(jì)算已知類別數(shù)據(jù)集中的點(diǎn)與當(dāng)前點(diǎn)之間的距離
2)按距離遞增次序排序
3)選取與當(dāng)前點(diǎn)距離最小的k個點(diǎn)
4)統(tǒng)計(jì)前k個點(diǎn)所在的類別出現(xiàn)的頻率
5)返回前k個點(diǎn)出現(xiàn)頻率最高的類別作為當(dāng)前點(diǎn)的預(yù)測分類
猜你喜歡: