ml_linalg 13.12.0 ml_linalg: ^13.12.0 copied to clipboard
SIMD-based linear algebra and statistics, efficient manipulation with numeric data
Changelog #
13.12.0 #
Matrix
:- add
solve
method for solving a system of linear equations
- add
13.11.31 #
- Lib migration to Dart 3.0.0 (only non-breaking changes)
13.11.30 #
Vector
:- Fixed typo in documentation for
min
method
- Fixed typo in documentation for
13.11.29 #
- README:
- added differences between
vector_math
andml_linalg
- added differences between
13.11.28 #
- Matrix:
transpose
method speed up
13.11.27 #
- Matrix:
Float32Matrix
,Float64Matrix
:Matrix
constructors replaced by specific ones
13.11.26 #
- Matrix:
mean
: redundant code removed
13.11.25 #
- Matrix:
variance
method speed up
13.11.24 #
- Matrix:
mean
method speed up
13.11.23 #
- Matrix:
prod
method fixed
13.11.22 #
- Matrix:
max
andmin
methods speed up
13.11.21 #
- Matrix:
mutiply
method (Hadamard product) speed up
13.11.20 #
- Matrix:
pow
,sum
,prod
,exp
,log
methods speed up
13.11.19 #
- Matrix:
norm
method speed up (frobenius case)
13.11.18 #
- Matrix:
mapElements
method speed up
13.11.17 #
- Matrix:
sample
method speed up
13.11.16 #
- Matrix:
transpose
method fixed for oversized flattened list
13.11.15 #
- Matrix:
- Flattened SIMD list length fixed
13.11.14 #
- Benchmarks:
- Added new baseline scenarios for List-List addition
13.11.13 #
- Matrix:
- Little optimization for 'getRow' and 'getColumn'
13.11.12 #
- Matrix:
- SIMD used in matrix-matrix operations => performance improved for a lot of operations
- Architectural changes: MatrixDataManager removed, MatrixFactory removed
13.11.11 #
- Matrix:
- SIMD used in matrix-scalar operations => performance improved for a lot of operations
13.11.10 #
- Vector:
- getter
_simdList
changed to function => performance improved for a lot of operations - getter
_typedList
changed to function => performance improved for a lot of operations
- getter
13.11.9 #
- Add more tests for:
Matrix.columnIndices
Matrix.columns
Matrix.decompose
13.11.8 #
- More tests added for matrix "add" operator
13.11.7 #
- Matrix:
- Arithmetic operations speed up
13.11.6 #
- Matrix, Vector:
- Multiplication speed up
13.11.5 #
- Matrix:
ByteData
replaced with typed lists
13.11.4 #
- Matrix:
inverse
method speed up (Forward substitution case)
13.11.3 #
- Matrix:
inverse
method speed up (Backward substitution case)
13.11.2 #
- Matrix:
decompose
method speed up (LU decomposition case)
13.11.1 #
- Matrix:
decompose
method speed up (Cholesky decomposition case)
13.11.0 #
- Matrix:
transpose
method speed upfromByteData
constructor added
13.10.7 #
- Vector:
- Arithmetic operations: vector32-vector64 operations speed up
13.10.6 #
- Vector:
- Arithmetic operations: replace 'List' with 'Iterable'
13.10.5 #
- README:
- Add information on Vector creation to README
13.10.4 #
- README:
- Add examples on vector arithmetic operations to README
13.10.3 #
- Vector:
- Add compatibility for arithmetic operations between float32 and float64 vectors
- Add compatibility for arithmetic operations with List class
13.10.2 #
- Vector:
fromList
,randomFilled
,filled
constructors speed up
13.10.1 #
- Vector:
- '+', '-', '/', '*' operators: acceptable types narrowed
13.10.0 #
- Matrix:
eigen
method added, Power Iteration method added
13.9.0 #
- Vector:
hamming
distance implemented
13.8.0 #
- Vector:
- Added
set
method
- Added
13.7.0 #
- Vector:
- Added
median
method
- Added
13.6.0 #
- Matrix:
- Added
variance
method
- Added
13.5.0 #
- Vector:
- Added
filterElements
method
- Added
13.4.0 #
- Matrix:
- Added
filterColumns
method
- Added
13.3.3 #
- Matrix:
- Added
random
constructor - Added
randomSPD
constructor - Optimized Cholesky decomposition
- Optimized LU inverse
- Optimized Cholesky inverse
- Added
13.3.2 #
- Added
.g
symbol to the names of all autogenerated files - Matrix:
- Optimised LU decomposition
13.3.1 #
- Added documentation for matrix decomposition and inversion
13.3.0 #
- Matrix:
- Added LU inverse
- Added backward substitution inverse
13.2.0 #
- Matrix:
- Added LU decomposition
13.1.1 #
- Matrix:
- Added extra test-cases for Cholesky decomposition
13.1.0 #
- Matrix:
- Added Cholesky decomposition
- Added
inverse
method:- Cholesky inverse
- Forward substitution inverse for triangular matrices
13.0.2 #
- Error handling improvements
13.0.1 #
pubspec.yaml
:mockito
dependency updatedtest
dependency updated
13.0.0 #
- null-safety supported (stable)
13.0.0-nullsafety.0 #
- null-safety supported (beta)
12.17.10 #
xrange
v1.0.0 supported
12.17.9 #
README.md
: images for SIMD examples corrected
12.17.8 #
matrixToJson
,fromMatrixJson
,vectorToJson
,fromVectorJson
:null
value handling
12.17.7 #
Distance
:- export files for serialization functions added
12.17.6 #
Distance
:- serialization logic added
CI
:- github actions set up
12.17.5 #
FUNDING.yml
created
12.17.4 #
12.17.3 #
injector
lib 1.0.9 supported
12.17.2 #
pubspec
:injector
dependency corrected
12.17.1 #
Matrix.pow
: caching removedVector.sum
: summation of SIMD lanes fixed
12.17.0 #
Vector
:Vector.log
method added
Matrix
:Matrix.log
method added
12.16.0 #
Matrix
:Matrix.mapElements
method added
12.15.0 #
Matrix
:Matrix.multiply
method added
12.14.0 #
Vector
:Vector.mapToVector
method added
12.13.0 #
Matrix
:Matrix.sum
method addedMatrix.prod
method added
Vector
:Vector.prod
method added
12.12.0 #
Matrix
:Matrix.exp
method added
Vector
:Vector.exp
method added
12.11.0 #
Matrix
:Matrix.pow
method added
Vector
:Vector.toIntegerPower
is deprecatedVector.pow
method added
12.10.0 #
Matrix
:Matrix.isSquare
getter addeddivision operator
: throwing exception added in case of square matrix
12.9.0 #
Vector
:fromJson
constructor addedtoJson
method added
vectorToJson
helper function added to public APIfromVectorJson
helper function added to public API
12.8.2 #
fromMatrixJson
: dynamic type support added to parsing
12.8.1 #
DType
:dTypeToJson
helper function added to public APIfromDTypeJson
helper function added to public API
12.8.0 #
Matrix
:fromJson
constructor addedtoJson
method added
matrixToJson
helper function added to public APIfromMatrixJson
helper function added to public API
12.7.1 #
Matrix
:fromList
constructor, check for length of nested lists added
12.7.0 #
Matrix
: constructors speed up- Float64-based matrix class added
12.6.0 #
Vector
: vector operations speed upFloat64x2Vector
:Float64x2Vector
class created
12.5.1 #
Axis
: documentation addedDType
: documentation addedMatrix
: documentation extended and corrected
12.5.0 #
Matrix
:Matrix.row
constructor addedMatrix.column
constructor added
12.4.0 #
Matrix
:Matrix.diagonal
constructor added (for creation diagonal matrices)Matrix.scalar
constructor added (for creation scalar matrices)Matrix.identity
constructor added (for creation identity matrices)
12.3.0 #
Matrix
:mean
method addeddeviation
method addedhasData
getter addedempty
constructor added
Vector
:empty
constructor added
12.2.0 #
Vector
:sqrt
method added
12.1.0 #
Matrix
:rowIndices
field added to the interfacecolumnIndices
field added to the interface
12.0.2 #
xrange
0.0.8 version supported (integers
function used instead ofZRange
)
12.0.1 #
xrange
package version locked
12.0.0 #
Matrix
:pick
method removedsubmatrix
method replaced withsample
method[]
operator returnsVector
from now
Vector
:randomFilled
constructor api changed,min
andmax
args are ofnum
type nowfromList
constructor api changed, from now as a source expectedList<num>
instead ofList<doublet>
filled
constructor api changed, from now sampling value is anum
instead ofdouble
- Dart sdk constraint returned to 2.2.0
11.0.0 #
- Dart sdk constraint changed: from 2.2.0 to 2.4.0
Matrix
:pick
method refactored- Grinder tasks for unit testing, code analysis and coverage added
10.3.7 #
Matrix
:Iterable<Iterable<double>>
implemented
10.3.6 #
Vector
:randomFilled
default parameters fixed- Tests for
Vector
's constructors added
10.3.5 #
- readme updated: explanation images added
10.3.4 #
- Images for readme.md updated (simd architecture explanation)
10.3.3 #
- Images for readme.md added (simd architecture explanation)
10.3.2 #
Vector
:hashCode
speed uprandomFilled
constructor extended:min
andmax
parameters added
10.3.1 #
Vector
:hashCode
improvements
10.3.0 #
Vector
:hashCode
re-implemented: now it's possible to use the vector as a map key
10.2.0 #
Matrix
:sort
method added and implemented
10.1.0 #
Vector
:subvectorByRange
method added and implemented (for float32 vector)
10.0.4 #
pubspec.yaml
: sdk version constraint changed from>=2.3.0
to>=2.2.0
10.0.3 #
Float32Matrix.columns
: empty list supported as a sourceFloat32Matrix.rows
: empty list supported as a source
10.0.2 #
Float32Matrix.fromList
: empty list supported as a source
10.0.1 #
- Links in README corrected
10.0.0 #
Vector
:- removed possibility to mutate an instance of the Vector:
isMutable
flag removed[]=
operator removed
- removed possibility to mutate an instance of the Vector:
Matrix
:- removed possibility to mutate an instance of the Matrix:
setColumn
method removed
insertColumns
method addedMatrix.from
renamed toMatrix.fromList
Matrix.fromFlattened
renamed toMatrix.fromFlattenedList
- benchmarks added for checking matrix initialization performance
- removed possibility to mutate an instance of the Matrix:
- Performance enhancements
- Dart 2.3.0 supported
9.0.0 #
Vector
:Distance
enum addeddistanceTo
method refactored- cosine distance calculation added
8.0.0 #
Matrix
:rows
constructor renamed tofromRows
columns
constructor renamed tofromColumns
flattened
constructor renamed tofromFlattened
rows
getter addedcolumns
getter added
7.0.0 #
Matrix
:ZRange
support (instead of the library built-inRange
)
6.1.1 #
Vector
:unique
method refactored
6.1.0 #
Vector
:- normalize method added to interface and supported in
Float32x4Vector
- rescale method added to interface and supported in
Float32x4Vector
- normalize method added to interface and supported in
VectorBase
: cache for popular operations implemented
6.0.2 #
Matrix
:MatrixMixin
corrected
6.0.1 #
Vector
class refactored (get rid of redundant mixins)
6.0.0 #
- prefix
ML
removed from entities' names - Float32x4Vector: equality operator override added
- Matrix:
uniqueRows
method added
5.5.1 #
- MLMatrix: fixed bug in
setColumn
method when rows cache was not cleared
5.5.0 #
- MLMatrix:
setColumn
method implemented
5.4.0 #
- MLMatrix: dummy for
setColumn
method added
5.3.0 #
- MLMatrix: frobenius norm calculation added
5.2.0 #
- MLMatrix:
/
operator added - MLMatrix:
rowsMap
method added - MLMatrix:
columnsMap
method added
5.1.0 #
max
andmin
methods added for matrix
5.0.1 #
- Travis integration added
dartfmt
task added
5.0.0 #
- MLVector and MLMatrix now don't have generic type parameters
4.2.0 #
- Static factories converted into abstract factories
4.1.0 #
toString
method specified for matrix mixin- examples for vector operations fixed
4.0.0 #
- Vector type removed (there are no longer
column
androw
vectors) - Matrix's method
getColumnVector
renamed togetColumn
- Matrix method
getRowVector
renamed togetRow
- Public api documentation for
MLMatrix<E>
added
3.5.0 #
- Mutable vectors supported in matrix
3.4.0 #
- Add possibility to create mutable vectors
- Add support for value assignment via []= operator
3.0.3 #
- readme contacts section updated
- build_runner dependency updated
3.0.2 #
- readme badge corrected
3.0.1 #
- readme updated
3.0.0 #
vectorizedMap
vector's method improved: batch boundary indexes may be passed into a mapper functioncolumnsMap
androwsMap
matrix's method combined into one method -vectorizedMap
- Public factories
Float32x4VectorFactory
andFloat32x4MatrixFactory
renamed intoFloat32x4Vector
andFloat32x4Matrix
copy
vector's method removed
2.3.0 #
pick
method added to matrix api: it's possible now to combine a new matrix from different segments of a source matrix
2.2.2 #
- README.md updated (table of content)
2.2.1 #
- Travis integration added
2.2.0 #
- Support matrices in vector operations
2.1.0 #
- Column and row vectors added
2.0.0 #
- Unnecessary generic type argument removed from
MLMatrix
class - Matrix logic split into separate mixins
1.3.0 #
MLVectorMixin
added, benchmark directory reorganized
1.2.0 #
- Map functions added to matrix
1.1.0 #
Float32x4MatrixFactory
extended
1.0.1 #
- Readme updated
1.0.0 #
- Library public release