《MATLAB神经网络编程》 化学工业出版社 读书笔记
第四章 前向型神经网络 4.2 线性神经网络
本文是《MATLAB神经网络编程》书籍的阅读笔记,其中涉及的源码、公式、原理都来自此书,若有不理解之处请参阅原书。
首先定义一些神经网络中常用的参数意义,如下图:
一,线性神经网络的构建。
1,生成线性神经元。
构建一个如下图所示的具有两个输入端的单神经元线性网络。
其权值矩阵W是一个行向量,网络输出a为:
a=purelin(n)=purelin(WP+b)=WP+b
或者:
a=w1,1*p1+w1,2*p2+b
与感知器一样,线性神经网络也有一个分界线,由输入向量决定,即n=0时,方程WP+b=0,分类示意图如下:
输入向量在分界线右上时,输出大于0;输入向量在左下时,输出小于0.这样,线性神经网络就可以用来研究分类问题;当然,前提是进行分类的问题是线性可分的,这与感知器的局限是相同的。
【例4-13】应用newlin设计一个双输入单输出线性神经网络,输入向量范围是[-1 1;-1 1],学习速率是1。
源代码是如下:
clear all
net=newlin([-1 1;-1 1],1); %此时网络权值和阈值默认为0
W=net.IW{
1,1} %W=0 0
b=net.b{
1} %b=0
net.IW{
1,1}=[2