人工神经网络是一种受生物神经网络启发的计算模型,该模型在人脑中处理信息。 人工神经网络在语音识别,计算机视觉和文本处理领域取得了一系列突破,令机器学习研究和行业兴奋不已。 在此博客文章中,我们将尝试了解一种称为多层感知器的特定人工神经网络。

单个神经元:神经网络中计算的基本单位是神经元,通常称为“节点”或“单位”。 该节点从其他节点接收输入或从外部源接收输入,然后计算输出。 每个输入都辅以“权重”(w),其权重取决于其他输入的相对重要性。 节点将函数f(定义如下)应用于加权输入总和,如图1所示:

在这里插入图片描述
该网络接受权重为w1和w2的X1和X2的数字输入。 还有权重为b的输入1(称为“偏差”)。 稍后我们将详细介绍偏置的作用。

计算神经元Y的输出,如图1所示。函数f是非线性的,称为激活函数。 激活函数的功能是将非线性引入神经元的输出。 由于现实世界中的大多数数据都是非线性的,因此我们希望神经元能够学习非线性的功能表示,因此该应用至关重要。

每个(非线性)激活函数都会接收一个数字并执行特定的固定数学计算。 实际上,您可能会遇到几种激活函数:sigmoid,tanh,ReLU在之前的文章详细介绍过了,不再描述。
在这里插入图片描述
偏置的重要性:偏置的主要功能是为每个节点提供可训练的常数值(超出该节点接收的常规输入)。
前馈神经网络:前馈神经网络是第一个发明,也是最简单的人工神经网络[3]。 它包含多层排列的多个神经元(节点)。 相邻的层节点具有连接或边。 所有连接均已加权。

前馈神经网络可以包含三种节点:
单层:这是最简单的前馈神经网络,不包含任何隐藏层。
多层感知:多层感知具有至少一个隐藏层。 我们将仅在下面讨论多层感知器,因为它们在当今的现实世界中比单层感知器更有用。
多层感知器:多层感知器(MLP)至少包含一个隐藏层(一个输入层和一个输出层除外)。 单层传感器只能学习线性函数,而多层传感器也可以学习非线性函数。

输入层:输入层具有三个节点。偏移节点值为1.其他两个节点从X1和X2接受外部输入(均为来自输入数据集的数字值)。如上所述,在输入层不执行任何计算,因此输入层节点的输出为1,并将三个值X1和X2传递给隐藏层。

隐藏层:隐藏层也有三个节点,偏移节点的输出为1。隐藏层的其他两个节点的输出取决于输入层的输出(1,X1,X2)和连接上附加的权重(边界)。图下显示了隐藏层(突出显示)中输出的计算。其他隐藏节点的输出以相同的方式计算。注意,f表示激活功能。这些输出将传递到输出层中的节点。

输出层:输出层有两个节点,它们从隐藏层接收输入,并执行与突出显示的隐藏层相似的计算。作为计算结果的这些计算值(Y1和Y2)是多层感知机的输出。给定一系列特征X =(x1,x2,…)和目标Y,一个多传感器为分类或回归目的学习特征与目标之间的关系。

训练我们的多层感知器:反向传播算法
反向传播错误(通常缩写为“反向传播”)是训练人工神经网络的几种方法之一。这是一种有监督的学习方法,它通过标记的培训数据来学习(由主管指导学习)。总之,BackProp就像“从错误中学习”。人工神经网络犯错误时,主管会纠正。
人工神经网络包含多层节点。输入层,中间隐藏层和输出层。相邻的层节点通过“权重”连接。学习的目的是为这些边缘分配正确的权重。通过输入向量,这些权重可以确定输出向量。
在监督学习中,标记训练集。这意味着对于某些给定的输入,我们知道期望/期望的输出(注释)。
反向传播算法:最初,所有边缘权重都是随机分配的。对于训练数据集中的所有输入,将激活人工神经网络并观察其输出。将这些输出与我们已经知道并期望输出的内容进行比较,并且错误“传播”回上一级。错误将被标记,重量将相应地“调整”。重复此过程,直到输出误差低于既定标准为止。
上述算法完成后,我们得到了一个学习过的人工神经网络,该网络被认为是可接受的“新”输入。人工神经网络可以说是从几个样本(带注释的数据)及其错误(错误传播)中学习的。
在这里插入图片描述

总的来说:
Perceptron是线性分类器(二进制)。 此外,它还用于监督学习中。 它有助于对给定的输入数据进行分类。
在这里插入图片描述
第一步:a. All the inputs x are multiplied with their weights w. Let’s call it k.
在这里插入图片描述
第二步, 将所有相乘的值相加,并将它们称为加权总和。
在这里插入图片描述
第三步:将该加权和应用于正确的激活函数。
在这里插入图片描述
为什么我们需要权重和偏置?
权重显示特定节点的强度。
偏置值使您可以向上或向下移动激活功能曲线。

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