一种基于机器学习的数据处理方法及装置与流程

文档序号:29858950发布日期:2022-04-30 10:16阅读:158来源:国知局
一种基于机器学习的数据处理方法及装置与流程

1.本发明涉及机器学习技术领域,具体涉及一种基于机器学习的数据处理方法及装置。


背景技术:

2.最近两年,注意力模型(attention model)被广泛使用在自然语言处理、图像识别及语音识别等各种不同类型的深度学习任务中,是深度学习技术中最值得关注与深入了解的核心技术之一。
3.由于注意力模型的softmax模块对某些特征的权重高于其他特征,从而使整个系统聚焦于图像的特定区域,因此softmax模块中的归一化是必不可少的,如果删除softmax模块的归一化,则softmax不能再构成注意力机制,而仅表示对特征进行点乘。在现有的softmax模块中需要一个预先计算的除法去实现自注意力机制,这就使得在密集使用时会增加计算难度和时间,从而导致在fpga中实现transformer模块和自注意力机制是困难的。


技术实现要素:

4.有鉴于此,本发明实施例提供了一种基于机器学习的数据处理方法及装置,解决了softmax模块实现自注意力机制较为困难的问题。
5.本发明一实施例提供的一种基于机器学习的数据处理方法包括:接收数字序列,基于所述数字序列中对象的数目得到索引序列;基于所述索引序列在现实查询表进行权重查询以得到概率序列;基于所述概率序列对机器学习系统进行配置。
6.在一种实施方式中,所述数字序列包括预设数量的数字;所述基于所述数字序列中对象的数目得到索引序列的步骤包括:基于所述数字序列得到所述预设数量的整数;将所述预设数量的整数按照第一预设规则进行排列得到所述索引系列。
7.在一种实施方式中,所述基于所述索引序列在现实查询表进行权重查询以得到概率序列的步骤包括:基于所述索引序列从所述现实查询表中获得所述索引序列中每个对象的权重;基于所述每个对象的权重按照第二预设规则进行排序以得到所述概率序列。
8.在一种实施方式中,所述现实查询表中的数据为浮点格式数值;所述现实查询表中所有数据之和等于1。
9.在一种实施方式中,所述现实查询表中的数据为整数格式数值,所述现实查询表中所有数据为2的幂。
10.在一种实施方式中,所述现实查询表包括固定值和预定值。
11.一种机器学习系统的配置装置,包括:接收模块,用于接收数字序列;处理模块,用于基于所述数字序列中对象的数目得到索引序列;基于所述索引序列在现实查询表进行权重查询以得到概率序列;配置模块,用于基于所述概率序列对机器学习系统进行配置。
12.在一种实施方式中,所述数字序列包括预设数量的数字;所述处理模块还用于:基于所述数字序列得到与所述预设数量相等数量的整数;将所述所述预设数量的整数按照第
一预设规则进行排列得到所述索引系列;基于所述索引序列从所述现实查询表中获得所述索引序列中每个对象的权重;基于所述每个对象的权重按照第二预设规则进行排序以得到所述概率序列。
13.一种电子设备,包括存储器和处理器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行时实现上述所述的基于机器学习的数据处理方法。
14.一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用以实现上述所述的基于机器学习的数据处理方法。
15.本发明实施例提供的一种基于机器学习的数据处理方法及装置,通过接收数字序列,基于所述数字序列中对象的数目得到索引序列;基于所述索引序列在现实查询表进行权重查询以得到概率序列;基于所述概率序列对机器学习系统进行配置。通过本发明所述的基于机器学习的数据处理方法,消除了自注意力机制和transformer模块中应用softmax模块时归一化所需的除法运算,并允许在没有除法运算的情况下应用自注意机制和transformer模块,从而在图像和视频处理等应用中支持非常高的数据吞吐量。
附图说明
16.图1所示为现有技术中的一种卷积神经网络的结构示意图。
17.图2所示为现有技术中的一种softmax模块输入输出的示意图。
18.图3所示为本发明一实施例提供的一种基于机器学习的数据处理方法的流程图。
19.图4所示为本发明一实施例提供的一种得到索引序列方法的流程图。
20.图5所示为本发明一实施例提供的一种得到概率序列方法的流程图。
21.图6所示为本发明一实施例提供的一种分级softmax模块输入输出示意图。
22.图7所示为本发明一实施例提供的一种机器学习装置的结构示意图。
具体实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.卷积神经网络,或简称卷积网络,是一种使用图像作为输入/输出并用滤波器(卷积)代替标量权重的神经网络结构。作为示例,图1显示了一个包含3层的简单结构。该结构在左侧获取4个输入图像,在中间的隐藏层有3个单元(输出图像),在输出层有2个单元,生成2个输出图像。每个权重为的框对应一个过滤器(例如3x3或5x5内核),其中k是表示输入层编号的标签,i和j分别是表示输入和输出单位的标签。偏置是加在卷积输出上的标量。添加多个卷积和偏置的结果随后通过激活函数,激活函数常对应于整流线性单元(relu)、sigmoid函数或双曲正切等。滤波器和偏置在系统运行期间固定,通过使用一组输入/输出示例图像的训练过程获得,并根据应用程序进行调整以符合某些优化标准。典型配置包括每层十分之一或数百个过滤器。通常具有3层的网络被视为浅层,而大于5或10层的
网络通常被视为深层。
25.自注意力机制可以作为“transformer”模块的一部分;“transformer”模块的基本思想是使用3个输入,分别为:查询(q)、键(k)和值(v),而注意功能可以描述为将查询和一组键值对映射到输出,其中查询、键、值和输出都是向量,输出作为值的加权和计算,其中分配给每个值的权重由查询与相应键的兼容函数计算。
26.transformer模块中的自注意力机制的一个基本模块是softmax模块,如图2所示,该模块计算每个输入特征的指数函数,并归一化输出,使所有特征之和等于1,其中输入包括n个数字的序列,n个数字分别为x1~xn,输出概率系列包括n个对象,分别为p1~pn;其中,注意力模型在计算机视觉中的一些应用,如图像分类等,需要很少的除法运算来解决问题,这是因为该算法在执行除法运算之前将图像的分辨率降低了几倍,其他应用,如图像恢复和增强,需要对大图像中的每个输出像素进行一次除法运算。在此类应用中,softmax模块所需的计算资源是高昂的。
27.本发明通过设置分级softmax模块,取代传统的softmax模块,接收具有n个数字的序列,应用排序后的模块,并根据排名索引从现实查询表中获得相应的权重,并按照顺序输出相同的n个数字的概率序列。从而消除了softmax模块中的除法运算,并允许在不进行除法计算的情况下配置自注意机制和transformer模块,从而在图像和视频处理等应用中支持非常高的数据吞吐量。具体的实施方式如下述实施例所述。
28.本实施例提供了一种基于机器学习的数据处理方法,如图3所示,所述基于机器学习的数据处理方法包括:
29.步骤01:接收数字序列,基于所述数字序列中对象的数目得到索引序列。
30.所述数字序列包括预设数量的数字。其中,预设数量为n个整数,n≥0。
31.基于数字序列得到索引序列的步骤包括:基于数字序列得到预设数量的整数;将预设数量的整数按照第一预设规则进行排列得到索引系列。例如,接收n个数字的序列,并输出n个整数,这些整数以值的降序排列形成索引序列。如图4所示,将具有n个整数的数字序列输入rank(等级)模块,n个整数的数字序列为{x1,x2,
……
xn};输出索引序列{r1,r2,
……rn
},其中,ri∈{1,...,n},ri≠r
j if i≠j,
32.步骤02:基于所述索引序列在在现实查询表进行权重查询以得到概率序列。
33.基于所述索引序列在在现实查询表进行权重查询以得到概率序列的步骤包括:基于索引序列从现实查询表中获得索引序列中每个对象的权重;基于每个对象的权重按照第二预设规则进行排序以得到概率序列。
34.可选地,现实查询表包含固定值和预定值。固定值为输入数值,预定值为输出数值,根据输入数值在查询表中查询对应的预定值以输出。
35.现实查询表中的数据为括浮点格式数值。对于浮点格式,所述现实查询表中所有数值之和等于1。
36.现实查询表中的数据为整数格式数值。对于整数格式,所有现实查询表中所有数值之和应为常数,通常为2的幂。
37.如图5所示,lut模块为现实查询表,在现实查询表中获得所述索引序列中每个对象的权重为lut[1]~lut[n],其中,c为lut[1]~lut[n]之和;将lut
array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述实施例中的基于机器学习的数据处理方法。
[0055]
所述存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memery,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,简称eprom),可编程只读存储器(programmable read-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。
[0056]
本实施例还提供一种计算机可读存储介质。在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
[0057]
基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
[0058]
而前述的存储介质包括:闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等各种可以存储程序校验码的介质,其上存储有计算机程序,所述计算机程序被处理器执行时可以实现如下方法步骤:
[0059]
步骤01:接收数字序列,基于所述数字序列中对象的数目得到索引序列;
[0060]
步骤02:基于所述索引序列在现实查询表进行权重查询以得到概率序列;
[0061]
步骤03:基于所述概率序列对机器学习系统进行配置。具体的实施方式和产生的效果可以参考上述实施例中所述,本发明在此不再赘述。
[0062]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0063]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以
位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0064]
以上结合具体实施例描述了本技术的基本原理,但是,需要指出的是,在本技术中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本技术的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本技术为必须采用上述具体的细节来实现。
[0065]
本技术中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。
[0066]
还需要指出的是,在本技术的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本技术的等效方案。
[0067]
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本技术。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本技术的范围。因此,本技术不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
[0068]
本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本技术实施例中所有方向性指示(诸如上、下、左、右、前、后、顶、底
……
)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0069]
另外,在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
[0070]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1