一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

特征提取方法、装置、存储介质及电子设备与流程

2022-07-02 02:20:14 来源:中国专利 TAG:


1.本公开涉及数据处理技术领域,具体地,涉及一种特征提取方法、装置、存储介质及电子设备。


背景技术:

2.随着计算机技术的不断发展,神经网络模型可以通过自注意力机制(self-attention mechanism)对输入序列中任意两个元素之间的关系建模,从而捕捉输入序列中长距离元素之间的依赖关系。相关技术中存在多种注意力机制,其中随机特征注意力机制(random feature attention,rfa)可以将传统自注意力机制中计算相似度的函数线性化,以提高计算效率。但是,此种随机特征注意力机制是一种有偏估计,具有较大的近似误差,从而会影响模型输出结果的准确性。


技术实现要素:

3.提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
4.第一方面,本公开提供一种特征提取方法,所述方法包括:
5.确定待提取特征的目标数据,并基于所述目标数据确定多个查询向量、多个键向量和多个值向量;
6.确定每一所述查询向量对应的多个键值对信息,每一所述键值对信息是基于所述多个键向量、所述多个值向量和一数据样本确定的,其中用于确定所述多个键值对信息的多个所述数据样本是基于多个概率分布进行采样得到的,且所述多个概率分布基于所述多个查询向量确定;
7.针对每一所述查询向量,基于所述查询向量和所述多个数据样本进行随机映射,得到多个随机查询向量,并基于所述多个随机查询向量和所述多个键值对信息,确定所述查询向量对应的特征信息。
8.第二方面,本公开提供一种特征提取装置,所述装置包括:
9.第一确定模块,用于确定待提取特征的目标数据,并基于所述目标数据确定多个查询向量、多个键向量和多个值向量;
10.第二确定模块,用于确定每一所述查询向量对应的多个键值对信息,每一所述键值对信息是基于所述多个键向量、所述多个值向量和一数据样本确定的,其中用于确定所述多个键值对信息的多个所述数据样本是基于多个概率分布进行采样得到的,所述多个概率分布基于所述多个查询向量确定;
11.第三确定模块,用于针对每一所述查询向量,基于所述查询向量和所述多个数据样本进行随机映射,得到多个随机查询向量,并基于所述多个随机查询向量和所述多个键值对信息,确定所述查询向量对应的特征信息。
12.第三方面,本公开提供一种非临时性计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现第一方面中所述方法的步骤。
13.第三方面,本公开提供一种电子设备,包括:
14.存储装置,其上存储有计算机程序;
15.处理装置,用于执行所述存储装置中的所述计算机程序,以实现第一方面中所述方法的步骤。
16.通过上述技术方案,用于确定键值对信息的多个数据样本是基于多个概率分布进行采样得到的,且多个概率分布基于多个查询向量确定。由此,查询向量不同,则可以确定出对应不同的键值对信息,从而在基于键值对信息确定特征信息的过程中,可以对不同的查询向量采用对应不同的处理方式,捕捉查询向量之间更细粒度的特征关联信息,减小近似误差,得到更能表征目标数据语义的高层特征信息。
17.本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
18.结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。在附图中:
19.图1是传统注意力机制的过程示意图;
20.图2是基于随机特征的注意力机制的过程示意图;
21.图3是根据本公开一示例性实施例示出的一种特征提取方法的流程图;
22.图4是根据本公开一示例性实施例示出的一种特征提取方法的过程示意图;
23.图5是根据本公开一示例性实施例示出的一种特征提取装置的框图;
24.图6是根据本公开一示例性实施例示出的一种电子设备的框图。
具体实施方式
25.可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。
26.例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确地提示用户,其请求执行的操作将需要获取和使用到用户的个人信息。从而,使得用户可以根据提示信息来自主地选择是否向执行本公开技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。
27.作为一种可选的但非限定性的实现方式,响应于接收到用户的主动请求,向用户发送提示信息的方式例如可以是弹窗的方式,弹窗中可以以文字的方式呈现提示信息。此外,弹窗中还可以承载供用户选择“同意”或者“不同意”向电子设备提供个人信息的选择控件。
28.可以理解的是,上述通知和获取用户授权过程仅是示意性的,不对本公开的实现方式构成限定,其它满足相关法律法规的方式也可应用于本公开的实现方式中。同时,可以理解的是,本技术方案所涉及的数据(包括但不限于数据本身、数据的获取或使用)应当遵
循相应法律法规及相关规定的要求。
29.下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
30.应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
31.本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
32.需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。另外需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
33.本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
34.随着计算机技术的不断发展,神经网络模型可以通过自注意力机制(self-attention mechanism)对输入序列中任意两个元素之间的关系建模,从而捕捉输入序列中长距离元素之间的依赖关系。比如,transformer模型通过自注意力机制对输入序列建模,被广泛用于自然语言处理、计算机视觉、音频处理等领域。
35.传统自注意力机制有三组输入:n个查询向量(query)、m个键向量(key)和m个值向量(value),其中n和m为正整数,且通常情况下n等于m。在transformer模型中,查询向量、键向量和值向量均由输入序列经过变换得到。参照图1,(
·
)表示点积运算,o表示计算复杂度,传统自注意力机制先将每个查询向量和每个键向量进行比较,计算每个查询向量与每个键向量之间的相似度。然后,经过softmax函数进行归一化后,将所有值向量按照相似度加权平均,得到最后的特征信息简单来说,传统自注意力机制的计算顺序为(qk)v,其中q表示由查询向量组成的矩阵,k表示由键向量组成的矩阵,v表示由查询向量组成的矩阵。
36.传统自注意力机制由于在计算相似度时会把每个查询向量和每个键向量进行成对比较,因此可以捕捉输入序列中长距离元素之间的依赖关系,具有强大的特征表达能力。但发明人研究发现,此种将每个查询向量和每个键向量进行成对比较的方式会导致平方级的计算复杂度,如图1所示,qk计算的计算复杂度为o(mn)。对于较长序列(比如图片、视频、文档、蛋白质序列等),此种平方级的计算复杂度会成为模型运行的瓶颈。
37.相关技术可以将输入序列进行压缩以适配transformer结构,减小计算复杂度,但是压缩导致的精度下降通常是巨大的。相关技术还提出了多种自注意力机制的变体,例如使用稀疏矩阵、低秩矩阵进行近似计算等方式,以减少计算复杂度。其中,随机特征注意力
机制(random feature attention,rfa)可以将传统自注意力机制中计算相似度的函数线性化,具有较高的计算效率,可以在加快运行速度的同时减小内存占用。具体地,随机特征注意力机制的处理过程如下:
38.参照图2,ωs表示第s个样本,s

