nlp
This library is a small set of algorithms and data processing utilities for Natural Languages.
Much of this code is from the Nyxt analysis library here.
- Features
- tokenization
- stop-words
- porter stemming
- dbscan
- textrank
packages
NLP/STRING NLP/STEM/PORTER NLP/TESTS NLP/DATA NLP/DOC NLP/TEXTRANK NLP/DBSCAN NLP NLP/FUZZY NLP/TOKENIZE NLP/SECTION dependencies
std rdb cl-ppcre parse obj dependents
web organ nlp/tests core bin/homer bin/organ files
pkg.lisp data.lisp tokenize.lisp doc.lisp stem/porter.lisp textrank.lisp dbscan.lisp section.lisp string.lisp fuzzy.lisp tests
DBSCAN TEXTRANK DOCS PORTER-STEM SECTIONS TOKENIZE symbols
DICTIONARY INVERSE-DOCUMENT-FREQUENCY DOCUMENT-COLLECTION VECTOR-DATA STOP-WORDS DBSCAN DOCUMENT DOCUMENT-VERTEX STRING-CONTENTS EXTRACT-SECTIONS DOCUMENT-CLUSTER CLUSTER EXTRACT-KEYWORDS DISTANCE TF-IDF-VECTORIZE-DOCUMENTS LANGUAGE-DATA TERMP DOCUMENT-FREQUENCY EDGES GENERATE-DOCUMENT-DISTANCE-VECTORS NEIGHBORS WORD-TOKENIZE SENTENCE-TOKENIZE FUZZY-MATCH TERM-FREQUENCY ADD-DOCUMENT TF-VECTORIZE-DOCUMENTS CLUSTERS KEYWORDS DOCUMENTS SUMMARIZE-TEXT STEM RANK GET-CLUSTER LANGUAGE-DATA TERM-COUNT STOP-WORDS-LOOKUP
1. Fuzzy
The nlp/fuzzy
package contains a fuzzy matching algorithm extracted
from Nyxt.
(describe 'nlp/fuzzy:fuzzy-match)
NLP/FUZZY:FUZZY-MATCH [symbol] FUZZY-MATCH names a compiled function: Lambda-list: (INPUT SUGGESTIONS &KEY SUGGESTIONS-DISPLAY (SCORE-SUGGESTION (QUOTE SCORE-SUGGESTION))) Derived type: (FUNCTION (T T &KEY (:SUGGESTIONS-DISPLAY T) (:SCORE-SUGGESTION T)) (VALUES T &OPTIONAL)) Documentation: From the user input and a list of suggestions, return a filtered list of suggestions that have all the input words in them, and sort this list to have the 'most relevant' first. The match is case-sensitive if INPUT contains at least one uppercase character. SUGGESTIONS-DISPLAY can be used to pass the pre-computed display strings of the suggestions; otherwise `object-display' is used. Source file: /home/ellis/comp/core/lib/nlp/fuzzy.lisp