CN110750660B - 一种半配对多模态数据哈希编码方法 - Google Patents
一种半配对多模态数据哈希编码方法 Download PDFInfo
- Publication number
- CN110750660B CN110750660B CN201910951066.1A CN201910951066A CN110750660B CN 110750660 B CN110750660 B CN 110750660B CN 201910951066 A CN201910951066 A CN 201910951066A CN 110750660 B CN110750660 B CN 110750660B
- Authority
- CN
- China
- Prior art keywords
- neural network
- data
- matrix
- paired
- layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000013528 artificial neural network Methods 0.000 claims abstract description 134
- 239000011159 matrix material Substances 0.000 claims abstract description 90
- 238000013507 mapping Methods 0.000 claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 42
- 239000013598 vector Substances 0.000 claims description 41
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000013139 quantization Methods 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 7
- 230000017105 transposition Effects 0.000 claims description 3
- 230000001537 neural effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 8
- 230000009471 action Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- GUNOUNRTBRPXOQ-UHFFFAOYSA-N (2,5-dioxopyrrolidin-1-yl) 6-(pyridin-2-yldisulfanyl)hexanoate Chemical compound O=C1CCC(=O)N1OC(=O)CCCCCSSC1=CC=CC=N1 GUNOUNRTBRPXOQ-UHFFFAOYSA-N 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000283986 Lepus Species 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010792 warming Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5846—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using extracted text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Databases & Information Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Library & Information Science (AREA)
- Image Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
本发明公开了一种半配对多模态数据哈希编码方法,包括:获得半配对多模态数据的图像信息矩阵和文字信息矩阵;构建将图像映射到文字空间的第一神经网络和将文字映射到图像空间的第二神经网络并分别从所述第一神经网络和所述第二神经网络中选取一个编码层;利用所述编码层建立目标函数;根据所述目标函数训练所述第一神经网络和所述第二神经网络,获得所述半配对多模态数据的哈希编码矩阵。该方法采用深度神经网络,相比于现有的浅层模型方法具有更好的非线性拟合能力,并且生成的哈希编码具有更高的精度和多样性。
Description
技术领域
本发明属于跨模态检索技术领域,具体涉及一种半配对多模态数据哈希编码方法。
背景技术
哈希编码是一种将实数向量表示为二进制数向量的方法,用二进制数向量的检索替代对实数向量的检索能够减少计算量。多模态数据是指不同类型的实数向量,例如用于表示图像的SIFT(Scale-invariant feature transform,尺度不变特征变换)特征的是一个128维的实数向量,用于表示文字的LDA(Latent Dirichlet Allocation,文档主题生成模型)特征是一个10维的实数向量,这两组实数向量就是两种不同模态的数据。
多模态哈希编码是将多组成对实数向量用同一组二进制数向量表示,从而实现跨模态的检索。例如从社交网络上抓取的图像及其文字标签信息就是成对的,通过多模态哈希编码,可以实现用文字标签检索图像,或者用图像检索文字标签。半配对,是指多模态数据中只有一部分数据的配对信息是已知的。半配对多模态数据哈希编码就是将半配对数据的实数特征向量转化成二进制向量。
目前主流的半配对多模态数据哈希编码方法大多采用了浅层模型,其中一种采用了基于图的SPDH方法(Shen X,Shen F,Sun Q S,et al.Semi-Paired Discrete Hashing:Learning Latent Hash Codes for Semi-Paired Cross-View Retrieval[J].IEEETransactions on Cybernetics,2017,47(12):4275-4288),挖掘一个模态中未配对数据和已配对数据的关系,从而为未配对的数据生成哈希编码;另一种是SPH方法(Shen X,Sun QS,Yuan Y H.Semi-paired hashing for cross-view retrieval[J].Neurocomputing,2016,213:14-23),其在基于图的方法的基础上,通过计算两个模态图的协方差,考虑了不同模态之间未配对数据的结构。但是这两种方法均采用浅层模型,浅层模型可看作是只有输入层和输出层的两层神经网络,其在非线性拟合能力上有所限制,因此,对于规模大、结构复杂的多模态数据,浅层模型生成的哈希编码检索精度有限。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种半配对多模态数据哈希编码方法。本发明要解决的技术问题通过以下技术方案实现:
本发明提供了一种半配对多模态数据哈希编码方法,包括:
S1:获得半配对多模态数据的图像信息矩阵和文字信息矩阵;
S2:构建将图像映射到文字空间的第一神经网络和将文字映射到图像空间的第二神经网络并分别从所述第一神经网络和所述第二神经网络中选取一个编码层;
S3:利用所述编码层建立目标函数;
S4:根据所述目标函数训练所述第一神经网络和所述第二神经网络,获得所述半配对多模态数据的哈希编码矩阵。
在本发明的一个实施例中,所述S1包括:
S11:获取所述半配对多模态数据中的图像数据的配对信息矩阵Xp以及图像数据的未配对信息矩阵Xu;
S12:获取所述半配对多模态数据中的文字数据的配对信息矩阵Yp和文字数据的未配对信息矩阵Yu。
在本发明的一个实施例中,所述S11包括:
S111:获取所述半配对多模态数据中的图像数据{x1,…,xi,…,xn}T,其中,n表示数据量,x1,…,xi,…,xn均为dx维的行向量,T表示转置;
S112:获取所述图像数据中配对信息已知的np个行向量,组成所述图像数据的配对信息矩阵Xp;
S113:获取所述图像数据中配对信息未知的n-np个行向量,组成所述图像数据的未配对信息矩阵Xu。
在本发明的一个实施例中,所述S12包括:
S121:获取所述半配对多模态数据中的文字数据{y1,…,yi,…,yn}T,其中,n为数据量,y1,…,yi,…,yn均为dy维的行向量;
S122:获取所述文字数据中配对信息已知的np个行向量,组成所述文字数据的配对信息矩阵Yp;
S123:获取所述文字数据中配对信息未知的n-np个行向量,组成所述文字数据的未配对信息矩阵Yu。
在本发明的一个实施例中,所述S2包括:
S21:构建用于将图像数据映射到文字空间的第一神经网络fx:
S22:构建用于将文字数据映射到图像空间的第二神经网络fy:
S23:选取所述第一神经网络fx的第h层作为第一编码层,选取所述第二神经网络fy的第L-h+1层作为第二编码层,其中,dh=dL-h+1,dh为所述第一编码层的维度,dL-h+1为所述第二编码层的维度。
在本发明的一个实施例中,所述目标函数的表达式为:
其中,表示第一神经网络fx的参数集合,表示第二神经网络fy的参数集合,表示fx的输入为Xp时所述第一编码层的输出,表示ff的输入为Yp时所述第二编码层的输出,表示fx的输入为Xu时所述第一编码层的输出,表示fy的输入为Yu时所述第二编码层的输出,Bu表示未配对数据Xu和Yu的哈希编码矩阵,Bp表示配对数据Xp和Yp的哈希编码矩阵,fx(Xp)表示所述第一神经网络fx的输入为Xp时的输出,fy(Xp)表示所述第二神经网络fy的输入为Xp时的输出,T表示转置,-1表示矩阵求逆,||·||F表示计算矩阵F范数,det(·)表示求矩阵行列式,V表示变换矩阵,α为常数。
在本发明的一个实施例中,所述S3包括:
S31:根据所述第一神经网络fx和所述第二神经网络fy建立配对数据的最小化模型:
S32:根据所述第一神经网络fx和所述第二神经网络fy建立未配对数据的最小化模型:
S33:建立多样正则化的最小化模型:
S34:利用所述配对数据的最小化模型、所述未配对数据的最小化模型和所述多样正则化的最小化模型共同建立所述目标函数。
在本发明的一个实施例中,所述S4包括:
其中,Δt表示学习速率;
S44:更新所述变换矩阵V:
S45:更新Bu和Bp;
S46:令所述迭代次数q加1,并判断当前迭代计算次数q与预设的最大迭代次数Q的大小,若q<Q,则返回S42继续进行迭代计算,若q=Q,则停止迭代,获得Bu和Bp的最终值;
S47:根据Bu和Bp的最终值获得所述编码矩阵。
在本发明的一个实施例中,所述S45包括:
S451:计算所述目标函数E关于Bu的偏导数,并令所述偏导数的值为零,获取B’u的值:
S452:利用符号函数Bu=sign(B’u)对B’u进行量化,获得量化后的Bu值;
S453:计算所述目标函数E关于Bp的偏导数,并令所述偏导数的值为零,获取B’p值:
S454:利用符号函数Bp=sign(B’p)对B’p进行量化,获得量化后的Bp值。
在本发明的一个实施例中,所述S47包括:
S472:将所述编码矩阵B’中的所有元素中的-1值替换为0值,从而获得所述半配对多模态数据的哈希编码矩阵B。
与现有技术相比,本发明的有益效果在于:
1、本发明的半配对多模态数据哈希编码方法,采用深度神经网络,相比于现有的浅层模型方法具有更好的非线性拟合能力,并且本发明的方法还包括多样性正则过程,可以提高生成哈希编码的多样性,避免最后输出的编码太过接近而无法区分。
2、对于规模大且结构复杂的多模态数据,本发明的半配对多模态数据哈希编码方法在检索精度上优于浅层模型生成的哈希编码。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种半配对多模态数据哈希编码方法的流程图;
图2是本发明实施例提供的一种神经网络的结构示意图;
图3是本发明实施例提供的一种配对数据的编码原理示意图;
图4是本发明实施例提供的一种未配对数据的编码原理示意图;
图5是本发明实施例提供的一种未配对数据的编码空间输出配对原理示意图。
具体实施方式
为了进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及具体实施方式,对依据本发明提出的一种半配对多模态数据哈希编码方法进行详细说明。
有关本发明的前述及其他技术内容、特点及功效,在以下配合附图的具体实施方式详细说明中即可清楚地呈现。通过具体实施方式的说明,可对本发明为达成预定目的所采取的技术手段及功效进行更加深入且具体地了解,然而所附附图仅是提供参考与说明之用,并非用来对本发明的技术方案加以限制。
应当说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
实施例一
多模态哈希编码是将多组成对实数向量用同一组二进制数向量表示,从而实现跨模态的检索。例如,从社交网络上抓取的图像及其文字标签信息就是成对的,通过多模态哈希编码,可以实现用文字标签检索图像,或者用图像检索文字标签。半配对是指多模态数据中只有一部分数据的配对信息是已知的,而全配对是指多模态数据中所有数据都是一一对应的。比如,微信朋友圈的图片和配文通常是一一对应的,这样的数据就是全配对多模态数据。再比如,从网页上直接获得的图片和文字,有时候因为排版原因,图片和描述图片内容的文字段落并不是紧挨着的,这样获得的数据无法预先判断哪些文字是描述这张图片的,属于丢失了配对信息。当一个多模态数据库中,一部分数据丢失配对信息时,就称为半配对多模态数据。半配对多模态数据哈希编码就是将半配对数据的实数特征向量转化成二进制向量。
请参见图1,图1是本发明实施例提供的一种半配对多模态数据哈希编码方法的流程图。本实施例的半配对多模态数据哈希编码方法包括:
S1:获得半配对多模态数据的图像信息矩阵和文字信息矩阵;
进一步地,所述S1包括:
S11:对原始的半配对多模态数据进行预处理,获取所述半配对多模态数据中的图像数据的配对信息矩阵Xp和图像数据的未配对信息矩阵Xu。
获取所述半配对多模态数据中的图像数据{x1,…,xi,…,xn}T,其中,n为数据量,x1,…,xi,…,xn均为dx维的行向量,T表示转置;获取所述图像数据中配对信息已知的np个行向量,组成所述图像数据的配对信息矩阵Xp;获取所述图像数据中配对信息未知的n-np个行向量,组成所述图像数据的未配对信息矩阵Xu。
S12:获取所述半配对多模态数据中的文字数据的配对信息矩阵Yp和文字数据的未配对信息矩阵Yu。
获取所述半配对多模态数据中的文字数据{y1,…,yi,…,yn}T,其中,n为数据量,y1,…,yi,…,yn均为dy维的行向量;获取所述文字数据中配对信息已知的np个行向量,组成所述文字数据的配对信息矩阵Yp;获取所述图像数据中配对信息未知的n-np个行向量,组成所述文字数据的未配对信息矩阵Yu。
在本实施例中,设{x1,…,xi,…,xn}T和{y1,…,yi,…,yn}T为一个半配对多模态数据集中的两个单模态数据矩阵,用{x1,…,xi,…,xn}T代表图像数据,用{y1,…,yi,…,yn}T代表文字数据。假设总共有n个数据,即i=1,…,n,其中,前np(np<n)个数据的配对信息是已知的,其余的配对信息是未知的。xi是一个dx维的行向量,前np个xi可以组成一个np×dx的矩阵记为Xp,Xp的第i行为xi,即,Xp表示所述半配对多模态数据中的图像数据的配对信息矩阵。类似地,yi是一个dy维的行向量,前np个yi可以组成np×dy的矩阵记为Yp,Yp的第i行为yi,即,Yp表示所述半配对多模态数据中的文字数据的配对信息矩阵。第np+1到第n个xi可以组成一个(n-np)×dx的矩阵记为Xu,即,Xu表示所述半配对多模态数据中的图像数据的未配对信息矩阵。类似地,第np+1到第n个yi可以组成一个(n-np)×dy的矩阵记为Yu,即,Yu表示所述半配对多模态数据中的文字数据的未配对信息矩阵。
S2:构建将图像映射到文字空间的第一神经网络和将文字映射到图像空间的第二神经网络并分别从所述第一神经网络和所述第二神经网络中选取一个编码层;
本实施例方法求哈希编码的是通过训练两个神经网络实现的,神经网络可以看做一个多层的函数,包括一个输入层、一个或多个隐藏层以及一个输出层。输入层的输入是数据,每个隐藏层的输入是上一层的输出,输出层处于神经网络末端,它的输入是最后一个隐藏层的输出,它的输出是该神经网络的输出。例如,f=(2x1+x2)16这个函数可以用一个四层的神经网络表示:f=(((x1+x2)2)2)2,输入层的输入是x1,x2,参数是2,1,输出是(2x1+x2)2,第一个隐藏层的输入是(2x1+x2)2,参数是1,输出是(2x1+x2)4,第二个隐藏层的输入是(2x1+x2)4,参数是1,输出是(2x1+x2)8,输出层的输入是(2x1+x2)8,参数是1,输出是(2x1+x2)16。
进一步地,所述S2包括:
S21:构建用于将图像数据映射到文字空间的第一神经网络fx:
S22:构建用于将文字数据映射到图像空间的第二神经网络fy:
请参见图2,图2是本发明实施例提供的一种神经网络的结构示意图。本实施例的神经网络包括用于将图像数据映射到文字空间的第一神经网络fx和用于将文字数据映射到图像空间的第二神经网络fy。两个神经网络的结构是对称的。例如,第一神经网络fx第一层的输入维度是dx,输出维度是d1,第二层输入维度是d1,输出维度为d2,第L层输入维度为dL-1,输出维度为dy。对应地,第二神经网络fy第一层与第一神经网络fx的第L层对称,输入维度是dy,输出维度是dL-1,第二神经网络fy的第L-1层与第一神经网络fx的第二层对称,输入维度是d2,输出维度是d1,第二神经网络fy的第L层与第一神经网络fx的第一层对称,输入维度是d1,输出维度是dx,其中,表示属于dl-1×dl的实数空间,即,是一个行数为dl-1,列数为dl的实数矩阵。
第二神经网络fy第l层的函数为:
S23:选取所述第一神经网络fx的第h层作为第一编码层,选取所述第二神经网络fy的第L-h+1层作为第二编码层,其中,dh=dL-h+1=c,dh为所述第一编码层的维度,dL-h+1为所述第二编码层的维度,c是最终获得的哈希编码的长度,如果将数据编码成128维的二进制向量,则c=128。
本实施例的多模态数据有图像和文字两个模态,该方法的神经网络包括一个把图像映射到文字空间的神经网络fx,和一个把文字映射到图像空间的神经网络fy。在这两个神经网络中各挑选一层,作为哈希编码的输出层。具体地,选取所述第一神经网络fx的第h层作为第一编码层,选取所述第二神经网络fy的第L-h+1层作为第二编码层。
S3:利用所述编码层建立目标函数;
所述目标函数的表达式为:
其中,表示第一神经网络fx的参数集合,表示第二神经网络fy的参数集合,为fx输入为Xp时所述第一编码层的输出,为fy输入为Yp时所述第二编码层的输出,为fx输入为Xu时所述第一编码层的输出,为fy输入为Yu时所述第二编码层的输出,T表示转置,-1表示矩阵求逆,||·||F表示计算矩阵F范数,det(·)表示求矩阵行列式,α为常数,Bu为未配对数据Xu和Yu的哈希编码矩阵,Bp为配对数据Xp和Yp的哈希编码矩阵,fx(Xp)表示所述第一神经网络fx的输入为Xp时的输出,fy(Xp)表示所述第二神经网络fy的输入为Xp时的输出,V表示变换矩阵。
具体地,步骤S3包括:
S31:根据所述第一神经网络和所述第二神经网络建立配对数据的最小化模型:
请参见图3,图3是本发明实施例提供的一种配对数据的编码原理示意图。在图2中,图像被表示为一个三维的实数向量,文字被表示为一个一维的实数向量,哈希编码方法的目的是求一个二维的二进制向量作为图像和文字共同的哈希编码。图3给出了一个三层的编码网络,图像数据(以圆圈表示)位于三维空间中,通过第一神经网络fx的输入层先映射到编码空间,再通过输出层映射到文字空间(fx的输出)。文字数据(以三角表示)位于一维空间中,通过第二神经网络fy的输入层先映射到编码空间,再映射到图像空间(fy的输出)。由于该文字和图像是配对的,希望通过调整神经网络的参数让三个空间中的三角和圆圈尽可能的接近,即数据配对,其映射也配对。神经网络参数求解完毕之后,直接对编码空间的向量进行量化得到(1,0)作为这一对图像和文字共同的哈希编码。
在本实施例中,配对数据的编码过程可以通过上述配对数据的最小化模型来进行计算。
S32:根据所述第一神经网络和所述第二神经网络建立未配对数据的最小化模型:
请参见图4,图4是本发明实施例提供的一种未配对数据的编码原理示意图。由于此时配对信息是未知的,不清楚数据映射到编码空间时该与哪个数据接近。如图4所示,有两个图像数据和两个文字数据,其真实的配对情况是1对应1,2对应2。但这一信息在神经网络参数计算时是未知的,因此神经网络将数据映射到编码空间时出现了错误配对,属于第1对的文字跟属于第2对的图像映射结果接近,属于第2对的文字跟属于第1对的图像映射结果接近。四舍五入量化之后,第1对的图像和文字分别编码为(0,1)和(1,0),用这样的编码检索时,就会出现错误。
本发明的做法是在编码空间中引入一个二维矩阵,对文字在编码空间的映射的位置进行变换,让其配对正确,请参见图5,图5是本发明实施例提供的一种未配对数据的编码空间输出配对原理示意图。在图5中,该二维矩阵为通过对文字映射的坐标点乘以一个转换矩阵,使其配对正确,即:
在本实施例中,未配对数据的编码过程可以通过上述未配对数据的最小化模型来进行计算。
S33:建立多样正则化的最小化模型:
多样化正则是为了避免神经网络在编码空间将不同数据映射到一起的问题,通过加入所述多样正则化的最小化模型,可以有效地避免这一问题。
S34:根据所述配对数据的最小化模型、所述未配对数据的最小化模型和所述多样正则化的最小化模型共同建立所述目标函数。
具体地,最终的目标函数就是将所述配对数据的最小化模型、所述未配对数据的最小化模型和所述多样正则化的最小化模型加在一起,随后利用梯度下降法进行最小化。
S4:根据所述目标函数训练所述第一神经网络和所述第二神经网络,获得所述半配对多模态数据的哈希编码矩阵。
具体地,所述S4包括:
其中,Δt表示学习速率,在本实施例中,Δt=0.01;
S44:更新所述变换矩阵V:
具体地,计算所述目标函数E关于变换矩阵V的偏导数:
S45:更新Bu和Bp;
具体地,计算所述目标函数E关于Bu的偏导数:
令目标函数E关于Bu的偏导数的值为零,获取B’u的值:
S452:利用符号函数Bu=sign(B’u)对B’u进行量化,获得量化后的Bu的值;
具体地,对于Bu中大于0的元素,赋值为1;对于Bu中小于等于0的元素,赋值为-1。
接着,计算所述目标函数E关于Bp的偏导数:
令目标函数E关于Bp的偏导数的值为零,获取B’p的值:
S454:利用符号函数Bp=sign(B’p)对B’p进行量化,获得量化后的Bp的值。
具体地,对于Bp中大于0的元素,赋值为1;对于Bp中小于等于0的元素,赋值为-1。
S46:令所述迭代次数q加1,并判断当前迭代计算次数q与预设的最大迭代次数Q的大小,若q<Q,则返回S42继续进行迭代计算,若q=Q,则停止迭代,获得Bu和Bp的最终值;
S47:根据所述Bu和Bp的最终值获得所述编码矩阵。
以下采用MAP(mean Average Precision,平均准确率)值来评估本发明实施例的半配对多模态数据哈希编码方法的检索正确率。
首先,给定一个检索样本集合,此处使用Wiki数据集,Wiki数据集包含2866个多媒体文档,其中,每幅图像由128维SIFT表示,每个文本由10维LDA表示。在该数据集中,使用75%的数据对作为训练集,其余25%作为测试集。训练集中10%的配对信息是已知的,其余90%的配对信息是未知的。针对Wiki数据集,表1给出具体的神经网络结构参数。
表1神经网络的结构参数
层数L=5 | 维度 |
l=1 | d<sub>1</sub>=256 |
l=2 | d<sub>2</sub>=128 |
l=3(编码层) | d<sub>3</sub>=c |
l=4 | d<sub>4</sub>=10 |
l=5 | d<sub>5</sub>=20 |
检索效果用前50个检索结果的MAP评价。MAP计算流程如下:
首先,计算每一个测试数据检索的准确率(AP):
其中,N表示检索样本集中的样本总数,P(r)表示前r个检索结果的准确度,若第r个检索得到的样本与查询样本相关,则δ(r)=1,否则δ(r)=0。所有样本的AP值的平均值即MAP,MAP的值越大,表明检索结果越精确。
表2给出了本发明实施例的方法与现有技术的SPDH方法和SPH方法的平均检索准确率的对比效果。从表2可以看出,相比于现有技术的SPDH方法和SPH方法,本发明实施例的方法获得的MAP较高,说明本方法能够有效提高数据的检索精度。
表2本发明实施例的方法与现有技术的SPDH方法和SPH方法的平均检索准确率的对比效果
综上,本实施例的半配对多模态数据哈希编码方法,采用深度神经网络,相比于现有的浅层模型方法具有更好的非线性拟合能力,并且本发明的方法还包括多样性正则过程,可以提高生成哈希编码的多样性,避免最后输出的编码太过接近而无法区分。对于规模大且结构复杂的多模态数据,本实施例的半配对多模态数据哈希编码方法在检索精度上优于浅层模型生成的哈希编码。
实施例二
本实施例的目的是提供一种计算机***。
一种计算机***,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现:
获得半配对多模态数据的图像信息矩阵和文字信息矩阵;
构建将图像映射到文字空间的第一神经网络和将文字映射到图像空间的第二神经网络并分别所述第一神经网络和所述第二神经网络中选取编码层;
利用所述编码层建立目标函数;
根据所述目标函数训练所述神经网络,获得所述半配对多模态数据的哈希编码矩阵。
实施例三
本实施例的目的是提供一种计算机可读存储介质。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时执行以下步骤:
获得半配对多模态数据的图像信息矩阵和文字信息矩阵;
构建将图像映射到文字空间的第一神经网络和将文字映射到图像空间的第二神经网络并分别所述第一神经网络和所述第二神经网络中选取编码层;
利用所述编码层建立目标函数;
根据所述目标函数训练所述神经网络,获得所述半配对多模态数据的哈希编码矩阵。
以上实施例二和实施例三中涉及的各步骤与方法实施例一相对应,具体实施方式可参见实施例一的相关说明部分。术语“计算机可读存储介质”应该理解为包括一个或多个指令集的单个介质或多个介质;还应当被理解为包括任何介质,所述任何介质能够存储、编码或承载用于由处理器执行的指令集并使处理器执行本发明中的任一方法。例如,本实施例的计算机可读存储介质包括U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (8)
1.一种半配对多模态数据哈希编码方法,其特征在于,包括:
S1:获得半配对多模态数据的图像信息矩阵和文字信息矩阵;
S2:构建将图像映射到文字空间的第一神经网络和将文字映射到图像空间的第二神经网络并分别从所述第一神经网络和所述第二神经网络中选取一个编码层;
S3:利用所述编码层建立目标函数;
S4:根据所述目标函数训练所述第一神经网络和所述第二神经网络,获得所述半配对多模态数据的哈希编码矩阵,其中,
所述S2包括:
S21:构建用于将图像数据映射到文字空间的第一神经网络fx:
S22:构建用于将文字数据映射到图像空间的第二神经网络fy:
S23:选取所述第一神经网络fx的第h层作为第一编码层,选取所述第二神经网络fy的第L-h+1层作为第二编码层,其中,dh=dL-h+1,dh为所述第一编码层的维度,dL-h+1为所述第二编码层的维度;
所述目标函数的表达式为:
2.根据权利要求1所述的半配对多模态数据哈希编码方法,其特征在于,所述S1包括:
S11:获取所述半配对多模态数据中的图像数据的配对信息矩阵Xp以及图像数据的未配对信息矩阵Xu;
S12:获取所述半配对多模态数据中的文字数据的配对信息矩阵Yp和文字数据的未配对信息矩阵Yu。
3.根据权利要求2所述的半配对多模态数据哈希编码方法,其特征在于,所述S11包括:
S111:获取所述半配对多模态数据中的图像数据{x1,...,xi,...,xn}T,其中,n表示数据量,x1,...,xi,...,xn均为dx维的行向量,T表示转置;
S112:获取所述图像数据中配对信息已知的np个行向量,组成所述图像数据的配对信息矩阵Xp;
S113:获取所述图像数据中配对信息未知的n-np个行向量,组成所述图像数据的未配对信息矩阵Xu。
4.根据权利要求2所述的半配对多模态数据哈希编码方法,其特征在于,所述S12包括:
S121:获取所述半配对多模态数据中的文字数据{y1,...,yi,...,yn}T,其中,n为数据量,y1,...,yi,...,yn均为dy维的行向量;
S122:获取所述文字数据中配对信息已知的np个行向量,组成所述文字数据的配对信息矩阵Yp;
S123:获取所述文字数据中配对信息未知的n-np个行向量,组成所述文字数据的未配对信息矩阵Yu。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910951066.1A CN110750660B (zh) | 2019-10-08 | 2019-10-08 | 一种半配对多模态数据哈希编码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910951066.1A CN110750660B (zh) | 2019-10-08 | 2019-10-08 | 一种半配对多模态数据哈希编码方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110750660A CN110750660A (zh) | 2020-02-04 |
CN110750660B true CN110750660B (zh) | 2023-03-10 |
Family
ID=69277727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910951066.1A Active CN110750660B (zh) | 2019-10-08 | 2019-10-08 | 一种半配对多模态数据哈希编码方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110750660B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346440A (zh) * | 2014-10-10 | 2015-02-11 | 浙江大学 | 一种基于神经网络的跨媒体哈希索引方法 |
CN106886601A (zh) * | 2017-03-02 | 2017-06-23 | 大连理工大学 | 一种基于子空间混合超图学习的交叉模态检索算法 |
CN109299216A (zh) * | 2018-10-29 | 2019-02-01 | 山东师范大学 | 一种融合监督信息的跨模态哈希检索方法和*** |
CN109857892A (zh) * | 2018-12-29 | 2019-06-07 | 西安电子科技大学 | 基于类标传递的半监督跨模态哈希检索方法 |
-
2019
- 2019-10-08 CN CN201910951066.1A patent/CN110750660B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346440A (zh) * | 2014-10-10 | 2015-02-11 | 浙江大学 | 一种基于神经网络的跨媒体哈希索引方法 |
CN106886601A (zh) * | 2017-03-02 | 2017-06-23 | 大连理工大学 | 一种基于子空间混合超图学习的交叉模态检索算法 |
CN109299216A (zh) * | 2018-10-29 | 2019-02-01 | 山东师范大学 | 一种融合监督信息的跨模态哈希检索方法和*** |
CN109857892A (zh) * | 2018-12-29 | 2019-06-07 | 西安电子科技大学 | 基于类标传递的半监督跨模态哈希检索方法 |
Non-Patent Citations (4)
Title |
---|
Deep Visual-Semantic Hashing for cross-modal retrieval;Yue Cao等;《ACM》;20160813;第1445-1454页 * |
Dual Deep Neural networks Cross-Modal Hashing;Zhen-Duo Chen等;《Proceedings of the AAAI Conference on Artificial Intelligence》;20180425;第32卷(第1期);第274-281页 * |
基于深度哈希算法的图像—文本跨模态检索研究;姚伟娜;《中国优秀硕士学位论文全文数据库信息科技辑》;20190115(第01期);第I138-5069页 * |
大规模多模态多标签数据哈希方法研究;杨冠群;《中国优秀硕士学位论文全文数据库信息科技辑》;20170915(第09期);第I138-358页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110750660A (zh) | 2020-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110059198B (zh) | 一种基于相似性保持的跨模态数据的离散哈希检索方法 | |
CN109918532B (zh) | 图像检索方法、装置、设备及计算机可读存储介质 | |
CN106777318B (zh) | 基于协同训练的矩阵分解跨模态哈希检索方法 | |
US20190385001A1 (en) | Data extraction using neural networks | |
CN110929515A (zh) | 基于协同注意力和自适应调整的阅读理解方法及*** | |
CN110837846A (zh) | 一种图像识别模型的构建方法、图像识别方法及装置 | |
CN105160312A (zh) | 基于人脸相似度匹配的明星脸装扮推荐方法 | |
CN107194378B (zh) | 一种基于混合字典学习的人脸识别方法及装置 | |
CN104268140B (zh) | 基于权重自学习超图和多元信息融合的图像检索方法 | |
CN111950728B (zh) | 图像特征提取模型的构建方法、图像检索方法及存储介质 | |
CN112949740B (zh) | 一种基于多级度量的小样本图像分类方法 | |
CN110555399A (zh) | 手指静脉识别方法、装置、计算机设备及可读存储介质 | |
CN110347857B (zh) | 基于强化学习的遥感影像的语义标注方法 | |
CN109934239B (zh) | 图像特征提取方法 | |
CN111274424B (zh) | 一种零样本图像检索的语义增强哈希方法 | |
CN112686134B (zh) | 手写识别方法、装置、电子设备和存储介质 | |
CN114357193A (zh) | 一种知识图谱实体对齐方法、***、设备与存储介质 | |
CN109472282B (zh) | 一种基于极少训练样本的深度图像哈希方法 | |
CN114969260A (zh) | 一种联合试题分类与评分学习的主观题自动评阅深度学习方法 | |
CN115062134A (zh) | 知识问答模型训练及知识问答方法、装置和计算机设备 | |
CN114022687B (zh) | 一种基于增强学习的图像描述对抗生成方法 | |
CN114663880A (zh) | 基于多层级跨模态自注意力机制的三维目标检测方法 | |
CN116740069B (zh) | 基于多尺度显著信息和双向特征融合的表面缺陷检测方法 | |
CN110750660B (zh) | 一种半配对多模态数据哈希编码方法 | |
CN116152575B (zh) | 基于类激活采样引导的弱监督目标定位方法、装置和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |