监督学习


顾名思义,监督学习是在老师的监督下进行的。这个学习过程是依赖的。在监督学习下训练人工神经网络期间,输入向量被提供给网络,网络将产生输出向量。将该输出向量与期望/目标输出向量进行比较。如果实际输出与期望/目标输出矢量之间存在差异,则会生成误差信号。根据该误差信号,将调整权重,直到实际输出与期望输出匹配。

感知器

感知器是Frank Rosenblatt利用McCulloch和Pitts模型开发的,是人工神经网络的基本运算单元。它采用监督学习规则,能够将数据分为两类。

感知器的操作特性:它由具有任意数量输入和可调节权重的单个神经元组成,但神经元的输出是 1 或 0,具体取决于阈值。它还包含一个权重始终为 1 的偏差。下图给出了感知器的示意图。

感知器

因此,感知器具有以下三个基本要素 -

  • Links - 它将有一组连接链接,它带有一个权重,包括始终具有权重 1 的偏差。

  • 加法器- 将输入与各自的权重相乘后相加。

  • 激活函数- 它限制神经元的输出。最基本的激活函数是 Heaviside 阶跃函数,它有两个可能的输出。如果输入为正,则该函数返回 1;如果输入为负,则该函数返回 0。

训练算法

感知器网络可以针对单个输出单元以及多个输出单元进行训练。

单输出单元的训练算法

步骤 1 - 初始化以下内容以开始训练 -

  • 重量
  • 偏见
  • 学习率α

为了计算方便和简单,权重和偏差必须设置为0,学习率必须设置为1。

步骤 2 - 当停止条件不成立时继续步骤 3-8。

步骤 3 - 对每个训练向量x继续步骤 4-6 。

步骤 4 - 激活每个输入单元如下 -

xi=si(i=1ton)

步骤 5 - 现在获取具有以下关系的净输入 -

yin=b+inxi.wi

这里“b”是偏差,“n”是输入神经元的总数。

步骤 6 - 应用以下激活函数以获得最终输出。

f(yin)={1ifyin>θ0ifθyinθ1ifyin<θ

步骤 7 - 调整权重和偏差如下 -

情况 1 − 如果y ≠ t那么,

wi(new)=wi(old)+αtxi

b(new)=b(old)+αt

情况 2 − 如果y = t那么,

wi(new)=wi(old)

b(new)=b(old)

这里“y”是实际输出,“t”是期望/目标输出。

步骤 8 - 测试停止条件,当重量没有变化时会发生这种情况。

多输出单元的训练算法

下图是多输出类的感知器的架构。

训练算法

步骤 1 - 初始化以下内容以开始训练 -

  • 重量
  • 偏见
  • 学习率α

为了计算方便和简单,权重和偏差必须设置为0,学习率必须设置为1。

步骤 2 - 当停止条件不成立时继续步骤 3-8。

步骤 3 - 对每个训练向量x继续步骤 4-6 。

步骤 4 - 激活每个输入单元如下 -

xi=si(i=1ton)

步骤 5 - 获取具有以下关系的净输入 -