sklearn knn

226 阅读1分钟
from sklearn import datasets
from sklearn.neighbors import KNeighborsClassifier 
import numpy as np 

np.random.seed(0)  
iris=datasets.load_iris() 
iris_x=iris.data   
iris_y=iris.target  
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:]] 

knn = KNeighborsClassifier() 
knn.fit(iris_x_train, iris_y_train)  

iris_y_predict = knn.predict(iris_x_test) 
probility=knn.predict_proba(iris_x_test)  

np.shape(iris_x_train)
(140, 4)
iris_x_test[-1].reshape(1,-1)
array([[4.6, 3.2, 1.4, 0.2]])
score=knn.score(iris_x_test,iris_y_test,sample_weight=None)

print('iris_y_predict = ')  
print(iris_y_predict)  

print('iris_y_test = ')
print(iris_y_test)    
print ('Accuracy:')
print(score)  

print ('probility:')
print (probility)
iris_y_predict = 
[1 2 1 0 0 0 2 1 2 0]
iris_y_test = 
[1 1 1 0 0 0 2 1 2 0]
Accuracy:
0.9
probility:
[[0.  1.  0. ]
 [0.  0.4 0.6]
 [0.  1.  0. ]
 [1.  0.  0. ]
 [1.  0.  0. ]
 [1.  0.  0. ]
 [0.  0.  1. ]
 [0.  1.  0. ]
 [0.  0.  1. ]
 [1.  0.  0. ]]
neighborpoint=knn.kneighbors(iris_x_test,5,False)
print ('neighborpoint of last test sample:')
print(neighborpoint)
neighborpoint of last test sample:
[[ 71  81 127  63  38]
 [119  33  76  60  52]
 [ 79 132   1  13  27]
 [ 44 113 107  68  32]
 [122  87  99  97  68]
 [106  15  93  61  82]
 [ 46  30  86  70  34]
 [ 39 128 127  50  63]
 [116 104  80  51 121]
 [ 75  41  96  78 123]]