表示样本总数(s

为正整数),ξ(
·
,
·
)表示随机映射,随机特征注意力机制先基于标准正态分布采样一组样本然后将这组样本在所有查询向量中共用,因此可以针对每一样本ωs,按照如下方式提前计算键值对信息:
[0039][0040]
其中,ns表示由第s个样本确定的键值对信息。
[0041]
另一方面,随机特征注意力机制按照如下方式提前计算归一化因子:
[0042][0043]
其中,ds表示由第s个样本确定的归一化因子。
[0044]
最后,随机特征注意力机制按照如下方式,将提前计算出的键值对信息和归一化因子应用到每个查询向量,得到每个查询向量对应的特征信息:
[0045][0046][0047]yn
=n/d
[0048]
其中,yn表示第n个查询向量对应的特征信息,n为大于0且小于n的正整数。
[0049]
简单来说,随机特征注意力机制相当于将(qk)v的计算顺序转变为q(kv),由于传统自注意力机制主要的计算瓶颈出现在计算qk上,因此计算顺序的改变可以让计算复杂度从平方级降到线性,如图2所示,kv计算的计算复杂度为o(ms

)。其中,o(s

)为采样过程的计算复杂度,不会随输入序列变化,因此该计算复杂度通常较低。
[0050]
但是,随机特征注意力机制对所有查询向量共用由标准正态分布得到的一组样本,即,针对所有查询向量采用相同的处理方式,无法捕捉到不同查询向量之间细粒度的特征关联信息,从而会产生较大的近似误差,影响模型输出结果的准确性。
[0051]
有鉴于此,本公开提供一种新的特征提取方法,以减少近似误差,提高模型输出结果的准确性。
[0052]
图3是根据本公开一示例性实施例示出的一种特征提取方法的流程图。参照图3,该特征提取方法包括以下步骤:
[0053]
步骤301,确定待提取特征的目标数据,并基于目标数据确定多个查询向量、多个键向量和多个值向量。
[0054]
步骤302,确定每一查询向量对应的多个键值对信息,每一键值对信息是基于多个键向量、多个值向量和一数据样本确定的,其中用于确定多个键值对信息的多个数据样本是基于多个概率分布进行采样得到的,多个概率分布基于多个查询向量确定。
[0055]
步骤303,针对每一查询向量,基于查询向量和多个数据样本进行随机映射,得到
多个随机查询向量,并基于多个随机查询向量和多个键值对信息,确定查询向量对应的特征信息。
[0056]
通过上述方案,用于确定键值对信息的多个数据样本是基于多个概率分布进行采样得到的,且多个概率分布基于多个查询向量确定。由此,查询向量不同,则可以确定出对应不同的键值对信息,从而在基于键值对信息确定特征信息的过程中,可以对不同的查询向量采用对应不同的处理方式,捕捉查询向量之间更细粒度的特征关联信息,减小近似误差,得到更能表征目标数据语义的高层特征信息。
[0057]
为了使得本领域技术人员更加理解本方案提供的特征提取方法,下面对上述各步骤进一步说明。
[0058]
在一实施例中,在步骤301中,可以将图片数据确定为待提取特征的目标数据。相应地,每一查询向量对应的特征信息可以被用于确定图片数据的图片分类结果。
[0059]
比如,将本公开提供的特征提取方法与transformer模型结合,即,将transformer模型中基于模型自带的注意力机制进行特征提取的内容替换为本公开提供的特征提取方法的内容。在此种场景下,若将图片数据确定为待提取特征的目标数据,则在得到每一查询向量对应的特征信息后,可以将该特征信息输入transformer模型的分类器,得到图片数据的图片分类结果。
[0060]
在另一实施例中,在步骤301中,可以将视频数据确定为待提取特征的目标数据。相应地,每一查询向量对应的特征信息可以被用于确定视频数据的视频动作识别结果。
[0061]
比如,将本公开提供的特征提取方法与transformer模型结合,即,将transformer模型中基于模型自带的注意力机制进行特征提取的内容替换为本公开提供的特征提取方法的内容。在此种场景下,若将视频数据确定为待提取特征的目标数据,则在得到每一查询向量对应的特征信息后,可以将该特征信息输入transformer模型的识别模块,得到视频数据的视频动作识别结果。
[0062]
在另一实施例中,在步骤301中,可以将文本数据确定为待提取特征的目标数据。相应地,在步骤303之后,还可以基于每一查询向量对应的特征信息,确定文本数据的译文。
[0063]
比如,将本公开提供的特征提取方法与transformer模型结合,即,将transformer模型中基于模型自带的注意力机制进行特征提取的内容替换为本公开提供的特征提取方法的内容。在此种场景下,若将文本数据确定为待提取特征的目标数据,则在得到每一查询向量对应的特征信息后,可以将该特征信息输入transformer模型的编码模块,得到文本数据的译文。
[0064]
应当理解的是,在本公开实施例中,将目标数据输入transformer模型,首先transformer模型可以将该目标数据进行特征编码(embedding)操作,得到目标数据对应的初始特征向量。比如,目标数据为文本数据,则经过特征编码操作,初始特征向量为该文本数据中每个分词对应的词向量。之后,可以基于目标数据对应的初始特征向量,确定多个查询向量、多个键向量和多个值向量。
[0065]
示例地,可以将目标数据对应的每个初始特征向量与第一权重矩阵相乘,得到多个查询向量,将目标数据对应的每个初始特征向量与第二权重矩阵相乘,得到多个键向量,将目标数据对应的每个初始特征向量与第三权重矩阵相乘,得到多个值向量。应当理解的是,第一权重矩阵、第二权重矩阵和第三权重矩阵不同,且基于目标数据确定查询向量、键
向量和值向量的其他内容可以参照相关技术,这里不再赘述。
[0066]
在得到多个查询向量、多个键向量和多个值向量后,可以在步骤302中,确定每一查询向量对应的键值对信息。
[0067]
在一实施例中,确定每一查询向量对应的键值对信息可以是:根据每个查询向量确定一概率分布,并按照第一预设数量,基于每个查询向量对应的概率分布进行采样,得到每个查询向量对应的多个数据样本。然后,针对每个查询向量,基于多个键向量、多个值向量和查询向量对应的多个数据样本,确定多个键值对信息。
[0068]
示例地,第一预设数量用于表征期望的样本数量,可以根据实际情况设定,本公开实施例对此不作限定。根据每个查询向量确定一概率分布可以是将每个查询向量的数值作为期望值(μ)确定对应的概率分布。比如,有3个查询向量,且该3个查询向量的数值分别为0.1、2、-10,则可以分别确定期望值为0.1、2、-10的概率分布。之后,针对每个概率分布,可以按照第一预设数量进行采样,得到多个数据样本。比如,第一预设数量为10,则可以在每个概率分布下采样10个数据样本。
[0069]
由此,参照图4,针对每个查询向量,可以单独采样一组样本,然后根据单独采样的样本单独计算键值对信息。相较于相关技术中所有查询向量共用一组由标准正态分布采样的样本的方式,本公开实施例由于不同的查询向量对应着不同的一组样本,因此可以对每个查询向量都采取不同的处理方式,具有更强的特征表达能力,能够捕捉更细粒度的查询向量之间的特征关联信息,得到更能表征目标数据语义的高层特征信息。
[0070]
但是,上述方式针对每个查询向量单独采样一组样本,无法提前计算键值对信息,而需要针对每个查询向量单独计算对应的键值对信息,因此计算复杂度较高,如图4所示,采样过程的计算复杂度与输入序列相关,为o(n),kv计算的计算复杂度为o(mn)。为了平衡计算复杂度和计算精度,本公开实施例还提供另一种确定键值对信息的方式。
[0071]
在另一实施例中,确定每一查询向量对应的键值对信息可以是:先按照第二预设数量将多个查询向量划分为多个查询向量组,然后根据每个查询向量组确定一概率分布,并根据每个查询向量组对应的概率分布采样一数据样本,得到多个数据样本。接着,根据每个数据样本、多个键向量和多个值向量,确定一键值对信息,得到多个共用键值对信息。最后,将多个共用键值对信息确定为每一查询向量对应的多个键值对信息。
[0072]
其中,第二预设数量用于表征期望的查询向量组的数量,且第二预设数量小于多个查询向量的数量,可以根据实际情况设定第二预设数量,本公开实施例对此不作限定。
[0073]
示例地,按照第二预设数量将多个查询向量划分为多个查询向量组,可以是按照第二预设数量将多个查询向量平均划分为多个查询向量组。比如,第二预设数量为4,查询向量为20个,则按照第二预设数量可以将多个查询向量平均划分为4个查询向量组,每个查询向量组包括5个查询向量,且每个查询向量组包括的查询向量各不相同。或者,若按照第二预设数量无法将多个查询向量平均划分为多个查询向量组,则可以按照实际情况进行划分。比如,第二预设数量为2,查询向量为5,则可以划分一个查询向量组包括2个查询向量,另一个查询向量组包括3个查询向量。本公开实施例对于划分查询向量组的方式不作限定。
[0074]
在划分查询向量组后,可以根据每个查询向量组确定一概率分布。比如,确定每个查询向量组中所有查询向量的平均数值,然后将该平均数值作为期望值(μ)确定对应的概率分布。由此,可以针对每个查询向量组确定对应的概率分布,从而可以根据每个概率分布
采样一数据样本,得到多个数据样本。之后,可以在多个查询向量共用该多个数据样本,即,可以根据每个数据样本、多个键向量和多个值向量,确定一键值对信息,得到多个共用键值对信息。最后,可以将多个共用键值对信息复用到每个查询向量。
[0075]
通过上述方式,每个查询向量可以对应从多个概率分布采样出的样本,且多个概率分布由多个查询向量对应的查询向量组确定,相较于相关技术中所有查询向量共用一组由标准正态分布采样的样本的方式,可以对多个查询向量采用不同的处理方式,捕捉查询向量之间更细粒度的特征关联信息,进而得到更能表征目标数据语义的高层特征信息。此外,由于多个查询向量共用多个概率分布采样出的样本,因此可以根据每个概率分布采样出的样本,提前计算对应的键值对信息,而不用针对每个查询向量单独计算键值对信息,可以实现键值对信息的复用,从而减少特征提取过程的计算复杂度,提高特征提取过程的计算效率。
[0076]
在确定每个查询向量对应的键值对信息后,可以针对每个查询向量,基于查询向量和多个数据样本进行随机映射,得到多个随机查询向量。比如,查询向量a1个,数据样本a2个,则针对每个查询向量,基于查询向量和数据样本进行随机映射,可以得到每个查询向量对应的a2个随机查询向量。
[0077]
之后,可以在步骤303中,基于多个随机查询向量和多个键值对信息,确定查询向量对应的特征信息。
[0078]
在可能的方式中,可以先确定每个查询向量组对应的概率分布与多个查询向量组对应的概率分布之间的第一相似度,并针对每个查询向量,确定查询向量与每个查询向量组的平均查询向量之间的第二相似度。然后,根据第一相似度和第二相似度,确定计算权重。最后,根据计算权重将多个随机查询向量和多个键值对信息进行加权求和,得到查询向量对应的特征信息。
[0079]
对于每个查询向量组对应的概率分布与多个查询向量组对应的概率分布之间的第一相似度,可以按照如下方式计算:
[0080][0081]
其中,qc(ωc)表示第c个查询向量组对应的概率分布,ωc表示由第c个查询向量组对应的概率分布采样得到的数据样本,c

