机器学习算法笔记(四):kNN算法总结与机器学习流程回顾

一、kNN算法总结

优点:

1、可以解决分类问题,并天然可以解决多分类问题。
2、思想简单,效果强大。
3、同样可以解决回归问题

我们可以通过计算距离的加权平均值,来预测绿色点的数值。

缺点:

1、效率低下,若训练集有m个样本,n个特征,则预测每一个新数据的复杂度为O(m*n)。(可用KD-Tree, Ball-Tree优化,但优化后效率仍然不高)
2、高度数据相关、依赖数据,受outlier影响较大。比如三近邻算法,在特征空间中,如果在需要预测的样本周边,一旦有两个样本出现错误值,就足以使预测结果错误,哪怕在更高的范围里,在特征空间中有大量正确的样本。
3、预测结果不具有可解释性。很多情况下,只是拿到预测结果是不够的,还需要对此结果有解释性,进而通过解释推广使用,或者制作更多工具,或者以此为基础发现新的理论/规则,来改进生产活动中的其它方面——这些是kNN算法做不到的。
4、维数灾难:随着维数增加,“看似相近”的两个点距离越来越大。(可以对数据进行降维处理)

二、机器学习流程回顾

获取原始数据——数据分割——数据归一化——训练模型——预测

发表评论

电子邮件地址不会被公开。 必填项已用*标注