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

信息处理方法、装置、电子设备、存储介质及程序产品与流程

2023-03-19 11:20:17 来源:中国专利 TAG:


1.本技术涉及人工智能技术领域,具体而言,本技术涉及一种信息处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品。


背景技术:

2.在深度学习中,针对待处理的信息,如文本、图像、音频等,为了更好地确定信息中各对象向量的语义信息,除了需要确定各对象向量自身的语义信息,还需要确定各对象向量在信息中所对应的上下文语义信息。
3.在现有技术中,关于上下文语义信息的处理中需要感知对象的全局信息,然而全局信息感知的计算复杂度高、计算量大,导致信息的处理效率与所确定的语义信息的准确度非常低。


技术实现要素:

4.本技术实施例提供了一种信息处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品,可以解决相关技术中信息处理计算复杂度高、计算量大的问题。所述技术方案如下:
5.根据本技术实施例的一个方面,提供了一种信息处理方法,该方法包括:
6.针对目标信息的输入序列中的至少两个目标向量进行基于快速傅里叶变换的特征交叉处理,得到所述目标信息的输出序列;
7.针对所述目标信息的输出序列进行特征感知处理,得到所述目标信息的目标序列;
8.其中,所述目标序列表示所述目标信息中的各个目标对象在所述目标信息中与其他目标对象相关的语义信息。
9.根据本技术实施例的另一个方面,提供了一种信息处理装置,该装置包括:
10.交叉模块,用于针对目标信息的输入序列中的至少两个目标向量进行基于快速傅里叶变换的特征交叉处理,得到所述目标信息的输出序列;
11.注意力模块,用于针对所述目标信息的输出序列进行特征感知处理,得到所述目标信息的目标序列;
12.其中,所述目标序列表示所述目标信息中的各个目标对象在所述目标信息中与其他目标对象相关的语义信息。
13.根据本技术实施例的另一个方面,提供了一种电子设备,该电子设备包括:
14.一个或多个处理器;
15.存储器;
16.一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个计算机程序配置用于:执行上述信息处理方法。
17.根据本技术实施例的再一个方面,提供了一种计算机可读存储介质,所述计算机存储介质用于存储计算机指令,当所述计算机指令在计算机上运行时,使得计算机可以执行上述信息处理方法。
18.根据本技术实施例的一个方面,提供了一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被处理器执行时实现上述信息处理方法的步骤。
19.本技术实施例提供的技术方案带来的有益效果是:
20.本技术提供一种信息处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品,具体地,本技术针对目标信息的输入序列中的至少两个目标向量进行基于快速傅里叶变换的特征交叉处理,可以得到目标信息的输出序列;其中,目标向量也称为隐状态,也即实现了隐状态的交叉,可以确定出目标信息中某一目标向量与其他目标向量之间的关系;相关技术中实现隐状态的交叉需要执行平方级的全连接处理,其计算复杂度非常高;而本技术采用快速傅里叶变换的隐状态交叉方法可以高效实现隐状态交叉,有利于降低计算的复杂度,提高处理的效率;在该基础上,针对目标信息的输出序列进行特征感知处理,得到目标信息的目标序列,可以有效提高目标序列所表示的目标信息中各个目标对象在目标信息中与其他目标对象相关的语义信息的准确度。
附图说明
21.为了更清楚地说明本技术实施例中的技术方案,下面将对本技术实施例描述中所需要使用的附图作简单地介绍。
22.图1为本技术实施例提供的一种信息处理方法的流程示意图;
23.图2为本技术实施例中提供的一种信息处理流程的示意图;
24.图3为本技术实施例中提供的一种隐状态交叉的示意图;
25.图4为本技术实施例中提供的一种池化的隐状态交叉的处理流程示意图;
26.图5为本技术实施例中提供的一种可预测的稀疏注意力机制的计算过程示意图;
27.图6a为本技术实施例中提供的一种生成预测的稀疏注意力矩阵的流程示意图;
28.图6b为本技术实施例中提供的一种预测的稀疏注意力矩阵的结构示意图;
29.图7为本技术实施例中提供的一种确定上下文感知的向量的流程示意图;
30.图8为本技术实施例中提供的一种注意力机制的处理过程示意图;
31.图9为本技术实施例提供的一种信息处理装置的结构示意图;
32.图10为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
33.下面结合本技术中的附图描述本技术的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本技术实施例的技术方案的示例性描述,对本技术实施例的技术方案不构成限制。
34.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组
件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“a和/或b”指示实现为“a”,或者实现为“a”,或者实现为“a和b”。
35.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
36.下面对本技术涉及的相关技术进行说明:
37.人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
38.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。在本技术中,可以涉及自然语言处理技术。
39.自然语言处理(nature language processing,nlp)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
40.在本技术中可以解决自然语言处理中针对待处理的信息进行处理时,如何确定某一目标向量与其他目标向量之间的语义信息的技术问题。具体来说,如针对给定的一句话,其中每一个词可以被视为一个标识token,经过词向量查询得到每个token的向量表示,这些向量构成了这句话的词向量序列,此时的向量为孤立词向量,即每个token的向量表示与句子中的其他token无关,需要解决的问题是如何得到与句子中其他token有关的每个词的向量表示,即上下文建模。
41.下面以语句处理为例对相关技术中针对如何确定各词向量在语句中所对应的上下文语义信息的方法进行说明。
42.目前相关技术中主要采用循环神经网络、卷积神经网络、transformer模型解决上述技术问题。其中,循环神经网络通过逐词更新记忆单元实现单向或双向的上下文建模,但是其缺点明显,即模型难以并行,因此计算速度慢,难以构建大规模模型。其中,卷积神经网络通过卷积操作,不断感知局部特征,通过叠加多层次实现对长上下文的感知,然而卷积对上下文的感知是局部,因此对于长序列需要非常多层数才能建模全局信息,但该处理效率非常低。其中,transformer模型通过自注意力机制实现对上下文的全局感知,然而,其计算复杂度与序列长度呈平方级关系,也即当处理序列增长10倍,需要的计算量就要变成100
倍。
43.从上述对相关技术的分析可见,针对全局信息感知的问题,全局信息是相对局部信息而言的,局部信息即通过小范围几个词可以得出的信息,全局信息则需要感知长跨度的词之间的关联得出;具体地,在感知全局信息时需要计算句子中两两token的相似度,其导致计算复杂度与序列长度呈平方级关系,不但计算复杂度高、耗时也长;另外,由于自注意力机制本身的特点,随着模型深度的增加,特征矩阵的秩不断降低,自注意力矩阵也越来越相似,导致深层模型难于获取新信息,最终导致模型的感知模式受限,模型输出的正确率较低。
44.针对相关技术中所存在的上述至少一个技术问题或需要改善的地方,本技术提出一种信息处理方法、装置、电子设备、计算机可读存储介质和计算机程序产品;具体地,本技术的实施采用快速傅里叶变换的卷积的隐状态交叉方法可以高效实现两两隐状态交叉,有利于降低计算的复杂度,提高处理的效率;在该基础上,可以有效提高目标信息中各个目标对象与其他目标对象相关的语义信息的准确度。
45.下面通过对几个示例性实施方式的描述,对本技术实施例的技术方案以及本技术的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
46.本技术实施例中提供了一种信息处理方法,如图1所示,图1示出了本技术实施例提供的一种信息处理方法的流程示意图,其中,该方法可以由任一电子设备执行,如可以是用户终端,也可以是服务器,用户终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载设备等,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(content delivery network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,但本技术并不局限于此。
47.具体地,信息处理方法可以包括下述步骤s101-s102:
48.步骤s101:针对目标信息的输入序列中的至少两个目标向量进行基于快速傅里叶变换的特征交叉处理,得到所述目标信息的输出序列。
49.具体地,目标信息可以是多媒体信息,如图像、音频、和语料corpus中的一种;其中语料可以是字、词语、句子、片段、文章等。在本技术实施例中,为更好地说明各实例的情况,以针对句子、片段、文章等语料的处理为例进行说明。如,目标信息可以是句子“大熊猫的眼睛是黑色的”。
50.可选地,目标信息在不同的应用场景中可以是基于不同的输入来源获得的,如在语音交互场景,目标信息可以是用户语音输入的某一条指令;如在语义理解场景,目标信息可以是用户在特定文章中选定的某一句子。
51.其中,目标信息的输入序列可以是采用前置模块对目标信息对应的文本进行目标向量转换得到的向量序列;向量序列的物理含义是对信息语义的数学表征。在一定的场景下,目标向量也可以称为隐状态。针对目标信息的输入序列举例说明:假设目标信息为“大熊猫的眼睛是黑色的”,在该目标信息中每个目标对象(词元)分别对应一个向量,从而组成
输入序列[x1x2x3x4x5x6x7x8x9x
10
],如“大”对应于向量x1,“熊”对应于向量x2等。
[0052]
其中,快速傅里叶变换(fast fourier transform,fft),是一种利用计算机计算离散傅里叶变换(dft)的高效、快速计算方法。本技术实施例采用fft算法降低相关技术中两两隐状态交叉的计算复杂度。将在后续实施例中,详细说明本技术实施例基于快速傅里叶变换的卷积的隐状态交叉的处理逻辑。
[0053]
其中,步骤s101中对至少两个目标向量进行基于快速傅里叶变换的特征交叉处理所实现的是隐状态交叉;隐状态交叉又称隐状态组合,通过特征x和特征y相乘来合成新特征xy;其目的是组合两个目标向量以得到含有语义依赖信息的高阶表示特征。
[0054]
其中,目标信息的输出序列可以是与输入序列长度相同的向量序列,可以理解的是,输出序列是对输入序列的特征提取,使得输出序列所表示的目标向量的语义信息产生变化,并作为后续特征感知处理的基础数据,提高本技术实施例信息处理中所确定语义信息的正确率。
[0055]
具体地,上述步骤s101可以通过如图2所示的池化的隐藏状态交叉模块执行一种编码和压缩对象(如词元)对语义依赖的有效算法,得到目标信息的输出序列(如图2所示的交叉向量)。
[0056]
步骤s102:针对所述目标信息的输出序列进行特征感知处理,得到所述目标信息的目标序列;其中,所述目标序列表示所述目标信息中的各个目标对象在所述目标信息中与其他目标对象相关的语义信息。
[0057]
具体地,在本技术实施例中可以采用基于注意力机制(attention mechanism)的注意力模型对目标信息的输出序列进行特征感知处理。其中,针对目标信息的输出序列,注意力模型可以用于学习该输出序列中每个目标向量的相关目标向量。其中,如针对语句处理时,目标向量可以是词向量,目标对象可以是语句包括的词。如针对图像处理时,目标对象(如像素)之间相关的语义信息可以是指纹理、颜色等。
[0058]
具体地,上述步骤s102可以通过如图2所示的稀疏注意力矩阵估计模块,以端到端的方式预测注意力矩阵的离散的主导(非零)索引;继而通过如图2所示的分散注意力模块执行一系列分散操作有效地计算上下文感知向量(即目标信息的目标序列)。
[0059]
其中,当将本技术实施例上述提供的改进内容应用于nlp领域的相关模型中时,步骤s102中的改进可以适应于注意力attention层。如应用于采用编码器-解码器(encoer-decoder)架构的transformer模型时,可以应用于架构中的attention层。
[0060]
具体地,本技术实施例提供一种高效的transformer架构,称为fourier sparse attention for transformer(fsat),用于快速进行上下文感知。本技术实施例提出的fsat模型不仅可以降低计算复杂度,还提高了模型的精度。具体包括两个核心的子模块,其一是基于快速傅里叶变换的隐状态交叉模块,通过o(n logn)的时间复杂度捕获和池化n2个语义项;其二是稀疏注意力矩阵估计模块,基于隐状态交叉模块的输出预测注意力矩阵的主导元素,通过重新参数化和梯度截断,fsat可以学习主导元素的索引。本技术的实施有利于将序列长度的整体复杂度从o(n2)降低到o(n logn)。
[0061]
在一实施例中,如图2所示,本技术实施例提供的方法的处理流程可以是:针对输入的内容(如要编码的序列,可以是文本),通过查找词元嵌入表确定相应的词元向量;继而通过池化的交叉隐状态模块有效地实现词元对的交叉,以构造交叉向量,具体地为构造包
含上下文依赖信息的交叉向量;而后,基于交叉向量,可以采用稀疏注意力矩阵估计算法计算稀疏注意力矩阵;进而,可以根据预测的稀疏注意力矩阵,通过一系列分散操作输出所输入序列的上下文感知(目标序列)。
[0062]
在本技术实施例中,上述步骤s101与步骤s102所涉及的改进可以应用于自然语言处理模型的注意力层,如将步骤s101的全连接网络作为特征感知层的前置部分,将全连接网络的输出作为特征感知层的输入。其中,在全连接网络中采用基于快速傅里叶变换的特征交叉方法改进相关技术中两个隐状态的交叉处理;在特征感知中采用可预测的稀疏注意力机制改进相关技术中的注意力机制,以降低模型计算的复杂度。
[0063]
下面针对本技术实施例中的隐状态交叉的具体处理过程进行说明。
[0064]
在本技术实施例中,基于下述各项考虑因素,对目标信息的输入序列中的目标向量进行隐状态交叉:(1)隐状态交叉是一种提取二阶标记特征的方法,可以生成更具表现力的特征表示;(2)隐状态交叉可以捕获远距离语义的依赖关系,有利于执行序列转导任务;(3)隐状态交叉是深度进行的,可以通过快速傅里叶变换实现。
[0065]
在本技术实施例中,考虑到在实现至少两个隐状态的交叉时,可以通过全连接结构或深度可分卷积的网络进行处理,将隐状态向量xi和xj分别通过参数化的非线性特征映射函数并按元素相乘得到交叉后的状态。具体地,基于给定的输入序列可以参考下述公式(1):
[0066][0067]
在公式(1)中,为词元i对应的向量表示;为词元j对应的向量表示;f1(
·
)和f2(
·
)为参数化的非线性特征映射函数(其参数分别对应为第一可学习参数矩阵,第二可学习参数矩阵);

为hadamard乘积(按元素乘法),c
i,j
是词元i和词元j的交叉状态。是词元i和词元j交叉状态对应的向量表示;其中,可学习的参数矩阵随着模型的训练,参数矩阵中的元素值(参数)将适应发生变化。
[0068]
另外,考虑到在通过全连接结构实现两两隐状态的交叉时,如果是针对一个长度为n的词元序列,则需要进行n2的全连接处理,一方面该计算复杂度较高,另一方面n2个输出向量太大难以存储和在注意力模型中使用,因此,本技术实施例可以采用如下基于快速傅里叶变换的隐状态交叉算法实现两两隐状态的交叉。
[0069]
在一实施例中,步骤s101中针对目标信息的输入序列中的至少两个目标向量进行基于快速傅里叶变换的特征交叉处理,得到目标信息的输出序列,包括以下步骤a1-a2:
[0070]
步骤a1:针对目标信息的输入序列中的至少两个目标向量,基于特征函数确定相应的交叉隐状态。其中,所述特征函数包括参数化的非线性特征映射函数f()。
[0071]
步骤a2:基于快速傅里叶变换对所述交叉隐状态进行求解,得到目标信息的输出序列。
[0072]
在一实施例中,步骤a1中针对目标信息的输入序列中的至少两个目标向量,基于特征函数确定相应的交叉隐状态,包括以下步骤a11-a12:
[0073]
步骤a11:基于目标信息的输入序列确定第一序列与第二序列。
[0074]
其中,可以理解是第一序列与第二序列为长度相同,对象(如词元)相同的向量序列。可选地,第一序列对应于隐状态i所在的序列,第二序列对应于隐状态j所在的序列。
[0075]
步骤a12:针对所述第一序列中的第一目标向量与第二序列中的第二目标向量基于特征函数确定相应的交叉隐状态;其中,在特征函数中,所述第一目标向量与第二目标向量不同;所述第一目标向量对应于第一可学习参数矩阵,第二目标向量对应于第二可学习参数矩阵。
[0076]
以上述目标信息为“大熊猫的眼睛是黑色的”为例,对步骤a11和步骤a12进行说明。
[0077]
基于目标信息的输入序列[x1x2x3x4x5x6x7x8x9x
10
]可以确定如下序列:
[0078]
第一序列[x
i1
x
i2
x
i3
x
i4
x
i5
x
i6
x
i7
x
i8
x
i9
x
i10
];
[0079]
第二序列[x
j1
x
j2
x
j3
x
j4
x
j5
x
j6
x
j7
x
j8
x
j9
x
j10
]。
[0080]
或者,
[0081]
第一序列[x1x2x3x4x5x6x7x8x9x
10
],i∈[1,10];
[0082]
第二序列[x
11
x
12
x
13
x
14
x
15
x
16
x
17
x
18
x
19
x
20
],j∈[11,20]。
[0083]
上述序列仅是作为例子对第一序列与第二序列进行区别,在实际应用中并不限定序列的表现形式。
[0084]
其中,在进行两两隐状态的特征交叉处理时,分别从第一序列中获取一个向量,和从第二序列中获取一个向量进行处理。
[0085]
具体地,在上述公式(1)的基础上,第一序列和第二序列卷积的第k个输出的计算形式可以参考下述公式(2):
[0086][0087]
在上述公式(2)中,序列xi对应于第一序列,序列xj对应于第二序列,ck为隐状态交叉沿图3的第k条反对角线的加和,因此输出向量可以由原来的n2(例如)个减少至2n-1(例如)个。
[0088]
可选地,由于频域中的乘积等价于时域中的乘积,因此,上述公式(2)所示的表达式可以通过快速傅里叶变换求解,在求解过程中,隐状态首先通过非线性特征映射函数转换,接下来在转换后的隐状态的序列维度应用1维傅里叶变换,将其转入频域,并在频域完成卷积变换,最后使用逆1维傅里叶变换将交叉且加和的隐状态从频域转换回来。由于hermitian性质,输出的虚部为零,因此可以安全地仅保留实部从而避免为模型引入复数。
[0089]
具体地,步骤a1中基于快速傅里叶变换对所述交叉隐状态进行求解,得到目标信息的输出序列,包括以下步骤a13-15:
[0090]
步骤a13:基于实部快速傅里叶变换求解与第一目标向量和第一可学习参数矩阵对应的第一特征函数,得到第一特征信息;
[0091]
步骤a14:基于实部快速傅里叶变换求解与第二目标向量和第二可学习参数矩阵对应的第二特征函数,得到第二特征信息;
[0092]
步骤a15:基于逆实部快速傅里叶变换求解所述第一特征信息与第二特征信息的卷积变换,得到目标信息的输出序列。
[0093]
具体地,步骤a13和a14中,对第一特征函数和第二特征函数通过非线性特征映射函数转换后,转换后的隐状态的序列基于1d(1维)傅里叶变换转入频域后,在频域完成卷积变换(对应于第一特征信息与第二特征信息对应的卷积变换);进而,在步骤a15中,通过逆1d傅里叶变换将交叉且加和的隐状态从频域中进行转换,最终得到目标信息的输出序列。
[0094]
针对上述步骤a13-a15的求解过程,可以参考下述公式(3):
[0095][0096]
在上述公式(3)中,x为包含n个d维隐状态向量的输入矩阵(x∈rn×d),f和f-1
分别表示实部快速傅里叶变换和逆实部快速傅里叶变换,r代表保留复数实部的操作,c0(c0∈r
(2n-1)
×d)即是本技术实施例求解得到的隐状态交叉结果(如与目标信息的输出序列对应的交叉矩阵)。其中,第一特征函数对应于f1(x);第二特征函数对应于f2(x)。
[0097]
在本技术实施例中,将序列的整体长度的计算复杂度通过fft从o(n2)降低到o(n logn)。
[0098]
在本技术实施例中,针对每个目标向量对(当所处理的目标对象为词时,可以是词元对)的组合,可以通过隐藏状态交叉捕获长期语义依赖和相关性(捕捉语义相关性也是可预测的稀疏注意力机制的基础);针对交叉和池化隐藏状态是按照深度进行的情况,可以通过快速傅立叶变换高效实现。具体地,图4为图2所示的池化的隐状态交叉模块的处理流程图,如图4所示,本技术实施例中,针对输入序列的每个词元(也即一个词)的嵌入向量由非线性特征映射函数f(
·
)转换;继而,每两个词元之间按元素相乘来实现词元对交叉,生成向量c
i,j
;然后,所有词元对可以形成一个l*l*d大小的张量,其中,l可以是序列长度,d可以是向量的维度,在此基础上,沿着反对角线进行和池化可以生成交叉向量ck;其中,沿着反对角线进行和池化操作可以减少信息混淆的情况以及可以通过fft快速有效的实现;进而,所得到的所有交叉向量构成模块的输出,且输出中包含了上下文语义依赖。
[0099]
下面结合图3,以矩阵形式对本技术实施例中基于快速傅里叶变换的卷积的隐状态交叉算法的具体内容进行说明。
[0100]
如图3所示,其可以是一个n
×
n的矩阵(目标信息的输入序列长度为n),第i行第j列的元素代表词元i和词元j的隐状态交叉,ck即为按照反对角线的形式将第k条反对角线通过的元素加和的结果。所有n条反对角线上的加和结果构成最终的输出(可以采用矩阵的形式输出,在本技术实施例中可以称为交叉矩阵),即交叉后的隐状态。
[0101]
下面针对本技术实施例中特征感知处理的具体过程进行说明。
[0102]
在一可行的实施例中,步骤s102中针对所述目标信息的输出序列进行特征感知处理,包括以下步骤s1021-s1022:
[0103]
步骤s1021:删除所述目标信息的输出序列所对应交叉矩阵中相同的元素值;该元素值为两两目标向量交叉后的隐状态;
[0104]
步骤s1022:针对删除相同元素值后的交叉矩阵进行特征感知处理。
[0105]
具体地,从上述公式(3)的输出可见,其包括2n-1个向量,这是序列长度的2倍。为
了保持后续基于注意力机制进行特征感知时计算复杂度不增加,长度需要减小。因此,本技术实施例还提供一种基于中心词元对称的改进。如图3所示,沿反对角线加和产生关于中心词元对称的词元组合(交叉)。具体地,在偶数对角线,中心词元是第k/2个词元,例如,第10条反对角线的词元组合包括5-5,4-6,3-7,依此类推。在奇数反对角线,对称中心在第k/2向下取整和第k/2向上取整之间,例如,第11条反对角线包括词元组合5-6,4-7,3-8,依此类推。因此,本技术实施例可以通过合并相邻偶数和奇数的反对角线来减少长度。在前面的例子中,第10和第11条反对角线被加在一起。除此之外,两个相同词元的组合被减去,如词元组合5-5。具体地,可以表达如下述公式(4)所示:
[0106]
c=ln(c1 c
2-f1(x)

f2(x))......公式(4)
[0107]
其中,c1(补充一行零以与c2长度对齐)和c2分别是矩阵c0的奇数、偶数行。ln代表层标准化操作以保证训练稳定,c是输出矩阵(也即删除交叉矩阵c0中相同元素值后得到的矩阵)。其中,c1∈rn×d;c2∈rn×d;c∈rn×d。
[0108]
图3中,w1和w2分别为f1(x)和f2(x)的参数。
[0109]
在一可行的实施例中,考虑到注意力矩阵的稀疏性并不意味着所有词元对(词元组合,也即隐状态的交叉)都是相关的。为了反映这一性质,本技术实施例将门限机制集成到隐状态交叉中,集成后的隐状态交叉可以称为门限隐状态交叉。
[0110]
具体地,步骤s102中针对所述目标信息的输出序列进行特征感知处理,包括以下步骤s1023:
[0111]
步骤s1023:针对所述目标信息的输出序列中具备相关性的目标向量对的隐状态进行特征感知处理;所述目标向量对为进行特征交叉的两两目标向量。
[0112]
具体地,具备相关性的目标向量对也即门限隐状态交叉,其具体的定义可以表达如下公式(5)所示:
[0113][0114]
在上述公式(5)中,σ()为参数化的门函数,下标1和2表述包含不同的参数。门限隐状态为c
ij
⊙gij
,其中g
ij
用于控制两个词元(目标向量)的相关度和信息通过量。为了避免重新定义前述公式造成理解上的混淆,本技术实施例通过定义下述特征映射函数以集成门限机制,具体表达如下公式(6):
[0115][0116]
在上述公式(6)中,τ()是参数化的非线性函数,在本技术实施例中使用1层全连接网络或深度可分的卷积网络作为参数化的函数。可选地,可以使用elu激活函数和sigmoid激活函数分别作为非线性特征映射函数和门函数。
[0117]
具体地,考虑到在相关技术所采用的注意力机制中,若针对一个序列长度为n的目标信息,需要计算n2大小的完整注意力矩阵,其计算量复杂度高,且与序列长度呈平方级关系。本技术实施例提出一种通过只计算注意力矩阵中主导元素(非零元素)以求解注意力矩
阵的稀疏矩阵形式,以降低计算复杂度,具体地,将计算复杂度从o(n2)降低到o(n logn),并且此计算过程是可导的,具体可以由学习算法自动学习得到。
[0118]
在一实施例中,步骤s102中针对所述目标信息的输出序列进行特征感知处理,包括以下步骤b1:
[0119]
步骤b1:针对所述目标信息的输出序列所对应交叉矩阵中的主导元素进行特征感知处理;其中,所述主导元素包括非零元素。
[0120]
其中,交叉矩阵可以是步骤s101的输出结果,也即交叉后的隐状态,在步骤b1中,基于交叉后的隐状态进行特征感知处理,有利于提高上下文建模模型确定所得语义信息的正确率。其中,特征感知可以基于预构建的注意力模型进行处理。
[0121]
可选地,步骤b1还可以是在基于步骤s1021-s1022所对应的实施例,和基于步骤s1023所对应的实施例中的至少一个的基础上进行特征感知处理。也即,步骤b1在针对交叉矩阵中的主导元素进行特征感知处理时,交叉矩阵可以是指步骤s101输出的输出序列所对应的交叉矩阵、也可以是已删除相同元素值的矩阵、还可以是指仅包括具备相关性的目标向量对的隐状态的矩阵。
[0122]
具体地,下面结合图5所示的可预测的稀疏注意力机制的计算过程示意图对特征感知处理的具体过程进行说明。
[0123]
在一实施例中,步骤b1中针对所述目标信息的输出序列所对应交叉矩阵中的主导元素进行特征感知处理,得到所述目标信息的目标序列,包括以下步骤b11-b13:
[0124]
步骤b11:确定所述目标信息的输出序列对应的交叉矩阵中主导元素的列索引。
[0125]
具体地,使稀疏注意力矩阵可预测的关键是使预测的离散索引可导,本技术实施例提出主导索引矩阵(由非零元素的列索引构成)以使离散索引重参数化。具体地,可以通过下述公式(7-1)计算得到预测的非零元素的列索引i:
[0126][0127]
在上述公式(7-1)中,wi和bi分别为可学习的权重和偏置量,wi∈rd×n;σ表述sigmoid激活函数,nmax为模型支持的最大长度;c是交叉矩阵。例如,最大长度为2000,预测的ik可能为135,则表示稀疏注意力矩阵的第k行第135列为非零元素。由于一个键向量可能有多个主导查询向量,本技术通过超参数m假设主导查询向量的最大个数。
[0128]
其中,在得到目标信息的输出序列(如图6a所示输入的交叉向量)时,各交叉向量的均值索引除可以通过上述公式(7-1)计算外,如图6a所示,还可以通过如下公式(7-2)计算得到:
[0129][0130]
在上述公式(7-2)中,k为矩阵的第k行,l
max
为模型支持的最大长度,sigmoid与ffn为激活函数,ck为交叉向量。
[0131]
具体地,结合图6a对本技术实施例中如何在不计算完整注意力矩阵的情况下,找
到注意力矩阵中哪些元素是占主导地位(非零)的过程进行说明。
[0132]
首先,针对输入的交叉向量,每个交叉向量的均值索引可以根据上公式(7-2)计算得出,这意味着注意力矩阵的第k行遵循均值为的高斯分布;继而,根据预测的均值以及超参数方差σ^2,从高斯分布中采样m个索引ik,超参数(例如m和σ^2)可以通过交叉验证确定;基于此,可以获得索引,例如索引(k,ik)是指第k行、第ik列是一个主导元素;继而,根据预测的索引分散元素,可以预测出稀疏注意力矩阵的模式。
[0133]
为协助模型学习稀疏注意力矩阵,本技术实施例引入注意力置信度。具体地,定义第j个查询向量对第k个键向量的置信度可以表达如下公式(8)所示:
[0134][0135]
其中,n表述高斯分布,ii为主导查询向量的索引(i∈nn×m),主导查询向量以主导注意力得分关注键向量(如边i
i-》i对应注意力矩阵中的一个主导元素)。σ2是代表方差的超参数。上述公式(8)的定义是基于远离主导查询向量的查询向量有递减的对键向量的关注概率的观察。
[0136]
具体地,给定由索引矩阵i描述的稀疏图,其中i
ij
表示从第i
ij
个查询向量到第i个键向量有一条有向边,每条边的置信度可以按如下公式(9)计算:
[0137][0138]
其中,i
ij
是第i个键向量的第j个主导索引。因此,通过梯度的链式法则,置信度的梯度可以由损失函数持续地传递到矩阵c。
[0139]
步骤b12:基于所述列索引确定稀疏矩阵的置信度,并基于稀疏矩阵的置信度和注意力概率矩阵得到稀疏注意力矩阵。
[0140]
具体地,索引矩阵i决定了稀疏图中哪些边被考虑,哪些忽略。在本技术实施例中可以涉及两种索引矩阵,一种是预测的索引矩阵i
p
=[i],一种是随机索引矩阵ir~u(0,n-1),学习稀疏矩阵的过程可以看作是搜索正确索引的过程,这个一个探索新知识和利用已有知识的过程。因此在模型训练中,可以使用两种索引矩阵i
p
和ir的并集,在推理测试时仅使用预测的索引矩阵i
p

[0141]
具体地,在获得每行的非零元素的列索引后,可以按照列索引构造出稀疏矩阵(还可以称为稀疏注意力矩阵)。可以将可预测的稀疏注意力方法用带权有向稀疏图解释,其中包括n个输入序列的查询/键向量,它们之间的有向边表示头节点关注尾节点,每条边有两个权重(注意力概率和置信度)。注意力矩阵即是图的邻接矩阵。进而可以通过以下公式(10-1)计算得到稀疏注意力的第i个输出:
[0142][0143]
在上述公式(10-1)中,qi为查询向量,k、v分别为由c和x映射而来的键矩阵和值矩阵,d为每个头的向量维度,ψ()是softmax函数,π操作表示h个头的计算结果按维度拼接,ni是第i个节点的邻居节点的集合,当ni位于下标位置时,表示仅提取矩阵中与其中节点对应的行,s
i-》ni表示包含由节点i指向ni中节点的边对应的置信度得分,对应多头注意力机制,多个头独立计算,上标h表示多头注意力中的头序号。其中,查询矩阵在本技术实施例中可以是指针对构建的稀疏矩阵,找到矩阵中每一行出现的元素。
[0144]
其中,对应于上述公式(10-1),第h个头的查询矩阵q、键矩阵k、值矩阵v,可以通过下述表达式获得:
[0145][0146]
在本技术实施例中,在通过步骤b11得到矩阵的索引时,针对每个预测的主导元素填充有注意力概率和注意力置信度(如图6b所示),具体表述如下公式(10-2)所示:
[0147][0148]
在公式(10-2)中,为注意力概率,也即第i个词元和第j个词元相关的概率;为注意力置信度,也即一个矩阵元素是主导元素的置信度。具体地,本技术实施例通过引入注意力置信度来实现注意力矩阵稀疏结构的自动学习;其中,将第i个查询向量与第j个键向量的置信度定义为预测的高斯分布的值。
[0149]
在本技术实施例中,如公式(10-2)中的注意力概率对应于标准注意力矩阵,当引入注意力置信度来实现注意力矩阵稀疏结构的自动学习时,也即引入了一种重参数化的处理,通过重参数化,索引预测变得可学习。
[0150]
步骤b13:基于所述稀疏注意力矩阵确定所述目标信息的目标序列。
[0151]
具体地,可以通过上述公式(10-1)计算确定目标序列中各词元与其他词元相关的语义信息。
[0152]
在一实施例中,基于预构建的注意力模型执行所述针对所述目标信息的输出序列所对应交叉矩阵中的主导元素进行特征感知处理,得到所述目标信息的目标序列的步骤。所述注意力模型在训练时,对反向传递的正梯度进行梯度截断;其中,反向传递的梯度由模型损失值与列索引均值确定。使稀疏注意力矩阵可预测的关键是通过预测的离散的索引反向传播梯度。在本技术实施例中,离散索引通过将注意力概率与注意力置信度相乘来重参数化。因此,学习离散索引变得可微,可以以端到端的方式进行学习。
[0153]
其中,反向传递算法,又称反向传播算法(back propagation algorithm,bp算法),可以理解为一种根据损失函数loss计算模型参数梯度,更新模型参数的算法。反向传
递算法可以由两个环节(激励传播、权重更新)反复循环迭代,直到网络对输入的响应达到预定的目标范围为止。其中,梯度为损失函数loss关于参数的导数向量。
[0154]
在本技术实施例中,为了实现上述特征感知计算过程的可学习方案,考虑到由于在梯度下降算法中,置信度的正梯度会降低边上的置信度值,这意味着梯度阻止模型在稀疏注意力中考虑这些边,并且调整模型参数以改变预测的主导索引。但是由于索引的离散性,改变预测的主导索引更大或更小不能保证向正确的主导索引接近。相反,负梯度说明命中正确的主导索引,因此,本技术实施例设置模型由负梯度调整。
[0155]
具体地,在注意力模型训练时,对反向传递算法的梯度做梯度截断处理,也即截断对列索引均值的正梯度。
[0156]
具体地,如下公式(12)所示:
[0157][0158]
在上述公式(12)中,loss是模型的损失,代表模型损失loss关于变量的偏导数。
[0159]
在一可行的实施例中,本技术实施例针对上述实施例中提出的隐状态交叉的改进,适应修改自注意力模型的处理;可选地,对应于上述公式(10-1),当不使用稀疏注意力机制时,公式(10-1)可以表达如下公式(11)所示:
[0160][0161]
在上述公式(11)中,d是单个头部的向量维度;上标h表示多头注意力中的头序号;π操作表示h个头的计算结果按维度拼接;ψ()是softmax函数;wo∈r
hd
×d是输出映射矩阵。其中,本技术实施例针对查询向量、键和值做了相应的修改,具体可参见上述公式(10-1)下方各参数所对应的表达式。
[0162]
具体地,适应于上述步骤s102,在不采用稀疏注意力机制时,直接基于目标信息的输出序列进行特征感知处理时,可以基于上述公式(11)所示的内容进行处理。
[0163]
下面针对本技术实施例中关于复杂度方面的改进进行说明。
[0164]
本技术实施例在提出的可预测的稀疏注意力机制在时间和内存使用方面具有较低的计算成本。
[0165]
具体地,隐状态交叉的计算复杂度包括特征映射o(nd2)和快速傅里叶变换o(nd logn)。上述公式(10-1)所涉及的计算复杂度包括计算注意力概率o(nmd)、计算注意力置信度o(ndm)、以及关于值矩阵和映射矩阵的矩阵乘法o(nmd nd2)。整体计算复杂度为o(nd2 nd logn nmd)。由于m一般是非常小的,例如m=4,对于长度列,这个计算复杂度远小于o(n2d
nd2)。在内存使用方面,稀疏注意力不需要存储完整的注意力矩阵,因此内存复杂度从o(n2h)降低至o(nmh)。
[0166]
在本技术实施例中,考虑到矩阵乘法的高复杂度,提供一种通过分散注意力的有效算法,该算法可以保持细粒度的稀疏模式,即词元级粒度,从而同时保证高精度和高效率。
[0167]
在一可行的实施例中,在步骤b13中基于所述稀疏注意力矩阵确定所述目标信息的目标序列,包括步骤b131-b132:
[0168]
步骤b131:基于从所述稀疏注意力矩阵中选取的主导元素与相应的值向量确定元素向量;
[0169]
步骤b132:基于所选取的主导元素的索引,针对所述元素向量执行分散和加操作,确定所述目标信息的目标序列。
[0170]
具体地,如图7所示,该算法的处理过程包括:从预测的稀疏注意力矩阵中选取主导元素,并与值向量相乘,得到元素向量;继而,根据选取的元素的索引对步骤b131所得到的元素向量执行分散和加(scatter_add)操作;进而,输出上下文感知向量(也即目标序列)。
[0171]
下面结合图8针对本技术实施例中对注意力机制的改进进行说明。
[0172]
如图8所示,其示出注意力机制的处理过程。其中,q、k、v分别表示查询、键、值张量,是输入序列嵌入的投影;d是张量维数,l是输入序列的长度,a是注意力矩阵。
[0173]
在本技术实施例中,考虑到矩阵相乘matmul的处理在q和k之间的计算复杂度是长度l的二次方(平方级),而二次方的计算需要耗费大量的长序列的计算时间和空间成本;且长序列的处理容易丢失信息,导致处理结果的准确性降低。因此,针对图8所示的虚线框1所示的矩阵相乘部分进行优化。具体地,通过稀疏注意力矩阵估计以及池化的隐藏状态交叉优化虚线框1所示的矩阵相乘部分,如将二次方的计算调整为对数线性计算,以降低计算复杂度,提高处理结果的准确性。
[0174]
另外,本技术还考虑到矩阵相乘matmul的处理在a和v之间的计算复杂度也是长度l的二次方,同样存在耗费大量的长序列的计算时间和空间成本的问题,通过分散的注意力机制优化虚线框2所示的矩阵相乘部分,如将二次方的计算调整为线性计算,以降低计算复杂度。
[0175]
下面针对本技术实施例提供的信息处理方法提供一种可行的应用例,以对本技术实施例所能达到的效果做具体说明。
[0176]
具体地,将本技术实施例上述实施例涉及的改进方案代入transformer模型的训练过程中。其中,模型输入可以采用listops数据中的序列,也即目标信息的输入序列,序列形式如下:
[0177]
[max 4 3[min 2 3]1 0[median 1 5 8 9,2]]
[0178]
该序列为一串嵌套结构的数学运算表达式,模型的处理目标是输出这个数学表达式的运算结果(模型输出为5)。序列长度最大为2000。
[0179]
在应用例中,采用transformer模型处理上述任务,并通过本技术实施例所提出的方法改进transformer中注意力层。
[0180]
在一实施例中,本技术实施例提供的技术方案也适用于低算力设备。
[0181]
对于低算力设备的情况,由于计算能力有限,考虑到时间延迟和内存使用的问题,本技术实施例的目标是降低现有基于注意力机制的模型的计算成本。
[0182]
在低算力设备上工作的详细过程如下:
[0183]
1.识别计算能力。
[0184]
不同的设备可能有不同的计算能力,可以通过每秒基本计算操作的数量(ops)来衡量计算能力。例如,一台清洁机器人的计算能力可能约为500m ops,一台智能手机的计算能力约为1~10t ops。
[0185]
内存使用量是通过ram中的模型大小来衡量的,例如,在清洁机器人上限制200kb,在智能手机上限制10mb。
[0186]
2.限制/调整影响模型时间延迟和内存使用的关键超参数。
[0187]
影响模型时间延迟和内存使用的关键超参数包括向量维数d、层数n、最大序列长度l、注意力头数h和索引采样数m。
[0188]
模型的时间延迟可以估计为o(nld2 nldlog l nlmd)。
[0189]
内存使用量可以估计为o(nlmh nld)。
[0190]
例如,一台设备的运算能力约为500m ops,为使得模型能在100毫秒内响应用户的请求,公式o(nld2 nldlog l nlmd)的值应小于5m。在这种情况下,关键超参数可以设置为d=32、n=1、l=512、m=4。如果设置内存使用量不超过200kb,h可以设置为2。
[0191]
m和l在线确定,其他超参数离线确定。
[0192]
3.接收用户请求,获取输入词元的嵌入向量。
[0193]
用户请求可以是字符/子词/词/像素序列等。将每个字符/子词/词/像素视为词元。通过查找嵌入向量表,可以得到了输入词元的嵌入向量。
[0194]
如果用户请求的序列长度超过最大序列长度l,则模型最多一次处理l个词元,并分多次执行以下处理步骤。
[0195]
4.通过多层神经网络模型生成上下文感知向量,每层执行以下过程。
[0196]
a、通过池化隐状态交叉模块计算交叉向量。
[0197]
以输入词元向量为输入,使用基于快速傅立叶变换的算法高效地计算词元对的语义依赖关系。
[0198]
该模块涉及的关键超参数是向量维数d、层数n、最大序列长度l和注意力头数h。
[0199]
b、基于交叉向量估计稀疏注意力矩阵。
[0200]
该模块涉及的关键超参数是向量维数d、层数n、最大序列长度l、注意力头数h和索引采样数m。
[0201]
c、通过分散操作有效地计算注意力输出。
[0202]
该模块涉及的关键超参数是向量维数d、层数n、最大序列长度l、注意力头数h和索引采样数m。
[0203]
d、通过全连接层提取词元级语义特征。
[0204]
该模块涉及的关键超参数是向量维数d、层数n和最大序列长度l。
[0205]
5.返回最后一层的注意力输出作为最终的上下文感知向量。
[0206]
本技术的实施可以有效降低计算成本(如第2步中提到的公式所示),因此可以应用于低算力设备。另外,上述过程可以应用于低算力设备和高算力服务器。不同之处在于,
不同的设备采用了不同的关键超参数,尤其是最大序列长度l和索引采样数m。对于计算能力高的设备,l和m可以设置较大的值。对于低算力的设备,l和m更小。
[0207]
本技术实施例也可以兼容多个ai模型工作的场景。本技术实施例是关于高效注意力模型的处理,因为注意力模型本身兼容多个ai模型的工作场景,因此本技术实施例也是兼容的。当用户请求多个请求时,上述过程将重复多次,在单线程设备上逐个处理每个请求,对于多线程设备,请求被分发到多个处理单元(例如cpu核心、gpu核心),并且上述过程并行地执行。
[0208]
下表1为本技术实施例提出的改进模型在listops数据集上的验证结果,transformer模型作为基线模型用于性能对比,结果如下:
[0209]
表1
[0210] 正确率相关技术37.3本技术46.5
[0211]
由上述表1所示的内容中,可见本技术实施例提出的模型大大提高了正确率。
[0212]
本技术实施例提供了一种信息处理装置,如图9所示,该信息处理装置400可以包括:交叉模型401和注意力模型402。
[0213]
其中,交叉模块401,用于针对目标信息的输入序列中的至少两个目标向量进行基于快速傅里叶变换的特征交叉处理,得到所述目标信息的输出序列;注意力模块402,用于针对所述目标信息的输出序列进行特征感知处理,得到所述目标信息的目标序列;其中,所述目标序列表示所述目标信息中的各个目标对象在所述目标信息中与其他目标对象相关的语义信息。
[0214]
在一实施例中,交叉模块401在用于执行针对目标信息的输入序列中的至少两个目标向量进行基于快速傅里叶变换的特征交叉处理,得到目标信息的输出序列时,具体用于:
[0215]
针对目标信息的输入序列中的至少两个目标向量,基于特征函数确定相应的交叉隐状态;
[0216]
基于快速傅里叶变换对所述交叉隐状态进行求解,得到目标信息的输出序列;
[0217]
其中,所述特征函数包括参数化的非线性特征映射函数。
[0218]
在一实施例中,交叉模块401在用于执行针对目标信息的输入序列中的至少两个目标向量,基于特征函数确定相应的交叉隐状态时,具体用于:
[0219]
基于目标信息的输入序列确定第一序列与第二序列;
[0220]
针对所述第一序列中的第一目标向量与第二序列中的第二目标向量基于特征函数确定相应的交叉隐状态;
[0221]
其中,所述第一目标向量与第二目标向量不同;在所述特征函数中,所述第一目标向量对应于第一可学习参数矩阵,第二目标向量对应于第二可学习参数矩阵。
[0222]
在一实施例中,交叉模块401在用于执行基于快速傅里叶变换对所述交叉隐状态进行求解,得到目标信息的输出序列时,具体用于:
[0223]
基于实部快速傅里叶变换求解与第一目标向量和第一可学习参数矩阵对应的第一特征函数,得到第一特征信息;
[0224]
基于实部快速傅里叶变换求解与第二目标向量和第二可学习参数矩阵对应的第二特征函数,得到第二特征信息;
[0225]
基于逆实部快速傅里叶变换求解所述第一特征信息与第二特征信息的卷积变换,得到目标信息的输出序列。
[0226]
在一实施例中,注意力模块402在用于执行针对所述目标信息的输出序列进行特征感知处理时,具体用于:
[0227]
删除所述目标信息的输出序列所对应交叉矩阵中相同的元素值;该元素值为至少两个目标向量交叉后的隐状态;
[0228]
针对删除相同元素值后的交叉矩阵进行特征感知处理。
[0229]
在一实施例中,注意力模块402在用于执行针对所述目标信息的输出序列进行特征感知处理时,具体用于:
[0230]
针对所述目标信息的输出序列中具备相关性的目标向量对的隐状态进行特征感知处理;所述目标向量对为进行特征交叉的目标向量。
[0231]
在一实施例中,注意力模块402在用于执行针对所述目标信息的输出序列进行特征感知处理时,具体用于:
[0232]
针对所述目标信息的输出序列所对应交叉矩阵中的主导元素进行特征感知处理;
[0233]
其中,所述主导元素包括非零元素。
[0234]
在一实施例中,注意力模块402在用于执行针对所述目标信息的输出序列所对应交叉矩阵中的主导元素进行特征感知处理,得到所述目标信息的目标序列时,具体用于:
[0235]
确定所述目标信息的输出序列对应的交叉矩阵中主导元素的列索引;
[0236]
基于所述列索引确定稀疏矩阵的置信度,并基于稀疏矩阵的置信度和注意力概率矩阵确定得到稀疏注意力矩阵;
[0237]
基于所述稀疏注意力矩阵确定所述目标信息的目标序列。
[0238]
在一实施例中,基于预构建的注意力模型执行所述针对所述目标信息的输出序列进行特征感知处理,得到所述目标信息的目标序列的步骤;
[0239]
所述注意力模型在训练时,对反向传递的正梯度进行梯度截断;
[0240]
其中,反向传递的梯度由模型损失值与列索引均值确定。
[0241]
在一实施例中,注意力模块402在用于执行基于所述稀疏注意力矩阵确定所述目标信息的目标序列时,具体用于:
[0242]
基于从所述稀疏注意力矩阵中选取的主导元素与相应的值向量确定元素向量;
[0243]
基于所选取的主导元素的索引,针对所述元素向量执行分散和加操作,确定所述目标信息的目标序列。
[0244]
本技术实施例的装置可执行本技术实施例所提供的方法,其实现原理相类似,本技术各实施例的装置中的各模块所执行的动作是与本技术各实施例的方法中的步骤相对应的,对于装置的各模块的详细功能描述具体可以参见前文中所示的对应方法中的描述,此处不再赘述。
[0245]
本技术实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现信息处理方法的步骤,与现有技术相比可实现:本技术针对目标信息的输入序列中的至少两个目标向量进行快速傅里叶变换的特
征交叉处理,可以得到目标信息的输出序列;其中,目标向量也称为隐状态,也即实现了隐状态的交叉,可以确定出目标信息中某一目标向量与其他目标向量之间的关系;相关技术中实现隐状态的交叉需要执行平方级的全连接,其计算复杂度非常高;而本技术采用快速傅里叶变换的隐状态交叉方法可以高效实现隐状态交叉,有利于降低计算的复杂度,提高处理的效率;在该基础上,针对目标信息的输出序列进行特征感知处理,得到目标信息的目标序列,可以有效提高目标序列所表示的目标信息中各个目标对象在目标信息中与其他目标对象相关的语义信息的准确度。
[0246]
在一个可选实施例中提供了一种电子设备,如图10所示,图10所示的电子设备1200包括:处理器1201和存储器1203。其中,处理器1201和存储器1203相连,如通过总线1202相连。可选地,电子设备1200还可以包括收发器1204,收发器1204可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器1204不限于一个,该电子设备1200的结构并不构成对本技术实施例的限定。
[0247]
处理器1201可以是cpu(central processing unit,中央处理器),通用处理器,dsp(digital signal processor,数据信号处理器),asic(application specific integrated circuit,专用集成电路),fpga(field programmable gate array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1201也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0248]
总线1202可包括一通路,在上述组件之间传送信息。总线1202可以是pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。总线1202可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0249]
存储器1203可以是rom(read only memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,ram(random access memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom(electrically erasable programmable read only memory,电可擦可编程只读存储器)、cd-rom(compact disc read only memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
[0250]
存储器1203用于存储执行本技术实施例的计算机程序,并由处理器1201来控制执行。处理器1201用于执行存储器1203中存储的计算机程序,以实现前述方法实施例所示的步骤。
[0251]
其中,电子设备包括但不限于:智能手机、平板电脑、笔记本电脑、智能音箱、智能手表、车载设备等。
[0252]
本技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
[0253]
本技术实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处
理器执行时可实现前述方法实施例的步骤及相应内容。
[0254]
本技术所提供的实施例中,由电子设备执行的上述设备的位姿估计方法可以使用人工智能模型来执行。
[0255]
根据本技术的实施例,在电子设备中执行的该方法可以通过使用图像数据或视频数据作为人工智能模型的输入数据来获得识别图像或图像中的图像特征的输出数据。人工智能模型可以通过训练获得。这里,“通过训练获得”意味着通过训练算法用多条训练数据训练基本人工智能模型来获得被配置成执行期望特征(或目的)的预定义操作规则或人工智能模型。人工智能模型可以包括多个神经网络层。多个神经网络层中的每一层包括多个权重值,并且通过在前一层的计算结果与多个权重值之间的计算来执行神经网络计算。
[0256]
视觉理解是一种用于像人类视觉一样识别和处理事物的技术,并且包括例如对象识别、对象跟踪、图像检索、人类识别、场景识别、3d重建/定位或图像增强。
[0257]
本技术所提供的信息处理装置,可以通过ai模型来实现多个模块中的至少一个模块。可以通过非易失性存储器、易失性存储器和处理器来执行与ai相关联的功能。
[0258]
该处理器可以包括一个或多个处理器。此时,该一个或多个处理器可以是通用处理器,(例如中央处理单元(cpu)、应用处理器(ap)等)、或者是纯图形处理单元,(例如,图形处理单元(gpu)、视觉处理单元(vpu)、和/或ai专用处理器,(例如,神经处理单元(npu))。
[0259]
该一个或多个处理器根据存储在非易失性存储器和易失性存储器中的预定义的操作规则或人工智能(ai)模型来控制对输入数据的处理。通过训练或学习来提供预定义的操作规则或人工智能模型。
[0260]
这里,通过学习来提供指的是通过将学习算法应用于多个学习数据来得到预定义的操作规则或具有期望特性的ai模型。该学习可以在其中执行根据实施例的ai的装置本身中执行,和/或可以通过单独的服务器/系统来实现。
[0261]
该ai模型可以由包含多个神经网络层组成。每一层具有多个权重值,一个层的计算是通过前一层的计算结果和当前层的多个权重来执行的。神经网络的示例包括但不限于卷积神经网络(cnn)、深度神经网络(dnn)、循环神经网络(rnn)、受限玻尔兹曼机(rbm)、深度信念网络(dbn)、双向循环深度神经网络(brdnn)、生成对抗网络(gan)、以及深度q网络。
[0262]
学习算法是一种使用多个学习数据训练预定目标装置(例如,机器人)以使得、允许或控制目标装置进行确定或预测的方法。该学习算法的示例包括但不限于监督学习、无监督学习、半监督学习、或强化学习。
[0263]
应该理解的是,虽然本技术实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本技术实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本技术实施例对此不限制。
[0264]
以上所述仅是本技术部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术的方案技术构思的前提下,采用基于本技术技术思想的其他类似实施手段,同样属于本技术实施例的保护范畴。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献