gpt4 book ai didi

multithreading - 多线程 AForge.NET 培训

转载 作者:行者123 更新时间:2023-12-01 02:26:19 27 4
gpt4 key购买 nike

我正在使用 AForge.NET ANN 并在我的训练集上对其进行训练。因为训练是单线程的,而且这个过程可能需要很长时间,我想知道是否可以运行多线程训练。

因为在训练弹性反向传播网络时使用线程是一个问题,我想在不同的网络之间拆分我的训练集,并且每 N 个时期一次,将所有网络的权重合并为一个,然后,将其复制到所有线程(因此下一个时期将从新的权重开始)。

我似乎无法在 AForge.NET 中找到结合两个(或更多)网络的方法。寻求有关如何开始实现过程的帮助。

最佳答案

每 N 次迭代组合神经网络不会很好地工作。仅获取权重并将它们组合起来可能非常棘手。在某些方面,这就是遗传算法的交叉操作的工作原理。

真正做到这一点的唯一方法是修改 AForge 的训练以支持多线程。基本上要做到这一点,您需要映射梯度计算,然后对梯度进行归约求和。然后使用减少的梯度来更新网络。

我已经在 Encog 框架中实现了这个确切的东西,它支持多线程 (RPROP),并且有一个 C# 版本。 http://www.heatonresearch.com/encog .

关于multithreading - 多线程 AForge.NET 培训,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16100908/

27 4 0
文章推荐: jquery - 在 JQuery 中解析 JSON 对象
文章推荐: angularjs - 使用异步数据设置默认