加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 什么是神经网络?
    • 硬件与软件神经网络
    • 神经网络的主要类型
    • 神经网络的缺点
    • 最后的思考
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

解析 | 什么是神经网络?

2021/10/28
929
阅读需 22 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

随着摩尔定律接近尾声,技术界已经将目光投向了更加多样化的计算方法。为了继续提高系统的计算能力,我们不能仅仅依靠时钟速度越来越快,也不能指望晶体管越来越小。要真正向前迈进,必须考虑一种新的范式。而当我们展望未来的时候,目前拿计算机和人脑之间的比较非常流行。毕竟,这一切都与计算能力有关,而在这一领域,我们的大脑似乎仍然优于计算机。因此,下一步显然是尝试制造一台与我们大脑功能相似的计算机。

就像我们在2016年预测的那样,AI正在推动当前人类医疗保健领域的技术革命。神经网络也可能是计算技术进步的下一个前沿领域。随着我们对人类连接组(human connectome)和大脑处理信息的方式的理解加深,我们理解其惊人的信息吞吐量的能力也在同步增长。这导致了神经形态计算工具的流行。

本文旨在提供神经网络的一个简短但全面的入门知识。

什么是神经网络?

神经网络,也被称为神经形态系统(Neuromorphic System),是一个由硬件和/或软件组成的系统,旨在模拟人脑的某些方面。人工神经网络(Artificial Neural Networks)有很多类型,我们先来看一下硬件。

计算机与大脑的比较既广泛又深入,这是因为大脑和计算机在语义和结构层面都很相似。它们都是由多层的错综复杂的网状网络,负责大批量的信息处理。它们都有工作内存,其缓冲区可能会出现问题或溢出。它们都有“冷存储(Cold Storage)”,在大脑表面以粗略的语义层次组织起来,类似于数据被存储在硬盘盘面的不同位置。它们都由一个节点网络组成,其重要性由其连接的“权重”单独表示。它们的节点使用一系列电脉冲(Eletrical Spikes)进行通信,这些电脉冲的序列中嵌入了数据。

然而,当你把大脑和CPU进行比较时,这个类比就不成立了。因为大脑有一个持久的习惯,就是“把所有的事情都并行化”。CPU受制于数据管道,而大脑区域则不然。一个更接近的比喻是将大脑作为其连接组的总和,与FPGA进行比较。FPGA的设计是为了在制造后由用户定制。神经可塑性意味着即使在大脑硬件“完全成熟”之后,其突触和电气软件仍然可以更新。随着环境的变化,大脑也会适应。

眼睛不是照相机,只是在一个重要的意义上,它是;视网膜的结构是按照视野的顺序排列的,它沿着视神经一直延伸到视觉皮层。我们可以根据视野中出现问题的部分,诊断出视神经损伤的位置。视网膜处理层的每个神经元都向上游报告。你可以把视网膜(眼睛的捕捉装置)比作CCD相机上的传感器网格,比如哈勃用来捕捉图像的那个。镜头、CCD和视网膜都只是捕捉它们收到的二维光子流。二维的光子流也称为视频。

同样,大脑也不是计算机,只是有点像。我们甚至有一个内部时钟,将大脑的许多放电节奏及时组织起来,将它们推到一个有序的、有层次的构图中,与一首歌没什么不同。

总之,神经网络通常阐述了三个核心部分。一个神经网络是一个由神经元或节点,加上它们的连接和权重组成的系统。它还必须拥有某种传播功能。有些神经网络能够观察自己的结果,并改变其任务的处理方式。

为什么要模仿大脑?简言之,我们想模仿大脑,因为大脑真的很擅长它们的工作。它们速度快、重量轻,而且功耗很低。人脑被认为具有千万亿级的信息吞吐量,比我们所造的任何一台个人电脑都要大得多(分布式超级计算机不算)。而大脑的运行功率约为20W。这种成功的组合部分是由于其物理结构,部分是由于信息在神经系统中传播的独特方式。大脑以并行和串行、二进制和模拟的方式同时工作。

当神经元激活时,这些脉冲会依次沿着轴突传播。但神经元排列在皮层柱中,而皮层柱排列在脑区中。这样一来,整个脑区可以并行完成同一个任务。

神经元通过接收、解释,然后沿着轴突的长度传播微小的电波来相互交流。它的功耗极低,因为跨膜去极化的小波是通过简单地与细胞外的电化学梯度配合完成的。特别是皮质神经元,有一个深刻的分支结构。它们以“多对一”的方式连接到旁边的神经元,以及在信息流中排在它们前面的“上游”神经元。在与下游交流时,它们也以“一对多”的方式连接。为了管理所有这些表面,它们通过建立突触来分析连接的“权重”,并按重要性排序。

神经元也以模拟的方式处理信息。神经元通过统计来自树突的所有重叠的、实时闪烁的输入来进行模拟吸收。这是一种生理上的傅里叶变换。但是,当涉及到如何传递信息时,神经元也是强烈的二进制。一个神经元的信号是由时域中的电脉冲组织而成的,而且这些脉冲的振幅不变。一个神经元要么是脉冲,要么不是。脉冲是由一个微小的移动电击组成的。脉冲序列是按时间划分的电波序列,包含数据的片段。这几乎就像一个摩斯密码接收器

硬件与软件神经网络

将大脑功能作为其物理结构的突发属性来看待,使我们对“神经网络”有了硬件上的解释。IBM在2014年生产的TrueNorth是一个多核神经形态CMOS芯片,支持一个卷积神经网络。TrueNorth有自己的软件生态系统,包括一种定制的编程语言、库和一个完整的IDE。同样,Intel的Loihi生态系统是一个带有相关软件框架的硬件神经网络。Loihi是一个神经形态芯片,而Lava是通向Loihi能力的软件通路。

Loihi的物理架构模仿了大脑的物理结构。虽然它是使用传统半导体材料制造的,未来将在Intel 4工艺节点上制造,但Loihi的组织方式与我们所习惯的硅片非常不同。Loihi有多达一百万个神经元:网络中的各个实体,每个都有128kB的内存连接。这个信息池是芯片对突触的模拟。它反映了神经元在任何特定时间的连接状态。它由相邻的x86内核监督,这些核施加一个外部时钟来纠正神经元的放电节律。监督核还定期迫使神经元对照组内其他成员检查其记忆,或重新计算其连接的强度。

这种结构与大脑组织的分层和平行方面相匹配。此外,Loihi 2修改了其激活方法。Loihi 1以二进制方式激活其神经元:1或0,中间没有任何东西。Loihi 2将其脉冲编码为整数,使它们能够携带元数据。这也意味着它们可以对下游的神经元施加一些影响。具有整数值的脉冲可以模拟一个神经元可以发送或接收的不同电化学信号的目录。

这种结构与大脑组织的分层和平行方面相匹配。此外,Loihi 2修改了其激活方法。Loihi 1以二进制方式激活其神经元:1或0,中间没有任何东西。Loihi 2将其脉冲编码为整数,使它们能够携带元数据。这也意味着它们可以对下游的神经元施加一些影响。具有整数值的脉冲可以模拟一个神经元可以发送或接收的不同电化学信号的目录。

神经网络的主要类型

神经网络具有层次和冗余性,擅长处理高度并行的任务。它们还有助于处理那些需要用户获取大量数据以识别其中模式的任务,这通常被称为“drinking from the firehouse”。为了获得大数据的优势,我们必须能够用有效的速度处理它。神经网络也擅长处理具有元数据或许多维度的数据。

有许多不同的单独神经网络项目,但它们都属于几个不同的功能系列。每种算法都是为不同类型的问题而构建的,它们都涉及不同类型的机器学习。在这里,我们将讨论神经网络的四个主要子类型。

卷积神经网络(Convolutional Neural Nets):卷积神经网络(CNN)是“前馈(feed-forward)”系统,这意味着信息流在网络中限制在一个方向。这种类型的神经网络经常在媒体报道AI/神经网络的时候被提及。它们可以执行工作,但无法解释是如何得出答案的。这是因为CNN根本不是为了显示其工作而构建的。它们由一个输入层,一个或多个隐藏层,以及一个输出层或节点组成。

CNN经常被用于处理图像。因为它们是前馈的,从数学上讲,CNN在以网格格式出现的数据上做得很好。当应用于二维数据阵列时,它们是很强大的,如图像和其他矩阵。在其内部,用了一个长长的数学公式,指导算法如何执行运算,不仅是对两个数字、术语或方程,而是对整个数据体,比如放大一张图像。

前馈也需要一定程度的航位推算。这方面的一个表现是,CNN可以进行图像识别,然后利用新得到的理解,从其训练数据集生成扭曲、迷幻的图像。2016年,MIT发布了一种AI,可以利用这种失控的行为来“幽灵化”图像,产生噩梦般的图像效果,还正好赶上了万圣节。

循环神经网络(Recurrent Neural Nets):与前馈方法相反,循环神经网络(RNN)是反向传播。反向传播是将信息从神经网中较深的层传递到较浅层的行为。这种类型的算法能够自我改进。

RNN通过与系统中的其他神经元建立连接来进行反向传播,其规模可以达到并包括让每个神经元与其他每个神经元连接。这种冗余可以产生高度准确的结果,但有一个收益递减的上限。这与SSAA(super-sampling anti-aliasing)并不一样。随着算法对它已经处理过的数据进行越来越多的传递,它能做的事情越来越少。从2xAA到4xAA可以产生明显的效果,但如果没有专业的训练,很难分辨8x和16xAA之间的区别。

这种类型的神经网络可以使用梯度下降法进行训练,这种分析方法可以使可能性形成三维景观。期望的或不期望的结果可以被表示为景观中的“地形”,在与它们的统计数据相对应的地方。正如我们之前所说,梯度下降并不是最好的神经网络训练方法,但它是一个强大的工具。RNN可以通过保持对变化中的景观的一些记忆来给梯度下降提供助力。

脉冲神经网络(Spiking Neural Nets):如上所述,神经形态设计有物理和数字两种形式。脉冲神经网络(SNN)不是在单个CPU中不断运行的二进制数据流,而可以是软件、硬件或两者兼有。它们由分散的物理或逻辑核组成,以一种被称为“脉冲列车(spike train)”的节奏发出信号。这些核阵列由一个共同的网络结构连接起来,每个神经元是该网络中的一个节点。

对神经元管理其许多I/O通道的方式进行建模的尝试告诉我们,在许多不同的通道中存在着信息编码。有与神经元是否在发射有关的数据,也有在脉冲序列中的数据。它还关系到它的哪些连接的神经元在同一时间被激发了。

神经形态计算的一个重要工具是“leaky integrate-and-fire”模型。神经元之间的通信是由一组描述每个神经元不同I/O的微分方程来建模的。(微分方程是比较速率的优秀工具。在某些情况下,你可以使用差分方程来模拟任意的n维比较器集合)。

SNN中的每个神经元都有一个权重。权重代表了该神经元最近活动的滚动平均值。激活次数越多,值就越高。但权重是“泄漏的”,就像水桶里有个洞一样。随着时间的推移,有一个衰减函数会慢慢减少每个神经元的网络权重。这就解释了生物学上并非每个神经元在任何时候都是活跃的。你可以把它与RNN中永久饱和的连接环进行对比。

SNN不擅长梯度下降,也不擅长那种优化问题。然而,它们可能是独特的,适合于生物功能的建模。随着SNN变得更加复杂,它们可能能够在一系列脉冲中编码更多信息。这将使我们能够更精确地计算神经系统的各种功能。我们已经模拟了C. elegans蛔虫和Drosophilia果蝇的神经系统,研究人员正试图实时模拟人类的皮质柱。

SNN研究的另一个可能方向是进入额外的抽象层。研究人员正在努力创建一个SNN,其中每个单独的神经元本身是由一个神经网络组成的。

生成对抗神经网络(GAN):一种日益流行的神经网络是生成对抗神经网络,或称GAN。GAN是AI的另一种演变,经常被用来改变或生成图像。“对抗性”部分意味着这些神经网络是为了与自己竞争而建立的。

就像Cerberus有三个头一样,在GAN中通常有两个独立的神经网络,它们有各自的意图,一个是生成性的,一个是辨别性的。生成模型产生一个结果,通常是一个图像。然后,生成方试图“愚弄”判别方模型,看看它能多接近一个期望的输出。如果判别方没有被愚弄,结果就会被丢弃。这个试验的结果,包括生成方的成功和它所做的内容,都被归档;有时学习是有监督的,有时不是。但无论是哪种情况,在每一轮判断之后,GAN都会回到绘图板上,再次尝试。这就是这对组合如何迭代走向成功的方式。

