神经网络_线性神经网络 1 (Nerual Network_Linear Nerual Network 1)
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)的更多相关文章
- 神经网络_线性神经网络 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)是神经元 ...
- 神经网络_线性神经网络 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. 设 ...
- 单层感知机_线性神经网络_BP神经网络
单层感知机 单层感知机基础总结很详细的博客 关于单层感知机的视频 最终y=t,说明经过训练预测值和真实值一致.下面图是sign函数 根据感知机规则实现的上述题目的代码 import numpy as ...
- 使用MindSpore的线性神经网络拟合非线性函数
技术背景 在前面的几篇博客中,我们分别介绍了MindSpore的CPU版本在Docker下的安装与配置方案.MindSpore的线性函数拟合以及MindSpore后来新推出的GPU版本的Docker编 ...
- 『PyTorch』第四弹_通过LeNet初识pytorch神经网络_下
『PyTorch』第四弹_通过LeNet初识pytorch神经网络_上 # Author : Hellcat # Time : 2018/2/11 import torch as t import t ...
- 自适应线性神经网络Adaline
自适应线性神经网络Adaptive linear network, 是神经网络的入门级别网络. 相对于感知器, 采用了f(z)=z的激活函数,属于连续函数. 代价函数为LMS函数,最小均方算法,Lea ...
- RBF神经网络和BP神经网络的关系
作者:李瞬生链接:https://www.zhihu.com/question/44328472/answer/128973724来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...
- 神经网络与BP神经网络
一.神经元 神经元模型是一个包含输入,输出与计算功能的模型.(多个输入对应一个输出) 一个神经网络的训练算法就是让权重(通常用w表示)的值调整到最佳,以使得整个网络的预测效果最好. 事实上,在神经网络 ...
- BZOJ_2460_[BeiJing2011]元素_线性基
BZOJ_2460_[BeiJing2011]元素_线性基 Description 相传,在远古时期,位于西方大陆的 Magic Land 上,人们已经掌握了用魔 法矿石炼制法杖的技术.那时人们就认识 ...
随机推荐
- VS2012发布网站详细步骤问题
http://blog.csdn.net/mrobama/article/details/43118387
- MQTT初步使用
环境搭建 1.mosquitto所需要的rpm包 2.c-ares-1.12.0 3.安装最新的openssl版本 4.mosquitto-1.4.10 mosquitto需要的rpm包 c-ares ...
- VisualStudio相关序列号
VisualStudio相关序列号 Visual Studio 2019 Enterprise:BF8Y8-GN2QH-T84XB-QVY3B-RC4DF Visual Studio 2019 ...
- 软件工程作业-(third)
1.选题目(1) 最大连续子数组和(最大子段和) 问题:给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],-,a[n],求该序列如a[i]+a[i+1]+-+a[j]的子段和的最大值. ...
- CSS 屏幕大小自适应
要想实现css屏幕大小自适应,首先得引入 CSS3 @media 媒体查询器: media的使用和规则: ①被链接文档将显示在什么设备上. ②用于为不同的媒介类型规定不同的样式. 语法: @medi ...
- 下拉框、下拉控件之Select2。自动补全的使用
参考链接: 参考一:https://blog.csdn.net/weixin_36146275/article/details/79336158 参考二:https://www.cnblogs.com ...
- Alignment And Compiler Error C2719 字节对齐和编译错误C2719
Compiler Error C2719 'parameter': formal parameter with __declspec(align('#')) won't be aligned The ...
- selenium笔记(1)
selenium笔记(1) 一.关闭页面:1.driver.close() 关闭当前页面2.driver.quit() 退出整个浏览器 二.定位元素:1.find_element_by_id: 根据i ...
- python第十六天
一.包 1.什么是包? 一系列模块的集合 2.有什么用? 包通过文件夹来管理一系列功能相近的模块 3.包重点? 包中一定有一个专门用来管理包中所有模块的文件 __init__ 4.什么是包名? 包 ...
- sql查询单表之中大于2条的数据
SELECT COUNT(字段)AS COUNT,字段FROM 表名 GROUP BY 字段 HAVING COUNT >=