本发明涉及实时流数据处理领域,特别涉及一种多模态神经网络模型流式计算方法。
背景技术:
1、人工神经网络(以下简称神经网络)是人工智能的重要组成部分,是让机器具备智能的关键技术,已广泛运用在图像识别和计算机视觉、自然语言处理、金融和医疗诊断领域,然而现有的神经网络模型都采用了固定结构的计算流程,它在计算上存在以下问题:1)模型拆分和分支问题。一个训练好的模型无法插入新的预训练模型或对外提供模型中间过程的特征向量;2)模型引流和合并问题。一个训练好的模型无法接受新空间信息输入或在模型中间层接入新的特征向量。
2、随着大数据应用的发展,人们对实时数据的要求越来越高,并且传感器接入多源多模态数据具有实时性强、流式引入等特点,固定结构的计算方式已无法满足需求。
技术实现思路
1、为解决上述问题以及实现边缘设备或嵌入式设备的部署,本发明提供了一种多模态神经网络模型流式计算方法,并据此设计了一种具有流式并行计算能力的soc系统,以使神经网络模型具备可拆分、可分支和可引流、可合并等灵活计算能力,为后续形成一个较为完整的片上ai系统,实现一种新型的端ai计算架构,为完成一类完备的工程应用奠定基础。
2、本发明采用的技术方案如下:一种多模态神经网络模型流式计算方法,包括:
3、通过模块化来固化神经网络模型内部各个隐藏层的特征表征空间,使得每个隐藏层都能对外提供基于自己表征空间的特征向量;
4、对神经网络模型计算过程流式化;
5、在多模态场景下对流式神经网络模型进行联合训练与推理,形成多个网络映射,实现场景特征共享及目标识别和场景再现。
6、作为一种优选方案,还包括,建立soc系统,利用片内丰富的dsp计算能力构建具有流式并行计算能力的神经网络模型计算逻辑。
7、作为一种优选方案,所述通过模块化来固化神经网络模型内部各个隐藏层的特征表征空间,具体包括:
8、利用第一训练机制训练神经网络形成第一映射,通过第一映射将完整且稳定的第一特征空间中的向量与第二特征空间中的向量一一映射;同时形成第二映射,通过第二映射将第二特征空间中的向量与第一特征空间中的向量一一映射;
9、利用第二训练机制训练神经网络形成第三映射,通过第三映射将一个或多个已知特征空间的一组向量与另一个已知目标空间中的具有明确标注含义的向量进行一一映射;
10、通过具有第一映射的神经网络模型将一个特定物理空间中的元素与一个有限特征空间中的特征向量一一映射。
11、作为一种优选方案,所述对神经网络模型计算过程流式化,具体包括:
12、对于多个神经网络模型,在计算时,将神经网络模型的输出作为其他神经网络模型的输入,实现流式神经网络计算架构的构建。
13、作为一种优选方案,所述在多模态场景下对流式神经网络模型进行联合训练与推理,形成多个网络映射,具体包括:
14、在多场景中训练神经网络形成相应场景的映射;
15、将多场景下的特征共享,完成目标识别;
16、通过映射实现场景再现。
17、作为一种优选方案,所述在多场景中训练神经网络形成相应场景的映射,具体包括:
18、在场景a训练神经网络形成该场景下的第一映射和第二映射,即φa和φ′a;
19、在场景b训练神经网络形成该场景下的第一映射和第二映射,即φb和φ′b;
20、在场景c训练神经网络形成该场景下的第一映射和第二映射,即φc和φ′c。
21、作为一种优选方案,所述将多场景下的特征共享,完成目标识别,具体包括:
22、将场景a的状态通过φa映射输出的特征向量训练神经网络1形成该网络下的第三映射,即γ1,使其能够从场景a的状态中识别出目标;
23、将场景a和b的状态通过φa和φb映射输出的特征向量,联合训练神经网络2形成的φa映射;将φa映射输出的特征向量与场景c的映射φc输出特征向量联合训练神经网络3形成该网络下的第三映射即,γ2,使其能够从联合输入的状态中识别出目标。
24、作为一种优选方案,所述通过映射实现场景再现,具体包括:
25、利用场景a、b或c的第二映射输出特征向量即可还原出相应场景的当前状态。
26、作为一种优选方案,所述利用片内丰富的dsp计算能力构建具有流式并行计算能力的神经网络模型计算逻辑,具体包括:
27、从已训练模型中提取全部层次的神经网络权重,并通过id进行标识后存入文件作为模型阐述供soc系统读取使用;
28、在soc系统启动时预先从sd文件预读前两个模型参数,当启动模型计算时,先从这两个参数中选择计算第一个参数,当第一个参数计算完毕时,把结果作为输入在利用第二个参数进行计算,这时开始预读第三个参数,当第二个参数计算完成时,把计算结果作为输入再利用第三个参数进行计算,并预读第四个参数,以此循环完成把n次结果作为输入进行n+1参数计算,并预读n+2参数,迭代完成所有计算。
29、作为一种优选方案,采用流式分布计算结构完成对迭代计算载荷进行拆分,具体包括:
30、在soc系统内部存储中划分两个参数区,并分别载入t和t+1计算时序权重;在启动模型计算时,将输入向量与t时刻的权重结合形成一组计算数据序列,并利用dma将这个计算数据序列组按计算单元总量进行分配,取回计算单元计算结果后再分配新的计算数据序列,直至所有计算数据序列都形成计算结果,即完成一层神经网络计算;此时将权重t+1切换到t,并将下一层权重载入到已完成计算的权重区形成新的t+1;
31、根据模型计算结构,按计算层次顺序迭代执行直至所有层次计算完成形成最终输出结果。
32、与现有技术相比,采用上述技术方案的有益效果为:本发明提出了一种多模态神经网络模型流式计算方法,并基于该方法完成了一个具有流式并行大型矩阵计算能力的soc系统的工程设计和实践工作,具有广泛的应用场景,如1)神经网络类计算,用于目标识别或分类;2)深度学习类计算,用于推理或生成式;3)注意力机制(例如self-attention机制),用于序列元素间的关联关系分析。成果的业务应用就是提供工程可用且完整的soc系统解决方案,非常适合具有微型、低功耗要求的边端业务应用场景,如车载、机载、星载和背负装备等。
1.一种多模态神经网络模型流式计算方法,其特征在于,包括:
2.根据权利要求1所述的多模态神经网络模型流式计算方法,其特征在于,还包括,建立soc系统,利用片内丰富的dsp计算能力构建具有流式并行计算能力的神经网络模型计算逻辑。
3.根据权利要求1所述的多模态神经网络模型流式计算方法,其特征在于,所述通过模块化来固化神经网络模型内部各个隐藏层的特征表征空间,具体包括:
4.根据权利要求1所述的多模态神经网络模型流式计算方法,其特征在于,所述对神经网络模型计算过程流式化,具体包括:
5.根据权利要求3所述的多模态神经网络模型流式计算方法,其特征在于,所述在多模态场景下对流式神经网络模型进行联合训练与推理,形成多个网络映射,具体包括:
6.根据权利要求5所述的多模态神经网络模型流式计算方法,其特征在于,所述在多场景中训练神经网络形成相应场景的映射,具体包括:
7.根据权利要求6所述的多模态神经网络模型流式计算方法,其特征在于,所述将多场景下的特征共享,完成目标识别,具体包括:
8.根据权利要求7所述的多模态神经网络模型流式计算方法,其特征在于,所述通过映射实现场景再现,具体包括:
9.根据权利要求2所述的多模态神经网络模型流式计算方法,其特征在于,所述利用片内丰富的dsp计算能力构建具有流式并行计算能力的神经网络模型计算逻辑,具体包括:
10.根据权利要求9所述的多模态神经网络模型流式计算方法,其特征在于,采用流式分布计算结构完成对迭代计算载荷进行拆分,具体包括: