CN110009021B - 一种目标识别方法及设备 - Google Patents

一种目标识别方法及设备 Download PDF

Info

Publication number
CN110009021B
CN110009021B CN201910231327.2A CN201910231327A CN110009021B CN 110009021 B CN110009021 B CN 110009021B CN 201910231327 A CN201910231327 A CN 201910231327A CN 110009021 B CN110009021 B CN 110009021B
Authority
CN
China
Prior art keywords
data
shift
determining
shifting
neural network
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.)
Active
Application number
CN201910231327.2A
Other languages
English (en)
Other versions
CN110009021A (zh
Inventor
陈海波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Deep Blue Technology Shanghai Co Ltd
Original Assignee
Deep Blue Technology Shanghai Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Deep Blue Technology Shanghai Co Ltd filed Critical Deep Blue Technology Shanghai Co Ltd
Priority to CN201910231327.2A priority Critical patent/CN110009021B/zh
Publication of CN110009021A publication Critical patent/CN110009021A/zh
Application granted granted Critical
Publication of CN110009021B publication Critical patent/CN110009021B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种目标识别方法及设备,涉及目标识别技术领域,用以解决在利用神经网络模型进行目标识别时,存在着大量数据的乘除运算而导致处理任务的效率过低的问题,该方法包括:将用于目标识别的图像数据输入神经网络模型,利用所述神经网络模型对所述图像数据进行目标识别过程中,确定N个相乘或相除的处理数据;从所述N个相乘或相除的处理数据中确定M个移位数据;根据各移位数据的真实值和绝对值确实各移位数据对应的移位方向和移位位数;根据所述各移位数据对应的移位方向和移位位数,确定所述N个处理数据相乘或相除的结果;根据所述N个处理数据相乘或相除的结果,通过所述神经网络模型输出所述目标识别的识别结果。

Description

一种目标识别方法及设备
技术领域
本发明涉及目标识别技术领域,特别涉及一种目标识别方法及设备。
背景技术
随着计算机技术、神经网络技术的发展,越来越多的人用神经网络模型进行目标识别,但在用神经网络模型进行目标识别的过程中,存在着大量复杂数据的运算,如各个网络层的浮点型模型参数,以及可能为小数形式的图像数据,上述各个网络层的模型参数以及上述图像数据间的运算直接影响着神经网络模型进行目标识别的效率,但在使用神经网络模型进行目标识别时,由于上述模型参数以及图像数据间存在大量复杂的乘除运算,且上述模型参数和图像数据常常以小数或者浮点型数据的形式表示,进而导致神经网络模型处理数据占用计算资源多,十分消耗时间,加长运算周期,进而极大地降低了神经网络模型进行目标识别的效率。
综上所述,在利用神经网络模型进行目标识别时,存在着大量数据的乘除运算,进而导致利用神经网络模型处理任务的效率过低。
发明内容
本发明提供一种目标识别方法及设备,用以解决现有技术中,存在利用神经网络模型进行目标识别时,存在着大量数据的乘除运算,进而导致利用神经网络模型处理任务的效率过低的问题。
第一方面,本申请实施例提供一种目标识别方法,该方法包括:
将用于目标识别的图像数据输入神经网络模型;
利用所述神经网络模型对所述图像数据进行目标识别过程中,确定N个相乘或相除的处理数据;
从所述N个相乘或相除的处理数据中确定M个移位数据,其中,所述N为大于1的整数,所述M为大于0小于N的整数;
根据各移位数据的真实值确实所述各移位数据对应的移位方向,根据各移位数据的绝对值确定所述各移位数据对应的移位位数;
根据所述各移位数据对应的移位方向和移位位数,确定所述N个处理数据相乘或相除的结果;
根据所述N个处理数据相乘或相除的结果,通过所述神经网络模型输出所述目标识别的识别结果。
上述方法中,在利用神经网络模型进行目标识别时,在出现的多个处理数据的乘除运算中,用数据的移位替代一部分乘除运算,占用的计算资源较少,进而加快数据处理的速度,节省时间提高效率,另一方面,上述方法中,根据移位数据的绝对值确定对应的移位位数,保证移位后的结果与实际运算的结果偏离程度在一定范围之内。
在一种可能的实现方式中,所述处理数据包括如下任一或任多:
所述神经网络模型的模型参数;
量化所述神经网络模型时的模型参数的量化系数;
量化后的所述神经网络模型的模型参数;
所述用于目标识别的图像数据。
在一种可能的实现方式中,该方法用于多个处理数据相乘时,根据各移位数据的真实值确实所述各移位数据对应的移位方向,包括:
任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为左移;
任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为右移。
在一种可能的实现方式中,该方法用于多个处理数据相除时,根据各移位数据的真实值确实所述各移位数据对应的移位方向,包括:
任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为右移;
任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为左移。
在一种可能的实现方式中,根据各移位数据的绝对值确定所述各移位数据对应的移位位数,包括:
确定与任一移位数据的绝对值最接近的,第二预设数据的幂次方的值;
根据所述第二预设数据的幂次方的值,确定该移位数据的移位位数。
在一种可能的实现方式中,根据所述第二预设数据的幂次方的值,确定该移位数据的移位位数,包括:
根据所述第二预设数据的幂次方的值确定所述幂k;
将所述幂k确定为该移位数据的移位位数,所述k为整数。
在一种可能的实现方式中,从N个相乘或相除的处理数据中确定M个移位数据,包括如下任一步骤:
从所述N个相乘或相除的处理数据中确定任M处理个数据为移位数据;
从所述N个相乘或相除的处理数据中指定M处理个数据为移位数据;
从所述N个相乘或相除的处理数据中指定部分数据,从所述部分数据中确定任M个处理数据为移位数据。
在一种可能的实现方式中,根据所述各移位数据对应的移位方向和移位数据确定所述N个处理数据相乘的结果,包括:
确定所述N个处理数据中除所述各移位数据外的其他处理数据相乘的结果值;
只存在一个移位数据时,将所述其他处理数据相乘的结果值根据该移位数据对应的移位方向和移位位数进行移位;
存在多个移位数据时,将所述其他处理数据相乘的结果值根据每个移位数据对应的移位方向和移位位数进行移位。
在一种可能的实现方式中,根据各移位数据对应的移位方向和移位数据确定所述N个处理数据相除的结果,包括:
只存在一个除数为移位数据时,将除以所述一个除数之前的计算结果值根据该移位数据对应的移位方向和移位位数进行移位,移位后继续按除数的先后顺序进行其他除数的计算至得到最终结果值;
存在多个除数为移位数据时,按除数的先后顺序,对于为移位数据的除数,将除以该除数之前的计算结果值,按照该移位数据的移位方向和移位位数进行移位,对于非移位数据的除数,进行除以该除数的计算至得到最终结果值。
在一种可能的实现方式中,该方法应用于现场可编程阵列FPGA中时,所述第一预设数据为1,所述第二预设数据为2。
第二方面,本申请实施例提供一种目标识别设备,该设备包括处理器和存储器,其中,所述存储器存储可执行程序,所述可执行程序被执行时,所述处理器用于实现如下过程:
将用于目标识别的图像数据输入神经网络模型获取目标识别相关数据,从所述目标识别相关数据中确定N个相乘或相除的处理数据;
从所述N个相乘或相除的处理数据中确定M个移位数据,其中,所述N为大于1的整数,所述M为大于0小于N的整数;
根据各移位数据的真实值确实所述各移位数据对应的移位方向,根据各移位数据的绝对值确定所述各移位数据对应的移位位数;
根据所述各移位数据对应的移位方向和移位位数,确定所述N个处理数据相乘或相除的结果;
根据所述N个处理数据相乘或相除的结果,通过所述神经网络模型输出所述目标识别的识别结果。
第三方面,本申请还提供一种计算机存储介质,其上存储有计算机程序,该程序被处理单元执行时实现第一方面所述方法的步骤。
另外,第二方面至第四方面中任一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例一提供的一种目标识别的方法示意图;
图2为本申请实施例二提供的一种目标识别的示意图;
图3为本申请实施例三提供的一种目标识别的示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例描述的应用场景是为了更加清楚的说明本发明实施例的技术方案,并不构成对于本发明实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
随着计算机技术、物联网技术的发展,如何加快对数据处理的效率成了急需解决的问题,在众多场景中,出现越来越多的浮点数或小数等复杂数据的乘除运算,如在现场可编程门阵列FPGA(Field Programmable Gata Array)中,常常运算周期较长,运算速度较慢,导致数据运算效率过低。
因此本申请实施例提供一种目标识别方法及设备;
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
针对上述场景,下面结合说明书附图对本发明实施例做进一步详细描述。
实施例一:
如图1所示,本发明实施例的一种目标识别的方法,该方法用于多个数据相乘或相除,具体包括以下步骤:
步骤101,将用于目标识别的图像数据输入神经网络模型;
步骤102,利用上述神经网络模型对上述图像数据进行目标识别过程中,确定N个相乘或相除的处理数据;
步骤103,从上述N个相乘或相除的处理数据中确定M个移位数据,其中,上述N为大于1的整数,上述M为大于0小于N的整数;
步骤104,根据各移位数据的真实值确实上述各移位数据对应的移位方向,根据各移位数据的绝对值确定上述各移位数据对应的移位位数;
步骤105,根据上述各移位数据对应的移位方向和移位位数,确定上述N个处理数据相乘或相除的结果;
步骤106,根据上述N个处理数据相乘或相除的结果,通过上述神经网络模型输出上述目标识别的识别结果。
应当理解的是,上述步骤102至步骤105的执行主体为上述神经网络模型;
上述方法中,在利用神经网络模型进行目标识别时,在出现的多个处理数据的乘除运算中,用数据的移位替代一部分乘除运算,占用的计算资源较少,进而加快数据处理的速度,节省时间提高效率,另一方面,上述方法中,根据移位数据的绝对值确定对应的移位位数,保证移位后的结果与实际运算的结果偏离程度在一定范围之内。
作为一种可选的实施方式,上述处理数据可以但不局限于包括如下任一或任多:
1)上述神经网络模型的模型参数;
在本实施例中,在创建上述神经网络模型或者利用上述神经网络模型进行目标识别时,可以但不局限于对上述过程涉及到的上述模型参数的乘除运算进行移位操作,以加快创建上述神经网络模型的过程,以使在训练模型时,加快模型的迭代过程,在用上述神经网络模型进行目标识别时,对涉及到的模型参数的乘除运算进行移位操作,可以加快神经网络模型进行目标识别的速度,同时减少了占用的计算资源;
2)量化上述神经网络模型时的模型参数的量化系数;
在创建上述神经网络模型时,因为上述神经网络模型的模型参数常常是浮点型数据或者小数等复杂形式,致使在创建用于目标识别的神经网络模型在处理上述模型参数的乘除计算时,消耗的计算资源多,且用时长,在本实施例中,可以但不局限于在创建上述神经网络模型时,利用预设的量化系数对上述模型参数进行量化成整数,进而在创建上述神经网络模型时,对涉及到的模型参数的量化系数的乘除运算进行移位操作,以加快上述神经网络模型的创建,以及提高利用上述神经网络模型进行目标识别的效率;
3)上述神经网络模型的模型参数经量化系数量化后的整数;
在创建上述神经网络模型时,因为上述神经网络模型的模型参数常常是浮点型数据或者小数等复杂形式,致使在创建用于目标识别的神经网络模型在处理上述模型参数的乘除计算时,消耗的计算资源多,且用时长,在本实施例中,可以但不局限于在创建上述神经网络模型时,利用预设的量化系数对上述模型参数进行量化成整数,进而在创建上述神经网络模型时,对涉及到的量化上述模型参数得到的整数的乘除运算进行移位操作,以加快上述神经网络模型的创建,以及提高利用上述神经网络模型进行目标识别的效率;
4)上述用于目标识别的图像数据;
在本实施例中,在利用上述神经网络进行目标识别时,对上述涉及到的图像数据的乘除运算进行移位操作,简化运算,加快了上述神经网络模型对图像数据的处理,进而能更快的得到上述神经网络模型输出的目标识别的结果。
作为一种可选的实施方式,该方法用于多个处理数据相乘时,根据乘法运算的特性,根据各移位数据的真实值确实上述各移位数据对应的移位方向,包括:
任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为左移;
任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为右移。
作为一种可选的实施方式,该方法用于多个处理数据相除时,根据除法运算的特性,根据各移位数据的真实值确实上述各移位数据对应的移位方向,包括:
任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为右移;
任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为左移。
在本实施中,可以根据乘数的先后顺序依次确定上述各移位数据的移位方向,也可以按照其他顺序确定上述各移位数据的移位方向。
作为一种可选的实施方式,根据各移位数据的绝对值确定上述各移位数据对应的移位位数,包括:
确定与任一移位数据的绝对值最接近的,第二预设数据的幂次方的值;
根据上述第二预设数据的幂次方的值,确定该移位数据的移位位数。
作为一种可选的实施方式,根据上述第二预设数据的幂次方的值,确定该移位数据的移位位数,包括:
根据上述第二预设数据的幂次方的值确定上述幂k;
将上述幂k确定为该移位数据的移位位数,上述k为整数。
对上述第一预设数据和第二预设数据不做过多限定,在本实施例中,根据移位操作及乘除法运算的特性,当上述移位数据为二进制表示的数据时,上述第一预设数据可以但不局限于为1,上述第二预设数据为2;当上述移位数据为八进制表示的数据时,上述第二预设数据为8,当上述移位数据为十六进制表示的数据时,上述第二预设数据为16,应当理解的是,上述各种进制表示的数据都可以转化为二进制数据进行运算,且上述除法也可以转为乘法运算。
在本实施例中,上述第一预设数据为1,第二数据为2,对于(A×B),若A为二进制表示的“101”(即十进制表示的数字5),B为二进制表示的1000(即十进制表示的数字8)时,若确定的移位数据为B,因B表示的数接近十进制的23,因此上述幂k为3,上述B对应的移位方向为左移,移位位数为3;
作为一种可选的实施方式,从N个相乘或相除的数据中确定M个移位数据,包括如下任一步骤:
1)从上述N个相乘或相除的处理数据中确定任M个处理数据为移位数据;
在本实施例中,该方法应用于多个处理数据相乘时,可以从N个数据中选出任一或者任多个处理数据为移位数据,该方法应用于多个处理数据相除时,可以从N个处理数据中除被除数外的其他处理数据中选择任一或任多个处理数据为移位数据;
2)从上述N个相乘或相除的处理数据中指定M个处理数据为移位数据;
在本实施例中,该方法应用于多个处理数据相乘时,可以从N个处理数据中指定一或者多个处理数据为移位数据,该方法应用于多个处理数据相除时,可以从N个处理数据中除被除数外的其他处理数据中指定一个或多个处理数据为移位数据;
3)从上述N个相乘或相除的处理数据中指定部分数据,从上述部分数据中确定任M个处理数据为移位数据。
在本实施例中,该方法应用于多个处理数据相乘时,可以从N个处理数据中指定部分数据,进而从指定的部分数据中选择任一或者任多个处理数据为移位数据,该方法应用于多个处理数据相除时,可以从N个处理数据中除被除数外的其他处理数据中指定部分数据,进而从指定的部分数据中选择任一或者任多个处理数据为移位数据;
作为一种可选的实施方式,该方法应用于多个处理数据相乘时,根据上述各移位数据对应的移位方向和移位数据确定上述N个处理数据相乘的结果,包括:
确定上述N个处理数据中除上述各移位数据外的其他处理数据相乘的结果值;
只存在一个移位数据时,将上述其他处理数据相乘的结果值根据该移位数据对应的移位方向和移位位数进行移位;
存在多个移位数据时,将上述其他处理数据相乘的结果值根据每个移位数据对应的移位方向和移位位数进行移位。
应当理解的是,当存在多个移位数据,将上述其他处理数据相乘的结果值根据每个移位数据对应的移位方向和移位位数位进行移位时,可以按照乘数的先后顺序依次将各移位数据前的乘积结果按照对应的移位方向移动移位位数,也可以按照如下方法确定上述N个处理数据相乘的结果:
1)计算除作为移位数据的各乘数的乘积的结果值;
2)根据上述各移位数据对应的移位方向和移位位数确定综合移位操作,上述综合移位操作包括综合移位方向和综合移位个数;
3)根据上述综合移位操作将对上述除作为移位数据的各乘数的乘积的结果值进行移位;
如在本实施例中,若多个处理数据相乘为(A×B×C),且确定的移位数据为B和C时,若B对应的移位方向为右移,移位位数为2,C对应的移位方向右移为右移,移位位数为3,则上述综合移位操作的移位方向为右移,移位位数为5,则上述A×B×C的结果为将A进行右移5位的结果;若B对应的移位方向为左移,移位位数为2,C对应的移位方向右移为右移,移位位数为3,则上述综合移位操作的移位方向为右移,移位位数为1,则上述(A×B×C)的结果为将A进行右移1位的结果;
作为一种可选的实施方式,该方法应用于多个处理数据相除时,根据各移位数据对应的移位方向和移位数据确定上述N个处理数据相除的结果,包括:
只存在一个除数为移位数据时,将除以上述一个除数之前的计算结果值根据该移位数据对应的移位方向和移位位数进行移位,移位后继续按除数的先后顺序进行其他除数的计算至得到最终结果值;
存在多个除数为移位数据时,按除数的先后顺序,对于为移位数据的除数,将除以该除数之前的计算结果值,按照该移位数据的移位方向和移位位数进行移位,对于非移位数据的除数,进行除以该除数的计算至得到最终结果值。
如在本实施例中,若多个处理数据相除为(A÷B÷C),且确定的移位数据为B和C时,若B对应的移位方向为右移,移位位数为2,C对应的移位方向右移为右移,移位位数为3,则应先根据B对应的移位方向和移位位数将A右移2位,进而按照C对应的移位方向和移位位数,将A右移2位的结果右移3位。
作为一种可选的实施方式,该方法应用于现场可编程阵列FPGA中时,上述多个相乘或相除的数据以二进制的形式表示,此时上述第一预设数据为1,行述第二预设数据为2。
需要说明的是,本申请实施例中所列举的对利用神经网络模型进行目标识别涉及到的处理数据的处理方法只是举例说明,任何一种可以利用神经网络模型进行任务处理中涉及上述方法的方式都适用于本发明实施例。
实施例二:
如图2所示,基于相同的发明构思,本实施例提供一种目标识别设备,该设备包括处理器201和存储器202,其中,上述存储器存储可执行程序,上述可执行程序被执行时,上述处理器用于实现如下过程:
将用于目标识别的图像数据输入神经网络模型;
利用上述神经网络模型对上述图像数据进行目标识别过程中,确定N个相乘或相除的处理数据;
从上述N个相乘或相除的处理数据中确定M个移位数据,其中,上述N为大于1的整数,上述M为大于0小于N的整数;
根据各移位数据的真实值确实上述各移位数据对应的移位方向,根据各移位数据的绝对值确定上述各移位数据对应的移位位数;
根据上述各移位数据对应的移位方向和移位位数,确定上述N个处理数据相乘或相除的结果;
根据上述N个处理数据相乘或相除的结果,通过上述神经网络模型输出上述目标识别的识别结果。
可选地,上述处理数据包括如下任一或任多:
上述神经网络模型的模型参数;
量化上述神经网络模型时的模型参数的量化系数;
量化后的上述神经网络模型的模型参数。
上述用于目标识别的图像数据。
可选地,上述处理器具体用于:
多个处理数据相乘时,任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为左移,任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为右移。
多个处理数据相除时,任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为右移,任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为左移。
可选地,上述处理器具体用于,确定与任一移位数据的绝对值最接近的,第二预设数据的幂次方的值,根据上述第二预设数据的幂次方的值,确定该移位数据的移位位数。
可选地,上述处理器具体用于,根据上述第二预设数据的幂次方的值确定上述幂k,将上述幂k确定为该移位数据的移位位数,上述k为整数。
可选地,上述处理器具体用于如下任一步骤:
从上述N个相乘或相除的处理数据中确定任M个处理数据为移位数据;
从上述N个相乘或相除的处理数据中指定M个处理数据为移位数据;
从上述N个相乘或相除的处理数据中指定部分数据,从上述部分数据中确定任M个处理数据为移位数据。
可选地,上述处理器具体用于,多个处理数据相乘时,确定上述N个处理数据中除上述各移位数据外的其他处理数据相乘的结果值;只存在一个移位数据时,将上述其他处理数据相乘的结果值根据该移位数据对应的移位方向和移位位数进行移位,存在多个移位数据时,将上述其他处理数据相乘的结果值根据每个移位数据对应的移位方向和移位位数进行移位。
可选地,上述处理器具体用于,多个处理数据相除时,只存在一个除数为移位数据时,将除以上述一个除数之前的计算结果值根据该移位数据对应的移位方向和移位位数进行移位,移位后继续按除数的先后顺序进行其他除数的计算至得到最终结果值;存在多个除数为移位数据时,按除数的先后顺序,对于为移位数据的除数,将除以该除数之前的计算结果值,按照该移位数据的移位方向和移位位数进行移位,对于非移位数据的除数,进行除以该除数的计算至得到最终结果值。
上述设备为现场可编程阵列FPGA设备时,上述第一预设数据为1,上述第二预设数据为2。
如图3所示,基于相同的发明构思,本实施例提供一种目标识别装置,该装置包括:
目标识别数据输入单元301,用于将用于目标识别的图像数据输入神经网络模型;
处理数据获取单元302,利用上述神经网络模型对上述图像数据进行目标识别过程中确定N个相乘或相除的处理数据;
移位数据确定单元303,用于从上述N个相乘或相除的处理数据中确定M个移位数据,其中,上述N为大于1的整数,上述M为大于0小于N的整数;
移位方向及位数确定单元304,用于根据各移位数据的真实值确实上述各移位数据对应的移位方向,根据各移位数据的绝对值确定上述各移位数据对应的移位位数;
移位结果确定单元305,根据上述各移位数据对应的移位方向和移位位数,确定上述N个处理数据相乘或相除的结果;
目标识别结果输出单元306,用于根据上述N个处理数据相乘或相除的结果,通过上述神经网络模型输出上述目标识别的识别结果。
实施例三:
本实施例提供一种计算机可读非易失性存储介质,包括程序代码,当上述程序代码在计算终端上运行时,上述程序代码用于使上述计算终端执行上述本申请实施例一的方法的步骤。
以上参照示出根据本申请实施例的方法、装置(系统)和/或计算机程序产品的框图和/或流程图描述本申请。应理解,可以通过计算机程序指令来实现框图和/或流程图示图的一个块以及框图和/或流程图示图的块的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机的处理器和/或其它可编程数据处理装置,以产生机器,使得经由计算机处理器和/或其它可编程数据处理装置执行的指令创建用于实现框图和/或流程图块中所指定的功能/动作的方法。
相应地,还可以用硬件和/或软件(包括固件、驻留软件、微码等)来实施本申请。更进一步地,本申请可以采取计算机可使用或计算机可读存储介质上的计算机程序产品的形式,其具有在介质中实现的计算机可使用或计算机可读程序代码,以由指令执行系统来使用或结合指令执行系统而使用。在本申请上下文中,计算机可使用或计算机可读介质可以是任意介质,其可以包含、存储、通信、传输、或传送程序,以由指令执行系统、装置或设备使用,或结合指令执行系统、装置或设备使用。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

