本发明属于多模态的信息检索领域,主要是涉及到大规模、多模态数据的跨模态哈希检索。
背景技术:
随着近些年来互联网技术的飞速发展,带来了信息生活的极大丰富,文本、图片、视频、音频等等围绕在生活各处,当然随之而来的是多媒体数据的爆炸性增长。但是爆炸性的数据也带来了很多问题,最直接的就是数据的检索问题。由于数据自身的规模和数量的庞大,信息检索任务变得复杂繁冗,而且效率低下。哈希方法可以很好的解决这方面的问题,哈希方法的原理是将原始数据映射到一个汉明空间中,将原始数据用哈希码(0,1字符串)表示,然后根据不同数据点在汉明空间中的距离,即两个哈希码之间的汉明距离来判断它们之间的相似度的高低。早期,哈希方法多用于单模态数据检索的任务中,它可以较好的解决单模态内语义间隙的问题。
对于多模态数据的跨模态信息检索而言,它还有着不同模态之间的语义鸿沟问题。传统的跨模态哈希方法是面向无监督的,将多模态数据从不同的异构空间中映射到一个公共空间中,并且同时考虑到模态内和模态间的一致性,使它们在公共空间中的哈希码仍保持在原来的空间中的相似性。主要有两类无监督的多模态哈希方法,一是基于图的方法来构造相似性图以希望哈希码保持之前的相似性,但是构造相似性图会大大提高方法的复杂性。二是通过寻找潜在的语义空间来保持数据之间的相似性。
利用原始数据点的语义标签获得它们的相似性关系的有监督跨模态哈希方法已经被证明比无监督跨模态哈希方法有着更好的准确性。最常用的方法是利用语义标签来保持数据点之间的成对相似性,或者通过语义标签向量来构造数据点之间的相似度矩阵。然而这类方法通常会导致相对高的时间复杂度,同时它只考虑了数据点之间单个的相似性,而没有利用到语义标签信息中含有的类别或属性信息,而这类信息的丢失往往会导致检索的准确率降低。
技术实现要素:
针对上述现有技术中存在的诸多问题,本发明提出一种融合有监督信息的基于矩阵分解的跨模态哈希检索方法,能够很好的解决大规模检索时的时间效率问题和跨模态检索时不同模态之间的语义鸿沟问题,从而能够实现快速的跨模态检索,并有效的提高检索的准确率。
本发明为了解决技术问题采用如下技术方案:
本发明一种融合有监督信息的基于矩阵分解的跨模态哈希检索方法的特点是按如下步骤进行:
步骤1、获取n个图像-文本对及其相对应的语义类别l,并对任意第i个图像和第i个文本进行特征化处理,得到第i个图像的特征向量
步骤2、将n个图像或文本的特征矩阵x(t)分解为映射转换矩阵ut和潜在的图像或文本的语义特征矩阵vt之间乘积,并利用n个图像-文本对的语义类别矩阵l对语义特征矩阵vt进行约束,从而通过式(1)得到矩阵分解的目标函数fmf:
式(1)中,z是约束的辅助矩阵,且zl=v=v1=v2,v表示潜在的语义特征矩阵,v1表示潜在的图像的语义特征矩阵,v2表示潜在的文本的语义特征矩阵;λ1和λ2是平衡参数,用于控制相应项的权重,且λ1 λ2=1;
步骤3、利用式(2)得到第i个图像-文本对和第j个图像-文本对的模态间相似性矩阵acij:
式(2)中,li表示第i个图像-文本对的语义类别,lj表示第j个图像-文本对的语义类别,i,j=1,2,…,n;
步骤4、利用式(3)得到第i个图像和第j个图像,或第i个文本和第j个文本的相似性矩阵
式(3)中,nk(·)表示k近邻的集合,
步骤5、利用式(4)得到相似度约束的目标函数fsim:
fsim=tr(vsvt)(4)
式(4)中,tr(·)表示矩阵的迹,s表示拉普拉斯矩阵,且s=d-w,d表示对角矩阵,且
步骤6、根据式(5)所示的两个哈希函数,将图像和文本模态分别通过一个线性投影映射到公共潜在语义空间:
式(5)中,p1表示图像模态特征空间到公共潜在语义空间的映射矩阵,p2表示文本模态特征空间到公共潜在语义空间的映射矩阵;x(1)表示n个图像的特征矩阵;x(2)表示n个文本的特征矩阵;
步骤7、利用式(6)得到从原始数据特征空间到公共潜在语义空间映射的目标函数fmap:
步骤8、利用式(7)建立总体目标函数fo:
式(7)中,α,β和γ是控制各自项的权重的平衡参数;r(·)是正则化项;
步骤9、总体目标函数fo中的参数不断交替迭代更新,直到总体目标函数fo收敛或者达到迭代次数;
步骤10、根据式(15)得到n个图像-文本对的哈希码h:
h=sgn(v)(8)
式(8)中,sgn(·)为符号函数;
步骤11、根据所述哈希码h,在n个图像-文本对中对检索任务q进行检索,从而得到跨模态检索结果result。
本发明所述的跨模态哈希检索方法的特点也在于,所述步骤9按如下过程进行:
步骤9.1、固定u2,zl,p1,p2的值不变,令
式(9)中,e是单位矩阵;
步骤9.2、固定u1,zl,p1,p2的值不变,令
步骤9.3、固定u1,u2,p1,p2的值不变,令
z=b-1c[l(e s)lt]-1(11)
式(11)中,b,c表示中间变量,并有:
b=λ1u1tu1 λ2u2tu2 (2α γ β)e(12)
c=λ1u1tx(1)lt λ2u2tx(2)lt α(p1x(1)lt p2x(2)lt)(13)
步骤9.4、固定u1,u2,zl,p2的值不变,令
步骤9.5、固定u1,u2,zl,p1的值不变,令
所述步骤11按如下过程进行:
步骤11.1、判断所述检索任务q是否是n个图像-文本对中的任意一个图像或者文本,若是,则直接从哈希码h中找到其对应的哈希码hq',并转到步骤11.2;否则,转到步骤11.1.1;
步骤11.1.1、判断所述检索任务q是否是图像,若是,则采用图像处理的方法提取所述检索任务q的图像特征向量xqi,再利用式(16)得到所述检索任务q的哈希码hq”后,转到步骤11.2;否则,转到步骤11.1.2;
hq”=sgn(p1·xqi)(16)
步骤11.1.2、用文本处理的方法提取所述检索任务q的文本特征向量xqt,再利用式(17)得到所述检索任务q的哈希码hq”'后,转到步骤11.2;
hq”'=sgn(p2·xqt)(17)
步骤11.2、将所述检索任务q的哈希码hq'或hq”或者hq”'赋值给hq,将hq和任意第m个哈希码hm进行异或运算,得到的结果中“1”的个数即为两者之间的汉明距离;其中hm∈h,m∈[1,n];
步骤11.3、判断所述检索任务q是否是n个图像-文本对中的任意一个图像或者文本,若是,则返回汉明距离的第二小的搜索项hresult';否则,返回汉明距离最小的搜索项hresult”;
步骤11.4、将返回的搜索项hresult'或hresult”赋值给hresult,根据检索要求,将hresult所对应的图片或文本作为所述检索任务q的跨模态检索结果result。
与现有技术相比,本发明的有益效果在于:
1.本发明通过矩阵分解将各模态的特征数据映射到同一个潜在语义空间中,将数据的语义标签信息以及各模态内部特征数据的相似度结合起来,以保持原始空间中的相似性,可以更有效的利用语义标签中的类别或属性信息,从而能很好的提高跨模态检索的准确率。
2.本发明利用矩阵分解的方法来寻找潜在的公共语义空间;矩阵分解在关系学习方面有着不俗的表现,从潜在语义空间对原始数据进行分析寻找、学习相应的关系;矩阵分解方法具有复杂度低,效率高的特点。
3.本发明利用原始数据模态内和模态间的相似性关系作为数据在潜在公共语义空间中的表示的约束,使数据点在公共语义空间中的表示保持了原始空间中的关联关系,更好的保留了数据的原始关系,从而提高了检索的准确性。
4.本发明同时利用了标签信息中的类别信息,将语义标签作为一个约束,而不仅仅用来计算相似度,这样能够有效的提高跨模态检索的准确性。
附图说明
图1为本发明方法总体流程图。
具体实施方式
本实施例中,如图1所示,一种融合有监督信息的基于矩阵分解的跨模态哈希检索方法,是将多模态数据放到同一个语义空间中并尽可能的保持数据在原始空间中的信息,然后在同一个语义空间中进行检索任务,具体的说,是按如下步骤进行:
步骤1、获取n个图像-文本对及其相对应的语义类别l,并对任意第i个图像和第i个文本进行特征化处理,得到第i个图像的特征向量
步骤2、为了将原始的特征数据从两个异构的空间中映射到同一个潜在语义空间中,从而能更好的分析它们之间的关系以利于进行检索,将n个图像或文本的特征矩阵x(t)分解为映射转换矩阵ut和潜在的图像或文本的语义特征矩阵vt之间乘积,因为标签信息中的类别信息在检索时会起到积极的作用,为了使数据在公共的潜在语义表示中包含标签信息中的类别信息,有效的提高跨模态检索的准确率,利用n个图像-文本对的语义类别矩阵l对语义特征矩阵vt进行约束,从而通过式(1)得到矩阵分解的目标函数fmf:
式(1)中,z是约束的辅助矩阵,且zl=v=v1=v2,v表示潜在的语义特征矩阵,v1表示潜在的图像的语义特征矩阵,v2表示潜在的文本的语义特征矩阵;λ1和λ2是平衡参数,用于控制相应项的权重,且λ1 λ2=1;
步骤3、因为相似性关系在检索任务中起着关键性的作用,所以要建模原始空间中数据之间的相似性关系,首先是模态间的相似性,模态间的相似性由标签信息建模,利用式(2)得到第i个图像-文本对和第j个图像-文本对的模态间相似性矩阵acij:
式(2)中,li表示第i个图像-文本对的语义类别,lj表示第j个图像-文本对的语义类别,i,j=1,2,…,n;
步骤4、然后是各模态内的相似性,模态内的相似性由原始空间中的特征向量之间的相似度建模,利用式(3)得到第i个图像和第j个图像,或第i个文本和第j个文本的相似性矩阵
式(3)中,nk(·)表示k近邻的集合,
步骤5、为了在公共潜在语义空间中保持模态内部和模态间的相似性,利用式(4)得到相似
度约束的目标函数fsim:
式(4)中,vi和vj分别表示数据点i和j在公共的潜在语义空间中的表示,tr(·)表示矩阵的迹,s表示拉普拉斯矩阵,且s=d-w,d表示对角矩阵,且
步骤6、因为检索中可能会出现不在已有的n个图像-文本对中的任务,所以还要学习到图像和文本各自模态到公共的语义空间的哈希函数,那些不曾出现过的检索任务就可以通过哈希函数映射到公共的语义空间中,根据式(5)所示的两个哈希函数,将图像和文本模态分别通过一个线性投影映射到公共潜在语义空间:
式(5)中,p1表示图像模态特征空间到公共潜在语义空间的映射矩阵,p2表示文本模态特征空间到公共潜在语义空间的映射矩阵;x(1)表示n个图像的特征矩阵;x(2)表示n个文本的特征矩阵;
步骤7、利用式(6)得到从原始数据特征空间到公共潜在语义空间映射的目标函数fmap:
步骤8、综合矩阵分解的目标函数fmf、相似度约束的目标函数fsim和线性映射的目标函数fmap,利用式(7)建立总体目标函数fo:
式(7)中,α,β和γ是控制各自项的权重的平衡参数;r*是正则化项;
步骤9、因为总体目标函数是非凸函数,不能直接进行梯度下降优化,所以采用交替迭代更新的方法。固定其中某些参数的值不变,更新另外一个参数,总体目标函数fo中的参数按照步骤9.1到步骤9.5不断交替迭代更新,直到总体目标函数fo收敛或者达到迭代次数:
步骤9.1、固定u2,zl,p1,p2的值不变,令
式(8)中,e是单位矩阵;
步骤9.2、固定u1,zl,p1,p2的值不变,令
步骤9.3、固定u1,u2,p1,p2的值不变,令
z=b-1c[l(e s)lt]-1(10)
式(10)中,b,c表示中间变量,并有:
b=λ1u1tu1 λ2u2tu2 (2α γ β)e(11)
c=λ1u1tx(1)lt λ2u2tx(2)lt α(p1x(1)lt p2x(2)lt)(12)
步骤9.4、固定u1,u2,zl,p2的值不变,令
步骤9.5、固定u1,u2,zl,p1的值不变,令
步骤10、根据式(15)得到n个图像-文本对的哈希码h:
h=sgn(v)(15)
式(15)中,sgn(·)为符号函数;
步骤11、根据哈希码h,在n个图像-文本对中对检索任务q进行检索,有如下检索步骤:
步骤11.1、判断检索任务q是否是n个图像-文本对中的任意一个图像或者文本,若是,则直接从哈希码h中找到其对应的哈希码hq',并转到步骤11.2;否则,转到步骤11.1.1;
步骤11.1.1、判断检索任务q是否是图像,若是,则采用图像处理的方法提取检索任务q的图像特征向量xqi,再利用式(16)得到检索任务q的哈希码hq”后,转到步骤11.2;否则,转到步骤11.1.2;
hq”=sgn(p1·xqi)(16)
步骤11.1.2、用文本处理的方法提取检索任务q的文本特征向量xqt,再利用式(17)得到检索任务q的哈希码hq”'后,转到步骤11.2;
hq”'=sgn(p2·xqt)(17)
步骤11.2、将检索任务q的哈希码hq'或hq”或者hq”'赋值给hq,将hq和任意第m个哈希码hm进行异或运算,得到的结果中“1”的个数即为两者之间的汉明距离;其中hm∈h,m∈[1,n];
步骤11.3、判断检索任务q是否是n个图像-文本对中的任意一个图像或者文本,若是,则返回汉明距离的第二小的搜索项hresult';否则,返回汉明距离最小的搜索项hresult”;
步骤11.4、将返回的搜索项hresult'或hresult”赋值给hresult,根据检索要求,将hresult所对应的图片或文本作为检索任务q的跨模态检索结果result。
1.一种融合有监督信息的基于矩阵分解的跨模态哈希检索方法,其特征是按如下步骤进行:
步骤1、获取n个图像-文本对及其相对应的语义类别l,并对任意第i个图像和第i个文本进行特征化处理,得到第i个图像的特征向量
步骤2、将n个图像或文本的特征矩阵x(t)分解为映射转换矩阵ut和潜在的图像或文本的语义特征矩阵vt之间乘积,并利用n个图像-文本对的语义类别矩阵l对语义特征矩阵vt进行约束,从而通过式(1)得到矩阵分解的目标函数fmf:
式(1)中,z是约束的辅助矩阵,且zl=v=v1=v2,v表示潜在的语义特征矩阵,v1表示潜在的图像的语义特征矩阵,v2表示潜在的文本的语义特征矩阵;λ1和λ2是平衡参数,用于控制相应项的权重,且λ1 λ2=1;
步骤3、利用式(2)得到第i个图像-文本对和第j个图像-文本对的模态间相似性矩阵acij:
式(2)中,li表示第i个图像-文本对的语义类别,lj表示第j个图像-文本对的语义类别,i,j=1,2,…,n;
步骤4、利用式(3)得到第i个图像和第j个图像,或第i个文本和第j个文本的相似性矩阵
式(3)中,nk(·)表示k近邻的集合,
步骤5、利用式(4)得到相似度约束的目标函数fsim:
fsim=tr(vsvt)(4)
式(4)中,tr(·)表示矩阵的迹,s表示拉普拉斯矩阵,且s=d-w,d表示对角矩阵,且
步骤6、根据式(5)所示的两个哈希函数,将图像和文本模态分别通过一个线性投影映射到公共潜在语义空间:
式(5)中,p1表示图像模态特征空间到公共潜在语义空间的映射矩阵,p2表示文本模态特征空间到公共潜在语义空间的映射矩阵;x(1)表示n个图像的特征矩阵;x(2)表示n个文本的特征矩阵;
步骤7、利用式(6)得到从原始数据特征空间到公共潜在语义空间映射的目标函数fmap:
步骤8、利用式(7)建立总体目标函数fo:
式(7)中,α,β和γ是控制各自项的权重的平衡参数;r(·)是正则化项;
步骤9、总体目标函数fo中的参数不断交替迭代更新,直到总体目标函数fo收敛或者达到迭代次数;
步骤10、根据式(15)得到n个图像-文本对的哈希码h:
h=sgn(v)(8)
式(8)中,sgn(·)为符号函数;
步骤11、根据所述哈希码h,在n个图像-文本对中对检索任务q进行检索,从而得到跨模态检索结果result。
2.根据权利要求1所述的跨模态哈希检索方法,其特征是,所述步骤9按如下过程进行:
步骤9.1、固定u2,zl,p1,p2的值不变,令
式(9)中,e是单位矩阵;
步骤9.2、固定u1,zl,p1,p2的值不变,令
步骤9.3、固定u1,u2,p1,p2的值不变,令
z=b-1c[l(e s)lt]-1(11)
式(11)中,b,c表示中间变量,并有:
b=λ1u1tu1 λ2u2tu2 (2α γ β)e(12)
c=λ1u1tx(1)lt λ2u2tx(2)lt α(p1x(1)lt p2x(2)lt)(13)
步骤9.4、固定u1,u2,zl,p2的值不变,令
步骤9.5、固定u1,u2,zl,p1的值不变,令
3.根据权利要求1所述的跨模态哈希检索方法,其特征是,所述步骤11按如下过程进行:
步骤11.1、判断所述检索任务q是否是n个图像-文本对中的任意一个图像或者文本,若是,则直接从哈希码h中找到其对应的哈希码hq',并转到步骤11.2;否则,转到步骤11.1.1;
步骤11.1.1、判断所述检索任务q是否是图像,若是,则采用图像处理的方法提取所述检索任务q的图像特征向量xqi,再利用式(16)得到所述检索任务q的哈希码hq”后,转到步骤11.2;否则,转到步骤11.1.2;
hq”=sgn(p1·xqi)(16)
步骤11.1.2、用文本处理的方法提取所述检索任务q的文本特征向量xqt,再利用式(17)得到所述检索任务q的哈希码hq”'后,转到步骤11.2;
hq”'=sgn(p2·xqt)(17)
步骤11.2、将所述检索任务q的哈希码hq'或hq”或者hq”'赋值给hq,将hq和任意第m个哈希码hm进行异或运算,得到的结果中“1”的个数即为两者之间的汉明距离;其中hm∈h,m∈[1,n];
步骤11.3、判断所述检索任务q是否是n个图像-文本对中的任意一个图像或者文本,若是,则返回汉明距离的第二小的搜索项hresult';否则,返回汉明距离最小的搜索项hresult”;
步骤11.4、将返回的搜索项hresult'或hresult”赋值给hresult,根据检索要求,将hresult所对应的图片或文本作为所述检索任务q的跨模态检索结果result。
技术总结