表示查询向量组的数量。
[0082]
对于查询向量与每个查询向量组的平均查询向量之间的第二相似度,可以按照如下方式计算:其中,表示第n个查询向量qn的转置向量,表示第c个查询向量组的平均查询向量。
[0083]
或者,针对每个查询向量,还可以按照如下方式结合归一化计算来得到第二相似度:
[0084][0085]
当然,还可以根据除上文所述的其他方式确定第一相似度和第二相似度,本公开实施例对此不作限定。比如,在结合归一化计算来得到第二相似度的方式中,对于分母的求和还可以针对查询向量组的数量进行,即,可以按照如下方式确定第二相似度:
[0086][0087]
在得到第一相似度和第二相似度后,可以根据第一相似度和第二相似度,确定计算权重。
[0088]
在可能的方式中,可以针对每个查询向量组,将查询向量组对应的第一相似度和第二相似度之和确定为计算权重。或者,可以针对每个查询向量组,将查询向量组对应的第一相似度和第二相似度之和确定为总相似度,基于每个查询向量组对应的第二相似度,确定查询向量与多个查询向量组的平均查询向量之间的平均相似度,在总相似度的基础上减去平均相似度,得到计算权重。
[0089]
例如,可以按照如下方式确定计算权重:
[0090][0091]
其中,α
nc
(ωc)表示第n个查询向量与第c个查询向量组的计算权重。
[0092]
又例如,可以按照如下方式确定计算权重:
[0093][0094][0095]
其中,γ

