感知机,仅由两层神经元组成,感知机的学习过程:
感知机只有输出层神经元进行激活函数处理,只有一层功能神经元,学习能力非常有限。
前馈神经网络,与感知机相比多了隐层。输入层仅是接受输入,不进行函数处理,隐层与输出层包含功能神经元。
神经网络的学习过程,就是根据训练数据来调整神经元之间的“连接权”以及每个功能神经元的阈值。
输入d个属性,输出l维实例向量。即输入层d,输出层l,隐层设为q。输入层与隐层之间连接权重为v,隐层与输出层之间连接权重为w,网络为全连接。激活函数均使用sigmoid函数。
学习率控制着每一轮迭代中的更新步长,若太大则容易振荡,太小则收敛速度过慢。
标准BP算法每次仅针对一个训练样例更新链接权重和阈值,参数更新的比较频繁,而且对不同样例更新的效果可能会出现抵消现象,为了达到同样的累积误差极小点,标准BP算法往往需要进行更多次数的迭代。
累积BP算法直接针对累积误差最小化,读取整个训练集D一遍后才对参数进行更新,但在很多任务中,累积误差下降到一定程度后,进一步下降会非常缓慢,这时标准BO往往会更快获得较好的解,尤其是训练集D非常大时。
缓解神经网络的过拟合:
1.早停:将数据分为训练集和验证机,若训练集误差降低但验证集误差升高,停止训练,同时返回参数
2.正则化:在误差函数中加一个用于描述网络复杂度的部分,如