【犀牛鸟论道】深度哈希方法及其在移动视觉搜索中的应用

1. 简介

移动视觉搜索技术是多媒体搜索领域中一个前沿的研究课题。近年来,移动设备的飞速发展,改变了互联网上图像和视频等视觉内容的产生,以及人们检索和观看的方式。移动设备的便携性和无处不在的网络接入能力使其逐渐成为主要的互联网图像和视频内容的访问和查询入口。而移动设备上丰富的传感器原件,也使得移动视觉搜索的过程更加自然、有效——用户可以直接通过拍摄图像和视频进行搜索。因此,移动视觉搜索具有巨大的市场需求和应用前景。但是,不同于传统的桌面搜索,移动视觉搜索主要面临如下挑战:1)查询图像\视频受拍摄环境干扰严重;2)移动设备计算性能有限;3)移动网络带宽限制;4)移动用户更重视其搜索体验。

移动视觉搜索识别比特率(Recognition Bitrate)[1],即视觉搜索的准确率与需要传输的特征规模的比值,是衡量视觉搜索方法性能的一项重要指标。高识别比特率意味着高响应速度、低网络传输流量、低电量消耗等优势,这些都是影响移动视觉搜索的重要指标。目前在移动视觉搜索中提高识别比特率的方法主要分为四大类:传输压缩过后的图像,传输原始视觉特征,传输压缩后的特征和传输特征的哈希签名[2]。在这些方法中,基于哈希签名的方法由于其高健壮性、低传输成本、低内存需求和低计算代价,受到了广泛的关注。特别是近年来,深度学习方法的优异表现,使得基于深度学习哈希的视觉搜索成为了研究热点。

图1 基于深度学习哈希的移动视觉搜索框架图

本文探究了深度哈希方法应用于移动视觉搜索的可能性。首先,我们调查了现有的深度哈希方法,展示他们在视觉搜索方面的优势,并比较了他们在CIFAR-10数据集上的表现。此外,为了解决在移动设备上高效运行深度哈希方法的问题,我们总结分析了现有的深度学习加速技术。最后,我们讨论了基于深度学习哈希的移动视觉搜索在未来需要解决的问题。

2.深度哈希方法

2.1 背景

哈希是一种被广泛研究的近似最近邻搜索的方法,它旨在将数据转换成低维度的表示形式或者转换成被称为哈希码的二进制序列[3]。哈希方法已被深入研究并广泛用于许多不同领域,包括计算机图形学、计算几何学、计算机视觉等,特别是用于移动视觉搜索。已有的哈希方法可以分为两类:数据独立方法和数据相关方法(即学习哈希,Learning to Hash)。学习哈希的目的是学习数据相关和特定任务相关的哈希函数,这些函数通过将原始特征转化为简洁的二进制码来实现高速高精度搜索。其中复杂的机器学习工具和算法已经应用于哈希函数的设计和学习过程[4]。

深度学习技术[5]作为一个有效的视觉内容理解和搜索问题的解决方案,引起了越来越多图像和视频搜索领域研究者的关注。深度学习是一种多层感知的仿生学变体,它为大数据集上的特征提取和分类器训练提供了一个端到端的框架。通过深度学习模型提取的特征比绝大多数现有手工提取特征具有更好的性能。因此,许多研究尝试提出一个端到端的深度哈希框架,用以自动学习图像的二进制哈希码表示。表1展示了现有的深度学习哈希方法及其特点。这些方法在CIFAR-10数据集上的图像搜索性能如表2所示。

表1 现有深度哈希方法的特点

2.2 独立学习特征表示和哈希函数

早期的深度学习哈希方法延续了传统的学习哈希策略。首先在大型图像数据集上训练深层神经网络,学习图像搜索的有效特征表示;然后添加一个隐藏的哈希层,用于训练将特征映射到二进制序列的哈希函数。Lin等人就提出了这样一个深度哈希框架[6]:第一步是在ImageNet上进行卷积神经网络有监督的预训练,学习丰富的中层图像特征;然后在网络中添加一个隐藏层,学习哈希码的转换,并在目标数据集上进行微调。此外,Liong等人提出在三个约束下训练哈希层:1)最小化原始特征和二进制向量之间的损失,2)二进制码均匀分布,3)不同的比特位之间尽可能相互独立[7]。除了这三个约束,无监督的深层哈希神经网络也将旋转不变性添加到二进制码的学习中,进一步提高了无监督深度哈希的性能[8]。但是,上面的工作把深度神经网络的特征学习和哈希函数学习作为两个独立的部分,因此面临与传统哈希方法相同的问题——学习产生的二进制哈希码质量很大程度上取决于深度学习获得的特征表示的质量,不能充分利用深度神经网络的学习能力,直接进行哈希签名的学习。

