K近鄰演算法(一)

2022-08-22 05:27:13 字數 725 閱讀 5467

k 近鄰演算法思想:

尋找該點周圍最近的k個點。根據這k 個點的類別來判斷該點的類別;

核心:資料歸一化。(在必要的時候必須進行資料歸一化處理,防止某一特徵在計算資料時佔比較重)

計算尤拉距離。 使用python中 np的向量相減後的平方再開根號

distances =

for x_train in

x_train:

d = sqrt(np.sum((x_train - x) ** 2))

distances = [sqrt(np.sum((x_train-x)**2)) for x_train in x_train]

比較尤拉距離。 獲取距離由近到遠的索引下標:

nearest = np.argsort(distances)   #返回的是從小到大的對應索引

選擇k個最近的,並統計型別。

topk_y = [y_train[i] for i in nearest[:k]]       #

選前k個

c = counter(topk_y) #

統計型別

print(c.most_common(1)[0][0]) #

輸出計數最高的那個元組中的值

k近鄰演算法matlab實現 K 近鄰演算法(一)

k 近鄰演算法是採用不同特徵之間的距離方法進行分類。優點 精度高 對異常值不敏感 無資料輸入假定 缺點 計算複雜度高 空間複雜度高 k 近鄰演算法的一般流程 1 收集資料集 可以使用任何方法 2 準備資料集 距離計算所需要的數值,最好是結構化的資料格式 3 分析資料 可以使用任何方法 4 訓練資料集...

ML演算法一 K 近鄰演算法

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 classify0 inx,dataset...

k 近鄰演算法

此文章參考機器學習實戰一書,具體的理論知識可以參考該書。本文的初衷只是為了做乙個複習,將學過的知識加以整理,其中不免有一定的錯誤。2.k 近鄰演算法的原理介紹 k 近鄰演算法通過測量不同的特徵值之間的距離進行分類。它的工作原理如下 存在乙個樣本的資料集合,也成為訓練樣本集合。並且樣本集中的每個資料都...