CN117172297A - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN117172297A CN117172297A CN202210569598.0A CN202210569598A CN117172297A CN 117172297 A CN117172297 A CN 117172297A CN 202210569598 A CN202210569598 A CN 202210569598A CN 117172297 A CN117172297 A CN 117172297A
- Authority
- CN
- China
- Prior art keywords
- data
- elements
- processed
- vector
- attention
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 19
- 239000013598 vector Substances 0.000 claims abstract description 259
- 238000012545 processing Methods 0.000 claims abstract description 83
- 238000004364 calculation method Methods 0.000 claims abstract description 72
- 238000013528 artificial neural network Methods 0.000 claims description 68
- 238000000034 method Methods 0.000 claims description 63
- 230000015654 memory Effects 0.000 claims description 43
- 238000004891 communication Methods 0.000 claims description 21
- 238000012549 training Methods 0.000 claims description 16
- 230000004927 fusion Effects 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 8
- 238000003860 storage Methods 0.000 claims description 8
- 238000013473 artificial intelligence Methods 0.000 abstract description 9
- 230000002829 reductive effect Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 29
- 230000008569 process Effects 0.000 description 28
- 230000007246 mechanism Effects 0.000 description 26
- 230000006870 function Effects 0.000 description 21
- 238000013461 design Methods 0.000 description 20
- 239000011159 matrix material Substances 0.000 description 20
- 238000004821 distillation Methods 0.000 description 14
- 238000010606 normalization Methods 0.000 description 13
- 238000001514 detection method Methods 0.000 description 12
- 238000003058 natural language processing Methods 0.000 description 12
- 230000011218 segmentation Effects 0.000 description 12
- 238000013519 translation Methods 0.000 description 11
- 238000003709 image segmentation Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 6
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 4
- 230000003190 augmentative effect Effects 0.000 description 4
- 210000004556 brain Anatomy 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 238000003062 neural network model Methods 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000001228 spectrum Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 239000000872 buffer Substances 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 238000013140 knowledge distillation Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 238000001356 surgical procedure Methods 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- 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
Abstract
一种数据处理方法及装置,涉及人工智能技术领域,用以降低计算消耗。本申请实施例中在执行注意力计算时不再针对一个元素与其它所有元素的进行注意力计算,而是同一个坐标轴的元素之间执行注意力计算,并针对所有的坐标轴分别进行计算后,然后再执行加权处理。比如,针对某元素同一行或者同一行以及相邻行的元素参与该元素的特征向量的计算。通过两次注意力计算既可以实现全局建模,并且可以降低计算复杂度。
Description
技术领域
本申请涉及人工智能技术领域,特别涉及一种数据处理方法及装置。
背景技术
近年来,自注意力(self attention)网络已经在许多自然语言处理(naturallanguage processing,NLP)任务中得到了很好的应用,例如机器翻译,情感分析和问题解答等。随着自注意力网络的广泛应用,源于自然语言处理领域的自注意力网络在图像分类、目标检测、和图像处理等任务上也取得了很高的性能。
自注意力网络的关键是学习一种比对,其中序列中的每个元素都学会从序列中的其他元素中收集信息。自注意力网络不同于一般的注意力网络,它更加关注数据或特征的内部相关性,减少了对外部信息的依赖。但是目前采用的自注意力网络针对一个元素从其他所有的元素中获得相关信息,导致计算消耗较大。
发明内容
本申请实施例提供一种数据处理方法及装置,用于解决采用目前自注意力网络时,计算一个元素与其它所有元素的相关信息,导致的计算消耗较大的问题。
第一方面,本申请实施例提供一种数据处理方法,包括:接收待处理数据,所述待处理数据包括多个元素的编码数据;通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴的特征向量,并对所述多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得所述待处理数据的特征向量。
示例性地,神经网络为自注意力网络。通过上述方案,在获取特征向量时,不再针对一个元素与其它所有元素的进行注意力计算,而是同一个坐标轴的元素执行注意力计算,并针对所有的坐标轴分别进行计算后,然后再执行加权处理,可以降低计算消耗。
示例性地,本申请可以应用于计算机视觉或者自然语言处理。比入机器翻译、自动摘要生成、观点提取、文本分类、问题回答、文本语义对比、语音识别、图像识别(ImageClassification)、目标检测(Object Detection)、语义分割(Semantic Segmentation)以及图像生成(Image Generation)。其中,神经网络可以是用于对图像进行分类的神经网络,也可以是用于对图像进行分割的神经网络,或者可以是用于对图像进行检测的神经网络,或者可以是用于对图像进行识别的神经网络,或者可以是用于生成指定图像的神经网络,或者,可以是用于对文本进行翻译的神经网络,或者,可以是用于对文本进行复述的神经网络,或者可以是用于生成指定文本的神经网络,或者可以是用于对语音进行识别的神经网络,或者可以是用于对语音进行翻译的神经网络,或者可以是用于生成指定语音的神经网络等。
待处理数据,可以是音频数据、视频数据或者图像数据、文本数据等等。
在一种可能的设计中,接收待处理数据,包括接收来自用户设备的服务请求,服务请求携带待处理数据。服务请求用于请求针对所述待处理数据完成指定处理任务。
所述方法还包括:根据所述待处理数据的特征向量完成所述指定处理任务得到处理结果,向所述用户设备发送所述处理结果。
比如,指定处理任务为图像分类,该注意网络是用于对图像进行分类的注意力网络。在获得特征向量后,可以进一步根据特征向量进行图像分类得到分类结果。再比如,指定处理任务为图像分割,该注意网络是用于对图像进行分割的注意力网络。在获得特征向量后,可以进一步根据特征向量进行图像分割得到分割结果。再比如,指定处理任务为图像检测,该注意网络是用于对图像进行检测的注意力网络。在获得特征向量后,可以进一步根据特征向量进行图像检测得到分割结果。再比如,指定处理任务为语音识别,该注意网络是用于对语音进行识别的注意力网络。在获得特征向量后,可以进一步根据特征向量进行语音识别得到识别结果。再比如,指定处理任务为语音翻译,该注意网络是用于对语音进行翻译的注意力网络。在获得特征向量后,可以进一步根据特征向量进行语音翻译得到翻译结果。
一种示例中,元素分别对应到不同坐标轴的特征向量之间正交。
在一种可能的设计中,第一元素对应到第一坐标轴上的特征向量用于表征所述第一元素与所述第一元素所在的第一区域内的其它元素之间的相关度;所述第一元素为所述多个元素中的任一元素;所述第一元素所在的第一区域内的其它元素映射到除所述第一坐标轴以外的其它坐标轴的位置与所述第一元素映射到所述其它坐标轴的位置相同和/或相邻;所述第一坐标轴为所述多个坐标轴中的任一坐标轴。
比如,第一坐标轴为水平方向坐标轴,水平方向坐标的元素的特征向量,针对该元素同一行或者同一行以及相邻行的元素参与该元素的特征向量的计算。由于所有的元素都能参与计算,从而可以实现全局建模,并且可以降低计算复杂度。
在一种可能的设计中,获得所述多个元素中每个元素分别对应到多个坐标轴上的特征向量,包括:将所述第一元素分别与所述第一元素对应的第一区域内的其它元素之间进行注意力计算得到所述第一元素分别与所述其它元素之间注意力值;所述第一元素为所述多个元素中的任一元素;根据所述第一元素分别与所述其它元素之间注意力值执行加权处理得到所述第一元素对应第一坐标轴上的特征向量。
两个元素映射到其它坐标轴的位置相邻可以是绝对相邻,也可以是两个元素映射到其它坐标轴的位置之间的间隔位于设定距离内。
在一种可能的设计中,所述待处理数据包括音频数据,所述音频数据包括多个音频点,每个音频点映射到时间坐标轴和频率坐标轴;或者,
所述待处理数据包括图像数据,所述图像数据包括多个像素点或者图像块,每个像素点或者图像块映射到水平坐标轴和垂直坐标轴;或者,
所述待处理数据包括视频数据,所述视频数据包括多个视频帧,每个视频帧包括多个像素点或者图像块,每个像素点或者图像块映射到时间坐标轴、在空间上的水平坐标轴和垂直坐标轴。
针对多媒体数据,不同的轴的元素的维度不同,可能相差较大。采用上述方案,并不会过多的关注维度较多的轴的元素,而是针对不同的轴均单独进行注意力计算,防止维度更大的轴对较小的轴产生抑制。
在一种可能的设计中,所述通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴上的特征向量:所述多个坐标轴包括第一坐标轴和第二坐标轴;通过所述神经网络基于所述待处理数据生成第一查询向量、第一键值向量和第一价值向量;根据所述第一查询向量、所述第一键值向量、所述第一价值向量,获得所述多个元素中每个元素分别对应到所述第一坐标轴上的特征向量;根据所述第一查询向量、所述第一键值向量、所述第一价值向量,获得所述多个元素中每个元素分别对应到所述第二坐标轴上的特征向量。
针对不同轴在计算特征向量时,采用相同的查询向量、键值向量和价值向量,可以降低参数的计算数量,从而进一步降低计算复杂度。
在一种可能的设计中,N=2,根据所述待处理数据生成第一查询向量、第一键值向量和第一价值向量可以采用如下公式:
q(i,j)=WQh(i,j),k(i,j)=WKh(i,j),v(i,j)=WVh(i,j)
其中,q(i,j)表示位置(i,j)元素的Query,k(i,j)表示位置(i,j)元素的Key,v(i,j)表示位置(i,j)元素的Value。i取值范围为0~m-1,j取值范围为0~n-1。
2维的待处理数据包括m行n列。
在一种可能的设计中,每个元素对应到第一坐标轴上的特征向量可以采用如下公式确定。
其中,dk为输入的数据的维度数。表示位置(i,j)元素对应到轴1的特征向量;
在一种可能的设计中,每个元素对应到第一坐标轴上的特征向量可以采用如下公式确定:
第一坐标轴的元素对应的特征向量与第二坐标轴的元素对应的特征向量进行加权,采用如下公式来确定:
其中,h′(i,j)表示位置(i,j)元素的特征向量。w1表示轴1的权重,w2表示轴2的权重。
在一种可能的设计中,w1=w2=1/2。
在一种可能的设计中,所述方法还包括:基于至少一个设定元素的编码数据生成第二查询向量、第二键值向量和第二价值向量;根据所述第二查询向量、所述第二键值向量、所述第二价值向量获取所述至少一个设定元素对应的特征向量;所述设定元素的对应特征向量用于表征所述设定元素与所述多个元素之间的关联度;将所述待处理数据的特征向量以及所述至少一个设定元素的特征向量进行特征融合。
至少一个设定元素的编码数据可以包括分类位和/或蒸馏位,从而针对分类场景也同样适用。
在一种可能的设计中,所述至少一个设定元素的编码数据是在训练所述神经网络的过程中作为所述神经网络的网络参数经过多轮调整得到的。
第二方面,本申请实施例提供一种数据处理装置,包括:
输入单元,用于接收待处理数据,所述待处理数据包括多个元素的编码数据;
处理单元,用于通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴的特征向量,并对所述多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得所述待处理数据的特征向量。
在一种可能的设计中,第一元素对应到第一坐标轴上的特征向量用于表征所述第一元素与所述第一元素所在的第一区域内的其它元素之间的相关度;所述第一元素为所述多个元素中的任一元素;所述第一元素所在的第一区域内的其它元素映射到除所述第一坐标轴以外的其它坐标轴的位置与所述第一元素映射到所述其它坐标轴的位置相同和/或相邻;所述第一坐标轴为所述多个坐标轴中的任一坐标轴。
在一种可能的设计中,所述处理单元,具体用于:将所述第一元素分别与所述第一元素对应的第一区域内的其它元素之间进行注意力计算得到所述第一元素分别与所述其它元素之间注意力值;所述第一元素为所述多个元素中的任一元素;根据所述第一元素分别与所述其它元素之间注意力值执行加权处理得到所述第一元素对应第一坐标轴上的特征向量。
在一种可能的设计中,所述待处理数据包括音频数据,所述音频数据包括多个音频点,每个音频点映射到时间坐标轴和频率坐标轴;或者,
所述待处理数据包括图像数据,所述图像数据包括多个像素点或者图像块,每个像素点或者图像块映射到水平坐标轴和垂直坐标轴;或者,
所述待处理数据包括视频数据,所述视频数据包括多个视频帧,每个视频帧包括多个像素点或者图像块,每个像素点或者图像块映射到时间坐标轴、在空间上的水平坐标轴和垂直坐标轴。
在一种可能的设计中,坐标轴的数量等于N;所述线性模块,用于基于所述待处理数据生成第一查询向量、第一键值向量和第一价值向量;第i个注意力计算模块,用于根据所述第一查询向量、所述第一键值向量、所述第一价值向量,获得所述多个元素中每个元素分别对应到所述第i个坐标轴上的特征向量;i为小于或者等于N的正整数;加权模块,用于对所述多个元素中每个元素分别对应到N个坐标轴上的特征向量进行加权。
在一种可能的设计中,所述神经网络还包括第N+1个注意力计算模块和特征融合模块;
所述线性模块,用于还用于基于至少一个设定元素的编码数据生成第二查询向量、第二键值向量和第二价值向量;
所述第N+1个注意力计算模块,用于根据所述第二查询向量、所述第二键值向量、所述第二价值向量获取所述至少一个设定元素对应的特征向量;所述设定元素的对应特征向量用于表征所述设定元素与所述多个元素之间的关联度;
所述特征融合模块,用于将所述待处理数据的特征向量以及所述至少一个设定元素的特征向量进行特征融合。
在一种可能的设计中,所述至少一个设定元素的编码数据是在训练所述神经网络的过程中作为所述神经网络的网络参数经过多轮调整得到的。
第三方面,本申请提供一种数据处理系统,包括用户设备和云端服务设备;
所述用户设备,用于向云端服务设备发送服务请求,所述服务请求携带待处理数据,所述待处理数据包括多个元素的编码数据;所述服务请求用于请求云端服务器针对所述待处理数据完成指定处理任务;
所述云端服务设备,用于通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴的特征向量,并对所述多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得所述待处理数据的特征向量;根据所述待处理数据的特征向量完成所述指定处理任务得到处理结果,向所述用户设备发送所述处理结果;
所述用户设备,还用于接收来自所述云端服务设备的所述处理结果。
第四方面,本申请实施例提供一种电子设备,所述电子设备包括至少一个处理器和存储器;所述存储器中存储有指令;所述至少一个处理器,用于执行所述存储器存储的所述指令,以实现第一方面或者第一方面的任意设计所述的方法。电子设备也可以称为执行设备,用于执行本申请提供的数据处理方法。
第五方面,本申请实施例提供一种芯片系统,所述芯片系统包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联;所述通信接口,用于接收待处理数据;所述处理器,用于针对所述待处理数据执行第一方面或者第一方面的任意设计所述的方法。
第六方面,本申请实施例提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可选的实现中的方法的指令。
第七方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品存储有指令,所述指令在由计算机执行时使得所述计算机实施第一方面或第一方面的任意可选的设计中所述的方法。
本申请在上述各方面提供的实现的基础上,还可以进行进一步组合以提供更多实现。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。
图1为人工智能主体框架的一种结构示意图;
图2为本申请实施例提供的一种系统架构200示意图;
图3为本申请实施例提供的一种数据处理方法流程示意图;
图4为本申请实施例提供的一种轴向注意力计算示意图;
图5为本申请实施例提供的另一种轴向注意力计算示意图;
图6为本申请实施例提供的一种独立叠加注意力网络的处理流程示意图;
图7为本申请实施例提供的另一种独立叠加注意力网络的处理流程示意图;
图8为本申请实施例所示例的一种transformer模块结构示意图;
图9为本申请实施例所示例的另一种transformer模块结构示意图;
图10为本申请实施例提供的一种分类网络模型的结构示意图;
图11为本申请实施例提供的分类网络模型的工作流程示意图;
图12为本申请实施例提供的一种图像分割网络模型的工作流程示意图;
图13为本申请实施例提供的一种视频分类网络模型的工作流程示意图;
图14为本申请实施例提供的一种数据处理装置的结构示意图;
图15为本申请实施例提供的执行设备的一种结构示意图;
图16为本申请实施例提供的芯片的一种结构示意图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
首先对人工智能系统总体工作流程进行描述,请参见图1,图1示出的为人工智能主体框架的一种结构示意图,下面从“智能信息链”(水平轴)和“IT价值链”(垂直轴)两个维度对上述人工智能主题框架进行阐述。其中,“智能信息链”反映从数据的获取到处理的一列过程。举例来说,可以是智能信息感知、智能信息表示与形成、智能推理、智能决策、智能执行与输出的一般过程。在这个过程中,数据经历了“数据—信息—知识—智慧”的凝练过程。“IT价值链”从人智能的底层基础设施、信息(提供和处理技术实现)到系统的产业生态过程,反映人工智能为信息技术产业带来的价值。
(1)基础设施:
基础设施为人工智能系统提供计算能力支持,实现与外部世界的沟通,并通过基础平台实现支撑。通过传感器与外部沟通;计算能力由智能芯片(CPU、NPU、GPU、ASIC、FPGA等硬件加速芯片)提供;基础平台包括分布式计算框架及网络等相关的平台保障和支持,可以包括云存储和计算、互联互通网络等。举例来说,传感器和外部沟通获取数据,这些数据提供给基础平台提供的分布式计算系统中的智能芯片进行计算。
(2)数据
基础设施的上一层的数据用于表示人工智能领域的数据来源。数据涉及到图形、图像、语音、文本,还涉及到传统设备的物联网数据,包括已有系统的业务数据以及力、位移、液位、温度、湿度等感知数据。
(3)数据处理
数据处理通常包括数据训练,机器学习,深度学习,搜索,推理,决策等方式。
其中,机器学习和深度学习可以对数据进行符号化和形式化的智能信息建模、抽取、预处理、训练等。
推理是指在计算机或智能系统中,模拟人类的智能推理方式,依据推理控制策略,利用形式化的信息进行机器思维和求解问题的过程,典型的功能是搜索与匹配。
决策是指智能信息经过推理后进行决策的过程,通常提供分类、排序、预测等功能。
(4)通用能力
对数据经过上面提到的数据处理后,进一步基于数据处理的结果可以形成一些通用的能力,比如可以是算法或者一个通用系统,例如,翻译,文本的分析,计算机视觉的处理,语音识别,图像的识别等等。
(5)智能产品及行业应用
智能产品及行业应用指人工智能系统在各领域的产品和应用,是对人工智能整体解决方案的封装,将智能信息决策产品化、实现落地应用,其应用领域主要包括:智能制造、智能交通、智能家居、智能医疗、智能安防、自动驾驶,平安城市,智能终端等。
本申请实施例涉及神经网络的应用,为了便于理解,下面先对本申请实施例涉及的相关术语及神经网络等相关概念进行介绍。
1)神经网络
神经网络中的每一层的工作可以用数学表达式来描述:从物理层面神经网络中的每一层的工作可以理解为通过五种对输入空间(输入向量的集合)的操作,完成输入空间到输出空间的变换(即矩阵的行空间到列空间),这五种操作包括:1、升维/降维;2、放大/缩小;3、旋转;4、平移;5、“弯曲”。其中1、2、3的操作由/>完成,4的操作由+b完成,5的操作则由a()来实现。这里之所以用“空间”二字来表述是因为被分类的对象并不是单个事物,而是一类事物,空间是指这类事物所有个体的集合。其中,W是权重向量,该向量中的每一个值表示该层神经网络中的一个神经元的权重值。该向量W决定着上文所述的输入空间到输出空间的空间变换,即每一层的权重W控制着如何变换空间。
训练神经网络的目的,也就是最终得到训练好的神经网络的所有层的权重矩阵(由很多层的向量W形成的权重矩阵)。因此,神经网络的训练过程本质上就是学习控制空间变换的方式,更具体的就是学习权重矩阵。
2)损失函数
在训练神经网络的过程中,因为希望神经网络的输出尽可能的接近真正想要预测的值,所以可以通过比较当前网络的预测值和真正想要的目标值,再根据两者之间的差异情况来更新每一层神经网络的权重向量(当然,在第一次更新之前通常会有初始化的过程,即为神经网络中的各层预先配置参数),比如,如果网络的预测值高了,就调整权重向量让它预测低一些,不断的调整,直到神经网络能够预测出真正想要的目标值。因此,就需要预先定义“如何比较预测值和目标值之间的差异”,这便是损失函数(loss function)或目标函数(objective function),它们是用于衡量预测值和目标值的差异的重要方程。其中,以损失函数举例,损失函数的输出值(loss)越高表示差异越大,那么神经网络的训练就变成了尽可能缩小这个loss的过程。
3)反向传播算法
神经网络采用反向传播算法在训练过程中修正神经网络中的网络参数的大小,使得神经网络模型重建误差损失越来越小。前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的神经网络模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的神经网络模型的参数,例如权重矩阵。
4)线性操作:
线性是指量与量之间按比例、成直线的关系,在数学上可以理解为一阶导数为常数的函数,线性操作可以但不限于为加和操作、空操作、恒等操作、卷积操作、层归一化(layer normalization,LN)操作以及池化操作。线性操作也可以称之为线性映射,线性映射需要满足两个条件:齐次性和可加性,任一个条件不满足则为非线性。
其中,齐次性是指f(ax)=af(x);可加性是指f(x+y)=f(x)+f(y);例如,f(x)=ax就是线性的。需要注意的是,这里的x、a、f(x)并不一定是标量,可以是向量或者矩阵,形成任意维度的线性空间。如果x、f(x)为n维向量,当a为常数时,就是等价满足齐次性,当a为矩阵时,则等价满足可加性。相对而言,函数图形为直线的不一定符合线性映射,比如f(x)=ax+b,既不满足齐次性也不满足可加性,因此属于非线性映射。
本申请实施例中,多个线性操作的复合可以称之为线性操作,线性操作中包括的各个线性操作也可以称之为子线性操作。
5)注意力模型。
注意力模型是一种应用了注意力机制的神经网络。在深度学习中,注意力机制可以被广义地定义为一个描述重要性的权重向量:通过这个权重向量为了预测或者推断一个元素。比如,对于图像中的某个像素或句子中的某个单词,可以使用注意力向量定量地估计出目标元素与其他元素之间的相关性,并由注意力向量的加权和作为目标的近似值。
深度学习中的注意力机制模拟的是人脑的注意力机制。举个例子来说,当人类观赏一幅画时,虽然人类的眼睛可以看到整幅画的全貌,但是在人类深入仔细地观察时,其实眼睛聚焦的只有整幅画中的一部分图案,这个时候人类的大脑主要关注在这一小块图案上。也就是说,在人类仔细观察图像时,人脑对整幅图像的关注并不是均衡的,是有一定的权重区分的,这就是注意力机制的核心思想。
简单来说,人类的视觉处理系统往往会选择性地聚焦于图像的某些部分上,而忽略其它不相关的信息,从而有助于人脑的感知。类似地,在深度学习的注意力机制中,在涉及语言、语音或视觉的一些问题中,输入的某些部分相比其它部分可能更相关。因此,通过注意力模型中的注意力机制,能够让注意力模型仅动态地关注有助于有效执行手头任务的部分输入。
6)自注意力网络。
自注意力网络是一种应用了自注意力机制的神经网络。自注意力机制是注意力机制的一种延伸。自注意力机制实际上是一种将单个序列的不同位置关联起来以计算同一序列的表示的注意机制。自注意力机制在机器阅读、抽象摘要或图像描述生成中能够起到关键的作用。以自注意力网络应用于自然语言处理为例,自注意力网络处理任意长度的输入数据并生成输入数据的新的特征表达,然后再将特征表达转换为目的词。自注意力网络中的自注意力网络层利用注意力机制获取所有其他单词之间的关系,从而生成每个单词的新的特征表达。自注意力网络的优点是注意力机制能够在不考虑单词位置的情况下,直接捕捉句子中所有单词之间的关系。
本申请实施例提供的数据处理方法可以由执行设备执行,或者注意力模型可以部署于执行设备中。执行设备可以由一个或者多个计算设备实现。示例性地,参见图2所示,为本申请实施例提供的一种系统架构200。系统架构200中包括执行设备210。执行设备210可以由一个或者多个计算设备实现。执行设备210可以布置在一个物理站点上,或者分布在多个物理站点上。系统架构200还包括数据存储系统250。可选地,执行设备210与其它计算设备配合,例如:数据存储、路由器、负载均衡器等设备。执行设备210可以使用数据存储系统250中的数据,或者调用数据存储系统250中的程序代码实现本申请提供的数据处理方法。一个或者多个计算设备可以部署于云网络中。一种示例中,本申请实施例提供的数据处理方法以服务的形式部署云网络的一个或者多个计算设备中,用户设备通过网络访问云服务。执行设备为云网络的一个或者多个计算设备时,执行设备也可以称为云端服务设备。
另一种示例中,本申请实施例提供的数据处理方法可以以软件工具形式部署于在本地的一个或者多个计算设备上。
用户可以操作各自的用户设备(例如本地设备301和本地设备302)与执行设备210进行交互。每个本地设备可以表示任何计算设备,例如智能手机(mobile phone)、个人电脑(personal computer,PC)、笔记本电脑、平板电脑、智慧电视、移动互联网设备(mobileinternet device,MID)、可穿戴设备,智能摄像头、智能汽车或其他类型蜂窝电话、媒体消费设备、可穿戴设备、机顶盒、游戏机、虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线电子设备、无人驾驶(self driving)中的无线电子设备、远程手术(remote medical surgery)中的无线电子设备、智能电网(smart grid)中的无线电子设备、运输安全(transportation safety)中的无线电子设备、智慧城市(smart city)中的无线电子设备、智慧家庭(smart home)中的无线电子设备。
每个用户的本地设备可以通过任何通信机制/通信标准的通信网络与执行设备210进行交互,通信网络可以是广域网、局域网、点对点连接等方式,或它们的任意组合。
在另一种实现中,执行设备210的一个方面或多个方面可以由每个本地设备实现,例如,本地设备301可以为执行设备210提供本地数据或反馈预测结果。
需要注意的,执行设备210的所有功能也可以由本地设备实现。例如,本地设备301实现执行设备210的功能并为自己的用户提供服务,或者为本地设备302的用户提供服务。本地设备301可以是电子设备,示例性地,该电子设备例如可以是服务器、智能手机(mobilephone)、个人电脑(personal computer,PC)、笔记本电脑、平板电脑、智慧电视、移动互联网设备(mobile internet device,MID)、可穿戴设备,虚拟现实(virtual reality,VR)设备、增强现实(augmented reality,AR)设备、工业控制(industrial control)中的无线电子设备、无人驾驶(self driving)中的无线电子设备、远程手术(remote medical surgery)中的无线电子设备、智能电网(smart grid)中的无线电子设备、运输安全(transportationsafety)中的无线电子设备、智慧城市(smart city)中的无线电子设备、智慧家庭(smarthome)中的无线电子设备等。
本申请实施例所提供的数据处理方法和注意力模型可以应用于计算机视觉或自然语言处理。即,电子设备或者计算设备通过上述的数据处理方法,能够执行计算机视觉任务或者自然语言处理任务。
其中,自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。自然语言处理研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。一般地,自然语言处理任务主要包括机器翻译、自动摘要生成、观点提取、文本分类、问题回答、文本语义对比以及语音识别等任务。
计算机视觉是一门研究如何使机器学会看的科学。更进一步地说,计算机视觉就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使得处理得到的图像成为更适合人眼观察或传送给仪器检测的图像。通常来说,计算机视觉任务包括图像识别(Image Classification)、目标检测(Object Detection)、语义分割(Semantic Segmentation)以及图像生成(Image Generation)等任务。
图像识别是常见的分类问题,通常也称为图像分类。具体地,在图像识别任务中,神经网络的输入为图像数据,输出值为当前图像数据属于每个类别的概率。通常选取概率值最大的类别作为图像数据的预测类别。图像识别是最早成功应用深度学习的任务之一,经典的网络模型有VGG系列、Inception系列以及ResNet系列等。
目标检测是指通过算法自动检测出图像中常见物体的大致位置,通常用边界框(Bounding box)来表示物体的大致位置,并分类出边界框中物体的类别信息。
语义分割是指通过算法自动分割并识别出图像中的内容。语义分割可以理解为每个像素点的分类问题,即分析每个像素点属于物体的类别。
图像生成是指通过学习真实图像的分布,并从学习到的分布中采样而获得逼真度较高的生成图像。例如,基于模糊的图像生成清晰的图像;基于带雾的图像生成去雾后的图像。
如背景技术所述,如果采用的自注意力网络针对一个元素从其他所有的元素中获得相关信息,会导致计算消耗较大。一种可能的方式中,可以采用十字交叉注意力(crisscross attention)方式。考虑十字型区域的元素之间的相关性,相比计算所有的像素来说可以降低复杂度。但是元素映射到不同十字方向包括的行方向和列方向的数据维度一般不同,有些情况下相差还会很大。比如音频数据、视频数据等等,维度差异可能在10倍以上。采用十字交叉注意力的方式,会导致过多关注维度大的数据,进而导致较大维度的计算会被较小维度的计算的抑制。
基于此,本申请实施例提供的神经网络和数据处理方法,采用独立在每个坐标轴上进行元素的相关性计算,即针对每个元素分别沿着每个坐标轴的张量方向进行注意力计算。然后在加权叠加,可以防止过多关注维度高的轴向导致维度高的轴向对维度低的轴向产生抑制作用,因此采用本申请实施例提供的神经网络和数据处理方法可以在提高计算效率的同时,提高处理精度。一些实施例中,神经网络可以采用卷积神经网络来实现元素之间的相关度计算。另一些实施例中,本申请实施例提供的神经网络采用自注意力机制,采用注意力机制来实现元素之间的相关度计算,在该情况下,神经网络也可以称为注意力网络。
在本实施例中,注意力网络的输入为序列形式的数据,即注意力网络的输入数据为序列数据。例如,注意力网络的输入数据可以为由多个连续的单词所构成的句子序列;又例如,注意力网络的输入数据可以为由多个连续的图像块所构成的图像块序列,该多个连续的图像块是对一个完整的图像进行分割得到的。序列数据可以理解编码数据,比如针对多个连续的单词进行编码处理得到。比如,针对某些需要处理的数据中通过执行嵌入生成(embedding)获得各个元素的编码数据,例如卷积处理。元素也可以称为patch。输入数据中的各个元素可以对应到多个坐标轴。这里所说的坐标轴,可以从时间上、空间上或者其它维度上来说。一个元素可以具有映射到多个坐标轴上的参数值。输入的数据也可以称为待处理数据。待处理数据可以为多媒体数据,比如音频数据、视频数据或者图像数据等。比如待处理数据为音频数据,音频数据中的每个元素可以理解为音频点。每个音频点可以映射到时间坐标轴上,也可以映射到频率坐标轴。例如可以包括映射到时间坐标轴的时间参数和映射到频率坐标轴的频率参数。再比如,待处理数据为图像数据,图像数据的元素可以理解为像素点或者图像块。每个像素点或者图像块可以映射到水平坐标轴和垂直坐标轴。又比如,待处理数据包括视频数据,视频数据可以映射到三个坐标轴,比如时间坐标轴、水平坐标轴和垂直坐标轴。视频数据包括多个视频帧,每个视频帧包括多个像素点或者图像块。每个像素点或者图像块的编码数据可以映射到时间坐标轴,具有时间坐标轴的时间参数。每个像素点或者图像块的编码数据可以映射到在空间上的水平坐标轴和垂直坐标轴,具有水平坐标轴的水平坐标以及垂直坐标轴的垂直坐标。
参见图3所示为本申请实施例提供的一种数据处理方法流程示意图,以神经网络采用注意力网络为例。
301,获取待处理数据,所述待处理数据包括多个元素的编码数据。
一些实施例中,数据处理方法可以由服务设备来执行,比如云端服务设备。用户设备可以向云端服务设备发送服务请求,该服务请求携带待处理数据。服务请求用于请求云端服务器针对所述待处理数据完成指定处理任务。指定处理任务可以为自然语言处理任务主要,比如机器翻译、自动摘要生成、观点提取、文本分类、问题回答、文本语义对比或者语音识别等任务。指定处理任务可以为计算机视觉任务,比如为图像识别、目标检测、语义分割以及图像生成等任务。
另一些实施例中,数据处理方法可以由本地设备执行,比如本地的电子设备。待处理数据可以由电子设备自身产生。
302,通过注意力网络对待处理数据进行特征提取,以获得多个元素中每个元素分别对应到多个坐标轴的特征向量,并对多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得待处理数据的特征向量。
其中,注意力网络可以是用于对图像进行分类的注意力网络,也可以是用于对图像进行分割的注意力网络,或者可以是用于对图像进行检测的注意力网络,或者可以是用于对图像进行识别的注意力网络,或者可以是用于生成指定图像的注意力网络,或者,可以是用于对文本进行翻译的注意力网络,或者,可以是用于对文本进行复述的注意力网络,或者可以是用于生成指定文本的注意力网络,或者可以是用于对语音进行识别的注意力网络,或者可以是用于对语音进行翻译的注意力网络,或者可以是用于生成指定语音的注意力网络等。
在一种可能的实现方式中,在获得待处理数据的特征向量后,可以进一步根据特征向量完成指定处理任务得到处理结果,并将处理结果发送给用户设备。
作为一种示例,指定处理任务为图像分类,该注意网络是用于对图像进行分类的注意力网络。在获得特征向量后,可以进一步根据特征向量进行图像分类得到分类结果。比如,指定处理任务为图像分割,该注意网络是用于对图像进行分割的注意力网络。在获得特征向量后,可以进一步根据特征向量进行图像分割得到分割结果。再比如,指定处理任务为图像检测,该注意网络是用于对图像进行检测的注意力网络。在获得特征向量后,可以进一步根据特征向量进行图像检测得到分割结果。再比如,指定处理任务为语音识别,该注意网络是用于对语音进行识别的注意力网络。在获得特征向量后,可以进一步根据特征向量进行语音识别得到识别结果。再比如,指定处理任务为语音翻译,该注意网络是用于对语音进行翻译的注意力网络。在获得特征向量后,可以进一步根据特征向量进行语音翻译得到翻译结果。
以多个坐标轴包括N个为例,分别为轴1~轴N。以输入的数据包括的元素映射到N个坐标轴为例,分别为轴1~轴N。针对各个轴上的元素分别进行注意力计算,然后再针对各个轴的元素的计算结果进行加权和作为独立叠加注意力网络的输出。示例性地,不同轴的权重可以相近,比如简单平均。注意力网络在输入数据后,对输入的数据进行特征提取,以获取多个元素中每个元素分别对应到轴1~轴N上的特征向量,然后每个元素对应到轴1~轴N的N组特征向量进行加权处理,从而获得每个元素对应的特征向量。
示例性地,以第一元素为例,第一元素为多个元素中的任一个元素。第一元素对应到第一坐标轴上的特征向量用于表征所述第一元素与所述第一元素所在的第一区域内的其它元素之间的相关度。
第一元素对应到第一坐标轴上的特征向量用于表征所述第一元素与所述第一元素所在的第一区域内的其它元素之间的相关度;所述第一元素为所述多个元素中的任一元素;所述第一元素所在的第一区域内的其它元素映射到除所述第一坐标轴以外的其它坐标轴的位置与所述第一元素映射到所述其它坐标轴的位置相同和/或相邻。
第一元素对应到第一坐标轴的特征向量可以采用如下方式来确定:
将所述第一元素分别与所述第一元素对应的第一区域内的其它元素之间进行注意力计算得到所述第一元素分别与所述其它元素之间注意力值;所述第一元素为所述多个元素中的任一元素;然后再根据所述第一元素分别与所述其它元素之间注意力值执行加权处理得到所述第一元素对应第一坐标轴上的特征向量。
两个元素映射到其它坐标轴的位置相邻可以是绝对相邻,也可以是两个元素映射到其它坐标轴的位置之间的间隔位于设定距离内。
一种情况下,两个元素映射到其它坐标轴的位置相邻可以是绝对相邻,以N=2为例,轴1为水平方向坐标轴(可以简称为水平坐标轴),轴2为垂直方向坐标轴(可以简称为垂直坐标轴)。在计算一个元素对应到水平坐标轴上的特征向量时,可以同行元素进行注意力计算。在计算一个元素对应到垂直坐标轴上的特征向量时,可以同列元素进行注意力计算。
参见图4所示,水平方向上每一行包括10个元素,垂直方向上每一列包括5个元素。作为一种示例:以元素3-6为例。在计算元素3-6对应到水平坐标轴的特征向量时,可以分别计算元素3-6与同一行的其它元素(元素3-1~3-5、3-7~3-10)之间的注意力计算结果,然后根据注意力计算结果执行加权处理得到元素3-6对应到水平坐标轴的特征向量。在计算元素3-6对应到垂直坐标轴的特征向量时,可以分别计算元素3-6与同一列的其它元素(元素1-6~2-6、4-6~5-6)之间的注意力计算结果,然后根据注意力计算结果执行加权处理得到元素3-6对应到垂直坐标轴的特征向量。
另一种情况下,两个元素映射到其它坐标轴的位置之间的间隔位于设定距离内。以N=2为例,轴1为水平方向坐标轴(可以简称为水平坐标轴),轴2为垂直方向坐标轴(可以简称为垂直坐标轴)。在计算一个元素对应到水平坐标轴上的特征向量时,可以同行以及该同行相邻的一行或者多行的元素执行注意力计算。在计算一个元素对应到垂直坐标轴上的特征向量时,可以同列以及该同列相邻的一列或者多列的元素执行列注意力计算。参见图5为例,在计算元素3-6对应到水平坐标轴的特征向量时,可以分别计算元素3-6与同一行和相邻行的其它元素(元素3-1~3-5、3-7~3-10、2-1~2-10、4-1~4-10)之间的注意力计算结果,然后根据注意力计算结果执行加权处理得到元素3-6对应到水平坐标轴的特征向量。在计算元素3-6对应到垂直坐标轴的特征向量时,可以分别计算元素3-6与同一列和相邻行的其它元素(元素1-6~2-6、4-6~5-6、1-5~5-5、1-7~5-7)之间的注意力计算结果,然后根据注意力计算结果执行加权处理得到元素3-6对应得到垂直坐标轴的特征向量。
需要说明的是,本申请实施例提供的注意力网络也可以称为独立叠加注意力网络或者自我独立叠加注意力网络,还可以采用其它的称呼,本申请实施例对此不作具体限定。后续描述时以称为独立叠加注意力网络为例。
具体的,参见图6所示,独立叠加注意力网络根据输入的数据确定查询向量(Query,Q)、键值向量(Key,K)以及价值向量(Value,V),然后再根据Q、K、V进行轴1方向~轴N方向注意力计算得到每个元素对应到轴1~轴N的特征向量,然后针对每个元素对应到轴1~轴N的特征向量进行加权和,得到每个元素的特征向量。
需要说明的是,本申请实施例提供的独立叠加注意力网络可以采用单头注意力机制,也可以采用多头注意力机制,本申请实施例对此不作具体限定。在采用多头注意力机制的情况下,独立叠加注意力网络在接收到输入的数据后,根据头(Head)的数量对输入的数据的维度进行分组。在每一组中采用本申请实施例提供的方式进行注意力计算,然后再将多组的结果进行拼接。
例如,以N=2为例,根据输入的数据确定Q、K和V时可以采用如下公式(1):
q(i,j)=WQh(i,j),k(i,j)=WKh(i,j),v(i,j)=WVh(i,j) 公式(1)。
其中,q(i,j)表示位置(i,j)元素的Query,k(i,j)表示位置(i,j)元素的Key,v(i,j)表示位置(i,j)元素的Value。i取值范围为0~m-1,j取值范围为0~n-1。2维的输入数据包括m行n列。
以每个元素对应到轴1上的特征向量为例。每个元素对应到轴1上的特征向量可以采用如下公式(2-1)确定。
其中,dk为输入的数据的维度数。表示位置(i,j)元素对应到轴1的特征向量;
结合上述方式,则位置(i,j)元素对应到轴2上的特征向量为如公式(2-2)所示。m表示待处理数据在水平坐标轴方向上每行包括的元素个数。
/>
然后针对两个轴的元素对应的特征向量进行加权,采用如下公式(3)来确定:
其中,h′(i,j)表示位置(i,j)元素的特征向量。w1表示轴1的权重,w2表示轴2的权重。
示例性地,w1=w2=1/2。
一些情况下,涉及到分类场景中,可以在独立叠加注意力网络的网络参数中增加至少一个设定元素对应的编码数据。该至少一个设定元素对应的编码数据是独立叠加注意力网络中可学习的嵌入输入,即可以作为网络参数参与训练,在训练过程中每次调整网络参数时,可以调整该至少一个设定元素对应编码数据。
作为一种举例,至少一个设定元素可以包括分类位和/或蒸馏位。分类位对应的编码数据也可以称为分类令牌(class token),蒸馏位对应的编码数据也可以称为蒸馏令牌。学生模型可以利用教师模型的知识蒸馏(KD)训练模式来训练得到。学生模型可以理解为教师模型压缩后的一个更小的模型。通过添加蒸馏位来与教师模型进行交互学习,最后通过蒸馏损失输出。所述Class令牌和蒸馏令牌是可学习的嵌入向量,Class令牌和蒸馏令牌通过与输入的数据包括的各个元素的编码数据进行注意力运算,对元素之间的全局关系进行建模,并且融合所有元素的信息,最终与分类器相连进行类别预测。
参见图7所示为另一种独立叠加注意力网络的处理流程示意图。图7中还以输入的数据包括的元素能够映射到N个坐标轴为例,分别为轴1~轴N。针对各个轴上的元素分别进注意力计算。然后再针对各个轴的元素的计算结果执行加权处理。针对分类位和蒸馏位的编码数据分别与其它所有元素的编码数据进行注意力加权计算,然后与N个轴的加权和进行特征融合。特征融合可以采用连接函数进行特征连接,比如采用concat函数。
例如,以N=2为例,根据输入的数据确定Q、K和V时可以采用如上公式(1)。分类位对应的Q、K和V,可以通过如下公式(4)来确定。
qc=WQhc,kc=WKhc,vc=WVhc 公式(4)。
其中,qc表示分类位的Query,kc表示分类位的Key,vc表示分类位的Value。hc表示分类位的编码数据。
需要说明的是,输入的数据中每个元素对应的Q、K、V计算时采用的向量矩阵WQ、WK以及WV,与分类位(和/或蒸馏位)对应的Q、K和V计算时采用的向量矩阵相同。
通过如下公式(5)确定分类位对应的特征向量。
在一些可能的实施方式中,独立叠加注意力网络在执行注意力计算之前可以进行全连接处理,对输入的数据进行升维处理。在完成注意力计算之后,还可以进一步进行全连接处理,比如降维处理。独立叠加注意力网络的输入数据的维度与输出数据的维度相同。
参见表1所示,提供了常规的注意力网络与本申请实施例提供的注意力网络的计算复杂度比较。以两个坐标轴为例。其中m、n为两轴的维度,C为特征维度。
表1
对于多轴来说,假设第i轴的维度为Ni,独立叠加注意力网络的相关计算复杂度为(6),常规注意力网络的复杂度为(7),二者的比值为(8)。由公式(6)、(7)和(8)可知,本申请实施例提供的方案用于各轴维度相当的场景也具有低复杂度的优势。
Ω(独立叠加)=2C(∏Ni)(∑Ni) (6)
Ω(常规)=2C(∏Ni)2 (7)
申请实施例提供的方案在多轴场景下均适用。比如视频数据中,假设空间为128×128,时间为16,独立叠加注意力网络的计算复杂度为常规的注意力网络的0.1%。比如10个坐标,每一轴的元素维度为128,独立叠加注意力网络的计算复杂度为常规注意力网络的1.1×10-18。
一些场景中,本申请实施例提供的独立叠加注意力网络可以应用到transformer模块中,用于对数据进行处理,比如图像分类、分割、目标定位;视频动作分类、时间定位、时空定位;音频与音乐分类、音源分离等。作为一种举例,参见图8所示,为本申请实施例所示例的一种transformer模块结构示意图。
参见图8所示,transformer模块可以包括本申请实施例提供独立叠加注意力网络、线性层以及多层感知机。独立叠加注意力网络用于对提取输入的数据的特征。线性层可以为层归一化(layer normalization,LN)。LN用于对独立叠加注意力网络的输出进行归一化处理。多层感知机(multilayer perceptron,MLP)与独立叠加注意力网络串行连接。多层感知机可以包括多个串行的全连接层。具体地,多层感知机也可以称为全连接神经网络。多层感知机包括输入层、隐藏层以及输出层,隐藏层的数量可以为一层或多层。其中,多层感知机中的网络层均为全连接层。即,多层感知机的输入层与隐藏层之间是全连接的,多层感知机的隐藏层与输出层之间也是全连接的。其中,全连接层是指全连接层中的每一个神经元都与上一层的所有神经元相连,用来把上一层提取到的特征综合起来。
一些可能的实施例中,transformer模块中还可以包括另一个线性层,用于执行层标准化,通过层标准化计算标准化统计信息,可以降低计算时间。位于独立叠加注意力网络的输入端,参见图9所示,用于对输入transformer模块的数据先执行层归一化,以减少训练成本。
如下结合几种应用场景,对本申请实施例提供方案进行详细说明。
场景一:以音频分类为例。参见图10所示为一种分类网络模型的结构示意图。分类网络模型中包括嵌入生成模块、M1个transformer模块以及分类模块。M1个transformer模块可以采用串联的方式部署。transformer模块采用图9所示的结构。嵌入生成模块用于从输入的音频数据中提取局部特征,也可以理解为生成音频数据的编码数据。音频数据可以映射到时间坐标轴以及频率坐标轴。音频数据可以被划分为多个音频点。比如被划分为T*F个音频点(patches),T表示时间维度上,F表示频率维度上。比如输入的数据:10s,32000Hz。时频谱中,频率128,时间1000维。音频数据被划分的patches的个数为:99(时间)*12(频率)。比如时间为水平坐标轴,频率作为垂直坐标轴,则每行包括99个音频点,每列包括12个音频点。比如,嵌入生成模块从输入的音频数据中提取局部特征的特征维度通过E1表示。transformer模块中的独立叠加注意力网络可以采用多头注意力机制。在分类模块中,对分类位和蒸馏位的结果进行平均后,通过线性层得到每一类的预测值。
参见图11所示,为分类网络模型的工作流程示意图。嵌入生成模块包括卷积层,用于对输入的音频数据(时频谱)进行卷积处理生成嵌入表示,输出(T×F,E1)的时频向量。E1表示特征维度。每个patches的特征维度为E1。示例性地,嵌入生成模块可以采用较大卷积步长(比如卷积步长为10左右)的二维卷积,从而生成的每个时频向量都代表局部patchE1s信息。本申请实施例中,目的是音频分类,可以合入分类位和蒸馏位,比如可以通过concat函数。一些实施例中,为了提高分类精度,可以叠加(add)位置编码,以帮助学习位置信息。位置编码的方式本申请实施例不作具体限定。
嵌入生成模块输出的嵌入向量输入Transformer块串联而成的骨干网络部分。嵌入向量输入到transformer模块,可以先通过线性层对嵌入向量执行线性操作,比如进行层归一化。层归一化后的数据输入到独立叠加注意力网络。独立叠加注意力网络可以对层归一化后的数据进行升维处理(比如,E1维数据升到3*E1维数据),进一步生成每个patches以及分类位、蒸馏位分别对应的Q、K、V。以独立叠加注意力网络采用多头注意力机制为例,独立叠加注意力网络进一步执行多头拆分,独立叠加注意力网络对分类位和蒸馏位与其它patches分别进行注意力加权得到分类位和蒸馏位的特征向量,并执行时间坐标轴的行注意力加权计算以及频率坐标轴的列注意力加权计算。将行注意力加权计算的结果以及列注意力加权计算的结果进行加权得到的特征向量与分类位和蒸馏位的特征向量进行连接。示例性地,时间坐标轴和频率坐标轴对应的权重相同,均为0.5。进一步地,独立叠加注意力网络对连接后的特征向量进行降维处理,将3*E1维数据降到E1维数据。进一步地,再经过Transformer模块中LN层和MLP层处理后,输入到分类模块中。在分类模块中,对分类位和蒸馏位的结果进行平均后,通过线性层得到每一类的预测值。
例如,采用图10所示的分类网络模型对如下音频数据的数据集1)和2)分别进行分类。1)Audioset,包括632个音频事件类的扩展类目和从一些视频中提取的2M(兆)个人工标记的10s声音剪辑的集合。类别覆盖广泛的人和动物声音,乐器和风格以及常见的日常环境声音。2)Opernmic 2018:乐器声音分类数据集,共20000样本,20类乐器,音频长度10s。则采用本申请提供的方案与采用现有方案的分类精度以及时间、系统性能要求的比较结果参见表2和表3所示。系统性能以所需的每秒所执行的浮点运算次数(floating-pointoperations per second,FLOPs)来表达为例。分类精度以平均精度均值(Mean AveragePrecision,mAP)来表达为例。
表2
从上表2来看,采用包括本申请实施例提供的独立叠加注意力网络的transformer针对两种数据集来说,相比现有技术,预测精度均有所提高。
表3
从表3来看,采用包括本申请实施例提供的独立叠加注意力网络的transformer或者独立叠加注意力网络相比现有技术,可以提高计算效率。应理解的是,上述现有技术的方法运行与本申请实施例的方法的运行是在同样环境中获得的。表2和表3仅作为一种示例,在不同的环境中运行可能结果会有出入。
场景二:以端到端图像分割为例。参见图12所示为一种图像分割网络模型的工作流程示意图。分类网络模型中包括嵌入生成模块、M2个transformer模块以及像素重建模块。M2个transformer模块可以采用串联的方式部署。transformer模块采用图9所示的结构。嵌入生成模块用于从输入的图像数据中提取局部特征,也可以理解为生成图像数据的编码数据。图像数据可以映射到水平坐标轴以及垂直坐标轴。图像数据可以被划分为多个图像块。比如被划分为H*W个图像块(patches)。嵌入生成模块从输入的图像数据中提取局部特征的特征维度通过E2表示。transformer模块中的独立叠加注意力网络可以采用多头注意力机制。在像素重建模块中,将每个图像块的像素(pixels)强度值恢复。
嵌入生成模块包括卷积层,用于对输入的图像数据(时频谱)进行卷积处理生成嵌入表示,输出(H×M,E2)的图像向量。E2表示特征维度。每个元素的特征维度为E2。一些实施例中,为了提高分类精度,可以叠加(add)位置编码(H×M,E2),以帮助学习位置信息。位置编码的方式本申请实施例不作具体限定。
嵌入生成模块输出的嵌入向量输入Transformer块串联而成的骨干网络部分。嵌入向量输入到transformer模块,可以先通过线性层对嵌入向量执行线性操作,比如进行层归一化。层归一化后的数据输入到独立叠加注意力网络。独立叠加注意力网络可以对层归一化后的数据进行升维处理(比如,E维数据升到3*E2维数据),进一步生成每个patches分别对应的Q、K、V。以独立叠加注意力网络采用多头注意力机制为例,独立叠加注意力网络进一步执行多头拆分,独立叠加注意力网络执行水平坐标轴的行注意力加权计算以及垂直坐标轴的列注意力加权计算。将行注意力加权计算的结果以及列注意力加权计算的结果进行加权得到图像数据的特征向量。示例性地,水平坐标轴和垂直坐标轴对应的权重相同,均为0.5。进一步地,独立叠加注意力网络还可以对得到的图像数据的特征向量进行降维处理,将3*E2维数据降到E维数据。进一步地,再经过Transformer模块中LN层和MLP层处理后,输入到像素重建模块中。在像素重建模块中,通过层归一化处理以及全连接层处理后将每个图像块的像素(pixels)强度值恢复。
场景三:以视频动作分类为例。参见图13所示为一种视频分类网络模型的工作流程示意图。分类网络模型中包括嵌入生成模块、M3个transformer模块以及分类模块。M3个transformer模块可以采用串联的方式部署。transformer模块采用图9所示的结构。嵌入生成模块用于从输入的视频数据中提取局部特征,也可以理解为生成视频数据的编码数据。视频数据可以映射到时间坐标轴、水平坐标轴和垂直坐标轴。视频数据可以被划分为多个图像块。比如被划分为H*W*T个图像块(patches),T表示时间坐标轴维度上,H表示水平坐标轴维度上,W表示垂直坐标轴维度上。嵌入生成模块包括三维卷积层,用于对输入的视频数据进行卷积处理生成嵌入表示,输出(H*W*T,E3)的视频向量。E3表示特征维度。每个patches的特征维度为E3。示例性地,本申请实施例中,目的是视频动作分类,可以合入分类位,比如可以通过concat函数将分类位的数据与(H*W*T,E3)的视频向量连接。一些实施例中,为了提高分类精度,可以叠加(add)位置编码,以帮助学习位置信息。位置编码的方式本申请实施例不作具体限定。加入分类位后以及叠加位置编码后,嵌入生成模块输出为维度为(H*W*T+1,E3)的嵌入向量。
嵌入生成模块输出的嵌入向量输入Transformer块串联而成的骨干网络部分。嵌入向量输入到transformer模块,可以先通过线性层对嵌入向量执行线性操作,比如进行层归一化。层归一化后的数据输入到独立叠加注意力网络。独立叠加注意力网络可以对层归一化后的数据进行升维处理(比如,E1维数据升到3*E1维数据),进一步生成每个patches以及分类位分别对应的Q、K、V。以独立叠加注意力网络采用多头注意力机制为例,独立叠加注意力网络进一步执行多头拆分,独立叠加注意力网络对分类位与其它patches分别进行注意力加权得到分类位的特征向量,并执行时间坐标轴的注意力加权计算、水平坐标轴的行注意力加权计算以及垂直坐标轴的列注意力加权计算。将时间坐标轴的注意力加权计算、行注意力加权计算的结果以及列注意力加权计算的结果进行加权得到的特征向量与分类位的特征向量进行连接。进一步地,独立叠加注意力网络对连接后的特征向量进行降维处理,将3*E3维数据降到E3维数据。进一步地,再经过Transformer模块中LN层和MLP层处理后,输入到分类模块中。在分类模块中,通过线性层获得分类位对应的分类信息,然后通过全连接层处理后得到动作分类预测分布。
本申请实施例还提供一种数据处理装置。可以参阅图14,为本申请实施例提供的一种数据处理装置的结构示意图。数据处理装置包括输入单元1410,用于接收待处理数据,所述待处理数据包括多个元素的编码数据。
处理单元1420,用于通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴的特征向量,并对所述多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得所述待处理数据的特征向量。
在一种可能的实现方式中,第一元素对应到第一坐标轴上的特征向量用于表征所述第一元素与所述第一元素所在的第一区域内的其它元素之间的相关度;所述第一元素为所述多个元素中的任一元素;所述第一元素所在的第一区域内的其它元素映射到除所述第一坐标轴以外的其它坐标轴的位置与所述第一元素映射到所述其它坐标轴的位置相同和/或相邻;所述第一坐标轴为所述多个坐标轴中的任一坐标轴。
在一种可能的实现方式中,所述处理单元1402,具体用于:将所述第一元素分别与所述第一元素对应的第一区域内的其它元素之间进行注意力计算得到所述第一元素分别与所述其它元素之间注意力值;所述第一元素为所述多个元素中的任一元素;根据所述第一元素分别与所述其它元素之间注意力值执行加权处理得到所述第一元素对应第一坐标轴上的特征向量。
在一种可能的实现方式中,所述待处理数据包括音频数据,所述音频数据包括多个音频点,每个音频点映射到时间坐标轴和频率坐标轴;或者,
所述待处理数据包括图像数据,所述图像数据包括多个像素点或者图像块,每个像素点或者图像块映射到水平坐标轴和垂直坐标轴;或者,
所述待处理数据包括视频数据,所述视频数据包括多个视频帧,每个视频帧包括多个像素点或者图像块,每个像素点或者图像块映射到时间坐标轴、在空间上的水平坐标轴和垂直坐标轴。
在一种可能的实现方式中,坐标轴的数量等于N;神经网络包括线性模块1421、N个注意力计算模块1422和加权模块1423。
所述线性模块1421,用于基于所述待处理数据生成第一查询向量、第一键值向量和第一价值向量;第i个注意力计算模块1422,用于根据所述第一查询向量、所述第一键值向量、所述第一价值向量,获得所述多个元素中每个元素分别对应到所述第i个坐标轴上的特征向量;i为小于或者等于N的正整数;加权模块1423,用于对所述多个元素中每个元素分别对应到N个坐标轴上的特征向量进行加权。
在一种可能的实现方式中,所述神经网络还包括第N+1个注意力计算模块1424和特征融合模块1425;
所述线性模块1421,用于还用于基于至少一个设定元素的编码数据生成第二查询向量、第二键值向量和第二价值向量;
所述第N+1个注意力计算模块1424,用于根据所述第二查询向量、所述第二键值向量、所述第二价值向量获取所述至少一个设定元素对应的特征向量;所述设定元素的对应特征向量用于表征所述设定元素与所述多个元素之间的关联度;
所述特征融合模块1425,用于将所述待处理数据的特征向量以及所述至少一个设定元素的特征向量进行特征融合。
在一种可能的实现方式中,所述至少一个设定元素的编码数据是在训练所述神经网络的过程中作为所述神经网络的网络参数经过多轮调整得到的。
接下来介绍本申请实施例提供的一种执行设备,请参阅图15,图15为本申请实施例提供的执行设备的一种结构示意图,执行设备具体可以表现为手机、平板、笔记本电脑、智能穿戴设备、服务器等,此处不做限定。具体的,本申请实施例还提供该装置另外一种结构,如图15所示,执行设备1500中可以包括通信接口1510、处理器1520。可选的,执行设备1500中还可以包括存储器1530。其中,存储器1530可以设置于装置内部,还可以设置于装置外部。一种示例中,上述图14中所示的各个单元均可以由处理器1520实现。另一种示例中,输入单元的功能由通信接口1510来实现。处理单元1402的功能由处理器1520实现。处理器1520通过通信接口1510接收待处理数据,并用于实现图3、图6-图13中所述的方法。在实现过程中,处理流程的各步骤可以通过处理器1520中的硬件的集成逻辑电路或者软件形式的指令完成图3、图6-图13中所述的方法。
本申请实施例中通信接口1510可以是电路、总线、收发器或者其它任意可以用于进行信息交互的装置。其中,示例性地,该其它装置可以是与执行设备1500相连的设备。
本申请实施例中处理器1520可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件单元组合执行完成。处理器1520用于实现上述方法所执行的程序代码可以存储在存储器1530中。存储器1530和处理器1520耦合。
本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。
处理器1520可能和存储器1530协同操作。存储器1530可以是非易失性存储器,比如硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM)。存储器1530是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
本申请实施例中不限定上述通信接口1510、处理器1520以及存储器1530之间的具体连接介质。本申请实施例在图15中以存储器1530、处理器1520以及通信接口1510之间通过总线连接,总线在图15中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图15中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
基于以上实施例,本申请实施例还提供了一种计算机存储介质,该存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时可实现上述任意一个或多个实施例提供的方法。所述计算机存储介质可以包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
基于以上实施例,本申请实施例还提供了一种芯片,该芯片包括处理器,用于实现上述任意一个或多个实施例所涉及的功能,例如获取或处理上述方法中所涉及的信息或者消息。可选地,所述芯片还包括存储器,所述存储器,用于处理器所执行必要的程序指令和数据。该芯片,可以由芯片构成,也可以包含芯片和其他分立器件。
具体的,请参阅图16,图16为本申请实施例提供的芯片的一种结构示意图,所述芯片可以表现为神经网络处理器NPU 1600,NPU 1600作为协处理器挂载到主CPU(Host CPU)上,由Host CPU分配任务。NPU的核心部分为运算电路1603,通过控制器1604控制运算电路1603提取存储器中的矩阵数据并进行乘法运算。
在一些实现中,运算电路1603内部包括多个处理单元(Process Engine,PE)。在一些实现中,运算电路1603是二维脉动阵列。运算电路1603还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实现中,运算电路1603是通用的矩阵处理器。
举例来说,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器1602中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器1601中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保存在累加器(accumulator)1608中。
统一存储器1606用于存放输入数据以及输出数据。权重数据直接通过存储单元访问控制器(Direct Memory Access Controller,DMAC)1605,DMAC被搬运到权重存储器1602中。输入数据也通过DMAC被搬运到统一存储器1606中。
BIU为Bus Interface Unit即,总线接口单元1610,用于AXI总线与DMAC和取指存储器(Instruction Fetch Buffer,IFB)1609的交互。
总线接口单元1610(Bus Interface Unit,简称BIU),用于取指存储器1609从外部存储器获取指令,还用于存储单元访问控制器1605从外部存储器获取输入矩阵A或者权重矩阵B的原数据。
DMAC主要用于将外部存储器DDR中的输入数据搬运到统一存储器1606或将权重数据搬运到权重存储器1602中或将输入数据搬运到输入存储器1601中。
向量计算单元1607包括多个运算处理单元,在需要的情况下,对运算电路1603的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。主要用于神经网络中非卷积/全连接层网络计算,如Batch Normalization(批归一化),像素级求和,对特征平面进行上采样等。
在一些实现中,向量计算单元1607能将经处理的输出的向量存储到统一存储器1606。例如,向量计算单元1607可以将线性函数;或,非线性函数应用到运算电路1603的输出,例如对卷积层提取的特征平面进行线性插值,再例如累加值的向量,用以生成激活值。在一些实现中,向量计算单元1607生成归一化的值、像素级求和的值,或二者均有。在一些实现中,处理过的输出的向量能够用作到运算电路1603的激活输入,例如用于在神经网络中的后续层中的使用。
控制器1604连接的取指存储器(instruction fetch buffer)1609,用于存储控制器1604使用的指令;统一存储器1606,输入存储器1601,权重存储器1602以及取指存储器1609均为On-Chip存储器。外部存储器私有于该NPU硬件架构。
其中,上述任一处提到的处理器,可以是一个通用中央处理器,微处理器,ASIC,或一个或多个用于控制上述程序执行的集成电路。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (19)
1.一种数据处理方法,其特征在于,包括:
接收待处理数据,所述待处理数据包括多个元素的编码数据;
通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴的特征向量,并对所述多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得所述待处理数据的特征向量。
2.如权利要求1所述的方法,其特征在于,第一元素对应到第一坐标轴上的特征向量用于表征所述第一元素与所述第一元素所在的第一区域内的其它元素之间的相关度;所述第一元素为所述多个元素中的任一元素;所述第一元素所在的第一区域内的其它元素映射到除所述第一坐标轴以外的其它坐标轴的位置与所述第一元素映射到所述其它坐标轴的位置相同和/或相邻;所述第一坐标轴为所述多个坐标轴中的任一坐标轴。
3.如权利要求2所述的方法,其特征在于,获得所述多个元素中每个元素分别对应到多个坐标轴上的特征向量,包括:
将所述第一元素分别与所述第一元素对应的第一区域内的其它元素之间进行注意力计算得到所述第一元素分别与所述其它元素之间注意力值;所述第一元素为所述多个元素中的任一元素;
根据所述第一元素分别与所述其它元素之间注意力值执行加权处理得到所述第一元素对应第一坐标轴上的特征向量。
4.如权利要求1-3任一项所述的方法,其特征在于,所述待处理数据包括音频数据,所述音频数据包括多个音频点,每个音频点映射到时间坐标轴和频率坐标轴;或者,
所述待处理数据包括图像数据,所述图像数据包括多个像素点或者图像块,每个像素点或者图像块映射到水平坐标轴和垂直坐标轴;或者,
所述待处理数据包括视频数据,所述视频数据包括多个视频帧,每个视频帧包括多个像素点或者图像块,每个像素点或者图像块映射到时间坐标轴、在空间上的水平坐标轴和垂直坐标轴。
5.如权利要求1-4任一项所述的方法,其特征在于,所述通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴上的特征向量:所述多个坐标轴包括第一坐标轴和第二坐标轴;
通过所述神经网络基于所述待处理数据生成第一查询向量、第一键值向量和第一价值向量;
根据所述第一查询向量、所述第一键值向量、所述第一价值向量,获得所述多个元素中每个元素分别对应到所述第一坐标轴上的特征向量;
根据所述第一查询向量、所述第一键值向量、所述第一价值向量,获得所述多个元素中每个元素分别对应到所述第二坐标轴上的特征向量。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
基于至少一个设定元素的编码数据生成第二查询向量、第二键值向量和第二价值向量;
根据所述第二查询向量、所述第二键值向量、所述第二价值向量获取所述至少一个设定元素对应的特征向量;所述设定元素的对应特征向量用于表征所述设定元素与所述多个元素之间的关联度;
将所述待处理数据的特征向量以及所述至少一个设定元素的特征向量进行特征融合。
7.如权利要求6所述的方法,其特征在于,所述至少一个设定元素的编码数据是在训练所述神经网络的过程中作为所述神经网络的网络参数经过多轮调整得到的。
8.一种数据处理装置,其特征在于,包括:
输入单元,用于接收待处理数据,所述待处理数据包括多个元素的编码数据;
处理单元,用于通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴的特征向量,并对所述多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得所述待处理数据的特征向量。
9.如权利要求8所述的装置,其特征在于,第一元素对应到第一坐标轴上的特征向量用于表征所述第一元素与所述第一元素所在的第一区域内的其它元素之间的相关度;所述第一元素为所述多个元素中的任一元素;所述第一元素所在的第一区域内的其它元素映射到除所述第一坐标轴以外的其它坐标轴的位置与所述第一元素映射到所述其它坐标轴的位置相同和/或相邻;所述第一坐标轴为所述多个坐标轴中的任一坐标轴。
10.如权利要求9所述的装置,其特征在于,所述处理单元,具体用于:
将所述第一元素分别与所述第一元素对应的第一区域内的其它元素之间进行注意力计算得到所述第一元素分别与所述其它元素之间注意力值;所述第一元素为所述多个元素中的任一元素;
根据所述第一元素分别与所述其它元素之间注意力值执行加权处理得到所述第一元素对应第一坐标轴上的特征向量。
11.如权利要求8-10任一项所述的装置,其特征在于,所述待处理数据包括音频数据,所述音频数据包括多个音频点,每个音频点映射到时间坐标轴和频率坐标轴;或者,
所述待处理数据包括图像数据,所述图像数据包括多个像素点或者图像块,每个像素点或者图像块映射到水平坐标轴和垂直坐标轴;或者,
所述待处理数据包括视频数据,所述视频数据包括多个视频帧,每个视频帧包括多个像素点或者图像块,每个像素点或者图像块映射到时间坐标轴、在空间上的水平坐标轴和垂直坐标轴。
12.如权利要求8-11任一项所述的装置,其特征在于,坐标轴的数量等于N;
所述线性模块,用于基于所述待处理数据生成第一查询向量、第一键值向量和第一价值向量;
第i个注意力计算模块,用于根据所述第一查询向量、所述第一键值向量、所述第一价值向量,获得所述多个元素中每个元素分别对应到所述第i个坐标轴上的特征向量;i为小于或者等于N的正整数;
加权模块,用于对所述多个元素中每个元素分别对应到N个坐标轴上的特征向量进行加权。
13.如权利要求12所述的装置,其特征在于,所述神经网络还包括第N+1个注意力计算模块和特征融合模块;
所述线性模块,用于还用于基于至少一个设定元素的编码数据生成第二查询向量、第二键值向量和第二价值向量;
所述第N+1个注意力计算模块,用于根据所述第二查询向量、所述第二键值向量、所述第二价值向量获取所述至少一个设定元素对应的特征向量;所述设定元素的对应特征向量用于表征所述设定元素与所述多个元素之间的关联度;
所述特征融合模块,用于将所述待处理数据的特征向量以及所述至少一个设定元素的特征向量进行特征融合。
14.如权利要求13所述的装置,其特征在于,所述至少一个设定元素的编码数据是在训练所述神经网络的过程中作为所述神经网络的网络参数经过多轮调整得到的。
15.一种数据处理系统,其特征在于,包括用户设备和云端服务设备;
所述用户设备,用于向云端服务设备发送服务请求,所述服务请求携带待处理数据,所述待处理数据包括多个元素的编码数据;所述服务请求用于请求云端服务器针对所述待处理数据完成指定处理任务;
所述云端服务设备,用于通过神经网络对所述待处理数据进行特征提取,以获得所述多个元素中每个元素分别对应到多个坐标轴的特征向量,并对所述多个元素中每个元素分别对应到所述多个坐标轴的特征向量进行加权处理,以获得所述待处理数据的特征向量;根据所述待处理数据的特征向量完成所述指定处理任务得到处理结果,向所述用户设备发送所述处理结果;
所述用户设备,还用于接收来自所述云端服务设备的所述处理结果。
16.一种电子设备,其特征在于,所述终端设备包括至少一个处理器和存储器;
所述存储器中存储有指令;
所述至少一个处理器,用于执行所述存储器存储的所述指令,以实现权利要求1-7中任一项所述的方法。
17.一种芯片系统,其特征在于,所述芯片系统包括至少一个处理器和通信接口,所述通信接口和所述至少一个处理器通过线路互联;
所述通信接口,用于接收待处理数据;
所述处理器,用于针对所述待处理数据执行权利要求1-7中任意一项所述的方法。
18.一种计算机存储介质,其特征在于,所述计算机存储介质存储有指令,所述指令在由计算机执行时使得所述计算机实施权利要求1至7任一项所述的方法。
19.一种计算机程序产品,其特征在于,所述计算机程序产品存储有指令,所述指令在由计算机执行时使得所述计算机实施权利要求1至7任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210569598.0A CN117172297A (zh) | 2022-05-24 | 2022-05-24 | 一种数据处理方法及装置 |
PCT/CN2023/093668 WO2023226783A1 (zh) | 2022-05-24 | 2023-05-11 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210569598.0A CN117172297A (zh) | 2022-05-24 | 2022-05-24 | 一种数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117172297A true CN117172297A (zh) | 2023-12-05 |
Family
ID=88918423
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210569598.0A Pending CN117172297A (zh) | 2022-05-24 | 2022-05-24 | 一种数据处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117172297A (zh) |
WO (1) | WO2023226783A1 (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10755128B2 (en) * | 2018-12-18 | 2020-08-25 | Slyce Acquisition Inc. | Scene and user-input context aided visual search |
CN111046847A (zh) * | 2019-12-30 | 2020-04-21 | 北京澎思科技有限公司 | 一种视频处理方法、装置、电子设备以及介质 |
CN112183335A (zh) * | 2020-09-28 | 2021-01-05 | 中国人民大学 | 一种基于无监督学习的手写体图像识别方法及系统 |
-
2022
- 2022-05-24 CN CN202210569598.0A patent/CN117172297A/zh active Pending
-
2023
- 2023-05-11 WO PCT/CN2023/093668 patent/WO2023226783A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023226783A1 (zh) | 2023-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111507378A (zh) | 训练图像处理模型的方法和装置 | |
CN113039555B (zh) | 在视频剪辑中进行动作分类的方法、系统及存储介质 | |
Vakanski et al. | Mathematical modeling and evaluation of human motions in physical therapy using mixture density neural networks | |
CN113449700B (zh) | 视频分类模型的训练、视频分类方法、装置、设备及介质 | |
WO2022111387A1 (zh) | 一种数据处理方法及相关装置 | |
WO2023165361A1 (zh) | 一种数据处理方法及相关设备 | |
CN114283351A (zh) | 视频场景分割方法、装置、设备及计算机可读存储介质 | |
CN113627163A (zh) | 一种注意力模型、特征提取方法及相关装置 | |
CN116975350A (zh) | 图文检索方法、装置、设备及存储介质 | |
CN114925320B (zh) | 一种数据处理方法及相关装置 | |
CN113657272B (zh) | 一种基于缺失数据补全的微视频分类方法及系统 | |
CN115238909A (zh) | 一种基于联邦学习的数据价值评估方法及其相关设备 | |
Naved et al. | IoT-Enabled Convolutional Neural Networks: Techniques and Applications | |
WO2021136058A1 (zh) | 一种处理视频的方法及装置 | |
CN113762331A (zh) | 关系型自蒸馏方法、装置和系统及存储介质 | |
CN117033609A (zh) | 文本视觉问答方法、装置、计算机设备和存储介质 | |
CN116958324A (zh) | 图像生成模型的训练方法、装置、设备及存储介质 | |
CN116431827A (zh) | 信息处理方法、装置、存储介质及计算机设备 | |
CN110826726B (zh) | 目标处理方法、目标处理装置、目标处理设备及介质 | |
Buonamente et al. | Discriminating and simulating actions with the associative self-organising map | |
CN117172297A (zh) | 一种数据处理方法及装置 | |
CN114298961A (zh) | 图像处理方法、装置、设备及存储介质 | |
CN115601513A (zh) | 一种模型超参数的选择方法及相关装置 | |
CN111611852A (zh) | 一种表情识别模型的训练方法、装置及设备 | |
CN114692715A (zh) | 一种样本标注方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |