Natural is a natural language processing library for Node.js that provides tools for text analysis, tokenization, and phonetic matching. It functions as a collection of specialized toolsets for word stemming, string similarity quantification, and pattern-based text classification.
The library includes a phonetic sound analyzer that converts words into phonetic representations to identify matches based on sound rather than literal spelling. It also features a text classification engine that assigns categories to text inputs using trained models and pattern recognition.
Additional capabilities cover linguistic primitives such as algorithmic string distance measurement, heuristic suffix stripping to reduce words to their root forms, and statistical term weighting to identify document keywords. It also provides utilities for rule-based tokenization and term frequency calculation within a corpus.