感知器网络

感知器模型分析

感知器网络

感知器神经元模型

单层感知器模型:

 感知器网络


感知器网络感知器网络-》模型总输入 感知器网络-》 模型输出

 感知器网络

                加权矩阵行数-》输出数

                加权矩阵列数-》输入数

                偏置矩阵行数-》输出数

                总输入Y======>>>Y<0-》0

                                                    Y>=0-》1   (0/1为总输出)

感知器网络

wij为第i个神经元(后一层)到第j个(前一层)神经元之间的连接值

 感知器网络

感知器网络

        感知模型用于分类

感知器网络


学习训练算法(学习===》改变权值)

感知器网络

T:理想输出

训练步骤

1)        对于所要解决的问题,确定输入向量  X,目标向量T,由此确定维数及网络结构参数,n,m;

2)  参数初始化;

3)设定最大循环次数;

4)计算网络输出;

5)检查输出矢量Y与目标矢量T是否相同,如果相同,或以达最大循环次数,训练结束,否则转入6);

6)学习

           感知器网络

     并返回4)。

离散单输出感知器

感知器网络

离散单输出感知器训练算法

感知器网络

1.初始化权向量W,阈值b;

2. 重复下列过程,直到训练完成:

      2.1 对每个样本(X,y),重复如下过程:

           2.1.1 输入X

           2.1.2 计算输出O=F(WXT+b);

           2.1.3 按如下公式修正权值矩阵W和阈值B

                      W=W+(y-o)X

                  b=b+(y-o)                               

 离散多输出感知器

感知器网络

 

离散多输出感知器训练算法

样本集:{(X,Y)|Y为输入向量X对应的输出}

输入向量:X=(x1,x2,…,xn)

理想输出向量:Y=( y1,y2,…,ym )

**函数:F

权矩阵W=(wij)

阈值向量B= ( b1,b2,…,bm )

实际输出向量:O=( o1,o2,…,om )

1.初始化权矩阵W,阈值向量B;

2. 重复下列过程,直到训练完成:

      2.1 对每个样本(X,Y),重复如下过程:

           2.1.1 输入X

           2.1.2 计算输出O=F(WXT+B);

           2.1.3 for i=1 to m 执行如下操作:

                    bi=bi+(yi-oi)

                      for j=1 ton    

                            wij=wij+(yi-oi)*xj

                                     

感知器网络

感知器网络

感知器网络

感知器网络

连续多输出感知器训练算法(***)

1.    初始化权矩阵W,阈值向量B

2.    初置精度控制参数e,学习率a,精度控制变量d= e+1

3. While d³e do

    3.1 d=0;

      3.2 for 每个样本(X,Y) do

           3.2.1 输入X;

           3.2.2 计算输出O=F(WXT+B);

            3.2.3 修改权矩阵W和阈值向量B;

           3.2.4 累积误差

                 for i=1to m do

                    d=d+(yi-oi)2

矫正:W[i] = W[i] + α*(Y[i] –T[i])*P[i];

            B[i] = B[i] + α*(Y[i] –T[i]);

其中的α值为0~1的小数,我的α值取的是0.2。T为目标值。

为了确定训练效果,这里需要定义一个误差率,误差这样来定义:E =∑(Y - T)2