@ai-on-browser/data-analysis-models
Version:
Data analysis model package without any dependencies
47 lines (46 loc) • 1.41 kB
TypeScript
/**
* @typedef {object} RANSACSubModel
* @property {function(Array<Array<number>>, *[]): void} fit Fit model
* @property {function(Array<Array<number>>): *[]} predict Returns predicted values
* @property {function(*[], *[]): number} [score] Returns a number how accurate the prediction is
*/
/**
* Random sample consensus
*/
export default class RANSAC {
/**
* @param {new () => RANSACSubModel} model Function to generate the model
* @param {number | null} [sample] Sampling rate
*/
constructor(model: new () => RANSACSubModel, sample?: number | null);
_model: new () => RANSACSubModel;
_sample: number;
_best_score: number;
_best_model: RANSACSubModel;
/**
* Fit model.
* @param {Array<Array<number>>} x Training data
* @param {*[]} y Target values
*/
fit(x: Array<Array<number>>, y: any[]): void;
/**
* Returns predicted values.
* @param {Array<Array<number>>} x Sample data
* @returns {*[]} Predicted values
*/
predict(x: Array<Array<number>>): any[];
}
export type RANSACSubModel = {
/**
* Fit model
*/
fit: (arg0: Array<Array<number>>, arg1: any[]) => void;
/**
* Returns predicted values
*/
predict: (arg0: Array<Array<number>>) => any[];
/**
* Returns a number how accurate the prediction is
*/
score?: (arg0: any[], arg1: any[]) => number;
};