1.一种目标识别方法,其特征在于,该方法包括:
将用于目标识别的图像数据输入神经网络模型;
利用所述神经网络模型对所述图像数据进行目标识别过程中,确定N个相乘或相除的处理数据;所述处理数据包括如下任一或任多:所述神经网络模型的模型参数、量化所述神经网络模型时的模型参数的量化系数、量化后的所述神经网络模型的模型参数、所述用于目标识别的图像数据;
从所述N个相乘或相除的处理数据中确定M个移位数据,其中,所述N为大于1的整数,所述M为大于0小于N的整数;
根据各移位数据的真实值确实所述各移位数据对应的移位方向,根据各移位数据的绝对值确定所述各移位数据对应的移位位数;
根据所述各移位数据对应的移位方向和移位位数,确定所述N个处理数据相乘或相除的结果;
根据所述N个处理数据相乘或相除的结果,通过所述神经网络模型输出所述目标识别的识别结果。
2.如权利要求1所述的方法,其特征在于,根据各移位数据的绝对值确定所述各移位数据对应的移位位数,包括:
确定与任一移位数据的绝对值最接近的,第二预设数据的幂次方的值;
根据所述第二预设数据的幂次方的值,确定该移位数据的移位位数。
3.如权利要求2所述的方法,其特征在于,该方法用于多个处理数据相乘时,根据各移位数据的真实值确实所述各移位数据对应的移位方向,包括:
任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为左移;
任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为右移。
4.如权利要求2所述的方法,其特征在于,该方法用于多个处理数据相除时,根据各移位数据的真实值确实所述各移位数据对应的移位方向,包括:
任一移位数据的真实值大小大于第一预设数据时,确定该移位数据的移位方向为右移;
任一移位数据的真实值大小不大于第一预设数据时,确定该移位数据的移位方向为左移。
5.如权利要求2所述的方法,其特征在于,根据所述第二预设数据的幂次方的值,确定该移位数据的移位位数,包括:
根据所述第二预设数据的幂次方的值确定所述幂k;
将所述幂k确定为该移位数据的移位位数,所述k为整数。
6.如权利要求1所述的方法,其特征在于,从N个相乘或相除的处理数据中确定M个移位数据,包括如下任一步骤:
从所述N个相乘或相除的处理数据中确定任M个数据为移位数据;
从所述N个相乘或相除的处理数据中指定M个数据为移位数据;
从所述N个相乘或相除的处理数据中指定部分数据,从所述部分数据中确定任M个数据为移位数据。
7.如权利要求1所述的方法,其特征在于,根据所述各移位数据对应的移位方向和移位数据确定所述N个处理数据相乘的结果,包括:
确定所述N个处理数据中除所述各移位数据外的其他处理数据相乘的结果值;
只存在一个移位数据时,将所述其他处理数据相乘的结果值根据该移位数据对应的移位方向和移位位数进行移位;
存在多个移位数据时,将所述其他处理数据相乘的结果值根据每个移位数据对应的移位方向和移位位数进行移位。
8.如权利要求1所述的方法,其特征在于,根据各移位数据对应的移位方向和移位数据确定所述N个处理数据相除的结果,包括:
只存在一个除数为移位数据时,将除以所述一个除数之前的计算结果值根据该移位数据对应的移位方向和移位位数进行移位,移位后继续按除数的先后顺序进行其他除数的计算至得到最终结果值;
存在多个除数为移位数据时,按除数的先后顺序,对于为移位数据的除数,将除以该除数之前的计算结果值,按照该移位数据的移位方向和移位位数进行移位,对于非移位数据的除数,进行除以该除数的计算至得到最终结果值。
9.如权利要求3或4所述的方法,其特征在于,该方法应用于现场可编程阵列FPGA中时,所述第一预设数据为1,所述第二预设数据为2。
10.一种目标识别设备,其特征在于,该设备包括处理器和存储器,其中,所述存储器存储可执行程序,所述可执行程序被执行时,所述处理器用于实现如下过程:
将用于目标识别的图像数据输入神经网络模型获取目标识别相关数据,从所述目标识别相关数据中确定N个相乘或相除的处理数据;所述处理数据包括如下任一或任多:所述神经网络模型的模型参数、量化所述神经网络模型时的模型参数的量化系数、量化后的所述神经网络模型的模型参数、所述用于目标识别的图像数据;
从所述N个相乘或相除的处理数据中确定M个移位数据,其中,所述N为大于1的整数,所述M为大于0小于N的整数;
根据各移位数据的真实值确实所述各移位数据对应的移位方向,根据各移位数据的绝对值确定所述各移位数据对应的移位位数;
根据所述各移位数据对应的移位方向和移位位数,确定所述N个处理数据相乘或相除的结果;
根据所述N个处理数据相乘或相除的结果,通过所述神经网络模型输出所述目标识别的识别结果。
11.一种计算机可存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1~9任一所述方法的步骤。
CN201910231327.2A 2019-03-26 2019-03-26 一种目标识别方法及设备 Active CN110009021B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910231327.2A CN110009021B (zh) 2019-03-26 2019-03-26 一种目标识别方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910231327.2A CN110009021B (zh) 2019-03-26 2019-03-26 一种目标识别方法及设备

