机器学习笔记之前馈神经网络(三)M-P神经元模型与感知机的关系

本文介绍了M-P神经元模型作为前馈神经网络的基本单元,它包括输入信号、权重、阈值和激活函数。激活函数通常使用Sigmoid,因为它在数学处理上更优。感知机算法是一个包含M-P神经元的两层结构,用于逻辑运算。参数学习和调整中,感知机通过错误驱动的方式更新权重,实现正确分类。反向传播算法将在后续章节中介绍。
摘要由CSDN通过智能技术生成

引言

从本节开始,介绍反向传播算法( BackPropagation,BP \text{BackPropagation,BP} BackPropagation,BP),本节将介绍 M-P \text{M-P} M-P神经元模型感知机算法的关系。

M-P \text{M-P} M-P神经元模型

本部分是针对前馈神经网络模型结构上的理论上的补充说明。详见《机器学习》(周志华著)P98。

M-P \text{M-P} M-P神经元模型 1943 \text{1943} 1943年被提出,它是神经网络的基本组成单位:
神经元模型示例

  • 这里的 x m ( m = 1 , 2 , ⋯   , M ) x_m(m=1,2,\cdots,\mathcal M) xm(m=1,2,,M)表示 M \mathcal M M个其他神经元,如果是输入层,那么 x m x_m xm表示样本特征 X \mathcal X X随机变量集合;对应的 W m ( m = 1 , 2 , ⋯   , M ) \mathcal W_m(m=1,2,\cdots,\mathcal M) Wm(m=1,2,,M)表示各神经元向神经元 Y \mathcal Y Y传递过程中对应的权重信息
  • θ \theta θ被称作阈值( Threshold \text{Threshold} Threshold)。从逻辑意义的角度观察,它可以看作成一个触发器:一旦神经元 Y \mathcal Y Y接收到的总输入值超过阈值 θ \theta θ,那么神经元 Y \mathcal Y Y就被激活,从而得到神经元 Y \mathcal Y Y输出结果 y o u t y_{out} yout
    但从数学意义的角度观察,总输入值 ∑ m = 1 M W m x m \sum_{m=1}^{\mathcal M} \mathcal W_mx_m m=1MWmxm与阈值 θ \theta θ计算了它们之间的偏差 ∑ m = 1 M W m x m − θ \sum_{m=1}^{\mathcal M} \mathcal W_mx_m - \theta m=1MWmxmθ。也就是说,神经元 Y \mathcal Y Y总是会被激活的,只不过激活的效果视偏差结果而定。
    y o u t = f ( ∑ m = 1 M W m x m − θ ) y_{out} = f \left(\sum_{m=1}^{\mathcal M} \mathcal W_m x_m - \theta\right) yout=f(m=1MWmxmθ)

其中 f ( ⋅ ) f(\cdot) f()表示激活函数( Activation Function \text{Activation Function} Activation Function)。上式表示的具体流程为:
需要注意的点: x m ( m = 1 , 2 , ⋯   , M ) x_m(m=1,2,\cdots,\mathcal M) xm(m=1,2,,M)如果不是输出层的神经元,那么它们每个神经元也应存在对应的阈值,只不过上图没有将其画出而已。

  • 神经元 Y \mathcal Y Y将接收到其他 M \mathcal M M个其他神经元 x x x输入信号,并通过这些输入信号通过带权重 W \mathcal W W的连接( Connection \text{Connection} Connection)向神经元 Y \mathcal Y Y进行传递
  • 神经元 Y \mathcal Y Y将接收到的总输入结果 ∑ m = 1 M W m x m \sum_{m=1}^{\mathcal M} \mathcal W_m x_m m=1MWmxm与神经元 Y \mathcal Y Y阈值 θ \theta θ之间进行比较;
  • 最终将比较结果 ∑ m = 1 M W m x m − θ \sum_{m=1}^{\mathcal M} \mathcal W_mx_m - \theta m=1MWmxmθ通过激活函数处理以产生神经元 Y \mathcal Y Y输出 y o u t y_{out} yout

关于激活函数,理想状态下的激活函数就是指示函数自身:

  • 当比较结果 ∑ m = 1 M W m x m − θ > 0 \sum_{m=1}^{\mathcal M} \mathcal W_mx_m - \theta>0 m=1MWmxmθ>0时,神经元 Y \mathcal Y Y必然以状态 1 1 1的情况下被激活;相反,如果总输入结果 < < <阈值时,神经元 Y \mathcal Y Y必然以和状态 1 1 1相反的状态 0 0 0情况下激活。
  • 之所以称之为‘理想状态’,是因为该函数的功能与上面描述的完全一致,没有出现流程错误的可能性。
    理想化激活函数——指示函数

然而,指示函数自身并不是连续函数,着意味着该函数并非在其定义域内处处可导。如果针对损失函数求解连接权重 W m ( m = 1 , 2 , ⋯   , M ) \mathcal W_m(m=1,2,\cdots,\mathcal M) Wm(m=1,2,,M)的最优值,上述函数因无法求导而无法对权重信息进行更新,这并不是一个好的性质。

因此,实际上通常使用 Sigmoid \text{Sigmoid} Sigmoid函数作为激活函数。 Sigmoid \text{Sigmoid} Sigmoid函数图像表示如下:
关于 Sigmoid \text{Sigmoid} Sigmoid函数,不仅在‘激活函数’中提到过,在逻辑回归( Logistic Regression \text{Logistic Regression} Logistic Regression),以及受限玻尔兹曼机( Restricted Boltzmann Machine,RBM \text{Restricted Boltzmann Machine,RBM} Restricted Boltzmann Machine,RBM)——后验概率求解中都提到过相关性质。后续会专门写一篇关于 Sigmoid \text{Sigmoid} Sigmoid函数的总结。
标记-> 关键词:对数几率函数。
Sigmoid激活函数图像示例
该函数的特点相比指示函数可在其定义域上处处连续、可导,这样在迭代求解连接权重时,能够对连接权重的最优方向进行计算;相反,依然从概率的角度观察, Sigmoid \text{Sigmoid} Sigmoid激活函数并没有指示函数那样准确和果断

  • 总输入结果超过阈值时,我们仅是分配一个 稍微高一点( > 0.5 >0.5 >0.5)的神经元激活状态。
  • 相反,当总输入结果小于阈值时,依然存在一定神经元激活状态,只不过和指示函数相比,它们的区别可能小很多。

由于 Sigmoid \text{Sigmoid} Sigmoid函数能够把较大范围内变化的输入值压缩到 ( 0 , 1 ) (0,1) (0,1)范围的区间内,因而也称 Sigmoid \text{Sigmoid} Sigmoid函数为挤压函数 ( Squashing Function ) (\text{Squashing Function}) (Squashing Function)

神经网络( Neural Network \text{Neural Network} Neural Network)就是这些神经元模型按照一定的层次结构连接起来得到的模型结果。
‘按照一定层次结构’本质上是若干个 y j = f ( ∑ m = 1 M W m x m − θ j ) y_j = f \left(\sum_{m=1}^{\mathcal M} \mathcal W_mx_m - \theta_j\right) yj=f(m=1MWmxm

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静静的喝酒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值