周志华西瓜书学习笔记----神经网络


一、神经元模

1.M-P模型

请添加图片描述
神经网络中有许多神经元,每个神经元可以有多个输入,如图中的神经元有n个输入x,每个输入x对应的w是权重,通过计算获得神经元的总体输入。
请添加图片描述
w是权值,x是输入(x是向量),θ是偏置。
net是总体输入,对于单个神经元w是向量,但是如果一层中存在多个神经元w就是权值矩阵
请添加图片描述

权值矩阵:每一行对应的是一个神经元的权值,一层中有几个神经元就会有几行。
每一层中神经元的输入是一样的,可以是初始输入,也可以是上一层神经元的输出(一个神经元有一个输出)。
y传输函数,可以根据情况自由选取,但它的输入是net,也就是自变量取net,传输函数的值就是神经元的输出。
请添加图片描述
例如我们希望神经元的输出处于0,1之间,可以选择sgn函数,又希望输出是连续的,那么就选择sigmoid函数

2.单层多个神经元

请添加图片描述

二、感知机与多层网络

1.感知机

感知机是单层神经网络,同时也只能处理线性问题,例如书上的逻辑符号。
假设我们的输出(label)为1和-1且选择的传输函数是阶跃函数,我们想拟合一个基于感知机的模型,计算方法如下:
请添加图片描述
一样使用梯度下降法。
L是目标函数,y就是label,wx+b是传输函数的输入,那么为什么要它们相乘?
选择的传输函数是阶跃函数,注意图中的坐标轴应该在中间。
请添加图片描述
那么wx+b是正输入就是1,是负输出就是-1,相当于wx+b就是预测值。

请添加图片描述
也就是只有预测值和label相同时目标函数大于0,否则小于0。
η 是学习率,只要有误差就不断更新参数。

2.多层神经网络

多层神经网络就是多层感知机组合。相对于单层神经网络它可以进行更加复杂的分割。

BP算法

BP算法用来训练多层神经网络,上述感知机中的算法只能针对单层的神经网络。
同样BP算法也是基于梯度下降法。
请添加图片描述
这是一个两层神经网络。
请添加图片描述
β 是神经元的总体输入,所以 f(β-θ) 是传输函数,其中θ是是偏置,f 选择的是sigmoid函数,y 是实际输出。
请添加图片描述
同样需要有一个目标函数才能进行梯度下降,这里的E是实际输出和label间差的平方和。
请添加图片描述
求偏导数,实际上我们需要求解的参数是权值w和偏置θ,所以我们需要分别求它们的偏导,这里是求解w的偏导。η是学习率,根据情况赋值。请添加图片描述
链式法则求解导数。
![请添加图片描述](https://img-blog.csdnimg.cn/cc2fb348c55643aebf5f932ba8d70c20.png请添加图片描述
简单的求导能得到第二行,根据上述图中的公式,就能得到下图中的第三行。

请添加图片描述请添加图片描述
将上述两张图中的公式带入,最终得到结果:
请添加图片描述
这就是每次迭代的差值。

  • BP算法是递归往回得到新的权值的算法。上一层的权值会影响下一层的权值,上一层的输入就是下一层的输出。

请添加图片描述
所以在计算下一层的权值v 时,e 对应上一层的g ,同样还是链式求偏导,我们要求目标函数E 关于权值v 的偏导数,那么同样∂E/∂b(b这时候对应y,是输出)× ∂b/∂α(α是总输入)× ∂α/∂v。
请添加图片描述
可以发现最终结果与上一层的权值w有关。

  • 一层的每个神经元都需要进行这样的计算,然后下一层再计算,一步一步返回到最初。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值