@ai-on-browser/data-analysis-models
Version:
Data analysis model package without any dependencies
42 lines (41 loc) • 1.08 kB
TypeScript
/**
* Fuzzy k-nearest neighbor
*/
export default class FuzzyKNN {
/**
* @param {number} [k] Number of neighborhoods
* @param {number} [m] Factor of weight for distance
*/
constructor(k?: number, m?: number);
_p: any[];
_c: any[];
_classes: any[];
_u: any[];
_k: number;
_m: number;
_d: (a: any, b: any) => number;
/**
* Category list
* @type {*[]}
*/
get categories(): any[];
_near_points(data: any): any[];
/**
* Add a data.
* @param {number[]} point Training data
* @param {*} [category] Target value
*/
add(point: number[], category?: any): void;
/**
* Add datas.
* @param {Array<Array<number>>} datas Training data
* @param {*[]} targets Target values
*/
fit(datas: Array<Array<number>>, targets: any[]): void;
/**
* Returns predicted categories.
* @param {Array<Array<number>>} datas Sample data
* @returns {Array<Array<number>>} Predicted values
*/
predict(datas: Array<Array<number>>): Array<Array<number>>;
}