当前位置:首页 > MATLAB神经网络工具箱中的网络对象及属性
其他属性:
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属性
net.layers{i}.distanceFcn,该属性定义一个函数,用于第i个网络层中的神经元之间距离的计算,它是根据神经元的位置
(net.layers{i}.positions)来进行计算的。神经元的距离用于自组织映射神经网络。
该属性可被设置成神经网络工具箱中的以下距离函数: boxdist---计算两个位置向量之间距离的距离函数; dist---欧几里得(Euclidean)距离权值函数; linkdist---连接距离函数;
mandist---曼哈顿(Manhattan)距离权值函数。 (3)distances属性(只读)
net.layers{i}.disances,该属性定义第i个网络层中神经元之间的距离,这些距离用于自组织映射神经网络。其值为网络层距离函数(net.layers{i}.distanceFcn)的计算结果,是通过网络层神经元的位置(net.layers{i}.positions)进行计算的。
(4)initFcn属性
net.layers{i}.initFcn,如果网络初始化函数(net.initFcn)设置为initlay,则该属性定义为第i个网络层的初始化函数。
该属性可被设置为:
initnw---NW(Nguyen-Widrow)网络层初始化函数;
initwb---通过权值和阈值进行初始化的网络层初始化函数。
(5)netInputFcn属性
net.layers{i}.netInputFcn属性定义一个网络输入函数,以给定的权值和阈值计算第i个网络层的输入。
该属性可被设置为:
netprod---求积网络输入函数;
netsum---求和网络输入函数。
(6)positions属性(只读)
net.layers{i}.positions,该属性定义第i个网络层中神经元的位置,这些位置用于自组织映射。其值为网络拓扑结构函数
(net.layers{i}.topologyFcn)关于位置的计算结果,它是通过网络层神经元维数(net.layers{i}.dimensions)进行计算的。
可以用plotsom函数画出网络层神经元的位置图。例如: plotsom(net2.layers{1}.positions)
(7)size属性
net.layers{i}.size,该属性定义第i网络层中的神经元数目,其值可以设置为零活正整数。
其值一旦发生变化,则所有的net.inputWeights{i,:}.size(连接到该网络层的输入权值向量元素的数目),net.layerWeights{:,i}.size(该网络层连接到其他网络层权值向量元素的数目),
net.inputWeights{i,:}.size(其他网络层连接到该网络层权值向量元素的数目),net.bias{i}.size(该网络层阈值向量元素的数目)等都将随之改变。 与之相关的net.IW{i,:},net.LW{i,:},net.LW{:,i}和biases(net.b{i})向量的维数也会随之改变。
同时网络层神经元的维数(net.layers{i}.dimensions)将被设置成与该属性相同的值,这仅适用于神经元的维数为一维的情况;对于多维情况,应该直接设置net.layers{i}.dimensions,而不应使用size属性进行设置。
(8)topologyFcn属性
net.layers{i}.topologyFcn,该属性定义一拓扑结构函数,用于计算第i个网络层中的神经元位置(net.layers{i}.positions),该位置是通过网络层神经元维数net.layes{i}.dimensions进行计算的。其值可以设成:
gridtop---网状网络层拓扑结构函数;
共分享92篇相关文档