@ai-on-browser/data-analysis-models
Version:
Data analysis model package without any dependencies
44 lines (43 loc) • 1.16 kB
TypeScript
/**
* Support vector machine
*/
export default class SVM {
/**
* @param {'gaussian' | 'linear' | { name: 'gaussian', d?: number } | { name: 'linear' } | function (number[], number[]): number} kernel Kernel name
*/
constructor(kernel: "gaussian" | "linear" | {
name: "gaussian";
d?: number;
} | {
name: "linear";
} | ((arg0: number[], arg1: number[]) => number));
_n: number;
_a: any[];
_x: any[];
_t: any[];
_b: number;
_C: number;
_eps: number;
_tolerance: number;
_err: any[];
_kernel: any;
/**
* Initialize this model.
* @param {Array<Array<number>>} train_x Training data
* @param {Array<1 | -1>} train_y Target values
*/
init(train_x: Array<Array<number>>, train_y: Array<1 | -1>): void;
_alldata: boolean;
/**
* Fit model.
*/
fit(): void;
_fitOnce(all?: boolean): number;
_predict1(data: any): number;
/**
* Returns predicted values.
* @param {Array<Array<number>>} data Sample data
* @returns {number[]} Predicted values
*/
predict(data: Array<Array<number>>): number[];
}