UNPKG

@ai-on-browser/data-analysis-models

Version:

Data analysis model package without any dependencies

47 lines (46 loc) 1.41 kB
/** * @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; };