2.3 联合学习特征表示和哈希签名

与前面工作不同,文献[10][11]提出了端到端的深度哈希学习框架,用含有语义信息的图像直接训练获取哈希签名。其中,Yang等人提出有监督的语义保留深度哈希,将哈希函数构造为卷积神经网络中的图像表示和分类输出之间的隐藏层,通过对分类目标函数的最小化,进行二进制哈希签名学习[10]。同时,学习中的附加约束可以使每个二进制位携带尽可能多的信息,并使得相似图像哈希签名之间的海明距离尽量减小。Zhao等人则利用带有多个标签的图像来学习基于深度语义排序的哈希[11]。此外,Li等人设计了不使用sgn或者step函数,直接输出二进制代码的深度神经网络。作者同时提出了交替和放宽优化目标,解决同时保持二进制码的区分性、独立性和平衡性的NP-hard问题。

作为一类特定的有监督哈希方法,相似性保留哈希也广泛应用于大规模图像搜索任务。在训练中,相似性保留哈希的输入是带有相似性关系的三元组或二元组图像对。学习后的二进制码需要保持输入三元组或二元组图像之间的原始相似关系。Lai等人提出了“one-stage”有监督深度哈希结构,分三部分:1)共享卷积层,用于捕获图像特征表示;2)划分编码模块,用于划分图像中间特征并将它们映射到多个哈希码;3) 三元组排序损失函数,在图像上尽量保持三元组之间的原始关系[14]。类似地,Zhang等人则提出一种直接从三元组图像生成紧凑、可扩展的哈希签名的有监督学习方法[8]。该方法除了尽量保留相似性外,还将哈希码的每个比特位不等地加权,并可以通过截断无效比特位来操纵哈希码长度。此外,Li等人提出使用二元组图像对进行有监督的深度哈希签名学习[18]。Zhu等人则在原有的排序损失上扩展了二元组交叉熵损失和量化损失[16]。Yao等人提出了一个全新的基于排序和语义保留的深度哈希结构,可以同时学习从图像到哈希码和从图像到分类的映射来优化生成的哈希签名[17]。

表2 不同深度哈希方法在CIFAR-10数据集上进行图像搜索的MAP值(取自原论文)

3.深度哈希在移动设备上的优化

尽管深度学习技术在广泛的视觉应用中取得了巨大的成功,但其高计算量和高内存需求也为移动视觉搜索等应用带来了巨大挑战。现有深度神经网络准确率的提升主要依赖于更深的网络架构,而这种架构目前只能在配置了GPU等计算设备的服务器上才能快速计算。因此,许多研究工作尝试进一步提高深度学习网络的计算效率,减少对内存的需求和功耗,以使得深度学习技术能够应用在移动设备上。

3.1 加速卷积层计算

加速卷积层的计算是优化深度神经网络的一种很普遍的方法。Lebedev等人提出了一个基于张量分解和差别微调的卷积层加速计算框架[19]。张量分解使用非线性矩阵来计算低秩CP分解来分解全核张量。原始的卷积层被带有四个小卷积核的卷积层代替,替换后的新网络再在训练数据集上进行微调。评估显示,新网络实现了8.5倍的CPU加速,且准确率下降非常小。此外,Zhang等人尝试用非线性非对称重建来加速深层卷积网络,实现了4倍速加速,并且Top-5误差只增加了不到0.3%[20]。

3.2 压缩参数以减小模型规模

深度学习网络中通常包含数百万个参数,如何减少参数数量来压缩模型是加速深层神经网络的另一研究方向。Chen等人使用哈希函数将网络连接随机分组到哈希桶中,在同一哈希桶中的连接使用相同的权重[21];Han等人使用修剪、量化和哈夫曼编码来压缩深层模型[22];Srinivas等人则尝试直接去除相似和冗余的神经元[23];而Deep Pried Convnet是一个端到端的可训练网络,它使用了Adaptive Fastfood变换代替全连接层[24]。

3.3 在移动设备上加速深度神经网络

