K最近邻算法(K-nearest neighbours)KNN
关键字:分类,回归,特征提取。
分类的例子:橙子和桔子,Netflex用户推荐系统。K最近邻的方法,在特征空间中,根据多个对象的邻居来判断对象所属的分类。
要知道对象有那些邻居,就要建立对象集的特征空间,特征空间的建立是需要维度的标准的,这些标准就是从对象集中提取出来的特征。
特征的提取方法:特征的数字化,在特征空间中计算对象之间的距离:使用平方差开根号这个公式:这个公式用了这么多年,都不知道它的名字——毕达哥拉斯公式。
分类的练习:
- 归一化:(和我想的不同)归一化其实就是计算相对值,相对值比较。
- 对于权重的调整,(和我第一题想的一样)权重的调整可以特别的显现某些节点对整体的影响。
回归
不止要推荐电影还要预测他人对于电影的评分。
所以说分类就是编组,回归就是预测。
与回归的话,还是要基于与用户有相似的特征的人的,即使回归所采用的算法各不相同,书上是采用了池化 的求平均的算法。
回归的例子,要根据往常的面包的数据来预测并调整面包的生产。(是挺有用的)
余弦相似度:与之前的毕达哥斯拉公式不同,余弦公式,是通过计算两个点形成的向量,之间的角度余弦值,来判断相似的程度。那么其和距离的计算有什么不同呢。举一个极端的例子之后再用复杂的话来解释:在一条向量直线上的两个点,他们之间的距离可以很大,可是他们之间的余弦相似度是100%。
那么复杂的话来了:余弦的相似度更加倾向于特征向量的方向趋势,在分类的第一个例子中,两个喜好相似的人,可是他们的打分严苛程度不同,这样的场景下就可以使用。
想之前所说的,特征数据是回归与分类的基础,所以挑选合适的特征是非常重要的。
回归的练习
- Netflix的用户量大,如果用户的系统推荐只是使用5个近邻对象的话,肯定是不够的,但是推送的多的话会引起用户的反感,所以我们要使用多对象,精准推荐:
作者的答案:一个不错的经验规则是:如果有N位用户,应考虑sqrt(N)个邻居。
机器学习简介
例子:
OCR
光学字符识别(optical character recognition)
垃圾邮件过滤器
(朴素贝叶斯分类器)Naive Bayes classifier
预测股票市场
这几个模块其实都可以进行深入的扩展,不过要等到我上研究生了。