DoubleVector lastOutput = input;
for (int i = 0; i < layerSizes.length; i++) {
lastOutput = computeHiddenActivations(lastOutput, weights[i]);
}
// slice the hidden bias away
return lastOutput.slice(1, lastOutput.getDimension());
}
/**
* Creates a reconstruction of the input using the given hidden activations.
* (That, what is returned by {@link #predict(DoubleVector)}).