《图解算法》读书笔记(十)K最近邻算法

章节内容

  • 学习使用K最近邻算法创建分类系统
  • 学习特征抽取
  • 学习回归,即预测数值
  • 学习K最近邻算法的应用案例和局限性

橙子还是柚子

假如让你分类一个水果是橙子还是柚子,我们知道橙子和柚子的大小和颜色都不一样,我们可以通过这两个进行判断。
因此我们建立了X轴为大小,Y轴为颜色的二维坐标轴,已知有N个样本水果在坐标轴上。
我们将要分类的水果放入坐标轴,然后根据距离该水果最近的3个样本水果的分类来判断该水果的分类。
这就是K最近邻算法,KNN算法虽然简单却很有用。

创建推荐系统

现在要为用户创建一个电影推荐系统。从本质上来说,这类似于水果分类问题。
我们将所有用户放在一个坐标轴中。用户在图表中的位置取决于其喜好,因此喜好相近的用户距离较近。
我们要向某个用户推荐电影,只需要找到与他最近的N个用户即可,将这N个用户的喜爱电影推荐给他。

特征提取

前面的水果例子,我们通过大小和颜色来分类比较。在专业上讲大小和颜色就是特征。

回归

前面的电影推荐系统,加入我们需要预测被推荐者讲给这些电影打几分,我们可以从挑选的最近的N个用户的分数中去取平均值。
这就是回归。
KNN的两项基本工作就是分类和回归。

挑选合适的特征

比如之前的电影推荐系统,合适的特征可能为:

  • 与要推荐的电影紧密相关的特征
  • 不偏不倚的特征

机器学习简介

KNN算法是进入神奇的机器学习领域的领路人

OCR

指的是光学字符识别。
OCR使用的就是KNN算法,在系统浏览大量的数字图像后,将这些数字的特征提取出来,遇到新图像时,找出与它最近的邻居

创建垃圾邮件过滤器

朴素贝叶斯分类器

小结

  1. KNN用于分类和回归,需要考虑最近的邻居
  2. 分类就是编组
  3. 回归就是预测结果
  4. 特征抽取意味着将物品转换为一系列可以比较的数字
  5. 能否挑选合适的特征事关KNN算法的成败
posted @ 2020-09-08 23:02  無花無酒鋤作田  阅读(180)  评论(0)    收藏  举报