Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么可以';t Matlab R2010从R2007加载神经网络对象?_Matlab_Variables_Operator Overloading_Neural Network_Matlab Load - Fatal编程技术网

为什么可以';t Matlab R2010从R2007加载神经网络对象?

为什么可以';t Matlab R2010从R2007加载神经网络对象?,matlab,variables,operator-overloading,neural-network,matlab-load,Matlab,Variables,Operator Overloading,Neural Network,Matlab Load,我有一个神经网络,我已经保存到Matlab2007中的.mat文件中 我正试图从带有load filename.mat的文件中加载神经网络。 这在R2007b和R2008版本中非常有效,但当我尝试加载R2010b时,我得到以下消息: 警告:运行类的 loadobj方法。从中加载的对象 MAT文件是loadobj之前对象的副本 方法已运行。其余的变量也被忽略了 从MAT文件加载。 遇到的错误是: 对不存在字段“name”的引用 奇怪的是,它看起来好像持有神经网络的变量存在,但它不能正常工作。使用神

我有一个神经网络,我已经保存到Matlab2007中的.mat文件中

我正试图从带有
load filename.mat
的文件中加载神经网络。 这在R2007b和R2008版本中非常有效,但当我尝试加载R2010b时,我得到以下消息:

警告:运行类的 loadobj方法。从中加载的对象 MAT文件是loadobj之前对象的副本 方法已运行。其余的变量也被忽略了 从MAT文件加载。
遇到的错误是:
对不存在字段“name”的引用

奇怪的是,它看起来好像持有神经网络的变量存在,但它不能正常工作。使用神经网络的函数在R2010中都不起作用

有没有人遇到过类似的问题?如何保存神经网络,使其与Matlab R2010兼容?

或者更好的是,如何在Matlab 2010中正确加载它?

是的,根据这篇文章,似乎其他人也遇到了这个问题(Matlab 2010中没有加载神经网络),Andreas Goser(Mathworks的技术支持经理)在文章中建议:

如果您将来看到此问题,请参阅解决方案1-EGNM3S

显然,您需要一个技术支持可以提供的“fixed net.m文件”。我没有测试过,因为我自己没有这个问题


仔细阅读错误消息,我会说您看到加载的变量包含存储在.MAT文件中的“raw”对象,很可能是一个struct。您可以运行
whosmyvarname
进行检查。要将此结构“恢复”为对象,需要通过重载的
loadobj
函数对其对象类型进行处理,该函数通常由MATLAB的
load
函数自动调用。在这种情况下,R2010中神经元网络对象附带的
loadobj
似乎不完全向后兼容…

我怀疑神经网络的底层对象自2007b以来发生了变化,R2010b中的定义与MAT文件中存储的数据不兼容

我建议遵循乔纳斯的答案。或者,您可以尝试加载它并将其重新保存在MATLAB中间版本中,或者保存来自神经网络对象的数据并在R2010b中重建它