李飞飞计算机视觉学习总结三

yuanlunxi 2019-12-05

学习线性分类器

学习内容提要:

第二讲:图像分类

  1. 数据驱动方法

    1.1. 收集大量的图像数据及标签

    1.2. 使用机器学习算法训练一个分类器

    1.3. 使用新图像衡量训练的分类器

  2. 近邻算法

    2.1. 算法描述:

    训练数据集合为 T={(x1,y1),(x2,y2),...,(xn,yn)}

    其中Xi是一个n维的特征向量,Yi为实例对应类别

    2.2. 距离向量

    根据给定的度量,在训练集合中找出与x轴距离最近的k个点(k=1时为近邻算法)

    2.3. 分类决策规则(k>1的时候->KNN)

    根据分类决策规则(如对数表决,加权方法等)决定x的类别y

  3. KNN算法(K-Nearest Neighbor)

    3.1. 三要素:K的值的选择,距离度量,分类决策规则

    3.2. 过程:训练数据集合T,选择K值,度量距离(L1或者L2)

    3.3. 复杂度分析

    a. 训练复杂度:KNN算法只是将训练数据及标签先保存,并不涉及某些运算,复杂度为o(1)

    b. 测试复杂度:对于某个样本,需要与数据标签逐一进行对比,计算量与数据大小有关,复杂度为o(N)

  4. 线性分类器

    4.1. 概念:通过特征的线性组合来作出分类决定(如感知机,svm,Fisher,Logistic)

    对于32*32*3一张图彩色图,f(x,w)线性分类器与knn区别

    线性分类器模型函数f(x,w)=wx+b (可以看成一种模板匹配方法)

    线性分类器的缺点也就是存在的问题

Ps: f(x,w)线性分类器与knn区别 线性分类器的缺点也就是存在的问题

打卡内容:

  1. f(x,w)线性分类器与knn区别

    1.1. KNN: 计算一个点A与其他所有点之间的距离,取出与该点最近的k个点,然后统计这k个点里面所属分类比例最大的,则点A属于该分类
    1.2. f(xi,W,b)=Wxi+b :参数W被称为权重(weights)。b被称为偏差向量(bias vector)

    1.3. knn需要保留训练数据,而线性分类器只需要保留训练好的权重w即可,线性分类器可运行在小型设备上

  2. 线性分类器为什么可以看成一种模板匹配方法

    2.1. 权重W的另一个解释是它的每一行对应着一个分类的模板(有时候也叫作原型),一张图像对应不同分类的得分,是通过使用内积(也叫点积)来比较图像和模板,然后找到和哪个模板最相似。从这个角度来看,线性分类器就是在利用学习到的模板,针对图像做模板匹配。

    2.2. 高效地使用k-NN,没有使用所有的训练集的图像来比较,而是每个类别只用了一张图片(这张图片是我们学习到的,而不是训练集中的某一张),使用(负)内积来计算向量间的距离,而不是使用L1或者L2距离。

  3. 线性分类器的缺点也就是存在的问题

    线性分类器优缺点:算法简单和具有“学习”能力,线性分类器速度快、编程方便;但是可能拟合效 果不会很好。

  4. 分析代码实现的任务是什么,每个函数模块实现的功能是什么,代码运行的逻辑

    研究中

相关推荐