Search in sources :

Example 11 with Random

use of org.nd4j.linalg.api.rng.Random in project nd4j by deeplearning4j.

the class RandomTests method testDeallocation1.

@Ignore
@Test
public void testDeallocation1() throws Exception {
    while (true) {
        Random random1 = Nd4j.getRandomFactory().getNewRandomInstance(119);
        random1.nextInt();
        System.gc();
        Thread.sleep(50);
    }
}
Also used : Random(org.nd4j.linalg.api.rng.Random) DefaultRandom(org.nd4j.linalg.api.rng.DefaultRandom) NativeRandom(org.nd4j.rng.NativeRandom) Ignore(org.junit.Ignore) BaseNd4jTest(org.nd4j.linalg.BaseNd4jTest) Test(org.junit.Test)

Example 12 with Random

use of org.nd4j.linalg.api.rng.Random in project nd4j by deeplearning4j.

the class RandomTests method testBinomialDistribution2.

@Test
public void testBinomialDistribution2() throws Exception {
    Random random1 = Nd4j.getRandomFactory().getNewRandomInstance(119);
    Random random2 = Nd4j.getRandomFactory().getNewRandomInstance(119);
    INDArray z1 = Nd4j.zeros(1000);
    INDArray z2 = Nd4j.zeros(1000);
    INDArray z1Dup = Nd4j.zeros(1000);
    INDArray probs = Nd4j.create(new float[] { 0.25f, 0.43f, 0.55f, 0.43f, 0.25f });
    BinomialDistribution op1 = new BinomialDistribution(z1, 5, probs);
    BinomialDistribution op2 = new BinomialDistribution(z2, 5, probs);
    Nd4j.getExecutioner().exec(op1, random1);
    Nd4j.getExecutioner().exec(op2, random2);
    assertNotEquals(z1Dup, z1);
    assertEquals(z1, z2);
    BooleanIndexing.and(z1, Conditions.lessThanOrEqual(5.0));
    BooleanIndexing.and(z1, Conditions.greaterThanOrEqual(0.0));
}
Also used : Random(org.nd4j.linalg.api.rng.Random) DefaultRandom(org.nd4j.linalg.api.rng.DefaultRandom) NativeRandom(org.nd4j.rng.NativeRandom) INDArray(org.nd4j.linalg.api.ndarray.INDArray) BaseNd4jTest(org.nd4j.linalg.BaseNd4jTest) Test(org.junit.Test)

Example 13 with Random

use of org.nd4j.linalg.api.rng.Random in project nd4j by deeplearning4j.

the class RandomTests method testJavaSide2.

@Test
public void testJavaSide2() throws Exception {
    Random random1 = Nd4j.getRandomFactory().getNewRandomInstance(119);
    Random random2 = Nd4j.getRandomFactory().getNewRandomInstance(119);
    int[] array1 = new int[1000];
    int[] array2 = new int[1000];
    for (int e = 0; e < array1.length; e++) {
        array1[e] = random1.nextInt();
        array2[e] = random2.nextInt();
        assertEquals(array1[e], array2[e]);
        assertTrue(array1[e] >= 0);
    }
    assertArrayEquals(array1, array2);
}
Also used : Random(org.nd4j.linalg.api.rng.Random) DefaultRandom(org.nd4j.linalg.api.rng.DefaultRandom) NativeRandom(org.nd4j.rng.NativeRandom) BaseNd4jTest(org.nd4j.linalg.BaseNd4jTest) Test(org.junit.Test)

Example 14 with Random

use of org.nd4j.linalg.api.rng.Random in project nd4j by deeplearning4j.

the class RandomTests method testDistribution1.

@Test
public void testDistribution1() throws Exception {
    Random random1 = Nd4j.getRandomFactory().getNewRandomInstance(119);
    Random random2 = Nd4j.getRandomFactory().getNewRandomInstance(119);
    INDArray z1 = Nd4j.create(1000);
    INDArray z2 = Nd4j.create(1000);
    UniformDistribution distribution = new UniformDistribution(z1, 1.0, 2.0);
    Nd4j.getExecutioner().exec(distribution, random1);
    UniformDistribution distribution2 = new UniformDistribution(z2, 1.0, 2.0);
    Nd4j.getExecutioner().exec(distribution2, random2);
    System.out.println("Data: " + z1);
    System.out.println("Data: " + z2);
    for (int e = 0; e < z1.length(); e++) {
        double val = z1.getDouble(e);
        assertTrue(val >= 1.0 && val <= 2.0);
    }
    assertEquals(z1, z2);
}
Also used : Random(org.nd4j.linalg.api.rng.Random) DefaultRandom(org.nd4j.linalg.api.rng.DefaultRandom) NativeRandom(org.nd4j.rng.NativeRandom) INDArray(org.nd4j.linalg.api.ndarray.INDArray) BaseNd4jTest(org.nd4j.linalg.BaseNd4jTest) Test(org.junit.Test)

Example 15 with Random

use of org.nd4j.linalg.api.rng.Random in project nd4j by deeplearning4j.

the class RandomTests method testDistribution3.

@Test
public void testDistribution3() throws Exception {
    Random random1 = Nd4j.getRandomFactory().getNewRandomInstance(119);
    INDArray z1 = Nd4j.create(128);
    INDArray z2 = Nd4j.create(128);
    UniformDistribution distribution = new UniformDistribution(z1, 1.0, 2.0);
    Nd4j.getExecutioner().exec(distribution, random1);
    UniformDistribution distribution2 = new UniformDistribution(z2, 1.0, 2.0);
    Nd4j.getExecutioner().exec(distribution2, random1);
    System.out.println("Data: " + z1);
    System.out.println("Data: " + z2);
    assertNotEquals(z1, z2);
}
Also used : Random(org.nd4j.linalg.api.rng.Random) DefaultRandom(org.nd4j.linalg.api.rng.DefaultRandom) NativeRandom(org.nd4j.rng.NativeRandom) INDArray(org.nd4j.linalg.api.ndarray.INDArray) BaseNd4jTest(org.nd4j.linalg.BaseNd4jTest) Test(org.junit.Test)

Aggregations

Random (org.nd4j.linalg.api.rng.Random)38 Test (org.junit.Test)31 BaseNd4jTest (org.nd4j.linalg.BaseNd4jTest)31 DefaultRandom (org.nd4j.linalg.api.rng.DefaultRandom)31 NativeRandom (org.nd4j.rng.NativeRandom)29 INDArray (org.nd4j.linalg.api.ndarray.INDArray)24 AtomicLong (java.util.concurrent.atomic.AtomicLong)3 CopyOnWriteArrayList (java.util.concurrent.CopyOnWriteArrayList)2 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)2 Model (org.deeplearning4j.nn.api.Model)2 NeuralNetConfiguration (org.deeplearning4j.nn.conf.NeuralNetConfiguration)2 ConvexOptimizer (org.deeplearning4j.optimize.api.ConvexOptimizer)2 JDKRandomGenerator (org.apache.commons.math3.random.JDKRandomGenerator)1 VectorsListener (org.deeplearning4j.models.sequencevectors.interfaces.VectorsListener)1 Ignore (org.junit.Ignore)1 MatchCondition (org.nd4j.linalg.api.ops.impl.accum.MatchCondition)1 Distribution (org.nd4j.linalg.api.rng.distribution.Distribution)1 NormalDistribution (org.nd4j.linalg.api.rng.distribution.impl.NormalDistribution)1 OrthogonalDistribution (org.nd4j.linalg.api.rng.distribution.impl.OrthogonalDistribution)1