本发明涉及图像处理,更具体地说,涉及一种图像处理方法、装置、系统、设备及计算机存储介质。
背景技术:
1、当前,借助训练好的图像处理神经网络模型可以对于图像进行识别、分类等处理,且考虑到数据样本量以及图像处理神经网络模型规模的增长,可以借助分布式训练系统(distributed training system,dts)来对图像处理神经网络模型进行训练,并通过二阶优化算法(second optimization algorithm,soa)中的牛顿法(newton algorithm)利用样本目标函数的二阶梯度信息实现模型参数的高效更新。
2、在图像处理神经网络模型的更新过程中,主节点将图像处理神经网络模型进行拆分后得到多个子神经网络模型,将每个子神经网络模型发送给对应的计算节点进行模型训练,主节点再根据所有计算节点的训练结果确定图像处理神经网络模型的训练结果,这也就意味着主节点需与各个计算节点进行数据交互,而计算节点通过牛顿法等得到的特征矩阵及其逆矩阵等规模较大,导致主节点和计算节点间的通信开销大,通信效率低,最终影响借助图像处理神经网络模型进行图像处理的效率。
3、综上所述,如何提高借助图像处理神经网络模型进行图像处理的效率是目前本领域技术人员亟待解决的问题。
技术实现思路
1、本发明的目的是提供一种图像处理方法,其能在一定程度上解决如何提高借助图像处理神经网络模型进行图像处理的效率的技术问题。本发明还提供了一种图像处理装置、系统、电子设备及计算机可读存储介质。
2、为了实现上述目的,本发明提供如下技术方案:
3、根据本发明实施例的第一方面,提供一种图像处理方法,应用于目标设备,包括:
4、对所述目标设备分配得到的图像处理子神经网络模型进行当前轮的训练,所述图像处理子神经网络模型包括对图像处理神经网络模型进行拆分后得到的模型部分;
5、计算当前轮训练好的所述图像处理子神经网络模型的目标函数的局部特征矩阵,所述局部特征矩阵包括对所述目标函数的梯度值进行处理后得到的矩阵;
6、判断是否传输当前轮的所述局部特征矩阵;
7、若是,则传输当前轮的所述局部特征矩阵至主设备,以使所述主设备基于当前轮的所述局部特征矩阵生成当前轮的全局参数;若否,则不传输当前轮的所述局部特征矩阵至所述主设备,以使所述主设备基于上一轮的所述局部特征矩阵生成当前轮的所述全局参数;以基于当前轮的所述全局参数得到训练好的所述图像处理神经网络模型来对目标图像进行处理。
8、在一示例性实施例中,所述传输当前轮的所述局部特征矩阵至主设备,包括:
9、对于当前轮的所述局部特征矩阵中的每个第一特征矩阵算子,将所述第一特征矩阵算子拆分为对称的第一矩阵和第二矩阵;
10、传输所述第一矩阵或所述第二矩阵至所述主设备,以使所述主设备基于接收的所述第一矩阵或所述第二矩阵重构出所述第一特征矩阵算子,进而重构出当前轮的所述局部特征矩阵。
11、在一示例性实施例中,所述将所述第一特征矩阵算子拆分为对称的第一矩阵和第二矩阵,包括:
12、将所述第一特征矩阵算子拆分为对称的上三角矩阵和下三角矩阵;
13、将所述上三角矩阵作为所述第一矩阵;
14、将所述下三角矩阵作为所述第二矩阵。
15、在一示例性实施例中,所述传输当前轮的所述局部特征矩阵至主设备,包括:
16、对当前轮的所述局部特征矩阵进行压缩,得到压缩局部特征矩阵;
17、传输所述压缩局部特征矩阵至所述主设备,以使所述主设备对所述压缩局部特征矩阵进行解压缩后得到当前轮的所述局部特征矩阵。
18、在一示例性实施例中,所述对当前轮的所述局部特征矩阵进行压缩,得到压缩局部特征矩阵,包括:
19、对于当前轮的所述局部特征矩阵中的每个第一特征矩阵算子,生成维度与所述第一特征矩阵算子的维度一样的随机矩阵,所述随机矩阵由0和1组成,且所述随机矩阵中0的数量为第一数量;
20、确定所述第一特征矩阵算子中元素的总个数值;
21、确定所述第一特征矩阵算子中所有元素的值的第一和值;
22、基于所述总个数值、所述第一数量、所述随机矩阵对所述第一特征矩阵算子进行压缩,得到压缩第一特征矩阵算子;
23、将所述压缩第一特征矩阵算子、所述第一数量、所述总个数值和所述第一和值作为所述压缩局部特征矩阵。
24、在一示例性实施例中,所述基于所述总个数值、所述第一数量、所述随机矩阵对所述第一特征矩阵算子进行压缩,得到压缩第一特征矩阵算子,包括:
25、通过压缩公式,基于所述总个数值、所述第一数量、所述随机矩阵对所述第一特征矩阵算子进行压缩,得到所述压缩第一特征矩阵算子;
26、所述压缩公式包括:
27、;
28、其中,表示第个训练样本对应的所述第一特征矩阵算子,表示所述目标设备的编号,表示当前轮的轮数;表示所述总个数值;表示所述第一数量;表示对两个矩阵对应位置元素进行相乘且计算优先级高于乘法运算;表示所述随机矩阵;表示所述压缩第一特征矩阵算子。
29、在一示例性实施例中,所述计算当前轮训练好的所述图像处理子神经网络模型的目标函数的局部特征矩阵,包括:
30、计算当前轮训练好的所述图像处理子神经网络模型的目标函数的一阶梯度值;
31、基于牛顿法对所述一阶梯度值进行处理,得到局部海森矩阵;
32、将所述局部海森矩阵作为所述局部特征矩阵。
33、在一示例性实施例中,所述判断是否传输当前轮的所述局部特征矩阵,包括:
34、确定当前轮的轮数;
35、判断当前轮的轮数是否属于目标轮数,所述目标轮数包括按照迭代间隔确定的轮数;
36、若当前轮的轮数属于所述目标轮数,则判定不传输当前轮的所述局部特征矩阵;
37、若当前轮的轮数不属于所述目标轮数,则判定传输当前轮的所述局部特征矩阵。
38、根据本发明实施例的第二方面,提供一种图像处理方法,应用于主设备,包括:
39、判断是否接收目标计算节点传输的当前轮的局部特征矩阵;
40、若是,则接收当前轮的所述局部特征矩阵,基于当前轮的所述局部特征矩阵生成当前轮的全局参数;若否,则基于上一轮的所述局部特征矩阵生成当前轮的所述全局参数;以基于当前轮的所述全局参数得到训练好的图像处理神经网络模型来对目标图像进行处理;
41、其中,当前轮的所述局部特征矩阵包括所述目标计算节点计算得到的当前轮训练好的图像处理子神经网络模型的目标函数的局部特征矩阵;所述图像处理子神经网络模型包括对所述图像处理神经网络模型进行拆分后得到的模型部分。
42、在一示例性实施例中,所述基于上一轮的所述局部特征矩阵生成当前轮的所述全局参数,包括:
43、获取所述图像处理神经网络模型在训练过程中的学习率;
44、对于上一轮的所述局部特征矩阵中的每个第二特征矩阵算子,基于所述学习率对所述第二特征矩阵算子进行重构,得到重构特征矩阵算子;
45、基于所有的所述重构特征矩阵算子生成上一轮的所述局部特征矩阵在当前轮对应的重构特征矩阵;
46、基于所述重构特征矩阵生成当前轮的所述全局参数。
47、在一示例性实施例中,所述基于所述学习率对所述第二特征矩阵算子进行重构,得到重构特征矩阵算子,包括:
48、通过重构公式,基于所述学习率对所述第二特征矩阵算子进行重构,得到所述重构特征矩阵算子;
49、所述重构公式包括:
50、;
51、其中,表示第个训练样本对应的所述第二特征矩阵算子,表示对应的所述目标计算节点的编号,表示当前轮的轮数;表示大于0小于1的系数;表示所述学习率;表示所述重构特征矩阵算子。
52、在一示例性实施例中,所述接收当前轮的所述局部特征矩阵,包括:
53、接收第一矩阵或第二矩阵,所述第一矩阵或所述第二矩阵包括所述目标计算节点对当前轮的所述局部特征矩阵中的每个第一特征矩阵算子进行拆分后得到的对称矩阵;
54、基于接收到的所述第一矩阵或所述第二矩阵重构出所述第一特征矩阵算子;
55、基于所述第一特征矩阵算子重构出当前轮的所述局部特征矩阵。
56、在一示例性实施例中,所述第一矩阵包括对所述第一特征矩阵算子进行拆分后得到的上三角矩阵,所述第二矩阵包括对所述第一特征矩阵算子进行拆分后得到的下三角矩阵。
57、在一示例性实施例中,所述接收当前轮的所述局部特征矩阵,包括:
58、接收所述目标计算节点对当前轮的所述局部特征矩阵进行压缩后得到的压缩局部特征矩阵;
59、对所述压缩局部特征矩阵进行解压缩,得到当前轮的所述局部特征矩阵。
60、在一示例性实施例中,所述压缩局部特征矩阵包括压缩第一特征矩阵算子、第一数量、总个数值和第一和值,所述压缩第一特征矩阵算子包括所述目标计算节点基于所述总个数值、随机矩阵对当前轮的所述局部特征矩阵中的第一特征矩阵算子进行压缩后得到的算子;所述随机矩阵由0和1组成,且所述随机矩阵的维度与所述第一特征矩阵算子的维度一样,所述第一数量为所述随机矩阵中0的数量值;所述总个数值包括所述第一特征矩阵算子中元素的个数值;所述第一和值包括所述第一特征矩阵算子中所有元素的值的和值;
61、所述对所述压缩局部特征矩阵进行解压缩,得到当前轮的所述局部特征矩阵,包括:
62、基于所述第一数量、所述总个数值对所述压缩第一特征矩阵算子进行解压缩,得到第三特征矩阵算子;
63、基于所述第一和值对所述第三特征矩阵算子进行恢复,得到第四特征矩阵算子;
64、基于所述第四特征矩阵算子重构出当前轮的所述局部特征矩阵。
65、在一示例性实施例中,所述基于所述第一数量、所述总个数值对所述压缩第一特征矩阵算子进行解压缩,得到第三特征矩阵算子,包括:
66、计算所述第一数量与所述总个数值的第一比值;
67、将所述第一比值与所述压缩第一特征矩阵算子相乘,得到所述第三特征矩阵算子。
68、在一示例性实施例中,所述基于所述第一和值对所述第三特征矩阵算子进行恢复,得到第四特征矩阵算子,包括:
69、按照所述第四特征矩阵算子的元素的值的和值等于所述第一和值的规则,对所述第三特征矩阵算子中值为0的元素进行恢复,得到所述第四特征矩阵算子。
70、在一示例性实施例中,所述按照所述第四特征矩阵算子的元素的值的和值等于所述第一和值的规则,对所述第三特征矩阵算子中值为0的元素进行恢复,得到所述第四特征矩阵算子,包括:
71、计算所述第三特征矩阵算子中所有元素的值的第二和值;
72、计算所述第一和值与所述第二和值间的差值;
73、计算所述差值与所述第一数量的第二比值;
74、将所述第三特征矩阵算子中值为0的元素恢复成所述第二比值,得到所述第四特征矩阵算子。
75、根据本发明实施例的第三方面,提供一种图像处理装置,应用于目标设备,包括:
76、训练模块,用于对所述目标设备分配得到的图像处理子神经网络模型进行当前轮的训练,所述图像处理子神经网络模型包括对图像处理神经网络模型进行拆分后得到的模型部分;
77、计算模块,用于计算当前轮训练好的所述图像处理子神经网络模型的目标函数的局部特征矩阵,所述局部特征矩阵包括对所述目标函数的梯度值进行处理后得到的矩阵;
78、第一判断模块,用于判断是否传输当前轮的所述局部特征矩阵;若是,则传输当前轮的所述局部特征矩阵至主设备,以使所述主设备基于当前轮的所述局部特征矩阵生成当前轮的全局参数;若否,则不传输当前轮的所述局部特征矩阵至所述主设备,以使所述主设备基于上一轮的所述局部特征矩阵生成当前轮的所述全局参数;以基于当前轮的所述全局参数得到训练好的所述图像处理神经网络模型来对目标图像进行处理。
79、根据本发明实施例的第四方面,提供一种图像处理装置,应用于主设备,包括:
80、第二判断模块,用于判断是否接收目标计算节点传输的当前轮的局部特征矩阵;若是,则接收当前轮的所述局部特征矩阵,基于当前轮的所述局部特征矩阵生成当前轮的全局参数;若否,则基于上一轮的所述局部特征矩阵生成当前轮的所述全局参数;以基于当前轮的所述全局参数得到训练好的图像处理神经网络模型来对目标图像进行处理;
81、其中,当前轮的所述局部特征矩阵包括所述目标计算节点计算得到的当前轮训练好的图像处理子神经网络模型的目标函数的局部特征矩阵;所述图像处理子神经网络模型包括对所述图像处理神经网络模型进行拆分后得到的模型部分。
82、根据本发明实施例的第五方面,提供一种图像处理系统,包括主设备和目标数量的目标设备;
83、所述目标设备用于:对所述目标设备分配得到的图像处理子神经网络模型进行当前轮的训练,所述图像处理子神经网络模型包括对图像处理神经网络模型进行拆分后得到的模型部分;计算当前轮训练好的所述图像处理子神经网络模型的目标函数的局部特征矩阵,所述局部特征矩阵包括对所述目标函数的梯度值进行处理后得到的矩阵;判断是否传输当前轮的所述局部特征矩阵;若是,则传输当前轮的所述局部特征矩阵至所述主设备;若否,则不传输当前轮的所述局部特征矩阵至所述主设备;
84、所述主设备用于:若接收到当前轮的所述局部特征矩阵,则基于当前轮的所述局部特征矩阵生成当前轮的全局参数;若未接收到当前轮的所述局部特征矩阵,则基于上一轮的所述局部特征矩阵生成当前轮的所述全局参数;以基于当前轮的所述全局参数得到训练好的图像处理神经网络模型来对目标图像进行处理。
85、根据本发明实施例的第六方面,提供一种电子设备,包括:
86、存储器,用于存储计算机程序;
87、处理器,用于执行所述计算机程序时实现如上任一所述图像处理方法的步骤。
88、根据本发明实施例的第七方面,提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述图像处理方法的步骤。
89、本发明提供的一种图像处理方法,应用于目标设备,对目标设备分配得到的图像处理子神经网络模型进行当前轮的训练,图像处理子神经网络模型包括对图像处理神经网络模型进行拆分后得到的模型部分;计算当前轮训练好的图像处理子神经网络模型的目标函数的局部特征矩阵,局部特征矩阵包括对目标函数的梯度值进行处理后得到的矩阵;判断是否传输当前轮的局部特征矩阵;若是,则传输当前轮的局部特征矩阵至主设备,以使主设备基于当前轮的局部特征矩阵生成当前轮的全局参数;若否,则不传输当前轮的局部特征矩阵至主设备,以使主设备基于上一轮的局部特征矩阵生成当前轮的全局参数;以基于当前轮的全局参数得到训练好的图像处理神经网络模型来对目标图像进行处理。
90、本发明的有益效果是:目标设备在计算得到局部特征矩阵之后,并非每轮均传输局部特征矩阵给主设备,而是选择性的将局部特征矩阵传输给主设备,降低了主设备和目标设备间的通信开销,提高了通信效率,继而提高了图像处理神经网络模型的训练效率,最终提高了借助图像处理神经网络模型进行图像处理的效率。本发明提供的一种图像处理装置、系统、电子设备及计算机可读存储介质也即解决了相应技术问题。