return lc;
}
public static LayerCalculatorImpl lcSoftRelu(NeuralNetworkImpl nn, ConnectionCalculator outputCC) {
LayerCalculatorImpl lc = new LayerCalculatorImpl();
for (Layer l : nn.getLayers()) {
if (!Util.isBias(l)) {
if (nn.getOutputLayer() == l) {
if (outputCC != null) {
lc.addConnectionCalculator(l, outputCC);
} else {
lc.addConnectionCalculator(l, new AparapiSoftReLU());
}
} else if (Util.isConvolutional(l)) {
lc.addConnectionCalculator(l, new AparapiConv2DSoftReLU());
} else {
lc.addConnectionCalculator(l, new AparapiSoftReLU());
}
} else {
lc.addConnectionCalculator(l, new ConstantConnectionCalculator());
}
}
return lc;
}