可左右滑动选省市

一种基于相似性零样本哈希的跨模态检索方法

更新时间:2024-07-13
一种基于相似性零样本哈希的跨模态检索方法 专利申请类型:发明专利;
地区:云南-昆明;
源自:昆明高价值专利检索信息库;

专利名称:一种基于相似性零样本哈希的跨模态检索方法

专利类型:发明专利

专利申请号:CN202210696434.4

专利申请(专利权)人:昆明理工大学
权利人地址:云南省昆明市呈贡区景明南路727号

专利发明(设计)人:舒振球,永凯玲,余正涛,高盛祥,毛存礼

专利摘要:本发明公开了一种基于相似性零样本哈希的跨模态检索方法。提出了一种新的零样本哈希框架来充分挖掘监督语义信息,该框架将模态内相似性、模态间相似性、语义标签以及类属性联合起来,以指导零样本哈希码的学习。在该框架中,同时考虑了模态内相似性和模态间相似性。模态内相似性体现的是多模态数据的流形结构以及特征相似性,模态间相似性体现的是模态间的语义相关性。此外,将语义标签与类属性嵌入到哈希码中,为每个实例学习更具判别性的哈希码。然而,由于类属性的嵌入,在哈希码中可以很好地捕捉可见类和不可见类之间的关系,从而可以将属性知识从可见类转移到不可见类中。本发明实现了对零样本跨模态数据更高精度的检索。

