【发布时间】:2011-02-22 16:31:04
【问题描述】:
我有一个用 Java 编写的神经网络,它使用如下定义的 sigmoid 传递函数:
private static double sigmoid(double x)
{
return 1 / (1 + Math.exp(-x));
}
这在使用网络进行训练和计算期间被调用很多次。有没有办法加快这个速度?不是慢,只是用的比较多,所以这里稍微优化一下,整体收益会很大。
【问题讨论】:
-
x 的值是否曾经重复,或者每次调用方法时它们总是不同的可能性更大?
-
另外,结果需要多准确?
-
@Dave - 取决于所需的精度,但它们都是浮点数,非常独特
-
您是否对程序进行了剖析以知道改进它会显着提高整体性能?
-
@Refactor 加快计算速度实际上是 NN 蛋头们的共同话题,所以我发现 StackOverflowish 的这种反应非常幽默:)
标签: java neural-network mathematical-optimization