用于识别图像的方法和设备技术

技术编号:28118915 阅读:30 留言:0更新日期:2021-04-19 11:22
提供了用于识别图像的方法和设备。所述识别图像的方法包括:获得输入图像;基于输入图像计算神经网络内的输入激活;针对神经网络内的至少一个层中的每个层,基于神经网络内的所述层的多个输入激活中的每个输入激活是否为0来生成位向量;将位向量合并到所述多个输入激活中,使得包括在位向量中的位值是所述多个输入激活的多位表示的最高有效位;将位向量合并到多个权重中,使得包括在位向量中的位值是所述多个权重的多位表示的最高有效位;基于与最高有效位对应的位来对所述多个输入激活和所述多个权重进行排序;执行排序的所述多个输入激活与排序的所述多个权重之间的运算;和基于运算的结果,输出图像识别结果。输出图像识别结果。输出图像识别结果。

【技术实现步骤摘要】
用于识别图像的方法和设备
[0001]本申请要求于2019年10月16日在韩国知识产权局提交的第10-2019-0128715号韩国专利申请的权益,所述韩国专利申请的公开通过引用全部包含于此。


[0002]本公开涉及模式识别,更具体地,涉及用于识别图像的方法和设备。

技术介绍

[0003]图像识别可通过神经网络来实现。神经网络可以是参照计算架构实现的计算系统。
[0004]典型的用于图像识别的神经网络装置可需要针对复杂的输入图像的大量运算。此外,典型的用于图像识别的神经网络装置可不能高效地处理运算,并且因此典型的用于图像识别的神经网络装置可不能高效地实时分析输入图像并提取信息。因此,由于典型的用于图像识别的神经网络装置可需要大量运算和/或低效地处理运算,所以当由低功率、高性能的嵌入式系统(诸如,具有有限资源的智能电话)实现时,典型的用于图像识别的神经网络装置的图像识别性能可能是低效的。

技术实现思路

