神经网络_线性神经网络 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)是神经元的实际输出。
线性神经网络的目标是寻找最适合的权值W,使得均方差MSE最小,只要对MSE求ω得偏导数,然后让偏导数等于0,那么就可以计算出MSE的极值。
for example:
原始输入:X1=[0 0]T、t1=0,X2=[1 0]T、t2=0,X3=[0 1]T、t3=0,X4=[1 1]T、t4=1。
更改后的输入:X1=[0 0 1]、t1=0,X2=[1 0 1]、t2=0,X3=[0 1 1]、t3=0,X4=[1 1 1]、t4=1。
(1) 初始化权值 W=[ω1,ω2],偏置值 b=b;
(2) 设ω3=b,则W=[ω1,ω2,ω3],更改后的输入如上;
(3) 求解每一个输入的偏差;
(4) 偏差相加求平均;
(5) 对每个权值求偏导数;
(6) 解方程组。
e1=t1-a1=0-X1W=-ω3;
e2=t2-a2=0-X2W=-ω1-ω3;
e3=t3-a3=0-X3W=-ω2-ω3;
e4=t4-a4=1-X4W=1-ω1-ω2-ω3。
MSE=((ω3)2+(ω1+ω3)2+(ω2+ω3)2+(1-ω1-ω2-ω3)2)/4
对MSE的ω1求偏导数,得:∂MSE/∂ω1=ω1+0.5ω2+ω3-0.5;
对MSE的ω2求偏导数,得:∂MSE/∂ω2=0.5ω1+ω2+ω3-0.5;
对MSE的ω3求偏导数,得:∂MSE/∂ω3=ω1+ω2+2ω3-0.5。
使偏导数等于0,可得方程组:
[2 1 2;1 2 2;2 2 4]T*[ω1 ω2 ω3]T=[1 1 1]T。解该方程,可得
ω1= 0.5;
ω2=0.5;
ω3=-0.25。
因此,可得 0.5x1+0.5x2-0.25=0.5 (0.5是因为期望输出为0和1,取其中间值(0+1)/2=0.5)
计算到这步,则可以使用该几何图形将输入的数据在图形上分开,同时得到最佳权值。除用此方法求权值外,还可以使用迭代法计算权值。将在神经网络_线性神经网络 3中讲解 (Nerual Network_Linear Nerual Network)。
神经网络_线性神经网络 2 (Nerual Network_Linear Nerual Network 2)的更多相关文章
- 神经网络_线性神经网络 1 (Nerual Network_Linear Nerual Network 1)
2019-04-08 16:59:23 1 学习规则(Learning Rule) 1.1 赫布学习规则(Hebb Learning Rule) 1949年,Hebb提出了关于神经网络学习机理的“突触 ...
- 神经网络_线性神经网络 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 上,人们已经掌握了用魔 法矿石炼制法杖的技术.那时人们就认识 ...
随机推荐
- 020_Linux的孤儿进程与僵尸进程(Unix系统编程)
1.前言 之前在看<unix环境高级编程>第八章进程时候,提到孤儿进程和僵尸进程,一直对这两个概念比较模糊.今天被人问到什么是孤儿进程和僵尸进程,会带来什么问题,怎么解决,我只停留在概念上 ...
- springboot动态多数据源
参考文章:https://www.cnblogs.com/hehehaha/p/6147096.html 前言 目标是springboot工程支持多个MySQL数据源,在代码层面上,同一个SQL(Ma ...
- windows环境安装phantomjs和pyspider遇到的问题
1. 安装phantomjs 下载地址:http://phantomjs.org/download.html 解压后将phantomjs.exe文件放到python根目录 2.安装pyspider p ...
- c++入门篇五
默认参数: //默认参数//函数的默认参数,参数后面有'='//函数参数注意事项,如有一个位置有了默认参数//那么从该位置的后面就必须要有参数 , ) { //b有默认参数,b的后面也应该要有默认参数 ...
- 01-初识MySQL数据库
一.数据库概述 1.什么是数据 描述事物特征的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机.如: name ...
- iOS开发之获取设备类型
1.简单判断是否是iPad方法 /** 判断是不是iPad*/ + (BOOL)isiPadDevice { return UIUserInterfaceIdiomPad == [UIDevice c ...
- 【JAVA】反射总结
反射是什么? 反射就是指程序在运行的时候可以知道一个类的自身信息. 自身信息有哪些:类方法.属性.成员变量.构造方法.包等 动态编译和静态编译 静态编译:在编译的时候进确定类型,如果绑定对象成功,n ...
- MSSql-1内部数据库版本号
源SQL Server版本 内部数据库版本 SQL Server 2017 869 SQL Server 2016 782 SQL Server 2012 706 SQL Server 2008 R2 ...
- python第六天(元组、字典、集合)
一.元组(tuple) 作用:存多个值,对比列表来说,元组不可变(是可以当做字典的key的),主要用来读 定义:与列表类型相比,只不过把[ ]换成() age=(11,22,33,44,55)prin ...
- Django----将列表按照一定的顺序展示
1.要求:按照文章的时间降序排列,并且只展示前5篇文章 2.需要用到:list的切片知识 ###改造view.py中的视图方法 #列表页 def get_article(request): artic ...