机器学习复习(10) KNN

1.一个非常简单的机器学习算法
2.没有训练的过程
3.可以回归也可以分类

做分类只需要指定一个K
做大多数投票就可以了
没有任何训练过程

机器学习复习(10) KNN

从KNN的角度,推出后验概率
机器学习复习(10) KNN

机器学习复习(10) KNN

K 是我们选择的 K
Kj 是选择出来的K个点中,有多少个点属于Cj类

机器学习复习(10) KNN

例子:
(K一般选奇数,不会出现相等的情况)
机器学习复习(10) KNN

当K=1时
离他最近的那个就是标记的类

机器学习复习(10) KNN

决策边界就是他们的垂直平分线

机器学习复习(10) KNN

机器学习复习(10) KNN

决策边界就是不同类点的垂直平分线
但是相同类的点间的垂直平分线不称为决策边界
上图中决策边界就是灰白交界
根据单元的定义,在灰色区域内的点到达红色的距离最近

机器学习复习(10) KNN

没有训练的过程,只需要选择K
但是计算代价大(计算和所有样本的距离)
需要储存所有样本,昂贵的代价,而且需要大量的样本才可以计算出比较好的效果
机器学习复习(10) KNN

K越小,越容易overfitting
k越大,越平滑,但是太大也不好,破坏了局部性,也不好计算
机器学习复习(10) KNN

如果k=N 的话会发生什么?
只有一个类,给任何一个test,都会打相同的label
因为全部样本都包裹了,算大多数投票的时候结果都一样

样例

机器学习复习(10) KNN

引入一个 验证集的概念
按3:1的比例把24个样本分成训练集和验证集

机器学习复习(10) KNN

根据18个样本得到的模型
用6个验证集给他验证一下正确率
然后去调试 K 的值
得到一个好的 K 值

复杂度
机器学习复习(10) KNN

对于1NN来说,可以去掉一些data来减少复杂度,不影响决策边界

机器学习复习(10) KNN

最后看一下距离是怎么衡量的

机器学习复习(10) KNN

机器学习复习(10) KNN

练习
(可以看到不同的距离标准,得到结果不一样)
机器学习复习(10) KNN

机器学习复习(10) KNN

错误率(反正我没弄懂)

机器学习复习(10) KNN

之前贝叶斯复习的时候有提到

机器学习复习(10) KNN
机器学习复习(10) KNN
考虑1-NN
机器学习复习(10) KNN

机器学习复习(10) KNN
机器学习复习(10) KNN

机器学习复习(10) KNN
机器学习复习(10) KNN

机器学习复习(10) KNN

机器学习复习(10) KNN
机器学习复习(10) KNN
机器学习复习(10) KNN
机器学习复习(10) KNN

相关文章: