CS231n课程笔记2.1:图像分类问题简介&KNN

CS231n简介

详见 CS231n课程笔记1:Introduction
注:斜体字用于注明作者自己的思考,正确性未经过验证,欢迎指教。

课程笔记

1. 图像分类问题简介

a. API: input image, output label b. 难点:
i.illumination (光强)
ii. deformation (变形)
iii. occlusion (遮挡)
iv. background cluster(背景混淆)
v. intraclass variation(类内区别,如猫有不同种类)

c. 没有hard code(直接编程)的算法
d. 传统算法:提取特征–>分类器
e. 这堂课介绍的算法:数据驱动算法

2. KNN

2.1. NN(nearest neighbor)最近邻算法

与训练集中距离该点最近的点分类相同。
不同变种:距离的定义不同,常见的是L1(差的绝对值和),L2(差的平方和)。

2.2. kNN(k nearest neighbor)k近邻算法

距离该点最近的k个点投票。
变种也在于距离的定义 。
k为超参数,通过交叉验证确定。
kNN某种程度上降低了variance,增加了bias。

2.3. 优缺点

  1. 测试速度与训练集大小成线性关系。(CNN是训练时间长,测试时间短(与模型有关,与训练集无关))
    1.1. 可以使用kd-tree降低搜索时间(但也是log随训练集增长)。
  2. kNN有维数灾难,即特征维数越高,需要的数据越多,是几何倍数增长。
    2.1. 假设归一化到0-1区间内,那么为了达到密度为100,1维需要100个点,二维就需要100^2,n维就需要100^n。(密度的作用是使得每个点附近都有足够多的点来投票,如果点数较少,可能需要(0.9,0.9)的点给(0.1,0.1)处的点进行投票,决定其类别,这与直觉相悖。)
  3. 很少有人直接将kNN算法作用于像素点。
    不同操作下,kNN距离相同
    上图所有的三种操作(平移,遮挡,降低光强)在kNN中都与原图距离相同,这和直觉相悖,因为遮挡了主要特征的图形已经难以看出与原图是同一个人
  4. kNN在大多数机器学习问题上可以得到一个不差的结果,可以作为问题处理的下届。(是有传统机器学习中的概率证明)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值