2.793

2018影响因子

(CJCR)

  • 中文核心
  • EI
  • 中国科技核心
  • Scopus
  • CSCD
  • 英国科学文摘

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

多层局部块坐标下降法及其驱动的分类重构网络

王金甲 张玉珍 夏静 王凤嫔

王金甲, 张玉珍, 夏静, 王凤嫔. 多层局部块坐标下降法及其驱动的分类重构网络. 自动化学报, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540
引用本文: 王金甲, 张玉珍, 夏静, 王凤嫔. 多层局部块坐标下降法及其驱动的分类重构网络. 自动化学报, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540
Wang Jin-Jia, Zhang Yu-Zhen, Xia Jing, Wang Feng-Pin. Multi-layer local block coordinate descent algorithm-inspired classification and reconstructionan networks. Acta Automatica Sinica, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540
Citation: Wang Jin-Jia, Zhang Yu-Zhen, Xia Jing, Wang Feng-Pin. Multi-layer local block coordinate descent algorithm-inspired classification and reconstructionan networks. Acta Automatica Sinica, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540

多层局部块坐标下降法及其驱动的分类重构网络


DOI: 10.16383/j.aas.c190540
详细信息
    作者简介:

    燕山大学信息科学与工程学院教授,主要研究方向为信号处理和模式识别,本文通信作者. E-mail: wjj@ysu.edu.cn

    燕山大学信息科学与工程学院硕士研究生,主要研究方向为信号与信息处理. E-mail: 13091375387@163.com

    燕山大学信息科学与工程学院硕士研究生,主要研究方向为信号处理. E-mail: xiajing_527@sina.com

    燕山大学信息科学与工程学院博士研究生,主要研究方向为模式识别. E-mail: landywang1105@163.com

  •  收稿日期 2019-07-19    录用日期 2019-12-23 Manuscript received July 19, 2019; accepted December 23, 2019 国家自然科学基金 (61473339), 首批 “河北省青年拔尖人才”([2013]17) 资助项目;京津冀基础研究合作专项 (F2019203583) Supported by National Natural Science Foundation of China(61473339), The First Batch of "Top Young Talents in Hebei Province"([2013]17);Basic Research Cooperation Projects of Beijing, Tianjin and Hebei (F2019203583)
  •  本文责任编委 黎铭 Recommended by Associate Editor LI Ming 1. 燕山大学信息科学与工程学院 河北省秦皇岛 066004    2. 河北省信息传输与信号处理重点实验室 河北省秦皇岛 066004 1. School of Information Science and Engineering, Yanshan University, Qinhuangdao, Hebei Province 066004    2. Hebei key laboratory of information transmission and signal processing, Yanshan University, Qinhuangdao, Hebei Province 066004
  • 基金项目:  国家自然科学基金(61473339), 首批“河北省青年拔尖人才”([2013]17)资助项目;京津冀基础研究合作专项 (F2019203583)

Multi-layer Local Block Coordinate Descent Algorithm-Inspired Classification and Reconstructionan Networks

