/** * Get the specified output layer, by index. The index of the output * layer may be 0 to {@link #getNumOutputArrays()}-1 */ public Layer getOutputLayer(int outputLayerIdx) { if (outputLayerIdx >= numOutputArrays) throw new IllegalArgumentException("Invalid index: cannot get output layer " + outputLayerIdx + ", total number of network outputs = " + numOutputArrays); return getLayer(configuration.getNetworkOutputs().get(outputLayerIdx)); }
public ComputationGraph(ComputationGraphConfiguration configuration) { this.configuration = configuration; this.numInputArrays = configuration.getNetworkInputs().size(); this.numOutputArrays = configuration.getNetworkOutputs().size(); this.inputs = new INDArray[numInputArrays]; this.labels = new INDArray[numOutputArrays]; this.defaultConfiguration = configuration.getDefaultConfiguration(); }
protected INDArray[] silentOutput(boolean train, INDArray... input) { setInputs(input); Map<String, INDArray> activations = feedForward(false, false, false, false); INDArray[] outputs = new INDArray[numOutputArrays]; int i = 0; for (String s : configuration.getNetworkOutputs()) { outputs[i++] = activations.get(s); } return outputs; }
@Override public org.deeplearning4j.nn.graph.vertex.GraphVertex instantiate(ComputationGraph graph, String name, int idx, INDArray paramsView, boolean initializeParams) { //Now, we need to work out if this vertex is an output vertex or not... boolean isOutput = graph.getConfiguration().getNetworkOutputs().contains(name); org.deeplearning4j.nn.api.Layer layer = layerConf.getLayer().instantiate(layerConf, null, idx, paramsView, initializeParams); return new org.deeplearning4j.nn.graph.vertex.impl.LayerVertex(graph, name, idx, layer, preProcessor, isOutput); }
String outputName = configuration.getNetworkOutputs().get(i); GraphVertex v = verticesMap.get(outputName); Layer ol = v.getLayer();
public GraphBuilder(ComputationGraphConfiguration newConf, NeuralNetConfiguration.Builder globalConfiguration) { ComputationGraphConfiguration clonedConf = newConf.clone(); this.vertices = clonedConf.getVertices(); this.vertexInputs = clonedConf.getVertexInputs(); this.networkInputs = clonedConf.getNetworkInputs(); this.networkOutputs = clonedConf.getNetworkOutputs(); this.pretrain = clonedConf.isPretrain(); this.backprop = clonedConf.isBackprop(); this.backpropType = clonedConf.getBackpropType(); this.tbpttFwdLength = clonedConf.getTbpttFwdLength(); this.tbpttBackLength = clonedConf.getTbpttBackLength(); this.globalConfiguration = globalConfiguration; //this.getGlobalConfiguration().setSeed(clonedConf.getDefaultConfiguration().getSeed()); }
for (String s : configuration.getNetworkOutputs()) { GraphVertex gv = verticesMap.get(s);
double l2 = (addRegularizationTerms ? calcL2() : 0.0); int i = 0; for (String s : configuration.getNetworkOutputs()) { Layer outLayer = verticesMap.get(s).getLayer(); if (outLayer == null || !(outLayer instanceof IOutputLayer)) {
for (String s : configuration.getNetworkOutputs()) { Layer outLayer = verticesMap.get(s).getLayer(); if (outLayer == null || !(outLayer instanceof IOutputLayer)) {
int thisOutputNumber = configuration.getNetworkOutputs().indexOf(current.getVertexName()); if (current.getLayer() instanceof IOutputLayer) { IOutputLayer outputLayer = (IOutputLayer) current.getLayer();
int idx = configuration.getNetworkOutputs().indexOf(current.getVertexName()); outputs[idx] = out;