Strumento per creare regole proprie per la parola Lemmatizzazione e compiti simili
-
10-12-2019 - |
Domanda
Sto facendo un sacco di elaborazione del linguaggio naturale con un bit requisiti non resistenti. Spesso ottengo compiti simili a Lemmatization - Data una parola (o solo un pezzo di testo) Ho bisogno di trovare alcuni modelli e trasformare la parola in qualche modo. Ad esempio, potrei aver bisogno di correggere le erogazione di errori, ad es. Dato la parola "mangiare" ho bisogno di trasformarlo per "mangiare". O potrei aver bisogno di trasformare le parole "Ahahaha", "Ahahahaha", ecc. A solo "Ahaha" e così via.
Quindi sto cercando un attrezzo
.
{w}in -> {w}ing
aha(ha)+ -> ahaha
È necessario essere in grado di utilizzare modelli catturati dal lato sinistro sul lato destro.
Lavoro con i linguisti che non conoscono affatto la programmazione, quindi idealmente Questo strumento dovrebbe usare File esterni e Semplice lingua per le regole .
Sto facendo questo progetto in Clojure, quindi idealmente Questo strumento dovrebbe essere una biblioteca per una delle lingue JVM (Java, Scala, Clojure), ma anche altre lingue o strumenti di comando. .
Ci sono diversi progetti NLP molto interessanti, tra cui gate , stanford corenlp , nltk E altri, e non sono esperto in tutti loro, quindi potrei perdere lo strumento di cui ho bisogno. Se è così, per favore fammi sapere.
Uper. Sembra che io abbia bisogno di fornire alcuni dettagli / esempi di ciò di cui ho bisogno.
Soluzione
I've found http://userguide.icu-project.org/transforms/general to be useful as well for some general pattern/transform tasks like this, ignore the stuff about transliteration, its nice for doing a lot of things.
You can just load up rules from a file into a String and register them, etc.
Altri suggerimenti
I am not an expert in NLP, but I believe Snowball might be of interest to you. Its a language to represent stemming algorithms. Its stemmer is used in the Lucene search engine.