2019-04-08 16:59:23

1 学习规则(Learning Rule)

1.1 赫布学习规则(Hebb Learning Rule)

1949年,Hebb提出了关于神经网络学习机理的“突触修正”的假设:当神经元的前膜电位、后膜电位同时为正时,突触传导加强;电位相反时,突触传导减弱。根据次假设定义权值ω的调整方法,称该方法为Hebb学习规则。

Hebb学习规则中,学习信号等于神经元的输出:

r=f(WTj*X)

权值向量W调整公式:

ΔW=η*f(WTj*X)*X

权值向量W的分向量Δωij调整公式:

Δωj=η*f(WTj*X)*xj,j=0,1,2,…,n

为保证Hebb learning rule 的学习效率,对权值设置饱和值。

for examle:

1 参数设置

输入:X1=[1,-2,1.5]T、X1=[1,-0.5,-2]T、X1=[0,-1,-1]T,学习率 η=1,初始化权值W0=[0 0 0]T,传递函数使用hardlim。

2 计算步骤(即权值调整过程)

权值W1=W0+hardlim(W0T*X1)*X1=[1 -2 1.5];

权值W2=W1+hardlim(W1T*X2)*X2=[1 -2 1.5];

权值W3=W2+hardlim(W2T*X3)*X3=[1 -3 0.5];

1.2 感知器学习规则(Perceptron Leaning Rule)

1 感知器的学习规则

r=dj-oj

式中,dj为期望输出,oj=f(WjT*X)

感知器采用符号函数作为转移函数,则

f(WjT*X)=sgn(WjT*X)={1,WjT*X≥0;0,WjT*X<0}

由上式得权值调整公式

ΔWj=η*[dj-sgn(WjT*X)]*X

Δωj=η*[dj-sgn(WjT*X)]*xj

2 Hebb learning principle 和 Perceptron learning principle的不同之处

Hebb learning principle 采用输出结果作为权值调整的组成部分,Perceptron learning principle 采用误差作为权值调整的组成部分。

1.3 最小均方差学习规则(Least Mean Square Error Leaning Rule)

1.3.1 LMS学习规则特点

感知器学习规则训练的网络,其分类的判决边界往往距离各分类模式靠的比较近,这使得网络对噪声比较敏感;

LMS Learing Rule是均方误差最小,进而使得判决边界尽可能远离分类模式,增强了网络的抗噪声能力。

但LMS算法仅仅适用于单层的网络训练,当需要设计多层网络时,需要寻找新的学习算法,for example,Back Progation Nerual Network Algorithm。

1962年,Bernard Widrow 和 Marcian Hoff 提出Widrow-Hoff Learning Princple,该方法的特点是使实际神经元输出与期望输出之间的平方差最小,因此又称为Least Mean Square Erorr Princple。

LMS调整规则应用较为广泛:

1 信号处理

2 BP算法的引领者

1.3.2 LMS学习规则计算

LMS的学习信号

r=tj-WjT*X

权值调整量

ΔWj=η*(tj-WjT*X)*X

权值分量调整

Δωj=η*(tj-WjT*X)*xj,j=0,1,2,...,n

tj表示期望输出,WjT*X表示实际输出

1.3.2 MSE学习规则

均方差(MSE),是预测数据与原始数据的误差平方的和的均值

MSE=(∑(ti-ai)2)/n,其中i=1,2,...,n

Matlab中存在该函数,可以直接调用,e=[1 2 3],perf=mse(e)=(12+22+32)/n=4.66666667。

2 线性神经网络

2.1线性神经网路结构

1 参数设置

神经网络结构函数 Purelin

