@ai-on-browser/data-analysis-models
Version:
Data analysis model package without any dependencies
39 lines (38 loc) • 1.11 kB
TypeScript
/**
* Laplacian eigenmaps
*/
export default class LaplacianEigenmaps {
/**
* @param {number} rd Reduced dimension
* @param {'rbf' | 'knn' | { name: 'rbf', sigma?: number, k?: number } | { name: 'knn', k?: number }} [affinity] Affinity type name
* @param {'unnormalized' | 'normalized'} [laplacian] Normalized laplacian matrix or not
*/
constructor(rd: number, affinity?: "rbf" | "knn" | {
name: "rbf";
sigma?: number;
k?: number;
} | {
name: "knn";
k?: number;
}, laplacian?: "unnormalized" | "normalized");
_rd: number;
_affinity: {
name: "rbf";
sigma?: number;
k?: number;
} | {
name: "knn";
k?: number;
} | {
name: "rbf" | "knn";
};
_laplacian: "unnormalized" | "normalized";
/**
* Returns reduced datas.
* @param {Array<Array<number>>} x Training data
* @returns {Array<Array<number>>} Predicted values
*/
predict(x: Array<Array<number>>): Array<Array<number>>;
_ev: Matrix<number>;
}
import Matrix from '../util/matrix.js';