python 機器學習 KNN最鄰近演算法的實現

2021-09-13 10:55:47 字數 1131 閱讀 7858

# -*- coding: utf-8 -*-

"""created on fri mar 22 21:21:48 2019

@author: wwq

"""from sklearn import datasets

import numpy as np

'''knn演算法'''

iris=datasets.load_iris()

#資料集包含150個資料集,分為3類,每類50個資料,

#可通過花萼長度,花萼寬度,花瓣長度,花瓣寬度4個特徵**鳶尾花卉屬於

#(setosa,versicolour,virginica)三個種類中的哪一類

iris_x,iris_y=iris.data,iris.target

#將資料集隨機的分為資料集賀測試資料集

np.random.seed(0)

indices=np.random.permutation(len(iris_x))

####下面是訓練集和測試集的方法

#用於訓練模型

iris_x_train=iris_x[indices[:-10]]

iris_y_train=iris_y[indices[:-10]]

#用於測試模型

iris_x_test=iris_x[indices[-10:]]

iris_y_test=iris_y[indices[-10:]]

from sklearn.neighbors import kneighborsclassifier

knn=kneighborsclassifier()

knn.fit(iris_x_train,iris_y_train)

prediction=knn.predict(iris_x_test)

score=knn.score(iris_x_test,iris_y_test)

print ('真實分類標籤:'+str(iris_y_test))

print ('模型分類結果:'+str(prediction)+'\n演算法準確度:'+str(score))

機器學習 KNN

posted on 2015 05 21 20 34 in ml 0 comment views 3195 原始碼 決策樹和基於規則的分類器都是積極學習方法 eager learner 的例子,因為一旦訓練資料可用,他們就開始學習從輸入屬性到類標號的對映模型。乙個相反的策略是推遲對訓練資料的建模,直...

機器學習 KNN

定義事件ejl j 0,1.k e j epsilon 0,1.k ejl j 0,1.k 為對於標籤 l,k個鄰居中包換j個這個標籤,則 e為乙個 k n 的矩陣,每一行為距離該例項的樣本中每個標籤的數量,則 c l 向量是e矩陣的最後一行,表示距離為k時的各個標籤數量。則我們需要的是在已知e矩陣...

機器學習 kNN

0.載入相關模組 import numpy as np import matplotlib.pyplot as plt import pandas as pd import seaborn as sns from sklearn.model selection import train test s...