神经网络_线性神经网络 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 上,人们已经掌握了用魔 法矿石炼制法杖的技术.那时人们就认识 ...
随机推荐
- 【转】Oracle之索引
简介 1.说明 1)索引是数据库对象之一,用于加快数据的检索,类似于书籍的目录.在数据库中索引可以减少数据库程序查询结果时需要读取的数据量,类似于在书籍中我们利用目录可以不用翻阅整本书即可找到想要的信 ...
- linux下动态链接库(.so)的显式调用和隐式调用
进入主题前,先看看两点预备知识. 一.显式调用和隐式调用的区别 我们知道,动态库相比静态库的区别是:静态库是编译时就加载到可执行文件中的,而动态库是在程序运行时完成加载的,所以使用动态库的程序的体积要 ...
- 023_System Integrity Protection in macos
背景:之前写的在/usr/bin下的一个登陆线上脚本,由于使用timemachine还原了系统,发现怎么也修改不了,加sudo也不行. 后来查询才得知系统默认开启了"系统集成保护" ...
- Cardinality
Cardinality: 优化器在计算成本的时候,需要从统计信息中取得数据,然后去估计每一步操作所涉及的行数,叫做Cardinality. 比如,一张表T有1000行数据,列COL1上没有直方图,没有 ...
- HTML5 移动端Meta设置
1. 强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览. <meta name="viewport" content= ...
- 详解PROTOCOL BUFFERS
1. 前言 Protocal Buffers是google推出的一种序列化协议.由于它的编码和解码的速度,已经编码后的大小控制的较好,因此它常常被用在RPC调用中,传递参数和结果.比如gRPC. Pr ...
- VMware对虚拟机快照进行克隆
1.在关机状态下做一个快照 2.把快照管理器打开 3.右键快照,选择“克隆此快照” 4.选择要克隆的快照 5.选择克隆的方式 6.设置名称及保存的位置 注:虚拟机的快照是开机状态,不能对快照进行克隆
- c博客作业--函数
1.1 思维导图 1.2 本章学习体会及代码量学习体会 1.2.1 学习体会 刚刚开始学习函数的时候,由于之前对函数有过一定的了解,所以还算比较顺利,不过还是经常出现函数定义和调用的错误,这应该是对函 ...
- 强连通分量Kosaraju
#include<cstdio> #include<algorithm> #include<iostream> #include<cstring> #i ...
- 末学者笔记--rpm和yum软件管理(Linux)
一.rpm简介 这是一个数据库管理工具,可以通过读取数据库,判断软件是否已经安装,如果已经安装可以读取出来所有文件的所在位置等,并可以实现删除这些文件. rpm:RPM is Redhat Packa ...