Python机器学习-K近邻算法

案例来源,《Python机器学习实战》

from sklearn import datasets
from sklearn.neighbors import KNeighborsClassifier
# from sklearn import cross_validation
from sklearn import model_selection

from sklearn.metrics import classification_report
from sklearn.metrics import confusion_matrix
from sklearn.metrics import accuracy_score

#准备数据集,并分离训练集和验证集
iris = datasets.load_iris()  #导入自带的Iris数据集
X = iris.data
Y = iris.target
validation_size = 0.20
seed = 1
X_train,X_validation,Y_train,Y_validation = model_selection.train_test_split(
    X,Y,test_size=validation_size,random_state=seed
)  #将数据集中随机20%的内容作为验证集


#创建KNN分类器,并拟合数据集
knn = KNeighborsClassifier()
knn.fit(X_train,Y_train)

#在验证集上进行预测,并输出accuracy score,混淆矩阵和分类报告
predictions = knn.predict(X_validation)
print(accuracy_score(Y_validation,predictions))
print(confusion_matrix(Y_validation,predictions))
print(classification_report(Y_validation,predictions))

原书中调用的是cross_validation模块,实际中此模块已逐渐被弃用,不建议继续使用。可用其下方的sklearn.model_selection模块代替

运行结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值