【问题标题】:Reduction of numbers accuracy in ND4J降低 ND4J 中的数字准确性
【发布时间】:2020-08-13 15:12:41
【问题描述】:

我有一个名为“真实”的数组。它有一个双数向量。我正在尝试根据我的向量创建一个 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,0.0,0.0,Infinity,Infinity,-0.0,-0.0 ....

提前感谢您的帮助

【问题讨论】:

    标签: java dl4j nd4j


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-09
      • 2020-03-22
      • 2017-12-08
      • 1970-01-01
      • 2019-11-27
      • 2019-11-26
      • 2020-11-19
      • 2018-10-23
      相关资源
      最近更新 更多