public void propagateReverse() {
if (this.inverseWeightMatrix == null) {
this.createInverseWeightMatrix();
}
for (int i = 0; i < this.neuronVector.getRowCount(); i++) {
ActivationFunction act = this.getActivationFunction(i);
try {
this.neuronVector.set(0, i, act.inverseActivationPhi(this.neuronVector.get(0, i)));
} catch (InversionNotSupportedException e) {}
}
this.neuronVector.mult(this.inverseWeightMatrix);
}