[发明专利]卷积神经网络的池化运算装置及方法在审
申请号: | 201710072737.8 | 申请日: | 2017-02-10 |
公开(公告)号: | CN108416430A | 公开(公告)日: | 2018-08-17 |
发明(设计)人: | 李一雷;杜源;杜力;管延城;刘峻诚 | 申请(专利权)人: | 耐能股份有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063 |
代理公司: | 北京纪凯知识产权代理有限公司 11245 | 代理人: | 徐东升;赵蓉民 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 池化 缓冲器 运算 卷积神经网络 新数据 运算装置 读入 前排 | ||
一种卷积神经网络的池化运算方法,包括:读入池化窗内至少一排的多个新数据;将新数据进行第一池化运算以产生至少一个排池化结果;将本次排池化结果存于缓冲器;将缓冲器内的至少一个先前排池化结果及本次排池化结果进行第二池化运算以产生池化窗的池化结果。
技术领域
本发明涉及一种池化运算方法,特别是涉及一种执行最大池化运算的装置及方法。
背景技术
卷积神经网络(Convolutional Neural Network,CNN)是一种前馈型神经网络,其通常包含多组的卷积层(convolution layer)及池化层(pooling layer)。卷积层能够提取输入数据的局部特征,而池化层可针对输入数据某个区域上的特定特征进行最大池化(maxpooling)或平均池化(average pooling)运算,以减小参数量及神经网络中的运算,池化运算完的结果可再传给下一层进行卷积运算,然后再次进行池化运算。然而,传统上对多个数据进行池化运算时,需等待卷积层的所有数据均完成运算,才会输入至池化层进行池化运算,故需占用庞大的读取带宽。
因此,如何提供一种池化运算方式,以解决读取带宽不足的问题,实为当前重要的课题之一。
发明内容
有鉴于此,本发明的一个目的是提供一种池化运算装置及方法,可降低输入数据的读取带宽,以增进池化运算的效能。
为达上述目的,本发明提供一种卷积神经网络的池化运算方法,包括:读入池化窗内至少一排的多个新数据;将新数据进行第一池化运算以产生至少一个排池化结果;将本次排池化结果存于缓冲器;将缓冲器内的至少一个先前排池化结果及本次排池化结果进行第二池化运算以产生池化窗的池化结果。
在一个实施例中,新数据为卷积运算的结果,且新数据在读入前未存在于缓冲器。
在一个实施例中,缓冲器为先进先出缓冲器,新数据为池化窗的至少一行(column)的新数据。
在一个实施例中,缓冲器的规模大于或等于池化窗的列(row)数。
在一个实施例中,池化窗的步幅为S,当存了S个排池化结果在缓冲器后,才进行第二池化运算。
在一个实施例中,第一池化运算及第二池化运算为最大池化运算。
为达上述目的,本发明提供一种卷积神经网络的池化运算装置,包括:第一阶池化单元、缓冲器以及第二阶池化单元。第一阶池化单元配置来读入池化窗内至少一排的多个新数据,并将新数据进行第一池化运算,以产生至少一个排池化结果。缓冲器耦接第一阶池化单元,并配置来储存本次排池化结果及至少一个先前排池化结果。第二阶池化单元配置来将缓冲器内的先前排池化结果及本次排池化结果进行第二池化运算,以产生池化窗的池化结果。
在一个实施例中,新数据为卷积运算的结果,且新数据在读入前未存在于缓冲器。
在一个实施例中,缓冲器为先进先出缓冲器,新数据为池化窗的至少一行(column)的新数据。
在一个实施例中,缓冲器的规模大于或等于池化窗的列(row)数。
在一个实施例中,池化窗的步幅为S,当存了S个排池化结果在缓冲器后,才进行第二池化运算。
在一个实施例中,第一池化运算及第二池化运算为最大池化运算。
为达上述目的,本发明提供一种卷积神经网络的池化运算方法,包括:读入池化窗内已备好的至少一个数据,其中池化窗内涵盖尚未备好的数据;将已备好的数据进行池化运算,以产生部分池化结果;当池化窗内涵盖尚未备好的数据变为已备好的数据时,将部分池化结果及变为已备好的数据再进行池化运算,以产生池化结果。
在一个实施例中,池化运算为最大池化运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于耐能股份有限公司,未经耐能股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710072737.8/2.html,转载请声明来源钻瓜专利网。