public Neuron addConnections(Connection... connections) { getConnections().addAll(Arrays.asList(connections)); return this; }
/** * Create an instance of {@link Neuron } * */ public Neuron createNeuron() { return new Neuron(); }
@Override public Neuron addExtensions(Extension... extensions) { getExtensions().addAll(Arrays.asList(extensions)); return this; }
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = PMMLObject.traverse(visitor, getExtensions()); } if ((status == VisitorAction.CONTINUE)&&hasConnections()) { status = PMMLObject.traverse(visitor, getConnections()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }
static private NeuralLayer encodeNeuralLayer(String prefix, int n, List<? extends Entity> entities, RDoubleVector wts, int offset){ NeuralLayer neuralLayer = new NeuralLayer(); for(int i = 0; i < n; i++){ List<Double> weights = (wts.getValues()).subList(offset + 1, offset + (entities.size() + 1)); Double bias = wts.getValue(offset); Neuron neuron = NeuralNetworkUtil.createNeuron(entities, weights, bias) .setId(prefix + "/" + String.valueOf(i + 1)); neuralLayer.addNeurons(neuron); offset += (entities.size() + 1); } return neuralLayer; } }
List<Connection> connections = neuron.getConnections(); for(int j = 0; j < connections.size(); j++){ Connection connection = connections.get(j); Double bias = neuron.getBias(); if(bias != null && bias != 0d){ output.add(bias); result.put(neuron.getId(), output);
public class BackPropagationStrategy implements IStrategy, Serializable { [...] public void updateWeightsAndBias(NeuralNetwork neuralNetwork, double[] inputs) { for (int i = neuralNetwork.getLayers().size() - 1; i >= 0; i--) { Layer layer = neuralNetwork.getLayers().get(i); for (Neuron neuron : layer.getNeurons()) { [...] Synapse bias = neuron.getBias(); double delta = learning * 1.0; bias.setWeight(bias.getWeight() + delta + this.momentum * bias.getDelta()); bias.setDelta(delta); } } } [...]
@Override public VisitorAction accept(Visitor visitor) { VisitorAction status = visitor.visit(this); if (status == VisitorAction.CONTINUE) { visitor.pushParent(this); if ((status == VisitorAction.CONTINUE)&&hasExtensions()) { status = PMMLObject.traverse(visitor, getExtensions()); } if ((status == VisitorAction.CONTINUE)&&hasConnections()) { status = PMMLObject.traverse(visitor, getConnections()); } visitor.popParent(); } if (status == VisitorAction.TERMINATE) { return VisitorAction.TERMINATE; } return VisitorAction.CONTINUE; }
.setId(String.valueOf(layer) + "/" + String.valueOf(column + 1));
.setId(String.valueOf(layer + 1) + "/" + String.valueOf(column + 1));
public Neuron addConnections(Connection... connections) { getConnections().addAll(Arrays.asList(connections)); return this; }
/** * Create an instance of {@link Neuron } * */ public Neuron createNeuron() { return new Neuron(); }
@Override public Neuron addExtensions(Extension... extensions) { getExtensions().addAll(Arrays.asList(extensions)); return this; }