0

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

我提前感谢您的帮助

4

1 回答 1

0

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

于 2020-08-13T23:26:42.867 回答