CN114004353A - 减少光器件数量的光神经网络芯片构建方法及系统 - Google Patents

减少光器件数量的光神经网络芯片构建方法及系统 Download PDF

Info

Publication number
CN114004353A
CN114004353A CN202111161801.2A CN202111161801A CN114004353A CN 114004353 A CN114004353 A CN 114004353A CN 202111161801 A CN202111161801 A CN 202111161801A CN 114004353 A CN114004353 A CN 114004353A
Authority
CN
China
Prior art keywords
matrix
neural network
unitary
diagonal
optical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111161801.2A
Other languages
English (en)
Inventor
陆则朴
臧大伟
沈华
戴梦溪
谭光明
孙凝晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN202111161801.2A priority Critical patent/CN114004353A/zh
Publication of CN114004353A publication Critical patent/CN114004353A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/067Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means
    • G06N3/0675Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using optical means using electro-optical, acousto-optical or opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)

Abstract

本发明提出一种减少光器件数量的光神经网络芯片构建方法和系统,通过芯片结构与训练方法协同的方法,通过低秩近似压缩光芯片中冗余光器件的数量,同时基于若干的优化手段,保证神经网络的识别准确率。本发明所提出的减少光器件数量的光神经网络芯片构建方法包括权重矩阵预处理、酉保持训练、器件剪枝和功能光器件网络构建。因此,本发明通过结构和算法的协同,在识别率基本保持不变的情况下,极大地降低光器件的使用数量。

Description

