CN112308226B - 神经网络模型的量化、用于输出信息的方法和装置 - Google Patents
神经网络模型的量化、用于输出信息的方法和装置 Download PDFInfo
- Publication number
- CN112308226B CN112308226B CN202010768252.4A CN202010768252A CN112308226B CN 112308226 B CN112308226 B CN 112308226B CN 202010768252 A CN202010768252 A CN 202010768252A CN 112308226 B CN112308226 B CN 112308226B
- Authority
- CN
- China
- Prior art keywords
- neural network
- quantized
- output result
- model
- parameters
- 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
Links
- 238000003062 neural network model Methods 0.000 title claims abstract description 93
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000013139 quantization Methods 0.000 title claims abstract description 73
- 238000013528 artificial neural network Methods 0.000 claims abstract description 142
- 238000007667 floating Methods 0.000 claims abstract description 37
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 abstract description 20
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请实施例公开了神经网络模型的量化、用于输出信息的方法和装置。该方法的一具体实施方式包括:对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,目标神经网络模型包括神经网络声学模型;基于量化后的输入参数和目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果;确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出。该实施方式在保证模型处理精度不变的情况下,提高了模型处理速度、减少了模型所占用的内存资源。
Description
技术领域
本申请实施例涉及计算机技术领域,具体涉及神经网络模型的量化、用于输出信息的方法和装置。
背景技术
当前,随着语音技术的飞速发展,语音识别的准确率得以显著提升。语音命令词系统作为语音识别应用技术的一个重要方向,往往部署在离线嵌入式机、单片机等边缘计算平台,该类平台往往要求满足低功耗、低内存和系统响应时间快等条件。
神经网络声学模型作为命令词系统最重要的一部分,模型参数一般采用浮点型(包括float和double)数据类型进行存储,采用浮点型数据类型存储的模型参数通常存在模型处理速度较低、占用内存资源较大等缺陷。因此,如何优化神经网络模型,以加速神经网络模型的推理速度、降低内存占用空间具有重要意义。
相关的神经网络模型的量化方法是将浮点型的数据转换成8比特整型的数据,这种模型量化方法虽然提高了模型处理速度、减少了模型所占用的内存资源,但是会影响模型的推理精度。
发明内容
本申请实施例提出了神经网络模型的量化、用于输出信息的方法和装置。
第一方面,本申请实施例提供了一种神经网络模型的量化方法,包括:对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,目标神经网络模型包括神经网络声学模型;基于量化后的输入参数和目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果;确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出。
在一些实施例中,在确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层之后,该方法还包括:若否,则将量化后的输出结果作为量化后的输入参数,将当前神经网络层的下一个神经网络层作为当前神经网络层,继续执行模型量化步骤。
在一些实施例中,基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果,包括:基于量化后的输入参数,执行如下确定步骤:将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果;确定第一输出结果是否存在溢出情况;若否,则基于第一输出结果,确定量化后的输出结果。
在一些实施例中,在确定第一输出结果是否存在溢出情况之后,该方法还包括:若是,则将量化后的输入参数右移预设数值位,将右移后的输入参数作为量化后的输入参数,继续执行确定步骤。
在一些实施例中,基于第一输出结果,确定量化后的输出结果,包括:确定第一输出结果是否需要与其他参数进行拼接;若是,则对第一输出结果进行量化,得到短整型的第一输出结果,将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果,以及对拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果。
在一些实施例中,基于第一输出结果,确定量化后的输出结果,包括:确定第一输出结果是否需要与其他参数进行拼接;若否,则对第一输出结果进行量化,得到短整型的输出结果。
第二方面,本申请实施例提供了一种用于输出信息的方法,包括:获取浮点型的语音输入参数,对浮点型的语音输入参数进行量化,得到短整型的语音输入参数;将短整型的语音输入参数输入如第一方面中任一实现方式描述的方法生成的量化后的神经网络声学模型中,输出相应的浮点型的输出结果。
第三方面,本申请实施例提供了一种神经网络模型的量化装置,包括:量化单元,被配置成对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,目标神经网络模型包括神经网络声学模型;输出单元,被配置成基于量化后的输入参数和目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果;确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出。
在一些实施例中,该装置还包括:反馈单元,被配置成若当前神经网络层不是目标神经网络模型的最后一个神经网络层,则将量化后的输出结果作为量化后的输入参数,将当前神经网络层的下一个神经网络层作为当前神经网络层,继续执行模型量化步骤。
在一些实施例中,输出单元进一步被配置成通过如下方式基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果:基于量化后的输入参数,执行如下确定步骤:将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果;确定第一输出结果是否存在溢出情况;若否,则基于第一输出结果,确定量化后的输出结果。
在一些实施例中,输出单元进一步被配置成通过如下方式基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果:若第一输出结果存在溢出情况,则将量化后的输入参数右移预设数值位,将右移后的输入参数作为量化后的输入参数,继续执行确定步骤。
在一些实施例中,输出单元进一步被配置成通过如下方式基于第一输出结果,确定量化后的输出结果:确定第一输出结果是否需要与其他参数进行拼接;若是,则对第一输出结果进行量化,得到短整型的第一输出结果,将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果,以及对拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果。
在一些实施例中,输出单元进一步被配置成通过如下方式基于第一输出结果,确定量化后的输出结果:确定第一输出结果是否需要与其他参数进行拼接;若否,则对第一输出结果进行量化,得到短整型的输出结果。
第四方面,本申请实施例提供了一种用于输出信息的装置,包括:获取单元,被配置成获取浮点型的语音输入参数,对所述浮点型的语音输入参数进行量化,得到短整型的语音输入参数;输出单元,被配置成将所述短整型的语音输入参数输入如第一方面中任一实现方式描述的方法生成的量化后的神经网络声学模型中,输出相应的浮点型的输出结果。
第五方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第六方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请的上述实施例提供的神经网络模型的量化、用于输出信息的方法和装置,通过对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,目标神经网络模型包括神经网络声学模型;之后,基于量化后的输入参数和上述目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果;确定当前神经网络层是否为上述目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出。本实施例提供的这种方式采用16比特短整型的模型量化方法,相比于使用8比特整型进行模型量化的过程中的部分浮点数运算,这种方式在模型运算过程中无浮点型运算,在保证模型处理精度不变的情况下,提高了模型处理速度、减少了模型所占用的内存资源。上述目标神经网络模型可以包括神经网络声学模型,使用量化后的神经网络声学模型可以提高语音处理速度,降低了声学模型所损耗的功率以及所占用的内存。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是根据本申请的神经网络模型的量化方法的一个实施例的流程图;
图2是根据本申请的神经网络模型的量化方法的一个量化后的输入参数的数据格式的示意图;
图3是根据本申请的神经网络模型的量化方法中确定量化后的输出结果的一个实施例的流程图;
图4是根据本申请的神经网络模型的量化方法中确定量化后的输出结果的又一个实施例的流程图;
图5是根据本申请的用于输出信息的方法的一个实施例的流程图;
图6是根据本申请的神经网络模型的量化装置的一个实施例的结构示意图;
图7是根据本申请的用于输出信息的装置的一个实施例的结构示意图;
图8是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了根据本申请的神经网络模型的量化方法的一个实施例的流程100。该神经网络模型的量化方法,包括以下步骤:
步骤101,对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数。
在本实施例中,神经网络模型的量化方法的执行主体可以对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数。上述目标神经网络模型可以为待量化的神经网络模型。模型量化是一种模型加速(Model Acceleration)方法的总称。模型参数一般采用浮点型(包括float和double)数据类型进行存储,采用浮点型数据类型存储的模型参数通常存在占用内存资源较大、占用CPU资源较多等缺陷。在这里,上述执行主体可以通过将浮点型的输入参数转换成短整型(short integer)的输入参数从而实现模型量化。需要说明的是,量化后的输入参数为16bit(比特),其中,最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存(buffer)位。上述量化位通常用于存储输入参数,上述缓存位通常用于调整量化的范围。
在本实施例中,上述目标神经网络模型可以包括神经网络声学模型。神经网络声学模型是语音识别系统中最为重要的部分之一,主流系统多采用隐马尔科夫模型进行建模。在本实施例中,上述目标神经网络模型还可以包括但不限于以下至少一项:图像处理模型和文本处理模型。上述图像处理模型可以对图像进行处理,例如,图像识别、目标检测。上述文本处理模型可以对文本进行处理,例如,文本识别、文本分词和文本翻译。
需要说明的是,在数学运算时,量化位和缓存位可以根据计算结果是否溢出进行自适应调整。
如图2所示,图2是根据本申请的神经网络模型的量化方法的一个量化后的输入参数的数据格式的一个示意图。在图2中,最高位表示符号位,低13位表示量化位,中间2位表示缓存位。
步骤102,基于量化后的输入参数和目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果;确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出。
在本实施例中,上述执行主体可以基于量化后的输入参数和上述目标神经网络模型的当前神经网络层,执行模型量化步骤。上述目标神经网络模型可以包括多个神经网络层,神经网络层可以为卷积层。上述目标神经网络模型的当前神经网络层可以为待对量化后的输入参数进行处理的神经网络层。上一个神经网络层的输出结果通常会作为下一个神经网络层的输入参数。
在本实施例中,步骤102可以包括子步骤1021、1022、1023。其中:
步骤1021,基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果。
在这里,上述执行主体可以基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果。在这里,需要预先对目标神经网络模型的神经网络层的网络参数进行量化,上述网络参数通常为参数矩阵。具体地,可以将浮点型的网络参数转化成短整型的网络参数,量化后的网络参数为16bit,其中,最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存(buffer)位。上述量化位通常用于存储网络参数,上述缓存位通常用于调整量化的范围。
步骤1022,确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层。
在这里,上述执行主体可以确定当前神经网络层是否为上述目标神经网络模型的最后一个神经网络层。具体地,上述执行主体可以通过确定当前神经网络层的后面是否存在神经网络层来确定当前神经网络层是否为上述目标神经网络模型的最后一个神经网络层。若当前神经网络层为上述目标神经网络模型的最后一个神经网络层,则可以执行步骤1023。
步骤1023,若当前神经网络层为目标神经网络模型的最后一个神经网络层,则将量化后的输出结果转化为浮点型的输出结果进行输出。
在这里,若当前神经网络层为上述目标神经网络模型的最后一个神经网络层,则上述执行主体可以将量化后的输出结果转化为浮点型的输出结果进行输出,即上述执行主体可以将短整型的输出结果转化为浮点型的输出结果,之后可以将浮点型的输出结果进行输出。
本实施例提供的这种方式采用16比特短整型的模型量化方法,相比于使用8比特整型进行模型量化的过程中的部分浮点数运算,这种方式在模型运算过程中无浮点型运算,在保证模型处理精度不变的情况下,提高了模型处理速度、减少了模型所占用的内存资源。上述目标神经网络模型可以包括神经网络声学模型,使用量化后的神经网络声学模型可以提高语音处理速度,降低了声学模型所损耗的功率以及所占用的内存。
在本实施例的一些可选的实现方式中,若当前神经网络层不是上述目标神经网络模型的最后一个神经网络层,则上述执行主体可以将量化后的输出结果作为量化后的输入参数,将当前神经网络层的下一个神经网络层作为当前神经网络层,继续执行上述模型量化步骤,即步骤1021-1023。
继续参见图3,图3是根据本申请的神经网络模型的量化方法中确定量化后的输出结果的一个实施例的流程300。如图3所示,确定量化后的输出结果的步骤包括:
步骤301,基于量化后的输入参数,执行如下确定步骤:将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果;确定第一输出结果是否存在溢出情况;若否,则基于第一输出结果,确定量化后的输出结果。
在本实施例中,神经网络模型的量化方法的执行主体可以基于量化后的输入参数,执行确定步骤。
在本实施例中,步骤301可以包括子步骤3011、3012、3013。其中:
步骤3011,将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果。
在这里,上述执行主体可以将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果。得到的第一输出结果通常为32bit。
步骤3012,确定第一输出结果是否存在溢出情况。
在这里,上述执行主体可以确定在步骤3011中得到的第一输出结果是否存在溢出情况。在这里,若存储第一输出结果的存储位数超过规定的最大量化位数,则说明第一输出结果存在溢出情况。在这里的最大量化位数通常为31位。若第一输出结果不存在溢出情况,则上述执行主体可以执行步骤3013。若第一输出结果存在溢出情况,则上述执行主体可以执行步骤302。
步骤3013,若第一输出结果不存在溢出情况,则基于第一输出结果,确定量化后的输出结果。
在这里,若在步骤3012中确定出第一输出结果不存在溢出情况,则上述执行主体可以基于第一输出结果,确定量化后的输出结果。
步骤302,若第一输出结果存在溢出情况,则将量化后的输入参数右移预设数值位,将右移后的输入参数作为量化后的输入参数,继续执行上述确定步骤。
在这里,若在步骤3012中确定出第一输出结果存在溢出情况,则上述执行主体可以将量化后的输入参数右移预设数值(例如,2)位。将量化后的输入参数右移预设数值位即将量化后的输入参数往低位移动预设数值位。作为示例,若量化后的输入参数的量化位为13位,若确定出第一输出结果存在溢出情况,则可以将13位的输入参数右移2位,得到11位的输入参数。需要说明的是,将量化后的输入参数右移也可以理解为将存储输入参数的量化位右移。之后,上述执行主体可以将右移后的输入参数作为量化后的输入参数,继续执行上述确定步骤,即步骤3011-3013。
本申请的上述实施例提供的方法可以通过使用位移操作(调整量化位)对输出结果的溢出情况进行处理。
进一步参考图4,其示出了神经网络模型的量化方法中确定量化后的输出结果的又一个实施例的流程400。该确定量化后的输出结果的流程400,包括以下步骤:
步骤401,基于量化后的输入参数,执行如下确定步骤:将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果;确定第一输出结果是否存在溢出情况;若否,则确定第一输出结果是否需要与其他参数进行拼接;若第一输出结果需要与其他参数进行拼接,则对第一输出结果进行量化,得到短整型的第一输出结果,将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果,以及对拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果;若第一输出结果不需要与其他参数进行拼接,则对第一输出结果进行量化,得到短整型的输出结果。
在本实施例中,神经网络模型的量化方法的执行主体可以基于量化后的输入参数,执行确定步骤。
在本实施例中,步骤401可以包括子步骤4011、4012、4013、4014、4015、4016。其中:
步骤4011,将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果。
在这里,上述执行主体可以将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果。得到的第一输出结果通常为32bit。
步骤4012,确定第一输出结果是否存在溢出情况。
在这里,上述执行主体可以确定在步骤4011中得到的第一输出结果是否存在溢出情况。在这里,若存储第一输出结果的存储位数超过规定的最大量化位数,则说明第一输出结果存在溢出情况。在这里的最大量化位数通常为31位。若第一输出结果不存在溢出情况,则上述执行主体可以执行步骤4013。若第一输出结果存在溢出情况,则上述执行主体可以执行步骤402。
步骤4013,若第一输出结果不存在溢出情况,则确定第一输出结果是否需要与其他参数进行拼接。
在这里,若在步骤4012中确定出第一输出结果不存在溢出情况,则上述执行主体可以确定第一输出结果是否需要与其他参数进行拼接。在这里,第一输出结果可能需要与其他神经网络层的输出结果进行拼接,也可能需要与运算过程中生成的其他中间参数进行拼接。第一输出结果是否需要与其他参数进行拼接可以是基于预先设定的运算逻辑确定的。若确定出第一输出结果需要与其他参数进行拼接,则上述执行主体可以执行步骤4014。若确定出第一输出结果不需要与其他参数进行拼接,则上述执行主体可以执行步骤4016。
步骤4014,若第一输出结果需要与其他参数进行拼接,则对第一输出结果进行量化,得到短整型的第一输出结果。
在这里,若在步骤4013中确定出第一输出结果需要与其他参数进行拼接,则上述执行主体可以对第一输出结果进行量化,得到短整型的第一输出结果。具体地,上述执行主体可以将32bit的第一输出结果转换成16bit的第一输出结果。其中,16bit的第一输出结果中的最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存位。
步骤4015,将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果,以及对拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果。
在这里,上述执行主体可以将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果。在这里,待拼接参数可以为其他神经网络层的输出结果,也可以为运算过程中生成的中间参数。可以预先对待拼接参数进行量化,转换成16bit的待拼接参数。其中,待拼接参数可以为13位。
之后,上述执行主体可以对上述拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果。具体地,上述执行主体可以将上述拼接结果转化成短整型的拼接结果,量化后的拼接结果为16bit,其中,最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存位。
步骤4016,若第一输出结果不需要与其他参数进行拼接,则对第一输出结果进行量化,得到短整型的输出结果。
在这里,若在步骤4013中确定出第一输出结果不需要与其他参数进行拼接,则上述执行主体可以对第一输出结果进行量化,得到短整型的输出结果。
具体地,上述执行主体可以将32bit的第一输出结果转换成16bit的第一输出结果作为输出结果。其中,16bit的输出结果中的最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存位。
步骤402,若第一输出结果存在溢出情况,则将量化后的输入参数右移预设数值位,将右移后的输入参数作为量化后的输入参数,继续执行上述确定步骤。
在本实施例中,步骤402可以按照与步骤302类似的方式执行,在此不再赘述。
从图4中可以看出,与图3对应的实施例相比,本实施例中的神经网络模型的量化方法的流程400体现了确定第一输出结果是否需要与其他参数进行拼接的步骤、在需要拼接的情况下确定量化后的输出结果的步骤以及在不需要拼接的情况下确定量化后的输出结果的步骤。由此,本实施例描述的方案提供了一种对参数进行拼接的情况下的模型量化方法。
图5示出了根据本申请的用于输出信息的方法的一个实施例的流程500。该用于输出信息的方法,包括以下步骤:
步骤501,获取浮点型的语音输入参数,对浮点型的语音输入参数进行量化,得到短整型的语音输入参数。
在本实施例中,用于输出信息的方法的执行主体可以获取浮点型的语音输入参数,对浮点型的语音输入参数进行量化,得到短整型的语音输入参数。在这里,上述执行主体可以通过将浮点型的语音输入参数转换成短整型的语音输入参数从而实现模型量化。需要说明的是,量化后的语音输入参数为16bit,其中,最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存位。上述量化位通常用于存储语音输入参数,上述缓存位通常用于调整量化的范围。
步骤502,将短整型的语音输入参数输入根据图1所示的神经网络模型的量化方法生成的量化后的神经网络声学模型中,输出相应的浮点型的输出结果。
在本实施例中,上述执行主体可以将上述短整型的语音输入参数输入根据图1所示的神经网络模型的量化方法生成的量化后的神经网络声学模型中,输出相应的浮点型的输出结果。上述量化后的神经网络声学模型可以为模型参数被量化处理后的神经网络声学模型。作为示例,若神经网络声学模型用于语音识别,则所得到的相应的浮点型的输出结果通常为语音识别结果。
在这里,上述神经网络声学模型可以包括多个神经网络层,神经网络层可以为卷积层。上述执行主体将上述短整型的语音输入参数输入量化后的神经网络声学模型中,上述短整型的语音输入参数可以与神经网络声学模型量化后的模型参数进行卷积操作,并将卷积操作得到的短整型的输出结果转换成浮点型的输出结果作为最终的输出结果。
由于神经网络声学模型的模型参数一般采用浮点型数据类型进行存储,采用浮点型数据类型存储的模型参数通常存在占用内存资源较大、占用CPU资源较多等缺陷。本实施例的上述方法采用16比特短整型的模型量化方法,采用这种量化方法所得到的神经网络声学模型可以提高语音处理速度,降低了声学模型所损耗的功率以及所占用的内存。
进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种神经网络模型的量化装置的一个实施例,该装置实施例与图1所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的神经网络模型的量化装置600包括:量化单元601和输出单元602。其中,量化单元601被配置成对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,目标神经网络模型包括神经网络声学模型;输出单元602被配置成基于量化后的输入参数和目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果;确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出。
在本实施例中,神经网络模型的量化装置600的量化单元601和输出单元602的具体处理可以参考图1对应实施例中的步骤101和步骤102。
在本实施例的一些可选的实现方式中,神经网络模型的量化装置600还可以包括反馈单元(图中未示出)。若当前神经网络层不是上述目标神经网络模型的最后一个神经网络层,则上述反馈单元可以将量化后的输出结果作为量化后的输入参数,将当前神经网络层的下一个神经网络层作为当前神经网络层,继续执行上述模型量化步骤。
在本实施例的一些可选的实现方式中,上述输出单元602可以进一步被配置成通过如下方式基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果:上述输出单元602可以基于量化后的输入参数,执行如下确定步骤:上述输出单元602可以将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果。得到的第一输出结果通常为32bit。之后,上述输出单元602可以确定第一输出结果是否存在溢出情况。在这里,若存储第一输出结果的存储位数超过规定的最大量化位数,则说明第一输出结果存在溢出情况。在这里的最大量化位数通常为31位。若确定出第一输出结果不存在溢出情况,则上述输出单元602可以基于第一输出结果,确定量化后的输出结果。
在本实施例的一些可选的实现方式中,上述输出单元602可以进一步被配置成通过如下方式基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果:若确定出第一输出结果存在溢出情况,则上述输出单元602可以将量化后的输入参数右移预设数值(例如,2)位。将量化后的输入参数右移预设数值位即将量化后的输入参数往低位移动预设数值位。作为示例,若量化后的输入参数的量化位为13位,若确定出第一输出结果存在溢出情况,则可以将13位的输入参数右移2位,得到11位的输入参数。需要说明的是,将量化后的输入参数右移也可以理解为将存储输入参数的量化位右移。之后,上述输出单元602可以将右移后的输入参数作为量化后的输入参数,继续执行上述确定步骤。
在本实施例的一些可选的实现方式中,上述输出单元602可以进一步被配置成通过如下方式基于第一输出结果,确定量化后的输出结果:上述输出单元602可以确定第一输出结果是否需要与其他参数进行拼接。在这里,第一输出结果可能需要与其他神经网络层的输出结果进行拼接,也可能需要与运算过程中生成的其他中间参数进行拼接。第一输出结果是否需要与其他参数进行拼接可以是基于预先设定的运算逻辑确定的。若确定出第一输出结果需要与其他参数进行拼接,则上述输出单元602可以对第一输出结果进行量化,得到短整型的第一输出结果。具体地,上述输出单元602可以将32bit的第一输出结果转换成16bit的第一输出结果。其中,16bit的第一输出结果中的最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存位。上述输出单元602可以将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果。在这里,待拼接参数可以为其他神经网络层的输出结果,也可以为运算过程中生成的中间参数。可以预先对待拼接参数进行量化,转换成16bit的待拼接参数。其中,待拼接参数可以为13位。而后,上述输出单元602可以对上述拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果。具体地,上述输出单元602可以将上述拼接结果转化成短整型的拼接结果,量化后的拼接结果为16bit,其中,最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存位。
在本实施例的一些可选的实现方式中,上述输出单元602可以进一步被配置成通过如下方式基于第一输出结果,确定量化后的输出结果:上述输出单元602可以确定第一输出结果是否需要与其他参数进行拼接。在这里,第一输出结果可能需要与其他神经网络层的输出结果进行拼接,也可能需要与运算过程中生成的其他中间参数进行拼接。第一输出结果是否需要与其他参数进行拼接可以是基于预先设定的运算逻辑确定的。若确定出第一输出结果不需要与其他参数进行拼接,则上述输出单元602可以对第一输出结果进行量化,得到短整型的输出结果。具体地,上述输出单元602可以将32bit的第一输出结果转换成16bit的第一输出结果作为输出结果。其中,16bit的输出结果中的最高位通常表示符号位,量化位通常使用低预设第一数值(例如,13)位,剩余预设第二数值(例如,2)位可以表示缓存位。
进一步参考图7,作为对上述各图所示方法的实现,本申请提供了一种用于输出信息的装置的一个实施例,该装置实施例与图5所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图7所示,本实施例的用于输出信息的装置700包括:获取单元701和输出单元702。其中,获取单元701被配置成获取浮点型的语音输入参数,对浮点型的语音输入参数进行量化,得到短整型的语音输入参数;输出单元702被配置成将短整型的语音输入参数输入根据图1所示的神经网络模型的量化方法生成的量化后的神经网络声学模型中,输出相应的浮点型的输出结果。
在本实施例中,用于输出信息的装置700的获取单元701和输出单元702的具体处理可以参考图5对应实施例中的步骤501和步骤502。
下面参考图8,其示出了适于用来实现本公开的实施例的电子设备800的结构示意图。图8示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图8所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储装置808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有电子设备800操作所需的各种程序和数据。处理装置801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置807;包括例如磁带、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图8示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图8中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM 802被安装。在该计算机程序被处理装置801执行时,执行本公开的实施例的方法中限定的上述功能。需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,目标神经网络模型包括神经网络声学模型;基于量化后的输入参数和目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数和当前神经网络层的量化后的网络参数,确定量化后的输出结果;确定当前神经网络层是否为目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出。或者使得该电子设备:获取浮点型的语音输入参数,对浮点型的语音输入参数进行量化,得到短整型的语音输入参数;将短整型的语音输入参数输入量化后的神经网络声学模型中,输出相应的浮点型的输出结果。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括量化单元和输出单元,还可以描述为:一种处理器包括获取单元和输出单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,量化单元还可以被描述为“对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (12)
1.一种神经网络模型的量化方法,包括:
对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,所述目标神经网络模型包括神经网络声学模型;
基于量化后的输入参数和所述目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数,执行如下确定步骤:将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果;确定第一输出结果是否存在溢出情况;若否,则基于第一输出结果,确定量化后的输出结果;若是,则将量化后的输入参数右移预设数值位,将右移后的输入参数作为量化后的输入参数,继续执行所述确定步骤;确定当前神经网络层是否为所述目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出;所述量化后的输入参数的最高位表示符号位,低预设第一数值位表示量化位,剩余预设第二数值位表示缓存位。
2.根据权利要求1所述的方法,其中,在所述确定当前神经网络层是否为所述目标神经网络模型的最后一个神经网络层之后,所述方法还包括:
若否,则将量化后的输出结果作为量化后的输入参数,将当前神经网络层的下一个神经网络层作为当前神经网络层,继续执行所述模型量化步骤。
3.根据权利要求1所述的方法,其中,所述基于第一输出结果,确定量化后的输出结果,包括:
确定第一输出结果是否需要与其他参数进行拼接;
若是,则对第一输出结果进行量化,得到短整型的第一输出结果,将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果,以及对所述拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果。
4.根据权利要求1所述的方法,其中,所述基于第一输出结果,确定量化后的输出结果,包括:
确定第一输出结果是否需要与其他参数进行拼接;
若否,则对第一输出结果进行量化,得到短整型的输出结果。
5.一种用于输出信息的方法,包括:
获取浮点型的语音输入参数,对所述浮点型的语音输入参数进行量化,得到短整型的语音输入参数;
将所述短整型的语音输入参数输入根据权利要求1-4之一所述的方法生成的量化后的神经网络声学模型中,输出相应的浮点型的输出结果。
6.一种神经网络模型的量化装置,包括:
量化单元,被配置成对目标神经网络模型的浮点型的输入参数进行量化,得到短整型的输入参数,其中,所述目标神经网络模型包括神经网络声学模型;
输出单元,被配置成基于量化后的输入参数和所述目标神经网络模型的当前神经网络层,执行如下模型量化步骤:基于量化后的输入参数,执行如下确定步骤:将量化后的输入参数与当前神经网络层的量化后的网络参数相乘,得到第一输出结果;确定第一输出结果是否存在溢出情况;若否,则基于第一输出结果,确定量化后的输出结果;若是,则将量化后的输入参数右移预设数值位,将右移后的输入参数作为量化后的输入参数,继续执行所述确定步骤;确定当前神经网络层是否为所述目标神经网络模型的最后一个神经网络层;若是,则将量化后的输出结果转化为浮点型的输出结果进行输出;所述量化后的输入参数的最高位表示符号位,低预设第一数值位表示量化位,剩余预设第二数值位表示缓存位。
7.根据权利要求6所述的装置,其中,所述装置还包括:
反馈单元,被配置成若当前神经网络层不是所述目标神经网络模型的最后一个神经网络层,则将量化后的输出结果作为量化后的输入参数,将当前神经网络层的下一个神经网络层作为当前神经网络层,继续执行所述模型量化步骤。
8.根据权利要求6所述的装置,其中,所述输出单元进一步被配置成通过如下方式基于第一输出结果,确定量化后的输出结果:
确定第一输出结果是否需要与其他参数进行拼接;
若是,则对第一输出结果进行量化,得到短整型的第一输出结果,将量化后的第一输出结果与量化后的待拼接参数进行拼接得到拼接结果,以及对所述拼接结果进行量化,得到短整型的拼接结果作为量化后的输出结果。
9.根据权利要求6所述的装置,其中,所述输出单元进一步被配置成通过如下方式基于第一输出结果,确定量化后的输出结果:
确定第一输出结果是否需要与其他参数进行拼接;
若否,则对第一输出结果进行量化,得到短整型的输出结果。
10.一种用于输出信息的装置,包括:
获取单元,被配置成获取浮点型的语音输入参数,对所述浮点型的语音输入参数进行量化,得到短整型的语音输入参数;
输出单元,被配置成将所述短整型的语音输入参数输入根据权利要求1-4之一所述的方法生成的量化后的神经网络声学模型中,输出相应的浮点型的输出结果。
11.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4、5中任一所述的方法。
12.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-4、5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010768252.4A CN112308226B (zh) | 2020-08-03 | 2020-08-03 | 神经网络模型的量化、用于输出信息的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010768252.4A CN112308226B (zh) | 2020-08-03 | 2020-08-03 | 神经网络模型的量化、用于输出信息的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112308226A CN112308226A (zh) | 2021-02-02 |
CN112308226B true CN112308226B (zh) | 2024-05-24 |
Family
ID=74483211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010768252.4A Active CN112308226B (zh) | 2020-08-03 | 2020-08-03 | 神经网络模型的量化、用于输出信息的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112308226B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113408704A (zh) * | 2021-06-29 | 2021-09-17 | 深圳市商汤科技有限公司 | 数据处理方法、装置、设备及计算机可读存储介质 |
CN113593538B (zh) * | 2021-09-02 | 2024-05-03 | 北京声智科技有限公司 | 语音特征的分类方法、相关设备及可读存储介质 |
US20230229917A1 (en) * | 2023-03-15 | 2023-07-20 | Intel Corporation | Hybrid multipy-accumulation operation with compressed weights |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109902745A (zh) * | 2019-03-01 | 2019-06-18 | 成都康乔电子有限责任公司 | 一种基于cnn的低精度训练与8位整型量化推理方法 |
CN109961141A (zh) * | 2019-04-11 | 2019-07-02 | 北京字节跳动网络技术有限公司 | 用于生成量化神经网络的方法和装置 |
CN110135580A (zh) * | 2019-04-26 | 2019-08-16 | 华中科技大学 | 一种卷积网络全整型量化方法及其应用方法 |
CN110413255A (zh) * | 2018-04-28 | 2019-11-05 | 北京深鉴智能科技有限公司 | 人工神经网络调整方法和装置 |
CN110555508A (zh) * | 2018-05-31 | 2019-12-10 | 北京深鉴智能科技有限公司 | 人工神经网络调整方法和装置 |
CN110673802A (zh) * | 2019-09-30 | 2020-01-10 | 上海寒武纪信息科技有限公司 | 数据存储方法、装置、芯片、电子设备和板卡 |
CN110929837A (zh) * | 2018-09-19 | 2020-03-27 | 北京搜狗科技发展有限公司 | 神经网络模型压缩方法及装置 |
CN111160545A (zh) * | 2019-12-31 | 2020-05-15 | 北京三快在线科技有限公司 | 人工神经网络处理系统及其数据处理方法 |
WO2020135601A1 (zh) * | 2018-12-29 | 2020-07-02 | 北京市商汤科技开发有限公司 | 图像处理方法、装置、车载运算平台、电子设备及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7155472B2 (en) * | 2003-02-11 | 2006-12-26 | Texas Instruments Incorporated | Fixed-point quantizer for video coding |
-
2020
- 2020-08-03 CN CN202010768252.4A patent/CN112308226B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110413255A (zh) * | 2018-04-28 | 2019-11-05 | 北京深鉴智能科技有限公司 | 人工神经网络调整方法和装置 |
CN110555508A (zh) * | 2018-05-31 | 2019-12-10 | 北京深鉴智能科技有限公司 | 人工神经网络调整方法和装置 |
CN110929837A (zh) * | 2018-09-19 | 2020-03-27 | 北京搜狗科技发展有限公司 | 神经网络模型压缩方法及装置 |
WO2020135601A1 (zh) * | 2018-12-29 | 2020-07-02 | 北京市商汤科技开发有限公司 | 图像处理方法、装置、车载运算平台、电子设备及系统 |
CN109902745A (zh) * | 2019-03-01 | 2019-06-18 | 成都康乔电子有限责任公司 | 一种基于cnn的低精度训练与8位整型量化推理方法 |
CN109961141A (zh) * | 2019-04-11 | 2019-07-02 | 北京字节跳动网络技术有限公司 | 用于生成量化神经网络的方法和装置 |
CN110135580A (zh) * | 2019-04-26 | 2019-08-16 | 华中科技大学 | 一种卷积网络全整型量化方法及其应用方法 |
CN110673802A (zh) * | 2019-09-30 | 2020-01-10 | 上海寒武纪信息科技有限公司 | 数据存储方法、装置、芯片、电子设备和板卡 |
CN111160545A (zh) * | 2019-12-31 | 2020-05-15 | 北京三快在线科技有限公司 | 人工神经网络处理系统及其数据处理方法 |
Non-Patent Citations (2)
Title |
---|
Scaling Neural Network Performance through Customized Hardware Architectures on Reconfigurable Logic;Michaela Blott等;2017 IEEE International Conference on Computer Design (ICCD);20171123;全文 * |
卷积神经网络声学模型的结构优化和加速计算;王智超;徐及;张鹏远;颜永红;;重庆邮电大学学报(自然科学版);20180615(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112308226A (zh) | 2021-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112955907B (zh) | 用于量化训练的长短期记忆神经网络的方法和系统 | |
CN112308226B (zh) | 神经网络模型的量化、用于输出信息的方法和装置 | |
CN108630190B (zh) | 用于生成语音合成模型的方法和装置 | |
CN108628807B (zh) | 浮点数矩阵的处理方法、装置、设备及计算机可读存储介质 | |
CN110852438B (zh) | 模型生成方法和装置 | |
CN110413812B (zh) | 神经网络模型的训练方法、装置、电子设备及存储介质 | |
CN109165736B (zh) | 应用于卷积神经网络的信息处理方法和装置 | |
CN111340220B (zh) | 用于训练预测模型的方法和装置 | |
WO2020207174A1 (zh) | 用于生成量化神经网络的方法和装置 | |
CN116166271A (zh) | 代码生成方法、装置、存储介质及电子设备 | |
CN112380876B (zh) | 基于多语言机器翻译模型的翻译方法、装置、设备和介质 | |
CN113408507B (zh) | 基于履历文件的命名实体识别方法、装置和电子设备 | |
CN110009101B (zh) | 用于生成量化神经网络的方法和装置 | |
CN111508478B (zh) | 语音识别方法和装置 | |
CN112634904B (zh) | 热词识别方法、装置、介质和电子设备 | |
CN118397147A (zh) | 一种基于深度学习的图像文本生成方法及装置 | |
CN114861758A (zh) | 多模态数据处理方法、装置、电子设备及可读存储介质 | |
CN113361677B (zh) | 神经网络模型的量化方法和装置 | |
US20230161555A1 (en) | System and method performing floating-point operations | |
CN115879525A (zh) | 神经网络模型量化方法及装置、存储介质及电子设备 | |
CN111382557B (zh) | 非定长输入数据的批量处理方法、装置、终端及存储介质 | |
US20210406773A1 (en) | Transforming method, training device, and inference device | |
CN112070163B (zh) | 图像分割模型训练和图像分割方法、装置、设备 | |
CN118446271B (zh) | 围标检测模型的训练方法、预测方法、装置、设备及介质 | |
CN115409044B (zh) | 翻译方法、装置、可读介质及电子设备 |
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 |