神经网络模型:简介、词汇表和反向传播

已发表: 2020-05-22

如果您是一名软件工程爱好者,想要了解神经网络的工作原理,那么您来对地方了。

在本指南中,我们将帮助初学者了解神经网络的含义,了解什么是神经网络模型,并将他们的知识扩展到该领域的新领域。

目录

什么是神经网络?

在进入计算术语之前,让我们了解一下日常生活中神经网络的存在。

“神经”一词来自“神经元”,这是用于单个神经细胞的术语。 没错——神经网络本质上是指在我们的日常生活中执行简单动作的神经元网络。

模式识别、对象检测和智能是我们每天面临的问题的一个主要方面。 虽然它们执行起来非常容易,我们甚至没有意识到,但事实是这些反应很难自动化。

例子:

  • 孩子们记住苹果的样子
  • 认出它的母亲或主人的动物
  • 感知事物是热的还是冷的

我们的神经网络执行这些复杂的计算。

人类现在已经能够建立一个可以以类似于我们的神经系统的方式执行的计算系统。 这些被称为人工神经网络(ANN)。

虽然我们最初使用人工神经网络来执行简单的功能,但计算能力的提高现在使我们能够构建一个相当强大的神经网络架构来解决日益复杂的问题。

让我们在下一节深入了解 ANN。

阅读:面向初学者的 TensorFlow 对象检测教程

什么是人工神经网络模型?

包含输入层、隐藏层和输出层的多层全连接神经网络称为人工神经网络或 ANN。

下图代表一个 ANN。

资源

如果你仔细看,你会注意到一层中的每个节点都连接到它旁边的层中的每个节点。

随着隐藏层数量的增加,网络变得更深。

让我们看看输出或隐藏层中的单个节点是什么样的。

资源

如您所见,该节点有很多输入。 它汇总所有权重并通过非线性激活函数将其作为输出传递。

节点的这个输出成为下一层节点的输入。

这里需要注意的重要一点是信号总是从左向右移动。 一旦所有节点都遵循该过程,将给出最终输出。

这是节点方程的样子。

资源

在上面的等式中,b 是偏差。 它是所有节点的输入,并且始终带有值 1。

偏差有助于将激活函数结果向左或向右移动。

人工神经网络模型词汇表

让我们看一下在涉及人工神经网络模型时应该知道的基本术语。

输入

首先从源输入到神经网络的数据称为输入。 它的目标是让网络数据对输入的信息做出决定或预测。 神经网络模型通常接受输入的实值集,并且应该将其馈送到输入层的神经元中。

训练集

您已经知道正确输出的输入称为训练集。 这些用于帮助神经网络得到训练并记住给定输入集的结果。

输出

每个神经网络都会生成一个输出,作为对输入数据的预测或决策。 此输出采用实数值集或布尔决策的形式。 只有输出层中的神经元产生输出值。

神经元

神经元也称为感知器,是神经网络的基本单元。 它接受输入值并基于它生成输出。

如前所述,每个神经元接收一部分输入,并通过非线性激活函数将其传递到下一层的节点。 这些激活函数可以是 TanH、sigmoid 或 ReLu。 这些函数的非线性特征有助于训练网络。

重量空间

每个神经元都有一个数字权重。 当它将输入传递给另一个音符时,它的权重与其他音符相加以生成输出。 通过对这些权重进行微小的更改,就是训练神经网络的方式。 权重的微调有助于确定能够产生最佳结果的正确权重和偏差集。 这就是反向传播的用武之地。

什么是神经网络模型中的反向传播?

成功找出需要对权重进行细微更改以最小化整个网络损失的方法之一是反向传播。

  • 首先,激活将在向上或前馈方向传播。
  • 现在,成本函数导数必须向下或反向传播。

这样,您将能够确定每个权重的部分成本导数。 然后,您可以计算通过调整将减少的成本。

结论

许多软件工程师不推荐使用神经网络模型,因为他们认为这种模型效率很低,因为需要多次迭代才能得出最具成本效益的解决方案。

然而,许多新算法,例如 Hinton 的胶囊网络、胶囊神经网络,需要更少的调整实例来达到精确的模型。 因此,神经网络在未来肯定有很大的发展空间。

如果您有兴趣了解有关机器学习的更多信息,请查看 IIIT-B 和 upGrad 的机器学习和人工智能 PG 文凭,该文凭专为工作专业人士设计,提供 450 多个小时的严格培训、30 多个案例研究和作业、IIIT- B 校友身份、5 个以上实用的实践顶点项目和顶级公司的工作协助。

为什么你需要为人工智能学习数学?

与我们许多人的想法相反,人工智能高度依赖数学。 教机器像人类一样思考和行动的整个概念是基于属于不同数学分支的概念,例如概率和统计学等等。 数据科学还具有与各种数学概念相关的基础,从微积分、线性代数和博弈论到高级回归、分类、统计、概率、梯度下降等。 扎实的数学基础对于有效理解 AI 概念至关重要,这将帮助您在该领域建立成功的职业生涯。

神经网络是机器学习中的算法吗?

人工神经网络或简称为神经网络,可以定义为一组机器学习算法,旨在类似于人类大脑并为高级模式识别而创建。 神经网络旨在识别向量内的数字模式,所有累积的数据都被转换成这些模式。 通过检测非结构化或不精确数据中的模式,神经网络有助于分类和形成集群,以改进数据存储和管理。 馈送到神经网络的感官数据通过机器感知来解释,该机器感知对输入数据进行标记或聚类。

为什么神经网络需要反向传播?

在人工神经网络领域,反向传播方法实际上是指误差的反向传播。 这是一种用于训练人工神经网络并通过迭代进行的标准化技术。 反向传播用于微调人工神经网络的权重,帮助最小化错误并使系统更加准确和可靠。 这种方法见效快,也可以简单地编程。 这是一种灵活的技术; 它不需要有关神经网络的先前知识。 它不涉及额外的参数,而只是调整输入系统的数字。