Data Mining --- Backpropagation Neural Network
一、BP神经网络
BP神经网络模型如下,其目的是根据实际的输入与输出数据计算模型的权系数(误差反传),BP神经网络结构如下:
假设有p个训练样本,即有p个输入输出对。输入向量为:Ip(ip1,…ipn)',实际输出为:Tp=(tp1,…tpn)',理论输出为:Op=(Op1,…,Opn)'。目标是根据极小原则不断修改权系数使实际输出与理论输出之差最小化,即minΣ(tpi-Opi)2,算法伪代码如下(其中l为学习率):
BP建模步骤:
a.初始化权值w(赋一随机值rand(1))和阈值sita(偏差)
b.通过激发函数(如Sigmoid函数)正向传播输入
c.通过更新权值w和阈值sita反向传播误差
d.当误差小于阈值时结束训练
[例]BP网络如下(学习率0.9):
初始化权重w和阈值sita,并令输出等于输入:
输入正向传播:
误差反向传播:
更新权重和阈值(偏差):
BP神经网络总结:
对噪声容错强,很适合连续值的输入输出,缺点是训练时间长且确定参数需要经验知识。
二、Perceptron感知器(一个神经元:总刺激大于阈值(-u)输出1否则输出0)