nc
表示第二相似度,表示平均相似度。
[0096]
接下来,可以按照如下方式确定每个查询向量对应的特征信息:
[0097][0098][0099]yn
=n/d
[0100]
其中,nc表示由第c个查询向量组确定的键值对信息,dc表示由第c个查询向量组确定的归一化因子。
[0101]
通过上述方式,多个查询向量共用多个概率分布采样出的样本,进一步将由该样本得到的多个随机查询向量和多个键值对信息进行加权求和,得到最终的特征信息。其中,计算权重可以按照查询向量的不同而有所不同,从而可以让最终的特征信息随查询向量的变化而变化,相较于相关技术中的随机特征注意力机制,可以捕捉查询向量之间更细粒度的特征关联信息,得到更能表征目标数据语义的高层特征信息。
[0102]
在可能的方式中,还可以针对每个查询向量组对应的概率分布,根据概率分布和标准正态分布,确定概率分布对应的重要性采样权重。相应地,可以先将计算权重和重要性采样权重的乘积确定为目标计算权重,然后根据目标计算权重,将多个随机查询向量和多个键值对信息进行加权求和,得到查询向量对应的特征信息。
[0103]
应当理解的是,由于计算权重是根据查询向量组对应的概率分布确定的,该概率
分布可能与单个查询向量对应的实际概率分布有偏差,从而导致提取到的特征信息与目标数据对应的实际特征信息之间的误差。因此,本公开实施例还可以先根据概率分布和标准正态分布,确定概率分布对应的重要性采样权重,然后将该重要性采样权重应用到随机查询向量和键值对信息的加权求和过程。其中,重要性采样权重相当于纠偏项,可以减小提取到的特征信息与目标数据对应的实际特征信息之间的误差。
[0104]
例如,可以先按照如下方式确定重要性采样权重:
[0105]
α

