神经网络与感知机 ---西瓜书

感知机是SVM和神经网络的基础。

神经元


f()函数理想中为阶跃函数,但实际中应用sigmoid函数


感知机与神经元

感知机(Perceptron)由两层神经元组成(输入层、输出层),输入层接收外界输入信号后传递给输出层,输出层是M-P神经元,亦称“阈值逻辑单元”(threshold logic unit)。

输入层只接受输入而没有权重以及阈值,输出层的神经元有阈值,两层间连接有权重。

把阈值当做是第n+1个权重,第n+1个输入是-1,那么就可以把阈值放进权重里了。那么只需要做权重的学习。

根据错误程度进行调整。

这样两层神经元只能处理线性问题,而非线性问题则需要多层网络。


输入输出层之间的叫做隐层。

误差逆传播算法

权重的学习用感知机那一套不行了,所以用了更强大的BP算法。


所有的参数如上图所示。

有两种BP算法,一种标准BP算法,每次更新只针对单个样本,更新频繁;另一种是累积BP算法,用累积误差最小化来进行更新,读取整个训练集之后才会进行一次更新。很多情况下先用累积BP,下降到一定程度,下降缓慢,再使用标准BP往往会有很好的效果。

详细讲一下标准BP算法。


     




同理可以得到其他三个参数的更新




另一种累积误差BP算法。

累积误差:


只需要一个包含足够多神经元的隐层,多层前馈网络就能以任意精度逼近任意复杂度的连续函数。

表示能力太强大,容易过拟合,有如下两个解决方案:


局部极小与全局最小

这个就跟高数中讲的一样,使用梯度下降法,找到的是局部极小值,如何跳出局部极小来找到全局最小?


阅读更多
文章标签: 西瓜书
个人分类: 笔记
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