主权利要求:
1.一种基于相似性零样本哈希的跨模态检索方法,其特征在于:所述方法的具体步骤如下:Step1、获取跨模态数据集,并进行跨模态数据集的特征提取以及类属性的提取;
Step2、跨模态数据集的处理:将现有的跨模态数据集处理为跨模态零样本数据集;
Step3、进行目标函数学习:融合模态内相似性、模态间相似性、语义标签、类属性、哈希码以及哈希函数学习到同一个框架中,以此来获得目标函数,学习更具判别性的哈希码;
Step4、进行目标函数的迭代更新:通过迭代更新Step3得到的目标函数中的变量矩阵,直到目标函数收敛或达到最大迭代次数,得到哈希函数以及训练集的哈希码;
Step5:进行零样本跨模态检索:首先得到检索集对应的哈希码,然后,通过Step4得到的哈希函数求查询集的哈希码,放入检索集中进行查询,通过计算查询集与检索集中各样本间的汉明距离来获取查询结果,汉明距离最小者即为最终的查询结果;
所述Step1中,进行类属性的提取,采用的是Glove方法为每个类别名提取一个对应的词向量,组成类属性矩阵;
所述Step3中所获得的目标函数包括哈希码学习和哈希函数两个部分,哈希码学习指的是结合模态内相似性、模态间相似性、语义标签以及类属性来学习哈希码;哈希函数的学习指的是通过最小化最小二乘回归问题来学习哈希函数,通过将哈希码学习和哈希函数学习放到同一个模型中进行学习,以此来增强哈希码与哈希函数之间的语义联系,实现高精度的零样本跨模态检索;
所述Step3中的目标函数为:
其中, 表示模型的正则化项,用
(1) (2)
于防止过拟合;γ是控制正则化项的参数,X 和X 分别为图像和文本两个模态的特征矩
11 22
阵;Y为标签矩阵;A为类属性矩阵;S 和S 分别为图像和文本两个模态的模态内相似性矩
12
阵,S 为图像和文本两个模态的模态间相似性矩阵;W1、W2、V1、V2为投影矩阵;α和β为非负参数,ns为训练样本数,B1和B2分别对应图像和文本两个模态的哈希码。
2.根据权利要求1所述的基于相似性零样本哈希的跨模态检索方法,其特征在于:所述Step2的具体方法为:原始数据集首先被划分为训练集和查询集,然后从原始数据集的所有类中随机选取20%的类作为不可见类,其余的类为可见类;对于零样本跨模态检索场景来说,将原查询集中的不可见类对应的样本对作为新的查询集;将原训练集中可见类对应的样本对作为新的训练集;检索集由原训练集组成。
3.根据权利要求1所述的基于相似性零样本哈希的跨模态检索方法,其特征在于:所述Step3中的模态内相似性分为特征相似度和语义相似度,其中特征相似度通过Euclidean相似度来计算,语义相似度通过Jaccard相似度来衡量。
4.根据权利要求1所述的基于相似性零样本哈希的跨模态检索方法,其特征在于:所述Step3中的模态间相似性指的是不同模态间各实例之间的语义相似度,该语义相似度通过标签语义信息来衡量。
5.根据权利要求1所述的基于相似性零样本哈希的跨模态检索方法,其特征在于:将所述Step4中的目标函数的迭代更新是以Step4中得到的目标函数作为原始函数来更新,显然目标函数并非是最优的,需要对该函数进行优化,由于该目标函数是一个非凸问题,但是当固定其他的变量,更新一个矩阵变量时,这时的函数是一个凸问题,方便进行目标函数的更新;采用此交替迭代算法来更新矩阵变量,直到目标函数收敛或达到最大迭代次数,最终得到最优的哈希码和哈希函数。 说明书 : 一种基于相似性零样本哈希的跨模态检索方法技术领域[0001] 本发明涉及一种基于相似性零样本哈希的跨模态检索方法,属于跨模态哈希检索领域。背景技术[0002] 大多数现有的跨模态哈希检索方法都是在可见类数据集中进行研究。然而,随着多媒体数据的爆炸式增长,大量的新概念(不可见类)涌现出来。通过收集新概念的数据来重新训练现有的跨模态哈希模型是不可行的,因为这将会耗费大量的时间和空间。因此,提出一个训练数据不包含新概念,但它仍然可以处理新概念的跨模态哈希模型是必要的。然而,零样本学习可以识别从未见过的数据类别。即训练的分类器不仅仅能够识别出训练集中已有的数据类别,还可以对于来自未见过的类别的数据进行区分。这使得零样本学习成为了不可见类检索任务的研究热点。[0003] 在过去的几年中,零样本学习广泛应用于单模态检索任务中。一些研究者通过将标签投影到词嵌入空间,来实现潜在语义转移。一些研究者提出了一种基于非对称比率相似矩阵的零样本哈希,从而提高从可见类到看不可见类的知识转移能力。另一些研究者提出了一种用于多标签图像检索的零样本学习模型,该模型用实例概念一致性排序算法来预测不可见类的数据标签。然而,上述的工作都是在单模态检索任务上做的研究,在不可见类跨模态检索任务上所做的研究还较为匮乏。在新概念不断涌现的大数据时代下,现有的跨模态检索方法还存在以下问题:(1)现有的方法只考虑了可见类数据,而忽略了不可见类数据。因此,这样的模型不适用于大数据时代下的跨模态数据检索。(2)大多数方法在哈希码学习中未使用类属性信息,这样不利于知识从可见类到不可见类的转移。(3)现有的少量零样本跨模态检索方法未能同时使用模态内相似性、模态间相似性、类标签以及类属性来训练模型。发明内容[0004] 鉴于以上存在的挑战,本发明提供了一种基于相似性零样本哈希的跨模态检索方法。本发明通过融合模态内相似性、模态间相似性、标签信息与类属性,以用于解决含有不可见类数据的跨模态检索问题。[0005] 为了实现本发明的目的,本发明所述的一种基于相似性零样本哈希的跨模态检索方法的技术方案是:本发明提出了一种新的零样本哈希框架来充分挖掘监督语义信息,该框架将模态内相似性、模态间相似性、语义标签以及类属性联合起来,以指导零样本哈希码的学习过程。在该框架中,同时考虑了模态内相似性和模态间相似性。模态内相似性体现的是模态内各样本间的特征以及语义相似性,模态间相似性体现的是模态间的语义相关性。此外,将语义标签与类属性嵌入到哈希码中,为每个实例学习到更具判别性的哈希码。然而,由于类属性的嵌入,在哈希码中可以很好地捕捉可见类和不可见类之间的关系,从而可以将监督知识从可见类转移到不可见类中。本发明包括如下步骤:[0006] Step1、获取跨模态数据集,进行跨模态数据集特征提取以及类属性向量提取;[0007] Step2、跨模态数据集的处理:将现有的跨模态数据集处理为跨模态零样本数据集;原始数据集首先被划分为训练集和查询集,然后从原始数据集的所有类中随机选取20%的类作为不可见类,其余的类为可见类。对于零样本跨模态检索场景来说,本发明将原查询集中的不可见类对应的样本对作为新的查询集;将原训练集中可见类对应的样本对作为新的训练集;检索集由原训练集组成;[0008] Step3、进行目标函数学习:融合模态内相似性、模态间相似性、语义标签、类属性、哈希码以及哈希函数学习到同一个框架中,以此来获得目标函数,学习更具判别性的哈希码;[0009] Step4、进行目标函数的迭代更新:通过迭代更新上一步得到的目标函数中的变量矩阵,直到目标函数收敛或达到最大迭代次数,得到哈希函数以及训练集的哈希码;[0010] Step5、进行零样本跨模态检索:输入查询样本,根据Step4得到的哈希函数,得到查询样本的哈希码。将查询样本的哈希码代入检索集中进行查询,由于是在一个二值空间进行查询,因此通过计算查询样本与检索集中各样本之间的汉明距离来得到查询的结果。对应着检索集中汉明距离最小的那个样本就是为我们得到的查询结果。[0011] 进一步的,所述跨模态检索数据集包括多个样本对,每个样本对包括:文本、图像和相应的语义标签。[0012] 进一步的,在所述Step1中,通过VGG‑16模型提取图像特征;通过词袋模型提取文本特征;进行类属性的提取,通过Glove方法为每个类别名提取一个对应的词向量,组成类属性矩阵。[0013] 进一步的,在所述Step2中,为了保证模型的泛化能力,每次数据进入模型进行训练时,都应该是使用随机选择方法来处理以及划分数据集。通过多次训练,取一个平均值,作为最终的结果。[0014] 所述Step3中的模态内相似性分为特征相似度和语义相似度,其中特征相似度通过Euclidean相似度来计算,语义相似度通过Jaccard相似度来衡量。[0015] 进一步的,所述Step3中的模态间相似性指的是不同模态间各实例之间的语义相似度,该语义相似度通过标签语义信息来衡量。[0016] 进一步的,所述Step3中所获得的目标函数包括哈希码学习和哈希函数两个部分,哈希码学习指的是结合模态内相似性、模态间相似性、语义标签以及类属性来学习哈希码;哈希函数的学习指的是通过最小化最小二乘回归问题来学习哈希函数,通过将哈希码学习和哈希函数学习放到同一个模型中进行学习,以此来增强哈希码与哈希函数之间的语义联系,实现高精度的零样本跨模态检索。[0017] 进一步的,将所述Step4中的目标函数的迭代更新是以Step4中得到的目标函数作为原始函数来更新。显然目标函数并非是最优的,需要对该函数进行优化。由于该目标函数是一个非凸问题,但是当固定其他的变量,更新一个矩阵变量时,这时的函数是一个凸问题,方便进行目标函数的更新。在本发明中采用此交替迭代算法来更新矩阵变量,直到目标函数收敛或达到最大迭代次数,最终得到最优的哈希码和哈希函数。[0018] 进一步的,在所述Step3中,通过基于核的监督哈希(KSH)的优化模型来建立模态内相似性、模态间相似性与哈希码的联系,以将相似性嵌入到哈希码中的方式来增强哈希码中的语义信息;通过标签重构的方式将语义标签、类属性与哈希码建立联系,在哈希码中嵌入标签,增强的是哈希码中所含的语义信息;在哈希码中嵌入类属性,要实现的是将可见类中的属性知识转移到不可见类中,以此来实现不可见类的检索。[0019] 进一步的,在所述Step4中,由于原模型是属于一个非凸问题,想要直接对它进行优化是一个困难的问题。但是固定其余的变量,只优化一个变量时,通过原模型转化的新问题就是一个凸问题,可以直接进行优化求解。以此类推,每个变量都如此优化,直到收敛或达到最大迭代次数,得到最优的结果。[0020] (1)现有的方法只考虑了可见类数据,而忽略了不可见类数据。因此,这样的模型不适用于大数据时代下的跨模态数据检索。(2)大多数方法在哈希码学习中未使用类属性信息,这样不利于知识从可见类到不可见类的转移。(3)现有的少量零样本跨模态检索方法未能同时使用模态内相似性、模态间相似性、类标签以及类属性来训练模型。[0021] 本发明的有益效果是:[0022] 本发明提出了一种基于相似性零样本哈希的跨模态检索方法。它克服了现有的大多数跨模态检索方法不能解决零样本数据的局限性。它通过同时使用模态内相似性、模态间相似性以及类属性来学习哈希码,因此,可以很好地捕捉可见类和不可见类之间的关系,从而实现将监督知识从可见类转移到不可见类中。此外,为了考虑受监督的标签信息,本发明通过将标签信息嵌入到属性空间中来提高准确性。因此,从本发明所提出的模型中可以生成更具判别性的哈希码。此外,本发明提出了一种离散优化方案来求解提出的模型,有效地避免了量化误差。附图说明[0023] 构成本发明的一部分的说明书附图用来提供对本发明的进一步理解。[0024] 图1为本发明实施例方法的流程图。[0025] 图2为本发明SAZH模型迭代更新的流程图。具体实施方式[0026] 下面的说明都是实例性的,旨在结合附图进一步说明本发明的技术方案。[0027] 实施例一[0028] 图1是本发明一种基于相似性零样本哈希的跨模态检索方法的流程图。[0029] 在本实例中,参见图1,本发明方法具体包括如下过程:[0030] 1、获取跨模态数据集,进行跨模态数据集特征提取以及类属性向量提取。在本实例中,所使用的数据集包括图像和文本两个模态,以及与之一一对应的标签。所述Step1中,进行类属性的提取,采用的是Glove方法为每个类别名提取一个对应的词向量,组成类属性矩阵。[0031] 2、跨模态数据集的处理。由于本发明所要解决的问题是零样本跨模态检索问题,因此不能直接使用获取的跨模态数据集。应该根据零样本的应用场景,对数据集进行处理,使其符合零样本跨模态检索的应用场景。具体处理方法如下:[0032] 原始数据集首先被划分为训练集和查询集,然后从原始数据集的所有类中随机选取20%的类作为不可见类,其余的类为可见类。对于零样本跨模态检索场景来说,本发明将原查询集中的不可见类对应的样本对作为新的查询集;将原训练集中可见类对应的样本对作为新的训练集;检索集由原训练集组成。[0033] 在本发明中,给定一组多模态数据为: 其中 为一个多模态数据点, 为图像模态第i个实例对应的特征向量, 为文本模态第i个实例对应的特征向量,li为两个模态第i个实例对应共同的标签向量,n为数据集的总实例数。[0034] 通过对数据集进行处理和划分,本发明用 来表示训练集的多模态数据,其中ns为训练样本数。[0035] 3、融合模态内相似性、模态间相似性、标签信息、类属性、哈希码以及哈希函数学习到同一个框架中,以此来获得目标函数,学习更具判别性的哈希码。接下来将详细描述各个模块的学习模型:[0036] 3.1、模态内相似性学习[0037] 模态内相似性分为特征相似度和语义相似度,其中特征相似度通过Euclidean相似度来计算,语义相似度通过Jaccard相似度来衡量。由于欧氏距离计算简单且体现了两个向量之间的距离,本发明采用欧氏距离作为特征相似度度量的方法。首先, 与 之间的欧式距离为: 则 与 相似度为:其中, 和 分别表示第t个模态的第i个样本和第j个样本,以及t={1,2}表示在本发明中以两个模态来进行阐述。[0038] 此外,我们用Jaccard相似度来衡量语义相似度如下:[0039][0040] 其中, 对应于第t个模态中分配给第i个实例的标签数量。一个实例的标签依赖于它的特征,语义相似度与各自实例的特征相似度呈正相关。因此,我们可以将数据之间的特征相似度与语义相似度相结合,可以得到以下学习模型:[0041][0042] 其中, 为模态内的总相似性, 表示两个样本间的特征相似性, 为用Jaccard相似度方法来衡量的语义相似性。[0043] 3.2、模态间相似性学习[0044] 模态间相似性指的是不同模态间各实例之间的语义相似度,该语义相似度通过标签语义信息来衡量;[0045] 具体的,在本发明中,模态间相似性通过类标签矩阵来计算。设 为对应的标签矩阵,其中Lij=1表示Xi*属于第j类,否则为0。此外,模态间相似性矩阵,表示为可以由标签矩阵来构造,如果 说明Xi*和Xj*是相似的。否则,Xi*和Xj*是不相似的。其中,c表示类别数。[0046] 3.3、哈希函数学习[0047] 本发明中的哈希函数是通过最小化以下最小二乘回归问题来学习的:[0048][0049] 其中β为非负参数,B1和B2分别对应图像和文本两个模态的哈希码,W1和W2分别对应图像和文本两个模态的投影矩阵。[0050] 3.4、相似性保持学习[0051] 结合基于核的监督哈希(KSH)的优化模型,本发明所提出的相似性保持学习模型综合考虑了模态内相似性和模态间相似性。其模型表达式如下所示:[0052][0053] 其中,S11和S22分别为图像和文本两个模态的模态内相似性矩阵,S12为图像和文本两个模态的模态间相似性矩阵。[0054] 3.5、类属性及标签嵌入[0055] 本发明将标签信息嵌入到哈希码中,这有助于充分利用标签信息生成优化的二进制码,在大规模处理数据时具有更强的鲁棒性。因此,通过优化以下模型来得到优化的哈希码:[0056][0057] 其中α为非负参数,C1和C2分别表示将图像和文本两个模态哈希码投影到标签中的投影矩阵。[0058] 此外,在所提出的模型中加入类属性信息,不仅可以有助于生成更具判别性的哈希码,而且主要的是实现属性知识从可见类到不可见类的转移,以此来解决零样本跨模态检索问题。类属性信息的嵌入,是通过将每个类名所对应的类属性矩阵嵌入到公式(5)的投影矩阵中。这样可以实现将标签信息及类属性信息同时嵌入到哈希码的学习中。将公式(5)更新为:[0059][0060] 其中,V1和V2分别表示将图像和文本两个模态哈希码投影到标签中加入类属性信息的转换投影矩阵。[0061] 3.6、目标函数[0062] 综合以上几步,得到本发明的目标函数为:[0063][0064] 其中, 表示该模型的正则化(1) (2)项,其目的是防止过拟合;γ是控制正则化项的参数。X 和X 分别为图像和文本两个模态11 22的特征矩阵;Y为标签矩阵;A为类属性矩阵;S 和S 分别为图像和文本两个模态的模态内12相似性矩阵,S 为图像和文本两个模态的模态间相似性矩阵;W1、W2、V1、V2为投影矩阵;α和β为非负参数。[0065] 4、进行目标函数的迭代更新:通过迭代更新上一步得到的目标函数,直到目标函数收敛或达到最大迭代次数,得到哈希函数以及训练集的哈希码。[0066] 函数(7)并不是最优的,接下来需要对其进行迭代更新。显然,整体目标函数是一个非凸优化问题。因此,我们提出了一种有效的交替迭代算法来解决这一问题。[0067] 具体而言,参见图2,对公式(7)的优化步骤如下:[0068] B1‑step:固定变量W1,W2,V1,V2,B2,因此,对于B1,公式(7)可以简化为:[0069][0070] 通过设置B1的偏导数为零,可以推导出B1的封闭解。如下:[0071][0072] B2‑step:与B1的更新步骤相似,得到B2的封闭解。如下:[0073][0074] V1‑step:固定变量W1,W2,V2,B1,B2,因此,对于V1,公式(7)可以简化为:[0075][0076] 通过设置V1的偏导数为零,我们可以推导出如下公式:[0077][0078] 我们定义 B11=AAT, 然而,公式(12)可以重写为:[0079] A11V1+V1B11=C11(13)[0080] 公式(13)是一个Sylvester方程,可以使用MATLAB中的Sylvester函数进行求解。[0081] V2‑step:类似地,关于V2,我们有:[0082] A22V2+V2B22=C22(14)[0083] 其中, B22=AAT,[0084] W1‑step:类似地,关于W1,我们有:[0085] A33W1+W1B33=C33(15)T[0086] 其中, B33=B1B1,[0087] W2‑step:类似地,关于W2,我们有:[0088] A44W2+W2B44=C44(16)[0089] 其中, B44=B2TB2,[0090] 通过以上步骤对公式(7)进行优化,直到函数收敛或达到最大迭代次数,停止迭代。[0091] 5、查询,进行零样本跨模态检索:首先得到检索集对应的哈希码,输入查询样本,根据上一步得到的哈希函数,得到查询样本的哈希码。将查询样本的哈希码代入检索集中进行查询。具体的实施步骤如下所示:[0092] 给定图像和文本的查询样本对应的特征矩阵为 和 结合上一步得到的投影矩阵W1和W2。通过公式 和 得到查询样本对应的哈希码。在本实施例中,我们进行的是两个主要的检索任务:图像查询文本和文本查询图像。[0093] 由于本发明的查询任务是在一个二值空间进行的,因此通过计算查询样本与检索集中各样本之间的汉明距离来得到查询的结果。对应着检索集中汉明距离最小的那个样本就是我们得到的查询结果。[0094] 为了说明本发明的效果,下面通过具体实施例对本发明的技术方案做进一步阐述:[0095] 1、仿真条件[0096] 本发明运用Matlab软件进行的实验仿真。在跨模态数据集Wiki(包含图像和文本两个模态)上进行实验,所进行的实验包括两个查询任务:(1)文本查询图像(Text2Img),(2)图像查询文本(Img2Text)。实验中参数设置为α=1e‑2,β=1e5,γ=1e‑4。[0097] 2、仿真内容[0098] 本发明的方法与现有的非零样本跨模态哈希检索方法以及零样本跨模态哈希检索方法进行了对比,作为对比的方法有非零样本跨模态哈希检索方法:(1)协同矩阵分解哈希(CMFH)、(2)联合和个别矩阵分解哈希(JIMFH)、(3)离散稳健矩阵分解哈希(DRMFH)、(4)非对称监督一致和特定哈希(ASCSH)、(5)标签一致矩阵分解哈希(LCMFH);零样本单模态哈希检索方法:(1)基于监督知识转移的零样本哈希(TSK)、(2)用于零样本图像检索的属性哈希算法(AH);零样本跨模态哈希检索方法:(1)跨模态属性哈希(CMAH)、(2)用于零样本跨模态检索的正交哈希算法(CHOP)。对于零样本单模态哈希检索方法,分别通过单模态的模型得到图像和文本两个模态的哈希码,再进行下面的查询任务。[0099] 3、仿真结果[0100] 仿真实验中分别给出了对比方法以及本发明所提出的方法在数据集Wiki下的实验结果。为了符合零样本跨模态检索情景,本发明随机数据集Wiki中选取20%的类作为不可见类。在数据集Wiki中总的包含8个类,根据实验设置,本实施例从其中随机选取两类作为不可见类,其余数据集的处理方式与本发明设置相同。[0101] 在该仿真实验中,使用一个广泛使用的指标来衡量本发明所提出的SASH方法和其他对比方法的性能。即平均精度的平均值(mAP)。给定一个查询和一个检索结果列表,其平均精度(AP)定义为:[0102][0103] 其中,N为检索集中相关实例的数量,P(r)定义为第r个检索实例的精度,如果第r个检索实例是查询的真实邻居,则为δ(r)=1;否则δ(r)=0。然后,平均所有查询的AP以获得mAP。评价规则为mAP值越大,性能就越好。[0104] 从仿真实验中取的哈希码长度为8位、12位、16位和32位,在表1中展示了本发明所提出的SAZH方法和其他对比方法的所对应的mAP值。[0105] 表1在Wiki数据集上所有方法在文本查询图像(Text2Img)任务上的mAP值[0106][0107] 表2在Wiki数据集上所有方法在图像查询(Img2Text)任务上的mAP值[0108][0109][0110] 从表1和表2中可以看出,本发明所提出的SAZH方法在Wiki数据集的零样本跨模态检索情景下的两个查询任务中的mAP值都高于其他的对比方法。进一步的证明了本发明提出的SAZH方法在零样本跨模态检索中的优越性。[0111] 以上所述实施例仅表达了本发明的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。

专利地区:云南

专利申请日期:2022-06-20

专利公开日期:2024-06-18

专利公告号:CN114943017B

电话咨询
读内容
搜本页
回顶部