机器学习与深度学习------2.线性神经网络到BP神经网络

线性神经网络(LMS,Least Mean Square)

      线性神经网络,可以认为是对单层感知器的改进。

模型

在这里插入图片描述
      Madaline网络模型:网络包含多个神经元节点,形成多个输出
在这里插入图片描述

LMS学习规则

      最小均方规则,使神经元实际输出与期望输出平方差最小,与单层感知器学习规则很相似(可认为是单层感知器学习规则的特殊版),训练时候激活函数是y=x(purelin)。
      学习信号: r = d j − o j = d j − W j T X r = {d_j} - {o_j} = {d_j} - W_j^TX r=djoj=djWjTX(单层感知器学习信号为: r = d j − o j = d j − s g n ( W j T X ) r = {d_j} - {o_j} = {d_j} - {\mathop{\rm sgn}} (W_j^TX) r=djoj=djsgn(WjTX)
      权值调整公式:

Δ W j = η [ d j − W j T X ] X \Delta {W_j} = \eta [{d_j} - W_j^TX]X ΔWj=η[djWjTX]X

Δ w i j = η [ d j − W j T X ] x i \Delta {w_{ij}} = \eta [{d_j} - W_j^TX]{x_i} Δwij=η[djWjTX]xi
      当用作分类器时,权值训练完后进行预测是使用符号函数输出(即 s g n ( ) sgn() sgn())。

算法步骤

  1. 定义变量和参数。
    为方便处理,将偏置b与权值合并:

ω ( n ) = [ b ( n ) , ω 1 ( n ) , ω 2 ( n ) , . . . , ω N ( n ) ] T \omega (n) = {[b(n),{\omega _1}(n),{\omega _2}(n),...,{\omega _N}(n)]^T} ω(n)=[b(n),ω1(n),ω2(n),...,ωN(n)]T
             相应地,训练样本为

x ( n ) = [ 1 , x 1 ( n ) , x 2 ( n ) , . . . , x N ( n ) ] T x(n) = {[1,{x_1}(n),{x_2}(n),...,{x_N}(n)]^T} x(n)=[1,x1(n),x2(n),...,xN(n)]T

             b ( n ) b(n) b(n)为偏置, d ( n ) d(n) dn)为期望输出, y ( n ) y(n) yn)为实际输出,$\eta 为 学 习 率 , 为学习率, n$为迭代次数。

  1. 初始化。给向量 ω ( n ) \omega (n) ω(n)赋一个较小的随机初值, n = 0 n=0 n=0
  2. 输入样本,计算实际输出和误差。根据给定的期望输出 d ( n ) d(n) d(n),计算

e ( n ) = d ( n ) − x T ( n ) e ( n ) e(n) = d(n) - {x^T}(n)e(n) e(n)=d(n)xT(n)e(n)

  1. 调整权值向量。根据上一步算得的误差,计算
    ω ( n + 1 ) = ω ( n ) + η x T ( n ) e ( n ) \omega (n + 1) = \omega (n) + \eta {x^T}(n)e(n) ω(n+1)=ω(n)+ηxT(n)e

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值