[发明专利]编码存储装置及方法、处理器及训练方法有效
申请号: | 201810486460.8 | 申请日: | 2018-05-18 |
公开(公告)号: | CN110147872B | 公开(公告)日: | 2020-07-17 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/08 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 任岩 |
地址: | 100190 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 编码 存储 装置 方法 处理器 训练 | ||
本公开提供了一种卷积神经网络的编码存储装置及方法、处理器及训练方法;其中,该卷积神经网络的编码存储装置包括:编码模块,其包括比较器和编码器;其中,所述比较器用于将激活层的输入数据与一参照数据进行比较,所述编码器用于根据比较结果对所述激活层的输入数据或输出数据进行编码。本公开卷积神经网络的编码存储装置及方法、处理器及训练方法有效节约了内存,减少了对内存的输入输出次数,优化了卷积神经网络的性能,保证了卷积神经网络预测的准确性。
技术领域
本公开涉及人工智能技术领域,尤其涉及一种卷积神经网络的编码存储装置及方法、处理器及训练方法。
背景技术
卷积神经网络(Convolutional Neural Network,缩写CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,近年来被广泛用于图像处理,语音处理,以及模式识别等领域。强大数据资源的可利用性及其本身良好的可并行性使得卷积神经网络发展迅速,受到广泛关注。随着网络层数的增加,对内存的需求也越来越大。可用的内存大小成为了限制神经网络型号的瓶颈。
现有的技术通常是减少模型大小,因权重并不是神经网络训练中的主要内存占用,导致不能有效减少内存占用。或者在中央处理器(Central Processing Unit,缩写CPU)和图形处理器(Graphics Processing Unit,缩写GPU)的内存之间来回拷贝数据结构,这样会增加性能开销。
发明内容
(一)要解决的技术问题
为了解决或者至少部分缓解上述技术问题,本公开提供了一种卷积神经网络的编码存储装置及方法、处理器及训练方法。
(二)技术方案
根据本公开的一个方面,提供了一种卷积神经网络的编码存储装置,包括:存储模块和编码模块,该编码模块包括比较器和编码器;其中,所述比较器用于将激活层的输入数据与一参照数据进行比较,所述编码器用于根据比较结果对所述激活层的输入数据或输出数据进行编码。
在一些实施例中,所述存储模块用于将编码结果存储在特征映射图中、存储所述比较结果和存储激活函数的参数α。
在一些实施例中,所述参照数据为一常数或激活层的输出数据。
在一些实施例中,所述参照数据为激活层的输出数据,若激活层的输入数据与输出数据相等,则将输出数据编码为1;否则,编码为0;或
所述参照数据为一常数,该常数取0,若输入数据大于0,则将输入数据编码为1;否则,编码为0。
在一些实施例中,所述编码采用0/1编码、以位为单位进行存储。
根据本公开的另一个方面,提供了一种卷积神经网络的处理器,其包括所述的编码存储装置,还包括:
计算模块,用于进行来自前向传播的运算和来自反向传播的运算;其中,在前向传播时,所述计算模块用于根据所述激活层的输入数据计算经由激活函数处理得到的所述激活层的所述输出数据;在后向传播时,所述计算模块用于根据编码结果对偏导数进行运算处理。
在一些实施例中,所述的处理器,还包括:I/O模块,用于激活层与相邻层之间的数据传递,存储模块与计算模块之间的数据传递,以及编码存储装置的数据输入与输出。
在一些实施例中,根据所述激活层的输入数据计算经由激活函数处理得到的所述激活层的所述输出数据,具体计算公式如下:
f(x)=max(x,αx),其中,x表示激活层的输入数据,f(x)表示激活层的输出数据,α表示所述激活函数的参数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810486460.8/2.html,转载请声明来源钻瓜专利网。