UNPKG

@ai-on-browser/data-analysis-models

Version:

Data analysis model package without any dependencies

78 lines (77 loc) 2.72 kB
/** * Budgeted Stochastic Gradient Descent */ export default class BSGD { /** * @param {number} [b] Budget size * @param {number} [eta] Learning rate * @param {number} [lambda] Regularization parameter * @param {'removal' | 'projection' | 'merging'} [maintenance] Maintenance type * @param {'gaussian' | 'polynomial' | { name: 'gaussian', s?: number } | { name: 'polynomial', d?: number } | function (number[], number[]): number} [kernel] Kernel name */ constructor(b?: number, eta?: number, lambda?: number, maintenance?: 'removal' | 'projection' | 'merging', kernel?: 'gaussian' | 'polynomial' | { name: 'gaussian'; s?: number; } | { name: 'polynomial'; d?: number; } | ((arg0: number[], arg1: number[]) => number)); _b: number; _eta: number; _lambda: number; _maintenance: "removal" | "projection" | "merging"; _kernel: any; _sv: any[]; _alpha: any[]; /** * Fit model. * @param {Array<Array<number>>} x Training data * @param {Array<1 | -1>} y Target values */ fit(x: Array<Array<number>>, y: Array<1 | -1>): void; /** * Returns predicted values. * @param {Array<Array<number>>} data Sample data * @returns {(1 | -1)[]} Predicted values */ predict(data: Array<Array<number>>): (1 | -1)[]; } /** * Multiclass Budgeted Stochastic Gradient Descent */ export class MulticlassBSGD { /** * @param {number} [b] Budget size * @param {number} [eta] Learning rate * @param {number} [lambda] Regularization parameter * @param {'removal' | 'projection' | 'merging'} [maintenance] Maintenance type * @param {'gaussian' | 'polynomial' | { name: 'gaussian', s?: number } | { name: 'polynomial', d?: number } | function (number[], number[]): number} [kernel] Kernel name */ constructor(b?: number, eta?: number, lambda?: number, maintenance?: 'removal' | 'projection' | 'merging', kernel?: 'gaussian' | 'polynomial' | { name: 'gaussian'; s?: number; } | { name: 'polynomial'; d?: number; } | ((arg0: number[], arg1: number[]) => number)); _b: number; _eta: number; _lambda: number; _maintenance: "removal" | "projection" | "merging"; _kernel: any; _classes: any[]; _sv: any[]; _alpha: any[]; /** * Fit model. * @param {Array<Array<number>>} x Training data * @param {*[]} y Target values */ fit(x: Array<Array<number>>, y: any[]): void; /** * Returns predicted values. * @param {Array<Array<number>>} data Sample data * @returns {*[]} Predicted values */ predict(data: Array<Array<number>>): any[]; }