@ai-on-browser/data-analysis-models
Version:
Data analysis model package without any dependencies
66 lines (65 loc) • 1.48 kB
TypeScript
/**
* Spectral clustering
*/
export default class SpectralClustering {
/**
* @param {'rbf' | 'knn' | { name: 'rbf', sigma?: number, k?: number } | { name: 'knn', k?: number }} [affinity] Affinity type name
*/
constructor(affinity?: "rbf" | "knn" | {
name: "rbf";
sigma?: number;
k?: number;
} | {
name: "knn";
k?: number;
});
_size: number;
_epoch: number;
_clustering: KMeanspp;
_affinity: "rbf" | "knn" | {
name: "rbf";
sigma?: number;
k?: number;
} | {
name: "knn";
k?: number;
};
/**
* Number of clusters.
* @type {number}
*/
get size(): number;
/**
* Epoch.
* @type {number}
*/
get epoch(): number;
/**
* Initialize model.
* @param {Array<Array<number>>} datas Training data
*/
init(datas: Array<Array<number>>): void;
_n: number;
ready: boolean;
_ev: import("../util/matrix.js").default<number>;
/**
* Add a new cluster.
*/
add(): void;
_s_ev: number[][];
/**
* Clear all clusters.
*/
clear(): void;
/**
* Returns predicted categories.
* @returns {number[]} Predicted values
*/
predict(): number[];
/**
* Fit and returns total distance the centroid has moved.
* @returns {number} Total distance the centroid has moved
*/
fit(): number;
}
import { KMeanspp } from './kmeans.js';