归一化均方误差性能函数(mean squared error with regularization);sse---平方和误差性能函数(sum squared error)。
performFcn属性值一旦发生变化,网络性能参数(net.performParam)将被设置为新的性能函数所包含的参数及其默认值。
(4)trainFcn属性
net.trainFcn属性定义了网络用于训练网络性能所采用的函数,它可以被设置为任意一个训练函数名。
trainbfg---BFGS算法(拟牛顿反向传播算法)训练函数; trainbr---贝叶斯归一化法训练函数;
traincgb---Powell-Beale共轭梯度反向传播算法训练函数; traincgp---Polak-Ribiere变梯度反向传播算法训练函数; traingd---梯度下降反向传播算法训练函数;
traingda---自适应调整学习率的梯度下降反向传播算法训练函数; traingdm---附加动量因子的梯度下降反向传播算法训练函数;
traingdx---自适应调整学习率并附加动量因子的梯度下降反向传播算法训练函数;
trainlm---Levenberg-Marquardt反向传播算法训练函数; trainoss---OSS(one step secant)反向传播算法训练函数; trainrp---RPROP(弹性BP算法)反向传播算法训练函数;
trainscg---SCG(scaled conjugate gradient)反向传播算法训练函数; trainb---以权值/阈值的学习规则采用批处理的方式进行训练的函数; trainc---以学习函数依次对输入样本进行训练的函数; trainr---以学习函数随机对输入样本进行训练的函数。 当调用train函数时,上述训练函数被用于训练网络: [net, tr]=train(NET, P, T, Pi, Ai)
trainFcn的属性值一旦发生变化,网络训练参数(net.trainParam)将被设置为新的训练函数所包含的参数及其默认参数值。
?
MATLAB神经网络工具箱中的网络对象及属性(三)
参数属性
(1)adaptParam属性
net.adaptParam属性定义为当前网络权值/阈值调整函数的参数及参数值,取决于当前的权值/阈值调整函数(net.adaptFcn),可以查看有关调整函数的帮助以获得这些参数及参数值。在MATLAB命令窗口中输入命令:
help(net.adaptFcn)
也可以获得这些参数以及参数值的具体描述。 (2)initParam属性
net.initParam属性定义当前初始化函数的参数及参数值,取决于当前的初始化函数(net.initFcn),可以查看有关初始化函数的帮助获得这些参数及参数值。在MATLAB命令窗口中输入名利:
help(net.initFcn)
也可获得这些参数及参数值的具体描述。 (3)performParam属性
net.performParam属性定义当前函数的参数及参数值,取决于当前的性能函数(net.performFcn),可以查看有关性能函数的帮助获得这些参数以及参数值。在MATLAB命令窗口中输入:
help(net.performFcn) 也可获得这些参数及参数值的具体描述。 (4)trainParam属性
net.trainParam属性定义当前训练函数的参数及参数值,取决于当前的训练函数(net.trainFcn),可以查看有关训练函数的帮助获得这些参数以及参数值。在MATLAB命令窗口中输入命令:
help(net.trainFcn) 也可获得这些参数及参数值的具体描述。
? ? ?
MATLAB神经网络工具箱中的网络对象及属性(四)
2010-05-18 20:33 发表 系统分类:可编程逻辑 自定义分类:Matlab 标签:MATLAB 神经网络 网络对象
权值和阈值属性:
权值和阈值的属性定义了网络的可调整参数:权值向量和阈值向
量。
(1)IW属性
net.IW属性定义了从网络输入向量到网络层的权值向量(即输入层的权值向量)结构。其值为Nl*Ni的细胞矩阵,Nl为网络层数(net.numLayers),Ni为输入向量数(net.numInputs)。通过访问net.IW{i,j},可以获得第i个网络层来自第j个输入向量的权值向量值。
(2)LW属性
net.LW定义了从一个网络层到另一个网络层的权值向量结构。其值为Nl*Nl的细胞矩阵,Nl为网络层数(net.numLayers)。通过访问net.LW{i,j},可以获得第i个网络层来自第j个网络层的权值向量值。
(3)b属性
net.b属性定义各网络层的阈值向量结构。其值Nl*1的细胞矩阵,Nl为网络层(net.numLayers)。通过访问net.b{i},可以获得第i个网络层的阈值向量值。
其他属性:
userdata
属性:
net.userdata属性为用户提供了增加关于网络对象的用户信息的地方,它预先只定义了一个字段,其值为一提示信息:
net.userdata=note:'Put your custom network information here.'
? ? ?
MATLAB神经网络工具箱中的网络对象及属性(五)
2010-05-19 20:28 发表 系统分类:可编程逻辑 自定义分类:Matlab 标签:MATLAB 神经网络 网络对象
子对象的属性:
子对象的属性定义了网络的各个子对象:输入向量、网络层、输出
向量、目标向量、权值向量和阈值向量的属性。
1.输入向量
net.inputs,该子对象的属性详细定义了网络的每个输入向量的每一个输入量。例如:
net1.inputs=net2.inputs{[1*1struct]} 通过访问net.inputs{i}可以获得第i个输入向量的属性值。 (1)range属性
net.inputs{i}.range定义了第i个输入向量中每个元素的取值范围,其值是一个R*2的矩阵,R为输入向量的元素个数。矩阵的第一列是每个元素的最小值,矩阵的第二列是每个元素的最大值。它包含了两个信息:a. 输入向量R的元素个数 (也就是输入变量的个数); b. 每个输入变量的取值区间。从而确定了输入向量的规模,另外range属性值还用于在一些初始化函数中确定连接输入向量的权值和阈值的初值。
(2)size属性
net.inputs{i}.size定义了网络各输入向量的元素数目,可以被设置为零或正整数。当其值发生变化时,表明输入向量的元素数目发生了变化,那么相应的range属性值(net.inputs{i}.range)、与之相连接的权值的size属性值(net.inputWeights{:,i}.size)及输入权值向量(net.IW{:,i})的大小会自动作相应变化。
(3)userdata属性
net.input{i}..userdata和net.userdata为用户提供了关于输入向量的用户信息的地方,它预先只定义了一个字段,其值为一提示信息: net.inputs{i}.userdata=note:'Put your custom input information here'
? ? ?
MATLAB神经网络工具箱中的网络对象及属性(六)
2010-05-19 20:29 发表 系统分类:可编程逻辑 自定义分类:神经网络 标签:MATLAB 神经网络 网络对象
子对象的属性: 2.网络层
net.layers,该子对象的属性详细定义了网络的每一个网络层。通过
访问net.layers{i}可以获得第i个网络层的属性值:
(1)dimensions属性
net.Layers{i}.dimensions属性定义了第i个网络层神经元的位数。对于自组织映射的多维方式,能够设置网络层的神经元维数是很重要的。net.layers{i}.dimensions可以被设置成所有元素值为零或正整数的行向量,此时,行向量所有元素的乘积即为该网络层的神经元数。
当采用网络拓扑函数(net.layers{i}.topologyFcn)计算神经元在网络层中的位置(net.layers{i}.positions)时,将用到网络层神经元维数。 net.layers{i}.dimensions属性一旦改变,网络层的大小
(net.layers{i}.size)、网络层神经元的位置(net.layers{i}.positions)以及了两个神经元之间的距离(net.layers{i}.distances)都会随之改变。
(2)distanceFcn属性