龙空技术网

深入浅出人工智能(02)

Engineer Fu 86

前言:

当前各位老铁们对“人工神经网络简单例题”大体比较讲究,我们都需要学习一些“人工神经网络简单例题”的相关资讯。那么小编也在网摘上汇集了一些关于“人工神经网络简单例题””的相关文章,希望各位老铁们能喜欢,姐妹们一起来了解一下吧!

第二波:机器学习和数据驱动的人工智能

机器学习(ML)是指一系列技术,能够自动化算法的学习过程。这与第一波的方法不同,第一波方法中性能的改进仅通过人类调整或添加直接编码到算法中的专业知识来实现。虽然这些方法背后的概念和符号主义人工智能一样古老,但直到本世纪初,它们才被广泛应用,并激发了当前领域的复苏。在机器学习中,算法通常通过在数据上进行自我训练来提高性能。因此,我们谈论数据驱动的人工智能。这些方法的实际应用在过去十年里取得了巨大进展。虽然这些方法本身并不是特别新的,但近年来机器学习的主要进展因素是数据的大量增加。数据驱动的人工智能本身也是受数据推动的。

通常,机器学习算法通过自行识别模式并应用所学内容对数据进行描述。不同的机器学习方法适用于不同的任务和情况,并具有不同的影响。

人工神经网络和深度学习

正如其名称所示,人工神经网络(ANNs)是受人类(以及其他动物)大脑中电化学神经网络功能启发而创建的。大脑的工作机制仍然有些神秘,尽管早就知道信号是通过复杂的神经元网络传递的,在这个过程中,信号和网络的结构都会发生转变。在人工神经网络中,输入被转换为信号,然后通过一组人工神经元网络传递,生成可以被解释为对原始输入的响应的输出。学习过程指的是将网络进行转换,以便这些输出成为对输入有用或智能的响应。

人工神经网络处理发送到“输入层”的数据,并在“输出层”生成响应。在它们之间,有一个或多个“隐藏层”,它们在信号通过时进行操作。人工神经网络的基本结构如图1所示,其中有一个用于预测图像是否显示一只猫的人工神经网络的示例。首先,图像被分成单个像素,并发送到人工神经网络的输入层的神经元。然后,它们作为信号发送到第一个隐藏层。该隐藏层中的每个神经元接收到多个信号,将它们组合和操作生成单个输出信号。虽然图1只显示了一个隐藏层,但人工神经网络通常包含几个连续的隐藏层。在这种情况下,信号将通过每个隐藏层传递,直到达到最后的输出层。在输出层生成的信号是最终的输出,它被解释为关于图像是否显示猫的决策。

现在我们有一个简单的人工神经网络(ANN),它受到了大脑的简化模型的启发,可以对特定的输入作出特定的输出。这个人工神经网络并不真正知道自己在做什么,甚至不知道什么是猫,但是如果我们给它一张图片,它总是会告诉我们这张图片是否“认为”里面包含了一只猫。问题是,我们如何开发一个能够给出正确答案的人工神经网络呢?

虚拟机器

计算机按照顺序逐行执行代码,就像上面描述的专家系统那样。然而,在人工神经网络中,信号似乎是同时进行的,因为信号在并行处理中被处理。实际上,人工神经网络是一种“虚拟机器”,在执行之前必须被转换成一系列指令,然后才能在物理机器上执行。输出的结果与并行处理的结果相同。

首先,它需要有正确的结构。对于简单的任务,人工神经网络在单个隐藏层中只需要几十个神经元就可以很好地工作。增加更多的神经元和隐藏层使得人工神经网络可以处理更复杂的问题。深度学习指的是至少有两个隐藏层的人工神经网络,每个隐藏层包含许多神经元。有更多的隐藏层允许人工神经网络通过将问题分解为更小的子问题来开发更抽象的概念,并提供更细致入微的响应。虽然从理论上讲,三个隐藏层可能足以解决任何类型的问题,但在实践中,人工神经网络往往包含更多隐藏层。例如,谷歌的图像分类器使用高达30个隐藏层。第一层搜索可以识别为边缘或拐角的线条,中间层试图在这些线条中识别形状,最后一层组装这些形状来解释图像。

