機器學習 第四周最近鄰演算法 KNN

2021-10-23 00:17:44 字數 1999 閱讀 9983

knn 即k- 鄰近分類演算法

計算步驟:

懶惰演算法

平時不好好學習,考試(對測試樣本分類)時才臨陣磨槍(臨時去找k個近鄰)。

懶惰的後果:模型簡單,計算開銷大。

演算法流程

優缺點

利用knn演算法實現對鳶尾花分類模型的構建及模型效能的基本評估 (python**實現)

from sklearn.datasets import load_iris

from sklearn.model_selection import train_test_split

from sklearn.neighbors import kneighborsclassifier

iris = load_iris() # 鳶尾花資料

data_tr, data_te, label_tr, label_te = train_test_split(iris.data, iris.target, test_size=0.2) # 拆分專家樣本集

model = kneighborsclassifier(n_neighbors=5) # 構建模型

model.fit(data_tr, label_tr) # 模型訓練

pre = model.predict(data_te) # 模型**

acc = model.score(data_te, label_te) # 模型在測試集上的精度

acc

利用樸素貝葉斯演算法實現對鳶尾花分類模型的構建及模型效能的基本評估 (python**實現)

import numpy as np

from sklearn.*****_bayes import gaussiannb

from sklearn.datasets import load_iris

from sklearn.model_selection import train_test_split

x = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])

y = np.array([1, 1, 1, 2, 2, 2])

clf = gaussiannb()

clf.fit(x, y)

clf.predict([[-0.8, -1]])

iris = load_iris()

data_tr, data_te, label_tr, label_te = train_test_split(iris.data, iris.target, test_size=0.2)

clf.fit(data_tr, label_tr)

pre = clf.predict(data_te)

acc = sum(pre == label_te)/len(pre) # 模型在測試集樣本上的**精度

機器學習 KNN最近鄰演算法

k近鄰 k nearest neighbor,knn 可以做分類,也可以做回歸。一 基本思想 給定一組訓練集,有乙個需要判斷類別的輸入例項,離輸入例項最近的k個訓練資料屬於哪個類別,就判斷輸入例項屬於哪個類別。二 分類演算法描述 1 計算輸入例項和所有訓練集資料的距離 2 按距離公升序排序 3 選擇...

機器學習 KNN(最近鄰)詳解

k 近鄰演算法原理 k最近鄰 knn,k nearestneighbor 分類演算法,見名思意 找到最近的k個鄰居 樣本 在前k個樣本中選擇頻率最高的類別作為 類別。下面舉個例子,一下大家就會顯而易見了,如下圖 e.g 下圖中,綠色圓要被決定賦予哪個類,是紅色三角形還是藍色四方形?如果k 3,由於紅...

機器學習第四周

好,下面來總結一下學習內容。一開始就講了non linear hypothesis 非線性估計 這是當資料無法用簡單的線性模型處理的時候採用的方法,然後andrew就開始講神經網路了,這一周的內容沒有很詳細,就是大概地讓你知道一下神經網路,產生乙個初步的印象。還是先來把用到的符號交代了吧。符號含義 ...