减少光器件数量的光神经网络芯片构建方法及系统
技术领域
本发明涉及人工智能和光子计算领域,并特别涉及一种减少光器件数量的光神经网络芯片构建方法及系统。
背景技术
近年来,人工神经网络在包括图像识别、语音识别、行为决策在内的多个领域中都取得了远超传统算法的成果,因此在实际生活中得到了广泛的应用。但是,深层的结构和数目众多的神经元使神经网络需要耗费大量的算力资源,业界对此的解决方案是使用高度并行的GPU甚至是专用的加速硬件承载神经网络的运算,以提高计算的速度和能效。但是随着集成电路的特征尺寸趋于物理极限,摩尔定律逐渐失效,基于CMOS工艺的电域神经网络加速器无法满足若干应用对算力和能效的要求,成为信息领域未来几十年面临的重大问题。
光信号与电信号相比,在频率、能效和抗干扰等方面存在巨大优势,基于光信号的光计算技术具备天然的并行度极高、运算速度极快、能耗极低等优势,作为电计算技术的替代者有着广阔的前景;特别地,基于光计算技术的神经网络加速器,利用光器件来构建向量矩阵乘加结构,实现人工神经网络中运算量最大的矩阵乘加操作,在一个时钟周期就能完成一个规模的矩阵计算,具有极大的速度和能效提升。虽然基于光器件的神经网络加速器在速度和能效等方面有巨大优势,但是其构建方法直接采用SVD分解在光器件网络上实现神经网络的权重矩阵,需要使用平方数量级的光器件,这一方面增加了光芯片的面积和能量的消耗,另一方面也放大了每个光器件制造时的随机误差,使得整个网络的容错性降低,增加了操控的难度,成为光子计算走向实用的重要障碍。
发明内容
为了克服上述现有技术在将大规模神经网络映射到光结构上时占用面积大、消耗器件多、操控复杂的问题,本发明提出了一种能极大地减少光器件使用数量的光神经网络芯片构建方法,通过神经网络权值的低秩近似和与光器件特性匹配的训练方法,在识别率基本保持不变的情况下,大幅度地降低了光神经网络芯片所需的器件数量,减小了芯片面积和操控的复杂程度。
具体来说,本发明提出一种减少光器件数量的光神经网络芯片构建方法,其中包括:
步骤1、获取待向光器件映射的原始神经网络,通过对该神经网络中各权值矩阵分解为对角矩阵和酉矩阵,将该原始神经网络转换为由对角矩阵和酉矩阵组成的矩阵序列。
步骤2、将训练集中样本输入该矩阵序列,通过比较矩阵序列中最后一个输出与该训练集的标签,得到损失值Loss;
步骤3、通过正则化函数,得到各权值矩阵的对角矩阵和酉矩阵用以约束参数优化方向的正则项,将所有正则项与该损失值Loss相加,得到优化目标函数FullLoss;
步骤4、用优化目标函数FullLoss对各权值矩阵的对角矩阵和酉矩阵求导,并基于得到的偏导数,通过反向传播与梯度下降对各权值矩阵的对角矩阵和酉矩阵进行更新;
步骤5、比较更新后与更新前的对角矩阵和酉矩阵,判断两者差异是否低于阈值,若是,则执行步骤7,否则执行步骤6;
步骤6、对更新后的对角矩阵和酉矩阵进行剪枝处理后再次执行该步骤2到5;
步骤7、将更新后的对角矩阵和酉矩阵映射到光器件上,以生成该原始神经网络对应的光神经网络芯片。
所述的减少光器件数量的光神经网络芯片构建方法,其中该步骤1包括:
将该原始神经网络中权值矩阵W进行分解,得到半酉矩阵U、非负对角矩阵Σ和半酉矩阵V;
该步骤3包括:
对该原始神经网络中每层的矩阵U,Σ与V分别计算两个正则项g(U,V,Σ)和h(U,V,Σ),将所有矩阵的正则项计算值与Loss加到一起,得到完整的优化目标函数FullLoss。
所述的减少光器件数量的光神经网络芯片构建方法,其中该正则项g(U,V,Σ)的计算方法为:
Figure BDA0003290498090000031
其中Σ的对角值分别为σ12,...,σr,对角值构成的向量为s=[σ12,…,σr]T,用
Figure BDA0003290498090000032
Figure BDA0003290498090000033
分别表示s的1-范数和2-范数;
该正则项h(U,V,Σ)的计算方法为:
Figure BDA0003290498090000034
其中Δu=Ir-Qu,Δv=Ir-Qv,Ir表示尺寸为r×r的单位矩阵,Qu和Qv是严格的半酉矩阵,尺寸分别与矩阵U和V相同。
所述的减少光器件数量的光神经网络芯片构建方法,其中该步骤6包括:
采用剪枝的方法降低半酉矩阵U、非负对角矩阵Σ和半酉矩阵V的秩。
所述的减少光器件数量的光神经网络芯片构建方法,其中该步骤7包括:
将更新后的半酉矩阵V和半酉矩阵U分别分解为对角矩阵和只在n个通道上起作用的酉矩阵的乘积,根据乘积中的变换矩阵并结合
Figure BDA0003290498090000035
的顺序将光器件串联,以得到更新后的对角矩阵和酉矩阵到光器件的映射。
本发明还提出了一种减少光器件数量的光神经网络芯片构建系统,其中包括:
模块1,用于获取待向光器件映射的原始神经网络,通过对该神经网络中各权值矩阵分解为对角矩阵和酉矩阵,将该原始神经网络转换为由对角矩阵和酉矩阵组成的矩阵序列。
模块2,用于将训练集中样本输入该矩阵序列,通过比较矩阵序列中最后一个输出与该训练集的标签,得到损失值Loss;
模块3,用于通过正则化函数,得到各权值矩阵的对角矩阵和酉矩阵用以约束参数优化方向的正则项,将所有正则项与该损失值Loss相加,得到优化目标函数FullLoss;
模块4,用于用优化目标函数FullLoss对各权值矩阵的对角矩阵和酉矩阵求导,并基于得到的偏导数,通过反向传播与梯度下降对各权值矩阵的对角矩阵和酉矩阵进行更新;
模块5,用于比较更新后与更新前的对角矩阵和酉矩阵,判断两者差异是否低于阈值,若是,则执行模块7,否则执行模块6;
模块6,用于对更新后的对角矩阵和酉矩阵进行剪枝处理后再次执行该模块2到5;
模块7,用于将更新后的对角矩阵和酉矩阵映射到光器件上,以生成该原始神经网络对应的光神经网络芯片。
所述的减少光器件数量的光神经网络芯片构建系统,其中该模块1包括:
将该原始神经网络中权值矩阵W进行分解,得到半酉矩阵U、非负对角矩阵Σ和半酉矩阵V;
该模块3包括:
对该原始神经网络中每层的矩阵U,Σ与V分别计算两个正则项g(U,V,Σ)和h(U,V,Σ),将所有矩阵的正则项计算值与Loss加到一起,得到完整的优化目标函数FullLoss。
所述的减少光器件数量的光神经网络芯片构建系统,其中该正则项g(U,V,Σ)的计算过程为:
Figure BDA0003290498090000041
其中Σ的对角值分别为σ12,…,σr,对角值构成的向量为s=[σ12,…,σr]T,用
Figure BDA0003290498090000042
Figure BDA0003290498090000043
分别表示s的1-范数和2-范数;
该正则项h(U,V,Σ)的计算过程为:
Figure BDA0003290498090000044
其中Δu=Ir-Qu,Δv=Ir-Qv,Ir表示尺寸为r×r的单位矩阵,Qu和Qv是严格的半酉矩阵,尺寸分别与矩阵U和V相同。
所述的减少光器件数量的光神经网络芯片构建系统,其中该模块6包括:
采用剪枝降低半酉矩阵U、非负对角矩阵Σ和半酉矩阵V的秩。
所述的减少光器件数量的光神经网络芯片构建系统,其中该模块7包括:
将更新后的半酉矩阵V和半酉矩阵U分别分解为对角矩阵和只在n个通道上起作用的酉矩阵的乘积,根据乘积中的变换矩阵并结合
Figure BDA0003290498090000045
的顺序将光器件串联,以得到更新后的对角矩阵和酉矩阵到光器件的映射。
由以上方案可知,本发明的优点在于:
利用高并行、低能耗和抗干扰的光信号及器件构建了神经网络处理芯片,能够极大地提高神经网络计算处理的速度和能效;同时,该发明可以极大地减少光器件的使用(大于80%),可以利用较少的光器件和光芯片的面积实现相同的功能,不仅减小了芯片的面积,而且降低了光器件的操控难度,极大地降低了成本,对光神经网络的应用部署具有重要价值。
附图说明
图1为三层神经网络结构示意图;
图2为本发明光神经网络的训练流程图;
图3为本发明光神经网络的单次迭代流程图;
图4为将网络从秩为3剪枝至秩为2的剪枝示意图,其中灰色部分为被去除的分量;
图5为实现例中第一层网络的低秩(秩为2)光神经网络结构图。
具体实施方式
发明人经过调研与实验发现,可以通过芯片结构与训练方法协同的方法,通过低秩近似压缩光芯片中冗余光器件的数量,同时基于若干的优化手段,保证神经网络的识别准确率。因此,本发明提出了一种减少光器件数量的光神经网络芯片设计方法,通过结构和算法的协同,在识别率基本保持不变的情况下,极大地降低光器件的使用数量。
本发明所提出的减少光器件数量的光神经网络芯片构建方法包括权重矩阵预处理方法、酉保持训练方法、器件剪枝方法和功能光器件网络构建方法等四个主要的过程和子方法。其中:
权重矩阵预处理方法,是指对于神经网络两个层次之间连接的权值矩阵进行处理,将权值矩阵利用矩阵分解的方法分解为对角阵和酉矩阵,然后对获得的多个矩阵进行分别的训练和处理,而不是作为一个矩阵进行处理。
酉保持训练方法,是指在训练过程中,通过目标函数中正则化函数的控制,来约束参数的优化方向,保证权重矩阵处理之后的酉矩阵依然保持为近似的半酉矩阵。这个方法能保证U和V两个矩阵不会偏离半酉矩阵太远,从而在训练完成后的映射操作中不会有太多的损失。
器件剪枝方法,是指在训练过程中通过正则化函数的控制,诱导权重矩阵向秩降低的方向更新;同时在训练一步或多步之后,剪去较小奇异值对应的分量,从而减少参数的数量,进而减少光器件的使用数量;而且,对奇异值阈值的设定可以在识别率和器件数量之间按照用户的需求动态设定。
功能光器件网络构建方法,是指将训练完成的若干矩阵(包括对角阵、酉矩阵等),映射到光耦合器、衰减器、调相器和马赫增德尔干涉仪等器件上,并通过参数的调节获得与矩阵参数对应的功能性光器件网络。
能极大地减少光器件使用数量的光神经网络芯片构建方法,是指按照神经网络的逻辑层次,通过矩阵预处理方法、器件剪枝方法一层一层的进行处理,通过酉保持训练方法和功能光器件保持方法进行整体处理。矩阵预处理方法和功能器件保持方法在整个过程中只需要运行一次,而酉保持训练方法和器件剪枝方法则要迭代若干次。
构建出的光计算芯片可以用于自动驾驶、视频监控等任意需要神经网络处理的系统中。
为让本发明的上述特征和效果能阐述的更明确易懂,下文特举实施例,并配合说明书附图作详细说明如下。
本发明所提出的训练和映射方法可以解决任意神经网络向光器件的映射问题,与神经网络的层数、连接关系和神经元数量无关,其中神经网络可例如是由全连接层与卷积层(可转化为全连接层)组成的神经网络,例如多层感知器、LeNet、AlexNet、VGG等。为了更清晰地展示本发明的思想,以下以一个三层神经网络为例进行说明,其中三层神经网络包含输入层、隐藏层和输出层,不失一般性,假设输入层包含5个神经元、隐藏层包含4个神经元、输出层包含2个神经元,层次与层次之间采用全连接相连,用于本实现例的神经网络结构如图1所示。
本发明所提出的减少光器件数量的光神经网络芯片构建方法包括权重矩阵预处理方法、酉保持训练方法、器件剪枝方法和功能光器件网络构建方法等四个主要的过程和子方法。
在一个实施例中,在训练开始前,先使用权重矩阵预处理方法。所谓权重矩阵处理方法是指对于神经网络两个层次之间连接的权值矩阵进行处理,将权值矩阵利用矩阵分解的方法分解为对角阵和酉矩阵,然后对获得的多个矩阵进行分别的训练和处理,而不是作为一个矩阵进行处理。
步骤S110:将第一层的连接矩阵(4×5权值矩阵)W使用SVD方法进行分解;
步骤S120:将获得的4×4半酉矩阵U、4×4非负对角矩阵Σ、5×4半酉矩阵V进行分别存储,并单独处理;
步骤S130:将神经网络中的其它层次,依次按照步骤S110进行分解;
步骤S140:神经网络将变成一系列的由三种矩阵顺序组成的一个序列。例如将原始的神经网络视为一个序列,序列中每一项就是层与层之间的权重矩阵(如果是卷积层的话,那就是卷积核经过重排变成的矩阵)。经过步骤S140后,神经网络仍是一个序列,序列中每一项被分解成了三个矩阵。这三个矩阵有一个特点,它们乘起来后等于原始序列中对应的矩阵。假如原始神经网络包含矩阵序列[W1,W2],并且SVD分解给出
Figure BDA0003290498090000071
那么经过步骤S140,神经网络的矩阵序列就变成了
Figure BDA0003290498090000072
其中
Figure BDA0003290498090000073
表示矩阵的共轭转置。
在一个实施例中,将步骤S110,S120和S130获得到的U,Σ和V三个矩阵作为初始的参数,采用酉保持算法和器件剪枝方法进行训练。所谓酉保持训练方法,是指在训练过程中,通过目标函数中正则化函数的控制,来约束参数的优化方向,保证权重矩阵处理之后的酉矩阵依然保持为酉阵,而不会随着训练的过程改变性质。所谓的器件剪枝方法,是指在训练一步或者几步之后,剪去较小奇异值对应的分量,从而减少参数的数量,进而减少光器件的使用数量;而且,对奇异值阈值的设定可以在识别率和器件数量之间按照用户的需求动态设定。整体流程如图2所示。
在本实施例中,要经过若干次的迭代才能使参数数量达到稳定,对于每一次的迭代:
步骤S210将从公开的数据集,例如对于图像处理任务,可以使用MNIST、FashionMNIST、ImageNet等数据集选取的训练集的样本输入到S140获得的一系列矩阵的第一个矩阵中,将一系列矩阵中的最后一个输出与训练集的标签进行比较、计算获得损失值Loss,神经网络的矩阵序列是
Figure BDA0003290498090000074
那么当输入是向量x的时候,输出
Figure BDA0003290498090000075
其中标签记载的是样本的正确输出;
步骤S220对每层的参数矩阵U,Σ与V分别计算两个正则项g(U,V,Σ)和h(U,V,Σ),该正则项起到约束参数优化方向的作用,将所有矩阵的正则项计算值与Loss加到一起,得到完整的优化目标函数FullLoss;
步骤S230用FullLoss对各个参数矩阵求导,用计算得到的偏导数以合适的学习率γ更新参数矩阵,即反向传播与梯度下降过程;
步骤S240比较更新后与更新前的参数矩阵,若两者差异足够小,则认为参数矩阵已收敛,停止训练,否则继续下一步;
步骤S250根据Σ的值,对参数矩阵施加器件剪枝,裁剪参数矩阵的尺寸;
步骤S260转到S210进行新一轮的迭代,用裁剪后的U,Σ与V继续训练。
步骤S210-S260共同组成了实施例一次迭代中的关键流程,即参数的训练与更新,其中的详细流程如图3所示。
在步骤S220中,其中一个正则项g(U,V,Σ)是器件剪枝方法的组成部分之一,其作用为衡量参数矩阵的秩,从而能在后续的梯度下降中让U,V与Σ朝向能降低参数矩阵的秩的方向更新。注意任何具有上述衡量秩的特性的函数都可以作为本方法中的正则项使用,下述正则项公式仅为其中一个例子,并不表示只能使用下述的正则项公式。其中一种正则项可以如公式1所示,记Σ的对角值分别为σ12,…,σr,对角值构成的向量为s=[σ12,…,σr]T,用
Figure BDA0003290498090000081
Figure BDA0003290498090000082
分别表示s的1-范数和2-范数。那么正则项g(U,V,Σ)的计算方法为
Figure BDA0003290498090000083
在步骤S250中,根据Σ的值的大小削减高秩参数矩阵中重要性低的分量,将其变成低秩矩阵。该方法可通过设置参数β配置剪枝阈值,从而在神经网络的低秩性与识别率之间取得平衡。例如,一种方法为计算Σ中所有对角线上元素的和,将剪枝阈值设置为这个和的1/β,若位于第i行第i列的对角线元素小于剪枝阈值,就将Σ的第i行和第i列都删除,并将U的第i列删除,将V的第i列删除,剪枝前后矩阵的尺寸变化如图4所示。需注意任意能够削减高秩矩阵中不重要分量的方法都能作为器件剪枝方法的一种实现手段,并不局限于上述提及的方法。
步骤S220中,其中一个正则项h(U,V,Σ)起到了酉保持作用,其功能为衡量参数矩阵中U和V与酉矩阵之间的距离,从而能在后续的梯度下降中让U与V朝向能保持酉矩阵的方向更新。任何具有上述衡量酉矩阵距离的特性的函数都可以作为本方法中的正则项使用,不失一般性,以下给出一个具体的h(U,V,Σ)计算方法。对尺寸为m×r的U和尺寸为n×r的V分别应用QR分解,可以将它们表示成U=QuRu和V=QvRv的形式。其中Qu和Qv是半酉矩阵,尺寸分别与U和V相同;Ru和Rv都是尺寸为r×r的方阵。用Ir表示尺寸为r×r的单位矩阵,11×r表示长度为r且所有元素均为1的行向量,令Δu=Ir-Qu,Δv=Ir-Qv,用°运算符表示矩阵的Hadamard乘积,那么正则项h(U,V,Σ)的计算方法为
Figure BDA0003290498090000091
在迭代训练结束后,将一系列的矩阵U,Σ和V,使用光器件网络构建子方法映射到光器件上,组成具有神经网络功能的光子芯片结构,有别于现有技术只能将正方形的酉矩阵映射为光器件,本发明提出的改进后的方法可以将长方形的半酉矩阵映射为光器件。
功能光器件网络构建方法是指将训练完成的若干矩阵(包括对角阵、酉矩阵等),映射到光耦合器、衰减器、调相器和马赫增德尔干涉仪等器件上,并通过参数的调节获得与矩阵参数对应的功能性光器件网络。假设最终权重矩阵的秩为2,即U,Σ和V的尺寸分别是4×2,2×2和5×2,则可以将U和V分解为对角矩阵与一系列只在两个通道上起作用的酉矩阵的乘积:
U=T3,4T2,3T1,2T3,4T2,3Du
V=DvT2,3T3,4T4,5T1,2T2,3T3,4T4,5
其中Tj,j+1代表将第j和第j+1通道的光信号经过马赫增德尔干涉仪所经过的变换矩阵,而对角矩阵Σ,Du和Dv只需要在每个通道上插入各自独立的调相器与衰减器即可。按照
Figure BDA0003290498090000092
的顺序将光器件串联在一起后,就得到了低秩神经网络在光器件上的映射。实现例中第一层网络(秩为2)映射到光器件上的结构如图5所示。其中Du,Dv与Σ一样都是对角矩阵,Du为使用酉矩阵对角化后的U,Dv为使用酉矩阵对角化后的V。
通过以上所述方法的组合,通过神经网络权值的低秩近似和与光器件特性匹配的训练方法,在识别率基本保持不变的情况下,大幅度地降低了光神经网络芯片所需的器件数量,减小了芯片面积和操控的复杂程度。
基于以上方法,可以构建用于自动驾驶、视频监控等任意需要神经网络处理的光子计算芯片及系统,其中光芯片的输入可以为图像传感器采集到的图像数据,也可以是激光雷达等探测到的障碍物信息。
以下为与上述方法实施例对应的系统实施例,本实施方式可与上述实施方式互相配合实施。上述实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在上述实施方式中。
本发明还提出了一种减少光器件数量的光神经网络芯片构建系统,其中包括:
模块1,用于获取待向光器件映射的原始神经网络,通过对该神经网络中各权值矩阵分解为对角矩阵和酉矩阵,将该原始神经网络转换为由对角矩阵和酉矩阵组成的矩阵序列。
模块2,用于将训练集中样本输入该矩阵序列,通过比较矩阵序列中最后一个输出与该训练集的标签,得到损失值Loss;
模块3,用于通过正则化函数,得到各权值矩阵的对角矩阵和酉矩阵用以约束参数优化方向的正则项,将所有正则项与该损失值Loss相加,得到优化目标函数FullLoss;
模块4,用于用优化目标函数FullLoss对各权值矩阵的对角矩阵和酉矩阵求导,并基于得到的偏导数,通过反向传播与梯度下降对各权值矩阵的对角矩阵和酉矩阵进行更新;
模块5,用于比较更新后与更新前的对角矩阵和酉矩阵,判断两者差异是否低于阈值,若是,则执行模块7,否则执行模块6;
模块6,用于对更新后的对角矩阵和酉矩阵进行剪枝处理后再次执行该模块2到5;
模块7,用于将更新后的对角矩阵和酉矩阵映射到光器件上,以生成该原始神经网络对应的光神经网络芯片。
所述的减少光器件数量的光神经网络芯片构建系统,其中该模块1包括:
将该原始神经网络中权值矩阵W进行分解,得到半酉矩阵U、非负对角矩阵Σ和半酉矩阵V;
该模块3包括:
对该原始神经网络中每层的矩阵U,Σ与V分别计算两个正则项g(U,V,Σ)和h(U,V,Σ),将所有矩阵的正则项计算值与Loss加到一起,得到完整的优化目标函数FullLoss。
所述的减少光器件数量的光神经网络芯片构建系统,其中该正则项g(U,V,Σ)的计算过程为:
Figure BDA0003290498090000111
其中Σ的对角值分别为σ12,…,σr,对角值构成的向量为s=[σ12,…,σr]T,用
Figure BDA0003290498090000112
Figure BDA0003290498090000113
分别表示s的1-范数和2-范数;
该正则项h(U,V,Σ)的计算过程为:
Figure BDA0003290498090000114
其中Δu=Ir-Qu,Δv=Ir-Qv,Ir表示尺寸为r×r的单位矩阵,Qu和Qv是严格的半酉矩阵,尺寸分别与矩阵U和V相同。
所述的减少光器件数量的光神经网络芯片构建系统,其中该模块6包括:
采用剪枝降低半酉矩阵U、非负对角矩阵Σ和半酉矩阵V的秩。
所述的减少光器件数量的光神经网络芯片构建系统,其中该模块7包括:
将更新后的半酉矩阵V和半酉矩阵U分别分解为对角矩阵和只在n个通道上起作用的酉矩阵的乘积,根据乘积中的变换矩阵并结合
Figure BDA0003290498090000115
的顺序将光器件串联,以得到更新后的对角矩阵和酉矩阵到光器件的映射。

