@ai-on-browser/data-analysis-models
Version:
Data analysis model package without any dependencies
60 lines (59 loc) • 1.41 kB
TypeScript
/**
* Spectral clustering
*/
export default class SpectralClustering {
/**
* @param {'rbf' | 'knn'} [affinity] Affinity type name
* @param {object} [param] Config
* @param {number} [param.sigma] Sigma of normal distribution
* @param {number} [param.k] Number of neighborhoods
*/
constructor(affinity?: 'rbf' | 'knn', param?: {
sigma?: number;
k?: number;
});
_size: number;
_epoch: number;
_clustering: KMeanspp;
_affinity: "rbf" | "knn";
_sigma: number;
_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';