1

我正在从这个工具箱 DR toolbox执行降维算法。我正在这个数据集Gisette上执行线性判别分析代码。在 train_data 和 train_labels 上执行。当我执行代码运行但一段时间后matlab自行关闭。无法弄清楚为什么会发生这种情况?

4

1 回答 1

2

追踪 MATLAB 崩溃是出了名的困难(我曾经在那里工作,正是为客户做这件事)。

即使有 JAVA 转储或 seg-fault 列表,您也无法在不使用 MATLAB 调试器逐行检查的情况下确定这是在哪一行。如果问题是随机的或基于内存的,您可能永远无法找到它。

这就是坏消息。好消息是 95% 的崩溃是由于 3rd 方 MEX 文件和相关的内存泄漏造成的。我猜在调暗工具箱中是一个 MEX 文件,这就是崩溃的原因。它是确定性的。如果是这种情况,您可以对代码进行 dbstop 和 dbstep 以确定 MATLAB 在哪一行消失,然后将其报告给工具箱开发人员。或者开始编辑 MEX 文件的 C 代码。

如果您还不知道,以下是有关调试的信息:

http://www.mathworks.com/help/matlab/ref/dbstop.html;jsessionid=b3d5f42e047aacb596868b7a5961

如果这不起作用,请尝试另一个工具箱。

我和我的朋友写了一个免费的:http: //www.mathworks.com/matlabcentral/linkexchange/links/2947-pattern-recognition-toolbox

于 2012-10-23T01:29:14.793 回答