• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java ComputationGraph类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.deeplearning4j.nn.graph.ComputationGraph的典型用法代码示例。如果您正苦于以下问题:Java ComputationGraph类的具体用法?Java ComputationGraph怎么用?Java ComputationGraph使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



ComputationGraph类属于org.deeplearning4j.nn.graph包,在下文中一共展示了ComputationGraph类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: getOutput

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
private INDArray getOutput(InputStream isModel, INDArray image) {
		org.deeplearning4j.nn.api.Model dl4jModel;
		try {
			// won't use the model guesser at the moment because it is trying to load a keras model?
//			dl4jModel = ModelGuesser.loadModelGuess(isModel);
			dl4jModel = loadModel(isModel);
		} catch (Exception e) {
			throw new IllegalArgumentException("Not able to load model.", e);
		}
		if(dl4jModel instanceof MultiLayerNetwork) {
			MultiLayerNetwork multiLayerNetwork = (MultiLayerNetwork) dl4jModel;
			multiLayerNetwork.init();
			return multiLayerNetwork.output(image);
		} else {
			ComputationGraph graph = (ComputationGraph) dl4jModel;
			graph.init();
			return graph.output(image)[0];
		}
	}
 
开发者ID:jesuino,项目名称:kie-ml,代码行数:20,代码来源:DL4JKieMLProvider.java