因此,如果深度学习中的“深度”是指人工神经网络的复杂性,那么“学习”又是什么呢?一旦人工神经网络的正确结构就位,它就需要进行训练。虽然从理论上讲,这可以手动完成,但这将需要一个人类专家费尽心思地调整神经元,以反映他们自己对如何识别猫的专业知识。相反,采用机器学习算法可以自动化这个过程。

训练神经网络:反向传播和梯度下降

当我们将人工神经网络的实际输出与标记数据中的期望输出进行比较时,两者之间的差异被称为误差。反向传播和梯度下降等机器学习算法旨在通过最小化这个误差来逐渐改进神经网络的性能。它们通过调整神经网络并检查误差是否减少来实现这一目标。这个过程最好通过微积分来解释,不过以下段落将提供一个通俗易懂的介绍。

反向传播涉及调整神经网络中的神经元。该过程从前面部分描述的例程开始,其中一个输入信号被发送到神经网络,通过隐藏层传递到输出层,并生成一个输出信号。然后,通过将输出与标记数据中的期望输出进行比较,计算出误差。现在,神经元被改变以减少误差,使得神经网络的输出更准确。这个校正过程从输出层开始,因为输出层对结果有更大的影响,然后向后逐层调整隐藏层。它被称为反向传播,因为误差的校正向后传播到整个神经网络。

标记数据和监督学习

监督学习是指使用带有标记的数据(比如指明是否含有猫的图片)来训练算法。这些方法会自行设计预测图片标签的方法。在没有高质量标记数据的情况下,可以使用无监督学习。无监督学习在数据中发现新的聚类和关联,这些聚类和关联可能未被人类识别或标记出来。由于标签通常是不完整或不准确的,许多应用,比如内容推荐系统,会结合监督学习和无监督学习的方法。

从理论上讲,计算每个可能的人工神经网络(ANN)的错误是可能的。也就是说,生成一组包含所有可能神经元组合的ANN,并将每个ANN与标记数据进行测试,然后选择误差最低的一个。然而,在实践中,可能的配置太多,无法实现这种方法。AI工程师需要找到更加智能的方式,以更加精确地搜索最低的误差。这就是梯度下降法的作用。想象一下,有一张图表,其中包含了每个可能的ANN,每个点代表一个ANN,高度表示其误差。这形成了一个“误差地形”,如图2所示。梯度下降法是一种在没有地图的情况下寻找此地形上最低点(误差最低的ANN)的方法。

梯度下降法通常被比喻成一位登山者需要找到一条从山上下来的路线,但因为雾太大,他们每次只能看到一米的距离,所以他们采取了这样的策略:四处张望,决定哪个方向下降最陡,沿着这个方向前进,然后再四处张望,重复这个过程,直到找到下山的路。类似地,可以生成一个ANN,并将其置于误差地形上的随机点。计算它的误差,以及由几种不同的调整所引起的误差,这些调整对应于误差地形上附近的位置。提供最好改进的调整被认为是最佳方向,因此进行这些改变,然后使用新的测试集重复该过程。正如登山者在周围环境中选择了可能的最陡的下降方向,ANN通过逐步改进找到最佳解决方案。

虽然该算法可能找到最佳解决方案 - “全局最优”,但这种方法并不完美。就像我们可能预期的那样,使用这种策略的不幸登山者在下山之前会卡在一个凹槽里-他们固执地拒绝爬升一点,限制了他们从沟里爬出来的能力 - 算法可能会满足于“局部最优”,这不是最佳的解决方案,但微小的修改会使情况变得更糟,而不能得到更好的解决方案。这就是为什么在实践中,整个过程会被多次重复,从不同的点开始,并使用不同的训练数据。

梯度下降和反向传播利用带标签的数据来计算误差。然而,如果所有数据都用于学习过程,算法可能会记住训练数据,而没有获得对新数据作出有用响应的能力。为了确保不会发生这种情况,一些带标签的数据不用于训练,只用于测试结果。

标签: #人工神经网络简单例题 #人工神经网络理论设计及应用课后题答案 #人工神经网络理论及应用课后题答案 #人工神经网络理论及应用课后题答案第五章