CN108475348A - 卷积神经网络 - Google Patents
卷积神经网络 Download PDFInfo
- Publication number
- CN108475348A CN108475348A CN201680078824.8A CN201680078824A CN108475348A CN 108475348 A CN108475348 A CN 108475348A CN 201680078824 A CN201680078824 A CN 201680078824A CN 108475348 A CN108475348 A CN 108475348A
- Authority
- CN
- China
- Prior art keywords
- convolution
- simulation
- output
- capacitor
- convolutional neural
- 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.)
- Granted
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 89
- 238000004088 simulation Methods 0.000 claims abstract description 79
- 238000005070 sampling Methods 0.000 claims abstract description 62
- 238000000034 method Methods 0.000 claims abstract description 51
- 230000006870 function Effects 0.000 claims abstract description 50
- 239000003990 capacitor Substances 0.000 claims description 77
- 238000013528 artificial neural network Methods 0.000 claims description 14
- 230000008878 coupling Effects 0.000 claims description 7
- 238000010168 coupling process Methods 0.000 claims description 7
- 238000005859 coupling reaction Methods 0.000 claims description 7
- 238000012546 transfer Methods 0.000 claims description 7
- 238000013461 design Methods 0.000 abstract description 10
- 239000010410 layer Substances 0.000 description 90
- 230000009466 transformation Effects 0.000 description 15
- 238000012545 processing Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 239000000047 product Substances 0.000 description 6
- 238000012549 training Methods 0.000 description 6
- 210000004027 cell Anatomy 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000000712 assembly Effects 0.000 description 3
- 238000000429 assembly Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000007876 drug discovery Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 108090000623 proteins and genes Proteins 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical group [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 210000000349 chromosome Anatomy 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 239000012084 conversion product Substances 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000004100 electronic packaging Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 210000004072 lung Anatomy 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000008672 reprogramming Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M1/00—Analogue/digital conversion; Digital/analogue conversion
- H03M1/66—Digital/analogue converters
- H03M1/74—Simultaneous conversion
- H03M1/80—Simultaneous conversion using weighted impedances
- H03M1/802—Simultaneous conversion using weighted impedances using capacitors, e.g. neuron-mos transistors, charge coupled devices
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)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Power Engineering (AREA)
- Image Analysis (AREA)
- Complex Calculations (AREA)
Abstract
本文公开了实现更有效和更少资源密集的CNN的系统和方法。具体而言,公开了使用采样模拟技术(SAT)方法在CNN在模拟领域中的应用。与具有数字逻辑和存储器的CNN设计相比,在SAT中使用CNN设计可降低功耗和运行速度。带有SAT的CNN设计的低功耗使传感器设备能够以非常低的功率检测功能,以实现隔离操作。
Description
相关申请的交叉引用
本申请根据35U.S.C.§120要求名称为“卷积神经网络”、发明人为Eric Nestleret al.的2015年12月15日提交的美国申请序列No.62/267,847和2016年12月14日提交的美国申请序列No.15/379,114的优先权的权益。先前申请的公开内容被认为是本申请的公开内容的一部分并且通过引用并入本文。
技术领域
本发明涉及神经网络领域,尤其涉及卷积神经网络。
背景技术
神经网络是用于估计可能依赖于大量输入的近似函数的数学模型。卷积神经网络是一种用于特征检测的前馈神经网络,其中人造神经元(数学函数)平铺,以便它们响应输入场中的重叠区域。神经网络是计算和资源密集型的。
发明内容
公开使用采样模拟技术的神经网络。卷积神经网络(CNN)是用于特征检测的算法和电路。在一些实施方式中,特征的检测或分析可以用于图像数据、音频数据或需要复杂分析以检测其特征的任何其他复杂数据。根据一些实施方式,当输入数据采用具有高度相关局部变量的数组形式并具有移位不变性时,CNN会很有帮助。CNN算法通常用数字逻辑和存储器来实现。然而,用数字逻辑和存储器实现CNN算法是资源密集型的。
本文公开了实现更有效和更少资源密集的CNN的系统和方法。具体而言,公开了使用采样模拟技术(SAT)方法在CNN在模拟领域中的应用。与具有数字逻辑和存储器的CNN设计相比,在SAT中使用CNN设计的功耗更低,运行速度更快。在一个例子中,与SAT一起使用CNN设计使用的功率少于通常的数字CNN设计使用的功率的十倍。在一个例子中,使用带有SAT的CNN设计可以使操作速度提高10倍以上。使用SAT的CNN操作速度更快的一个原因是,由于电荷共享的同时性,模拟版本可以在单个时钟周期内完成一个数字版本需要很多时钟周期的操作。带有SAT的CNN设计的较低功率使用可以允许传感器设备也能够以非常低的功率检测功能,以用于诸如IOT(物联网)设备的隔离操作。
根据一个实施方式,使用采样模拟技术的卷积神经网络包括:包括第一和第二模拟输入数据点的输入源;第一组电容器,用于分析所述第一模拟输入数据点并输出第一模拟卷积输出,和第二组电容器,用于分析所述第二模拟输入数据点并输出第二模拟卷积输出。所述第一和第二模拟卷积输出均包括多个特征。
在一些实施方式中,卷积神经网络还包括可变电容结构阵列,其中所述第一和第二卷积输出通过所述可变电容结构阵列进行多路复用,以产生多路复用的卷积输出。
在一些实施方式中,所述第一和第二组电容器包括固定电容器,并且固定电容器是模拟存储器单元。在一些实施方式中,所述第一和第二组电容器是具有固定权重的可变电容单元。在一些例子中,固定权重使用存储电容器尺寸实现,并且存储电容器尺寸等于所述固定权重的权重。
在一些实施方式中,第一组电容器和第二组电容器由输入源驱动。
在各种实施方式中,卷积神经网络还包括具有电荷的第一固定电压源和第一电容器数模转换器(capDAC)。由所述第一capDAC对来自所述第一固定电压源的电荷进行采样以产生第一偏压值,和所述第一偏压值添加到所述第一输出。
在一些实施方式中,卷积神经网络还包括与所述第一和第二模拟卷积输出耦合的子采样器,其中所述子采样器平均所述第一和第二模拟卷积输出以产生平均卷积输出,并且其中,所述子采样器使用非线性传递函数处理所述平均卷积输出。在一些例子中,非线性传递函数是模拟整流函数。
在一些实施方式中,卷积神经网络还包括耦合所述第一模拟卷积输出的子采样器,其中第一模拟卷积输出包括值的子窗口,并且其中子采样器包括多个模拟电压比较器,用于确定所述第一模拟卷积输出的值的子窗口的最大值。
根据一些例子,输入源包括多个模拟输入数据点,并且使用多组电容器,每组电容器分析模拟输入数据点的子窗口。
根据一个实施方式,一种使用采样模拟技术来实现神经网络的方法,包括:接收包括第一和第二模拟输入数据点的模拟输入数据,使用第一组电容器分析所述第一模拟输入数据点以产生第一模拟卷积输出,和使用第二组电容器分析所述第二模拟输入数据点以产生第二模拟卷积输出,其中产生所述第一和第二模拟卷积输出包括对多个特征执行模拟卷积操作。根据一个例子,分析包括执行卷积操作。
在一些实施方式中,该方法还包括通过可变电容结构阵列对所述第一和第二模拟卷积输出进行多路复用,以产生模拟多路复用的卷积输出。
在一些实施方式中,所述第一和第二组电容器是可变电容单元,所述第一组电容器具有第一固定权重,并且所述第二组电容器具有第二固定权重,并且产生第一模拟卷积输出包括将所述第一输入数据点与所述第一固定权重相乘,和产生第二模拟卷积输出包括将所述第二输入数据点与所述第二固定权重相乘。
在一些实施方式中,该方法包括使用第一电容器数模转换器通过采样来自第一固定电压源的比例电荷来产生第一偏压值,和将所述第一偏压值添加到所述第一输出。
在一些实施方式中,该方法包括将所述第一模拟卷积输出和所述第二模拟卷积输出在子采样器处平均。在一些实施方式中,第一模拟卷积输出包括值的子窗口,并且该方法包括确定值的子窗口的最大值。
根据一个实施方式,使用采样模拟技术的卷积神经网络包括:包括模拟输入数据的输入,多组电容器,每组电容器被配置为分析所述模拟输入数据的相应子窗口并输出用于相应子窗口的模拟卷积输出,其中所述模拟卷积输出包括多个特征,和耦合所述模拟卷积输出的模拟子采样器,其中所述模拟子采样器被配置为减小所述模拟卷积输出的多个特征中的至少一个的尺寸。
在一些实施方式中,所述多组电容器输出相应的多个模拟卷积输出,并且多个模拟子采样器耦合到所述多个模拟卷积输出。多个模拟卷积输出均包括多个特征,并且多个模拟卷积输出中的每一个都基于来自各组电容器的输出的卷积。多个模拟子采样器中的每一个被配置为减小相应模拟卷积输出的多个特征中的至少一个的尺寸。
在一些实施方式中,所述组电容器包括固定电容器,并且固定电容器是模拟存储器单元。在一些实施方式中,所述组电容器包括具有固定权重的可变电容单元。
在一个实施方式中,卷积神经网络包括具有电荷的固定电压源和电容器数模转换器(capDAC)。来自所述固定电压源的电荷通过所述capDAC采样以产生偏压值,和偏压值添加到所述多组电容器的一组的输出中。
附图说明
为了提供对本公开及其特征和优点的更完整理解,参考以下结合附图的描述,其中相同的附图标记表示相同的部件,其中:
图1是说明卷积神经网络的图;
图2是示出根据本公开的一些实施例的卷积复用电路实现的图;
图3是示出根据本公开的一些实施例的另一个卷积复用电路实现的图;
图4是示出根据本公开的一些实施例的卷积电路的图;
图5是示出根据本公开的一些实施例的非重叠子采样的图;
图6是示出根据本公开的一些实施例的用于子采样的电路的图;
图7是示出根据本公开的一些实施例的非对称变换的图;
图8是示出根据本公开的一些实施例的另一非对称变换的图;
图9是示出根据本公开的一些实施例的对称非线性变换的图;
图10是示出根据本公开的一些实施例的非对称变换的图;
图11是示出根据本公开的一些实施例的使用采样模拟技术来实现神经网络的方法的流程图。
具体实施方式
提供系统和方法以减少使用采样模拟技术(SAT)计算卷积神经网络(CNN)的功率和等待时间。CNN被用于各种应用。例如,CNN用于字符识别。CNN是检测复杂数据中的模式或特征的一种非常强大的方式。
只用电子开关和电容器元件在电容器之间进行电荷共享,从而在模拟域中执行采样模拟技术信号处理。采样模拟滤波器在不首先数字化信号的情况下过滤输入的模拟信号。采样模拟技术采用了与模拟信号处理相结合的离散时间滤波器架构,可消除任何数据路径量化噪声问题以及模数转换和数模转换步骤。
卷积神经网络
有许多不同形式的CNN结构。图1显示了具有七层的深神经网络结构的框图。这些层包括与子采样层交替的卷积层。每个层都是计算密集型的。
图1所示的CNN中的每一层包括输入图像像素数据102的N×N子窗口的卷积。在图1的第一层104中,子窗口是5×5像素,步幅为1。因此,随着图像数据被扫描和卷积120,每个子窗口从最后的子窗口移动一个像素。通过选择N和跨度值,子窗口可以是重叠的或非重叠的。
第二层106中的第二操作122是子采样操作。它是一个2×2的子窗口加权平均值,随后是一个非线性函数或压缩函数,用于产生每个子窗口的输出数据。子采样结果是当子采样使用2×2窗口时14×14的处理像素数据阵列。然后通过卷积运算124处理所得到的子采样数据106,得到作为卷积层的第三层108。来自第三层108的数据被二次采样126,导致第四层110,其是二次采样层。如图1所示,在卷积层和子采样层之间可以有许多层对交替。在图1中,第四层110上的全连接操作128导致第五层112,其是卷积层。在一个示例中,第四层110完全连接到第五层112,使得第四层110的每个输出连接到第五层112的每个输入。第四层110的每个输出可以经由单独的权重和非线性函数连接到第五层的输入。请注意,个人权重是学习权重。类似地,在第五层112上的全连接操作导致第六层114。在第六层114上执行高斯连接操作以产生作为输出的第七层116。
在其他实施方式中,第二操作从非线性函数开始,然后是子窗口加权平均值。在其他实现中,非线性函数是卷积层的一部分,使得卷积层的输出是非线性的。下面更详细地描述卷积和子采样层。
卷积层
根据一个实施方式,每个卷积步骤采用图像数据的子窗口并且通过可训练和独立的权重对卷积的每个输入进行加权。在一个例子中,每个和中有25个可编程权重。每个特征的图像数据的每个子窗口扫描使用相同的权重。此外,还有一个可训练的偏置权重加到卷积和上。
特征是输入数据的单独可测量属性。例如,特征可以包括边缘检测器和颜色斑点检测器。在其他示例中,功能专注于特定于输入数据集和标签的更精细的细节。在各种应用中,特征可以是数字或结构的。神经网络从输入数据中学习特征,神经网络的每一层从输入数据中提取一些特征。在一些实施方式中,附加信息以数据的派生特征的形式提供给神经网络。
在图1中,来自第一卷积操作120的卷积输出被示出为第一层104中的六个特征。特征的数量是与应用有关的。每个功能都是一组独立的可编程权重,用于图像数据的卷积扫描。对于特定特征的数据的所有卷积和使用相同的权重,并且每个特征与唯一的一组权重相关联。
每个特征的每个卷积被实现为产品的总和,如下面的公式1.1所示。在图1的例子中,使用5×5子窗口,N=25:
权重,wi和bn是可编程的并且表示学习的行为。使用SAT,使用可编程权重和偏差的整个卷积可以被动地实现。
在这个应用中,多个卷积可以以各种方式实现。图像数据以特定的帧速率(帧每秒(fps))更新。为了实时操作,在下一个图像数据更新(1/fps秒)之前完成单层所有特征的卷积。下面描述用SAT实时实现卷积的两种示例性方法。其他使用SAT实现CNN的方法包括本文具体描述的方法的组合。
根据一些实施方式,数据可以有多种形式。例如,在一个实施方式中,CNN用于DNA定位。
子采样层
CNN的输入经历了多个层次。在如图1所示的一些实施方式中,输入在卷积层(例如,第一层104、第三层106和第五层112)和子采样层(例如,第二层106和第四层110)之间交替。在其他实现中,卷积和子采样层处于非交替顺序。例如,一个实现包括多个连续的卷积层。另一个实现包括多个连续的子采样层。
子采样降低了图像数据的复杂性和空间分辨率,这降低了输出对变化的敏感度。子采样还通过一些因素来减少特征的大小。在一个示例中,特征尺寸的减小是通过对前一卷积层的输出的一组M×M元素进行求和来完成的。在另一个例子中,特征尺寸的减小是通过平均一组M×M元素并将平均值乘以一个常数来实现的。
在CNN的一些描述中,子采样被描述为汇集。有很多合并方法。一种合并方法是确定M×M元素的总和。另一种合并方法是确定M×M元素的最大值。在其他实现中,子采样区域可以与其他子采样区域重叠。例如,在一个4×4的数字网格(可能是一个图层的输出)中,使用不重叠的2×2区域进行汇集会产生一个2×2输出。在另一个例子中,在一个4×4的数字网格中,使用重叠的2×2区域进行汇集会产生3×3输出。
非线性
根据一些实施方式,CNN结构可以在卷积和之后,在子采样或合并之后,或者在每层的卷积和和二次采样之后使数据通过非线性函数。可以用于处理CNN数据的三个对称函数包括:erfc(-x)-1传递函数、sigmoid函数和Tanh函数。另外,CNN数据可以通过非对称的ReLU功能处理,这与整流功能类似。在一些实施方式中,在进入下一个卷积层之前,来自二次采样层的各个和值通过压扁函数。压扁函数可以具有各种形状,并且压扁函数的形状可以是对称的或不对称的。
特征
在图1所示的CNN图中,第一层104(卷积层)和第二层106(子采样层)具有相同数量的特征。具体地,在图1中,第一层104和第二层106各自具有六个特征。第三层108(第二卷积层)具有16个特征。通过将第二层106特征的图像像素的几个其他映射添加到第三层108的特征来增加特征的数量。因此,卷积和子采样层的特征的数量可以不同。特征数量的扩大说明了网络中的对称性突破。另外,卷积和子采样层可以具有不同的特征。特别是,特征可以在特征数据从一层移动到下一层时转换。根据一些例子,权重是在训练阶段确定的,权重在训练阶段结束后保存。在一些例子中,不同的特征保留在一个卷积层中,与次采样层保持的特征不同。
卷积完全实现
在卷积层中,来自前一个子采样层的和乘以可训练权重。此外,还添加了可训练的偏见。
在卷积完整实现中,设备电路中存在每层的权重。例如,参照图1,卷积完整实现包括用于第一层104的六个特征的独立可编程权重和卷积和的每个元素的单独权重(在上面的公式1中示出)。这是每个总数的25个权重。在一个例子中,对于第一层104的六个特征中的每一个,存在28×28=784个卷积,导致来自卷积操作120的输出阵列中的784个子卷对于六个特征中的每一个特征。因此,第一层104中的卷积总数是6*28*28=4704,并且由于对于每个卷积有25个加权,所以导致5*4,704=117,600加权和。
在一些实施方式中,权重被捆绑,使得每个移位窗口中的权重具有相同的值。当用SAT实施CNN时,每个加权总和都有一个单独的CapDAC(电容器数模转换器)。在一个示例中,当权重被捆绑时,CapDAC被捆绑,并且绑定的CapDAC被编程在单个操作中。因此,所有相同的权重可以在一次操作中进行编程,而不是分别对每个权重进行编程。这有助于提高CNN权重编程的效率。
一种用于减少加权和数的方法是增加子窗口的步幅。增加子窗口的跨度意味着为每个子窗口移动子窗口超过一个像素。例如,对于两个步幅,子窗口横向移动两个像素,垂直移动两个像素,因此子窗口的数量减少了四倍,总加权和减少了四倍。
在一个实施方式中,如上所述的全卷积实现具有117,600加权和,因此具有117,600个模拟存储器电容器,其连接到117,600个数字至是权重的模拟转换器(DAC)。在一个例子中,DAC是hybridCapDAC。这种实现是快速的,因为所有卷积和在通过权重进行缩放所需的几个时钟周期内并行发生。这个实现也是设备领域最大的。对于较大的图像数据阵列,完整的实现方法可能会大小和成本过高。
卷积复用实现
对于以选定帧速率成像数据,多个卷积和子采样层可以流水线化,并且每层可以独立并行操作。每个图层在帧率期间内完成。复用的边界可以通过多种方式实现。
图2示出了根据本公开的一些实施例的卷积复用电路200。在电路200中,每个像素具有连接到图像源或由图像源驱动的一组电容器。第一像素202耦合到第一组电容器212,并且第二像素204耦合到第二组电容器214。在一个示例中,第一组电容器212和第二组电容器214分别是存储器单元的5×5子窗口。在一些例子中,如图2所示,使用图像像素的5×5子窗口扫描,并且有5个存储单元连接到每个像素源。在一个例子中,存储器单元是模拟存储器单元。
在图2中,记忆单元是固定电容器,如第一组212和第二组214电容器中所示。第一212和第二214组电容器被多路复用(216、218)到可变电容结构阵列222a-222d。可变电容结构222a-222d可以有多种形式。在一个示例中,可变电容结构222a-222d是hybridCapDAC结构220。hybridCapDAC结构220输出卷积输出224。
在一个示例中,图2的可变电容结构222a-222d形成单个5×5矩阵子窗口。在其他实现中,可变电容单元的任何数量的阵列或矩阵可以被复用以减少卷积时间。
图3示出根据本公开的一些实施例的直接使用可变电容单元的卷积多路复用电路300。在电路300中,每个像素具有耦合到图像源的一组可变电容器。第一像素302耦合到第一组可变电容器312,并且第二像素304耦合到第二组可变电容器314。在一个示例中,第一组电容器312和第二组电容器314分别是加权记忆单元5×5子窗口。在一些实施方式中,存储单元具有可编程权重。在一些实施方式中,每个存储器单元的权重在神经网络的学习阶段之后固定,其中权重被学习。因此,权重可以直接作为等于重量的存储电容器尺寸。第一组电容器312具有第一子窗口卷积输出322,并且第二组电容器314具有第二子窗口卷积输出324。
根据一些实施方式,图3所示的架构受重量分辨率要求的影响,因此当重量分辨率要求高时,可变电容器结构可能太大而不能实现为阵列。然而,如图2所示的多路复用可以更小,并且可以作为阵列实现,即使对于高重量分辨率要求也是如此。
偏见加法
在一些实施方式中,加权值的卷积和随着可训练的偏压值而偏移。图4示出了根据本公开的一些实施例的包括加权偏置的卷积电路400的图。在电路400中,每个像素具有耦合到图像源的一组可变电容器,类似于图3所示的电路300。第一像素402耦合到第一组可变电容器412,并且第二像素404是耦合到第二组可变电容器414。在一个示例中,第一组电容器412和第二组电容器414是加权存储器单元的5×5子窗口。第一组电容器412具有第一输出416,并且将第一加权偏置432添加到第一输出以产生第一子窗口卷积输出422。第二组电容器414具有第二输出418,第二加权偏置434被加到第二输出418以产生第二子窗口卷积输出424。第一432和第二434加权偏置使加权值的卷积和移位。
第一加权偏置432添加来自由CapDAC结构426采样的固定电压源436的比例电荷值。类似地,第二加权偏置434被添加有来自由CapDAC结构428采样的固定电压源438的比例电荷值。在各种示例中,CapDAC结构426、428是HybridCapDAC。
子采样层实现
子采样层涉及卷积输出的M×M平均值,然后是非线性变换。根据一个实施方式,M×M平均值是卷积输出的非重叠M×M子窗口的平均值。M×M平均值实质上抽取了卷积步骤的空间阵列输出。然而,卷积层的电容器输出的M×M子集的电荷共享可以直接用作平均函数。在一些例子中,当共享卷积层的电容器输出的M×M子集直接作为平均函数时,可能存在规范化问题。
在一些实施方式中,子采样是重叠的。在其他实现中,子采样不重叠。图5示出了根据本公开的一些实施例的其中子采样不重叠的卷积复用电路500。电路500包括可变capDAC502的第一子窗口和可变capDAC 504的第二子窗口。第一子窗口502和第二子窗口504中的capDAC可以是hybridCapDAC。第一子窗口502输出第一卷积输出506,第二子窗口504输出第二卷积输出508。第一506和第二508输出被输入到包括开关元件的子采样加法器510。子采样加法器510包括耦合到第一输出506的第一开关526和耦合到第二输出508的第二开关528。在实施方式中,第一526和第二528开关防止子采样的重叠。
来自子采样切换元件510的子采样输出512被输入到可变capDAC514。可变capDAC514充当可训练权重。在一些例子中,可变capDAC 514是hybridCapDAC。将偏置516添加到来自可变capDAC 514的输出以产生子窗口子采样输出522。偏置516与来自由CapDAC结构518采样的固定电压源520的比例电荷值相加。
当子采样不与子窗口重叠时,则实现简单且被动。当使用重叠时,卷积和的每个输出驱动后续子采样层的几个输入。
最大合并实施
根据一个实施方式,另一种子采样方法称为MAX合并。MAX合并使用输出的M×M子窗口值的最大值。在开关电容(开关电容)电路中实现MAX功能意味着所有M×M元件之间的比较事件。
图6示出了根据本公开的一些实施例的用于子采样并且特别用于MAX合并的电路600。MAX合并电路600包括一组六个模拟电压比较器602a-602f,用于将窗口620的2×2子窗口606的四个元件604a-604d与子窗口606中的其他元件604a-604d进行比较。如图6在比较器602b处将第一元件604a与第二元件604b进行比较,在比较器602a处将第一元件604a与第三元件604c进行比较,并将第一元件604a与比较器602c处的第四元件604d进行比较。类似地,第二元件604b分别在比较器602b、602d和602e处与第一元件604a、第三元件604c和第四元件604d进行比较。第三元素604c分别在比较器602a、602d和602f处与第一元素604a、第二元素604b和第四元素604d进行比较。第四元素604d分别在比较器602c、602e和602f处的第一元素604a、第二元素604b和第三元素604c进行比较。在各种实施方式中,模拟电压比较器可以是连续时间比较器或时钟比较器。
比较器602a-602f的输出在解码器608被解码以确定最大元素。在一个示例中,解码器608是组合逻辑块。解码器608输出数字判定610,其选择四个开关612a-612d中的哪一个闭合以启用MAX操作输出,其中开关612a-612d将来自每个子窗口604a-604d的线连接到输出线614。开关闭合时,来自相应子窗口的数据将被输出到输出线614。
非线性函数实现
如上所述,可以在CNN的子采样层中使用各种不同的传递函数。当非线性传递函数用于CNN的子采样层时,非线性传递函数的形状具有广泛的可能性。根据一个方面,用SAT实现CNN层包括选择小而低功率的非线性传递函数。根据一些实施方式,模拟整流函数用于CNN的子采样层,并且整流大于零或小于零。特别是,模拟整流是理想功能输入和输出的恒定偏移量。可训练的偏置项可以补偿常量偏移量。
图7、8和9显示了创建非线性变换的三种方法。图7示出了根据本公开的一些实施例的包括二极管整流电路702的非对称变换700。非对称变换700导致整流传递函数704。图8示出了根据本公开的一些实施例的包括MOSFET整流802的非对称变换800。非对称变换800导致整流传递函数804。图9示出包括MOSFET钳位902的对称非线性变换900。对称非线性变换900导致传递函数904。
图7、8和9包括分流元件,其连接到基于电容的电荷输出。基于电容的电荷输出的一个例子是通过变换的子窗口总和输出。变换700、800和900可以用于通过实现电荷共享(CS)事件来改变子采样层输出上的电荷。
根据各种实施方式,可以调节过程、温度和电压变化。在各种示例中,检测成功可能对过程、温度和电压的变化敏感。
图10示出了包括MOSFET整流器1002和第一1006和第二1008开关的非对称变换1000。第一个1006和第二个1008开关分别根据第一个1016和第二个1018的时序图关闭。图10示出了当电压为负时,在时钟阶段2期间使用电荷共享事件对子窗口总和上的电荷放电的实现。其他功能可以用类似的方式实现。非对称变换1000导致整流传递函数1004。
在一些实施方式中,非线性传递函数或压缩函数在卷积操作以及汇集操作的输出处被执行。
应用
卷积神经网络(CNN)通过共享特征间的权重来使用空间和时间结构。CNN的体系结构允许在功能激活中进行等效,从而使CNN成为图像和视频应用的理想选择。例如,诸如手写数字识别的字符识别,以及更广泛地,图像识别/分类以及视频识别/分类。根据一些实施方式,当输入数据是具有高度相关的局部变量的阵列形式并具有移位不变性时,使用CNN。
言语和自然语言处理是CNN可以用来利用问题内在结构优势的另外两个领域。自动语音识别(ASR)是历史上通过使用隐马尔可夫模型(HMM)或高斯混合模型(GMM)来解决问题的一种应用。然而,现在最先进的技术是使用深神经网络,特别是针对ASR的CNN。已经接受过ASR培训的CNN也可用于在嘈杂的环境中识别语言。
CNN具有非常广泛的应用范围,包括药物发现和化学分析。在一个应用中,CNN被训练来预测分子的生物活性和化学相互作用。生物系统通过分子水平的相互作用进行操作,因此能够使用CNN预测分子间的相互作用,这可以极大地帮助药物发现。
在其他应用中,CNN可用于DNA映射。DNA映射用于描述染色体上基因的位置,并确定基因之间的距离。
图11示出了根据本公开的一些实施例的用于使用采样模拟技术来实现神经网络的方法1100。在步骤1102,接收包括第一和第二模拟输入数据点的模拟输入数据。在步骤1104,利用第一组电容器分析第一模拟输入数据点以产生第一输出。在步骤1106,利用第二组电容器分析第二模拟输入数据点以产生第二输出。在步骤1108,基于第一和第二输出产生模拟卷积输出。如上所述,模拟卷积输出包括多个特征。
在一些例子中,该方法包括通过可变电容结构阵列复用第一和第二输出以产生模拟卷积输出。在一些实施方式中,所述第一和第二组电容器是可变电容单元,并且所述第一和第二组电容器各自具有固定权重。产生第一输出包括将第一输入数据点乘以第一固定权重,并且产生第二输出包括将第二输入数据点乘以第二固定权重。
在一些实施方式中,第一偏压值是通过从第一固定电压源取样比例电荷而产生的,并将第一偏压值添加到第一输出。比例电荷由第一电容器数模转换器取样。在一些例子中,模拟卷积输出在子采样器的第二模拟卷积输出求平均值。在一些例子中,模拟卷积输出包括值的子窗口,并且确定值的子窗口的最大值。
变化和实施
在各种实施方式中,如本文所述的SAT可以用于任何类型的CNN。根据一些实现,SAT用于密集卷积网络。在密集卷积神经网络中,每一层都以前馈方式与其他层连接。对于每个图层,输入都包含所有前面的图层的特征。同样,对于每个图层,图层的要素都会输入到所有后续图层。
在上述实施例的讨论中,电容器、时钟、DFF、分频器、电感器、电阻器、放大器、开关、数字核心、晶体管和/或其他组件可容易地被替换、代替或以其他方式修改,以适应特定电路需求。此外,应该注意的是,使用互补的电子设备、硬件、软件等提供了用于实现本公开的教导的可选方案。
在一个示例实施例中,图的任何数量的电路可以在相关联的电子设备的板上实现。该板可以是通用电路板,其可以容纳电子设备的内部电子系统的各种组件,并且进一步为其他外围设备提供连接器。更具体地说,电路板可以提供电连接,通过该电连接系统的其他部件可以电连通。基于特定的配置需求、处理需求、计算机设计等,任何合适的处理器(包括数字信号处理器、微处理器、支持芯片组等等)、计算机可读非暂时性存储器元件等可以适当地耦合到电路板。其他组件如外部存储器、附加传感器、音频/视频显示控制器以及外围设备可作为插入式卡、电缆或集成到电路板本身。在各种实施例中,所描述的功能在此可以仿真形式实现为运行在支持这些功能的结构中布置的一个或多个可配置(例如,可编程)元件内的软件或固件。提供仿真的软件或固件可以被提供在包括允许处理器执行那些功能的指令的非暂时性计算机可读存储介质上。
在另一个示例实施例中,附图的电路可以被实现为独立模块(例如,具有被配置为执行特定应用或功能的相关组件和电路的设备),或者作为插入式模块实施到电子设备的专用硬件中。注意,本公开的特定实施例可以容易地部分地或全部地包括在片上系统(SOC)封装中。SOC代表将计算机或其他电子系统的组件集成到单个芯片中的IC。它可能包含数字、模拟、混合信号和通常射频功能:所有这些功能都可以在单个芯片基板上提供。其他实施例可以包括多芯片模块(MCM),多芯片模块(MCM)具有位于单个电子封装内并且被配置为通过电子封装彼此紧密相互作用的多个单独的IC。在各种其他实施例中,可以在专用集成电路(ASIC)、现场可编程门阵列(FPGA)和其他半导体芯片中的一个或多个硅芯中实现CNN功能。
在另一个示例实施例中,附图的电路可以被实现为CNN电路的训练的一部分。训练是处理CNN块的输出以确定各种权重的反馈路径。
还必须指出,仅仅为了示例和教导的目的而提供了在此概述的所有规格、尺寸和关系(例如,处理器的数量、逻辑操作等)。在不脱离本公开的精神或所附权利要求的范围的情况下,这些信息可以有相当大的变化。这些规范仅适用于一个非限制性示例,因此它们应该被解释为这样。在前面的描述中,已经参照特定处理器和/或组件布置描述了示例实施例。在不脱离所附权利要求的范围的情况下,可以对这样的实施例进行各种修改和改变。因此,说明书和附图被认为是说明性的而不是限制性的。
注意,上面参考附图讨论的活动适用于涉及信号处理的任何集成电路,特别是那些可以执行专用软件程序的集成电路或者算法,其中的一些可以与处理数字化的实时数据相关联。某些实施例可涉及多DSP信号处理、浮点处理、信号/控制处理、固定功能处理、微控制器应用等。
在某些情况下,本文讨论的特征可适用于医疗系统、科学仪器、无线和有线通信、雷达、工业过程控制、音频和视频设备、电流感测、仪器仪表(可高度精确)以及其他基于数字处理的系统。
此外,可以在用于医学成像、患者监测、医疗仪器和家庭保健的数字信号处理技术中提供以上讨论的某些实施例。这可能包括肺部监护仪、加速度计、心率监测器、起搏器等。其他应用可能涉及用于安全系统(例如稳定性控制系统、驾驶员辅助系统、制动系统、信息娱乐系统和任何类型的内部应用)的汽车技术。此外,动力总成系统(例如混合动力和电动车辆)可以在电池监控、控制系统、报告控制、维护活动等中使用高精度数据转换产品。
在其他示例场景中,本公开的教导可以应用于包括帮助驱动生产力、能量效率和可靠性的过程控制系统的工业市场中。在消费者应用中,上面讨论的信号处理电路的教导可以用于图像处理、自动对焦和图像稳定(例如,用于数码相机、摄像机等)。其他消费类应用可包括家庭影院系统的音频和视频处理器、DVD刻录机和高清电视。其他消费者应用可以涉及高级触摸屏控制器(例如,用于任何类型的便携式媒体设备)。因此,这些技术可能成为智能手机、平板电脑、安全系统、个人电脑、游戏技术、虚拟现实、模拟培训等的一部分。
注意,利用这里提供的许多例子,交互可以用两个、三个、四个或更多个电子部件来描述。但是,这仅仅是为了清楚和示例的目的而完成的。应该意识到,系统可以以任何合适的方式进行合并。沿着相似的设计替代方案,图中所示的任何组件、模块和元件可以以各种可能的配置进行组合,所有这些都清楚地在本说明书的宽范围内。在某些情况下,通过仅引用有限数量的电气元件来描述给定流程集合的一个或多个功能可能更容易。应该理解的是,附图及其教导的电路易于扩展并且可以容纳大量的部件以及更复杂/复杂的布置和配置。因此,所提供的示例不应该限制电路的范围或者禁止广泛的教导,因为电路可能被应用于无数其他体系结构。
注意,在本说明书中,对“一个实施例”、“示例实施例”、“实施例”、“另一实施例”、“一些实施例”、“各种实施例”、“其他实施例”、“替代实施例”中包括的各种特征(例如元件、结构、模块、组件、步骤、操作、特性等)等旨在表示任何这样的特征包括在本公开的一个或多个实施例中,但可能或可能不一定组合在相同的实施例中。
注意到与CNN有关的功能也仅仅说明了一些可能由图中所示系统执行的或可能在系统内执行的CNN功能。在适当的情况下,这些操作中的一些可以被删除或移除,或者在不脱离本公开的范围的情况下可以相当大地修改或改变这些操作。另外,这些操作的时间可能会有相当大的改变。为了举例和讨论的目的,提供了前面的操作流程。本文描述的实施例提供了实质的灵活性,因为在不脱离本公开的教导的情况下可以提供任何合适的布置、时间顺序、配置和定时机制。
本领域技术人员可以确定许多其他改变、替代、变化、变更和修改,并且本公开意图包括落入所附权利要求的范围内的所有这些改变、替换、变化、更改和修改。为了协助美国专利商标局(USPTO)以及另外对本申请所发布的任何专利的任何读者解释所附权利要求,申请人希望指出,申请人:(a)不希望任何所附权利要求援引35U.S.C.的第六(6)段,第112条,因为它在本申请提交日存在,除非在特定的权利要求中特别使用了“用于......的装置”或“用于......的步骤”;和(b)无意通过说明书中的任何陈述以任何未在所附权利要求中反映的方式限制本公开。
其他注意事项、示例和实施
注意,上述设备的所有可选特征也可以关于本文描述的方法或过程来实现,并且示例中的细节可以在一个或多个实施例中的任何地方使用。
在第一个示例中,提供了一个系统(可包括任何合适的电路、分频器、电容器、电阻器、电感器、ADC、DFF、逻辑门、软件、硬件、链路等),其可以是任何类型的计算机的一部分,其可以进一步包括耦合到多个电子部件的电路板。该系统可以包括用于使用第一时钟将来自数字核心的数据定时到宏的第一数据输出上的装置,第一时钟是宏时钟;用于使用第二时钟将来自宏的第一数据输出的数据定时到物理接口的装置,第二时钟是物理接口时钟;用于使用所述宏时钟将来自所述数字内核的第一重置信号定时到所述宏的重置输出的装置,所述第一重置信号输出用作第二重置信号;用于使用提供大于第二时钟速率的时钟速率的第三时钟对第二复位信号进行采样以产生采样复位信号的装置;以及用于响应于采样的复位信号的转变,在物理接口中将第二时钟复位到预定状态的装置。
在这些情况下(以上)的'装置'可以包括(但不限于)使用在此讨论的任何合适的组件以及任何合适的软件、电路、集线器、计算机代码、逻辑、算法、硬件、控制器、接口、链路、总线、通信路径等。在第二示例中,系统包括还包括机器可读指令的存储器,所述机器可读指令在被执行时使系统执行以上讨论的任何活动。
Claims (20)
1.一种使用采样模拟技术的卷积神经网络,包括:
包括第一和第二模拟输入数据点的输入源,
第一组电容器,用于分析所述第一模拟输入数据点并输出第一模拟卷积输出,和
第二组电容器,用于分析所述第二模拟输入数据点并输出第二模拟卷积输出,
其中所述第一和第二模拟卷积输出均包括多个特征。
2.权利要求1所述的卷积神经网络,还包括可变电容结构阵列,其中所述第一和第二输出通过所述可变电容结构阵列进行多路复用,以产生多路复用的卷积输出。
3.权利要求1所述的卷积神经网络,其中所述第一和第二组电容器包括固定电容器,并且其中所述固定电容器是模拟存储器单元。
4.权利要求1所述的卷积神经网络,其中所述第一和第二组电容器是具有固定权重的可变电容单元。
5.权利要求4所述的卷积神经网络,其中所述固定权重使用存储电容器尺寸实现,并且其中所述存储电容器尺寸等于所述固定权重的权重。
6.权利要求1所述的卷积神经网络,其中所述第一组电容器和所述第二组电容器由输入源驱动。
7.权利要求1所述的卷积神经网络,还包括:
具有电荷的第一固定电压源,和
第一电容器数模转换器(capDAC),
其中由所述第一capDAC对来自所述第一固定电压源的电荷进行采样以产生第一偏压值,和
其中所述第一偏压值添加到所述第一输出。
8.权利要求1所述的卷积神经网络,还包括与所述第一和第二模拟卷积输出耦合的子采样器,其中,所述子采样器平均所述第一和第二模拟卷积输出以产生平均卷积输出,并且其中,所述子采样器使用非线性传递函数处理所述平均卷积输出。
9.权利要求8所述的卷积神经网络,其中非线性传递函数是模拟整流函数。
10.权利要求1所述的卷积神经网络,还包括耦合所述第一模拟卷积输出的子采样器,
其中所述第一模拟卷积输出包括值的子窗口,和
其中所述子采样器包括多个模拟电压比较器,用于确定所述第一模拟卷积输出的值的子窗口的最大值。
11.一种使用采样模拟技术来实现神经网络的方法,包括:
接收包括第一和第二模拟输入数据点的模拟输入数据,
使用第一组电容器分析所述第一模拟输入数据点以产生第一模拟卷积输出,和
使用第二组电容器分析所述第二模拟输入数据点以产生第二模拟卷积输出,
其中产生所述第一和第二模拟卷积输出包括对多个特征执行模拟卷积操作。
12.权利要求11所述的方法,还包括通过可变电容结构阵列对所述第一和第二模拟卷积输出进行多路复用,以产生模拟多路复用的卷积输出。
13.权利要求11所述的方法,其中所述第一和第二组电容器是可变电容单元,所述第一组电容器具有第一固定权重,并且所述第二组电容器具有第二固定权重,并且其中
产生第一模拟卷积输出包括将所述第一输入数据点与所述第一固定权重相乘,和
产生第二模拟卷积输出包括将所述第二输入数据点与所述第二固定权重相乘。
14.权利要求11所述的方法,还包括:
使用第一电容器数模转换器通过采样来自第一固定电压源的比例电荷来产生第一偏压值,和
将所述第一偏压值添加到所述第一输出。
15.权利要求11所述的方法,还包括将所述第一模拟卷积输出和所述第二模拟卷积输出在子采样器处平均。
16.权利要求11所述的方法,其中所述第一模拟卷积输出包括值的子窗口,并且还包括确定值的子窗口的最大值。
17.使用采样模拟技术的卷积神经网络,包括:
包括模拟输入数据的输入,
多组电容器,每组电容器被配置为分析所述模拟输入数据的相应子窗口并输出用于相应子窗口的模拟卷积输出,其中所述模拟卷积输出包括多个特征,和
耦合所述模拟卷积输出的模拟子采样器,其中所述模拟子采样器被配置为减小所述模拟卷积输出的多个特征中的至少一个的尺寸。
18.权利要求17所述的卷积神经网络,其中所述多组电容器包括固定电容器,并且其中所述固定电容器是模拟存储器单元。
19.权利要求17所述的卷积神经网络,其中所述多组电容器包括具有固定权重的可变电容单元。
20.权利要求17所述的卷积神经网络,还包括:
具有电荷的固定电压源,和
电容器数模转换器(capDAC),
其中来自所述固定电压源的电荷通过所述capDAC采样以产生偏压值,和
其中所述偏压值添加到所述多组电容器的一组的输出中。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562267847P | 2015-12-15 | 2015-12-15 | |
US62/267,847 | 2015-12-15 | ||
US15/379,114 | 2016-12-14 | ||
US15/379,114 US11475269B2 (en) | 2015-12-15 | 2016-12-14 | Convolutional neural network |
PCT/US2016/066869 WO2017106464A1 (en) | 2015-12-15 | 2016-12-15 | Convolutional neural network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108475348A true CN108475348A (zh) | 2018-08-31 |
CN108475348B CN108475348B (zh) | 2023-07-18 |
Family
ID=59019841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680078824.8A Active CN108475348B (zh) | 2015-12-15 | 2016-12-15 | 卷积神经网络 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11475269B2 (zh) |
JP (1) | JP6637602B2 (zh) |
CN (1) | CN108475348B (zh) |
DE (1) | DE112016005746T5 (zh) |
WO (1) | WO2017106464A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109557996A (zh) * | 2017-09-22 | 2019-04-02 | 株式会社东芝 | 运算装置 |
CN111357016A (zh) * | 2017-12-22 | 2020-06-30 | 阿里巴巴集团控股有限公司 | 用于神经网络处理器的片上通信系统 |
CN111901541A (zh) * | 2020-07-14 | 2020-11-06 | 清华大学 | 一种直接光电流计算单元电路 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR3050855B1 (fr) * | 2016-04-27 | 2019-05-03 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Dispositif et procede de calcul de convolution d'un reseau de neurones convolutionnel |
US20180114109A1 (en) * | 2016-10-20 | 2018-04-26 | Nokia Technologies Oy | Deep convolutional neural networks with squashed filters |
TWI607389B (zh) * | 2017-02-10 | 2017-12-01 | 耐能股份有限公司 | 卷積神經網路的池化運算裝置及方法 |
CN107124609A (zh) * | 2017-04-27 | 2017-09-01 | 京东方科技集团股份有限公司 | 一种视频图像的处理系统、其处理方法及显示装置 |
CN115022559A (zh) * | 2017-06-14 | 2022-09-06 | 株式会社半导体能源研究所 | 摄像装置及电子设备 |
CN110770737B (zh) * | 2017-06-21 | 2024-03-08 | 株式会社半导体能源研究所 | 包括神经网络的半导体装置 |
US10847137B1 (en) * | 2017-12-12 | 2020-11-24 | Amazon Technologies, Inc. | Trigger word detection using neural network waveform processing |
US11138505B2 (en) * | 2017-12-21 | 2021-10-05 | Fujitsu Limited | Quantization of neural network parameters |
JP7240657B2 (ja) * | 2018-05-15 | 2023-03-16 | Tokyo Artisan Intelligence株式会社 | ニューラルネットワーク回路装置、ニューラルネットワーク、ニューラルネットワーク処理方法およびニューラルネットワークの実行プログラム |
US11562208B2 (en) | 2018-05-17 | 2023-01-24 | Qualcomm Incorporated | Continuous relaxation of quantization for discretized deep neural networks |
CN109035779B (zh) * | 2018-08-30 | 2021-01-19 | 南京邮电大学 | 基于DenseNet的高速公路交通流预测方法 |
KR102633139B1 (ko) | 2018-09-07 | 2024-02-02 | 삼성전자주식회사 | 데이터를 추출하는 집적 회로, 그것을 포함하는 뉴럴 네트워크 프로세서 및 뉴럴 네트워크 장치 |
US11574694B2 (en) | 2018-10-11 | 2023-02-07 | International Business Machines Corporation | Kernel sets normalization with capacitor charge sharing |
US12111878B2 (en) | 2018-10-12 | 2024-10-08 | International Business Machines Corporation | Efficient processing of convolutional neural network layers using analog-memory-based hardware |
CN109407067B (zh) * | 2018-10-13 | 2023-06-27 | 中国人民解放军海军航空大学 | 基于时频图卷积神经网络的雷达动目标检测与分类一体化方法 |
CN109633588A (zh) * | 2018-12-29 | 2019-04-16 | 杭州电子科技大学 | 基于深度卷积神经网络的雷达辐射源识别方法 |
US11556763B2 (en) | 2019-02-19 | 2023-01-17 | International Business Machines Corporation | Multi-kernel configuration for convolutional neural networks |
CN109965858B (zh) * | 2019-03-28 | 2020-10-30 | 北京邮电大学 | 基于超宽带雷达人体生命体征检测方法和装置 |
CN110311676B (zh) * | 2019-06-24 | 2020-10-16 | 清华大学 | 一种采用开关电流技术的物联网视觉系统和数据处理方法 |
US11537863B2 (en) | 2019-09-12 | 2022-12-27 | International Business Machines Corporation | Resistive processing unit cell having multiple weight update and read circuits for parallel processing of data using shared weight value |
US11562240B2 (en) | 2020-05-27 | 2023-01-24 | International Business Machines Corporation | Efficient tile mapping for row-by-row convolutional neural network mapping for analog artificial intelligence network inference |
US11885271B2 (en) | 2020-06-25 | 2024-01-30 | PolyN Technology Limited | Systems and methods for detonation control in spark ignition engines using analog neuromorphic computing hardware |
US11847847B2 (en) | 2021-03-26 | 2023-12-19 | Analog Devices International Unlimited Company | Learning system for convolutional neural networks to improve accuracy of object detection in new environments |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727505A (en) * | 1984-03-29 | 1988-02-23 | Kabushiki Kaisha Toshiba | Convolution arithmetic circuit for digital signal processing |
US4931674A (en) * | 1988-11-16 | 1990-06-05 | United States Of America As Represented By The Secretary Of The Navy | Programmable analog voltage multiplier circuit means |
US4954963A (en) * | 1989-03-02 | 1990-09-04 | Texas Instruments Incorporated | Neural network and system |
US5485416A (en) * | 1994-05-05 | 1996-01-16 | Ward; Calvin B. | Computational circuit based on capacitor arrays |
CN1867888A (zh) * | 2003-10-16 | 2006-11-22 | 佳能株式会社 | 运算电路及其运算控制方法 |
CN101305518A (zh) * | 2005-11-14 | 2008-11-12 | 模拟装置公司 | 模数转换器 |
US20110029471A1 (en) * | 2009-07-30 | 2011-02-03 | Nec Laboratories America, Inc. | Dynamically configurable, multi-ported co-processor for convolutional neural networks |
CN102610274A (zh) * | 2012-04-06 | 2012-07-25 | 电子科技大学 | 一种阻变突触权值调整电路 |
CN102959566A (zh) * | 2010-07-07 | 2013-03-06 | 高通股份有限公司 | 用于具有离散级突触和概率性stdp的数字神经处理的方法和系统 |
CN103731105A (zh) * | 2014-01-03 | 2014-04-16 | 东南大学 | 基于动态模糊神经网络的功放数字预失真装置及方法 |
CN104281858A (zh) * | 2014-09-15 | 2015-01-14 | 中安消技术有限公司 | 三维卷积神经网络训练方法、视频异常事件检测方法及装置 |
US20150309961A1 (en) * | 2014-04-28 | 2015-10-29 | Denso Corporation | Arithmetic processing apparatus |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2575308B1 (fr) * | 1984-12-21 | 1989-03-31 | Bendix Electronics Sa | Procede et chaine de traitement du signal analogique de sortie d'un capteur |
US5343555A (en) * | 1992-07-06 | 1994-08-30 | The Regents Of The University Of California | Artificial neuron with switched-capacitor synapses using analog storage of synaptic weights |
US6940445B2 (en) | 2002-12-27 | 2005-09-06 | Analog Devices, Inc. | Programmable input range ADC |
EP2719075B8 (en) * | 2011-06-06 | 2021-09-15 | Analog Devices, Inc. | Charge sharing time domain filter |
US10217045B2 (en) * | 2012-07-16 | 2019-02-26 | Cornell University | Computation devices and artificial neurons based on nanoelectromechanical systems |
US9613001B2 (en) | 2013-12-20 | 2017-04-04 | Intel Corporation | Processing device for performing convolution operations |
US9346167B2 (en) * | 2014-04-29 | 2016-05-24 | Brain Corporation | Trainable convolutional network apparatus and methods for operating a robotic vehicle |
DE102015104814B4 (de) * | 2015-03-27 | 2018-02-08 | Intel IP Corporation | Eine Digital-Analog-Wandler-Schaltung, eine Vorrichtung zum Bereitstellen eines Radiofrequenz-Sendesignals und eines Verfahrens einer Digital-Analog-Wandlung |
-
2016
- 2016-12-14 US US15/379,114 patent/US11475269B2/en active Active
- 2016-12-15 JP JP2018531157A patent/JP6637602B2/ja active Active
- 2016-12-15 CN CN201680078824.8A patent/CN108475348B/zh active Active
- 2016-12-15 WO PCT/US2016/066869 patent/WO2017106464A1/en active Application Filing
- 2016-12-15 DE DE112016005746.6T patent/DE112016005746T5/de active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4727505A (en) * | 1984-03-29 | 1988-02-23 | Kabushiki Kaisha Toshiba | Convolution arithmetic circuit for digital signal processing |
US4931674A (en) * | 1988-11-16 | 1990-06-05 | United States Of America As Represented By The Secretary Of The Navy | Programmable analog voltage multiplier circuit means |
US4954963A (en) * | 1989-03-02 | 1990-09-04 | Texas Instruments Incorporated | Neural network and system |
US5485416A (en) * | 1994-05-05 | 1996-01-16 | Ward; Calvin B. | Computational circuit based on capacitor arrays |
CN1867888A (zh) * | 2003-10-16 | 2006-11-22 | 佳能株式会社 | 运算电路及其运算控制方法 |
CN101305518A (zh) * | 2005-11-14 | 2008-11-12 | 模拟装置公司 | 模数转换器 |
US20110029471A1 (en) * | 2009-07-30 | 2011-02-03 | Nec Laboratories America, Inc. | Dynamically configurable, multi-ported co-processor for convolutional neural networks |
CN102959566A (zh) * | 2010-07-07 | 2013-03-06 | 高通股份有限公司 | 用于具有离散级突触和概率性stdp的数字神经处理的方法和系统 |
CN102610274A (zh) * | 2012-04-06 | 2012-07-25 | 电子科技大学 | 一种阻变突触权值调整电路 |
CN103731105A (zh) * | 2014-01-03 | 2014-04-16 | 东南大学 | 基于动态模糊神经网络的功放数字预失真装置及方法 |
US20150309961A1 (en) * | 2014-04-28 | 2015-10-29 | Denso Corporation | Arithmetic processing apparatus |
CN104281858A (zh) * | 2014-09-15 | 2015-01-14 | 中安消技术有限公司 | 三维卷积神经网络训练方法、视频异常事件检测方法及装置 |
Non-Patent Citations (2)
Title |
---|
J.E. HANSEN 等: "A time-multiplexed switched-capacitor circuit for neural network applications", 《IEEE INTERNATIONAL SYMPOSIUM ON CIRCUITS AND SYSTEMS》 * |
SRIMANTA PAL: "A Generalized Neural Network for Edge Detection and Its Hardware Realization", 《NEURAL PARALLEL & SCIENTIFIC COMPUTATIONS》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109557996A (zh) * | 2017-09-22 | 2019-04-02 | 株式会社东芝 | 运算装置 |
CN111357016A (zh) * | 2017-12-22 | 2020-06-30 | 阿里巴巴集团控股有限公司 | 用于神经网络处理器的片上通信系统 |
CN111357016B (zh) * | 2017-12-22 | 2023-07-25 | 阿里巴巴集团控股有限公司 | 用于神经网络处理器的片上通信系统 |
CN111901541A (zh) * | 2020-07-14 | 2020-11-06 | 清华大学 | 一种直接光电流计算单元电路 |
CN111901541B (zh) * | 2020-07-14 | 2021-07-09 | 清华大学 | 一种直接光电流计算单元电路 |
Also Published As
Publication number | Publication date |
---|---|
US20170169327A1 (en) | 2017-06-15 |
DE112016005746T5 (de) | 2018-08-23 |
JP2019504400A (ja) | 2019-02-14 |
WO2017106464A1 (en) | 2017-06-22 |
JP6637602B2 (ja) | 2020-01-29 |
US11475269B2 (en) | 2022-10-18 |
CN108475348B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108475348A (zh) | 卷积神经网络 | |
Thakur et al. | Large-scale neuromorphic spiking array processors: A quest to mimic the brain | |
Kim et al. | Beyond classification: Directly training spiking neural networks for semantic segmentation | |
Huang et al. | Retracted: Jointly network image processing: Multi‐task image semantic segmentation of indoor scene based on CNN | |
CN111860588B (zh) | 一种用于图神经网络的训练方法以及相关设备 | |
WO2022042713A1 (zh) | 一种用于计算设备的深度学习训练方法和装置 | |
Farabet et al. | Comparison between frame-constrained fix-pixel-value and frame-free spiking-dynamic-pixel convnets for visual processing | |
CN112418392A (zh) | 一种神经网络构建方法以及装置 | |
CN113011562B (zh) | 一种模型训练方法及装置 | |
Roy et al. | Liquid state machine with dendritically enhanced readout for low-power, neuromorphic VLSI implementations | |
CN107767343A (zh) | 图像处理方法、处理装置和处理设备 | |
US9014416B1 (en) | Sensory processing apparatus and methods | |
CN107251090A (zh) | 尖峰域卷积电路 | |
CN112842690A (zh) | 具有维度数据缩减的机器视觉 | |
CN105706144A (zh) | 基于支持向量机的对象检测系统及相关方法 | |
CN111079507B (zh) | 一种行为识别方法及装置、计算机装置及可读存储介质 | |
CN115081588A (zh) | 一种神经网络参数量化方法和装置 | |
Li et al. | Un-supervised and semi-supervised hand segmentation in egocentric images with noisy label learning | |
CN115018039A (zh) | 一种神经网络蒸馏方法、目标检测方法以及装置 | |
Xu et al. | Cross-modality online distillation for multi-view action recognition | |
CN113627421B (zh) | 一种图像处理方法、模型的训练方法以及相关设备 | |
JPWO2019087500A1 (ja) | ニューロモルフィック素子を含むアレイ装置およびニューラルネットワークシステム | |
Jiang et al. | CMCI: A Robust Multimodal Fusion Method for Spiking Neural Networks | |
CN117055726A (zh) | 一种脑机交互的微运动控制方法 | |
WO2023029559A1 (zh) | 一种数据处理方法以及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |