对于我的研究生研究,我正在创建一个训练识别图像的神经网络。就像许多示例一样,我要比仅对RGB值进行栅格化,下采样并将其发送到网络的输入要复杂得多。实际上,我使用了100多个经过独立训练的神经网络来检测特征,例如线条,阴影图案等。更像是人眼,到目前为止,它的效果非常好!问题是我有很多训练数据。我向它展示了汽车的100多个示例。然后是一个人的100个例子。然后是100多只狗的样子,等等。这是很多训练数据!目前,我大约需要一周时间训练网络。这是一种阻碍我进步的事情,因为我需要进行调整和再培训。
我正在使用Neuroph作为低级神经网络API。我正在运行双四核计算机(具有超线程的16核),因此该速度应该很快。我的处理器百分比仅为5%。在Neuroph性能方面有什么技巧吗?还是Java性能一般?有什么建议吗?我是一名认知心理学博士学位的学生,并且我是一名程序员,但我对性能编程不了解很多。
是的,几个月前我走了那条路。也用于大学项目。第一个问题是Neuroph。它致命的缓慢。Neuroph非常了解主要的体系结构和性能问题,上周有关代码项目的文章只有一篇。
http://www.codeproject.com/KB/recipes/benchmark-neuroph- encog.aspx
我遵循与本文作者相似的路径。从Neuroph切换到Encog是一个真正容易的端口。上一篇文章的作者甚至还比较了Encog,JOONE和Neuroph的语法,因此您可以进行比较。有关Encog的更多信息,
http://www.heatonresearch.com/encog
Encog还将充分利用您的核心。只需查看以上文章中的图表即可。
祝好运!您的研究听起来很棒,我很乐意看到结果。