import { TransformerBase } from '../base/transformer'; import { Params } from '../base/estimator'; export interface LocallyLinearEmbeddingProps { nNeighbors?: number; nComponents?: number; reg?: number; randomState?: number; } export declare class LocallyLinearEmbedding extends TransformerBase { private nNeighbors; private nComponents; private reg; private randomState?; private trainX; private trainY; constructor(props?: LocallyLinearEmbeddingProps); /** @deprecated positional form; prefer the props-object constructor */ constructor(nNeighbors?: number, nComponents?: number, reg?: number, randomState?: number); getParams(): Params; private static dot; private static matVecMul; private static normalize; private static outer; private static cloneMatrix; private static powerIteration; private distance; private neighbors; private computeWeights; fit(X: number[][]): void; transform(X: number[][]): number[][]; /** * Fit and return the training embedding directly (not `transform(X)`, * which would re-estimate reconstruction weights out-of-sample). */ fitTransform(X: number[][]): number[][]; }