【机器学习实验一】k近邻算法(KNN)

【机器学习实验一】k近邻算法(KNN)

一、配置环境


看了很多教程,最终决定安装Anaconda+Pycharm的环境。因为Anaconda中包含了很多库,使用的时候就不用另外手动安装了。而Pycharm作为一款针对Python的编辑器,配置简单,功能强大,使用起来省时省心,对初学者友好,这也是编程验室推荐新手使用Pycharm的原因。

基础安装教程大家可参考:​Python环境的安装(Anaconda+Jupyter notebook+Pycharm) - 知乎
如果大家决定安装Anaconda+Pycharm的环境,推荐大家参考这个博主的安装教程,会更具体:Python+Anaconda+PyCharm的安装和基本使用【适合完全零基础】不只是教你如何安装,还告诉你为什么这么安装_哔哩哔哩_bilibili

二、KNN算法

1.算法简介

最近邻 (k-Nearest Neighbors, KNN) 算法是一种分类算法, 1968年由 Cover和 Hart 提出, 应用场景有字符识别、 文本分类、 图像识别等领域。

2.算法思想

给定测试样本,基于某种距离度量找出在训练集中与其最靠近的k个“邻居”的信息来进行预测。通常,在分类任务中可使用“投票法”,即选择这k个样本中出现最多的类别标记作为预测结果;在回归任务中可使用“平均法”,即将这k个样本的实值输出标记的平均值作为预测结果;还可基于距离远近进行加权平均或者加权投票,距离越近的样本权重越大。

3. 算法的一般流程

1、收集数据:可以使用任何方法。
2、准备数据:距离计算所需要的数值,最好是结构化的数据格式。
3、分析数据:可以使用任何方法。
4、训练算法:此步骤不适用于 K 近邻算法。
5、测试算法:计算错误率。
6、使用算法:首先需要输入样本数据和结构化的输出结果,然后运行K 近邻算法判定输入数据分别属于哪个分类,最后应用对计算出的分类执行后续的处理。

三、从电影分类了解KNN算法

电影可以按照题材分类,那么如何区分 动作片 和 爱情片 呢?

动作片:打斗次数更多
爱情片:亲吻次数更多
基于电影中的亲吻、打

你可能感兴趣的:(python,机器学习,pycharm)