计算机视觉
一:计算机视觉领域暂存的比较难以解决的问题:
1、对照片的密集标记
2、将识别问题和标记问题整合
3、动作场景的识别
4、计算机视觉的愿景是至少让计算机达到看图讲故事的水平
二:K最近邻与线性分类器
L1距离算法,也就是欧式距离
矢量化
FLANN实例库
可采用交叉验证的方法来提高精度
算法缺点:测试时过于耗费计算能力,准确率低
三:一些Tips
绝不能使用测试集来调优,测试集数据只能使用一次,即在训练完成后,评价最终的模型时使用。
在训练集中取出一部分数据来进行调优,称之为验证集。
当训练集较小时,可以采用交叉验证的方法。
四:线性分类
评分函数:原始图像数据到类别分值的映射
损失函数:
将线性分类器看作是模板匹配。
五:多类支持向量机函数的损失函数
针对第i个数据的多类SVM的损失函数定义如下:
折叶损失:
max(0,-)
六:线性分类和参数化学习:
能够使我们输入一组数据和类别标签,然后从中学到一个输入值到预测值的映射关系,而我们只需定义一组参数并优化这些参数。
例:狗猫马三类图片分类
如下:
Animals | image1 | Cool | image3 |
---|---|---|---|
狗 | -0.39 | -4.61 | 1.03 |
猫 | 1.49 | 3.28 | -2.37 |
马 | 4.21 | 1.46 | -2.27 |
计算狗类的损失:
max(0,1.49-(-0.39)+1)+max(0,4.21-(-0.39)+1)=8.48>0 (错误分类)
(其中-0.39是正确预测的预测分。)
计算猫类的损失值:
max(0,-4.61-3.28+1)+max(0,1.46-3.28+1)=0 (正确分类)
计算出的损失值越小,预测越准确。
向损失函数添加一个惩罚项R(w)
最常用的正则惩罚项是L2范式
由上式代入Li得:
故可以得到完整的多类SVM损失函数: