Skip to main content
Dreamforce 将于 9 月 17 日至 19 日来到旧金山。立即注册,使用代码 DF24TRAIL20 节省 20%

了解对神经网络的需求

学习目标

完成本单元后,您将能够:

  • 解释仅考虑输入权重的 AI 模型存在的局限性。
  • 描述神经网络在机器学习中的作用。
  • 定义神经网络的主要组成部分。
  • 描述如何增加神经网络的复杂性,并定义深度学习。
  • 说明为何无法解释通过训练确定的权重和偏差。

Trailcast

如果您想收听本模块的录音,请使用以下播放器。听完这段录音后,记得返回每个单元,查看资源,然后完成相关评估。

对神经网络的需求

AI 离不开神经网络。神经网络是训练 AI 模型的重要工具,所以有必要了解它们。但在详细介绍之前,首先让我们探讨一下为何说我们需要神经网络。

在上一单元中,您学习到我们可以通过让 AI 模型猜测和检验每个输入的重要性权重来训练它。但买牛奶的例子实际上过于简单化了。我们的模型会进行相当粗略的估算。为了解其中的原因,我们考虑两种情景。

  1. 星期二晚上在下雨。您不想被淋湿,所以您(和许多像您一样的人)决定等到明天再去购物。在这一情景中,降雨是一个重要因素。
  2. 星期六下午在下雨。对许多人来说,这是一周中唯一可以去购物的时段。所以无论天气如何,店里的客流量都会很大。在这一情景中,下雨并不会造成很大的影响。

问题在于,我们的初始模型只能为降雨分配一个权重,但实际情况要复杂得多。不过,有一个解决的方案,即首先在两个独立的图中体现出这两个场景。同样,这里也用线条的粗细表示重要性。在第一个图中,“周末”和“时间”的权重较低,而“降雨”的权重较高。在第二个图中,“周末”的权重较高,而“时间”和“降雨”的权重较低。

在这两张图中,每张图都将“周末”、“时间”和“降雨”联系起来,以进行单独的估算。(灰色、蓝色、黄色)

我们知道这两种情景差异巨大,因为我们很聪明,有购买牛奶的经验。但是一台刚开始学习买牛奶行程的计算机对这方面一无所知!必须要考虑许多情景:周末晚上下雨,工作日早上天晴,等等。两张图并不够用,八张图可能更能体现您会遇到的场景。

八张非常相似的图,每张图上都有三个联系在一起的节点。

也就是说会有很多张非常相似的图。这三个输入始终表示“周末”、“时间”和“降雨”,因此可以将它们交叠在一起。如果您移动输出,使它们不接触,便会得到一个看起来像这样的组合图。

图上一边有三个节点,另一边有八个。用直线连接各节点。

每种情景的重要性取决于具体的输入。但知道其重要性只是成功的一半。每种情景都需要按自己的方式影响最终的估算值。

例如,在阳光明媚的周末下午去买牛奶需要花更多的时间。所以让我们将其调整为 +5。当我们计算估算值时,会得到一个更大的数字。同时,让我们将下雨的工作日上午这一情景调整为 -4,因为我们知道在那个时段买牛奶花的时间最少。

每种情景都采用不同的调整值,这就是我们所说的偏差。在这种情况下,偏差是有利的,因为它有助于我们获得更准确的估值。让我们重新绘图,将每个场景的偏差囊括其中。

图上一边有三个节点,另一边有八个,每个节点都有其正数或负数。用直线连接各节点。

那么,我们该如何利用这八种情景及其偏差呢?使用一些更为巧妙的数学函数,将它们组合成一个最终的估值。有些情景相比其他情景贡献度更大,所以您猜对了,我们需要为其分配更多的权重!我们可以更新图,以显示情景与具有不同强度的最终估值的关联性。

图上左侧有三个节点,中间有八个,右侧有一个。用直线连接左侧节点和中间的节点,并用直线连接中间和右侧的节点。

