《算法图解》第10章 K最近邻(K nearest neighbors,KNN)算法

     今天看到这里的案例非常有意思,即以坐标轴中的坐标来作为参数。计算不同点的距离。实际上就是标记一些用户的喜好和习惯,不同的维度代表不同的项目,在这个维度上的值可表示喜好程度。电影评分、音乐收藏...总之,很多情况都可以用,很有趣。就是标记了很多用户,看哪些用户比较相近,来进行推荐。

   分类和回归

    分类就是编组。

    回归可以做预测。将几个最近的“邻居”情况相加算出来平均值,就是我们要预测的个体的情况。两个人品味相近更多的时候使用余弦相似度(cosine similarity),不比较两个矢量之间的距离而是比较角度,更适合这种品味相近的情况。如果要使用KNN算法,必须好好研究一下 余弦相似度。

    使用KNN算法挑选合适的特征比较至关重要,合适的特征是(已复杂的推荐 电影为例):

           与要推荐的电影紧密相关的特征

           不偏不倚的特征(搜集数据的时候,不要仅限定某些特定的  一个关联方面  的情况)

挑选合适的特征没有放之四海而皆准的标准。

机器学习:

   ocr 光学字符识别(optical character recognition),意味着你拍摄照片时,计算机可以识别其中的文字。

自动识别,使用KNN算法:

     浏览大量数字图像,将这些数字的特征提取出来。   (训练 training)

     遇到新图像时,你提取该图像的特征,找出它最近的特征是谁。

  垃圾邮件过滤器-- 朴素贝叶斯过滤器(Naive  Bayes classifier),先使用一些数据对这个分类器进行训练:

    

    以后也许会接触到更有意思的算法。这里不做任何形式上的记录,纯粹作为一次简单有趣的记录。

有需要我再来补充这次记录。

猜你喜欢

转载自blog.csdn.net/qq_41109499/article/details/84445261
今日推荐