美文网首页
【机器学习3】 k-近邻算法(kNN)—手写数字识别

【机器学习3】 k-近邻算法(kNN)—手写数字识别

作者: 王小野 | 来源:发表于2020-09-09 01:11 被阅读0次

    k近邻法(k-nearest neighbor, k-NN)

    原理:

    存在一个样本数据集合,也称作训练样本集,并且样本集中每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对应关系。输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本集中特征最相似数据(最近邻)的分类标签。一般来说,我们只选择样本数据集中前k个最相似的数据,这就是k-近邻算法中k的出处,通常k是不大于20的整数。 最后,选择k个最相似数据中出现次数最多的分类,作为新数据的分类。 

    优缺点:

    优点:精度高、对异常值不敏感、无数据输入假定。

    缺点:计算复杂度高、空间复杂度高。

    适用范围:数值型和标称型。

    sklearn简介

    sklearn(Scikit learn),是机器学习领域当中最知名的python模块之一。

    使用sklearn可以很方便的实现一个机器学习算法。 有效减少我们特定任务的实现周期。达到只需要调用几行API即可实现一个复杂算法的效果。

    包含了很多机器学习的方式:

     Classification 分类

     Regression 回归

     Clustering 非监督分类

     Dimensionality reduction 数据降维

     Model Selection 模型选择

      Preprocessing 数据与处理

    Python实践案例:sklearn手写数字识别

    已知: 软件处理后的 “需要识别的数字 ”的TXT数据文件。

               特点: 具有相同的色彩和大小:宽高是32像素x32像素。

                             文件有统一命名格式:数字的值_该数字的样本序号   

                            按 0-9 十个数字分类的文件,每个数字200个样本          

    求:   未知数字文件是 0-9 中哪一个数字


    数字文件示例

    代码:

    结果:


    学习来源:《机器学习实战》 [美] Peter Harrington

                       Jack Cui 博文https://cuijiahua.com/

    相关文章

      网友评论

          本文标题:【机器学习3】 k-近邻算法(kNN)—手写数字识别

          本文链接:https://www.haomeiwen.com/subject/quusektx.html