示例2: testListenersGraph

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Test
public void testListenersGraph() {
    TestListener.clearCounts();

    ComputationGraphConfiguration conf = new NeuralNetConfiguration.Builder().graphBuilder()
                    .addInputs("in").addLayer("0",
                                    new OutputLayer.Builder(LossFunctions.LossFunction.MSE).nIn(10).nOut(10)
                                                    .activation(Activation.TANH).build(),
                                    "in")
                    .setOutputs("0").build();

    ComputationGraph model = new ComputationGraph(conf);
    model.init();

    testListenersForModel(model, Collections.singletonList(new TestListener()));
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:17,代码来源:TestListeners.java


示例3: testCustomLayerImport

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
public void testCustomLayerImport() throws Exception {
    // file paths
    String kerasWeightsAndConfigUrl = "http://blob.deeplearning4j.org/models/googlenet_keras_weightsandconfig.h5";
    File cachedKerasFile = new File(System.getProperty("java.io.tmpdir"), "googlenet_keras_weightsandconfig.h5");
    String outputPath = System.getProperty("java.io.tmpdir") + "/googlenet_dl4j_inference.zip";

    KerasLayer.registerCustomLayer("PoolHelper", KerasPoolHelper.class);
    KerasLayer.registerCustomLayer("LRN", KerasLRN.class);

    // download file
    if (!cachedKerasFile.exists()) {
        log.info("Downloading model to " + cachedKerasFile.toString());
        FileUtils.copyURLToFile(new URL(kerasWeightsAndConfigUrl), cachedKerasFile);
        cachedKerasFile.deleteOnExit();
    }

    org.deeplearning4j.nn.api.Model importedModel =
                    KerasModelImport.importKerasModelAndWeights(cachedKerasFile.getAbsolutePath());
    ModelSerializer.writeModel(importedModel, outputPath, false);

    ComputationGraph serializedModel = ModelSerializer.restoreComputationGraph(outputPath);
    log.info(serializedModel.summary());
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:24,代码来源:KerasCustomLayerTest.java


示例4: checkScopesTestCGAS

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Test
public void checkScopesTestCGAS() throws Exception {
    ComputationGraph c = createNet();
    for(WorkspaceMode wm : new WorkspaceMode[]{WorkspaceMode.SEPARATE, WorkspaceMode.SINGLE}) {
        log.info("Starting test: {}", wm);
        c.getConfiguration().setTrainingWorkspaceMode(wm);
        c.getConfiguration().setInferenceWorkspaceMode(wm);

        INDArray f = Nd4j.rand(new int[]{8, 1, 28, 28});
        INDArray l = Nd4j.rand(8, 10);
        c.setInputs(f);
        c.setLabels(l);

        c.computeGradientAndScore();
    }
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:17,代码来源:WorkspaceTests.java


示例5: init

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Override
public ComputationGraph init() {
    int embeddingSize = 128;
    ComputationGraphConfiguration.GraphBuilder graph = graphBuilder("input1");

    graph.addInputs("input1").setInputTypes(InputType.convolutional(inputShape[2], inputShape[1], inputShape[0]))
                    // Logits
                    .addLayer("bottleneck", new DenseLayer.Builder().nIn(5376).nOut(embeddingSize).build(),
                                    "avgpool")
                    // Embeddings
                    .addVertex("embeddings", new L2NormalizeVertex(new int[] {1}, 1e-10), "bottleneck")
                    // Output
                    .addLayer("outputLayer",
                                    new CenterLossOutputLayer.Builder()
                                                    .lossFunction(LossFunctions.LossFunction.NEGATIVELOGLIKELIHOOD)
                                                    .activation(Activation.SOFTMAX).alpha(0.9).lambda(1e-4)
                                                    .nIn(embeddingSize).nOut(numClasses).build(),
                                    "embeddings")
                    .setOutputs("outputLayer").backprop(true).pretrain(false);

    ComputationGraphConfiguration conf = graph.build();
    ComputationGraph model = new ComputationGraph(conf);
    model.init();

    return model;
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:27,代码来源:InceptionResNetV1.java


示例6: getVaeLayer

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Override
public VariationalAutoencoder getVaeLayer() {
    ComputationGraph network =
                    new ComputationGraph(ComputationGraphConfiguration.fromJson((String) jsonConfig.getValue()));
    network.init();
    INDArray val = ((INDArray) params.value()).unsafeDuplication();
    if (val.length() != network.numParams(false))
        throw new IllegalStateException(
                        "Network did not have same number of parameters as the broadcasted set parameters");
    network.setParams(val);

    Layer l = network.getLayer(0);
    if (!(l instanceof VariationalAutoencoder)) {
        throw new RuntimeException(
                        "Cannot use CGVaeReconstructionErrorWithKeyFunction on network that doesn't have a VAE "
                                        + "layer as layer 0. Layer type: " + l.getClass());
    }
    return (VariationalAutoencoder) l;
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:20,代码来源:CGVaeReconstructionErrorWithKeyFunction.java


示例7: testRnnTimeStepWithPreprocessorGraph

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Test
public void testRnnTimeStepWithPreprocessorGraph() {

    ComputationGraphConfiguration conf = new NeuralNetConfiguration.Builder()
                    .optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT)
                    .graphBuilder().addInputs("in")
                    .addLayer("0", new org.deeplearning4j.nn.conf.layers.GravesLSTM.Builder().nIn(10).nOut(10)
                                    .activation(Activation.TANH).build(), "in")
                    .addLayer("1", new org.deeplearning4j.nn.conf.layers.GravesLSTM.Builder().nIn(10).nOut(10)
                                    .activation(Activation.TANH).build(), "0")
                    .addLayer("2", new RnnOutputLayer.Builder(LossFunctions.LossFunction.MCXENT)
                                    .activation(Activation.SOFTMAX).nIn(10).nOut(10).build(), "1")
                    .setOutputs("2").inputPreProcessor("0", new FeedForwardToRnnPreProcessor()).pretrain(false)
                    .backprop(true).build();

    ComputationGraph net = new ComputationGraph(conf);
    net.init();

    INDArray in = Nd4j.rand(1, 10);
    net.rnnTimeStep(in);
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:22,代码来源:MultiLayerTestRNN.java


示例8: testMNISTConfig

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Test
@Ignore //Should be run manually
public void testMNISTConfig() throws Exception {
    int batchSize = 64; // Test batch size
    DataSetIterator mnistTrain = new MnistDataSetIterator(batchSize, true, 12345);

    ComputationGraph net = getCNNMnistConfig();
    net.init();
    net.setListeners(new ScoreIterationListener(1));

    for (int i = 0; i < 50; i++) {
        net.fit(mnistTrain.next());
        Thread.sleep(1000);
    }

    Thread.sleep(100000);
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:18,代码来源:CenterLossOutputLayerTest.java


示例9: getOriginalGraph

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
public static ComputationGraph getOriginalGraph(int seed){
    ComputationGraphConfiguration conf = new NeuralNetConfiguration.Builder()
            .seed(seed)
            .weightInit(WeightInit.XAVIER)
            .activation(Activation.TANH)
            .convolutionMode(ConvolutionMode.Same)
            .updater(new Sgd(0.3))
            .graphBuilder()
            .addInputs("in")
            .layer("0", new ConvolutionLayer.Builder().nOut(3).kernelSize(2,2).stride(1,1).build(), "in")
            .layer("1", new SubsamplingLayer.Builder().kernelSize(2,2).stride(1,1).build(), "0")
            .layer("2", new ConvolutionLayer.Builder().nIn(3).nOut(3).kernelSize(2,2).stride(1,1).build(), "1")
            .layer("3", new DenseLayer.Builder().nOut(64).build(), "2")
            .layer("4", new DenseLayer.Builder().nIn(64).nOut(64).build(), "3")
            .layer("5", new OutputLayer.Builder().nIn(64).nOut(10).lossFunction(LossFunctions.LossFunction.MSE).build(), "4")
            .setOutputs("5")
            .setInputTypes(InputType.convolutionalFlat(28,28,1))
            .build();


    ComputationGraph net = new ComputationGraph(conf);
    net.init();
    return net;
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:25,代码来源:TestFrozenLayers.java


示例10: testCompGraphNullLayer

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Test
public void testCompGraphNullLayer() {
    ComputationGraphConfiguration.GraphBuilder gb = new NeuralNetConfiguration.Builder()
                    .optimizationAlgo(OptimizationAlgorithm.STOCHASTIC_GRADIENT_DESCENT).updater(new Sgd(0.01))
                    .seed(42).miniBatch(false).l1(0.2).l2(0.2)
                    /* Graph Builder */
                    .updater(Updater.RMSPROP).graphBuilder().addInputs("in")
                    .addLayer("L" + 1,
                                    new GravesLSTM.Builder().nIn(20).updater(Updater.RMSPROP).nOut(10)
                                                    .weightInit(WeightInit.XAVIER)
                                                    .dropOut(0.4).l1(0.3).activation(Activation.SIGMOID).build(),
                                    "in")
                    .addLayer("output",
                                    new RnnOutputLayer.Builder().nIn(20).nOut(10).activation(Activation.SOFTMAX)
                                                    .weightInit(WeightInit.RELU_UNIFORM).build(),
                                    "L" + 1)
                    .setOutputs("output");
    ComputationGraphConfiguration conf = gb.build();
    ComputationGraph cg = new ComputationGraph(conf);
    cg.init();
}
 
开发者ID:deeplearning4j,项目名称:deeplearning4j,代码行数:22,代码来源:LayerConfigValidationTest.java


示例11: buildInfo

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
private void buildInfo() {
	String modelName = "";
	String when = LocalTime.now().toString();
	if(model instanceof ComputationGraph) {
		modelName = "Computation Graph";
	} 
	if(model instanceof MultiLayerNetwork) {
		modelName = "MultiLayer Network";
	}
	info = modelName + " loaded at " + when;
	
}
 
开发者ID:jesuino,项目名称:java-ml-projects,代码行数:13,代码来源:DLModel.java


示例12: outputForImageFile

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
public String outputForImageFile(File file, int h, int w, int channels) throws IOException {
	NativeImageLoader loader = new NativeImageLoader(h, w, channels);
	INDArray img1 = loader.asMatrix(file);
	if (model instanceof ComputationGraph) {
		((ComputationGraph) model).output(img1);
	} else if (model instanceof MultiLayerNetwork) {
		((MultiLayerNetwork) model).output(img1);
	}
	activationsCache.clear();
	return null;
}
 
开发者ID:jesuino,项目名称:java-ml-projects,代码行数:12,代码来源:DLModel.java


示例13: getLayers

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
private Layer[] getLayers() {
	if (model instanceof ComputationGraph) {
		return ((ComputationGraph) model).getLayers();
	} else if (model instanceof MultiLayerNetwork) {
		return ((MultiLayerNetwork) model).getLayers();
	}
	// should never get here
	return null;
}
 
开发者ID:jesuino,项目名称:java-ml-projects,代码行数:10,代码来源:DLModel.java


示例14: evaluate

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
/**
 * Evaluate a model and check if the training should continue. Returns false if the score has not
 * improved for the given number of epochs. Else true
 *
 * @param model Model to be evaluated against the validation set
 * @return If training should continue or not
 */
public boolean evaluate(ComputationGraph model) {
  try {
    // Do not evaluate if set to zero
    if (maxEpochsNoImprovement == 0) {
      return true;
    }

    // If validation dataset is empty, do not evaluate and just continue
    if (!valDataSetIterator.hasNext()) {
      return true;
    }

    double score = Utils.computeScore(model, valDataSetIterator);
    if (score < lastBestScore) {
      resetEpochCounter();
      lastBestScore = score;
      return true;
    } else {
      countEpochsNoImprovement++;
      return countEpochsNoImprovement < maxEpochsNoImprovement;
    }

  } catch (Exception e) {
    log.error("Could not evaluate early stopping. Continuing training " + "process", e);
    return true;
  } finally {
    valDataSetIterator.reset();
  }
}
 
开发者ID:Waikato,项目名称:wekaDeeplearning4j,代码行数:37,代码来源:EarlyStopping.java


示例15: init

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Override
public ComputationGraph init(int numLabels, long seed, int[][] shape) {
  org.deeplearning4j.zoo.model.VGG19 net =
      new org.deeplearning4j.zoo.model.VGG19(numLabels, seed, 1);
  net.setInputShape(shape);
  org.deeplearning4j.nn.conf.MultiLayerConfiguration conf = net.conf();
  return mlpToCG(conf, shape);
}
 
开发者ID:Waikato,项目名称:wekaDeeplearning4j,代码行数:9,代码来源:VGG19.java


示例16: init

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Override
public ComputationGraph init(int numLabels, long seed, int[][] shape) {
  org.deeplearning4j.zoo.model.SimpleCNN net =
      new org.deeplearning4j.zoo.model.SimpleCNN(numLabels, seed, 1);
  net.setInputShape(shape);
  org.deeplearning4j.nn.conf.MultiLayerConfiguration conf = net.conf();
  return mlpToCG(conf, shape);
}
 
开发者ID:Waikato,项目名称:wekaDeeplearning4j,代码行数:9,代码来源:SimpleCNN.java


示例17: init

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Override
public ComputationGraph init(int numLabels, long seed, int[][] shape) {
  org.deeplearning4j.zoo.model.InceptionResNetV1 net =
      new org.deeplearning4j.zoo.model.InceptionResNetV1(numLabels, seed, 1);
  net.setInputShape(shape);
  return net.init();
}
 
开发者ID:Waikato,项目名称:wekaDeeplearning4j,代码行数:8,代码来源:InceptionResNetV1.java


示例18: init

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Override
public ComputationGraph init(int numLabels, long seed, int[][] shape) {
  org.deeplearning4j.zoo.model.LeNet net =
      new org.deeplearning4j.zoo.model.LeNet(numLabels, seed, 1);
  net.setInputShape(shape);
  org.deeplearning4j.nn.conf.MultiLayerConfiguration conf = net.conf();
  return mlpToCG(conf, shape);
}
 
开发者ID:Waikato,项目名称:wekaDeeplearning4j,代码行数:9,代码来源:LeNet.java


示例19: init

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
@Override
public ComputationGraph init(int numLabels, long seed, int[][] shape) {
  org.deeplearning4j.zoo.model.AlexNet net =
      new org.deeplearning4j.zoo.model.AlexNet(numLabels, seed, 1);
  net.setInputShape(shape);
  org.deeplearning4j.nn.conf.MultiLayerConfiguration conf = net.conf();

  return mlpToCG(conf, shape);
}
 
开发者ID:Waikato,项目名称:wekaDeeplearning4j,代码行数:10,代码来源:AlexNet.java


示例20: mlpToCG

import org.deeplearning4j.nn.graph.ComputationGraph; //导入依赖的package包/类
/**
 * Convert a MultiLayerConfiguration into a Computation graph
 *
 * @param mlc Layer-wise configuration
 * @param shape Inputshape
 * @return ComputationGraph based on the configuration in the MLC
 */
default ComputationGraph mlpToCG(MultiLayerConfiguration mlc, int[][] shape) {
  ComputationGraphConfiguration.GraphBuilder builder =
      new NeuralNetConfiguration.Builder()
          .trainingWorkspaceMode(WorkspaceMode.SEPARATE)
          .inferenceWorkspaceMode(WorkspaceMode.SEPARATE)
          .graphBuilder();
  List<NeuralNetConfiguration> confs = mlc.getConfs();

  // Start with input
  String currentInput = "input";
  builder.addInputs(currentInput);

  // Iterate MLN configurations layer-wise
  for (NeuralNetConfiguration conf : confs) {
    Layer l = conf.getLayer();
    String lName = l.getLayerName();

    // Connect current layer with last layer
    builder.addLayer(lName, l, currentInput);
    currentInput = lName;
  }
  builder.setOutputs(currentInput);

  // Configure inputs
  builder.setInputTypes(InputType.convolutional(shape[0][1], shape[0][2], shape[0][0]));

  // Build
  ComputationGraphConfiguration cgc = builder.build();
  return new ComputationGraph(cgc);
}
 
开发者ID:Waikato,项目名称:wekaDeeplearning4j,代码行数:38,代码来源:ZooModel.java



注:本文中的org.deeplearning4j.nn.graph.ComputationGraph类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java LayoutInflater类代码示例发布时间:2022-05-22
下一篇:
Java JreMemoryLeakPreventionListener类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap