python的knn算法,python中计算n!
本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。
最近邻算法被称为KNN算法,是机器学习的经典算法。一般来说,KNN算法是相对的。
简单易懂的算法。
1、定义
如果特征空间中k个最相似样本的大部分属于某个类别,那么这个样本也属于这个类别。(出处:KNN是由Cover和Hart首先提出的一种分类算法);俗话说:从“邻居”推断你的类别。
2、基本流程
(1)计算已知类数据集中的点与当前点之间的距离;以及(2)按照距离增加的顺序排序。
(2)选择与当前点距离最小的k个点
(3)统计前k个点所在类别的出现频率。
(4)返回前k个点出现频率最高的类别作为当前点的预测分类。
3、实例
代码涉及sklean库,需要安装sk lean库。
fromsk learn . datasetsimportload _ iris
fromsk learn . model _ selectionimporttrain _ test _ split
fromsk learn . preprocessingimportstandardscaler
fromsk learn . neighborsimportknighborsclassifier
#1.检索数据
iris=load_iris()
#2.基础数据处理:训练集特征值x _训练测试集x _测试训练集y _训练测试集y _测试,
x:数据集的特征值
Y:数据集的标签值
测试集的Test_size:一般为float。
Random_state:随机数,种类不同会造成随机抽样结果不同。相同的物种有相同的取样结果。
x_train,x_test,y_train,y _ test=train _ test _ split(iris . data,iris.target,test_size=0.2,random_state=22)
#3.特征工程-特征预处理
transfer=StandardScaler()
x _ train=transfer . fit _ transform(x _ train)
x _ test=transfer . transform(x _ test)
#4.机器学习-KNN
#4.1实例化评估者
estimator=KNeighborsClassifier(n _ neighbors=5)
#4.2模型培训
estimator.fit(x_train,y_train)
#5.模型评估
#5.1预测值结果的输出
y_pre=estimator.predict(x_test)
打印(预测值为:\n ,y_pre)
Print(预测值和真实值的比较是:\n ,y_pre==y_test)
#5.2精度计算
score=estimator.score(x_test,y_test)
Print(准确率为:\n ,分数)以上是python中K-NN算法的介绍。希望能帮到你。更多Python学习指南:python基础教程
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。