More Information
  • Fund Project:  Supported by National Natural Science Foundation of China(61473339), The First Batch of "Top Young Talents in Hebei Province"([2013]17);Basic Research Cooperation Projects of Beijing, Tianjin and Hebei (F2019203583)
  • 摘要: 卷积稀疏编码(CSC)已广泛应用于信号或图像处理、重构和分类等任务中, 基于深度学习思想的多层卷积稀疏编码(MLCSC)模型的多层基追踪问题和多层字典学习问题成为研究热点. 但基于傅里叶域的交替方向乘子法(ADMM)求解器和基于图像块(patch)空间域思想的传统基追踪算法不能容易地扩展到多层情况. 在切片(slice)局部处理思想的基础上, 本文提出了一种新的多层基追踪(Ml-BP)算法: 多层局部块坐标下降算法(ML-LoBCoD). 在多层迭代软阈值算法(ML-ISTA)和对应的迭代展开网络ML-ISTA-Net 的启发下, 提出了对应的迭代展开网络ML-LoBCoD-Net. ML-LoBCoD-Net实现信号的表征学习功能, 输出的最深层卷积稀疏编码用于分类. 此外, 为了获得更好的信号重构, 本文提出了一种新的多层切片卷积重构网络(ML-SCRN-Net), ML-SCRN-Net实现从信号稀疏编码到信号重构, 并且对这两个网络分别进行实验验证. 然后将ML-LoBCoD-Net和ML-SCRN-Net 进行级联得到ML-LoBCoD-SCRN合并网, 同时实现图像的分类和重构. 与传统基于全连接层对图像进行重建的方法相比, 本文提出的ML-LoBCoD-SCRN合并网所需参数少, 收敛速度快, 重构精度高. 本文将ML-ISTA和ML-FISTA 构建为ML-ISTA-SCRN和ML-FISTA-SCRN进行对比实验, 初步证明了所提出的ML-LoBCoD-SCRN分类重构网在MNIST、CIFAR10和CIFAR100数据集上是有效的, 分类正确率、损失函数和信号重构结果都优于ML-ISTA-SCRN和ML-FISTA-SCRN.
     收稿日期 2019-07-19    录用日期 2019-12-23 Manuscript received July 19, 2019; accepted December 23, 2019 国家自然科学基金 (61473339), 首批 “河北省青年拔尖人才”([2013]17) 资助项目;京津冀基础研究合作专项 (F2019203583) Supported by National Natural Science Foundation of China(61473339), The First Batch of "Top Young Talents in Hebei Province"([2013]17);Basic Research Cooperation Projects of Beijing, Tianjin and Hebei (F2019203583)
     本文责任编委 黎铭 Recommended by Associate Editor LI Ming 1. 燕山大学信息科学与工程学院 河北省秦皇岛 066004    2. 河北省信息传输与信号处理重点实验室 河北省秦皇岛 066004 1. School of Information Science and Engineering, Yanshan University, Qinhuangdao, Hebei Province 066004    2. Hebei key laboratory of information transmission and signal processing, Yanshan University, Qinhuangdao, Hebei Province 066004
  • 图  1  三次迭代展开的 ML-LoBCoD-Net

    Fig.  1  3 unfoldings ML-LoBCoD-Net

    图  2  ML-LoBCoD 算法第 j 层一次迭代流程图

    Fig.  2  ML-LoBCoD algorithm j-layer one iteration flowchart

    图  3  j 层切片卷积层

    Fig.  3  J-layer slice convolution layer$ (SCL_j) $

    图  4  基于切片多层卷积重构神经网络(ML-SCRN)

    Fig.  4  Neural network reconstruction based on slice multi-layer convolution (ML-SCRN)

    图  5  ML-LoBCoD-SCRN 分类重构网络

    Fig.  5  ML-LoBCoD-SCRN classification reconstruction network

    图  6  ML-LoBCoD-SCRN和LoBCoD-SCRN在MNIST数据集中的分类准确率

    Fig.  6  Classification accuracy of ML-LoBCoD-SCRN and LoBCoD-SCRN in the MNIST dataset

    图  7  ML-LoBCoD-SCRN和LoBCoD-SCRN在MNIST数据集中的损失函数值随迭代次数的变化

    Fig.  7  Change of loss function values of ML-LoBCoD-SCRN and LoBCoD-SCRN in the MNIST dataset with the number of iterations

    图  8  $ \rho $在不同值时ML-LoBCoD-SCRN在MNIST数据集中的分类准确率

    Fig.  8  Classification accuracy of ML-LoBCoD-SCRN in the MNIST dataset at different values of $ \rho $

    图  9  $ \rho $在不同值时ML-LoBCoD-SCRN重构结果

    Fig.  9  ML-LoBCoD-SCRN reconstruction results at different values of $ \rho $

    图  10  $ \rho $在不同值时ML-LoBCoD-SCRN损失函数值随迭代次数的变化

    Fig.  10  Change of ML-LoBCoD-SCRN loss function with iterations at different values of $ \rho $

    图  11  $ \rho = 0 $时三种方法的分类准确率

    Fig.  11  Classification accuracy of the three methods at $ \rho = 0 $

    图  12  ML-SCRN网络的重构结果

    Fig.  12  Reconstruction results of ML-SCRN network

    图  13  逐层放松模型的分类对比图

    Fig.  13  Classification comparison chart of layer-by-layer relaxation model

    图  14  逐层放松模型重构损失函数对比图

    Fig.  14  Comparison chart of layer-by-layer relaxation model reconstruction loss function

    图  15  逐层放松模型重构结果对比图

    Fig.  15  Comparison chart of layer-by-layer relaxation model reconstruction results

    图  16  两种分类重构网络在MNIST数据集的重构结果

    Fig.  16  Reconstruction results of two classification reconstruction networks in MNIST dataset

    图  17  两种分类重构网在MNIST 数据集的损失函数

    Fig.  17  Loss function of two classification reconstruction networks in MNIST dataset

    图  18  三种网络在MNIST数据集下的重构结果

    Fig.  18  Reconstruction results of three networks under the MNIST dataset

    图  19  三种网络在CIFAR10数据集下的重构结果

    Fig.  19  Reconstruction results of three networks under the CIFAR10 dataset

    图  20  三种网络在CIFAR100数据集下的重构结果

    Fig.  20  Reconstruction results of three networks under the CIFAR10 dataset

    图  21  三种分类重构网在MNIST 数据集下的分类正确率

    Fig.  21  Classification accuracy of three classification reconstruction networks under the MNIST dataset

    图  22  三种分类重构网在CIFAR10数据集下的分类正确率

    Fig.  22  Classification accuracy of three classification reconstruction networks under the CIFAR10 dataset

    图  23  三种分类重构网在MNIST 数据集下的损失函数

    Fig.  23  Loss function of three classification reconstruction networks under MNIST dataset

    图  24  三种分类重构网在CIFAR10数据集下的损失函数

    Fig.  24  Loss function of three classification reconstruction networks under CIFAR10 dataset

    表  1  几种分类网络在迭代100次时的分类正确率

    Table  1  Classification accuracy of several classification networks at 100 iterations

    模型 Acc(MNIST) Acc(CIFAR10)
    CNN 98.74% 79.00%
    ML-ISTA 99.11% 82.93%
    ML-FISTA 99.16% 82.79%
    ML-LISTA 98.80% 82.68%
    LBP 99.19% 80.73%
    ML-LoBCoD 99.15% 85.53%
    下载: 导出CSV

    表  2  两种分类重构网络在迭代100次对比

    Table  2  Comparison of two classification reconstruction networks over 100 iterations

    模型 ML-LoBCoD-SCRN ML-LoBCoD-FC
    分类正确率ρ=0 99.15% 98.91%
    重构误差 3.03×10−6 1.38×10−5
    avgpsnr 30.77 dB 22.79 dB
    时间 1 h 47 m 2 h 34 m
    下载: 导出CSV

    表  3  两种分类重构网络参数数量的比较

    Table  3  Comparison of the parameters of two classification reconstruction networks

    模型 ML-LoBCoD-SCRN ML-LoBCoD-FC
    1stlayer 6×6×1×64+64 6×6×1×64+64
    2stlayer 6×6×64×128+128 6×6×64×128+128
    3stlayer 4×4×128×512+512 4×4×128×512+512
    4stlayer 512×10+10 512×10+512×784+784
    Total 1352330 1753818
    下载: 导出CSV

    表  4  三种网络在MNIST、CIFAR10和CIFAR100数据集下迭代100次各参数对比

    Table  4  Comparison of the parameters of the three networks under the MNIST, CIFAR10 and CIFAR100 datasets 100 times

    模型 ML-LoBCoD-SCRN ML-ISTA-SCRN ML-FISTA-SCRN
    Acc(MNIST) 98.90% 98.65% 98.41%
    Acc(CIFAR10) 84.40% 82.62% 83.48%
    Acc(CIFAR100) 83.41% 81.26% 80.34%
    Loss(MNIST) 3.03×10−6 3.87×10−6 3.42×10−6
    Loss(CIFAR10) 1.44×10−6 5.28×10−6 6.52×10−6
    Loss(CIFAR100) 3.14×10−6 6.75×10−6 8.95×10−6
    Time(MNIST) 1h47m 1h54m 1h56m
    Time(CIFAR10) 1h12m 1h20m 1h25m
    Time(CIFAR100) 57 m 1 h 1h05m
    avgpsnr(MNIST) 30.77 dB 26.51 dB 29.75 dB
    avgpsnr(CIFAR10) 32.46 dB 28.21 dB 27.63 dB
    avgpsnr(CIFAR100) 29.97 dB 27.00 dB 25.14 dB
    下载: 导出CSV
  • [1] Sulam J, Papyan V, Romano Y, and Elad M. Projecting onto the muti-layer convolutional sparse conding model. IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), IEEE, 2018.
    [2] 2 Sulam J, Papyan V, Romano Y, and Elad M. Multi-layer convolutional sparse modeling: pursuit and dictionary learning. IEEE Transactions on Signal Processing, 2018, 66(15): 4090−4104
    [3] 张芳, 王萌, 肖志涛, 吴骏, 耿磊, 童军, 王雯. 基于全卷积神经网络与低秩稀疏分解的显著性检测. 自动化学报, 2019, 45(11): 2148−2158

    3 Zhang Fang, Wang meng, Xiao zhi-tao, et.al. Saliency detection based on full convolutional neural network and low rank sparse decomposition. Journal of Automation, 2019, 45(11): 2148−2158
    [4] 4 Bristow H, Eriksson A, and Lucey S. Fast convolutional sparse coding. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2013, : 391−398
    [5] 陈善雄, 熊海灵, 廖剑伟, 周骏, 左俊森. 一种基于 CGLS 和 LSQR 的联合优化的匹配追踪算法. 自动化学报, 2018, 44(7): 1293−1303

    5 Chan Shan-hsiung, Xiong Hai-ling, Liao Jian-wei, Zhou Jun, Zuo Jun-sen. A joint optimized matching tracking algorithm based on CGLS and LSQR. Journal of Automation, 2018, 44(7): 1293−1303
    [6] 6 Heide F, Heidrich W, and Wetzstein G. Fast and flexible convolutional sparse coding. In IEEE Conference on Computer Vision and Pattern Recognition, 2015, : 5135−5143
    [7] 7 Papyan V, Romano Y, Sulam J, and Elad M. Convolutional dictionary learning via local processing. in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2017, : 5296−5304
    [8] 8 Zisselman E, Sulam J, and Elad M. A Local Block Coordinate Descent Algorithm for the Convolutional Sparse Coding Model. The IEEE Conference on Computer Vision and Pattern Recognition, 2019, : 8208−821
    [9] 9 Papyan V, Romano Y, and Elad M. Convolutional neural networks analyzed via convolutional sparse coding. The Journal of Machine Learning Research, 2017, : 2887−2938
    [10] 10 Krizhevsky A, Sutskever I, and Hinton G E. Imagenet classification with deep convolutional neural networks. Advances in Neural Information Processing Systems (NIPS), 2012, : 1097−1105
    [11] 11 Lecun Y, Bengio Y, and Hinton G. Deep learning. Nature, 2015, 521(7553): 436−444 doi:  10.1038/nature14539
    [12] 12 Sulam J, Aberdam A, Beck A, and Elad M. On Multi-Layer Basis Pursuit, Efficient Algorithms and Convolutional Neural Networks. ?IEEE Transactions on Pattern Analysis and Machine Intelligence, 2011, : 1−6
    [13] 13 Aberdam A, Sulam J, and Elad M. Multi-Layer Sparse Coding: The Holistic Way. SIAM Journal on Mathematics of Data Science, 2019, : 46−77
    [14] 常亮, 邓小明, 周明全, 武仲科, 袁野, 杨硕, 王宏安. 图像理解中的卷积神经网络. 自动化学报, 2016, 42(9): 1300−1312

    14 Chang liang, Deng Xiao ping, Zhou Ming quanet.al. Convolution neural network in image understanding. Journal of Automation, 2016, 42(9): 1300−1312
    [15] 15 Zhu X X, Li L X, Liu J, Peng H P, and Niu X X. Captioning Transformer with Stacked Attention Modules. Applied Sciences, 2018,
    [16] Szlam A, Kavukcuoglu K, and LeCun Y. Convolutional matching pursuit and dictionary training. arxiv, 2018.[Online]. Available: https://arxiv.org/abs/1010.0422
    [17] 17 Wohlberg B. Effificient algorithms for convolutional sparse representations. IEEE Transactions on Image Processing, 2016, : 301−315
    [18] Sreter H, and Giryes R. Learned Convolutional Sparse Coding. arxiv, 2018.[Online]. Available: http://arxiv.org/abs/1806.00701
    [19] 19 Liu J, Garcia-Cardona C, and Wohlberg B, Yin W. First and second order methods for online convolutional dictionary learning. SIAM Journal on Imaging Sciences, 2018, : 1589−1628
    [20] 20 Garcia-Cardona C, Wohlberg B. Convolutional dictionary learning: A comparative review and new algorithms. IEEE Transactions on Computational Imaging, 2018, : 933−941
    [21] Song A H, Flores F, and Ba D. Spike Sorting by Convolutional Dictionary Learning. Arxiv, 2018.[Online]. Available: https://arxiv.org/abs/1806.01979
    [22] 22 Papyan V, Sulam J, and Elad M. Working locally thinking globally: Theoretical guarantees for convolutional sparse coding. IEEE Transactions on Computational Imaging, 2018, : 321−325
  • [1] 张宇, 包研科, 邵良杉, 刘威. 面向分布式数据流大数据分类的多变量决策树[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160809
    [2] 顾晓清, 蒋亦樟, 王士同. 用于不平衡数据分类的0阶TSK型模糊系统[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160200
    [3] 刘明, 李国军, 郝华青, 侯增广, 刘秀玲. 基于卷积神经网络的T波形态分类[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150817
    [4] 刘鹏, 叶志鹏, 赵巍, 唐降龙. 一种多层次抽象语义决策图像分类方法[J]. 自动化学报, doi: 10.16383/j.aas.2015.c140238
    [5] 倪鼎, 马洪兵. 基于近邻协同的高光谱图像谱-空联合分类[J]. 自动化学报, doi: 10.16383/j.aas.2015.c140043
    [6] 周全, 王磊, 周亮, 郑宝玉. 基于多尺度上下文的图像标注算法[J]. 自动化学报, doi: 10.3724/SP.J.1004.2014.02944
    [7] 张景祥, 王士同, 邓赵红, 蒋亦樟, 李奕. 融合异构特征的子空间迁移学习算法[J]. 自动化学报, doi: 10.3724/SP.J.1004.2014.00236
    [8] 顾鑫, 王士同, 许敏. 基于多源的跨领域数据分类快速新算法[J]. 自动化学报, doi: 10.3724/SP.J.1004.2014.00531
    [9] 朱群, 张玉红, 胡学钢, 李培培. 一种基于双层窗口的概念漂移数据流分类算法[J]. 自动化学报, doi: 10.3724/SP.J.1004.2011.01077
    [10] 张战成, 王士同, 钟富礼. 协作式整体和局部的分类机[J]. 自动化学报, doi: 10.3724/SP.J.1004.2011.01256
    [11] 练秋生, 陈书贞. 基于混合基稀疏图像表示的压缩传感图像重构[J]. 自动化学报, doi: 10.3724/SP.J.1004.2010.00385
    [12] 殷慧, 曹永锋, 孙洪. 基于多维金字塔表达和AdaBoost的高分辨率SAR图像城区场景分类算法[J]. 自动化学报, doi: 10.3724/SP.J.1004.2010.01099
    [13] 王红卫, 祁超, 魏永长, 李彬, 朱松. 基于数据的决策方法综述[J]. 自动化学报, doi: 10.3724/SP.J.1004.2009.00820
    [14] 周佳立, 张树有, 杨国平. 基于双目被动立体视觉的三维人脸重构与识别[J]. 自动化学报, doi: 10.3724/SP.J.1004.2009.00123
    [15] 胡包钢, 王泳. 关于互信息准则在分类(包括拒识类别)问题中的应用[J]. 自动化学报, doi: 10.3724/SP.J.1004.2008.01396
    [16] 李俊, 戴先中, 孟正大. 可重构制造系统监督控制器的自动重构[J]. 自动化学报, doi: 10.3724/SP.J.1004.2008.01337
    [17] 许力. 多层感知器的局部化设计[J]. 自动化学报
    [18] 刘雷健, 杨静宇, 曹雨龙, 邬永革, 汪华峰. 肺癌细胞识别彩色图像处理系统[J]. 自动化学报
    [19] 姚增起. 考虑输入错误时一个BP网络的高可靠重构[J]. 自动化学报
    [20] 毛建昌, 万嘉若, 王成道. 用于纹理分类的多元旋转不变自回归模型[J]. 自动化学报
  • 加载中
图(24) / 表(4)
计量
  • 文章访问数:  452
  • HTML全文浏览量:  792
  • PDF下载量:  16
  • 被引次数: 0
出版历程
  • 收稿日期:  2019-07-19
  • 录用日期:  2019-12-23
  • 网络出版日期:  2020-01-17

多层局部块坐标下降法及其驱动的分类重构网络

doi: 10.16383/j.aas.c190540
    基金项目:  国家自然科学基金(61473339), 首批“河北省青年拔尖人才”([2013]17)资助项目;京津冀基础研究合作专项 (F2019203583)
    作者简介:

    燕山大学信息科学与工程学院教授,主要研究方向为信号处理和模式识别,本文通信作者. E-mail: wjj@ysu.edu.cn

    燕山大学信息科学与工程学院硕士研究生,主要研究方向为信号与信息处理. E-mail: 13091375387@163.com

    燕山大学信息科学与工程学院硕士研究生,主要研究方向为信号处理. E-mail: xiajing_527@sina.com

    燕山大学信息科学与工程学院博士研究生,主要研究方向为模式识别. E-mail: landywang1105@163.com

  •  收稿日期 2019-07-19    录用日期 2019-12-23 Manuscript received July 19, 2019; accepted December 23, 2019 国家自然科学基金 (61473339), 首批 “河北省青年拔尖人才”([2013]17) 资助项目;京津冀基础研究合作专项 (F2019203583) Supported by National Natural Science Foundation of China(61473339), The First Batch of "Top Young Talents in Hebei Province"([2013]17);Basic Research Cooperation Projects of Beijing, Tianjin and Hebei (F2019203583)
  •  本文责任编委 黎铭 Recommended by Associate Editor LI Ming 1. 燕山大学信息科学与工程学院 河北省秦皇岛 066004    2. 河北省信息传输与信号处理重点实验室 河北省秦皇岛 066004 1. School of Information Science and Engineering, Yanshan University, Qinhuangdao, Hebei Province 066004    2. Hebei key laboratory of information transmission and signal processing, Yanshan University, Qinhuangdao, Hebei Province 066004

摘要: 卷积稀疏编码(CSC)已广泛应用于信号或图像处理、重构和分类等任务中, 基于深度学习思想的多层卷积稀疏编码(MLCSC)模型的多层基追踪问题和多层字典学习问题成为研究热点. 但基于傅里叶域的交替方向乘子法(ADMM)求解器和基于图像块(patch)空间域思想的传统基追踪算法不能容易地扩展到多层情况. 在切片(slice)局部处理思想的基础上, 本文提出了一种新的多层基追踪(Ml-BP)算法: 多层局部块坐标下降算法(ML-LoBCoD). 在多层迭代软阈值算法(ML-ISTA)和对应的迭代展开网络ML-ISTA-Net 的启发下, 提出了对应的迭代展开网络ML-LoBCoD-Net. ML-LoBCoD-Net实现信号的表征学习功能, 输出的最深层卷积稀疏编码用于分类. 此外, 为了获得更好的信号重构, 本文提出了一种新的多层切片卷积重构网络(ML-SCRN-Net), ML-SCRN-Net实现从信号稀疏编码到信号重构, 并且对这两个网络分别进行实验验证. 然后将ML-LoBCoD-Net和ML-SCRN-Net 进行级联得到ML-LoBCoD-SCRN合并网, 同时实现图像的分类和重构. 与传统基于全连接层对图像进行重建的方法相比, 本文提出的ML-LoBCoD-SCRN合并网所需参数少, 收敛速度快, 重构精度高. 本文将ML-ISTA和ML-FISTA 构建为ML-ISTA-SCRN和ML-FISTA-SCRN进行对比实验, 初步证明了所提出的ML-LoBCoD-SCRN分类重构网在MNIST、CIFAR10和CIFAR100数据集上是有效的, 分类正确率、损失函数和信号重构结果都优于ML-ISTA-SCRN和ML-FISTA-SCRN.

 收稿日期 2019-07-19    录用日期 2019-12-23 Manuscript received July 19, 2019; accepted December 23, 2019 国家自然科学基金 (61473339), 首批 “河北省青年拔尖人才”([2013]17) 资助项目;京津冀基础研究合作专项 (F2019203583) Supported by National Natural Science Foundation of China(61473339), The First Batch of "Top Young Talents in Hebei Province"([2013]17);Basic Research Cooperation Projects of Beijing, Tianjin and Hebei (F2019203583)
 本文责任编委 黎铭 Recommended by Associate Editor LI Ming 1. 燕山大学信息科学与工程学院 河北省秦皇岛 066004    2. 河北省信息传输与信号处理重点实验室 河北省秦皇岛 066004 1. School of Information Science and Engineering, Yanshan University, Qinhuangdao, Hebei Province 066004    2. Hebei key laboratory of information transmission and signal processing, Yanshan University, Qinhuangdao, Hebei Province 066004

English Abstract

王金甲, 张玉珍, 夏静, 王凤嫔. 多层局部块坐标下降法及其驱动的分类重构网络. 自动化学报, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540
引用本文: 王金甲, 张玉珍, 夏静, 王凤嫔. 多层局部块坐标下降法及其驱动的分类重构网络. 自动化学报, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540
Wang Jin-Jia, Zhang Yu-Zhen, Xia Jing, Wang Feng-Pin. Multi-layer local block coordinate descent algorithm-inspired classification and reconstructionan networks. Acta Automatica Sinica, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540
Citation: Wang Jin-Jia, Zhang Yu-Zhen, Xia Jing, Wang Feng-Pin. Multi-layer local block coordinate descent algorithm-inspired classification and reconstructionan networks. Acta Automatica Sinica, 2020, 46(x): 1−16. doi: 10.16383/j.aas.c190540
  • 在稀疏表示模型中, 一维信号或二维图像可以看成是多个基函数的线性组合, 本文将基函数称为原子, 所有原子组合为字典. 大部分稀疏编码的值为零, 只有少数有非零值. 对于稀疏编码问题, 以图像为例, 利用从图像提取的部分重叠片段来训练局部模型, 使用局部先验独立处理这些图像块, 然后对结果进行平均以获得近似全局估计[1]. 尽管稀疏编码很受欢迎, 但它是针对图像块进行单独编码, 忽略了图像块之间的相关性, 导致编码高度冗余[2].

    基于稀疏编码的缺陷和卷积神经网络的成功[3], Bristow 等[4]提出了卷积稀疏编码(CSC), 完全字典被卷积字典替代, 矩阵操作被卷积算子替代, 通过直接在信号内建立平移不变性来弥补稀疏编码的根本性的缺点. 用于信号恢复的稀疏重构算法主要分为 两大类: 凸优化算法和贪婪算法[5]. 凸优化算法重建速度慢, 贪婪算法在重建效率 上并不是很理想. 为了解决信号恢复问题, 目前领先的稀疏重构算法几乎都依赖于傅里叶域中的交替方向乘子法(ADMM)[6]. Papyan等[7] 提出了基于局部切片处理思想的卷积稀疏编码(SCSC)方法, 其是在图像切片(slice)上进行局部操作而不是在图像块(patch) 上, 巧妙地利用传统稀疏编码和传统字典学习算法解决了卷积稀疏编码(CSC)和卷积字典学习(CDL)问题. 但这种算法还是依赖于ADMM算法, 需要引入辅助变量, 增加内存需求. Zisselman等[8]在此基础上提出了基于局部块坐标下降(LoBCod)算法的卷积稀疏编码, 该算法在追踪阶段没有辅助变量也没有额外参数, 而且可以对卷积稀疏编码的每个针单独优化, 提供了局部稀疏度量的保证, 而且并行处理更能加快编码速度.

    从形式上看, 卷积稀疏编码类似于一层卷积神经网络, 因此Papyan等[9]和Krizhevsky等[10]提出了多层卷积稀疏编码(ML-CSC). 它从稀疏表示的观点提供了对CNN 的新解释: CNN的前向过程等同于ML-CSC的多层卷积稀疏编码求解过程. Papyan等人[9]提出了第一个多层卷积稀疏编码求解算法: 层基追踪算法(LBP)[11]. 尽管这种是算法已经在CNN与稀疏建模之间的建立了联系, 但仍然缺乏对ML-CSC 的更深入理解. ML-CSC模型的层基追踪算法[11] 不能提供满足多层模型假设的信号, 信号恢复误差随着网络的深化而累积. 紧接着, Sulam[2] 提出了第一个多层卷积字典学习算法, 首先使用FISTA 算法求解最深层的稀疏编码, 然后使用卷积投影计算中间层的卷积稀疏编码并重构信号, 最后利用随机梯度下降算法更新卷积字典. 这个模型利用的投影追踪算法[2] 通过先计算最深层卷积稀疏编码然后计算中间层卷积稀疏编码, 从而解决了误差累积的缺点. 但投影追踪算法产生次优性, 因为它们没有充分利用对所有中间层信息[12,13]. Aberdam 等[13]提出了一种综合-整体- 替代方案和整体追踪算法, 可以同时估计模型中的所有表示, 在合成和分析稀疏编码步骤之间交替, 解决整个模型的整体学习问题. 虽然在[13] 中提出了一种追踪算法, 但该算法本质是贪婪的并且不能很好的扩展到高维信号. 更重要的是, 目前还不清楚如何根据该方法从真实数据中训练字典. 2018年, Sulam 等人[12]提出了用于多层卷积稀疏编码问题的多层迭代软阈值算法(ML-ISTA)和多层快速软阈值算法(ML-FISTA), 可以近似地收敛到多层公式的全局最优; 并给出了对应的迭代展开网络结构ML-ISTA-Net和ML-FISTA-Net, 可以利用反向传播算法更新字典. 但这些多层模型都是基于图像块进行操作的, 忽略了图像的局部特征.

    在切片(Slice)局部处理思想、LoBCoD算法和ML-ISTA算法的启发下, 本文提出了基于切片的多层局部块坐标下降算法(ML-LoBCod)用于多层卷积稀疏编码的多层基追踪问题. 这种方法是在迭代过程中, 沿码针方向进行逐一更新, 不需要求解目标函数的梯度, 仅需求解一维搜索问题, 收敛速度较快. 卷积神经网络应用于图像分类效果显著[14], 在ML-ISTA-NET的启发下, 本文提出了对应的迭代展开网络ML-LoBCoD-Net, 网络正向过程被用于分类任务, 网络逆向过程利用分类误差和反向传播算法更新卷积字典. 在投影追踪算法[12]和切片局部处理思想的启发下, 本文提出了多层切片卷积重构网络(ML-SCRN)用于重构任务, 输入是最深层的卷积稀疏编码, 输出是重构信号. 为了提高信号重构质量, 本文提出了ML-LoBCoD-SCRN 的重构分类网, 在[15]的编码器和解码器框架的启发下, 将ML-LoBCoD-Net 作为编码器提取图像特征, 将ML-SCRN 作为解码器得到重构信号. ML-LoBCoD-Net完成编码器和信号分类功能, ML-SCRN完成解码器和信号重构功能. ML-LoBCoD-SCRN 网络逆向过程利用编码器分类误差、解码器重构误差和反向传播算法更新卷积字典.

    • 传统卷积稀疏编码模型(CSC)的研究问题如下, 假设全局信号$ X \in {\bf R}^N $满足,

      $$ \begin{array}{l} X = D\Gamma = \sum\limits _{i = 1}^M d_i * \gamma_i \end{array} $$ (1)

      其中 $ X $ 是要分解的信号, $ D\in {\bf R}^{N\times NM} $ 是全局卷积字典, $ \Gamma \in {\bf R}^{NM} $ 是相应的稀疏表示. 全局字典 D 由大小为 $ N \times\; M $ 的局部字典 $ D_L $ 一系列移位组成, $ d_i \in {\bf R}^N $ 表示卷积滤波器矩阵 $ D_L^{N\times M} $ 的列原子, $ \gamma_i \in {\bf R}^N $ 表示相应稀疏表示,“$ * $”符号表示 $ d_i $$ \gamma_i $ 的卷积操作.

      传统卷积稀疏编码(CSC)和卷积字典学习(CDL)算法有空间域, 傅立叶域和混合域三种方法. 如卷积稀疏编码问题有卷积 MP[16]、卷积 BP[17] 和卷积 LISTA[18], 卷积字典学习问题有在线卷积字典学习[19]、卷积 FISTA[20] 和卷积 K-SVD[21].[17],[22] 中提供了关于卷积稀疏表示的完整历史的讨论.

      CSC都是基于傅里叶域在图像块上进行操作的, 忽略了图像的局部特征. 在[7] 中做出了改进, 提出基于切片的卷积稀疏编码(SCSC), 它是在 CSC 模型的基础上将图像块进行切片, 原理是将全局稀疏矢量 $ \Gamma $ 分成一组非重叠矢量 $ \{\alpha_i\}_{i = 1}^N $, 即针, 字典 D 由局部卷积字典矩阵 $ D_L $ 通过移位得到带状卷积字典矩阵, 则全局信号 X 可以表示为,

      $$ \begin{array}{l} X = D\Gamma = \sum\limits _{i = 1}^N P_{i}^T D_L \alpha_i = \sum\limits _{i = 1}^N P_{i}^T s_i \end{array} $$ (2)

      其中 N 表示原图像信号 X 被分成 N 个切片, $ P_{i}^T \in $${\bf R}^{N\times n} $ 是将 $ D_L\alpha_i $ 置于第 i 个位置并用零填充其余部分的运算符, $ s_i $ 表示第 i 个切片.

      已知卷积字典 $ D_L $, 从信号 X 发现最佳稀疏表示 $ \Gamma $ 的问题被称为基于切片的卷积稀疏编码(SCSC)或基于切片的卷积稀疏编码基追踪问题. 如下式:

      $$ \begin{array}{l} \min\limits _{\alpha_i }\ \frac {1}{2} \|X-\sum\limits _{i = 1}^N P_{i}^T D_L \alpha_i\|_{2}^{2} + \lambda \sum\limits _{i = 1}^N \|\alpha_i\|_{1} \end{array} $$ (3)

      基于切片的卷积稀疏编码(SCSC)是利用交替方向乘子法(ADMM)进行基追踪求解的, 需要引入辅助变量, 增加内存需求, 收敛速度较慢.

    • Zisselman等[8]提出了基于切片的局部块坐标下降法(LoBCoD)用于解决基追踪问题, 利用块坐标下降算法来更新局部稀疏向量(针), 无需定义任何其他变量. 这种方法避免了调整额外的参数, 节省内存. 它的原理是采用局部策略将全局稀疏向量 $ \Gamma $ 分成局部向量 $ \{\alpha_i\}_{i = 1}^N $. 该模型并不是对所有的针一起优化, 而是将取自全局矢量 $ \Gamma $ 的每一个针 $ \alpha_i $ 作为坐标块, 并且对于这样的块单独地并有顺序地优化. 因此, 单个针的更新规则可以写为:

      $$ \begin{array}{l} \min\limits _{\alpha_i }\ \frac {1}{2} \|(X-\sum\limits _{\substack{{j = 1}\\{j\neq i}}}^N P_{j}^T D_L \alpha_j)-P_{i}^T D_L \alpha_i\|_{2}^{2} + \lambda \|\alpha_i\|_{1} \end{array} $$ (4)

      LoBCoD避免了额外参数的引入, 但仍然是将卷积稀疏编码(CSC)和卷积字典学习(CDL)分开进行求解, 计算较为复杂.

    • 全局信号 $ X\in {\bf R}^N $ 可以由卷积字典 $ D_1 $ 和对应稀疏矢量 $ \Gamma_1 $ 组成, 即 $ X = D_1\Gamma_1 $. 在多层模型中, 假设另一个字典 $ D_2 $ 和稀疏表示 $ \Gamma_2 $ 满足 $ \Gamma_1 = D_2 $, 将这个结构级联到多层[12]. 将其命名为多层卷积稀疏编码(ML-CSC), 则全局信号 X 与层稀疏编码 $ \{\Gamma_j\}_{j = 1}^J $ 定义如下,

      $$ \begin{array}{l} \begin{array}{c} X = D_1\Gamma_1, \\ \Gamma_1 = D_2\Gamma_2, \\ \vdots \\ \Gamma_{J-1} = D_J\Gamma_J . \end{array} \end{array} $$ (5)

      其中$ D_{(1,J)} $ 定义为全局卷积字典, 则 $ D_{(1,J)} =$$ D_1D_2\cdots D_J $. 全局信号 X 可以表示为

      $$ \begin{array}{l} X = D_{(1,J)}\Gamma_J \end{array} $$ (6)

      在最简单的形式中, 给定一组全局卷积字典 $ \{D_j\}_{j = 1}^J $, 从被噪声 w 污染为 $ y = X+w $ 的信号中发现最佳的稀疏表示问题称为多层卷积稀疏编码, 也称为多层基追踪去噪(BPDN)问题. 在[12]的工作表明, 这个问题可以归结为求解信号深度卷积稀疏编码, 则可以简明扼要地写成

      $$ \begin{array}{l} \min\limits _{\Gamma_J }\ \frac {1}{2} \|y-D_{(1,J)}\Gamma_J\|_{2}^{2} + \lambda \|\Gamma_J\|_{1} \end{array} $$ (7)

      对于求解多层卷积稀疏编码问题在[12] 提出的方法主要有层基追踪算法(LBP)、多层迭代软阈值算法(ML-ISTA)、多层迭代快速软阈值算法(ML-FISTA)和多层可学习的迭代软阈值算法(ML-LISTA).[12]提出的方法与神经网络结合, 前向过程求解卷积稀疏编码, 逆向过程求解字典学习, 但都是基于图像块进行操作的, 忽略了图像局部与全局的关系.

    • 在本节中将卷积稀疏表示和卷积神经网络(CNN)之间建立联系, 令卷积稀疏编码相当于一层卷积神经网络. 这样可以将传统基追踪回归问题推广到多层, 将1.1 节中基于切片的卷积稀疏编码 (SCSC) 扩展到多层, 称为基于切片的多层卷积稀疏编码 (ML-SCSC). 给定一组具有适当维度的卷积字典 $ \{D_j\}_{j = 1}^J $, 全局信号X 和ML-CSC中的层卷积稀疏表示可以写为

      $$ \begin{array}{l} \begin{array}{l} X = D_1\Gamma_1 = \sum\limits_{i = 1}^N P_{1,i}^T D_{L,1}\alpha_{1,i}, \|\Gamma_1\|_{0,\infty} \leq \lambda_1, \\ \Gamma_1 = D_2\Gamma_2 = \sum\limits_{i = 1}^N P_{2,i}^T D_{L,2}\alpha_{2,i}, \|\Gamma_2\|_{0,\infty} \leq \lambda_2, \\ \qquad \qquad \qquad \qquad \qquad \vdots \\ \Gamma_{J-1} = D_J\Gamma_J = \sum\limits_{i = 1}^N P_{J,i}^T D_{L,J}\alpha_{J,i}, \|\Gamma_J\|_{0,\infty} \leq \lambda_J. \end{array} \end{array} $$ (8)

      其中层稀疏表示 $ \Gamma_j $ 是局部矢量 $ \{\alpha_{j,i}\}_{i = 1}^N $ 的全局形式, $ \alpha_{j,i} $ 称为码针. $ P_{j,i}^T,i = 1, \cdots N $ 为将第 j 层的 $ D_{L,j}\alpha_{j,i} $ 置于第 i 个位置并用零填充其余部分的运算符, N 是切片的数量, 各层中的 N 应该是不同的. 为简单起见, 假设所有层的 N 都相同. 令 $ \Gamma_0 $ 表示信号 X, 可以将模型 Ml-SCSC 重写为

      $$ \begin{array}{l} \begin{array}{c} \Gamma_{j-1} = D_j\Gamma_j = \sum\limits_{i = 1}^N P_{j,i}^T D_{L,j}\alpha_{j,i}, \|\Gamma_j\|_{0,\infty} \leq \lambda_j,\\ \forall 1\leq j\leq J \end{array} \end{array} $$ (9)

      给定全局卷积字典 $ \{D_j\}_{j = 1}^J $, 从信号 X 发现最佳底层稀疏 $ \Gamma_J $$ \{\alpha_{J,i}\}_{i = 1}^N $ 称为基于切片局部处理的深度卷积稀疏编码, 或深度追踪问题, 则公式(7)可以写为

      $$ \begin{array}{l} \min\limits _{\{\alpha_{J,i}\}_{i = 1}^N}\ \frac {1}{2} \|y-\sum\limits _{i = 1}^N P_{J,i}^T D_{(1,J)} \alpha_{J,i}\|_{2}^{2} + \lambda \sum\limits _{i = 1}^N \|\alpha_{J,i}\|_{1} \end{array} $$ (10)

      根据公式(9)和(10)本文提出了分层基追踪问题.

      $$ \begin{array}{l} \min\limits _{\{\alpha_{j,i}\}_{i = 1}^N}\ \frac {1}{2} \|\Gamma_{j-1}-\sum\limits _{i = 1}^N P_{j,i}^T D_{(1,j)} \alpha_{j,i}\|_{2}^{2} + \lambda_j \sum\limits _{i = 1}^N \|\alpha_{j,i}\|_{1} \end{array} $$ (11)
    • 本文将基于切片的局部块坐标下降法单层模型扩展为多层, 提出了基于切片的多层局部块坐标下降法(ML-LoBCoD). 为简单起见, 在本节只介绍层稀疏编码. ML-LoBCoD 算法是将层稀疏向量 $ \Gamma_j $ 分成局部矢量 $ \{\alpha_{j,i}\}_{i = 1}^N $, 然后对每一个码针在定义域内寻求最优解, 其他码针固定不变, 视为常数, 则可以将公式(11)转换为单个码针的层基追踪问题

      $$ \begin{array}{l} \begin{array}{l} \!\! \min \limits_{\alpha_{j,i} }\ \frac {1}{2} \|(\Gamma_{j-1}-\sum \limits_{\substack{{n = 1}\\{n\neq i}}}^N P_{j,n}^T D_{L,j} \alpha_{j,n})-P_{j,i}^T D_{L,j} \alpha_{j,i}\|_{2}^{2}+\\ \lambda_j \|\alpha_{j,i}\|_{1} \end{array} \end{array} $$ (12)

      定义 $ R_{j,i} = (\Gamma_{j-1}-\sum\limits_{\substack{{n = 1}\\{n\neq i}}}^N P_{j,n}^T D_{L,j} \alpha_{j,n}) $ 作为各层中无码针 $ \alpha_{j,i} $ 贡献的层残差, 可以将等式(12)重写为,

      $$ \begin{array}{l} \displaystyle \min _{\alpha_{j,i} }\ \frac {1}{2} \|R_{j,i}-P_{j,i}^T D_{L,j} \alpha_{j,i}\|_{2}^{2} + \lambda_j \|\alpha_{j,i}\|_{1} \end{array} $$ (13)

      最小化公式(13)会涉及到全局变量如 $ R_{j,i} $, 但本文可以将其转化为等效的局部问题. 单位矩阵I定义为非重叠片段的总和$ \sum\limits_{k = 1}^N P_{j,k}^T P_{j,k} = I $, 其中$ P_{j,i} \in $$\{P_{j,k}\}_{k = 1}^N $. 将单位矩阵带入公式(13), 可以等效为(详细过程见附录A).

      $$ \begin{array}{l} \min\limits _{\alpha_{j,i} }\ \displaystyle\frac {1}{2} \|P_{j,i} R_{j,i}- D_{L,j} \alpha_{j,i}\|_{2}^{2} + \lambda_j \|\alpha_{j,i}\|_{1} \end{array} $$ (14)

      其中 $ P_{j,i} \in \{P_{j,k}\}_{k = 1}^N $. 本文将 $ P_{j,i}\in {\bf R}^{N\times n} $ 定义为从 j 层卷积稀疏编码 $ \Gamma_j $ 中提取第 in 维切片的运算符.

      利用软阈值通过对公式(14)的二次项进行线性化, 更新每一层最优稀疏表示, 更新形式为 $\displaystyle \alpha^k \leftarrow \alpha^{k-1}-\frac{\partial f}{\partial\alpha^{k-1}} $, 其中 f 表示公式(14)的目标函数, 导数公式如下

      $$ \begin{array}{l} \displaystyle \frac{\partial f}{\partial\alpha_{j,i}} = D_{L,j}^T(P_{j,i} R_{j,i}-D_{L,j}\alpha_{j,i}) \end{array} $$ (15)

      类似算法 ML-ISTA 的推导过程, 码针 $ \alpha_{j,i} $ 表示为

      $$ \begin{array}{l} \alpha_{j,i}^k = S_{\lambda}(\alpha_{j,i}^{k-1}+D_{L,j}^T(P_{j,i} R_{j,i}-D_{L,j}\alpha_{j,i}^{k-1})) \end{array} $$ (16)

      基于切片的多层局部块坐标下降(ML-LoBCoD)算法虽然看起来很复杂, 但是这个算法可以分解为简单的递归分层操作, 即一个全局追踪的分层阈值操作. 如算法 1 所示, 输入信号为被噪声 w 污染的信号 y, 输出为层稀疏表示 $ \{\Gamma_j\}_{j = 1}^J $ 或码针 $ \ \{\{\alpha_{j,i}\}_{i = 1}^N\}_{j = 1}^J $. 对局部卷积字典 $ \{D_j\}_{j = 1}^J $、顶层卷积稀疏编码 $ \Gamma_0 $ 和顶层残差 $ R_0 $ 进行初始化. 在每一次迭代展开过程中, 以第 j 层为例, 选定一个方向码针 $ \alpha_{j,i} $, 根据上一次迭代的层残差 $ R_j $ 和该层卷积稀疏编码的第 i 个码针 $ \alpha_{j,i} $ 得出残差 $ R_{j,i} $, 优化公式(12)更新码针 $ \alpha_{j,i} $. 再选定 $ \alpha_{j,i+1} $, 固定其他的码针进行更新. 依次将更新的码针进行累加得出该层的卷积稀疏编码 $ \Gamma_j = \{\alpha_{j,i}\}_{i = 1}^N $, 与上一层的卷积稀疏编码 $ \Gamma_{j-1} $ 得出第 j 层的层残差$ R_{j,i} $. 类似地更新第 $ j+1 $ 层卷积稀疏编码, 循环此过程直到得出最佳的深层卷积稀疏编码. 算法过程相当于图1中点线框中.

      图  1  三次迭代展开的 ML-LoBCoD-Net

      Figure 1.  3 unfoldings ML-LoBCoD-Net

      Algorithm 1 基于切片的多层局部块坐标下降(ML-LoBCoD) 算法

      输入: 信号y

       输出: 层卷积稀疏表示$ \{\Gamma_j\}_{j=1}^J $或码针$ \ \{\{\alpha_{j,i}\}_{i=1}^N\}_{j=1}^J $

      初始化: 局部卷积字典 $ \{D_j\}_{j=1}^J $, $ \Gamma_0=y $, $ R_1=\Gamma_0 $

      迭代: $ k=1:K $

      层数: $ j=1:J $

       码针数: $ i=1:N $

        计算局部残差: $R_{j,i}^k =R_{j}^{k-1}+ P_{j,i}^T D_{L,j}$$ \alpha_{j,i}^{k-1} $

        码针更新: $\alpha_{j,i}^k=S_{\lambda}(\alpha_{j,i}^{k-1}+ D_{L,j}^T(P_{j,i} R_{j,i}-$$D_{L,j}\alpha_{j,i}^{k-1})) $

       更新层残差: $ R_{j}^k=\Gamma_{j-1}^k-D_{L,j}\Gamma_{j}^k $

    • 如上所述, 基于切片的多层局部块坐标下降法(ML-LoBCoD)为多层基追踪提供了有效的方法, 在本节中介绍通过神经网络解释多层基追踪(ML-BP)问题, 将ML-LoBCoD 算法构建为一个类似LeNet风格的多层模型网络, 即利用简单的递归分层操作将ML-LoBCoD算法看作一层神经网络层(图1点线框). 在图1中, 本节以三层神经网络层为例, 将ML-LoBCoD迭代展开三次构成ML-LoBCoD-Net, 称为迭代展开的多层局部块坐标下降网络(ML-LoBCoD-Net). ML-LoBCoD-Net可以看作是神经网络中的前向传递, 网络的参数与传统的前向传输类型完全相同, 可以在模型中不引入任何参数的情况下改善典型CNN的性能. ML-LoBCoD-Net首先输入原始信号X, 即第0层卷积稀疏编码$ \Gamma_0 $, 通过卷积操作得出三层卷积稀疏编码的初始值$ \Gamma_1 $$ \Gamma_2 $、和 $ \Gamma_3 $, 根据公式$ \Gamma_2 = D_3\Gamma_3 $, $ \Gamma_1 =$$ D_2\Gamma_2 $得出新的初始值$ \Gamma_1 $$ \Gamma_2 $、和 $ \Gamma_3 $. 引入超参数 $ \beta $, 对模型进行分层放松. 再通过算法1基于切片的多层局部块坐标下降算法(ML-LoBCoD)估算出$ \hat{\Gamma_1} $$ \hat{\Gamma_2} $$ \hat{\Gamma_3} $. 接着将 $ \hat{\Gamma_1} $$ \hat{\Gamma_2} $$ \hat{\Gamma_3} $作为第二次迭代展开的卷积稀疏编码的初始值, 估算出第二次迭代展开的卷积稀疏编码$ \hat{\Gamma_1} $$ \hat{\Gamma_2} $$ \hat{\Gamma_3} $. 以此类推, 得出最终的第三层卷积稀疏编码卷积稀疏编码$ \hat{\Gamma_3} $. 最后在网络中加入一个全连接层作为分类器, 利用$ \hat{\Gamma_3} $得出重构标签$ \hat{Y} $, 实现网络的分类功能.

      图2是ML-LoBCoD算法在第j层卷积稀疏编码的更新流程图, 它表示图1中虚线框中的操作, 也就是算法1中一层卷积稀疏编码更新部分. 它通过第$ j-1 $层卷积稀疏编码$ \Gamma_{j-1} $和上一次迭代展开的卷积稀疏编码$ \Gamma_{j} $得出本次迭代展开的第j层卷积稀疏编码$ \Gamma_{j} $.

      图  2  ML-LoBCoD 算法第 j 层一次迭代流程图

      Figure 2.  ML-LoBCoD algorithm j-layer one iteration flowchart

      图2 中模型通过反向循环强制地执行模型约束, 从而可以得到重构信号为$ \hat{X} = D_{1}D_{2}\cdots D_{J}\Gamma_{J} $.但是因子$ D_j $乘积的加深会导致优化问题高度非凸. 以分层的方式放松模型, 可以避免这种情况. 即每一层的近似模型约束, $ \Gamma_{j-1}\approx D_{j}\Gamma_{j} $, 更容易最小化优化目标. 通过引入控制全局模型一致性的超参数 $ \beta $, 可以很容易地实现这一点. 在循环过程中, 首先用$ \beta = 0 $训练模型, 对应于逐层松弛模型, 随着迭代次数的增加逐渐过渡到$ \beta = 1 $, 从而产生连贯的全局 ML-CSC 模型. (详细介绍见附录B)

    • 在上一节中提出的迭代展开的基于局部的多层局部块坐标下降网络(ML-LoBCoD-Net)是利用被噪声污染的信号求取最深层的卷积稀疏编码和分类标签. 在本节中主要解决利用最深层卷积稀疏编码得到重构信号 $ \hat{X} $.

      对于多层模型, 给定底层卷积稀疏编码$ \Gamma_J $和卷积字典$ \{D_j\}_{j = 1}^J $得到信号$ \hat{X}(\Gamma_J,\{D_j\}_{j = 1}^J) $, 称为多层卷积稀疏投影. 可以由下式得出

      $$ \begin{array}{l} \hat{X}(\Gamma_J,\{D_j\}_{j = 1}^J) = D_1D_2 \cdots D_J\Gamma_J \end{array} $$ (17)

      本文在基于切片局部处理的卷积稀疏编码的基础上提出了基于切片的多层卷积稀疏投影. 为简单起见, 在本节中只介绍层卷积稀疏编码的更新规则, 即第$ j-1 $层卷积稀疏编码$ \Gamma_{j-1} $由第j$ \Gamma_j =$$ \{\alpha_{j,i}\}_{i = 1}^N $决定

      $$ \begin{array}{l} \Gamma_{j-1} = \sum\limits_{i = 1}^N P_{j,i}^T D_{L,j}\alpha_{j,i} \end{array} $$ (18)

      其中定义$ s_{j,i} = D_{L,j}\alpha_{j,i} $为第j层第i个切片, 则公式(18)可以写为

      $$ \begin{array}{l} \Gamma_{j-1} = \sum\limits_{i = 1}^N P_{j,i}^Ts_{j,i} \end{array} $$ (19)

      图3 为层卷积稀疏解码的更新规则, 称为切片卷积层 $ (SCL_j) $. 输入第 j 层卷积稀疏编码码 $ \Gamma_{j} $, 将码针 $ \alpha_{j,i} $ 与局部卷积字典 $ D_{L,j} $ 相乘得到切片 $ s_{j,i} $, 然后将 $ P_{j,i}^T $ 操作应用于切片得到第 $ j-1 $ 层卷积稀疏编码 $ \Gamma_{j-1} $.

      图  3  第 j 层切片卷积层

      Figure 3.  J-layer slice convolution layer$ (SCL_j) $

      根据图3 可以由j层卷积稀疏编码$ \Gamma_{j} $得出第$ j-1 $层卷积稀疏编码$ \Gamma_{j-1} $, 在此基础上本文提出从最深层卷积稀疏编码层层递进得出重构信号$ \hat{X} $的算法过程, 称为“基于切片的多层卷积重构神经网络 (ML-SCRN)”. ML-SCRN 网络结构如图4 所示, 输入最深层卷积稀疏编码$ \Gamma_J $, 利用切片卷积层$ (SCL_{J}) $得出$ \Gamma_{J-1} $, 以此类推得出顶层卷积稀疏编码$ \Gamma_{0} $, 即重构信号$ \hat{X} $.

      图  4  基于切片多层卷积重构神经网络(ML-SCRN)

      Figure 4.  Neural network reconstruction based on slice multi-layer convolution (ML-SCRN)

      Algorithm 2 基于切片的多层卷积重构神经网络(ML-SCRN)

      输入: 底层卷积稀疏编码 $ \Gamma_J=\{\alpha_{j,i}\}_{i=1}^N $, $ \{D_j\}_{j=1}^J $

      输出: 重构信号 $ \hat{X}(\Gamma_J,\{D_j\}_{j=1}^J) $

      初始化: 局部卷积字典 $ \{D_j\}_{j=1}^J $, $ \Gamma_0=y $, $ R_1=\Gamma_0 $

      迭代: $ k=1:K $

       层数: $ j=1:J $

        切片重构: $ s_{j,i}=D_{L,j}\alpha_{j,i} $

        更新层残卷积稀疏编码: $ \Gamma_{j-1}^k= $$\sum\limits_{i=1}^NP_{j,i}^T s_{j,i}^k $

       更新重构信号: $ \hat{X}=\Gamma_{0}^k=\sum\limits_{i=1}^NP_{1,i}^T s_{1,i}^k $

      算法 2 介绍了ML-SCRN网络的算法过程: 输入是通过迭代展开的多层局部块坐标下降网络(ML-LoBCoD-Net)得到的最深层卷积稀疏编码$ \Gamma_J $和局部卷积字典$ \{D_j\}_{j = 1}^J) $, 输出是重构信号$ \hat{X}(\Gamma_J,\{D_j\}_{j = 1}^J) $. 在每一次迭代过程中, 以第j层为例, 由码针$ \alpha_{j,i} $与局部卷积字典$ D_{L,j} $得到切片$ s_{j,i} = D_{L,j}\alpha_{j,i} $, 通过$ P_{j,i}^T $操作得到第$ j-1 $层卷积稀疏编码. 循环此过程得到第$ 0 $层卷积稀疏编码 $ \Gamma_0 $即重构信号$ \hat{X} = \sum\limits_{i = 1}^NP_{1,i}^T D_{L,1}\alpha_{1,i} $.

      显然, ML-SCRN是一个特殊的重构网络, 输入不是信号, 而是卷积稀疏编码. 此外, ML-SCRN网络能够获得中间层和重构信号的稀疏编码, 因此它的前向传递实现了新颖的投影寻踪算法和信号投影算法.

    • 在本小节中, 将本文提出的ML-LoBCoD-Net和ML-SCRN-Net进行级联得到基于ML-LoBCoD的分类与重构合并网(ML-LoBCoD-SCRN), 同时实现分类和重构功能. 通过神经网络的成功的启发, 本文提出了编码器- 解码器框架, 将ML-LoBCoD-Net作为编码器提取图像特征, 将ML-SCRN作为解码器得到重构信号.

      ML-LoBCoD-SCRN 的前向过程包括俩部分: 第一部分将基于切片的多层局部块坐标下降的迭代展开网络(ML-LoBCoD-Net)作为编码器, 通过算法 1 得到图像的最深层卷积稀疏编码 $ \Gamma_J $ 和分类标签$ \hat{Y} $. 第二部分将基于切片的多层卷积重构神经网络 (ML-SCRN) 作为解码器, 通过算法 2 得到顶层卷积稀疏编码$ \Gamma_0 $, 即重构信号$ \hat{X} = \Gamma_0 $.

      ML-LoBCoD-SCRN 的后向过程是最小化总的损失函数$ F_{loss} $, 利用深度学习中函数 Adam()或 SGD ()通过反向传播算法更新全局卷积字典$ \{D_j\}_{j = 1}^J $. 本文用均方损失函数$ MSE(X,\hat{X}) $表示原始信号 X 和重构信号$ \hat{X} $的重构误差, 用多分类的负对数似然损失函数$ NLL(Y,\hat{Y}) $表示最深层卷积稀疏编码$ \Gamma_J $产生的分类标签$ \hat{Y} $与信号真实标签 Y 之间的分类误差.

      本文定义损失函数$ F_{loss} $是由重构误差$MSE $$ (X,\hat{X}) $和分类误差$ NLL(Y,\hat{Y}) $加权得到, 如下式

      $$ \begin{array}{l} F_{loss} = \rho *MSE(X,\hat{X})+(1-\rho)*NLL(Y,\hat{Y}) \end{array} $$ (20)

      $ \rho = 0 $时, 相当于ML-LoBCoD分类网络; 当$ 0<\rho<1 $时是ML-LoBCoD-SCRN重构分类网络; 当$ \rho = 1 $时, 相当于ML-LoBCoD-SCRN重构网络. 图5为 ML-LoBCoD-SCRN 图像重构分类网络图.

      图  5  ML-LoBCoD-SCRN 分类重构网络

      Figure 5.  ML-LoBCoD-SCRN classification reconstruction network

      Algorithm 3 基于局部块坐标下降法的多层分类重构网络(ML-LoBCoD-SCRN)

      输入: 原始图像信号 X

      输出: 重构信号 $ \hat{X}(\{\{\alpha_{j,i}\}_{j=1}^J\}_{i=1}^N,\{D_j\}_{j=1}^J) $

      初始化: 局部卷积字典 $ \{D_j\}_{j=1}^J $

      引入噪声 w: $ y=X+w $

      迭代: $ k=1:K $

       通过算法 1 更新最深层的卷积稀疏编码 $ \Gamma_J $ 和分类标签 $ \hat{Y} $

       通过算法 2 更新切片与重构信号

       损失函数:

      $ F_{loss}=\rho *MSE(X,\hat{X})+(1-\rho)*NLL(Y,\hat{Y}) $

       更新卷积字典: $ D_j\!=\!D_j\!+\!\eta \partial \frac{F_loss}{D_j},j\!=\!1 \cdots J $

      同理, 本文将多层迭代软阈值网络(ML-ISTA-Net)与 ML-SCRN 进行级联得到基于 ML-ISTA 的分类与重构合并网(ML-ISTA-SCRN), 将多层迭代软阈值网络(ML-FISTA-Net)与 ML-SCRN 进行级联得到基于 ML-FISTA 的分类与重构合并网(ML-FISTA-SCRN), 以便之后的实验对比.

      算法 3 介绍了 ML-LoBCoD-SCRN 重构分类网络的算法流程. 输入是原始图像信号 X, 输出是重构信号$ \hat{X} $. 首先引入噪声w得到被污染的信号y, 然后随机选择小批量训练样本, 并随机初始化卷积字典$ \{D_j\}_{j = 1}^J $, 通过算法 1 得到最深层的卷积稀疏编码$ \Gamma_J $和分类标签$ \hat{Y} $, 通过算法 2 利用$ \Gamma_J $得到重构信号$ \hat{X} $. 最后最小化损失函数$ F_{loss} $更新局部卷积字典, 循环此过程直到收敛.

    • 在本节中将展示如何将提出的网络在MNIST、CIFAR10和CIFAR100数据集上对图像进行分类和重构. 实验是在单个Nvidia Geforce 1080 Ti GPU系统上运行的. 实验中多层卷积稀疏编码模型的层数选择为3层, 3个卷积层(即卷积字典)分别具有64, 128, 512个滤波器, 在MNIST数据集中卷积核的大小分别为(6,6), (6,6), (4,4), 在CIFAR10和CIFAR100数据集中卷积核的大小分别为(4,4), (5,5), (6,6). 本文提出的重构分类网的融合损失函数的超参数$ \rho $设置为0.0, 0.01, 0.25, 0.5, 0.75, 0.99, 1.0, 用于比较$ \rho $ 在不同的值时ML-LoBCoD-SCRN网络和ML-ISTA-SCRN、ML-FISTA-SCRN分类重构网图像分类重构效果. 其中$ \rho = 0 $时的分类重构网就是ML-LoBCoD-Net、ML-ISTA-Net、ML-FISTA-Net 分类网.

    • 本文所提出的多层局部块坐标下降的分类与重构网络(ML-LoBCoD-SCRN)设定的层数为三层, 在本小节中提出单层的局部块坐标下降的分类与重构网络(LoBCoD-SCRN)进行对比试验. LoBCoD-SCRN是将原始信号X通过单层局部块坐标下降网络(LoBCoD)得到卷积稀疏编码表示$ \Gamma $, 再通过基于切片的单层卷积重构网络(SCRN)得到重构信号$ \hat{X} $.

      图6图7分别为 ML-LoBCoD-SCRN 和 LoBCoD -SCRN 两个模型在MNIST数据集下迭代100次的分类准确率和重构损失值的对比图, 可以看出单层模型的分类和重构结果要远远低于多层模型结果. 由此可见虽然单层模型由于只用到一层的卷积稀疏编码, 所以网络结构简单, 参数少, 运行时间短, 但无法较成功的实现分类与重构功能.

      图  6  ML-LoBCoD-SCRN和LoBCoD-SCRN在MNIST数据集中的分类准确率

      Figure 6.  Classification accuracy of ML-LoBCoD-SCRN and LoBCoD-SCRN in the MNIST dataset

      图  7  ML-LoBCoD-SCRN和LoBCoD-SCRN在MNIST数据集中的损失函数值随迭代次数的变化

      Figure 7.  Change of loss function values of ML-LoBCoD-SCRN and LoBCoD-SCRN in the MNIST dataset with the number of iterations

    • 以MNIST数据集为例(与CIFAR10结果一致), 图8给出了$ \rho $的值在不同的情况下, 模型训练100次ML-LoBCoD-SCRN的分类正确率. 可以看出$ \rho $的值在变化时, ML-LoBCoD-SCRN的分类结果变化不大.

      图  8  $ \rho $在不同值时ML-LoBCoD-SCRN在MNIST数据集中的分类准确率

      Figure 8.  Classification accuracy of ML-LoBCoD-SCRN in the MNIST dataset at different values of $ \rho $

      图9$ \rho $的值在不同的情况下, 模型训练100次ML-LoBCoD-SCRN对于数字5的重构结果. 从图中可以看出, 随着$ \rho $的值不断变大图像重构效果越好. 当$ \rho = 0 $时, 网络只能实现分类功能, 无法得出清晰的重构结果. 当$ \rho = 0.99 $时, 网络可以实现非常完整的重构图像. 当$ \rho = 1.0 $时, 网络的重构图像与$ \rho = 0.99 $时相当, 但它无法实现分类功能.

      图  9  $ \rho $在不同值时ML-LoBCoD-SCRN重构结果

      Figure 9.  ML-LoBCoD-SCRN reconstruction results at different values of $ \rho $

      图10$ \rho $的值在不同的情况下ML-LoBCoD-SCRN网络损失函数值随迭代次数变化关系图, 由于当 $ \rho = 0 $$ \rho = 1.0 $时只有分类和重构一个功能, 不具参考意义, 所以将其舍去. 在图8中可以看出参数 $ \rho = 0.99 $的损失函数最小, 实验中也发现$ \rho $的值越大图像重构效果越好. 由上述可见, 本文选择$ \rho = 0.99 $ 进行实验, 可以同时实现重构和分类功能.

      图  10  $ \rho $在不同值时ML-LoBCoD-SCRN损失函数值随迭代次数的变化

      Figure 10.  Change of ML-LoBCoD-SCRN loss function with iterations at different values of $ \rho $

    • 图11给出了$ \rho = 0 $时, ML-LoBCoD-Net、ML-ISTA-Net、ML-FISTA-Net 三种分类网络模型训练100次的分类准确率, 可以看出ML-LoBCoD分类结果优于ML-FISTA 但和ML-ISTA相当.

      图  11  $ \rho = 0 $时三种方法的分类准确率

      Figure 11.  Classification accuracy of the three methods at $ \rho = 0 $

      表1是CNN、ML-ISTA、ML-FISTA、ML-LISTA、LBP 和ML-LoBCoD分类网络分别在MNIST和CIFAR10数据集下模型训练100次的分类正确率. 可以看出在没有任何额外参数的情况下, 本文提出的ML-LoBCoD算法的分类准确率要高于其他网络.

      表 1  几种分类网络在迭代100次时的分类正确率

      Table 1.  Classification accuracy of several classification networks at 100 iterations

      模型 Acc(MNIST) Acc(CIFAR10)
      CNN 98.74% 79.00%
      ML-ISTA 99.11% 82.93%
      ML-FISTA 99.16% 82.79%
      ML-LISTA 98.80% 82.68%
      LBP 99.19% 80.73%
      ML-LoBCoD 99.15% 85.53%
    • ML-SCRN重构是先利用卷积操作得出三层卷积稀疏编码的初始值$ \Gamma_1,\Gamma_2,\Gamma_3 $,再利用ML-SCRN对图像进行重构. 图12是迭代100次时ML-SCRN 重构网的部分测试数据的原始数字图像与重构数字图像对比, 可以看出仅仅重构网络不能学习到复杂的数字图像结构进而很多重构数字出现了部分缺失或模糊现象.

      图  12  ML-SCRN网络的重构结果

      Figure 12.  Reconstruction results of ML-SCRN network

    • 本文为避免因子$ D_i $积的加深, 而导致优化问题高度非凸, 提出利用分层的方式放松模型. 图13图14分别是超参数$ (\beta = 0) $和逐层放松$ (\beta = 0\rightarrow 1) $ 时ML-LoBCoD-SCRN模型的分类准确率和重构损失值的变化图.

      图  13  逐层放松模型的分类对比图

      Figure 13.  Classification comparison chart of layer-by-layer relaxation model

      图  14  逐层放松模型重构损失函数对比图

      Figure 14.  Comparison chart of layer-by-layer relaxation model reconstruction loss function

      图15为在MNIST数据集下逐层放松模型对比图, 图(a)为原始图像, 图(b)为超参数$ \beta = 0 $的模型重构结果, 图(c)是超参数$ \beta = 0\rightarrow 1 $逐层放松模型重构结果图. 从图13-15可以看出在没有加入超参数$ \beta $的情况下模型的收敛速度慢, 分类和重构结果都低于有超参数时的模型结果.

      图  15  逐层放松模型重构结果对比图

      Figure 15.  Comparison chart of layer-by-layer relaxation model reconstruction results

    • 传统的方法是基于全连接层对图像进行重建的, 即将编码器的输出送到解码器中实现图像重建, 该解码器由一个全连接的层组成[21]. 本文将多层局部块坐标下降网络(ML-LoBCoD-Net)与全连接层进行级联得到基于ML-LoBCoD的分类与重构合并网(ML-LoBCoD-FC). 先通过ML-LoBCoD-Net得到最深层的卷积稀疏编码, 再利用全连接层得出图像的分类标签和重构图像. 在本节将 ML-LoBCoD-SCRN与ML-LoBCoD-FC的分类与重构结果进行比较. 表2给出了ML-LoBCoD-SCRN与ML-LoBCoD-FC在迭代100 次时的分类正确率、重构误差、avgpsnr、运行时间对比. 重构误差是所有测试集原图像与重构图像均方损失函数相加求平均得到的值. avgpsnr是所有测试集原图像与重构图像的psnr相加求平均得到的值. 可以看出ML-LoBCoD-SCRN网络与ML-LoBCoD-FC网络相比, 所占用的内存小, 收敛速度块, 重构的精度高.

      表 2  两种分类重构网络在迭代100次对比

      Table 2.  Comparison of two classification reconstruction networks over 100 iterations

      模型 ML-LoBCoD-SCRN ML-LoBCoD-FC
      分类正确率ρ=0 99.15% 98.91%
      重构误差 3.03×10−6 1.38×10−5
      avgpsnr 30.77 dB 22.79 dB
      时间 1 h 47 m 2 h 34 m

      图16是 ML-LoBCoD-SCRN与ML-LoBCoD-FC 分类重构网迭代100次时的部分测试数据的原始数字图像与重构数字图像对比, 图(a)为原始图像, 图(b)为ML-LoBCoD-FC 重构结果, 图(c) 为ML-LoBCoD-SCRN重构结果, 可以看出ML-LoBCoD-FC重构网络不能学习到复杂的数字图像结构进而很多重构数字出现了模糊现象. 图17是迭代100 次时的ML-LoBCoD-SCRN分类重构网络和ML-LoBCoD-FC分类重构网络的损失函数值对比图. 可以看出ML-LoBCoD-SCRN网络重构结果优于ML-LoBCoD-FC.

      图  16  两种分类重构网络在MNIST数据集的重构结果

      Figure 16.  Reconstruction results of two classification reconstruction networks in MNIST dataset

      图  17  两种分类重构网在MNIST 数据集的损失函数

      Figure 17.  Loss function of two classification reconstruction networks in MNIST dataset

      在本节中就算法的时间复杂度而言, 将ML-LoBCoD-SCRN 与ML-LoBCoD-FC进行比较. 本文提出的方法中的参数数量不会随着模型的深度而增加. ML-LoBCoD-SCRN 在图像的重构过程中并没有增加参数, 而ML-LoBCoD-FC在重构过程中参数数量明显增多. 因此, 与ML-LoBCoD-FC相比, 本文提出的模型使用的参数少, 运行速率快, 如表3所示.

      表 3  两种分类重构网络参数数量的比较

      Table 3.  Comparison of the parameters of two classification reconstruction networks

      模型 ML-LoBCoD-SCRN ML-LoBCoD-FC
      1stlayer 6×6×1×64+64 6×6×1×64+64
      2stlayer 6×6×64×128+128 6×6×64×128+128
      3stlayer 4×4×128×512+512 4×4×128×512+512
      4stlayer 512×10+10 512×10+512×784+784
      Total 1352330 1753818
    • 本文将多层局部块坐标下降网络(ML-LoBCoD-NET)与ML-SCRN-NET进行级联得到基于ML-LoBCoD的分类与重构合并网(ML-LoBCoD-SCRN). 同理将多层迭代软阈值网络(ML-ISTA-NET)和多层快速迭代软阈值网络(ML-FISTA-NET)[12]与ML-SCRN-NET进行级联得到基于ML-ISTA和ML-FISTA的分类与重构合并网(ML-ISTA-SCRN和ML-FISTA-SCRN), 以便进行实验对比.

      图18-20分别是 $ \rho = 0.99 $ 时ML-LoBCoD-SCRN、ML-ISTA-SCRN和ML-FISTA-SCRN重构分类网在MNIST、CIFAR10和CIFAR100 数据集下迭代100 次的部分测试数据的原始数字图像与重构数字图像对比. 图(a)为原始图像, 图(b)为ML-ISTA-SCRN重构结果, 图(c)为ML-FISTA-SCRN重构结果, 图(d)为ML-LoBCoD-SCRN重构结果. 可以看出ML-ISTA-SCRN和ML-FISTA-SCRN两个模型虽然可以较完整的将原图像重构出来, 但重构图像结果的清晰度没有ML-LoBCoD-SCRN 重构网络的效果好.

      图  18  三种网络在MNIST数据集下的重构结果

      Figure 18.  Reconstruction results of three networks under the MNIST dataset

      图  19  三种网络在CIFAR10数据集下的重构结果

      Figure 19.  Reconstruction results of three networks under the CIFAR10 dataset

      图  20  三种网络在CIFAR100数据集下的重构结果

      Figure 20.  Reconstruction results of three networks under the CIFAR10 dataset

      图21图22分别是$ \rho = 0.99 $时ML-LoBCoD-SCRN分类重构网络、ML-ISTA-SCRN分类重构网络和ML-FISTA-SCRN分类重构网络在MNIST和CIFAR10数据集下分类准确率对比图. 图23图24分别是$ \rho = 0.99 $ 时ML-LoBCoD-SCRN分类重构网络、ML-ISTA-SCRN分类重构网络和ML-FISTA-SCRN分类重构网络在MNIST和CIFAR10数据集下的损失函数值对比图. 从中可以看出ML-LoBCoD-SCRN模型的收敛速度要比ML-ISTA-SCRN和ML-FISTA-SCRN快, 分类与重构的结果高于这些模型. 表4给出了三种网络在MNIST和CIFAR10 数据集下迭代100 次时的分类正确率、重构误差、运行时间、avgpsnr对比. 重构误差是所有测试集原图像与重构图像均方损失函数$ MSE(X,\hat{X}) $ 相加求平均得到的值. avgpsnr是所有测试集原图像与重构图像的psnr相加求平均得到的值. 可以看出ML-LoBCoD-SCRN网络的各参数结果优于ML-ISTA-SCRN网络和ML-FISTA-SCRN 网络.

      表 4  三种网络在MNIST、CIFAR10和CIFAR100数据集下迭代100次各参数对比

      Table 4.  Comparison of the parameters of the three networks under the MNIST, CIFAR10 and CIFAR100 datasets 100 times

      模型 ML-LoBCoD-SCRN ML-ISTA-SCRN ML-FISTA-SCRN
      Acc(MNIST) 98.90% 98.65% 98.41%
      Acc(CIFAR10) 84.40% 82.62% 83.48%
      Acc(CIFAR100) 83.41% 81.26% 80.34%
      Loss(MNIST) 3.03×10−6 3.87×10−6 3.42×10−6
      Loss(CIFAR10) 1.44×10−6 5.28×10−6 6.52×10−6
      Loss(CIFAR100) 3.14×10−6 6.75×10−6 8.95×10−6
      Time(MNIST) 1h47m 1h54m 1h56m
      Time(CIFAR10) 1h12m 1h20m 1h25m
      Time(CIFAR100) 57 m 1 h 1h05m
      avgpsnr(MNIST) 30.77 dB 26.51 dB 29.75 dB
      avgpsnr(CIFAR10) 32.46 dB 28.21 dB 27.63 dB
      avgpsnr(CIFAR100) 29.97 dB 27.00 dB 25.14 dB

      图  21  三种分类重构网在MNIST 数据集下的分类正确率

      Figure 21.  Classification accuracy of three classification reconstruction networks under the MNIST dataset

      图  22  三种分类重构网在CIFAR10数据集下的分类正确率

      Figure 22.  Classification accuracy of three classification reconstruction networks under the CIFAR10 dataset

      图  23  三种分类重构网在MNIST 数据集下的损失函数

      Figure 23.  Loss function of three classification reconstruction networks under MNIST dataset

      图  24  三种分类重构网在CIFAR10数据集下的损失函数

      Figure 24.  Loss function of three classification reconstruction networks under CIFAR10 dataset

    • 本文在多层卷积稀疏编码模型(ML-CSC)和基于切片的局部块坐标下降法(LoBCoD)思想的基础上, 首先提出了基于切片的多层卷积稀疏(ML-SCSC)表示模型, 接着提出了多层局部块坐标下降(ML-LoBCoD)算法实现了多层基追踪问题的求解, 之后ML-LoBCoD 算法充分利用了信号局部与全局的关系, 采用递归神经网络原理, 将ML-LoBCoD 算法进行迭代展开, 在不增加网络参数情况下, 提出了迭代展开的ML-LoBCoD-Net 计算深层卷积稀疏编码, 将其用于分类任务, 分类结果优于CNN 网络. 基于切片(slice)局部处理思想, 本文提出了多层卷积重构网络(ML-SCRN), 进一步实现从深层卷积稀疏编码到信号的重构. 本文提出了三种分类重构网络ML-ISTA-SCRN、ML-FISTA-SCRN和ML-LoBCoD-SCRN, 实现了从信号到编码再到信号重构的级联网络. 本文还提出了基于编码分类损失和信号重构损失的融合损失函数, 并采用反向传播算法训练网络. 将ML-LoBCoD-Net 与传统的基于全连接层重构方法相结合提出ML-LoBCoD-FC 进行对比, ML-LoBCoD-SCRN的网络参数少, 运行时间少, 重构准确率高. 本文在MNIST、CIFAR10和CIFAR100数据集进行了大量实验, 实验结果表明, ML-LoBCoD算法与多层迭代软阈值算法(ML- ISTA)和多层快速迭代软阈值算法(ML- FISTA)相比, ML-LoBCoD-Net比ML-ISTA-Net 和ML-FISTA-Net的分类效果更好或相当. ML-LoBCoD-SCRN比ML-ISTA-SCRN 和ML- FISTA -SCRN 分类准确率有所提高, 而且信号重构误差有所减小. 端到端的ML-LoBCoD-SCRN 重构出的图像明显优于ML-SCRN重构出的图像质量. 这说明分类信息和信号信息的联合利用会进一步提高信号重构质量.

    参考文献 (22)

目录

    /

    返回文章
    返回