zoukankan      html  css  js  c++  java
  • KNN算法

    利用这个算法,学习一些机器学习中的基本概念。KNN是分类算法。

     

    物以类聚人以群分的思想,KNN是一个没有学习过程的,不算模型,消耗的运算量比较大。

    一、算法的数学原理

    两点的距离计算,二维是勾股定理,三维和高维是类似的。

    二、手写代码实现

    三、scikit-learn 算法库实现

     
    https://scikit-learn.org/stable/modules/generated/sklearn.neighbors.KNeighborsClassifier.html#sklearn.neighbors.KNeighborsClassifier 
     API文档 : https://scikit-learn.org/stable/modules/classes.html 

    机器学习的目标是对未知数据进行预测。

    神器之一:学习曲线

    超参数k的选定是KNN的头号问题,第一步就是用学习曲线。

    超参数:模型不能进行学习,只能有人工进行指定(就像神经网络的层数和每层的神经元,也是需要人工设定的)

       参数:模型在学习拟合的过程中可以自己去寻找最优值

    神器之二:K-fold交叉验证

    训练集、测试集,验证集(20%,就是五折验证)

  • 相关阅读:
    第二阶段第九天
    第二阶段第八天
    一轮项目冲刺——移山小分队(3)
    一轮项目冲刺——移山小分队(2)
    典型用户和用户场景
    一轮项目冲刺——移山小分队
    寻找水王
    NABCD需求分析
    每日记录01
    二维数组最大连通和的求解
  • 原文地址:https://www.cnblogs.com/BC10/p/11751284.html
Copyright © 2011-2022 走看看