sklearn学习(4)K近邻(KNN)

#K近邻是一种直观和简单的监督学习方法,既可以用在分类任务也可用在回归任务,其主要思想是对于一个新样本计算离它最近的k个样本一般为奇数个,看这k个在哪一类中的数量多,则属于那一类。需要注意的是在进行KNN之前最好对数据进行标准化处理,避免由于量纲导致不利影响。

导入库

复制代码
from sklearn.metrics import accuracy_score
from sklearn.neighbors import KNeighborsClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import classification_report

加载数据

复制代码
iris=load_iris()
x=iris.data
y=iris.target

标准化并划分数据集和测试集

复制代码
#标准化
sc=StandardScaler()
x=sc.fit_transform(x)
#划分训练集和测试集
x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=0.2)

创建KNN

复制代码
#创建KNN
knn=KNeighborsClassifier(n_neighbors=3)
#参数解释
#n_neighbors=3,表示根据K个点投票看新类别在哪个类别
#weights=uniform,表示每个邻居的权重相同 还有distance表示距离越近权重越大 默认是uniform
#algorithm=auto,表示计算方式,默认是auto,还有ball_tree kd_tree brute 表示使用的算法
#leaf_size=30,表示叶子节点的个数,默认是30 仅在algorithm=ball_tree和kd_tree时使用
#p=2,表示距离的度量方式,默认是欧氏距离,还有曼哈顿距离
#metric=euclidean,表示距离的度量方式,默认是欧氏距离,还有曼哈顿距离等
#训练
knn.fit(x_train,y_train)#注意这是惰性训练,只会存储数据,不会有模型

测试

复制代码
y_predict=knn.predict(x_test)
print(y_test)
print(y_predict)
print(y_predict==y_test)

计算准确率并输出报告

复制代码
#计算准确率
accuracy=accuracy_score(y_test,y_predict)
print("准确率:",accuracy)
accur=knn.score(x_test,y_test)
print("准确率:",accur)

#分类报告
print(classification_report(y_test,y_predict,target_names=iris.target_names))
相关推荐
只是甲23 分钟前
Text2SQL 系列博客 02:技术原理深度剖析 - 从自然语言到 SQL 的完整链路
人工智能·text2sql·nl2sql·ai agent·自助数据分析·data agent·agentic 数据洞察
懷淰メ34 分钟前
【AI赋能】基于PyQt+YOLO+DeepSeek水上漂浮物检测系统(详细介绍)
人工智能·yolo·目标检测·计算机视觉·pyqt·漂浮物·水上漂浮物
EQUINOX135 分钟前
【论文精读】| CLIP精读
大数据·人工智能
PC2005-cloud1 小时前
博文已索引但不展示:一次 Bing SEO 问题排查记录
服务器·人工智能
weixin_408099671 小时前
2026 图片去文字 API 实战:AI一键去除图片文字(附 Python / Java / PHP / JS 完整代码)
人工智能·api接口·图片去水印·石榴智能·ai图像修复·图片去文字
greenbbLV1 小时前
2026节日慰问品政策解读:合规标准升级与福利行业新趋势
人工智能·节日
奈斯先生Vector2 小时前
告别工具碎片化:基于 Nano Banana 全模态 AI 聚合架构搭建“文本-图像-视频”自动化协同生产线
运维·数据库·人工智能·架构·自动化·aigc·音视频
领麦微红外2 小时前
国产MEMS红外测温传感器:传感器+算法+产品级出厂标定一站式交付模式深度解读
人工智能·硬件工程·产品经理
mingo_敏2 小时前
DeepAgents : 检索(Retrieval)
人工智能·深度学习·langchain
微三云 - 廖会灵 (私域系统开发)2 小时前
消费即资产:积分增值异业联盟商业模式完整拆解(附落地逻辑、合规方案与盈利模型)
大数据·人工智能