Publications (2)

Publication Number Publication Date
CN110009021A CN110009021A (zh) 2019-07-12
CN110009021B true CN110009021B (zh) 2021-06-15

Family

ID=67168139

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910231327.2A Active CN110009021B (zh) 2019-03-26 2019-03-26 一种目标识别方法及设备

Country Status (1)

Country Link
CN (1) CN110009021B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8164742B1 (en) * 2007-07-18 2012-04-24 The United States Of America As Represented By The Secretary Of The Army Photopolarimetric lidar dual-beam switching device and mueller matrix standoff detection system and method
CN106528357A (zh) * 2016-11-24 2017-03-22 天津大学 基于拟牛顿法在线训练神经网络的fpga系统及实现方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105488565A (zh) * 2015-11-17 2016-04-13 中国科学院计算技术研究所 加速深度神经网络算法的加速芯片的运算装置及方法
CN109214509B (zh) * 2017-07-05 2021-07-06 中国科学院沈阳自动化研究所 一种用于深度神经网络高速实时量化结构和运算实现方法
CN109522254B (zh) * 2017-10-30 2022-04-12 上海寒武纪信息科技有限公司 运算装置及方法
CN108021537B (zh) * 2018-01-05 2022-09-16 南京大学 一种基于硬件平台的softmax函数计算方法
CN109165736B (zh) * 2018-08-08 2023-12-12 北京字节跳动网络技术有限公司 应用于卷积神经网络的信息处理方法和装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8164742B1 (en) * 2007-07-18 2012-04-24 The United States Of America As Represented By The Secretary Of The Army Photopolarimetric lidar dual-beam switching device and mueller matrix standoff detection system and method
CN106528357A (zh) * 2016-11-24 2017-03-22 天津大学 基于拟牛顿法在线训练神经网络的fpga系统及实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于 LVQ 网络优化的雷达目标识别算法";郭小康等;《雷达科学与技术》;20190228;第17卷(第1期);正文第1-5页 *