针对移动设备上的深度学习加速,Wu等人提出了一种量化卷积神经网络,可以同时进行网络计算加速和规模压缩[25]。他们使用近似内积计算估计卷积层和全连接层的响应,在训练过程中也会考量估计误差。根据他们的评估结果,量化卷积神经网络实现了4倍的加速和15倍的压缩效果,在Top-5结果中只有小于1%的准确率损失。在华为Mate 7智能手机(1.8GHz Kirin 925 CPU)上,优化了的AlexNet网络实际运行时间、外存和内存消耗分别为0.95秒,12.60MB和74.65MB。Rallapalli等人则尝试在移动设备上使用内存优化来加速网络层数非常深的神经网络[26](例如27层的YOLO [27]),包括:1)减少网络中无用的参数数量;2)使用GPU中的内存管理存储器;3)将全连接层分割,顺序加载和执行;4)在流水线CPU和GPU计算时将全连接层计算全部放在CPU上。优化后的YOLO在NVIDIA Jetson TK1开发板上运行只需要0.262秒,准确率损失为2.2%。

从已有的工作中可以看出,加速卷积层和减少权重数量是在移动设备上加速神经网络的两种比较普遍的方法。虽然深度神经网络的层数会继续增加,但是我们有理由相信随着移动设备硬件的发展和加速技术的应用,深度哈希方法会更加普遍地应用于移动设备上。

4.未来研究方向

4.1 设计面向移动视觉搜索特殊挑战的深度哈希方法

在移动视觉搜索中,图像或视频往往受噪声干扰严重,如闪烁、遮挡、旋转、模糊、仿射变换等。如何设计更有效的特征以达到准确的搜索仍然是一个巨大的挑战。因此未来移动视觉搜索需要研究设计能够应对这些特定噪声的深度哈希方法,例如在代价函数中加入变换不变性等,从而进一步提高准确性。

4.2 探索具有非监督学习能力的深度哈希方法

如表2所示,目前无监督深度哈希方法的性能明显劣于有监督深度哈希。但是有监督哈希需要依赖于大规模图像/视频的标注,应用范围有所限制。因此如何设计无监督深度哈希方法,进一步提高无监督哈希的准确率及在移动视觉搜索中的应用是未来另一个重要的研究方向。

4.3 进一步加快深度神经网络计算性能并减少模型规模

虽然许多工作已经尝试在移动设备上优化深度学习技术,但目前还远远不能满足需求。由于移动设备的计算能力和内存限制,我们只能运行层数有限的深度神经网络。目前在移动设备上的计算时间仍然是在服务器上计算时间的十倍以上。因此,我们需要探索新的加速方法,以及利用FPGA或专用深度学习芯片,进一步加快深度神经网络计算性能并减少网络规模。

4.4 多特征融合的深度哈希方法

现有的深度哈希方法都是从图像中提取二进制哈希签名。但是在移动设备上存在很多传感器,可以支持基于多模态融合的内容搜索。具体如位置识别或建筑物识别,我们可以利用来自GPS、数字罗盘、加速度计和陀螺仪的多种信息训练基于多模态融合的深度哈希。对于移动视频搜索,我们则可以在深度哈希中利用音频、图像和文字信息。因此,多模态融合的深度哈希将在未来成为有吸引力的研究方向。

参考文献

[1] Yu-Chuan Su, Tzu-Hsuan Chiu, Yan-Ying Chen, Chun-Yen Yeh, Winston H. Hsu: Enabling low bitrate mobile visual recognition: a performance versus bandwidth evaluation. ACM Multimedia 2013: 73-82

[2] Wu Liu, Tao Mei, Yongdong Zhang: Instant Mobile Video Search With Layered Audio-Video Indexing and Progressive Transmission. IEEE Trans. Multimedia 16(8): 2242-2255 (2014)

[3] Jingdong Wang, Ting Zhang, Jingkuan Song, Nicu Sebe, Heng Tao Shen: A Survey on Learning to Hash. CoRR abs/1606.00185 (2016)

[4] Jun Wang, Wei Liu, Sanjiv Kumar, Shih-Fu Chang: Learning to Hash for Indexing Big Data - A Survey. Proceedings of the IEEE 104(1): 34-57 (2016)

[5] Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton: ImageNet Classification with Deep Convolutional Neural Networks. NIPS 2012: 1106-1114

