@astermind/astermind-elm
Version:
JavaScript Extreme Learning Machine (ELM) library for browser and Node.js.
37 lines (36 loc) • 1.27 kB
TypeScript
export declare class TFIDF {
termFrequency: Record<string, number>;
inverseDocFreq: Record<string, number>;
wordsInDoc: string[];
processedWords: string[];
scores: Record<string, number>;
corpus: string;
constructor(corpusDocs: string[]);
static countDocsContainingTerm(corpusDocs: string[], term: string): number;
static processWords(words: string[]): string[];
static removeStopWordsAndStem(words: string[]): string[];
static advancedStem(word: string): string;
static lemmatize(word: string): string;
static generateNGrams(tokens: string[], n: number): string[];
calculateScores(): Record<string, number>;
extractKeywords(topN: number): Record<string, number>;
processedWordsIndex(word: string): number;
}
export declare class TFIDFVectorizer {
vocabulary: string[];
tfidf: TFIDF;
docTexts: string[];
constructor(docs: string[], maxVocabSize?: number);
/**
* Returns the dense TFIDF vector for a given document text.
*/
vectorize(doc: string): number[];
/**
* Returns vectors for all original training docs.
*/
vectorizeAll(): number[][];
/**
* Optional L2 normalization utility.
*/
static l2normalize(vec: number[]): number[];
}