public DenseMatrix Cumulate(bool storeDerivative = false) { var inps = weightFuncOutputs.Select(kvPair => kvPair.Value); inputFuncOutput = IFunc.Apply(inps); if (storeDerivative) { foreach (var kvPair in weightFuncOutputs) { inputFuncDerivative[kvPair.Key] = IFunc.Differentiate(inputFuncOutput, kvPair.Value); } } return(inputFuncOutput); }