src/utils/matrix/ComputableMatrix.java
public Matrix softmaxGrad(Matrix result) throws MatrixException {
        if (getColumns() != 1) {
            throw new MatrixException("Matrix must be a column vector.");
        }
        if (getRows() != result.getRows() || getRows() != result.getColumns()) {
            throw new MatrixException("Incompatible result matrix size: " + result.getRows() + "x" + result.getColumns());
        }

        return new SoftmaxGradientMatrixOperation(getRows(), getRows()).apply(this, result);
    }
/**
     * Returns softmax gradient of matrix.<br>
     * Assumes that input matrix is softmax result.<br>
     *
     * @param result result matrix.
     * @return softmax gradient of matrix.
     * @throws MatrixException thrown if index dimensions do not match.
     */
Returns softmax gradient of matrix.
Assumes that input matrix is softmax result.

@param result result matrix.
@return softmax gradient of matrix.
@throws MatrixException thrown if index dimensions do not match.
Returns softmax gradient of matrix . Assumes that input matrix is softmax result . @param result result matrix . @return softmax gradient of matrix . @throws MatrixException thrown if index dimensions do not match .
public Matrix softmaxGrad(Matrix result) throws MatrixException {
        if (getColumns() != 1) {
            throw new MatrixException("Matrix must be a column vector.");
        }
        if (getRows() != result.getRows() || getRows() != result.getColumns()) {
            throw new MatrixException("Incompatible result matrix size: " + result.getRows() + "x" + result.getColumns());
        }
        return new SoftmaxGradientMatrixOperation(getRows(), getRows()).apply(this, result);
    }
public Matrix softmaxGrad ( Matrix result ) throws MatrixException { if ( getColumns ( ) != 1 ) { throw new MatrixException ( "Matrix must be a column vector." ) ; } if ( getRows ( ) != result . getRows ( ) || getRows ( ) != result . getColumns ( ) ) { throw new MatrixException ( "Incompatible result matrix size: " + result . getRows ( ) + "x" + result . getColumns ( ) ) ; } return new SoftmaxGradientMatrixOperation ( getRows ( ) , getRows ( ) ) . apply ( this , result ) ; }
Returns softmax gradient of matrix.<br>
 Assumes that input matrix is softmax result.<br>
Returns softmax gradient of matrix . <br > Assumes that input matrix is softmax result . <br >