量化精度测量系统、量化精度的确定方法和装置制造方法及图纸

技术编号:32019766 阅读:21 留言:0更新日期:2022-01-22 18:38
本公开实施例提供一种量化精度测量系统、量化精度的确定方法和装置,其中,该方法可以包括:根据神经网络在处理设备中执行时使用的数据格式信息,在所述神经网络的执行过程中进行处理数据的量化操作,得到所述神经网络的网络输出结果;将所述网络输出结果与基准输出结果进行比较,得到所述神经网络在所述处理设备中执行对应的量化精度,所述基准输出结果是所述神经网络对未量化的所述处理数据进行处理得到的输出结果。本公开实施例实现了对神经网络的硬件量化实现的量化精度的测量。络的硬件量化实现的量化精度的测量。络的硬件量化实现的量化精度的测量。

【技术实现步骤摘要】
量化精度测量系统、量化精度的确定方法和装置


[0001]本公开涉及人工智能技术,具体涉及一种量化精度测量系统、量化精度的确定方法和装置。

技术介绍

[0002]神经网络在硬件(例如,AI芯片)中执行时,受硬件中的存储空间的限制,可以对神经网络进行量化,这有助于降低神经网络处理过程中对硬件的存储资源的消耗,并提高神经网络的处理速度。但是,量化可能对神经网络造成一定程度的性能损失。

技术实现思路

