@astermind/astermind-elm
Version:
JavaScript Extreme Learning Machine (ELM) library for browser and Node.js.
41 lines (40 loc) • 1.5 kB
TypeScript
import { ELMConfig, Activation } from '../core/ELMConfig';
import { LabeledExample } from '../utils/IO';
export declare class LanguageClassifier {
private elm;
private config;
private onlineMdl?;
private onlineCats?;
private onlineInputDim?;
constructor(config: ELMConfig);
private requireEncoder;
loadTrainingData(raw: string, format?: 'json' | 'csv' | 'tsv'): LabeledExample[];
/** Train from labeled text examples (uses internal encoder). */
train(data: LabeledExample[]): void;
/** Predict from raw text (uses internal encoder). */
predict(text: string, topK?: number): import("../core/ELM").PredictResult[];
/** Train using already-encoded numeric vectors (no text encoder). */
trainVectors(data: {
vector: number[];
label: string;
}[]): void;
/** Predict from an already-encoded vector (no text encoder). */
predictFromVector(vec: number[], topK?: number): import("../core/ELM").PredictResult[];
beginOnline(opts: {
categories: string[];
inputDim: number;
hiddenUnits?: number;
lambda?: number;
activation?: Activation;
weightInit?: 'uniform' | 'xavier' | 'he';
forgettingFactor?: number;
seed?: number;
}): void;
partialTrainVectorsOnline(batch: {
vector: number[];
label: string;
}[]): void;
endOnline(): void;
loadModelFromJSON(json: string): void;
saveModelAsJSONFile(filename?: string): void;
}