【问题标题】:ND4J: Why random numbers are different with even when specified same seed?ND4J:为什么即使指定相同的种子,随机数也会不同?
【发布时间】:2020-05-04 13:56:45
【问题描述】:

我想在给定固定种子时生成相同的随机数发送。为此,我从 nd4j 文档中找到了一些类。但生成的随机数不同。可能是什么原因以及如何实现与 java 的默认随机生成器相同的一组随机数?

        java.util.Random origRand = new java.util.Random();
        org.nd4j.linalg.api.rng.DefaultRandom nd4jRand = Nd4j.getRandom();
        org.nd4j.linalg.api.rng.DefaultRandom nd4jRand2 = new DefaultRandom();

        origRand.setSeed(givenSeed);
        nd4jRand.setSeed(givenSeed);
        nd4jRand2.setSeed(givenSeed);

        System.out.println(origRand.nextFloat()+"\t"+origRand2.nextFloat()+"\t"+nd4jRand.nextFloat()+"\t"+nd4jRand2.nextFloat());

//output:  0.73043025   0.3941323   0.7713206

【问题讨论】:

    标签: dl4j nd4j


    【解决方案1】:

    没有办法生成与 Java RNG 返回的数字相同的数字。 Nd4j 和 Java 使用不同的算法生成随机数。

    【讨论】:

      猜你喜欢
      • 2019-02-14
      • 1970-01-01
      • 1970-01-01
      • 2014-09-27
      • 2019-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多