本系列是《玩转机器学习教程》一个整理的视频笔记。本小节主要使用kNN算法解决回归问题的思路以及回顾总结前面学习到的知识。
01
K近邻算法解决回归问题
kNN算法是解决分类问题的算法,而且他天然的可以解决多分类的问题,在前面介绍算法的时候提到,有些机器学习算法是只能解决二分类问题的,而有些算法是可以天然的解决多分类的问题的。kNN算法的思想也是非常的简单,而且效果很强大,这么简单的一个算法,通常在实际使用中是可以得到好的效果。
不仅如此我们还可以使用kNN算法解决回归问题:
回归问题不同于分类问题,分类问题中,预测输出固定的输出类别,而回归问题我们具体要预测的是一个数值。
比如要预测一个房子房价是多少,要预测一个学生的考试分数是多少,或者预测下一个时刻股票的价格是多少,这些都属于回归问题。那如何使用kNN算法解决回归问题呢?
总的来说,kNN回归问题类似kNN分类问题,有两种方案:
sklearn已经封装好了KNeighborsRegressor这个类,这个类就是应用kNN算法解决回归问题。
02
k近邻算法的缺点
对于一个新的预测数据来说,需要O(m * n):
当然针对kNN缺点,有很多优化,比如使用树结构:KD-Tree, Ball-Tree。这些优化可以使kNN算法效率变高,但是即便如此,kNN算法的效率依然很低。
kNN算法是高度依赖两个点之间的距离的,但是如果样本的维度过高,就会导致维度灾难。
实际上,使用机器学习算法来处理数据的时候,在实际生产环境中,在很多领域处理成千上万维的数据是很正常。当然维度过高,可以通过降维的方式来解决。
03
机器学习流程回顾
本文分享自 AI机器学习与深度学习算法 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!