加快Java中的数学计算
发布时间:2020-05-24 09:28:34 所属栏目:Java 来源:互联网
导读:我有一个用 Java编写的神经网络,它使用Sigmoid传递函数定义如下: private static double sigmoid(double x){ return 1 / (1 + Math.exp(-x));} 这在使用网络的训练和计算中被称为多次.有什么办法加速这个吗?这不是很慢,只是它被使用了很多,所以这里的一个小
|
我有一个用 Java编写的神经网络,它使用Sigmoid传递函数定义如下: private static double sigmoid(double x)
{
return 1 / (1 + Math.exp(-x));
}
这在使用网络的训练和计算中被称为多次.有什么办法加速这个吗?这不是很慢,只是它被使用了很多,所以这里的一个小的优化将是一个很大的整体收益. 解决方法对于神经网络,您不需要Sigmoid函数的确切值.因此,您可以预先计算100个值,并重新使用与输入最接近的值,甚至更好(作为注释),从邻居值进行插值.你可以这样做,这个article描述(链接从answer of s-lott被盗). 这是Sigmoid函数: 如您所见,只有-10℃ x < 10都很有趣.而另一个评论说,这个功能是对称的.你只需要存储一半的值. 编辑:对不起,我在这里显示错误的图表.我已经纠正了 (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 仿真 – 独立测试中的6502与Commodore PET中断的行为
- java – newCachedThreadPool如何重用线程?
- Spring Boot高级教程之使用Redis实现session共享
- java – 为什么FileSystemXmlApplicationContext会对存在的
- layout – JavaFX 2创建自定义窗格
- java – 我可以为套件中的所有测试应用时间限制
- java – 如何用mybatis运行任意sql?
- 如何使用Junit测试弹簧控制器方法
- 使用taskan的java-skype api以Java形式发送Skype消息
- java – 从本机函数(c,jni)返回一个int会导致应用程序崩溃