Also Published As

Publication number Publication date
CN110009021A (zh) 2019-07-12

Similar Documents

Publication Publication Date Title
CN110008952B (zh) 一种目标识别方法及设备
CN107451658B (zh) 浮点运算定点化方法及系统
CN110020616B (zh) 一种目标识别方法及设备
CN108139885B (zh) 浮点数舍入
CN107273090A (zh) 面向神经网络处理器的近似浮点乘法器及浮点数乘法
KR20210127168A (ko) 모듈러 정수를 사용한 보안 다자간 계산을 위한 산술
CN112200300A (zh) 卷积神经网络运算方法及装置
CN109284083A (zh) 一种乘法运算装置及方法
JP2021517301A (ja) 確率的丸めロジック
CN112162723B (zh) 一种量子减法运算方法、装置、电子装置及存储介质
CN110009021B (zh) 一种目标识别方法及设备
JPH05250146A (ja) 整数累乗処理を行なうための回路及び方法
Basilakis et al. Efficient parallel binary operations on homomorphic encrypted real numbers
KR20060103920A (ko) 스케일링된 정수를 사용하는 부동 소수점 연산
CN109271134B (zh) 超越函数运算方法及装置、存储介质及电子设备
US20170308357A1 (en) Logarithm and power (exponentiation) computations using modern computer architectures
US20170169129A1 (en) Information processing system, information processing method, and program
US10459689B2 (en) Calculation of a number of iterations
CN111930674B (zh) 乘累加运算装置及方法、异构智能处理器及电子设备
CN109992242B (zh) 基于乘法器的运算方法及装置
JP2020067897A (ja) 演算処理装置、学習プログラム及び学習方法
CN117056068B (zh) ETL中JobEngine任务拆分方法
CN113706565B (zh) 图像分割的方法、装置、电子设备和存储介质
KR100974190B1 (ko) 부동 소수점을 이용한 복소수 곱셈방법
JPH04507023A (ja) Ieee 754―1985標準に準拠した2進浮動小数点演算丸め

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant