ml-basic
Version:
Lightweight, zero dependency, machine learning library
47 lines (46 loc) • 1.68 kB
TypeScript
export default class Matrix {
rows: number;
columns: number;
entries: Float64Array;
constructor(matrix: Matrix);
constructor(rows: number, columns: number, entries?: number[] | Float64Array);
isEqualShape(matrix: Matrix): boolean;
reshape(rows: number, columns: number): this;
flat(): this;
flip(): this;
set(value: number): this;
add(n: number): Matrix;
add(matrix: Matrix): Matrix;
sub(n: number): Matrix;
sub(matrix: Matrix): Matrix;
scale(n: number): Matrix;
scale(matrix: Matrix): Matrix;
apply(func: (value: number) => number): this;
sum(): number;
static mult(a: Matrix, b: Matrix): Matrix;
mult(matrix: Matrix): this;
static transpose(matrix: Matrix): Matrix;
transpose(): this;
private accumulate;
static correlate(matrix: Matrix, kernel: Matrix, stride?: number, zeroPadding?: number): Matrix;
correlate(kernel: Matrix, stride?: number, zeroPadding?: number): this;
static reverseCorrelate(matrix: Matrix, kernel: Matrix, stride?: number): Matrix;
static pool({ matrix, window, stride, zeroPadding, initial, pooler }: {
matrix: Matrix;
window: [number, number];
stride?: number;
zeroPadding?: number;
initial?: number;
pooler: (aggregate: number, value: number) => number;
}): Matrix;
clip(min: number, max: number): this;
dialate(gap: number): this;
static identity(n: number): Matrix;
static random(rows: number, columns: number, min?: number, max?: number): Matrix;
serialize(): {
type: string;
rows: number;
columns: number;
entries: number[];
};
}