[0005]提供了用于在神经网络中执行图像识别的方法和设备。提供了记录有用于在计算机中执行所述方法的程序的计算机可读记录介质。
[0006]将被解决的技术问题不限于上述技术问题,并且其它技术问题可存在。
[0007]另外的方面将部分地在以下描述中阐述,并且部分地将从描述清楚,或者可通过实践呈现的公开的实施例而得知。
[0008]根据实施例的一个方面,一种识别图像的方法包括:获得输入图像;基于输入图像计算神经网络内的输入激活;针对神经网络内的至少一个层中的每个层,基于神经网络内的所述层的多个输入激活中的每个输入激活是否为0来生成位向量;将位向量合并到所述多个输入激活中,使得包括在位向量中的位值是所述多个输入激活的多位表示的最高有效位;将位向量合并到多个权重中,使得包括在位向量中的位值是所述多个权重的多位表示的最高有效位;基于与最高有效位对应的位来对所述多个输入激活和所述多个权重进行排序;执行排序的所述多个输入激活与排序的所述多个权重之间的运算;和基于运算的结果,输出图像识别结果。
[0009]基于输入图像计算神经网络内的输入激活的步骤可包括:神经网络的第i层基于作为第i层的输入激活的第i-1层的输出激活,输出第i层的输出激活,i为大于1的整数,其中,神经网络的第一层接收输入图像,并基于输入图像输出第一层的输出激活作为第二层的输入激活。生成位向量的步骤可包括:响应于所述多个输入激活之中的输入激活不为0而生成位值中的第一位值;和响应于所述多个输入激活之中的另外的输入激活为0而生成位值中的第二位值。
[0010]第一位值可以是1,第二位值可以是0。
[0011]将位向量合并到所述多个输入激活中的步骤可包括:将第一位值合并到所述输入激活中作为合并后输入激活的最高有效位,并且将第二位值合并到所述另外的输入激活中作为合并后输入激活的最高有效位。
[0012]排序的步骤可包括:以第一组和第二组的顺序对所述多个输入激活进行排序,第一组包括第一位值被合并到最高有效位中的输入激活,第二组包括第二位值被合并到最高有效位中的输入激活;和以第三组和第四组的顺序对所述多个权重进行排序,第三组包括第一位值被合并到最高有效位中的权重,第四组包括第二位值被合并到最高有效位中的权重。
[0013]响应于属于第二组的输入激活的总数量小于预设值,执行所述运算的步骤可包括:分别执行排序的所述多个输入激活之中的第n输入激活与排序的所述多个权重之中的第n权重之间的运算,并且n是正整数。
[0014]响应于第二组中的输入激活的总数量小于预设值,执行所述运算的步骤可包括:执行排序的所述多个输入激活之中的每个输入激活与排序的所述多个权重之中的对应权重之间的运算。
[0015]响应于属于第二组的输入激活的总数量大于或等于预设值,执行所述运算的步骤可包括:执行属于第一组的输入激活与属于第三组的权重之间的运算;和跳过属于第二组的输入激活与属于第四组的权重之间的一个或多个运算。
[0016]预设值可以是被配置为被处理器同时执行运算的输入激活的总数量,并且跳过所述一个或多个运算的步骤可包括:跳过来自属于第二组的输入激活之中的与预设值对应的数量的输入激活与来自属于第四组的权重之中的与预设值对应的数量的权重之间的运算。
[0017]生成位向量的步骤可包括:通过以下步骤生成第一向量:响应于所述多个输入激活之中的输入激活不为0而生成第一向量的第一位值,和响应于所述多个输入激活之中的另外的输入激活为0而生成第一向量的第二位值;通过以下步骤生成第二向量:响应于所述多个权重之中的权重不为0而生成第二向量的第一位值,和响应于所述多个权重之中的另外的权重为0而生成第二向量的第二位值;以及通过执行第一向量与第二向量之间的与逻辑运算来生成位向量。
[0018]将位向量合并到所述多个权重中的步骤可包括:将“被合并到所述多个输入激活之中的输入激活的多位表示的最高有效位中的位值”合并到“所述多个权重之中的将用所述输入激活被执行运算的权重的多位表示的最高有效位”中。
[0019]排序可根据冒泡排序算法、希尔排序算法、双调排序算法、梳排序算法、循环排序算法以及奇偶合并排序算法中的任何一种来执行。
[0020]执行排序的所述多个输入激活与排序的所述多个权重之间的运算的步骤可包括:生成神经网络的当前层的输出激活,其中,神经网络的最后层基于前一层的输出激活与对应的权重之间的运算的结果输出图像识别结果。
[0021]根据另一实施例的一个方面,一种用于识别图像的设备包括:处理器,被配置为:获得输入图像;基于输入图像计算神经网络内的输入激活;针对神经网络内的至少一个层中的每个层,基于神经网络内的所述层的多个输入激活中的每个输入激活是否为0来生成位向量;将位向量合并到所述多个输入激活中,使得包括在位向量中的位值是所述多个输
入激活的多位表示的最高有效位;将位向量合并到多个权重中,使得包括在位向量中的位值是所述多个权重的多位表示的最高有效位;基于与最高有效位对应的位来对所述多个输入激活和所述多个权重进行排序;执行排序的所述多个输入激活与排序的所述多个权重之间的运算;和基于运算的结果,输出图像识别结果。
[0022]为了基于输入图像计算神经网络内的输入激活,处理器可被配置为:通过神经网络的第i层基于作为第i层的输入激活的第i-1层的输出激活,输出第i层的输出激活,i为大于1的整数,其中,神经网络的第一层接收输入图像,并基于输入图像输出第一层的输出激活作为第二层的输入激活。为了生成位向量,处理器可被配置为:响应于所述多个输入激活之中的输入激活不为0而生成位值中的第一位值;和响应于所述多个输入激活之中的另外的输入激活为0而生成位值中的第二位值。
[0023]为了排序,处理器可被配置为:以第一组和第二组的顺序对所述多个输入激活进行排序,第一组包括第一位值被合并到最高有效位中的输入激活,第二组包括第二位值被合并到最高有效位中的输入激活;和以第三组和第四组的顺序对所述多个权重进行排序,第三组包本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种识别图像的方法,所述方法包括:获得输入图像;基于输入图像计算神经网络内的输入激活;针对神经网络内的至少一个层中的每个层,基于神经网络内的所述层的多个输入激活中的每个输入激活是否为0来生成位向量;将位向量合并到所述多个输入激活中,使得包括在位向量中的位值是所述多个输入激活的多位表示的最高有效位;将位向量合并到多个权重中,使得包括在位向量中的位值是所述多个权重的多位表示的最高有效位;基于与最高有效位对应的位来对所述多个输入激活和所述多个权重进行排序;执行排序的所述多个输入激活与排序的所述多个权重之间的运算;和基于运算的结果,输出图像识别结果。2.根据权利要求1所述的方法,其中,基于输入图像计算神经网络内的输入激活的步骤包括:神经网络的第i层基于作为第i层的输入激活的第i-1层的输出激活,输出第i层的输出激活,i为大于1的整数,其中,神经网络的第一层接收输入图像,并基于输入图像输出第一层的输出激活作为第二层的输入激活,生成位向量的步骤包括:响应于所述多个输入激活之中的输入激活不为0而生成位值中的第一位值;和响应于所述多个输入激活之中的另外的输入激活为0而生成位值中的第二位值。3.根据权利要求2所述的方法,其中,第一位值为1,第二位值为0。4.根据权利要求2所述的方法,其中,将位向量合并到所述多个输入激活中的步骤包括:将第一位值合并到所述输入激活中作为合并后输入激活的最高有效位,并且将第二位值合并到所述另外的输入激活中作为合并后输入激活的最高有效位。5.根据权利要求2所述的方法,其中,排序的步骤包括:以第一组和第二组的顺序对所述多个输入激活进行排序,第一组包括第一位值被合并到最高有效位中的输入激活,第二组包括第二位值被合并到最高有效位中的输入激活;和以第三组和第四组的顺序对所述多个权重进行排序,第三组包括第一位值被合并到最高有效位中的权重,第四组包括第二位值被合并到最高有效位中的权重。6.根据权利要求5所述的方法,其中,响应于属于第二组的输入激活的总数量小于预设值,执行所述运算的步骤包括:分别执行排序的所述多个输入激活之中的第n输入激活与排序的所述多个权重之中的第n权重之间的运算,并且n是正整数。7.根据权利要求5所述的方法,其中,响应于第二组中的输入激活的总数量小于预设值,执行所述运算的步骤包括:执行排序的所述多个输入激活之中的每个输入激活与排序的所述多个权重之中的对应权重之间的运算。8.根据权利要求5所述的方法,其中,响应于属于第二组的输入激活的总数量大于或等于预设值,执行所述运算的步骤包括:
执行属于第一组的输入激活与属于第三组的权重之间的运算;和跳过属于第二组的输入激活与属于第四组的权重之间的一个或多个运算。9.根据权利要求8所述的方法,其中,预设值是被配置为被处理器同时执行运算的输入激活的总数量,并且跳过所述一个或多个运算的步骤包括:跳过来自属于第二组的输入激活之中的与预设值对应的数量的输入激活与来自属于第四组的权重之中的与预设值对应的数量的权重之间的运算。10.根据权利要求1所述的方法,其中,生成位向量的步骤包括:通过以下步骤生成第一向量:响应于所述多个输入激活之中的输入激活不为0而生成第一向量的第一位值,和响应于所述多个输入激活之中的另外的输入激活为0而生成第一向量的第二位值;通过以下步骤生成第二向量:响应于所述多个权重之中的权重不为0而生成第二向量的第一位值,和响应于所述多个权重之中的另外的权重为0而生成第二向量的第二位值;以及通过执行第一向量与第二向量之间的与逻辑运算来生成位向量。11.根据权利要求1所述的方法,其中,将位向量合并到所述多个权重中的步骤包括:将“被合并到所述多个输入激活之中的输入激活的多位表示的最高有效位中的位值”合并到“所述多个权重之中的将用所述输入激活被执行运算的权重的多位表示的最高有效位”中。12.根据权利要求1所述的方法,其中,排序根据冒泡排序算法、希尔排序算法、双调排序算法、梳排序算法、循环排序算法以及奇偶合并排序算法中的任何一种来执行。13.根据权利要求1所述的方法,其中,执行排序的所述多个输入激活与排序的所述多个权重之间的运算的步骤包括:生成神经网络的当前层的输出激活,其中,神经网络的最后层基于前一层的输出激活与对应的权重之间的运算的结果输出图像识别结果。14.一种存储指令的非暂时性计算机可读存储介质,所述指令在被一个或多个处理器执行时,配置所述处理器执行权利要求1至权利要求13中的任意一项所述的方法。15.一种用于识别图像的设备,所述设备包括:处理器,被配置为:获得输入图像;基于...

【专利技术属性】
技术研发人员:金愈珍河舜会姜辰泽姜东贤
申请(专利权)人:首尔大学校产学协力团
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1