[发明专利]一种针对GoogLeNet模型的加速器及其方法有效
申请号: | 201910416021.4 | 申请日: | 2019-05-19 |
公开(公告)号: | CN110288078B | 公开(公告)日: | 2023-03-24 |
发明(设计)人: | 王瑶;席挺;王宇宣 | 申请(专利权)人: | 南京惟心光电系统有限公司 |
主分类号: | G06N3/0464 | 分类号: | G06N3/0464;G06N3/048;G06N3/063;G06N3/067 |
代理公司: | 江苏法德东恒律师事务所 32305 | 代理人: | 李媛媛 |
地址: | 210000 江苏省南京市江宁区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 针对 googlenet 模型 加速器 及其 方法 | ||
1.一种针对GoogLeNet模型的加速器,其特征在于,包括:
控制器,用于控制卷积运算和全连接运算的控制信号流和数据流,并把最终结果输出保存到存储器中;
光电计算阵列,用于完成卷积运算和全连接运算映射后的矩阵向量乘操作;
模数转换器,用于将光电计算阵列输出的电流转化为数字信号;
激活函数单元,用于完成卷积运算和全连接运算结果的加偏置和激活函数操作;
池化单元,用于完成结果的最大值池化操作;
辅助分类器,用于避免梯度消失,所述辅助分类器连接在卷积层之后;
所述光电计算阵列由多个光电计算单元周期性排列组成,每个光电计算单元包括发光单元和计算单元,发光单元发出的光入射到计算单元中;每个计算单元包括载流子控制区、耦合区、以及光生载流子收集区和读出区;所述载流子控制区用于控制并调制光生载流子收集区和读出区内的载流子;所述光生载流子收集区和读出区中的收集区用于吸收发光单元发射的光子并收集产生的光生载流子;所述载流子控制区或者光生载流子收集区和读出区中的读出区与电信号连接,读出区用于输出被所述光生载流子和所述电信号作用后的载流子;所述耦合区连接收集区和读出区;
利用光电计算阵列完成模型中卷积运算和全连接运算映射后的矩阵向量乘操作,其中,卷积运算具体包括如下步骤:
(1)将模型中每层的各个卷积核展开,排列成矩阵,并将每层的输入特征图展开成向量形式;在输入特征图为多通道的情况下,将各通道特征图展开得到的向量首尾拼接,同时各通道卷积核展开得到的矩阵以对应的方式进行拼接;
(2)将光电计算单元排列成阵列,阵列的行列数与步骤(1)卷积核展开形成的矩阵行列数相同;将阵列中每一列计算单元的光生载流子收集区和读出区的输出端依次相连,每一行计算单元的载流子控制区依次相连;
(3)所述发光单元发出被设置为矩阵数据的光信号,并入射到对应的计算单元的光生载流子收集区和读出区,所述矩阵数据即为卷积核中的权值数据;输入特征图展开得到的向量中每个元素被转化为二进制,并按照比特位高低串行地将代表二值化后数据的载流子输入到各个行的载流子控制区中,作为向量数据;
(4)所述计算单元的光生载流子收集区和读出区的输出端输出受矩阵数据和向量数据共同作用后的载流子,并在固定电压的驱动下以电流的形式输出,并按列汇聚,经过AD转换后,再完成移位和累加操作,即得到中间结果向量;
(5)将得到的所有中间结果向量的相同位取出,按照步骤(1)输入特征图展开方式进行重组,得到输出特征图的一个通道,输出特征图的通道数即为卷积核的组数,将中间结果向量全部重组后得到输出特征图,得到的输出特征图加上偏置,再加上激活函数,得到卷积层的计算结果;
(6)将步骤(5)得到的卷积层的计算结果转化为向量输入给全连接层的光电计算阵列,所述光电计算阵列的行数和列数分别等于全连接层输入神经元数和输出神经元数;全连接层输入神经元数直接作为矩阵的行数,输入的每个元素被转化为二进制,并按照比特位高低串行地将代表二值化后数据的载流子输入到光电计算阵列各个行的载流子控制区中,作为向量数据;矩阵数据使用全连接层对应神经元之间的权值数据;在光电计算阵列计算完成后,每一列输出结果对应一个输出神经元,并直接进行加偏置以及激活计算,得到最终结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京惟心光电系统有限公司,未经南京惟心光电系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910416021.4/1.html,转载请声明来源钻瓜专利网。