sklearn knn 算法

 最近邻分类算法

优点:

简单,易理解,易实现;适合对稀有事件进行分类。

适合多分类问题(multi-modal,对象有多个类别标签),k-nn比svm更合适

缺点:

1、当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数

2、计算量较大,因为对每一个待分类的文本都要计算它到全体已知样本的距离,才能求得它的K个最近邻点


import sklearn
import sklearn.neighbors
import sklearn.datasets
iris = sklearn.datasets.load_iris()
x = iris.data #
必须是二维数组
y = iris.target #必须是一维数组


kn_clf = sklearn.neighbors.KNeighborsClassifier()
kn_clf.fit(x,y)
kn_y = kn_clf.predict(x)

print(kn_y)
print(y)
knn_mean = (kn_y == y).astype(
int).mean()

print(knn_mean)

你可能感兴趣的:(python,sklearn,python,算法)