The Cognitive Foundry is a modular Java software library of machine learning components and algorithms designed for research and applications.
Added checkedAdd and checkedMultiply functions to MathUtil, providing a
means for conducting Integer addition and multiplication with explicit
checking for overflow and underflow, and throwing an ArithmeticException
if they occur. Java fails silently in integer over(under)flow situations.
Added explicit integer overflow checks to DenseMatrix. The underlying MTJ
library stores dense matrices as a single dimensional arrays of integers,
which in Java are 32-bit. When creating a matrix with numRows rows and
numColumns columns, if numRows * numColumns is more than 2^31 - 1, a
silent integer overflow would occur, resulting in later
ArrayIndexOutOfBoundsExceptions when attempting to access matrix elements
that didn't get allocated.
Added new methods to DiagonalMatrix interface for multiplying diagonal
matrices together and for inverting a DiagonalMatrix.
Optimized operations on diagonal matrices in DiagonalMatrixMTJ.
Added checks to norm method in AbstractVectorSpace and DefaultInfiniteVector
for power set to NaN, throwing an ArithmeticException if encountered.
Optimized matrix multiplies in LogisticRegression to avoid creating dense
matrices unnecessarily and to reduce computation time using improved
Added regularization and explicit bias estimation to
Added ConvexReceiverOperatingCharacteristic, which computes the convex
hull of the ROC.
Fixed rare corner-case bug in ReceiverOperatingCharacteristic and added
optional trapezoidal AUC computation.
Cleaned up constant in MultivariateCumulativeDistributionFunction and
added publication references.
- Operating System:
- Data Formats:
Decision Tree Learning,
Gaussian Mixture Models,