nc
(ωc)=p(ωc)/qc(ωc)
[0106]
其中,p(ωc)表示标准正态分布。
[0107]
然后,可以将按照上述任一方式确定的计算权重与重要性采样权重相乘,得到目标计算权重,最后根据目标计算权重,将多个随机查询向量和多个键值对信息进行加权求和,得到查询向量对应的特征信息,即可以按照如下方式,确定每个查询向量对应的特征信息:
[0108]
α

nc
(ωc)=α
nc
(ωc)p(ωc)/qc(ωc)
[0109][0110][0111]yn
=n/d
[0112]
其中,α

nc
(ωc)表示目标计算权重。
[0113]
通过上述方式,将由该样本得到的多个随机查询向量和多个键值对信息进行加权求和,得到最终的特征信息。其中,计算权重可以按照查询向量的不同而有所不同,从而可以让最终的特征信息随查询向量的变化而变化,相较于相关技术中的随机特征注意力机制,可以捕捉查询向量之间更细粒度的特征关联信息,得到更能表征目标数据语义的高层特征信息。此外,由于多个查询向量共用多个概率分布采样出的样本,因此可以根据每个概率分布采样出的样本,提前计算对应的键值对信息,而不用针对每个查询向量单独计算键值对信息,实现键值对信息的复用,从而可以减少特征提取过程的计算复杂度,提高特征提取过程的计算效率。
[0114]
下面通过图像分类、视频动作识别和机器翻译的应用场景说明本公开提供的特征提取方法的技术效果。
[0115]
在图像分类的应用场景下,针对同一数据集,相关技术采用pvt-v2-b4模型与performer机制相结合的方式,基于本公开的方式为将上述基于查询向量组的特征提取方法与pvt-v2-b4模型结合的方式。其中,pvt-v2-b4模型为相关技术的一种transformer模型,flops用于表征计算复杂度,top-1 acc表示准确率。参照表1,相较于相关技术,基于本公开的方式在计算复杂度降低的同时,准确率方面有所提升,可以较好平衡计算效率和计算精度。
[0116]
表1
[0117] flopstop-1 acc相关技术11.9g82.7基于本公开的方式11.3g84.0
[0118]
在视频动作识别的应用场景下,针对k400数据集和ssv2数据集,相关技术采用performer机制,基于本公开的方式1为将上述基于每个查询向量组确定一随机分布的特征提取方法,基于本公开的方式2为将上述基于每个查询向量确定一随机分布的特征提取方法,准确率1表示针对k400数据集的准确率,准确率2表示针对ssv2数据集的准确率。参照表2,相较于相关技术,本公开方式1和方式2在不同数据集上的准确率均有所提升,可以提高模型输出结果的准确性。
[0119]
表2
[0120] 准确率1准确率2相关技术72.153.1基于本公开的方式177.563.7基于本公开的方式278.264.9
[0121]
在机器翻译的应用场景下,针对同一数据集,相关技术采用linformer机制,基于本公开的方式为将上述基于每个查询向量组确定一随机分布的特征提取方法,bleu用于表征机器翻译的精度。参照表3,相较于相关技术,基于本公开的方式翻译精度有所提升,可以提高模型输出结果的准确性。
[0122]
表3
[0123] bleu相关技术17.4基于本公开的方式26.4
[0124]
通过上述方案,用于确定键值对信息的多个数据样本是基于多个概率分布进行采样得到的,且多个概率分布基于多个查询向量确定。由此,查询向量不同,则可以确定出对应不同的键值对信息,从而在基于键值对信息确定特征信息的过程中,可以对不同的查询向量采用对应不同的处理方式,捕捉查询向量之间更细粒度的特征关联信息,进而得到更能表征目标数据语义的高层特征信息。
[0125]
此外,在基于查询向量组确定特征信息的场景下,计算权重可以按照查询向量的不同而有所不同,从而可以让最终的特征信息随查询向量的变化而变化,捕捉查询向量之间更细粒度的特征关联信息。并且,在此种场景下,由于多个查询向量共用多个概率分布采样出的样本,因此可以根据每个概率分布采样出的样本,提前计算对应的键值对信息,而不用针对每个查询向量单独计算键值对信息,实现键值对信息的复用,从而可以减少特征提取过程的计算复杂度,提高特征提取过程的计算效率。
[0126]
基于同一构思,本公开实施例还提供一种特征提取装置,该装置可以通过软件、硬件或者两者结合的方式成为电子设备的部分或全部。参照图5,该特征提取装置500包括:
[0127]
第一确定模块501,用于确定待提取特征的目标数据,并基于所述目标数据确定多个查询向量、多个键向量和多个值向量;
[0128]
第二确定模块502,用于确定每一所述查询向量对应的多个键值对信息,每一所述键值对信息是基于所述多个键向量、所述多个值向量和一数据样本确定的,其中用于确定所述多个键值对信息的多个所述数据样本是基于多个概率分布进行采样得到的,所述多个概率分布基于所述多个查询向量确定;
[0129]
第三确定模块503,用于针对每一所述查询向量,基于所述查询向量和所述多个数
据样本进行随机映射,得到多个随机查询向量,并基于所述多个随机查询向量和所述多个键值对信息,确定所述查询向量对应的特征信息。
[0130]
可选地,所述第二确定模块502用于:
[0131]
根据每个查询向量确定一概率分布,并按照第一预设数量,基于每个查询向量对应的所述概率分布进行采样,得到每个所述查询向量对应的多个数据样本,其中所述第一预设数量用于表征期望的样本数量;
[0132]
针对每个查询向量,基于所述多个键向量、所述多个值向量和所述查询向量对应的多个数据样本,确定多个键值对信息。
[0133]
可选地,所述第二确定模块502用于:
[0134]
按照第二预设数量将所述多个查询向量划分为多个查询向量组,其中所述第二预设数量用于表征期望的查询向量组的数量,且所述第二预设数量小于所述多个查询向量的数量;
[0135]
根据每个查询向量组确定一概率分布,并根据每个查询向量组对应的所述概率分布采样一数据样本,得到多个数据样本;
[0136]
根据每个数据样本、所述多个键向量和所述多个值向量,确定一键值对信息,得到多个共用键值对信息;
[0137]
将所述多个共用键值对信息确定为每一所述查询向量对应的多个键值对信息。
[0138]
可选地,所述第三确定模块503用于:
[0139]
确定每个查询向量组对应的概率分布与多个查询向量组对应的概率分布之间的第一相似度,并针对每个查询向量,确定所述查询向量与每个查询向量组的平均查询向量之间的第二相似度;
[0140]
根据所述第一相似度和所述第二相似度,确定计算权重;
[0141]
根据所述计算权重,将所述多个随机查询向量和所述多个键值对信息进行加权求和,得到所述查询向量对应的特征信息。
[0142]
可选地,所述装置500还包括:
[0143]
第四确定模块,用于针对每个查询向量组对应的概率分布,根据所述概率分布和标准正态分布,确定所述概率分布对应的重要性采样权重;
[0144]
所述第三确定模块503用于:
[0145]
将所述计算权重和所述重要性采样权重的乘积确定为目标计算权重;
[0146]
根据所述目标计算权重,将所述多个随机查询向量和所述多个键值对信息进行加权求和,得到所述查询向量对应的特征信息。
[0147]
可选地,所述第三确定模块503用于:
[0148]
针对每个查询向量组,将所述查询向量组对应的所述第一相似度和所述第二相似度之和确定为计算权重;或
[0149]
针对每个查询向量组,将所述查询向量组对应的所述第一相似度和所述第二相似度之和确定为总相似度,基于每个查询向量组对应的所述第二相似度,确定所述查询向量与多个查询向量组的平均查询向量之间的平均相似度,在所述总相似度的基础上减去所述平均相似度,得到计算权重。
[0150]
可选地,所述第一确定模块501用于:
[0151]
将图片数据确定为待提取特征的目标数据;
[0152]
相应地,每一所述查询向量对应的特征信息被用于确定所述图片数据的图片分类结果。
[0153]
可选地,所述第一确定模块501用于:
[0154]
将视频数据确定为待提取特征的目标数据;
[0155]
相应地,每一所述查询向量对应的特征信息被用于确定所述视频数据的视频动作识别结果。
[0156]
可选地,所述第一确定模块501用于:
[0157]
将文本数据确定为待提取特征的目标数据;
[0158]
相应地,每一所述查询向量对应的特征信息被用于确定所述文本数据的译文。
[0159]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0160]
基于同一构思,本公开还提供一种非临时性计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现上述任一特征提取方法的步骤。
[0161]
基于同一构思,本公开还提供一种电子设备,包括:
[0162]
存储装置,其上存储有计算机程序;
[0163]
处理装置,用于执行所述存储装置中的所述计算机程序,以实现上述任一特征提取方法的步骤。
[0164]
下面参考图6,其示出了适于用来实现本公开实施例的电子设备600的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0165]
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储装置608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、rom 602以及ram 603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
[0166]
通常,以下装置可以连接至i/o接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(lcd)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0167]
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从rom 602被安装。在该计算机程序被处理装置601执行时,执行本公开
实施例的方法中限定的上述功能。
[0168]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0169]
在一些实施方式中,可以利用诸如http(hypertext transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
[0170]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0171]
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:确定待提取特征的目标数据,并基于所述目标数据确定多个查询向量、多个键向量和多个值向量;确定每一所述查询向量对应的多个键值对信息,每一所述键值对信息是基于所述多个键向量、所述多个值向量和一数据样本确定的,其中用于确定所述多个键值对信息的多个所述数据样本是基于多个概率分布进行采样得到的,且所述多个概率分布基于所述多个查询向量确定;针对每一所述查询向量,基于所述查询向量和所述多个数据样本进行随机映射,得到多个随机查询向量,并基于所述多个随机查询向量和所述多个键值对信息,确定所述查询向量对应的特征信息。
[0172]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言——诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0173]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0174]
描述于本公开实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块的名称在某种情况下并不构成对该模块本身的限定。
[0175]
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
[0176]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0177]
根据本公开的一个或多个实施例,示例1提供了一种特征提取方法,包括:
[0178]
确定待提取特征的目标数据,并基于所述目标数据确定多个查询向量、多个键向量和多个值向量;
[0179]
确定每一所述查询向量对应的多个键值对信息,每一所述键值对信息是基于所述多个键向量、所述多个值向量和一数据样本确定的,其中用于确定所述多个键值对信息的多个所述数据样本是基于多个概率分布进行采样得到的,且所述多个概率分布基于所述多个查询向量确定;
[0180]
针对每一所述查询向量,基于所述查询向量和所述多个数据样本进行随机映射,得到多个随机查询向量,并基于所述多个随机查询向量和所述多个键值对信息,确定所述查询向量对应的特征信息。
[0181]
根据本公开的一个或多个实施例,示例2提供了示例1的方法,所述确定每一所述查询向量对应的多个键值对信息,包括:
[0182]
根据每个查询向量确定一概率分布,并按照第一预设数量,基于每个查询向量对应的所述概率分布进行采样,得到每个所述查询向量对应的多个数据样本,其中所述第一预设数量用于表征期望的样本数量;
[0183]
针对每个查询向量,基于所述多个键向量、所述多个值向量和所述查询向量对应
的多个数据样本,确定多个键值对信息。
[0184]
根据本公开的一个或多个实施例,示例3提供了示例1的方法,所述确定每一所述查询向量对应的多个键值对信息,包括:
[0185]
按照第二预设数量将所述多个查询向量划分为多个查询向量组,其中所述第二预设数量用于表征期望的查询向量组的数量,且所述第二预设数量小于所述多个查询向量的数量;
[0186]
根据每个查询向量组确定一概率分布,并根据每个查询向量组对应的所述概率分布采样一数据样本,得到多个数据样本;
[0187]
根据每个数据样本、所述多个键向量和所述多个值向量,确定一键值对信息,得到多个共用键值对信息;
[0188]
将所述多个共用键值对信息确定为每一所述查询向量对应的多个键值对信息。
[0189]
根据本公开的一个或多个实施例,示例4提供了示例3的方法,所述基于所述多个随机查询向量和所述多个键值对信息,确定所述查询向量对应的特征信息,包括:
[0190]
确定每个查询向量组对应的概率分布与多个查询向量组对应的概率分布之间的第一相似度,并针对每个查询向量,确定所述查询向量与每个查询向量组的平均查询向量之间的第二相似度;
[0191]
根据所述第一相似度和所述第二相似度,确定计算权重;
[0192]
根据所述计算权重,将所述多个随机查询向量和所述多个键值对信息进行加权求和,得到所述查询向量对应的特征信息。
[0193]
根据本公开的一个或多个实施例,示例5提供了示例4的方法,所述方法还包括:
[0194]
针对每个查询向量组对应的概率分布,根据所述概率分布和标准正态分布,确定所述概率分布对应的重要性采样权重;
[0195]
所述根据所述计算权重,将所述多个随机查询向量和所述多个键值对信息进行加权求和,得到所述查询向量对应的特征信息,包括:
[0196]
将所述计算权重和所述重要性采样权重的乘积确定为目标计算权重;
[0197]
根据所述目标计算权重,将所述多个随机查询向量和所述多个键值对信息进行加权求和,得到所述查询向量对应的特征信息。
[0198]
根据本公开的一个或多个实施例,示例6提供了示例4或5的方法,所述根据所述第一相似度和所述第二相似度,确定计算权重,包括:
[0199]
针对每个查询向量组,将所述查询向量组对应的所述第一相似度和所述第二相似度之和确定为计算权重;或
[0200]
针对每个查询向量组,将所述查询向量组对应的所述第一相似度和所述第二相似度之和确定为总相似度,基于每个查询向量组对应的所述第二相似度,确定所述查询向量与多个查询向量组的平均查询向量之间的平均相似度,在所述总相似度的基础上减去所述平均相似度,得到计算权重。
[0201]
根据本公开的一个或多个实施例,示例7提供了示例1-5任一项的方法,所述确定待提取特征的目标数据,包括:
[0202]
将图片数据确定为待提取特征的目标数据;
[0203]
相应地,每一所述查询向量对应的特征信息被用于确定所述图片数据的图片分类
结果。
[0204]
根据本公开的一个或多个实施例,示例8提供了示例1-5任一项的方法,所述确定待提取特征的目标数据,包括:
[0205]
将视频数据确定为待提取特征的目标数据;
[0206]
相应地,每一所述查询向量对应的特征信息被用于确定所述视频数据的视频动作识别结果。
[0207]
根据本公开的一个或多个实施例,示例9提供了示例1-5任一项的方法,所述确定待提取特征的目标数据,包括:
[0208]
将文本数据确定为待提取特征的目标数据;
[0209]
相应地,每一所述查询向量对应的特征信息被用于确定所述文本数据的译文。
[0210]
根据本公开的一个或多个实施例,示例10提供了一种特征提取装置,所述装置包括:
[0211]
第一确定模块,用于确定待提取特征的目标数据,并基于所述目标数据确定多个查询向量、多个键向量和多个值向量;
[0212]
第二确定模块,用于确定每一所述查询向量对应的多个键值对信息,每一所述键值对信息是基于所述多个键向量、所述多个值向量和一数据样本确定的,其中用于确定所述多个键值对信息的多个所述数据样本是基于多个概率分布进行采样得到的,所述多个概率分布基于所述多个查询向量确定;
[0213]
第三确定模块,用于针对每一所述查询向量,基于所述查询向量和所述多个数据样本进行随机映射,得到多个随机查询向量,并基于所述多个随机查询向量和所述多个键值对信息,确定所述查询向量对应的特征信息。
[0214]
根据本公开的一个或多个实施例,示例11提供了一种非临时性计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现示例1-9中任一项所述方法的步骤。
[0215]
根据本公开的一个或多个实施例,示例12提供了一种电子设备,包括:
[0216]
存储装置,其上存储有计算机程序;
[0217]
处理装置,用于执行所述存储装置中的所述计算机程序,以实现示例1-9中任一项所述方法的步骤。
[0218]
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
[0219]
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0220]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应
当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献