留言板

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

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

非对称深度在线哈希

吴楠楠 杨宵晗 刘文皓 常心怡 郭呈银 王振

吴楠楠, 杨宵晗, 刘文皓, 常心怡, 郭呈银, 王振. 非对称深度在线哈希[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023170
引用本文: 吴楠楠, 杨宵晗, 刘文皓, 常心怡, 郭呈银, 王振. 非对称深度在线哈希[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023170
WU Nannan, YANG Xiaohan, LIU Wenhao, CHANG Xinyi, GUO Chengyin, WANG Zhen. Asymmetric deep online hashing[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023170
Citation: WU Nannan, YANG Xiaohan, LIU Wenhao, CHANG Xinyi, GUO Chengyin, WANG Zhen. Asymmetric deep online hashing[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023170

非对称深度在线哈希

doi: 10.12178/1001-0548.2023170
基金项目: 国家自然科学基金(61841602);山东省自然科学基金(ZR2020QF069, ZR2021MF017)
详细信息
    作者简介:

    吴楠楠,主要从事计算机视觉方面的研究

    通讯作者: 通信作者E-mail:wzh@sdut.edu.cn
  • 中图分类号: TP391.4

Asymmetric deep online hashing

  • 摘要: 海量图像以流数据的形式实时涌入网络,使得在线图像检索需求越来越迫切。为了保证在线图像检索性能,人们利用在线哈希算法实时更新哈希函数,并重新学习新、旧数据集的哈希码。然而,随着旧数据集的日益积累,在线更新旧数据集的哈希码会严重影响在线检索效率。为此,创新性提出非对称深度在线哈希(Asymmetric Deep Online Hashing, ADOH),以非对称的方式深度学习在线哈希网络,并且仅生成新数据集的哈希码,无需更新旧数据集的哈希码,能够有效地提升在线检索效率。ADOH算法通过最小化哈希码内积与相似度矩阵之间的差异,保持样本对之间的语义相似性关系。另外,ADOH算法建立分类损失项和标签嵌入模块学习样本的语义信息,使生成的哈希码更具备语义鉴别性。在3个广泛使用的数据集cifar-10、mnist和Places205上设置在线近邻检索对比实验,结果表明ADOH算法的在线近邻检索性能优于目前8种较先进的在线哈希算法。
  • 图  1  非对称深度在线哈希框架图

    图  2  样本之间汉明距离示意图

    图  3  cifar-10数据集上不同长度哈希码的Precision@K结果对比

    图  4  mnist数据集上不同长度哈希码的Precision@K结果对比

    图  5  Places205数据集上不同长度哈希码的Precision@K结果对比

    图  6  $\alpha $值的实验结果

    图  7  $\mu $的实验结果

    图  8  $\gamma $的实验结果

    图  9  $\delta $的实验结果

    图  10  $\eta $的实验结果

    表  1  符号表示及含义

    符号 含义
    $X$ 图像数据集$X = {\{ X_s^t,X_e^t\} ^n}$中包含n个样本
    $ L $ $ L = \{ L_s^t,L_e^t\} \in {\{ 1,0\} ^{c \times n}} $表示数据集X对应的标签矩阵
    $ X_s^t $ $ X_s^t = {\{ x_{s1}^t,x_{s2}^t, \cdots ,x_{s{m_t}}^t\} ^{{m_t}}} $表示第t批次新数据集
    $ L_s^t $ $ L_s^t = \{ l_{s1}^t,l_{s2}^t, \cdots ,l_{s{m_t}}^t\} \in {\{ 1,0\} ^{c \times {m_t}}} $表示第t批次$ X_s^t $对应的标签矩阵
    $B_s^t$ $B_s^t$$ = \{ b_{s1}^t,b_{s2}^t, \cdots ,b_{s{m_t}}^t\} \in {\{ - 1,1\} ^{k \times {m_t}}}$表示第t批次$ X_s^t $待学习的
    哈希码
    $X_e^t$ $X_e^t = {\{ x_{e1}^t,x_{e2}^t, \cdots ,x_{e(n - {m_t})}^t\} ^{n - {m_r}}}$表示第t批次旧数据集
    $L_e^t$ $L_e^t$$ = \{ l_{e1}^t,l_{e2}^t, \cdots ,l_{e(n - {m_t})}^t\} \in {\{ 1,0\} ^{c \times (n - {m_t})}}$表示第t批次$X_e^t$对应的
    标签矩阵
    $B_e^t$ $B_e^t$$ = \{ b_{e1}^t,b_{e2}^t, \cdots ,b_{e(n - {m_t})}^t\} \in {\{ - 1,1\} ^{k \times (n - {m_t})}}$表示第t批次$X_e^t$对应的
    哈希码
    $X_q^t$ $X_q^t$$ = {\{ x_{q1}^t,x_{q2}^t, \cdots .,x_{qd}^t\} ^d} \subset {\{ X_s^t,X_e^t\} ^n}$表示新、旧数据集中随机选取样本得到采样数据集
    $L_q^t$ $L_q^t = \{ l_{q1}^t,l_{q2}^t, \cdots ,l_{qd}^t\} \in {\{ 1,0\} ^{c \times d}} \subset {\{ L_s^t,L_e^t\} ^n}$表示$X_q^t$对应的标签矩阵
    $B_q^t$ $B_q^t = \{ b_{q1}^t,b_{q2}^t, \cdots ,b_{qd}^t\} \in {\{ - 1,1\} ^{k \times d}}$表示$X_q^t$对应的哈希码
    n 数据集样本数目
    $ {m_t} $ 新数据集样本数目
    d 采样数据集样本数目
    k 哈希码的长度
    c 样本类别数目
    下载: 导出CSV

    表  2  cifar-10数据集上不同长度哈希码的mAP和Precision@H2结果对比

    算法 mAP Precision@H2
    16 bits 32 bits 48 bits 64 bits 128 bits 16 bits 32 bits 48 bits 64 bits 128 bits
    OKH 0.063 0.166 0.298 0.330 0.356 0.100 0.184 0.433 0.334 0.101
    AdaptHash 0.255 0.216 0.196 0.198 0.219 0.270 0.341 0.388 0.395 0.322
    OSH 0.124 0.116 0.122 0.131 0.135 0.581 0.184 0.100 0.082 0.069
    MIHash 0.638 0.630 0.614 0.601 0.563 0.605 0.573 0.649 0.600 0.496
    BSODH 0.640 0.690 0.675 0.693 0.699 0.642 0.690 0.687 0.672 0.542
    HMOH 0.710 0.718 0.721 0.732 0.735 0.736 0.741 0.704 0.715 0.722
    HCOH 0.736 0.732 0.717 0.726 0.734 0.728 0.734 0.695 0.607 0.497
    FCOH 0.674 0.702 0.711 0.739 0.742 0.738 0.743 0.711 0.648 0.618
    ADOH 0.886 0.894 0.893 0.892 0.887 0.830 0.801 0.789 0.772 0.747
    下载: 导出CSV

    表  3  mnist数据集上不同长度哈希码的mAP和Precision@H2结果对比

    算法 mAP Precision@H2
    16 bits 32 bits 48 bits 64 bits 128 bits 16 bits 32 bits 48 bits 64 bits 128 bits
    OKH 0.100 0.180 0.302 0.333 0.398 0.100 0.394 0.660 0.698 0.139
    AdaptHash 0.194 0.224 0.205 0.259 0.223 0.215 0.289 0.303 0.259 0.375
    OSH 0.143 0.133 0.129 0.163 0.167 0.134 0.131 0.113 0.119 0.042
    MIHash 0.630 0.710 0.688 0.733 0.724 0.698 0.794 0.754 0.712 0.421
    BSODH 0.659 0.710 0.723 0.739 0.739 0.694 0.795 0.785 0.723 0.532
    HMOH 0.702 0.707 0.730 0.713 0.702 0.769 0.807 0.803 0.818 0.792
    HCOH 0.699 0.752 0.749 0.771 0.786 0.785 0.836 0.790 0.630 0.571
    FCOH 0.725 0.786 0.789 0.784 0.801 0.817 0.849 0.814 0.817 0.620
    ADOH 0.984 0.985 0.986 0.987 0.984 0.983 0.976 0.966 0.955 0.954
    下载: 导出CSV

    表  4  Places205数据集上不同长度哈希码的mAP和Precision@H2结果对比

    算法 mAP Precision@H2
    16 bits 32 bits 48 bits 64 bits 128 bits 16 bits 32 bits 48 bits 64 bits 128 bits
    OKH 0.061 0.198 0.265 0.287 0.298 0.086 0.210 0.278 0.156 0.075
    AdaptHash 0.238 0.308 0.318 0.323 0.327 0.247 0.313 0.347 0.295 0.221
    OSH 0.041 0.117 0.215 0.248 0.256 0.127 0.152 0.205 0.172 0.159
    MIHash 0.325 0.376 0.433 0.485 0.498 0.351 0.371 0.416 0.308 0.293
    BSODH 0.431 0.465 0.480 0.531 0.575 0.447 0.478 0.492 0.455 0.384
    HMOH 0.429 0.488 0.492 0.546 0.591 0.405 0.477 0.481 0.502 0.491
    HCOH 0.446 0.495 0.525 0.554 0.602 0.421 0.514 0.512 0.464 0.438
    FCOH 0.467 0.507 0.574 0.587 0.605 0.451 0.526 0.588 0.557 0.479
    ADOH 0.512 0.563 0.631 0.633 0.636 0.519 0.568 0.624 0.613 0.551
    下载: 导出CSV
  • [1] FANG Y Z, ZHANG H X, LIU L. Label projection online hashing for balanced similarity[J]. Journal of Visual Communication and Image Representation, 2021, 80: 103314. doi:  10.1016/j.jvcir.2021.103314
    [2] WANG J, KUMAR S, CHANG S F. Semi-supervised hashing for scalable image retrieval[C]//Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2010: 3424-3431.
    [3] SHEN F M, SHEN C H, LIU W, et al. Supervised discrete hashing[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2015: 37-45.
    [4] GUI J, LIU T L, SUN Z N, et al. Fast supervised discrete hashing[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 40(2): 490-496. doi:  10.1109/TPAMI.2017.2678475
    [5] GUI J, LI P. R2 SDH: Robust rotated supervised discrete hashing[C]//Proceedings of the Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. New York: ACM, 2018: 1485-1493.
    [6] ZHU X F, HUANG Z, SHEN H T, et al. Linear cross-modal hashing for efficient multimedia search[C]//Proceedings of the 21st ACM International Conference on Multimedia. New York: ACM, 2013: 143-152.
    [7] CAKIR F, BARGAL S A, SCLAROFF S. Online supervised hashing[J]. Computer Vision and Image Understanding, 2017, 156: 162-173. doi:  10.1016/j.cviu.2016.10.009
    [8] LIN M B, JI R R, LIU H, et al. Supervised online hashing via hadamard codebook learning[C]//Proceedings of the 26th ACM International Conference on Multimedia. New York: ACM, 2018: 1635-1643.
    [9] LIN M B, JI R R, LIU H, et al. Hadamard matrix guided online hashing[J]. International Journal of Computer Vision, 2020, 128(8): 2279-2306.
    [10] LIN M B, JI R R, LIU H, et al. Towards optimal discrete online hashing with balanced similarity[C]//Proceedings of the AAAI Conference on Artificial Intelligence. Honolulu AAAI 2019: 8722-8729.
    [11] FANG Y Z, LIU L. Scalable supervised online hashing for image retrieval[J]. Journal of Computational Design and Engineering, 2021, 8(5): 1391-1406. doi:  10.1093/jcde/qwab052
    [12] LIN M B, JI R R, SUN X S, et al. Fast class-wise updating for online hashing[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2022, 44(5): 2453-2467.
    [13] KRIZHEVSKY A, SUTSKEVER I, HINTON G E. ImageNet classification with deep convolutional neural networks[J]. Communications of the ACM, 2017, 60(6): 84-90. doi:  10.1145/3065386
    [14] SHEN F M, GAO X, LIU L, et al. Deep asymmetric pairwise hashing[C]//Proceedings of the 25th ACM international conference on Multimedia. New York: ACM, 2017: 1522-1530.
    [15] LI Q, SUN Z N, HE R, et al. Deep supervised discrete hashing[C]//Proceedings of the 31st International Conference on Neural Information Processing Systems. New York: ACM, 2017: 2479-2488.
    [16] NGUYEN V A, DO M N. Deep learning based supervised hashing for efficient image retrieval[C]//Proceedings of the IEEE International Conference on Multimedia and Expo. New York: IEEE, 2016: 1-6.
    [17] JIANG Q Y, LI W J. Asymmetric deep supervised hashing[C]//Proceedings of the AAAI Conference on Artificial Intelligence. New Orleans: AAAI 2018: 3342-3349 .
    [18] ZHANG M, CHENG C, LONG X Z. Deep semantic asymmetric hashing[C]//Proceedings of the International Conference on Artificial Neural Networks. Cham: Springer, 2019: 363-374.
    [19] SONG W W, GAO Z, DIAN R W, et al. Asymmetric hash code learning for remote sensing image retrieval[J]. IEEE Transactions on Geoscience and Remote Sensing, 2022, 60: 1-14.
    [20] LENG C, WU J X, CHENG J, et al. Online sketching hashing[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2015: 2503-2511.
    [21] CHEN X X, KING I, LYU M R. FROSH: FasteR online sketching hashing[C]//Proceedings of the Thirty-Third Conference on Uncertainty in Artificial Intelligence. Sdney: AVAI, 2017.
    [22] HUANG L K, YANG Q, ZHENG W S. Online hashing[C]//Proceedings of the 23rd International Joint Conference on Artificial Intelligence. Beijing: IJCAI, 2013: 1422-1428.
    [23] CAKIR F, SCLAROFF S. Adaptive hashing for fast similarity search[C]//Proceedings of the IEEE International Conference on Computer Vision. New York: IEEE, 2015: 1044-1052.
    [24] CAKIR F, HE K, BARGAL S A, et al. MIHash: Online hashing with mutual information[C]// Proceedings of the IEEE International Conference on Computer Vision. New York: IEEE, 2017: 437-445.
    [25] KITTLER J, GHADERI R, WINDEATT T, et al. Face verification using error correcting output codes[C]// Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2001: 755-760.
    [26] WENG Z Y, ZHU Y S. Online hashing with efficient updating of binary codes [C]// Proceedings of the Thirty-Fourth Conference on Artificial Intelligence. New York: AAAI, 2020: 12354-12361.
    [27] WU X M, LUO X, ZHAN Y W, et al. Online enhanced semantic hashing: towards effective and efficient retrieval for streaming multi-modal data[C]//Proceedings of the AAAI Conference on Artificial Intelligence. Palo Alto: AAAI, 2022: 4263-4271.
    [28] WANG Y X, LUO X, XU X S. Label embedding online hashing for cross-modal retrieval[C]//Proceedings of the 28th ACM International Conference on Multimedia. New York: ACM, 2020: 871-879.
    [29] WU D Y, DAI Q, LIU J, et al. Deep incremental hashing network for efficient image retrieval[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. New York: IEEE, 2019: 9069-9077.
    [30] KRIZHEVSKY A, HINTON G. Learning multiple layers of features from tiny images[J]. Handbook of Systemic Autoimmune Diseases, 2009.
    [31] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278-2324. doi:  10.1109/5.726791
    [32] ZHOU B L, LAPEDRIZA A, XIAO J X, et al. Learning deep features for scene recognition using places database[J]. Advances in Neural Information Processing Systems, 2014, 1: 487-495.
  • [1] 章坚武, 戚可寒, 章谦骅, 孙玲芬.  车辆边缘计算中基于深度学习的任务判别卸载 . 电子科技大学学报, doi: 10.12178/1001-0548.2022376
    [2] 郭峰, 陈中舒, 代久双, 吴云峰, 刘军, 张昌华.  基于动态先验特征的包覆药多类型外观缺陷深度检测框架 . 电子科技大学学报, doi: 10.12178/1001-0548.2022326
    [3] 蒲晓蓉, 陈佳俊, 高励, 赵越, 罗纪翔, 刘军池, 任亚洲.  MRI图像降噪技术综述 . 电子科技大学学报, doi: 10.12178/1001-0548.2022248
    [4] 郭磊, 林啸宇, 王勇, 陈正武, 常伟.  基于深度学习的直升机旋翼声信号检测与识别一体化算法 . 电子科技大学学报, doi: 10.12178/1001-0548.2023108
    [5] 李林, 范明钰, 郝江涛.  基于对抗攻击的图像隐写策略搜索 . 电子科技大学学报, doi: 10.12178/1001-0548.2021335
    [6] 罗欣, 陈艳阳, 耿昊天, 许文波, 张民.  基于深度强化学习的文本实体关系抽取方法 . 电子科技大学学报, doi: 10.12178/1001-0548.2021162
    [7] 王瑞, 崔佳梅, 张越, 郑文.  基于图网络的集群运动预测研究 . 电子科技大学学报, doi: 10.12178/1001-0548.2021107
    [8] 何凯, 刘坤, 沈成南, 李宸.  基于相似图像配准的图像修复算法 . 电子科技大学学报, doi: 10.12178/1001-0548.2020327
    [9] 董帅, 李文生, 张文强, 邹昆.  基于多视图循环神经网络的三维物体识别 . 电子科技大学学报, doi: 10.12178/1001-0548.2019017
    [10] 杨旺功, 淮永建, 张福泉.  基于Gabor及深度神经网络的葡萄种子分类 . 电子科技大学学报, doi: 10.12178/1001-0548.2019164
    [11] 曹占涛, 杨国武, 陈琴, 吴尽昭, 李晓瑜.  基于修正标签分布的乳腺超声图像分类 . 电子科技大学学报, doi: 10.12178/1001-0548.2020001
    [12] 吴涢晖, 赵子天, 陈晓雷, 邹士亚.  大气低频声信号识别深度学习方法研究 . 电子科技大学学报, doi: 10.12178/1001-0548.2019297
    [13] 邓钰, 雷航, 李晓瑜, 林奕欧.  用于目标情感分类的多跳注意力深度模型 . 电子科技大学学报, doi: 10.3969/j.issn.1001-0548.2019.05.016
    [14] 邵杰, 黄茜, 曹坤涛.  基于深度学习的人体解析研究综述 . 电子科技大学学报, doi: 10.3969/j.issn.1001-0548.2019.05.001
    [15] 李彦冬, 雷航, 郝宗波, 唐雪飞.  基于多尺度显著区域特征学习的场景识别 . 电子科技大学学报, doi: 10.3969/j.issn.1001-0548.2017.03.020
    [16] 林奕欧, 雷航, 李晓瑜, 吴佳.  自然语言处理中的深度学习:方法及应用 . 电子科技大学学报, doi: 10.3969/j.issn.1001-0548.2017.06.021
    [17] 陈姝, 梁文章.  结合特征点匹配及深度网络检测的运动跟踪 . 电子科技大学学报,
    [18] 鲁珂, 赵继东, 吴跃.  新型的图像检索最优实验设计算法 . 电子科技大学学报, doi: 10.3969/j.issn.1001-0548.2012.02.019
    [19] 赵继东, 鲁珂, 吴跃.  保局投影算法的优化研究 . 电子科技大学学报,
    [20] 鲁珂, 赵继东, 叶娅兰, 曾家智.  一种用于图像检索的新型半监督学习算法 . 电子科技大学学报,
  • 加载中
图(10) / 表(4)
计量
  • 文章访问数:  364
  • HTML全文浏览量:  143
  • PDF下载量:  7
  • 被引次数: 0
出版历程
  • 收稿日期:  2023-06-14
  • 修回日期:  2023-12-12
  • 网络出版日期:  2024-06-27

非对称深度在线哈希

doi: 10.12178/1001-0548.2023170
    基金项目:  国家自然科学基金(61841602);山东省自然科学基金(ZR2020QF069, ZR2021MF017)
    作者简介:

    吴楠楠,主要从事计算机视觉方面的研究

    通讯作者: 通信作者E-mail:wzh@sdut.edu.cn
  • 中图分类号: TP391.4

摘要: 海量图像以流数据的形式实时涌入网络,使得在线图像检索需求越来越迫切。为了保证在线图像检索性能,人们利用在线哈希算法实时更新哈希函数,并重新学习新、旧数据集的哈希码。然而,随着旧数据集的日益积累,在线更新旧数据集的哈希码会严重影响在线检索效率。为此,创新性提出非对称深度在线哈希(Asymmetric Deep Online Hashing, ADOH),以非对称的方式深度学习在线哈希网络,并且仅生成新数据集的哈希码,无需更新旧数据集的哈希码,能够有效地提升在线检索效率。ADOH算法通过最小化哈希码内积与相似度矩阵之间的差异,保持样本对之间的语义相似性关系。另外,ADOH算法建立分类损失项和标签嵌入模块学习样本的语义信息,使生成的哈希码更具备语义鉴别性。在3个广泛使用的数据集cifar-10、mnist和Places205上设置在线近邻检索对比实验,结果表明ADOH算法的在线近邻检索性能优于目前8种较先进的在线哈希算法。

English Abstract

吴楠楠, 杨宵晗, 刘文皓, 常心怡, 郭呈银, 王振. 非对称深度在线哈希[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023170
引用本文: 吴楠楠, 杨宵晗, 刘文皓, 常心怡, 郭呈银, 王振. 非对称深度在线哈希[J]. 电子科技大学学报. doi: 10.12178/1001-0548.2023170
WU Nannan, YANG Xiaohan, LIU Wenhao, CHANG Xinyi, GUO Chengyin, WANG Zhen. Asymmetric deep online hashing[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023170
Citation: WU Nannan, YANG Xiaohan, LIU Wenhao, CHANG Xinyi, GUO Chengyin, WANG Zhen. Asymmetric deep online hashing[J]. Journal of University of Electronic Science and Technology of China. doi: 10.12178/1001-0548.2023170
  • 随着信息技术的不断发展,智能通讯设备的便携化,海量多媒体数据,如音频、视频、图像等,以流数据的形式不断地涌入网络。面对实时增长的图像数据,如何快速响应用户的检索请求,是当前在线图像检索任务面临的一大挑战[1]。基于哈希的近似最近邻检索技术[2-6]将高维浮点数据映射为紧凑二进制编码,并在汉明空间内保持样本之间的原始相似性关系,从而能根据样本之间的汉明距离关系快速检索近邻样本。凭借计算复杂度低、占用存储少的优点,基于哈希的近似最近邻检索技术已被广泛用于大规模图像检索任务。

    对于在线图像检索实际网络场景而言,图像数据并不是一次性生成的,而是以流数据的形式源源不断地涌入。随着时间的推移,不断出现新数据,使得数据库实时发生变化,无法得到稳定的数据库样本集。传统哈希算法离线学习哈希函数[1],若有新数据涌入,需要根据所有新、旧数据重新训练哈希函数,时间复杂度较高,无法适用于流数据的在线近邻检索任务。相对而言,在线哈希算法仅根据新数据流更新哈希函数,能够有效降低在线近邻检索复杂度。

    近年来,为了获得较优的在线近邻检索性能,越来越多的在线哈希算法被相继提出。在线监督哈希[7](Online Supervised Hashing, OSH)、基于哈达玛码本在线哈希[8](Hadamard Codebook based Online Hashing, HCOH)和基于哈达玛矩阵在线哈希[9](Hadamard Matrix Guided Online Hashing, HMOH)提出两步学习策略,先为数据分配合适的纠错输出编码(Error Correcting Output Codes, ECOC),再学习哈希函数,从而增强哈希函数对未知标签数据的适应能力。平衡相似性在线离散哈希[10](Balanced Similarity for Online Discrete Hashing, BSODH)、基于可扩展监督在线哈希[11](Scalable Supervised Online Hashing for Image Retrieval,SSOH)和类快速在线哈希[12](Fast Class-wise Updating for Online Hashing, FCOH)通过最小化哈希码内积与相似度矩阵之间的距离,建立新、旧数据之间的联系,使新、旧数据对在语义空间和原始特征空间具有相同的相似性关系。综上,在线哈希算法在适应未知标签数据、相似性保持等方面取得了巨大进展。然而,面向实际网络图像在线近邻检索任务,现有在线哈希算法仍存在以下问题:1)在线哈希算法根据新数据集更新哈希函数后,需要同时更新旧数据集的哈希码,更新复杂度较高;2)仅关注保持新、旧数据对之间的相似性关系,无法捕捉单一数据点的语义信息;3)浮点特征生成和哈希函数训练过程相互独立,二者之间的适应性较差。

    为了解决上述问题,本文提出非对称深度在线哈希(Asymmetric Deep Online Hashing, ADOH)。

    • 哈希算法能够快速响应大规模图像检索任务,引起越来越多研究学者的关注。根据哈希函数的训练阶段,可将现有哈希算法大致分为离线深度哈希算法和在线哈希算法。

      离线深度哈希算法通常建立端到端的学习框架,同时生成浮点特征和紧凑二值编码,并可进一步分为对称深度哈希算法[14-16]和非对称深度哈希算法[17-19]。深度成对监督哈希[14](Deep Pairwise Supervised Hashing, DPSH)提出浮点特征和哈希码的统一学习框架,避免浮点特征与哈希码相互独立的问题。深度监督离散哈希[15](Deep Discrete Supervised Hashing, DDSH)将成对标签作为监督信息,离散监督训练深度哈希网络。深度学习监督哈希[16](Deep Learning based Supervised Hashing , DLSH)集成深度网络模块和哈希码学习模块,直接生成哈希码,可有效减少松弛损失。对称深度哈希算法利用全部数据集训练深度哈希网络,随着数据集的不断积累,将导致深度哈希网络的训练时间难以接受。为了解决上述问题,非对称深度哈希算法[17]提出只根据查询样本更新深度哈希网络,有效降低训练时长。深度语义非对称哈希[18](Deep Semantic Asymmetric Hashing, DSAH)提出充分挖掘标签的语义信息,更准确地表示样本之间的相似性关系,从而生成更具鉴别性二进制编码。基于非对称哈希学习的遥感图像检索算法[19](Asymmetric Hash Code Learning for Remote Sensing Image Retrieval, AHCL)在非对称学习框架中引入标签预测,进一步提升深度浮点特征的性能。非对称深度哈希算法以非对称的方式处理查询样本和数据库样本,提高了时间效率。

      在线哈希算法根据新数据流实时学习哈希网络并更新相关哈希码,适用于有新数据流实时涌入的在线检索任务。根据训练过程中是否引入监督信息,可将在线哈希算法大致分为无监督在线哈希算法和监督在线哈希算法。在线草图哈希[20](Sketching Hashing, SketchHash)和快速在线草图哈希[21](FasteR Online Sketching Hashing, FROSH)均为无监督在线哈希算法,其利用数据草图矩阵压缩存储数据,提高存储空间利用率。监督在线哈希算法利用语义标签作为监督信息,挖掘样本之间的语义关系,提高检索精度。在线核哈希[22](Online Kernel Hashing, OKH)和自适应哈希[23] (Adaptive Hashing, AdaptHash)以成对数据标签监督训练哈希函数,能够保留新、旧数据集的主要信息。互信息在线哈希[24](Online Hashing with Mutual Information, MIHash)利用邻居与非邻居之间的互信息,可减少汉明空间内邻居邻域的模糊性。在线监督哈希[7](Online Supervised Hashing, OSH)通过纠错输出码[25](Error Correcting Output Codes, ECOC)监督训练哈希函数,使新增类别的数据适应于在线哈希模型。基于哈达玛矩阵在线哈希[9](Hadamard Matrix Guided Online Hashing, HMOH)和基于哈达玛码本在线哈希[8](Hadamard Codebook based Online Hashing, HCOH)将哈达玛矩阵作为纠错输出码,并为数据集离线分配哈达玛编码,能够提高在线学习的鲁棒性。平衡相似性在线离散哈希[10](Balanced Similarity for Online Discrete Hashing, BSODH)通过非对称图构建新、旧数据集之间的相似性关系,并离散优化目标函数,从而有效提升优化效率。类智能快速在线哈希[12](Fast Class-wise Updating for Online Hashing, FCOH)提出以类别的方式快速学习哈希函数,能够解决训练效率低和自适应差的问题。高效更新哈希码在线哈希[26](Online Hashing with Efficient Updating of Binary Codes, OHWEU)通过投影函数在线生成流数据的哈希码,其能固定哈希函数,提高哈希码的生成效率。

      在线哈希算法注重效率,若将深度神经网络应用于在线哈希算法,需要特别关注提高深度哈希网络的训练效率。受非对称深度哈希算法的启发,本文提出一种高效的深度在线哈希算法ADOH,设计了非对称学习方式,只根据采样数据集训练深度哈希网络,并直接通过最小化目标损失函数计算新数据的哈希码,避免了旧数据集哈希码的重复更新问题,从而有效提升了深度在线哈希算法的检索效率。

    • ADOH算法主要设计了3个过程:1)根据采样数据集训练非对称深度在线哈希网络;2)利用标签嵌入模块学习新、旧数据集样本的语义信息;3)通过最小化目标损失函数,直接计算新数据集对应的哈希码。

      ADOH算法流程如图1所示,图像数据集被划分为旧、新两种数据集,并分别随机取样得到采样数据集。首先,对于旧数据集以及采样数据集,ADOH算法建立了传统深度哈希网络,其利用AlexNet[13]网络生成浮点特征,并在其之后建立全连接层作为哈希函数层,用于学习数据集的哈希码。其次,对于采样数据集,ADOH算法建立分类损失项,在深度哈希网络层之后建立了一层softmax激活函数全连接层,作为语义网络层。其可生成样本的语义标签概率分布,并通过最小化交叉熵损失,确保语义一致性。进一步,ADOH算法建立了汉明语义一致性模块,要求最小化新、旧数据集与采样数据集的哈希码内积与语义标签相似度矩阵之间的距离,使数据集在汉明空间和语义空间内具有相同的相似性关系。再者,对于新、旧数据集,ADOH算法通过标签嵌入模块,将新、旧数据集标签嵌入待学习的哈希码中,确保同类别数据的哈希码趋于一致。最后,对于新数据集,ADOH算法直接通过最小化目标函数,生成新数据集的哈希码。

      图  1  非对称深度在线哈希框架图

      为了方便之后的符号描述,在表1中整理了本文涉及的符号表示及含义。

      表 1  符号表示及含义

      符号 含义
      $X$ 图像数据集$X = {\{ X_s^t,X_e^t\} ^n}$中包含n个样本
      $ L $ $ L = \{ L_s^t,L_e^t\} \in {\{ 1,0\} ^{c \times n}} $表示数据集X对应的标签矩阵
      $ X_s^t $ $ X_s^t = {\{ x_{s1}^t,x_{s2}^t, \cdots ,x_{s{m_t}}^t\} ^{{m_t}}} $表示第t批次新数据集
      $ L_s^t $ $ L_s^t = \{ l_{s1}^t,l_{s2}^t, \cdots ,l_{s{m_t}}^t\} \in {\{ 1,0\} ^{c \times {m_t}}} $表示第t批次$ X_s^t $对应的标签矩阵
      $B_s^t$ $B_s^t$$ = \{ b_{s1}^t,b_{s2}^t, \cdots ,b_{s{m_t}}^t\} \in {\{ - 1,1\} ^{k \times {m_t}}}$表示第t批次$ X_s^t $待学习的
      哈希码
      $X_e^t$ $X_e^t = {\{ x_{e1}^t,x_{e2}^t, \cdots ,x_{e(n - {m_t})}^t\} ^{n - {m_r}}}$表示第t批次旧数据集
      $L_e^t$ $L_e^t$$ = \{ l_{e1}^t,l_{e2}^t, \cdots ,l_{e(n - {m_t})}^t\} \in {\{ 1,0\} ^{c \times (n - {m_t})}}$表示第t批次$X_e^t$对应的
      标签矩阵
      $B_e^t$ $B_e^t$$ = \{ b_{e1}^t,b_{e2}^t, \cdots ,b_{e(n - {m_t})}^t\} \in {\{ - 1,1\} ^{k \times (n - {m_t})}}$表示第t批次$X_e^t$对应的
      哈希码
      $X_q^t$ $X_q^t$$ = {\{ x_{q1}^t,x_{q2}^t, \cdots .,x_{qd}^t\} ^d} \subset {\{ X_s^t,X_e^t\} ^n}$表示新、旧数据集中随机选取样本得到采样数据集
      $L_q^t$ $L_q^t = \{ l_{q1}^t,l_{q2}^t, \cdots ,l_{qd}^t\} \in {\{ 1,0\} ^{c \times d}} \subset {\{ L_s^t,L_e^t\} ^n}$表示$X_q^t$对应的标签矩阵
      $B_q^t$ $B_q^t = \{ b_{q1}^t,b_{q2}^t, \cdots ,b_{qd}^t\} \in {\{ - 1,1\} ^{k \times d}}$表示$X_q^t$对应的哈希码
      n 数据集样本数目
      $ {m_t} $ 新数据集样本数目
      d 采样数据集样本数目
      k 哈希码的长度
      c 样本类别数目
    • ADOH利用AlexNet网络生成采样数据集的浮点高维特征,并在之后将全连接层作为哈希层,将高维浮点特征映射为二值编码,其形式化定义如式(1)所示:

      $$ B_q^t = B_{qj}^t = sign(f(x_{qj}^t;\theta )),j = 1,2,\cdots d $$ (1)

      式中,$\theta $为网络的参数,$f(.)$为哈希层的输出。

      为了保证所生成的二值编码的近邻检索性能较优,ADOH算法设计了汉明语义一致性模块、单样本语义一致性模块、编码一致模块和编码松弛模块,下面将分别阐述。

      1)汉明语义一致性模块。为了在汉明空间内得到较优的近邻检索性能,应在汉明空间内保持样本对之间的原语义相似性关系。如果两个样本在原语义空间中相似,那么它们在汉明空间内应具有相似的哈希码,反之,亦然。为此,ADOH算法建立了汉明语义一致性损失函数,通过最小化哈希码内积与相似度矩阵之间的差异[10, 27-28],保持采样数据集与新、旧数据集在语义空间和汉明空间内具有一致的相似性关系,其形式化定义如式(2)所示:

      $$ \begin{split} & \mathop {\min }\limits_{B_s^t,\theta } \left\| {B{{_e^{tT}}}sign(f(X_q^t;\theta )) - kS_{eq}^t} \right\|_F^2 \\ & + \left\| {B{{_s^{tT}}}sign(f(X_q^t;\theta )) - kS_{sq}^t} \right\|_F^2 \end{split} $$ (2)

      式中,$ \left\| . \right\|_F^2 $为Frobenius范数;$S_{sq}^t$表示新数据集和采样数据集样本之间的语义相似性矩阵;$S_{eq}^t$表示旧数据集和采样数据集样本之间的语义相似性矩阵。语义相似性矩阵可根据样本对的标签生成。若$x_{si}^t$$x_{qj}^t$的标签$l_{si}^t$$l_{qj}^t$相同,则$S_{{s_i}{q_j}}^t = 1$,反之,$S_{{s_i}{q_j}}^t = - 1$

      2)单样本语义一致性模块。ADOH算法为了学习采样数据集单个样本哈希码的语义信息,在哈希网络层后建立了一个全连接语义网络层,将softmax作为激活函数,计算样本哈希码的语义标签概率分布,其定义如式(3)所示:

      $$ g_{qj}^t = {{sofmax}}({{W}}_s^tsign(f(X_{qj}^t;\theta )){{ + V}}_s^t) $$ (3)

      式中,$ W_s^t \in {R^{c \times k}} $表示第t批次语义层的权重矩阵;$V_s^t \in {R^{c \times 1}}$表示第t批次语义层的偏差向量。

      进一步,ADOH算法定义了分类损失项,通过最小化交叉熵损失,使所生成的样本哈希码的语义标签与样本真实标签保持一致,其形式化定义如式(4)所示:

      $$ \mathop {\min }\limits_{B_s^t,\Theta } - \delta (\sum\limits_{j \in (\tau \cup \pi )} {l_{qj}^t\log g_{qj}^t} ) $$ (4)

      式中,$\Theta = \{ \theta ,W_s^t,V_s^t\} $$\delta $为平衡语义损失的超参数。

      3)编码一致模块。为保证同一个样本在采样数据集和新、旧数据集中的编码相同,ADOH算法要求最小化采样数据集和新、旧数据集哈希码之间的误差,如式(5)所示:

      $$ \begin{split} & \mathop {\min }\limits_{B_s^t,\theta } \mu (\sum\limits_{a \in \tau } {{{(sign(f(\widetilde {x_{qa}^t};\theta )) - \widetilde {B_{sa}^t})}^2}} \\ & + \sum\limits_{a \in \pi } {{{(sign(f(\overline {x_{qa}^t} ;\theta )) - \overline {B_{ea}^t} )}^2}} ) \end{split} $$ (5)

      式中,μ为平衡参数;$\phi = \{ 1,2,3,\cdots,{m_t}\} $$\varsigma = \{ 1,2, 3,\cdots,n - {m_t}\} $分别为新、旧数据集的样本索引;$ \tau = \{ {i_1},{i_2},\cdots,{i_{{d^{'}}}}\} \in \phi $$\pi = \{ {j_1},{j_2},\cdots,{j_{{d^*}}}\} \in \varsigma $分别为采样数据集中新、旧样本的索引,${d^{'}} + {d^*} = d$。若$a \in \tau $$B_{qa}^t = sign(f(\widetilde {x_{qa}^t};\theta ))$表示采样数据$\widetilde {x_{qa}^t}$通过深度哈希网络生成的哈希码,$\widetilde {B_{sa}^t}$表示新数据$\widetilde {x_{sa}^t}$待学习的哈希码。若$a \in \pi $时,$\overline {B_{qa}^t} = sign(f(\overline {x_{qa}^t} ;\theta ))$表示采样数据$\overline {x_{qa}^t} $通过深度哈希网络生成的哈希码,$ \overline {{{B}}_{{{ea}}}^{{t}}} $表示旧数据$\overline {{{x}}_{{{ea}}}^{{t}}} $的哈希码。

      4)编码松弛模块。由于式(2)、式(3)和式(5)中包含sign(.)函数,而sign(.)函数会导致优化过程中存在NP-hard问题。为此,ADOH算法对编码过程进行连续松弛处理,利用tanh(.)函数代替sign(.)函数。结合式(2)、式(4)和式(5),非对称深度在线哈希网络的目标函数定义如式(6)所示:

      $$ \begin{split} & {{{L}}_1} = \mathop {\min }\limits_{B_s^t,\Theta } \left\| {B{{_e^{tT}}}{{tanh}}(f(X_q^t;\theta )) - kS_{eq}^t} \right\|_F^2 \\ & + \left\| {B{{_s^{tT}}}{{tanh}}(f(X_q^t;\theta )) - kS_{sq}^t} \right\|_F^2 \\ & + \mu (\sum\limits_{a \in \tau } {{{({{tanh}}(f(\widetilde {x_{qa}^t};\theta )) - \widetilde {B_{sa}^t})}^2}} \end{split} $$
      $$ \begin{split} & + \sum\limits_{a \in \pi } {{{{{(tanh}}(f(\overline {x_{qa}^t} ;\theta )) - \overline {B_{ea}^t} )}^2}} ) \\ & - \delta (\sum\limits_{j \in (\tau \cup \pi )} {l_{qj}^t\log g_{qj}^t} ) \\ & + \gamma \left\| {{{tanh}}(f(X_q^t;\theta )){\bf{1}}} \right\|_F^2 \end{split} $$ (6)

      式中,$\left\| {{{tanh}}(f(X_q^t;\theta )){\bf{1}}} \right\|_F^2$为平衡项;$\gamma $为平衡项的超参数;1为全1向量。$\left\| {{{tanh}}(f(X_q^t;\theta )){\bf{1}}} \right\|_F^2$用来平衡深度哈希网络所生成的哈希码“+1”与“−1”之间的数量,使其数量保持相似[29]

    • 在非对称深度在线哈希网络训练阶段,单样本语义一致模块只关注保持采样数据集中少量新、旧数据集的语义信息。为了进一步确保所有新、旧数据集的哈希码能够保持样本自身的语义,ADOH算法建立语义投影损失函数,将新、旧数据集所有样本标签投影到对应的哈希码,要求能够最小化样本哈希码与语义标签投影之间的误差,形式化定义如式(7)所示:

      $$ {{{L}}_2} = \mathop {\min }\limits_{B_s^t,{P^t}} \left\| {B_s^t - {P^t}L_s^t} \right\|_F^2 + \left\| {B_e^t - {P^t}L_e^t} \right\|_F^2 + \eta \left\| {{P^t}} \right\|_F^2 $$ (7)

      式中,${P^t} \in {R^{k \times c}}$为投影矩阵,将语义标签投影为哈希码;$\eta $为平衡参数。

      综上,结合式(6)和式(7),非对称深度在线哈希算法的总目标函数如式(8)所示:

      $$ L = \alpha {{{L}}_1} + {{{L}}_2} $$ (8)

      式中,$\alpha $为平衡参数。

    • ADOH算法采用交替优化策略,迭代更新参数,具体步骤如下:

      1)更新参数$\varTheta $

      更新参数${{\varTheta }} = \left\{ {{\theta},{{W}}_s^t,{{V}}_s^t} \right\}$时,可去掉目标函数L中不含有参数$\varTheta $的项,相应的优化目标函数如式(9)所示:

      $$ \begin{split} & \mathop {\min }\limits_{B_s^t,\Theta } {\sum\limits_{i \in \varsigma } {\sum\limits_{j \in (\tau \cup \pi )} {(B{{_{ei}^{tT}}}{H_j} - kS_{{e_i}{q_j}}^t)} } ^2} \\ & + {\sum\limits_{i \in \phi } {\sum\limits_{j \in (\tau \cup \pi )} {(B_{si}^t{H_j} - kS_{{s_i}{q_j}}^t)} } ^2} \\ & + \mu (\sum\limits_{a \in \tau } {{{(\widetilde H - \widetilde {B_{sa}^t})}^2}} + \sum\limits_{a \in \pi } {{{{\text{(}}\overline H - \overline {B_{ea}^t} )}^2}} ) \\ & - \delta (\sum\limits_{j \in (\tau \cup \pi )} {l_{qj}^t\log g_{qj}^t} ) + \gamma {\sum\limits_{j \in (\tau \cup \pi )} {({H_j}{\bf{1}})} ^2} \end{split} $$ (9)

      式中,${H_j}$$\widetilde H$$\overline H $的具体定义如式(10)、(11)和(12)所示:

      $$ {H_j} = {{tanh}}(f(x_{qj}^t;\theta )) $$ (10)
      $$ \widetilde H = {{tanh}}(f(\widetilde {x_{qa}^t};\theta )){\text{ }}(a \in \tau ) $$ (11)
      $$ \overline H = {{tanh}}(f(\overline {x_{qa}^t} ;\theta )){\text{ }}(a \in \pi ) $$ (12)

      更新$\varTheta $时,固定BstPt,在反向传播过程中,利用梯度下降算法优化参数$\varTheta $,其形式化定义如式(13)所示:

      $$ \begin{split} & 2((({{B}}{_e^{tT}}{{{H}}_j} - k{{S}}_{eq}^t){{B}}_e^t) + (({{B}}{_s^{tT}}{{{H}}_j} - k{{S}}_{sq}^t){{B}}_s^t) \\ & + \mu (\mathop \sum \limits_{a \in {{\tau }}} (\widetilde {{{B}}_{sa}^t} - \widetilde {{{{H}}_j}}) + \mathop \sum \limits_{a \in {{\pi}}} (\overline {{{B}}_{ea}^t} - \overline {{{{H}}_j}} )) + \gamma {{{H}}_j}) \\ & \odot ({\bf{1}} - {{{H}}_j} \times {{{H}}_j}) + \delta ( - {{W}}_s^t(l_{{q_j}}^t - {{g}}_{{q_j}}^t))) \end{split} $$ (13)

      式中,运算符⨀表示两向量之间元素逐位相乘。

      2)更新${{{P}}^t}$

      更新参数${{{P}}^t}$时,固定参数${{\varTheta }}$${{B}}_s^t$,目标函数L去掉无关项后并对${{{P}}^t}$求导,如式(14)所示:

      $$ ({{B}}_e^t{({{L}}_e^t)^T} + {{B}}_s^t{({{L}}_s^t)^T}) \times {({{L}}_s^t{({{L}}_s^t)^T} + {{L}}_e^t{({{L}}_e^t)^T} + \eta {{I}})^{ - 1}} $$ (14)

      式中,${{I}} \in {{{R}}^{c \times c}}$为单位矩阵。

      3)更新${{B}}_s^t$

      更新参数${{B}}_s^t$时,固定参数${{{P}}^t}$${{\varTheta }}$,对目标函数L去掉无关项后,相应目标函数的定义如式(15)所示:

      $$ \begin{split} & \mathop {\min }\limits_{{{B}}_s^t} \left\| {B_s^{tT}{{B}}_q^t - k{{S}}_{sq}^t} \right\|_F^2 + \mu \left\| {V_q^{t'} - \widetilde {{{B}}_s^t}} \right\|_F^2 + \left\| {{{B}}_s^t - {{{P}}^t}{{L}}_s^t} \right\|_F^2 \\ &\qquad\quad = \left\| {B_s^{tT}{{B}}_q^t} \right\|_F^2 - 2ktr({{B}}_s^t{{S}}_{sq}^t{B_q^{tT}}) \\ &\qquad\quad - 2\mu tr(\widetilde {{{B}}_s^t}V_q^{t'T}) - 2tr(B_s^{tT}{{{P}}^t}{{L}}_s^t) \end{split} $$ (15)

      式中,${{B}}_q^t \in {\left\{ { + 1, - 1} \right\}^{k \times d}}$为采样数据集的哈希码;$\widetilde {{{X}}_s^t}$为新数据集的采样样本。${{V}}{_q^{t'}} = \{ {v_i}|i \in {{\tau }}\} \in {\left\{ { + 1, - 1} \right\}^{k \times d'}}$表示$\widetilde {{{X}}_s^t}$非对称深度网络生成的哈希码,$\widetilde {{{B}}_s^t} \in \left\{ + 1, - 1 \right\}^{k \times d'}$表示本阶段$\widetilde {{{X}}_s^t}$待学习的哈希码。$\phi = \left\{ 1,2, \cdots , {m_t} \right\}$为新数据集中的样本索引。${{\tau }} = \left\{ {{i_1},{i_2}, \cdots ,{i_{d'}}} \right\} \in \phi $为新数据集采样样本的索引,${{V}}{_q^{t'}} \subset {{B}}_q^t$tr(.)表示矩阵迹运算。

      在式(15)中,${{V}}{_q^{t'}}$仅为新数据集的采样样本哈希码;${{B}}_s^t$为全部新数据集的哈希码。为了保证${{V}}{_q^{t'}}$${{B}}_s^t$的维度一致,重新定义了${v_i}$,如式(16)所示:

      $$ \overline{{v}_{i}}=\left\{ \begin{array}{l} {v}_{i},i\in \tau \\ 0,其他\end{array} \right. $$ (16)

      $\overline {{{V}}_q^t} $={$ \overline {{{{v}}_{{i}}}} |i \in \phi $}$ \in {\left\{ { + 1, - 1} \right\}^{k \times {m_t}}}$,则式(15)可重新定义为式(17):

      $$ \begin{split} & \mathop {\min}\limits_{{{B}}_s^t} \left\| {{{B}}{{_s^{tT}}}{{B}}_q^t} \right\|_F^2 - 2tr({{B}}{_s^{tT}}(k{{V}}_q^t{{S}}{_{sq}^{tT}} + \mu \overline {{{V}}_q^t} + {{{P}}^t}{{L}}_s^t)) \\ &\qquad\quad = \mathop {\min}\limits_{{{B}}_s^t} \left\| {{{B}}{{_s^{tT}}}{{B}}_q^t} \right\|_F^2 + tr({{B}}{_s^{tT}}{{C}}) \end{split} $$ (17)

      式中,${{C}} = - 2(k{{B}}_q^t{{S}}{_{sq}^{tT}} + \mu \overline {{{V}}_q^t} + {{{P}}^t}{{L}}_s^t)$

      根据式(17)更新${{B}}_s^t$时,采用离散循环坐标法[3]${{B}}_s^t$逐行求解,则其第l行的优化目标函数如式(18)所示:

      $$ \mathop {\min}\limits_{B_{sl}^t} tr(B_{sl}^t(2{\widetilde {B_{sl}^{tT}}}\widetilde {B_{ql}^t}B{_{ql}^{tT}} + {C_l}^T)) $$ (18)

      式中,${{B}}_{sl}^t$${{B}}_{ql}^t$${{{P}}_l}$分别表示${{B}}_s^t$${{B}}_q^t$${{C}}$的第l行;$\widetilde {{{B}}_{sl}^t}$$\widetilde {{{B}}_{ql}^t}$$\widetilde {{{{C}}_l}}$分别表示${{B}}_s^t$${{B}}_q^t$${{C}}$除了第l行之外的其他行。

      根据式(18),${{B}}_{sl}^t$的计算方式如式(19)所示:

      $$ {{B}}_{sl}^t = - sign(2{\widetilde {{{B}}_{sl}^{tT}}}\widetilde {{{B}}_{ql}^t}{{B}}{_{ql}^{tT}} + {{{C}}_l}^T) $$ (19)

      综上,非对称深度在线哈希算法的训练过程如下述算法所示。

      输入:新、旧数据集图像标签:L=$\{ {{L}}_s^t,{{L}}_e^t\} $

         新、旧数据集图像数据:X=${\left\{ {{{X}}_s^t,{{X}}_e^t} \right\}^n}$

         旧数据图像数据集生成的哈希码:${{B}}_e^t$

         新数据集和采样数据集标签相似性矩阵:${{S}}_{sq}^t$

         旧数据集和采样数据集标签相似性矩阵:${{S}}_{eq}^t$

      1)设置新数据最大流入批次T

      2)设置网络最大迭代次数Z

      3)设置哈希码长度$k$

      4)初始化新数据哈希码和网络参数;

      5)运行t=1→T

      6)更新${{B}}_e^t$${{X}}_e^t$

      7)运行i=1→Z

      8)根据式(13)计算梯度;

      9)利用反向传播算法更新网络参数${{\varTheta }} = \left\{ {{\theta },{{W}}_s^t,{{V}}_s^t} \right\}$

      10)满足迭代条件后结束;

      11)根据式(14)更新${{{P}}^t}$

      12)根据式(19)更新${{B}}_s^t$

      13)满足迭代条件后结束;

      输出:新数据集哈希码${{B}}_s^t$

    • ADOH算法的训练过程主要包括迭代更新参数$\varTheta $PtBst。在本文中,n表示新、旧数据集中样本数量,nt表示新数据集样本数量,d表示采样数据集样本数量,c表示数据集类别,k表示哈希码长度,算法迭代次数为T,则更新$\varTheta $的时间复杂度为O(ndk+cd),更新Pt的时间复杂度为O(kcn+c2n+c3),更新Bst的时间复杂度为O(ntdk2),算法的总时间复杂度为O((dk+kc+c2)n+dk2nt)。由于ckd的值远远小于nnt,所以ADOH算法时间复杂度最终表示为O(T(n+nt))。ADOH算法的时间复杂度与样本数量呈线性关系,与基于可扩展监督在线哈希[1]和基于平衡相似性的标签投影在线哈希[2]的时间复杂度相同,略高于类智能快速在线哈希算法[3]时间复杂度(O(Tq),q表示数据的维度),但本文所提出的ADOH算法的近邻检索性能最优。

    • 在本文中,选取3个广泛使用的数据集cifar-10数据集[30]、mnist数据集[31]和Places205数据集[32]

      cifar-10数据集包含60 000张图像,共分为10个类别,每个类别含有6 000张图像,图像大小为32×32。根据BSODH[10]、FCOH[12]等在线哈希算法,随机选取59 000张图像为检索集,1 000张图像为测试集。同时,将检索集被分为新、旧数据集,新数据集每批次含有2 000张图像,共10批次。

      mnist数据集含有70 000张手写数字图像,共分为10个类,图像大小为28×28。类似的,每个类别随机选取100张图像为测试集,其余为检索集。同时,将检索集划为新、旧数据集,新数据集每批次包含2 000张图像,共10批次。

      Places205数据集为大型场景数据集,包含205个场景类别,共250万张图像,每张图像的大小为256×256。本次实验从Places205数据集中随机抽取35个场景类别,每个类别随机选取500到2 000张图像,共45 059张图像。从每个类别随机抽取20张图像作为测试集,其余图像作为检索集。检索集被分为旧数据集和新数据集,其中新数据分为10个批次,每个批次包含2 000张图像。

    • 基准对比算法包括OKH[22]、AdaptHash[23]、OSH[7]、MIHash[24]、BSODH[10]、HCOH[8]、HMOH[9]和FCOH[12]。为了有效评估近邻检索性能,选取了3个指标:mAP、Precision@H2和Precision@K。

      mAP表示平均精确度均值,给定一个查询样本q,其平均精确度均值的定义如式(20)所示:

      $$ {\mathrm{mAP}} = \frac{1}{Q}\frac{1}{{{L_q}}}\mathop \sum \limits_{r = 1}^Q \mathop \sum \limits_{r = 1}^n {P_q}\left( r \right){\delta _q}\left( r \right) $$ (20)

      式中,Q为检索样本的数量,n为返回样本的个数,${L_q}$为检索正确样本的个数。${P_q}\left( r \right)$为检索到第r个实例的精度,如果第r个样本是真实近邻点,则${\delta _q}\left( r \right)$=1,否则,${\delta _q}\left( r \right)$=0。

      Precision为准确率,也可称为查准率,表示所有检索返回样本中正确样本所占的百分比。Precision@H2表示以查询点为中心,半径为2的汉明球内的准确率;Precision@K表示检测到前K个近邻点的准确率,K=[1, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]。如图2所示,测试集样本A的哈希码为100011,数据库样本B的哈希码为100110,数据库样本C的哈希码为000110。A与B哈希码之间的汉明距离为2,A与B哈希码之间的汉明距离为3。则测试集样本A的Precision@H2结果样本集合包含数据库样本B,不包含数据库样本C。但在计算Precision@K(K=2)时,样本B、C将均作为检索结果用于计算查找准确率。

      图  2  样本之间汉明距离示意图

    • 在线近邻检索实验中,哈希码长度为16 bits,32 bits,48 bits,64 bits和128 bits。实验结果如表2表4图3图5所示。

      1)mAP和Precision@H2

      在cifar-10数据集上,本算法与基准算法在不同哈希码长度下的mAP和Precision@H2结果如表2所示。由mAP评估指标结果可知,当哈希码长度为16 bits和32 bits时,ADOH算法比次优算法HCOH分别提高了15%和16.2%;当哈希码长度为48 bits时,ADOH算法比次优算法HMOH提高了17.2%,当哈希码长度为64 bits和128 bits时,ADOH算法比次优算法FCOH分别提高了15.3%和14.5%。由Precision@H2评估指标结果可知,当哈希码长度为16 bits、32 bits和48 bits时,ADOH算法相较于次优算法FCOH分别提高了9.2%,5.8%和7.8%;当哈希码长度为64 bits和128 bits时,ADOH算法相较于次优算法HMOH分别提高了5.7%和2.5%。

      表 2  cifar-10数据集上不同长度哈希码的mAP和Precision@H2结果对比

      算法 mAP Precision@H2
      16 bits 32 bits 48 bits 64 bits 128 bits 16 bits 32 bits 48 bits 64 bits 128 bits
      OKH 0.063 0.166 0.298 0.330 0.356 0.100 0.184 0.433 0.334 0.101
      AdaptHash 0.255 0.216 0.196 0.198 0.219 0.270 0.341 0.388 0.395 0.322
      OSH 0.124 0.116 0.122 0.131 0.135 0.581 0.184 0.100 0.082 0.069
      MIHash 0.638 0.630 0.614 0.601 0.563 0.605 0.573 0.649 0.600 0.496
      BSODH 0.640 0.690 0.675 0.693 0.699 0.642 0.690 0.687 0.672 0.542
      HMOH 0.710 0.718 0.721 0.732 0.735 0.736 0.741 0.704 0.715 0.722
      HCOH 0.736 0.732 0.717 0.726 0.734 0.728 0.734 0.695 0.607 0.497
      FCOH 0.674 0.702 0.711 0.739 0.742 0.738 0.743 0.711 0.648 0.618
      ADOH 0.886 0.894 0.893 0.892 0.887 0.830 0.801 0.789 0.772 0.747

      表 3  mnist数据集上不同长度哈希码的mAP和Precision@H2结果对比

      算法 mAP Precision@H2
      16 bits 32 bits 48 bits 64 bits 128 bits 16 bits 32 bits 48 bits 64 bits 128 bits
      OKH 0.100 0.180 0.302 0.333 0.398 0.100 0.394 0.660 0.698 0.139
      AdaptHash 0.194 0.224 0.205 0.259 0.223 0.215 0.289 0.303 0.259 0.375
      OSH 0.143 0.133 0.129 0.163 0.167 0.134 0.131 0.113 0.119 0.042
      MIHash 0.630 0.710 0.688 0.733 0.724 0.698 0.794 0.754 0.712 0.421
      BSODH 0.659 0.710 0.723 0.739 0.739 0.694 0.795 0.785 0.723 0.532
      HMOH 0.702 0.707 0.730 0.713 0.702 0.769 0.807 0.803 0.818 0.792
      HCOH 0.699 0.752 0.749 0.771 0.786 0.785 0.836 0.790 0.630 0.571
      FCOH 0.725 0.786 0.789 0.784 0.801 0.817 0.849 0.814 0.817 0.620
      ADOH 0.984 0.985 0.986 0.987 0.984 0.983 0.976 0.966 0.955 0.954

      在mnist数据集上,本算法与基准算法在不同哈希码长度下的mAP和Precision@H2结果如表3所示。由mAP评估指标结果可知,当哈希码长度为16 bits、32 bits、48 bits、64 bits和128 bits时,ADOH算法比次优算法FCOH分别提高了25.9%、19.9%、19.7%、20.3%和18.3%。由Precision@H2评估指标结果可知,当哈希码长度为16 bits、32 bits和48 bits时,ADOH算法比次优算法FCOH分别提高了16.6%、12.7%和15.2%;当哈希码长度为64 bit s和128 bits时,ADOH算法比次优算法HMOH分别提高了13.7%和16.2%。

      在Places205数据集上,本算法与基准算法在不同哈希码长度下的mAP和Precision@H2结果如表4所示。由mAP评估指标结果可知,ADOH算法比次优算法FCOH分别提高了4.5%、5.6%、5.7%、4.6%和3.1%。在Precision@H2评估指标对比实验的结果中,当哈希码长度为16 bits、32 bits、48 bits和64 bits时,ADOH算法比次优算法FCOH分别提高了6.8%、4.2%、3.6%和5.6%;当哈希码长度为128 bits时,ADOH算法比次优算法HMOH提高了6%。

      表 4  Places205数据集上不同长度哈希码的mAP和Precision@H2结果对比

      算法 mAP Precision@H2
      16 bits 32 bits 48 bits 64 bits 128 bits 16 bits 32 bits 48 bits 64 bits 128 bits
      OKH 0.061 0.198 0.265 0.287 0.298 0.086 0.210 0.278 0.156 0.075
      AdaptHash 0.238 0.308 0.318 0.323 0.327 0.247 0.313 0.347 0.295 0.221
      OSH 0.041 0.117 0.215 0.248 0.256 0.127 0.152 0.205 0.172 0.159
      MIHash 0.325 0.376 0.433 0.485 0.498 0.351 0.371 0.416 0.308 0.293
      BSODH 0.431 0.465 0.480 0.531 0.575 0.447 0.478 0.492 0.455 0.384
      HMOH 0.429 0.488 0.492 0.546 0.591 0.405 0.477 0.481 0.502 0.491
      HCOH 0.446 0.495 0.525 0.554 0.602 0.421 0.514 0.512 0.464 0.438
      FCOH 0.467 0.507 0.574 0.587 0.605 0.451 0.526 0.588 0.557 0.479
      ADOH 0.512 0.563 0.631 0.633 0.636 0.519 0.568 0.624 0.613 0.551

      图  3  cifar-10数据集上不同长度哈希码的Precision@K结果对比

      图  4  mnist数据集上不同长度哈希码的Precision@K结果对比

      表2表4中,随着哈希码长度的增加,各个哈希算法的在线近邻检索性能指标mAP结果均出现不同程度的波动。但相较而言,ADOH算法的mAP值的波动最小,近邻检索性能更稳定,例如在mnist数据集上mAP值的波动仅为0.3%。

      综上,在数据集cifar-10、mnist和Places205上,ADOH算法的Precision@H2和mAP的结果均最优。在构建在线哈希模型时,FCOH、BSODH等算法仅考虑样本之间的相似性关系,HCOH、HMOH等算法仅考虑单个样本的语义信息,而ADOH算法兼顾样本之间的语义相似性关系和单个样本的语义信息。再者,与FCOH、HMOH等浅模型基准算法不同,ADOH算法构建深度语义在线哈希模型。因此,ADOH算法的近邻检索性能优于其他算法。

      2)Precision@K

      图3图5分别展示了本算法与其他基准算法在数据集cifar-10、mnist和Places205上的Precisio~n@K实验结果。Precision@K评估指标的近邻搜索范围为1~100,每跨越10个邻居验证一次实验结果,每个在线哈希算法分别在数据集cifar-10、mnist和Places205上进行11次实验。从图3图5可以看出,所提算法的Precision@K值高于其他基准算法。当取不同范围的邻居时,基准算法的实验结果均存在不同程度的波动,而ADOH算法在不同邻居取值下Precision@K结果几乎未出现波动。相较于其他基准算法,ADOH算法的检索性能更优,更稳定。再者,哈希码长度较短时,本文所提算法ADOH具备优异的近邻检索性能,更容易扩展到大规模图像检索任务中。

      图  5  Places205数据集上不同长度哈希码的Precision@K结果对比

    • ADOH算法的目标函数中共包含5个调节参数$\mu $$\gamma $$\delta $$\eta $$\alpha $。为了确定它们的合理取值,本文选取Precision@H2和mAP为评估指标,在cifar-10数据集上对比了不同参数值的ADOH算法近邻检索性能,其哈希码长度设置为16 bits。

      1)参数$\alpha $的影响

      $\alpha $为平衡目标函数L的参数,平衡非对称深度网络模块和标签嵌入模块的权重。本次实验设置根据深度增量哈希网络[29]设置参数$\mu $=200和$\gamma $=50,$\alpha $=[0.2, 0.4 ,0.6 ,0.8 ,1 ,1.2 ,1.4 ,1.6 ,1.8],参数$\delta $$\eta $的值为0。在mAP和Precision@H2评估指标下,不同参数$\alpha $值的近邻检索性能如图6所示。实验结果表明,$\alpha $=1时,mAP和Precision@H2的值最大。

      图6中可以看出,当$\alpha $=0.2时,非对称深度网络模块的权重最低时,ADOH算法的检索性能最差。非对称深度网络模块利用深度网络提取图像特征,并包含汉明语义一致性模块和单样本语义一致性模块,标签嵌入模块仅通过标签投影学习单个样本的语义信息。相比于标签嵌入模块,非对称深度网络模块更影响算法的性能。

      图  6  $\alpha $值的实验结果

      2)参数$\mu $$\gamma $$\delta $的影响

      $\mu $量化哈希码误差的参数,$\gamma $为平衡项的参数,$\delta $为平衡交叉熵标签语义损失的参数。本次实验设置$\mu $=[1, 10, 100, 200, 500],$\gamma $=[0.1, 1, 10, 50, 100],$\delta $=[0.2, 0.4, 0.6, 0.8, 1]。

      选取参数$\mu $时,设置参数$\gamma $=50,参数$\delta $$\eta $的值为0,$\alpha $=1。由图7可知,$\mu $=200时,ADOH算法的近邻检索性能指标mAP和Precision@H2的值最优。

      图  7  $\mu $的实验结果

      选取参数$\gamma $时,设置参数$\mu $=200,参数$\delta $$\eta $的值为0,$\alpha $=1。由图8可知,$\gamma $=50时,ADOH算法的近邻检索性能最优。

      图  8  $\gamma $的实验结果

      选取参数$\delta $时,设置参数$\left( {\mu ,\gamma ,\eta ,\alpha } \right) = $(200, 50, 0 , 1)。由图9可知,$\delta $=0.6时,ADOH算法的近邻检索性能指标mAP和Precision@H2值最大。

      图  9  $\delta $的实验结果

      综上可得,(200 , 50, 0.6)为$\mu $$\gamma $$\delta $的最佳参数组合。

      3)参数$\eta $的影响

      在标签嵌入模块,设置了平衡参数$\eta $,可有效避免过拟合现象。本次实验设置$\eta $的取值范围为[0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1],并设置参数$\left( {\mu ,\gamma ,\delta ,\alpha } \right) = $(200, 50, 0.6, 1)。图10为不同参数$\eta $值的近邻检索性能mAP和Precision@H2指标值,并且$\eta $=0.6时,ADOH算法的近邻检索性能最好。

      图  10  $\eta $的实验结果

    • 本文提出一种新的深度监督在线哈希算法,称为非对称深度在线哈希算法(ADOH)。ADOH提出利用深度神经网络学习在线哈希模型,保持新、旧数据集在原始特征空间和语义空间的相似性关系。ADOH通过非对称学习的方式,只学习新数据集的哈希码,保持旧数据集的哈希码不变,提高模型的学习效率。ADOH在非对称深度在线哈希网络学习中建立分类损失项,利用交叉熵预测标签,充分挖掘数据点本身的深度语义信息。另外,ADOH通过标签嵌入模块,分别将新、旧数据集标签投影到对应的哈希码中,使类别相同的数据生成的哈希码趋于一致,使待学习的哈希码更易于分类。在3个广泛使用的数据集cifar-10、mnist和Places205上设置了近邻检索性能对比实验,实验结果表明ADOH算法的性能优于目前八种较先进的在线哈希算法。

参考文献 (32)

目录

    /

    返回文章
    返回