我有一个使用 Matlab 运行的大规模梯度下降优化问题。代码有两部分:
- 触发每次更新参数向量的迭代的顺序更新部分。
- 一个验证错误计算部分,每 10 次左右的迭代触发一次,它使用触发它的相应迭代结束时的参数值。
我现在运行的方式是依次执行 (1) 和 (2)。但是(2)需要很多时间,而且它不是我日常工作的核心部分——我只是为了检查进度并绘制模型的错误。是否可以在 Matlab 中以与 (1) 并行的方式运行 (2) ?请注意,(1) 不能并行运行,因为它执行顺序更新。所以一个简单的“parfor”用法不是一个解决方案,除非有一个非常聪明的方法来做到这一点。