前段时间看了这篇CVPR 2010的文章,感觉不错,而且还有代码,可以从UIUC的Jianchao Yang主页上下载~这篇文章的创新点是编码方式的创新,提出了LLC
这篇文章是在Linear Spatial Pyramid Matching using Sparse Coding for Image Classification基础上的改进。
稀疏表示的目标式为:
而在LLC当中把后面的正则项的一范数改为二范数:
di代表的重构的特征xi和每个码字(code)的距离,上面式子的物理意义是特征离码字的距离越远重构的系数越小,极端情况就是用他近邻的码本来重构他。而且这个式子有解析解。
LLC有以下三个性质:
1.跟原始的向量量化比较用多个码字重构能够有更小的重构误差
2.能达到局部平滑稀疏性
3.跟sparse比较能够有解析解,文中提到的解析解为:
不过我自行推导了一下,文章中的解是存在问题的。以下解应该是正确的:估计应该是作者的笔误,瑕不掩瑜嘛~
最后他为了快速计算LLC是选择最近邻的5个点重构他的,码本的训练也可以用k-means直接聚类,跟他提出的codebook optimization的结果差不多的。
作者在具体实现的时候有一个小的细节,他为了矩阵求逆的方便在要求矩阵的对角线加上一些比较小的数,这种方法叫做regularlization,也叫脊回归。
最后文章的效果还是不错的,在caltech-101,caltech-256还有pascal voc2007数据集上都做了验证~