Claims (10)

1.一种减少光器件数量的光神经网络芯片构建方法,其特征在于,包括:
步骤1、获取待向光器件映射的原始神经网络,通过对该神经网络中各权值矩阵分解为对角矩阵和酉矩阵,将该原始神经网络转换为由对角矩阵和酉矩阵组成的矩阵序列。
步骤2、将训练集中样本输入该矩阵序列,通过比较矩阵序列中最后一个输出与该训练集的标签,得到损失值Loss;
步骤3、通过正则化函数,得到各权值矩阵的对角矩阵和酉矩阵用以约束参数优化方向的正则项,将所有正则项与该损失值Loss相加,得到优化目标函数FullLoss;
步骤4、用优化目标函数FullLoss对各权值矩阵的对角矩阵和酉矩阵求导,并基于得到的偏导数,通过反向传播与梯度下降对各权值矩阵的对角矩阵和酉矩阵进行更新;
步骤5、比较更新后与更新前的对角矩阵和酉矩阵,判断两者差异是否低于阈值,若是,则执行步骤7,否则执行步骤6;
步骤6、对更新后的对角矩阵和酉矩阵进行剪枝处理后再次执行该步骤2到5;
步骤7、将更新后的对角矩阵和酉矩阵映射到光器件上,以生成该原始神经网络对应的光神经网络芯片。
2.如权利要求1所述的减少光器件数量的光神经网络芯片构建方法,其特征在于,该步骤1包括:
将该原始神经网络中权值矩阵W进行分解,得到半酉矩阵U、非负对角矩阵Σ和半酉矩阵V;
该步骤3包括:
对该原始神经网络中每层的矩阵U,Σ与V分别计算两个正则项g(U,V,Σ)和h(U,V,Σ),将所有矩阵的正则项计算值与Loss加到一起,得到完整的优化目标函数FullLoss。
3.如权利要求2所述的减少光器件数量的光神经网络芯片构建方法,其特征在于,该正则项g(U,V,Σ)的计算方法为:
Figure FDA0003290498080000021
其中Σ的对角值分别为σ12,…,σr,对角值构成的向量为s=[σ12,…,σr]T,用
Figure FDA0003290498080000022
Figure FDA0003290498080000023
分别表示s的1-范数和2-范数;
该正则项h(U,V,Σ)的计算方法为:
Figure FDA0003290498080000024
其中Δu=Ir-Qu,Δv=Ir-Qv,Ir表示尺寸为r×r的单位矩阵,Qu和Qv是严格的半酉矩阵,尺寸分别与矩阵U和V相同。
4.如权利要求2所述的减少光器件数量的光神经网络芯片构建方法,其特征在于,该步骤6包括:
采用剪枝的方法降低半酉矩阵U、非负对角矩阵Σ和半酉矩阵V的秩。
5.如权利要求3所述的减少光器件数量的光神经网络芯片构建方法,其特征在于,该步骤7包括:
将更新后的半酉矩阵V和半酉矩阵U分别分解为对角矩阵和只在n个通道上起作用的酉矩阵的乘积,根据乘积中的变换矩阵并结合
Figure FDA0003290498080000025
的顺序将光器件串联,以得到更新后的对角矩阵和酉矩阵到光器件的映射。
6.一种减少光器件数量的光神经网络芯片构建系统,其特征在于,包括:
模块1,用于获取待向光器件映射的原始神经网络,通过对该神经网络中各权值矩阵分解为对角矩阵和酉矩阵,将该原始神经网络转换为由对角矩阵和酉矩阵组成的矩阵序列。
模块2,用于将训练集中样本输入该矩阵序列,通过比较矩阵序列中最后一个输出与该训练集的标签,得到损失值Loss;
模块3,用于通过正则化函数,得到各权值矩阵的对角矩阵和酉矩阵用以约束参数优化方向的正则项,将所有正则项与该损失值Loss相加,得到优化目标函数FullLoss;
模块4,用于用优化目标函数FullLoss对各权值矩阵的对角矩阵和酉矩阵求导,并基于得到的偏导数,通过反向传播与梯度下降对各权值矩阵的对角矩阵和酉矩阵进行更新;
模块5,用于比较更新后与更新前的对角矩阵和酉矩阵,判断两者差异是否低于阈值,若是,则执行模块7,否则执行模块6;
模块6,用于对更新后的对角矩阵和酉矩阵进行剪枝处理后再次执行该模块2到5;
模块7,用于将更新后的对角矩阵和酉矩阵映射到光器件上,以生成该原始神经网络对应的光神经网络芯片。
7.如权利要求6所述的减少光器件数量的光神经网络芯片构建系统,其特征在于,该模块1包括:
将该原始神经网络中权值矩阵W进行分解,得到半酉矩阵U、非负对角矩阵Σ和半酉矩阵V;
该模块3包括:
对该原始神经网络中每层的矩阵U,Σ与V分别计算两个正则项g(U,V,Σ)和h(U,V,Σ),将所有矩阵的正则项计算值与Loss加到一起,得到完整的优化目标函数FullLoss。
8.如权利要求7所述的减少光器件数量的光神经网络芯片构建系统,其特征在于,该正则项g(U,V,Σ)的计算过程为:
Figure FDA0003290498080000031
其中Σ的对角值分别为σ12,…,σr,对角值构成的向量为s=[σ12,…,σr]T,用
Figure FDA0003290498080000032
Figure FDA0003290498080000033
分别表示s的1-范数和2-范数;
该正则项h(U,V,Σ)的计算过程为:
Figure FDA0003290498080000034
其中Δu=Ir-Qu,Δv=Ir-Qv,Ir表示尺寸为r×r的单位矩阵,Qu和Qv是严格的半酉矩阵,尺寸分别与矩阵U和V相同。
9.如权利要求7所述的减少光器件数量的光神经网络芯片构建系统,其特征在于,该模块6包括:
采用剪枝降低半酉矩阵U、非负对角矩阵Σ和半酉矩阵V的秩。
10.如权利要求8所述的减少光器件数量的光神经网络芯片构建系统,其特征在于,该模块7包括:
将更新后的半酉矩阵V和半酉矩阵U分别分解为对角矩阵和只在n个通道上起作用的酉矩阵的乘积,根据乘积中的变换矩阵并结合
Figure FDA0003290498080000041
的顺序将光器件串联,以得到更新后的对角矩阵和酉矩阵到光器件的映射。
CN202111161801.2A 2021-09-30 2021-09-30 减少光器件数量的光神经网络芯片构建方法及系统 Pending CN114004353A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111161801.2A CN114004353A (zh) 2021-09-30 2021-09-30 减少光器件数量的光神经网络芯片构建方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111161801.2A CN114004353A (zh) 2021-09-30 2021-09-30 减少光器件数量的光神经网络芯片构建方法及系统

