章节内容
- 学习使用K最近邻算法创建分类系统
- 学习特征抽取
- 学习回归,即预测数值
- 学习K最近邻算法的应用案例和局限性
橙子还是柚子
假如让你分类一个水果是橙子还是柚子,我们知道橙子和柚子的大小和颜色都不一样,我们可以通过这两个进行判断。
因此我们建立了X轴为大小,Y轴为颜色的二维坐标轴,已知有N个样本水果在坐标轴上。
我们将要分类的水果放入坐标轴,然后根据距离该水果最近的3个样本水果的分类来判断该水果的分类。
这就是K最近邻算法,KNN算法虽然简单却很有用。
创建推荐系统
现在要为用户创建一个电影推荐系统。从本质上来说,这类似于水果分类问题。
我们将所有用户放在一个坐标轴中。用户在图表中的位置取决于其喜好,因此喜好相近的用户距离较近。
我们要向某个用户推荐电影,只需要找到与他最近的N个用户即可,将这N个用户的喜爱电影推荐给他。
特征提取
前面的水果例子,我们通过大小和颜色来分类比较。在专业上讲大小和颜色就是特征。
回归
前面的电影推荐系统,加入我们需要预测被推荐者讲给这些电影打几分,我们可以从挑选的最近的N个用户的分数中去取平均值。
这就是回归。
KNN的两项基本工作就是分类和回归。
挑选合适的特征
比如之前的电影推荐系统,合适的特征可能为:
- 与要推荐的电影紧密相关的特征
- 不偏不倚的特征
机器学习简介
KNN算法是进入神奇的机器学习领域的领路人
OCR
指的是光学字符识别。
OCR使用的就是KNN算法,在系统浏览大量的数字图像后,将这些数字的特征提取出来,遇到新图像时,找出与它最近的邻居
创建垃圾邮件过滤器
朴素贝叶斯分类器
小结
- KNN用于分类和回归,需要考虑最近的邻居
- 分类就是编组
- 回归就是预测结果
- 特征抽取意味着将物品转换为一系列可以比较的数字
- 能否挑选合适的特征事关KNN算法的成败