[0003]本公开实施例至少提供一种量化精度测量系统、量化精度的确定方法和装置。
[0004]第一方面,提供一种量化精度测量系统,所述系统包括:第一网络运行模块、第二网络运行模块和精度确定模块;
[0005]所述第一网络运行模块,用于通过运行神经网络对网络输入数据进行处理,得到基准输出结果;
[0006]所述第二网络运行模块,用于根据所述神经网络在处理设备中执行时使用的数据格式信息,在所述神经网络的执行过程中进行处理数据的量化操作,得到所述神经网络的网络输出结果;
[0007]所述精度确定模块,用于接收所述第一网络运行模块发送的所述基准输出结果、以及所述第二网络运行模块输出的所述网络输出结果,并将所述网络输出结果与基准输出结果进行比较,输出所述神经网络在处理设备中执行对应的量化精度。
[0008]在一些例子中,所述第二网络运行模块包括:信息获取子模块和运行处理子模块;所述信息获取子模块,用于根据所述神经网络在处理设备中执行时使用的数据格式信息,获得量化操作使用的量化参数;还用于获取所述神经网络的网络信息,所述网络信息包括神经网络中的各算子以及各算子间的执行关系信息;所述运行处理子模块,用于接收所述信息获取子模块发送的所述量化参数和网络信息,并基于所述网络信息运行所述神经网络,在所述神经网络的执行过程中根据所述量化参数进行处理数据的量化操作,得到所述神经网络的网络输出结果。
[0009]在一些例子中,所述信息获取子模块,包括:第一单元和第二单元;所述第一单元,用于根据所述神经网络在处理设备中执行时使用的数据格式信息、以及所述神经网络的处理数据,获得量化操作使用的量化参数;所述第二单元,用于解析所述神经网络对应的网络信息,得到所述神经网络中包括的至少一个算子、以及各算子间的执行关系信息。
[0010]在一些例子中,所述第一网络运行模块,在用于通过运行神经网络对网络输入数据进行处理时,包括:通过所述神经网络处理网络输入数据,获得所述神经网络中包括的各个算子的处理数据;并将所述处理数据发送至所述信息获取子模块;所述信息获取子模块,在用于根据所述神经网络在处理设备中执行时使用的数据格式信息,获得量化操作使用的
量化参数时,包括:根据所述神经网络在处理设备中执行时各个算子分别对应的数据格式信息和处理数据,获得所述算子对应的量化参数;还用于将所述量化参数和网络信息封装成待执行文件,将所述待执行文件发送至所述运行处理子模块;所述运行处理子模块,在用于接收所述信息获取子模块发送的所述量化参数和网络信息时,包括:接收包括所述量化参数和网络信息的所述待执行文件。
[0011]在一些例子中,所述运行处理子模块,在用于基于所述网络信息运行所述神经网络,在所述神经网络的执行过程中根据所述量化参数进行处理数据的量化操作时,包括:根据所述执行关系信息,执行所述至少一个算子,其中,在执行所述算子之前和/或之后,根据所述算子对应的量化参数,对所述算子的处理数据进行量化操作。
[0012]在一些例子中,所述精度确定模块,在用于将所述网络输出结果与基准输出结果进行比较,输出所述神经网络在处理设备中执行对应的量化精度时,包括:将所述网络输出结果与基准输出结果之间进行相似度计算,得到所述神经网络在处理设备中执行对应的量化精度。
[0013]第二方面,提供一种量化精度的确定方法,所述方法由量化精度的确定装置执行,所述方法包括:
[0014]根据神经网络在处理设备中执行时使用的数据格式信息,在所述神经网络的执行过程中进行处理数据的量化操作,得到所述神经网络的网络输出结果;
[0015]将所述网络输出结果与基准输出结果进行比较,得到所述神经网络在所述处理设备中执行对应的量化精度,所述基准输出结果是所述神经网络对未量化的所述处理数据进行处理得到的输出结果。
[0016]在一些例子中,所述在所述神经网络的执行过程中进行处理数据的量化操作之前,所述方法还包括:根据所述神经网络在处理设备中执行时使用的数据格式信息、以及所述神经网络的处理数据,获得量化操作使用的量化参数;所述在所述神经网络的执行过程中进行处理数据的量化操作,包括:根据所述量化参数,进行所述处理数据的量化操作。
[0017]在一些例子中,所述根据所述神经网络在处理设备中执行时使用的数据格式信息、以及所述神经网络的处理数据,获得量化操作使用的量化参数,包括:通过所述神经网络处理网络输入数据,获得所述神经网络中包括的各个算子的处理数据;并根据所述神经网络在处理设备中执行时各个算子分别对应的数据格式信息和处理数据,获得所述算子对应的量化参数;所述根据所述量化参数,进行所述处理数据的量化操作,包括:在所述神经网络的各个算子执行之前和/或之后,根据所述算子对应的量化参数,对所述算子的处理数据进行量化操作。
[0018]在一些例子中,所述在所述神经网络的执行过程中进行处理数据的量化操作之前,所述方法还包括:解析所述神经网络对应的网络信息,得到所述神经网络中包括的至少一个算子、以及各算子间的执行关系信息;所述在所述神经网络的执行过程中进行处理数据的量化操作,包括:根据所述执行关系信息,执行所述至少一个算子,其中包括对所述算子的处理数据进行量化操作。
[0019]在一些例子中,所述将网络输出结果与基准输出结果进行比较,得到神经网络在处理设备中执行对应的量化精度,包括:将所述网络输出结果与基准输出结果之间进行相似度计算,得到所述神经网络在处理设备中执行对应的量化精度。
[0020]在一些例子中,所述处理设备是芯片。
[0021]第三方面,提供一种量化精度的确定装置,所述装置包括:
[0022]量化运行模块,用于根据神经网络在处理设备中执行时使用的数据格式信息,在所述神经网络的执行过程中进行处理数据的量化操作,得到所述神经网络的网络输出结果;
[0023]精度获得模块,用于将所述网络输出结果与基准输出结果进行比较,得到所述神经网络在所述处理设备中执行对应的量化精度,所述基准输出结果是所述神经网络对未量化的所述处理数据进行处理得到的输出结果。
[0024]第四方面,提供一种电子设备,包括:存储器、处理器,所述存储器用于存储计算机可读指令,所述处理器用于调用所述计算机指令,实现本公开任一实施例的方法。
[0025]第五方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本公开任一实施例的方法。
[0026]本公开实施例提供的量化精度测量系统、量本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种量化精度测量系统,其特征在于,所述系统包括:第一网络运行模块、第二网络运行模块和精度确定模块;所述第一网络运行模块,用于通过运行神经网络对网络输入数据进行处理,得到基准输出结果;所述第二网络运行模块,用于根据所述神经网络在处理设备中执行时使用的数据格式信息,在所述神经网络的执行过程中进行处理数据的量化操作,得到所述神经网络的网络输出结果;所述精度确定模块,用于接收所述第一网络运行模块发送的所述基准输出结果、以及所述第二网络运行模块输出的所述网络输出结果,并将所述网络输出结果与基准输出结果进行比较,输出所述神经网络在处理设备中执行对应的量化精度。2.根据权利要求1所述的系统,其特征在于,所述第二网络运行模块包括:信息获取子模块和运行处理子模块;所述信息获取子模块,用于根据所述神经网络在处理设备中执行时使用的数据格式信息,获得量化操作使用的量化参数;还用于获取所述神经网络的网络信息,所述网络信息包括神经网络中的各算子以及各算子间的执行关系信息;所述运行处理子模块,用于接收所述信息获取子模块发送的所述量化参数和网络信息,并基于所述网络信息运行所述神经网络,在所述神经网络的执行过程中根据所述量化参数进行处理数据的量化操作,得到所述神经网络的网络输出结果。3.根据权利要求2所述的系统,其特征在于,所述信息获取子模块,包括:第一单元和第二单元;所述第一单元,用于根据所述神经网络在处理设备中执行时使用的数据格式信息、以及所述神经网络的处理数据,获得量化操作使用的量化参数;所述第二单元,用于解析所述神经网络对应的网络信息,得到所述神经网络中包括的至少一个算子、以及各算子间的执行关系信息。4.根据权利要求2所述的系统,其特征在于,所述第一网络运行模块,在用于通过运行神经网络对网络输入数据进行处理时,包括:通过所述神经网络处理网络输入数据,获得所述神经网络中包括的各个算子的处理数据;并将所述处理数据发送至所述信息获取子模块;所述信息获取子模块,在用于根据所述神经网络在处理设备中执行时使用的数据格式信息,获得量化操作使用的量化参数时,包括:根据所述神经网络在处理设备中执行时各个算子分别对应的数据格式信息和处理数据,获得所述算子对应的量化参数;还用于将所述量化参数和网络信息封装成待执行文件,将所述待执行文件发送至所述运行处理子模块;所述运行处理子模块,在用于接收所述信息获取子模块发送的所述量化参数和网络信息时,包括:接收包括所述量化参数和网络信息的所述待执行文件。5.根据权利要求2所述的系统,其特征在于,所述运行处理子模块,在用于基于所述网络信息运行所述神经网络,在所述神经网络的执行过程中根据所述量化参数进行处理数据的量化操作时,包括:根据所述执行关系信息,执行至少一个算子,其中,在执行所述算子之前和/或之后,根据所述算子对应的量化参数,对所述算子的处理数据进行量化操作。
6.根据权利要求1所述的系统,其特征在于,所述精度确定模块,在用于将所述网络输出结果与基准输出结果进行比较,输出所述神经网络在处理设备中执行对应的量化精度时,包括:将所述网络输出结果与基准输出结果之间进行相似度计算,得到所述神...

【专利技术属性】
技术研发人员:张明
申请(专利权)人:上海商汤阡誓科技有限公司
类型:发明
国别省市:

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

1