/** @import {InputType} from "../index.js" */ /** @import {ParametersLDA} from "./index.js" */ /** @import {EigenArgs} from "../linear_algebra/index.js" */ /** * Linear Discriminant Analysis (LDA) * * A supervised dimensionality reduction technique that finds the axes that * maximize the separation between multiple classes. * * @class * @template {InputType} T * @extends DR * @category Dimensionality Reduction */ export class LDA extends DR { /** * @template {InputType} T * @template {{ seed?: number }} Para * @param {T} X * @param {Para} parameters * @returns {T} */ static transform< T_1 extends InputType, Para extends { seed?: number; }, >(X: T_1, parameters: Para): T_1; /** * @template {InputType} T * @template {{ seed?: number }} Para * @param {T} X * @param {Para} parameters * @returns {Generator} */ static generator< T_1 extends InputType, Para extends { seed?: number; }, >(X: T_1, parameters: Para): Generator; /** * @template {InputType} T * @template {{ seed?: number }} Para * @param {T} X * @param {Para} parameters * @returns {Promise} */ static transform_async< T_1 extends InputType, Para extends { seed?: number; }, >(X: T_1, parameters: Para): Promise; /** * Linear Discriminant Analysis. * * @param {T} X - The high-dimensional data. * @param {Partial & { labels: any[] | Float64Array }} parameters - Object containing parameterization of the DR method. * @see {@link https://onlinelibrary.wiley.com/doi/10.1111/j.1469-1809.1936.tb02137.x} */ constructor( X: T, parameters: Partial & { labels: any[] | Float64Array; }, ); /** * Transforms the inputdata `X` to dimensionality `d`. * * @returns {Generator} A generator yielding the intermediate steps of the projection. */ generator(): Generator; /** * Transforms the inputdata `X` to dimensionality `d`. * * @returns {T} - The projected data. */ transform(): T; } import type { InputType } from "../index.js"; import type { ParametersLDA } from "./index.js"; import { DR } from "./DR.js"; //# sourceMappingURL=LDA.d.ts.map