这是我们的新模型。更多的连接可能意味着有更准确的估值。这种以权重和偏差为依据的连接网就是神经网络的一个例子。我们之所以这么称呼它,是因为通过经验(数据)构建的连接类似于大脑中神经元的连接方式。

虽然情景对初学者而言是用来描述一个独特因素组合的绝佳词汇,但我们确实应该用节点这个词来表述这个概念。这是 AI 专家使用的词汇,所以接下来我们也会这么用。

增加神经网络的复杂性

我们新创建的买牛奶模型是一个相当基本的神经网络例子。在实践中,可能会变得相当复杂。让我们一起探索研究人员在建立神经网络时使用的一些方法,以便在特定任务中获得更令人满意的结果。

首先,您可能想知道为什么我们会选择用八个节点来连接输入和输出。这个数字实际上有一定的灵活性。我们知道,不使用节点得到的会是粗略估值。同样,数量过少则可能无法捕捉到我们试图建模的系统的所有细微差别。但节点数量太多也会造成问题。我们并不想让计算机执行并不需要的计算。因此,存在一个最佳的节点数量,让我们可以用最省力的方式获得理想的结果。选择正确的数字是设计一个理想神经网络的重要步骤。

我们还可以做一些其他的事,让人工神经网络更接近于人体内的神经网络。这与我们如何变换思维,以在两件明显无关联的事情之间找到联系有关。一些最精辟的见解是多次思维变换的产物。所以,如果我们能制造出同样能够进行多次思维变换的神经网络会如何呢?我们可以的!我们的做法是添加更多的节点作为,将每个节点连接到与其相邻的节点。

输入和输出之间有两层节点的神经网络图。

通过添加更多的层来训练 AI,以发现数据中隐藏的含义,这就是所谓的深度学习。由于具有强大的计算能力,许多神经网络被设计为具有多层。同样,最佳层数是计算量和产生的结果质量之间的平衡。

不仅仅是心算数学,它是神经网络数学

那么,关于这些计算。到目前为止,我们并没有涉及训练神经网络的数学运算部分。原因有几个。首先,数学运算会非常复杂,速度非常快。例如,这里提供了一篇有关神经网络的研究论文节选。

一篇有关神经网络的专业性研究论文截图

是的,太深奥了!

其次,确切的数学运算将取决于要训练神经网络执行怎样的任务。再次,随着研究人员了解到哪些对训练不同的模型更有益,每一篇新的研究论文都会更新数学函数。

因此,设计神经网络就涉及到为所训练的任务选择节点数量、层和合适的数学函数。在完成模型架构后,您必须让计算机使用所有这些巧妙的数学函数来执行猜测和检验流程。最终,它会找出权重和偏差的最佳值,以给出令人满意估算值。

并且,这让我们意识到了人工神经网络略微令人不安的方面。想象一下,一个资深球探正在寻找下一位伟大的棒球运动员。他们可能会说:“我一眼就能发现他。”他们无法解释具体的原因,但他们确实具备这样的能力。同样,我们的神经网络也无法说明为什么某些因素很重要。当然,我们可以查看每个权重和偏差所附加的值,但是对于一个通过层层连接产生的数字的相关性对我们而言并没有意义。

星探的大脑如同一个黑匣子,我们的神经网络也是如此。我们不会观察输入和输出之间的层,所以它们被称为隐藏层

总结

总之,神经网络是节点、层、权重、偏差和一堆数学函数的混合体。它们联合起来模仿人体的神经网络。每个神经网络都针对特定任务进行了细致的调整。也许它能很好地预测降雨,也许它能对植物进行分类,或者它能让在高速公路上行驶的车辆保持在车道中心。无论要完成何种任务,神经网络都在让 AI 看起来很神奇方面发挥了重要作用。现在,现在您对 AI 的奥妙有了一些了解。

资源