文章

Matlab newrb调用崩溃以及nntoc问题

个人推测,matlab2024b的toolbox中nnet经过了一轮更新调整,更新了nncore然后nndtoc由于不兼容就移除了

然后在实验中,强行添加了旧版本的nnet文件,然后自定义了路径,导致错误

MEX文件期望新版数据结构,但内存布局不匹配导致访问冲突

最初错误堆栈

[  0] 0x00007ffa5b043dff D:\Application\MATLAB 
R2024b\toolbox\nnet\nnet\nnderivative\+nnMex\yy.mexw64+00015871 mexFunction+00000111

临时解决方案:命令行执行恢复MATLAB默认路径配置

restoredefaultpath;  % 清除所有自定义路径
savepath;            % 保存为默认配置

兼容性问题

MATLAB版本

旧版nnet支持

新版nnet功能

兼容性状态

R2022a/b

✅ 完全支持

⚠️ 部分支持

newrb部分不影响

R2024b

❌ 不再支持

✅ 完全支持

不兼容旧版

如果想去做nndtoc实验,就需要先去链接nnet旧版文件夹。在复制之前,一定要复制原2024b新版的nnet,制作副本,以便后续恢复,然后在做完这个实验后,执行恢复MATLAB默认路径配置

License:  CC BY 4.0