[发明专利]用于执行人工神经网络正向运算的装置和方法有效
申请号: | 201811233424.7 | 申请日: | 2016-01-20 |
公开(公告)号: | CN109242094B | 公开(公告)日: | 2020-05-08 |
发明(设计)人: | 刘少礼;郭崎;陈云霁;陈天石 | 申请(专利权)人: | 中科寒武纪科技股份有限公司 |
主分类号: | G06N3/06 | 分类号: | G06N3/06 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 100000 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 人工 神经网络 正向 运算 装置 方法 | ||
1.一种用于执行人工神经网络正向运算的装置,包括、控制器单元、数据访问单元、数据通路模块、主运算模块、以及从运算模块,其中:
数据访问单元,用于执行外部地址空间与所述装置之间的数据读写操作;
控制器单元,用于读取指令,将指令译成控制其他模块行为的控制信号,所述其他模块包括数据访问单元、主运算模块和所述从运算模块;
主运算模块,用于将输入神经元向量发送至数据通路模块;
所述数据通路模块,用于将所述输入神经元向量同样的发送给所述从运算模块;
所述从运算模块,用于对输入神经元向量和从运算模块对应的权值向量执行运算得到输出神经元值,将输出神经元值发送至所述数据通路模块;
所述数据通路模块,用于依据输出神经元值得到中间结果向量,将中间结果向量发送至主运算模块;
主运算模块,用于利用中间结果向量完成后续计算。
2.根据权利要求1所述的装置,其特征在于,
所述装置还包括:指令缓存单元,用于存储指令。
3.根据权利要求1所述的装置,其特征在于,所述从运算模块包括多个从运算模块,
所述数据通路模块,具体用于逐级将各从运算模块的输出神经元值拼成中间结果向量。
4.根据权利要求3所述的装置,其特征在于,所述数据通路模块为H树模块,所述H树模块为由多个节点构成的二叉树通路,每个节点将上游节点的数据同样地发送至下游得了两个节点,以及将下游的两个节点返回的数据进行合并。
5.根据权利要求1-3任意一项所述的装置,其中,所述从运算模块的权值向量是权值矩阵中与该从运算模块相对应的列向量。
6.根据权利要求1-4任意一项所述的装置,其中,所述后续计算为下属操作中的任意一种:
加偏置操作、激活操作、池化操作或采样操作;
所述激活操作的激活函数active为非线性函数sigmoid,tanh,relu,softmax中的任一个或线性函数;
所述池化操作包括最大值池化或平均值池化。
7.根据权利要求4所述的装置,其中,主运算模块包括存储单元、运算单元、数据依赖关系判断单元、神经元缓存单元,其中:
神经元缓存单元,用于缓存主运算模块在计算过程中用到的输入数据和输出数据;
运算单元,完成主运算模块的各种运算功能;
数据依赖关系判断单元,用于从所述存储单元读取输入的神经元向量,并通过数据通路模块发送给从运算模块;以及接收数据通路模块的中间结果向量,将中间结果向量发送到运算单元。
8.根据权利要求4所述的装置,其中,每个从运算模块包括:从运算单元、从数据依赖关系判断单元、从神经元缓存单元和从权值缓存单元,其中:
从数据依赖关系判断单元,用于对从神经元缓存单元和从权值缓存单元的读写操作,保证对从神经元缓存单元和从权值缓存单元的读写不存在一致性冲突;
从神经元缓存单元,用于缓存输入神经元向量数据以及该从运算模块计算得到的输出神经元值;
从权值缓存单元,用于缓存该从运算模块在计算过程中需要的权值向量;
从运算单元,用于接收控制器单元发出的微指令并进行算数逻辑运算。
9.根据权利要求8所述的装置,其特征在于,
所述从运算单元,具体用于计算所述从运算模块对应的权值向量与输入神经元向量的点积得到输出结果,将输出结果发送给数据通路模块的下游节点;
所述数据通路模块,用于将两个下游节点的两个输出结果合并给上一级节点,逐级合并各从运算模块的输出结果得到中间结果向量。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中科寒武纪科技股份有限公司,未经中科寒武纪科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811233424.7/1.html,转载请声明来源钻瓜专利网。