神经网络分类算法 数据挖掘

神经网络分类介绍:

      神经网络就是一组相互连接的输入输出单元,这些单元之间的每个连接都关联一个权重。在网络学习阶段,网络通过调整权重来实现输入样本与其相应(正确)类别的对应。由于神经网络学习主要是针对其中的连接权重进行的,因此神经网络的学习有时也称为连接学习;神经网络的优点就是对噪声数据有较好适应能力,并且对未知数据也具有较好的预测分类能力;神经网络分类算法 数据挖掘_第1张图片

多层神经网络如图-4.9 所示,它包含两层处理单元(除输入层外);同样包含两个隐层的神经网络称为三层神经网络,如此等等。该网络是前馈的,即每一个反馈只能发送到前面的输出层或隐含层。它是全连接的,即每一个层中单元均与前面一层的各单元相连接。后传方法通过不断处理一个训练样本集,并将网络处理结果与每个样本已知类别相比较所获误差,来帮助完成学习任务。

  神经网络分类算法 数据挖掘_第2张图片

下面就以一个案例为准就行说明;以第一个训练元祖X={1,0,1} 其类标号为 1

神经网络分类算法 数据挖掘_第3张图片

第一步:初始化network的所有权重和偏倚;网络的权重一般初始为小随机数(例如 -1.0 到1.0),具体初始数据如下:


第二步:在终止循环条件下循环每个训练元祖,设X={1,0,1},其类标号Y为1;

第三步:循环输入单元,输入单元的输入=输出,及I₁=O₁=1;I₂=O₂=0 ; I₃=O₂=1

第四部:计算隐藏层或输出层的输入和输出;

输入公式见下方:


故可以求输入I₄= I₁*W₁₄+I₂*W₂₄+I₃*W₃₄+θ₄=1*0.2+0*0.4+1*(-0.5)+(-0.4)=-0.7

输出公式见下方:


  O₄=1+(1+E[0.7])=0.332;

按照输入和输出公式,可以分别求出4/5/6节点的输入和输出见下方:

 

第五部:计算误差,对于隐藏节点和输出节点的误差计算公式不一样,见下方:

输出层误差公式:


隐藏层误差公式


神经网络分类算法 数据挖掘_第4张图片

按照以上公式可以求 :(T为类标志)  

Err6 = 0.474*(1-0.474)*(1-0.474)=0.1311

Err4 = 0.332*(1-0.332)*Err6*W46=0.332*(1-0.332)*(-0.1311)*(-0.3)=-0.02087;

计算结果分别如下:

神经网络分类算法 数据挖掘_第5张图片

第五部:更新权重和偏倚值,公式如下:


上面就是更新权重的公式,设置 L = 0.9,以W₁₄更新为例子说明:△W₁₄=0.9*(-0.0087)*1=-0.00783  故 W₁₄=△W₁₄+ W₁₄=0.19217

最后各个更新数据如下:

神经网络分类算法 数据挖掘_第6张图片

以上就是一个元祖的过程,训练时候循环大量元祖,更新权重和偏倚值,当达到跳出循环元祖条件时候,中断训练;

中断训练的条件如下:

神经网络分类算法 数据挖掘_第7张图片








你可能感兴趣的:(机器学习和数据挖掘)