KNN演算法 測試分類iris資料集

2021-10-14 14:41:10 字數 1051 閱讀 5877

以iris資料集為例,簡單執行下knn的演算法:

#匯入常規要用的包

from sklearn.datasets import load_iris

from sklearn.neighbors import kneighborsclassifier

from sklearn.model_selection import train_test_split

import numpy as np

import pandas as pd

from sklearn.preprocessing import standardscaler

#準備資料集

li=load_iris(

)#劃分資料集

x_train ,x_test,y_train,y_test=train_test_split(li.data,li.target,test_size=

0.25

,random_state=

100)

#特徵工程之標準化

#(特別注意2點:1.如果先標準化再劃分資料集,標準化的過程中,train集已經用到了test集的資訊,這是一定要避免的。

#2.test集直接用transform,不能用fit,用已獲取的train集期望和方差,對以後的資料做統一的標準化)

std=standardscaler(

)x_train=std.fit_transform(x_train)

x_test=std.transform(x_test)

#例項化knn演算法

knn=kneighborsclassifier(n_neighbors=

3,weights=

'distance'

)#隨意加了weights嘗試下

knn.fit(x_train,y_train)

#輸出yhat及準確率

y_predict=knn.predict(x_test)

knn.score(x_test,y_test)

0.9736842105263158

knn分類iris資料

題目 sklearn中的datasets方法匯入iris鳶尾花訓練樣本並用train test split產生測試樣本,用knn分類並輸出分類精度。data sklearn.datasets.iris.data label sklearn.datasets.iris.target 輸出 from s...

Python實現KNN演算法 iris資料集

在本文中,通過python實現knn演算法,而非簡單的呼叫sklearn庫,並通過iris鳶尾花資料集進行訓練和測試。詳情參見以下 if name main trainx,trainy,testx,testy loadsplitdataset prey knn testx evaluateknn 和...

資料分類KNN演算法

監督就是給的樣本都有標籤,分類的訓練樣本必須有標籤,所以分類演算法都是有監督演算法。監督機器學習無非就是 minimize your error while regularizing your parameters 也就是在規則化引數的同時最小化誤差。最小化誤差是為了讓我們的訓練資料,而規則化引數是...