@Override public void initializeBackend() { // Constructions normal distribution with lower limit -1 and upper limit 1 backend = new org.deeplearning4j.nn.conf.distribution.UniformDistribution(-1.0, 1.0); } }
public void setLower(double mean) { backend.setLower(mean); }
public void setUpper(double std) { backend.setUpper(std); }
public static org.nd4j.linalg.api.rng.distribution.Distribution createDistribution(Distribution dist) { if (dist == null) return null; if (dist instanceof NormalDistribution) { NormalDistribution nd = (NormalDistribution) dist; return Nd4j.getDistributions().createNormal(nd.getMean(), nd.getStd()); } if (dist instanceof GaussianDistribution) { GaussianDistribution nd = (GaussianDistribution) dist; return Nd4j.getDistributions().createNormal(nd.getMean(), nd.getStd()); } if (dist instanceof UniformDistribution) { UniformDistribution ud = (UniformDistribution) dist; return Nd4j.getDistributions().createUniform(ud.getLower(), ud.getUpper()); } if (dist instanceof BinomialDistribution) { BinomialDistribution bd = (BinomialDistribution) dist; return Nd4j.getDistributions().createBinomial(bd.getNumberOfTrials(), bd.getProbabilityOfSuccess()); } throw new RuntimeException("unknown distribution type: " + dist.getClass()); } }
@OptionMetadata( displayName = "lower limit", description = "The lower limit (default = -1.0).", commandLineParamName = "lower", commandLineParamSynopsis = "-lower <double>", displayOrder = 1 ) public double getLower() { return backend.getLower(); }
@OptionMetadata( displayName = "upper limit", description = "The upper limit (default = 1.0).", commandLineParamName = "upper", commandLineParamSynopsis = "-upper <double>", displayOrder = 2 ) public double getUpper() { return backend.getUpper(); }
return new UniformDistribution(l, u); } else if (node.has("binomial")) { JsonNode n = node.get("binomial");