目前我正在尝试培训以下配置的神经网络 输入图层大小 - > 307200 隐藏层大小 - > 50 输出层大小 - > 10
我使用coursera'fmincg'提供的优化功能来训练网络。由于网络规模很大,需要很长时间。所以我试着在matlab中使用并行计算工具箱。 Matlab有一个关于使用并行计算进行matlab提供的优化函数的文档。
但我不知道如何将并行计算用于用户定义函数的自定义优化函数。
如果有人能对此有所了解,我将不胜感激。
答案 0 :(得分:0)
这是一项艰巨的任务。您必须重新编写优化求解器本身。在较粗糙的级别进行并行化会更容易。例如,您可能会重复训练网络以尝试不同的初始化条件,超参数值等。在这种情况下,通过使用不同的值同时训练多个网络可以很容易地进行并行化。还有许多其他加速培训的方法值得研究,包括改变初始化/优化/计算事物的方式。