神经网络_线性神经网络 1 (Nerual Network_Linear Nerual Network 1)的更多相关文章

  1. 神经网络_线性神经网络 2 (Nerual Network_Linear Nerual Network 2)

    1 LMS 学习规则 1.1 LMS学习规则定义 MSE=(1/Q)*Σe2k=(1/Q)*Σ(tk-ak)2,k=1,2,...,Q 式中:Q是训练样本:t(k)是神经元的期望输出:a(k)是神经元 ...

  2. 神经网络_线性神经网络 3 (Nerual Network_Linear Nerual Network 3)

    1 LMS 学习规则_解方程组 1.1 LMS学习规则举例 X1=[0 0 1]T,t1=0:X2=[1 0 1]T,t2=0:X3=[0 1 1]T,t3=0:X1=[1 1 1]T,t1=1. 设 ...

  3. 单层感知机_线性神经网络_BP神经网络

    单层感知机 单层感知机基础总结很详细的博客 关于单层感知机的视频 最终y=t,说明经过训练预测值和真实值一致.下面图是sign函数 根据感知机规则实现的上述题目的代码 import numpy as ...

  4. 使用MindSpore的线性神经网络拟合非线性函数

    技术背景 在前面的几篇博客中,我们分别介绍了MindSpore的CPU版本在Docker下的安装与配置方案.MindSpore的线性函数拟合以及MindSpore后来新推出的GPU版本的Docker编 ...

  5. 『PyTorch』第四弹_通过LeNet初识pytorch神经网络_下

    『PyTorch』第四弹_通过LeNet初识pytorch神经网络_上 # Author : Hellcat # Time : 2018/2/11 import torch as t import t ...

  6. 自适应线性神经网络Adaline

    自适应线性神经网络Adaptive linear network, 是神经网络的入门级别网络. 相对于感知器, 采用了f(z)=z的激活函数,属于连续函数. 代价函数为LMS函数,最小均方算法,Lea ...

  7. RBF神经网络和BP神经网络的关系

    作者:李瞬生链接:https://www.zhihu.com/question/44328472/answer/128973724来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  8. 神经网络与BP神经网络

    一.神经元 神经元模型是一个包含输入,输出与计算功能的模型.(多个输入对应一个输出) 一个神经网络的训练算法就是让权重(通常用w表示)的值调整到最佳,以使得整个网络的预测效果最好. 事实上,在神经网络 ...

  9. BZOJ_2460_[BeiJing2011]元素_线性基

    BZOJ_2460_[BeiJing2011]元素_线性基 Description 相传,在远古时期,位于西方大陆的 Magic Land 上,人们已经掌握了用魔 法矿石炼制法杖的技术.那时人们就认识 ...

随机推荐

  1. Day 18: 记filebeat内存泄漏问题分析及调优

    ELK 从发布5.0之后加入了beats套件之后,就改名叫做elastic stack了.beats是一组轻量级的软件,给我们提供了简便,快捷的方式来实时收集.丰富更多的数据用以支撑我们的分析.但由于 ...

  2. python之地基(二)

    上一个阶段呢,我们已经学习了python的数据的类型.今天呢,我们来学习各种各样的运算符. 一.基本运算符 a = 10    b = 20 运算符号 描述 示例 + 加——两个对象相加 a+b 输出 ...

  3. [原创]Modelsim后仿真

    因调试需要,进行后仿真,ISE生成的sim文件和sdf文件 `timescale ns/ ps module lut_dly ( clkout, fpga_clk, config_in ); outp ...

  4. thinkPHP实现APP微信支付

    控制器 class Pay extends Controller { const WX_PAY_URL = "https://api.mch.weixin.qq.com/pay/unifie ...

  5. RabbitMQ通过Exchange.fanout、不同的队列绑定同一个Exchange实现多播处理

    消费者1: static void Main(string[] args) { ConnectionFactory factory = new ConnectionFactory() { HostNa ...

  6. js监听用户思否在当前页面

    (function () { var t var hiddenProperty = 'hidden' in document ? 'hidden' : 'webkitHidden' in docume ...

  7. selenium笔记(1)

    selenium笔记(1) 一.关闭页面:1.driver.close() 关闭当前页面2.driver.quit() 退出整个浏览器 二.定位元素:1.find_element_by_id: 根据i ...

  8. Vue 2.6 中部分引入 TypeScript 的方法

    在 Vue 与 Cesium 联合开发的过程中,我发现很多 Cesium 代码不宜直接写在 .vue 文件中.同时由于 Cesium 库较为复杂,不借助 TypeScript 的静态类型会导致代码难维 ...

  9. 大数据学习之HDFS基本命令操作05

    1)hdfs的客户端 1.网页形式->测试用 http://192.168.40.11:50070/dfshealth.html#tab-overview 2.命令行形式->测试用 3.企 ...

  10. Java - 数组详解(图解数组的基本操作)

    目录 什么是数组 数组的定义和内存分配 数组的赋值和访问 数组的注意事项 数组的内存图解 数组的插入 数组的删除 数组的扩容 数组的反转 首先 什么是数组 数组是一组地址连续.长度固定的具有相同类型的 ...