[发明专利]浮点数矩阵的处理方法、装置、设备及计算机可读存储介质有效
| 申请号: | 201710165155.4 | 申请日: | 2017-03-20 |
| 公开(公告)号: | CN108628807B | 公开(公告)日: | 2022-11-25 |
| 发明(设计)人: | 欧阳剑;周妮;王勇;漆维 | 申请(专利权)人: | 北京百度网讯科技有限公司 |
| 主分类号: | G06F17/16 | 分类号: | G06F17/16 |
| 代理公司: | 北京鸿德海业知识产权代理有限公司 11412 | 代理人: | 袁媛 |
| 地址: | 100085 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 浮点 矩阵 处理 方法 装置 设备 计算机 可读 存储 介质 | ||
本发明提供一种浮点数矩阵的处理方法、装置、设备及计算机可读存储介质。本发明实施例通过根据待压缩的浮点数模型矩阵,获取所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值,进而根据所述数位宽度、所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值,对所述浮点数模型矩阵进行压缩处理,以获得定点数模型矩阵,通过采用定点化方法,对深度学习模型的浮点数模型矩阵进行压缩处理,以获得定点数模型矩阵,从而降低了深度学习模型的存储空间和运算量,同时提出该装置在深度学习网络中的实现框架以最大化深度学习网络精度,即矩阵乘法部分用该装置,其它部分例如激活函数等操作保留浮点操作。
【技术领域】
本发明涉及模型压缩技术,尤其涉及一种浮点数矩阵的处理方法、装置、设备及计算机可读存储介质。
【背景技术】
深度学习模型被越来越广泛地应用于众多应用中,例如语音识别、图像识别、语义分析、自动驾驶等,其通过对不同层的节点之间的线性层和非线性层,对数据进行映射、运算等处理,并在处理中对模型进行训练、修正、更新,从而最终提升分类或预测的准确性。在实际处理过程中,深度学习模型会占用较大的存储空间,且运算量较大。
深度学习模型中有两类运算,一个是矩阵乘法,一个是激活函数等element-wise的操作,两类操作组合构成深度学习的基本单元;其中矩阵乘法部分是存储和运算的关键模块,为了降低深度学习模型的存储空间和运算量,亟需提供一种适用于深度学习模型的矩阵压缩方法,同时为了保证深度学习模型的精度,除矩阵乘法外的element-wise类操作保留浮点处理方式。
【发明内容】
本发明的多个方面提供一种浮点数矩阵的处理方法、装置、设备及计算机可读存储介质,用以降低深度学习模型的存储空间和运算量。
本发明的一方面,提供一种浮点数矩阵的处理方法,包括:
根据待压缩的浮点数模型矩阵,获取所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值;
根据所述数位宽度、所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值,对所述浮点数模型矩阵进行压缩处理,以获得定点数模型矩阵。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据待压缩的浮点数模型矩阵,获取所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值,包括:
对所述浮点数模型矩阵的全部元素进行极值求解处理,以获得所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值;或者
对所述浮点数模型矩阵的每列元素进行极值求解处理,以获得该列元素的最小值和该列元素的最大值;将所述浮点数模型矩阵的每列元素的最小值组成最小值向量,以作为所述浮点数模型矩阵的最小值,将所述浮点数模型矩阵的每列元素的最大值组成最大值向量,以作为所述浮点数模型矩阵的最大值。
如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述数位宽度、所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值,对所述浮点数模型矩阵进行压缩处理,以获得定点数模型矩阵,包括:
根据所述数位宽度、所述浮点数模型矩阵的最小值和所述浮点数模型矩阵的最大值,利用公式Xint=2K*(X-XMin)/(XMax-XMin),对所述浮点数模型矩阵进行压缩处理,以获得定点数模型矩阵;其中,
Xint为所述定点数模型矩阵中的元素;
X为所述浮点数模型矩阵中的元素;
K为所述数位宽度;
XMin为所述浮点数模型矩阵的最小值;以及
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京百度网讯科技有限公司,未经北京百度网讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710165155.4/2.html,转载请声明来源钻瓜专利网。





