笔记-论文-PCANet A Simple Deep Learning Baseline for Image Classification?

级联PCA filters Network,这篇paper让我们反思层次结构的重要性,也是DL的核心理念。

由于CSDN对Latex支持不好,许多公式无法显示,想看完整公式请移步个人主页:https://yufeigan.github.io/2014/11/25/PCANet/

Abstract:

  1. 基于PCA的DL Network
  2. PCA + binary hashing + block-wise histograms
  3. PCA 是滤波器
  4. RandNet LDANet : 拓扑结构同PCANet, but cascaded filters are either selected randomly or learned from LDA
  5. 数据集:LFW and MultiPIE(face), MNIST, Extended Yale B, AR, FERET datasets(face)
  6. PCANet在texture classification, object recognition效果比较好

Introduction

人工设计的底层特征在不同的task适应性不够强。因此一个改进的方法就是像DNN那样从数据中学习底层特征,高层特征能够代表更加抽象的意义特征。DL结构的重要部分是卷积,一般由卷积+nolinear+pooling组成。学习卷积层的方法有RBM、regularized autoencoders。一般网络学习方法为SGD,然而想要学习到好的网络十分依赖于调参和trick的技巧。
现有的DL变种ScatNet与CNN的唯一区别是把卷积换成了小波,所以他不用学习,而且效果不赖(宣称在一些数据集上性能优于CNN和DNN)。
Motivations,我们想要实现两个目的:

  1. 希望训练一个简单的网络去学习数据
  2. 提供一个baseline为人们做更为复杂的结构

用PCA代替卷积层,非线性层用哈希二值量化,pooling用block-wise histograms。
底层中不用nolinear操作,高层才用,但性能依然不错。

contributions

实验效果证实了cascaded feature learning or extraction architectures有助于效果的提升。还从数学上分析的他的性能。

Cascaded linear networks

Structures of PCANet

只有PCA filter是要学习的参数。

first stage

分成 k1×k2 个patch。令 X¯i=[x¯i,1,x¯i,2,,x¯i,mn] 其中 x¯i,n 为第i幅图像的第n个patch减去均值后的向量。
X=[X¯1,X¯2,,X¯N]k1k2×Nmn 表示所有图像patch。
然后求解PCA filter:

minVk1k2×L1||XVVTX||2F, s.t. VTV=IL

如此就得到filters  W1l=matk1,K2(ql(XXT))k1×k2  mat是一个映射函数从 vk1k2 Wk1×k2 , ql(XXT) 表示第 l 个主特征向量。这里滤波器数目为 L1 。将输入图像表示为 {i}Ni=1

second stage

卷积 1 ,做了0-Padding以使得 1 2 有相同的size

li=iWkl,i=1,2,,N
注意:相当于卷积,此时特征数目为 N×L1

W2l=matk1,K2(ql(YYT))k1×k2

与第一步操作相同。
这一步操作可以表示为:

li={liW2l}L2l=1
注意:相当于卷积, 是输出“图”,此时特征数目为 N×L1×L2

Output stage: hashing and histogram

输出通过阶跃函数并2→10进制转换, L2 是滤波器数目
把输出数据二值化后转换成十进制数这时T相当与一副image,每个像素点的范围是[0, 2L21 ],每一个T可以作为一个word。

Tli=l=1L22l1H(IiWkl)
注意:这里特征数目为 N×L1
对每个的image( L1 个)的T我们计算直方图。则输入图像的特征可以表示为Bhist(分成8个块)
fi=[Bhist(T1i),Bhist(T2i),,Bhist(TLii)]T(2L2)L1B
注意:此时输出特征数目为 N
我们通过实验发现block重叠时适合数字,纹理和对象的识别,不重合时适合人脸识别。
图1
实验中 L1=L2=8

Comparison with ConvNet and ScatNet

去均值相当于CNN中的local contrast normalization。PCA可视为最简单的auto-encoder(最小化reconstruction error)
PCANet没有非线性层,作者试过加absolute rectification layer但没有效果。原因可能是量化和输出层的local histogram已经引入了足够的sufficient invariance and robustness。
同样多的filer数目两层的比单层的好。
比较实验证明的多层的结构能够更好的学习语意信息。

Computational complexity

(mnk1k2(L1+L2)+mn(k1k2)2)

Conclusion

PCANet不会代入规则化的参数,不需要数值优化的解。他的数学分析以及复杂性得以减轻。PCANet 性能胜过 RandNet and LDANet, 与ScatNet和CNN性能相当。
对于解决图像分类的DL的结构研究来说,PCANet是一个简单有价值的Baseline,但在ImageNet还不够好。更复杂filter或更深层次的网络结构可能可以提升他的性能。
目前的瓶颈是PCANet的维度会随着特征的增加指数增长,一种改进的方法是把2维卷积改成tensor-like filters,我们将在剩下的工作中进一步研究。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值