PCANet: A Simple Deep Learning Baseline for Image Classification?(精读)

一.文献名字和作者

    PCANet: A Simple Deep Learning Baseline for Image Classification?; Tsung-Han Chan, Kui Jia, Shenghua Gao, Jiwen Lu, Zinan Zeng, and Yi Ma
   

二.阅读时间

    2014年10月10日


三.文献的目的

    文献主要是提出了一个可以用作图像分类的深度学习方面的基线算法PCANet,同时,这个算法在数学上又比较简单,效率也高,方便对深度学习算法进行基本的理论研究。这个算法是非监督的特征提取算法,作者将这个算法提取到的特征与其他人工特征和使用DNN提取的特征进行比较,发现这种简单的特征提取算法的效果能够在比肩state of the art的特征提取算法,包括人工选择特征和使用DNN训练出来的特征。
     作者的目的有两个:1.设计一种简单的深度学习完了能够很方便地用在不同的数据和任务上面;
     2.这个简单的算法可以作为人们使用深度学习网络的参考。


四.文献的贡献点

    1.提出了一种简单的非监督深度学习网络--PCANet网络,这个网络是由两个PCA滤波层、一个哈希层和一个局部直方图计算层,并且在此基础上面提出两个变种--RandNet和LDANet;
    2.作者做了大量的实验来比较PCANet和其他传统的人工选择特征以及DNN学习到的特征在不同数据库上面的表现,从而得出了使用PCANet也能够达到比肩the state of the art的效果,使用的数据库包括MultiPIE、Extended Yale B、AR Dataset、FERET Dataset、LFW Dataset、MNIST Datasets、CUReT Dataset、CIFAR10。
    

五.作者提出的方法

   作者提出的方法如图1所示,前面两个步骤为PCA滤波,第三个步骤为二值哈希化的过程;第四部是计算局部直方图的过程。

                   图1. PCANet的流程

    对于PCA滤波的过程,作者的做法是将训练集中每一幅图像分成大小为k1*k2的图像块,图像块之间可以进行重叠,然后将图像块转化为一个向量,并将同一幅图像的块对应的向量按列排列成一个矩阵Xi,然后将所有的训练图片得到的形成一个巨大的矩阵X,然后根据PCA的方法,j个特征向量V,然后将每个特征向量转化为一个大小为k1*k2的矩阵,使用这个矩阵来初始化卷积核,然后进行类似于CNN的卷积操作。第二个PCA滤波的过程也是这样的。
    在第二个PCA滤波之后,进行对输出结果进行二值哈希操作,得到L1*L2个二值化图像,然后L1个输入的图像对应的L2个图像中每个位置对应的像素的值作为一个二进制数的一个位,这样就可以将L1*L2幅图片压缩为L1幅图片。然后将每一幅图分成了B个块,对每个块进行直方图计算,然后将每个直方图连接起来成为一个向量,然后将L1幅图像对应的向量连接起来,作为输入图片的特征。这个就是PCANet特征提取方法。

                          图2. PCANet流程图
    从上面的算法流程中可以看出,PCANet的训练过程只是在训练集中进行特征向量计算的过程,并没有包括迭代和优化求解的过程,因此,训练过程很快,而测试过程基本上和CNN的前向过程一样。因此,PCANet与CNN区别最大的地方在于卷积核是直接通过PCA计算得到的,而不是像CNN一样通过迭代的过程得到的。









版权所有,欢迎转载,转载请注明出处,谢谢微笑








评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值