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

文章目录

  • 一、神经元模
    • 1.M-P模型
    • 2.单层多个神经元
  • 二、感知机与多层网络
    • 1.感知机
    • 2.多层神经网络
    • BP算法


一、神经元模

1.M-P模型

周志华西瓜书学习笔记----神经网络_第1张图片
神经网络中有许多神经元,每个神经元可以有多个输入,如图中的神经元有n个输入x,每个输入x对应的w是权重,通过计算获得神经元的总体输入。
周志华西瓜书学习笔记----神经网络_第2张图片
w是权值,x是输入(x是向量),θ是偏置。
net是总体输入,对于单个神经元w是向量,但是如果一层中存在多个神经元w就是权值矩阵
周志华西瓜书学习笔记----神经网络_第3张图片

权值矩阵:每一行对应的是一个神经元的权值,一层中有几个神经元就会有几行。
每一层中神经元的输入是一样的,可以是初始输入,也可以是上一层神经元的输出(一个神经元有一个输出)。
y传输函数,可以根据情况自由选取,但它的输入是net,也就是自变量取net,传输函数的值就是神经元的输出。
周志华西瓜书学习笔记----神经网络_第4张图片
例如我们希望神经元的输出处于0,1之间,可以选择sgn函数,又希望输出是连续的,那么就选择sigmoid函数

2.单层多个神经元

周志华西瓜书学习笔记----神经网络_第5张图片

二、感知机与多层网络

1.感知机

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

周志华西瓜书学习笔记----神经网络_第8张图片
也就是只有预测值和label相同时目标函数大于0,否则小于0。
η 是学习率,只要有误差就不断更新参数。

2.多层神经网络

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

BP算法

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

周志华西瓜书学习笔记----神经网络_第14张图片请添加图片描述
将上述两张图中的公式带入,最终得到结果:
请添加图片描述
这就是每次迭代的差值。

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

周志华西瓜书学习笔记----神经网络_第15张图片
所以在计算下一层的权值v 时,e 对应上一层的g ,同样还是链式求偏导,我们要求目标函数E 关于权值v 的偏导数,那么同样∂E/∂b(b这时候对应y,是输出)× ∂b/∂α(α是总输入)× ∂α/∂v。
周志华西瓜书学习笔记----神经网络_第16张图片
可以发现最终结果与上一层的权值w有关。

  • 一层的每个神经元都需要进行这样的计算,然后下一层再计算,一步一步返回到最初。

你可能感兴趣的:(神经网络,学习,机器学习)