[6] Kevin Lin, Huei-Fang Yang, Jen-Hao Hsiao, Chu-Song Chen: Deep learning of binary hash codes for fast image retrieval. CVPR Workshops 2015: 27-35

[7] Venice Erin Liong, Jiwen Lu, Gang Wang, Pierre Moulin, Jie Zhou: Deep hashing for compact binary codes learning. CVPR 2015: 2475-2483

[8] Kevin Lin, Jiwen Lu, Chu-Song Chen, Jie Zhou: Learning Compact Binary Descriptors with Unsupervised Deep Neural Networks. CVPR 2016: 1183-1192

[9] Rongkai Xia, Yan Pan, Hanjiang Lai, Cong Liu, Shuicheng Yan: Supervised Hashing for Image Retrieval via Image Representation Learning. AAAI 2014: 2156-2162

[10] Huei-Fang Yang, Kevin Lin, Chu-Song Chen: Supervised Learning of Semantics-Preserving Hashing via Deep Neural Networks for Large-Scale Image Search. CoRR abs/1507.00101 (2015)

[11] Fang Zhao, Yongzhen Huang, Liang Wang, Tieniu Tan: Deep semantic ranking based hashing for multi-label image retrieval. CVPR 2015: 1556-1564

[12] Thanh-Toan Do, Anh-Dzung Doan, Ngai-Man Cheung: Learning to Hash with Binary Deep Neural Network. ECCV (5) 2016: 219-234

[13] Ruimao Zhang, Liang Lin, Rui Zhang, Wangmeng Zuo, Lei Zhang: Bit-Scalable Deep Hashing With Regularized Similarity Learning for Image Retrieval and Person Re-Identification. IEEE Trans. Image Processing 24(12): 4766-4779 (2015)

[14] Hanjiang Lai, Yan Pan, Ye Liu, Shuicheng Yan: Simultaneous feature learning and hash coding with deep neural networks. CVPR 2015: 3270-3278

[15] Wu-Jun Li, Sheng Wang, Wang-Cheng Kang: Feature Learning Based Deep Supervised Hashing with Pairwise Labels. IJCAI 2016: 1711-1717

[16] Han Zhu, Mingsheng Long, Jianmin Wang, Yue Cao: Deep Hashing Network for Efficient Similarity Retrieval. AAAI 2016: 2415-2421

[17] Ting Yao, Fuchen Long, Tao Mei, Yong Rui: Deep Semantic-Preserving and Ranking-Based Hashing for Image Retrieval. IJCAI 2016: 3931-3937

[18] Sumit Chopra, Raia Hadsell, Yann LeCun: Learning a Similarity Metric Discriminatively, with Application to Face Verification. CVPR (1) 2005: 539-546

[19] Vadim Lebedev, Yaroslav Ganin, Maksim Rakhuba, Ivan V. Oseledets, Victor S. Lempitsky: Speeding-up Convolutional Neural Networks Using Fine-tuned CP-Decomposition. CoRR abs/1412.6553 (2014)

[20] Xiangyu Zhang, Jianhua Zou, Kaiming He, Jian Sun: Accelerating Very Deep Convolutional Networks for Classification and Detection. IEEE Trans. Pattern Anal. Mach. Intell. 38(10): 1943-1955 (2016)

[21] Wenlin Chen, James T. Wilson, Stephen Tyree, Kilian Q. Weinberger, Yixin Chen: Compressing Neural Networks with the Hashing Trick. ICML 2015: 2285-2294

[22] Song Han, Huizi Mao, William J. Dally: Deep Compression: Compressing Deep Neural Network with Pruning, Trained Quantization and Huffman Coding. CoRR abs/1510.00149 (2015)

[23] Suraj Srinivas, R. Venkatesh Babu: Data-free Parameter Pruning for Deep Neural Networks. BMVC 2015: 31.1-31.12

[24] Zichao Yang, Marcin Moczulski, Misha Denil, Nando de Freitas, Alexander J. Smola, Le Song, Ziyu Wang: Deep Fried Convnets. ICCV 2015: 1476-1483

[25] Jiaxiang Wu, Cong Leng, Yuhang Wang, Qinghao Hu, Jian Cheng: Quantized Convolutional Neural Networks for Mobile Devices. CVPR 2016: 4820-4828