Publications (1)

Publication Number Publication Date
CN114004353A true CN114004353A (zh) 2022-02-01

Family

ID=79922184

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111161801.2A Pending CN114004353A (zh) 2021-09-30 2021-09-30 减少光器件数量的光神经网络芯片构建方法及系统

Country Status (1)

Country Link
CN (1) CN114004353A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116894189A (zh) * 2023-09-11 2023-10-17 中移(苏州)软件技术有限公司 一种模型训练方法、装置、设备及可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116894189A (zh) * 2023-09-11 2023-10-17 中移(苏州)软件技术有限公司 一种模型训练方法、装置、设备及可读存储介质
CN116894189B (zh) * 2023-09-11 2024-01-05 中移(苏州)软件技术有限公司 一种模型训练方法、装置、设备及可读存储介质

Similar Documents

Publication Publication Date Title
Min et al. A gradually distilled CNN for SAR target recognition
Nakkiran et al. Compressing deep neural networks using a rank-constrained topology.
CN108898213B (zh) 一种面向深度神经网络的自适应激活函数参数调节方法
Deco et al. An information-theoretic approach to neural computing
US20210049448A1 (en) Neural network and its information processing method, information processing system
CN106537421A (zh) 神经网络中的分解卷积操作
Zhang et al. Fast and robust learning in spiking feed-forward neural networks based on intrinsic plasticity mechanism
CN111401547B (zh) 一种面向乘客流分析的基于循环学习单元的htm设计方法
CN112712170B (zh) 基于输入加权脉冲神经网络的神经形态视觉目标分类系统
CN111382840B (zh) 一种面向自然语言处理的基于循环学习单元的htm设计方法
CN113159303A (zh) 一种基于量子线路的人工神经元构造方法
CN112766603A (zh) 一种交通流量预测方法、系统、计算机设备及存储介质
CN111144500A (zh) 基于解析高斯机制的差分隐私深度学习分类方法
CN106526565A (zh) 一种基于支持向量机的单比特空间谱估计方法
Du et al. Efficient network construction through structural plasticity
CN114004353A (zh) 减少光器件数量的光神经网络芯片构建方法及系统
Luo et al. Pruning method for dendritic neuron model based on dendrite layer significance constraints
Harikrishnan et al. Handwritten digit recognition with feed-forward multi-layer perceptron and convolutional neural network architectures
CN116757255A (zh) 一种改进MobileNetV2的分心驾驶行为检测模型轻量化方法
CN116629332A (zh) 一种基于光学储备池计算的信号补偿方法
CN116013309A (zh) 基于轻量化Transformer网络的语音识别系统及方法
Lu et al. Modularized multi-stage binarized deep-model compression and performance recovery
Kepesiova et al. Comparison of Optimization Techniques for Process Recognition Using Deep Neural Network
Nuno-Maganda et al. A hardware architecture for image clustering using spiking neural networks
Luo et al. Pruning of Dendritic Neuron Model with Significance Constraints for Classification

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination