微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

降低ND4J中的数字精度

如何解决降低ND4J中的数字精度

我有一个数组,即“ real”。它具有双数向量。我试图基于我的向量创建一个Indarray。 我的代码如下:

double real_d = (double) ArrBD.get(0);
Indarray real = Nd4j.create(real_d);

它可以工作,但不幸的是,它可以将大数字转换为无穷大,而将小数字转换为零。

在这里您可以看到双精度数组:

[0.0,5.911259568298103E-306,-1.8401529637727614E-221,1.7562463582928743E-268,2.7206514809021945E-133,4.583815262762733E90,2.5637698710586 ....
and here the data of Indarray:
[0.0,0.0,-0.0,Infinity,-0.0 ....

感谢您的提前帮助

解决方法

如果要提高精度,则必须设置数据类型。就像numpy或任何其他与ndarrays一起使用的数学库一样,如果您有浮点数,则会降低精度。由于浮点数的工作原理,这是所有这些库的正常属性。 创建ndarray时,可以先指定数据类型,也可以手动创建数据缓冲区。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。