GAN能够为现实世界中不存在的人制作独特、逼真的图像。要做到这一点,它们会查看许多真实人类的照片,收集数据,了解人们彼此的差异和相似方式。实际上,这就是粗暴的表型。然后,一旦GAN得到了充分的训练,它的生成方面就可以开始尝试自己的原创作品。一个例子是Nvidia的StyleGAN,它可以产生惊人的、具有欺骗性的逼真的图像。甚至还有一个衍生项目,挑战观众识别给定的StyleGAN的人物图片是真还是假。

这张图片中的人是假的。这是由Nvidia的StyleGAN创建的深度伪造的图像。

事实上,GAN的劳动成果可以非常逼真。2019年加州颁布了一项法律,禁止使用GAN这样的技术,在未经当事人同意的情况下,制作深度伪造的色情制品。该州还禁止在选举后两个月内传播政治候选人的伪造视频。DARPA正试图通过建立一个完整的部门来研究GAN和击败它的方法来跟上这场A/V军备竞赛。

虽然这听起来很有压力,但GAN也有一些用途,不涉及在互联网上搜刮面向公众的个人照片。其中一个应用是粒子物理学;物理学家要求在他们的测量中有精确的确定性,然后他们才愿意说他们发现了一个新的粒子或解释了一个现象。

GAN擅长的另一个领域是博弈论。面对一系列的规则和优先事项,GAN可以评估参与者的可能选择,并使用概率分布来预测最终结果。这种类型的神经网络也在研究中,用于改善天文图像,并预测引力透镜。

2021年夏天,CodexAI发布,这是一个能够改进自身软件的生成神经网络。该模型可以将自然语言翻译成代码。它还可以在输入所有Github的信息后生成可理解的代码片段。

虽然CodexAI本身可以被认为是一个成熟的神经网络,但它看起来也很容易成为一个更大的分层系统的一部分。CodexAI的行为类似于一个孤独的神经元在建立其第一个突触时产生的闪烁的火花。这也显示了该技术的局限性。神经网络可以学习纠正他们的假设,但AI的能触及到的仍然超过了它的能力范围。整合多种不同的模型是未来的方向。

神经网络的缺点

神经网络在满足特定的、有明确约束条件的要求方面非常出色,但它们可能有些过犹不及。计算机的巨大优势在于它们可以很快地执行重复性操作。这些快速迭代也使神经网络有可能过度训练。当这种情况发生时,它的航位推算就会完全出错。过度训练的AI可以产生一些非常奇怪的图像,使其对预测性目的(如天气预报)上不是很有用。

但最终,这些杂七杂八的弱点都是次要的。为了获得更强大的功能,神经网络必须变得更大,而这正是问题所在。神经网络不可能无限地扩展。它们的扩展效率实际上比普通的数据中心更差,因为正是这一点使得神经网络如此强大。分层神经网络的核心概念,其分层深度和冗余度,需要一个指数级增长的功耗。到目前为止,我们一直在使用蛮力来实现我们的目的,这在一定程度上是可行的。

这种功耗激增的问题正是英特尔将Loihi的低功耗作为主要卖点的原因。最终,功耗和散热的综合挑战将对我们将更多的芯片连接起来以制造更大、更复杂的AI构成硬性限制。

最后的思考

神经网络和AI之间的区别主要是一个观点之争。一个学派认为神经网络本身就是一种AI。其他人认为AI是由从属的神经网络组成的。唯一的区别是选择进行区分的抽象程度。

每个人似乎都同意的一件事是,如果没有数据,神经网络就什么都做不了,是的,大数据。随着边缘计算和数据科学的起飞,一个全新的信息领域向我们打开了大门。每天都有数量惊人的原始数据产生。这就需要我们找到创造性和聪明的方法来使用它。

[参考文章]

What is a Neural Net? — Jessica Hall

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
MS27488-22-2 1 Aero-Electric Connector Inc Connector Accessory,
$0.12 查看
2N6073AG 1 Rochester Electronics LLC 400V, 4A, 4 QUADRANT LOGIC LEVEL TRIAC, TO-225, LEAD FREE, CASE 77-09, 3 PIN
$0.85 查看
CDRH127NP-470MC 1 Sumida Corporation General Purpose Inductor, 47uH, 20%, 1 Element, Ferrite-Core, SMD, 4848, CHIP, 4848, HALOGEN FREE AND ROHS COMPLIANT

ECAD模型

下载ECAD模型
$0.82 查看

相关推荐

电子产业图谱

C.A.S.E.及大出行领域学习及知识分享。欢迎业内朋友交流~!