[26] Rallapalli, S., Qiu, H., Bency, A.J., Karthikeyan, S., Govindan, R., Manjunath, B.S., Urgaonkar, R.: Are Very Deep Neural Networks Feasible on Mobile Devices? http://hgpu.org/?p=15652. [Online: accessed 22-December-2016] (2016)

[27] Joseph Redmon, Santosh Kumar Divvala, Ross B. Girshick, Ali Farhadi: You Only Look Once: Unified, Real-Time Object Detection. CVPR 2016: 779-788

作者简介:

刘武,北京邮电大学,讲师。2015年博士毕业于中国科学院计算技术研究所。研究方向为多媒体与计算机视觉,在IEEE CVPR、ACM MM、IEEE T-MM、IEEE T-CYB、ECCV等一流国际会议和期刊上发表文章20余篇。曾获得中国科学院优秀博士学位论文奖、中国科学院院长特别奖、国际会议IEEE ICME 2016 Best Student Paper、BIGCOM 2016 Runner Up for Best Paper、2016 CCF-腾讯犀牛鸟科研基金等。曾担任SCI期刊MVA客邀编辑,国际会议PCM 2016、ICIMCS 2016、CCIS 2016、BIGMM 2017、ICIP 2017的分会或专题研讨会主席, 以及多个IEEE/ACM Transaction期刊和CCF推荐A、B类国际会议的审稿人。

“犀牛鸟论道”是由腾讯高校合作团队打造的原创类科技文章专栏,提倡深度、前瞻性、权威性与通俗晓畅的可读性。专栏聚焦科研前沿与趋势,评点技术与壁垒,探究创新之本源,旨在为学术界和产业界专家提供一片智慧与卓越见解的分享之地,让思考和成就得以沉淀。

来信来稿请联系:kunyuan@tencent.com

原文发布于微信公众号 - 腾讯高校合作(Tencent_UR)

原文发表时间:2017-04-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏携程技术中心

个性化推荐沙龙 | 推荐系统中基于深度学习的混合协同过滤模型

董鑫,携程基础业务部BI团队高级算法工程师,博士毕业于上海交通大学计算机科学与技术系。 近些年,深度学习在语音识别、图像处理、自然语言处理等领域都取得了很大的突...

443130
来自专栏机器之心

斯坦福博士韩松毕业论文:面向深度学习的高效方法与硬件

44090
来自专栏用户2442861的专栏

如何识别图像边缘?

文字识别、车牌识别、人脸识别都是它的应用。但是,这些都算初级应用,现在的技术已经发展到了这样一种地步:计算机可以识别出,这是一张狗的照片,那是一张猫的照片。

17220
来自专栏AI研习社

Quora Question Pairs 竞赛冠军经验分享:采用 4 层堆叠,经典模型比较给力

AI 研习社按:今天要介绍的比赛是 Quora Question Pairs,该比赛的目的是将具有相同意图的问题正确配对。最近本次竞赛的冠军在 Kaggle 社...

486110
来自专栏计算机视觉战队

简单易懂的讲解深度学习(入门系列之六)

在上一讲中,由于感知机不能解决“异或”问题,明斯基并无恶意却把AI冷藏了二十载。但是解决“异或”问题,其实就是能否解决非线性可分问题。如何来解决这个问题呢???

15820
来自专栏人工智能

深度学习NLP最佳方法

2017年7月26日更新:有关其他上下文,HackerNews对此帖的讨论。

40590
来自专栏CVer

[计算机视觉论文速递] 2018-04-19

[1]《Hierarchical Novelty Detection for Visual Object Recognition》

16420
来自专栏大数据挖掘DT机器学习

数据挖掘案例:基于 ReliefF和K-means算法的应用

.NET数据挖掘与机器学习 原文:http://www.cnblogs.com/asxinyu/archive/2013/08/29/3289682.html ...

31680
来自专栏悦思悦读

自己动手制作“平均脸”【1】

有趣的“平均脸” 大家想必看到过很多合成的“平均脸”图片吧。 有按国家、民族合成的: ? 也有针对政要明星合成的,例如这张,韩中日三国明星平均脸: ? “平均脸...

85880
来自专栏杨熹的专栏

怎样做情感分析

本文结构: 什么是情感分析? 怎么分析,技术上如何实现? ---- cs224d Day 7: 项目2-命名实体识别 2016课程地址 项目描述地址 ----...

38750

扫码关注云+社区

领取腾讯云代金券