在MATLAB中向神经网络结构添加新字段

时间:2014-06-05 15:03:32

标签: matlab neural-network

任何人都可以告诉我是否可以在MATLAB中为“网络”结构添加新字段?

我试过这个:

net = setfield(net,'tr',tr);

但是我收到了这个错误:

  

引用不存在的字段'tr'。

2 个答案:

答案 0 :(得分:2)

net不是常规结构,而是类的实例。

您不能只是向对象添加任意字段。

>> net = feedforwardnet(4);
>> isobject(net)
ans =
     1
>> class(net)
ans =
network

查看对象时,有一个userdata属性,为用户提供了一个向网络对象添加自定义信息的位置。

>> net.userdata.tr = rand(10);
>> net.userdata
ans = 
    note: 'Put your custom network information here.'
      tr: [10x10 double]

答案 1 :(得分:0)

正如Amro所指出的那样,net是一个对象,而不是一个结构,因此你不能为其添加一个字段。
您可以做的是创建自己的结构,其中net为其中的一个字段

>> myNet.net = net;
>> myNet.tr = tr;