关于本站
人大经济论坛-经管之家:分享大学、考研、论文、会计、留学、数据、经济学、金融学、管理学、统计学、博弈论、统计年鉴、行业分析包括等相关资源。
经管之家是国内活跃的在线教育咨询平台!
获取电子版《CDA一级教材》
完整电子版已上线CDA网校,累计已有10万+在读~ 教材严格按考试大纲编写,适合CDA考生备考,也适合业务及数据分析岗位的从业者提升自我。
论文
- 毕业论文 | 写毕业论文
- 毕业论文 | 为毕业论文找思路
- 毕业论文 | 可以有时间好好写 ...
- 毕业论文 | 毕业论文如何选较 ...
- 毕业论文 | 毕业论文选题通过 ...
- 毕业论文 | 还有三人的毕业论 ...
- 毕业论文 | 毕业论文答辩过程 ...
- 毕业论文 | 本科毕业论文,wi ...
考研考博
- 考博 | 南大考博经济类资 ...
- 考博 | 考博英语10000词汇 ...
- 考博 | 如果复旦、南大这 ...
- 考博 | 有谁知道春招秋季 ...
- 考博 | 工作与考博?到底 ...
- 考博 | 考博应该如何选择 ...
- 考博 | 考博失败了
- 考博 | 考博考研英语作文 ...
TOP热门关键词
数据分析Python机器学习K近邻算法K最近邻(kNN,k-NearestNeighbor):工作原理:存在一个样本数据集合,也称作为训练样本集,并且样本集中每个数据都存在标签,即每一个数据与所属分类的一一对应关系。输入没有标签的 ...
免费学术公开课,扫码加入![]() |
K近邻算法
K最近邻(kNN,k-Nearest Neighbor):
工作原理:存在一个样本数据集合,也称作为训练样本集,并且样 本集中每个数据都存在标签,即每一个数据与所属分类的一一对应 关系。输入没有标签的新数据后,将新的数据的每个特征与样本集 中数据对应的特征进行比较,然后算法提取样本最相似数据(最近邻) 的分类标签。
一般来说,只选择样本数据集中前k个最相似的数据,这就是k-近邻 算法中k的出处,通常k是不大于20的整数。最后,选择k个最相似数 据中出现次数最多的分类,作为新数据的分类。
距离度量:
欧氏距离(最常用),曼哈顿距离,马氏距离,夹角余弦(越接近1,越相似)
k-近邻算法步骤:
计算已知类别数据集中的点与当前点之间的距离;
按照距离递增次序排序;
选取与当前点距离最小的k个点;
确定前k个点所在类别的出现频率;
返回前k个点所出现频率最高的类别作为当前点的预测分类
k-近邻算法实战:数据归一化
如果不同特征变量的量纲级别相差较大且在建模时相互影响,我们通常会对数据进行预处理,该手段称为数据标准化或数据归一化。
常见方法有min—max标准化(也称离差标准化):newValue = (oldValue - min) / (max - min)
Z—score标准化(也称均值归一化)
超参数优化
KNN中的k是一个超参数,需要人为输入。从KNN原理中可知,k值对 算法有极大的影响。
如果选择的k值较小,就相当于较小的邻域中的训练实例进行预测, 这时候只有与输入实例较近的(相似的)训练实例才会对预测结果 起作用,但缺点是预测结果会对近邻的实例点非常敏感。如果邻近 的实例点恰好是噪声,预测就会出错。相反地,如果选择的k值较大, 就相当于较大的邻域中的训练实例进行预测。这时与输入实例较远 的(不相似的)训练实例也会对预测起作用,使预测发生错误。
交叉验证优化超参数
模型每次使用不同的训练集和测试集,有不同的测试结果
机器学习追求的是模型在未知数据集上的效果,通过交叉验证进一 步提高模型的泛化能力
KNN总结:
一种非参数、惰性学习方法,导致预测时速度慢
当训练样本集较大时,会导致其计算开销高
样本不平衡的时候,对稀有类别的预测准确率低
KNN模型的可解释性不强
代码实现:
例子:鸢尾花分类
import numpy as np
from sklearn import datasets
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import train_test_split
# 导入鸢尾花数据并查看数据特征
iris = datasets.load_iris()
print(\'数据量\',iris.data.shape)
# 拆分属性数据
iris_X = iris.data
# 拆分类别数据
iris_y = iris.target
iris_train_X , iris_test_X, iris_train_y ,iris_test_y = train_test_split(iris_X, iris_y, test_size=0.2,random_state=0)
knn = KNeighborsClassifier(n_neighbors=6)
knn.fit(iris_train_X, iris_train_y)
predict_result=knn.predict(iris_test_X)
print(\'预测结果\',predict_result)
# 计算预测的准确率
print(\'预测准确率\',knn.score(iris_test_X, iris_test_y)) #knn.score()涵义先做预测,再比较
回归
X = [[0], [1], [2], [3]]
y = [0, 0, 1, 1]
from sklearn.neighbors import KNeighborsRegressor
neigh = KNeighborsRegressor(n_neighbors=2)
neigh.fit(X, y)
print(neigh.predict([[1.5]]))
「经管之家」APP:经管人学习、答疑、交友,就上经管之家!
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
免流量费下载资料----在经管之家app可以下载论坛上的所有资源,并且不额外收取下载高峰期的论坛币。
涵盖所有经管领域的优秀内容----覆盖经济、管理、金融投资、计量统计、数据分析、国贸、财会等专业的学习宝库,各类资料应有尽有。
来自五湖四海的经管达人----已经有上千万的经管人来到这里,你可以找到任何学科方向、有共同话题的朋友。
经管之家(原人大经济论坛),跨越高校的围墙,带你走进经管知识的新世界。
扫描下方二维码下载并注册APP
您可能感兴趣的文章
人气文章
本文标题:【学习笔记】数据分析Python机器学习 K近邻算法 K最近邻(kNN,k-Nearest Nei ...
本文链接网址:https://bbs.pinggu.org/jg/shuju_shujufenxi_9522832_1.html
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。



