# Apache OpenNLP

La biblioteca Apache OpenNLP és un conjunt d'eines basat en l'aprenentatge automàtic escrit en el llenguatge de programació Java per processar text en llenguatge natural en el camp de la lingüística computacional o el processament del llenguatge natural (NLP). Admet les tasques de PNL més habituals, com ara la identificació del llenguatge, la tokenització, la segmentació de frases, l'etiquetatge de part del discurs, l'extracció d'entitats amb nom, la fragmentació, l'anàlisi i la resolució de correferència. Aquestes tasques solen ser necessàries per crear serveis de processament de textos més avançats. S'aplica la llicència de programari lliure de l'Apache Software Foundation. L'objectiu del projecte OpenNLP és desenvolupar un conjunt d'eines madur per a les tasques anteriors i proporcionar una sèrie de models ja fets per a diferents idiomes.
Els components inclosos permeten acomplir la tasca de processament de la parla respectiva, entrenar un model i sovint també avaluar un model. Cadascun d'aquests components és accessible mitjançant la seva interfície de programació d'aplicacions (API). A més, tots són accessibles mitjançant la línia d'ordres (CLI) per facilitar l'experimentació i la formació.

## Propietats

* Identificació de l'idioma: El "LanguageDetector" requereix un model entrenat. El propi OpenNLP ofereix el model preparat langdetect-183.bin com a descàrrega. Això és capaç d'identificar 103 idiomes.
* Reconeixement de frases: el "SentenceDetector" reconeix si un punt marca el final d'una frase o si té un altre significat. També aquí cal especificar un model entrenat. OpenNLP ofereix models per a diferents idiomes, p. B. opennlp-ca-ud-ancora-sentence-1.2-2.5.0.bin per al reconeixement de frases en textos en català.
* Tokenització: el tokenitzador trenca una cadena en fitxes. Les fitxes solen ser paraules, signes de puntuació, números, etc.
* Etiquetatge de part de la parla: OpenNLP té una selecció de models ja entrenats per a 32 diferents idiomes (alemany, anglès, espanyol, portuguès, danès, etc.). Amb l'ajuda d'aquests models, es pot proporcionar automàticament un corpus de text en un d'aquests idiomes amb les etiquetes adequades.
* Extracció d'entitats amb nom: el "TokenNameFinder" pot reconèixer objectes i números amb nom al text. Per poder reconèixer les entitats cal un model. El model depèn de l'idioma i del tipus d'entitat per als quals s'ha format. El projecte OpenNLP ofereix una sèrie de models pre-entrenats que han estat entrenats en diversos corpus de lliure disposició. Es poden descarregar des de la pàgina de descàrrega del model.

## Referències

* ↑ «Apache OpenNLP» (en anglès). [Consulta: 4 gener 2025].
* ↑ «Apache OpenNLP Download Models» (en anglès). [Consulta: 4 gener 2025].
* ↑ Tyson, Matthew. «Natural language processing with Apache OpenNLP» (en anglès). https://www.infoworld.com.+[Consulta: 21 març 2023].
* ↑ baeldung. «Intro to Apache OpenNLP | Baeldung» (en anglès). https://www.baeldung.com/.+[Consulta: 4 gener 2025].
* ↑ «Apache OpenNLP Language Detection Model» (en anglès). [Consulta: 4 gener 2025].
* ↑ «Apache OpenNLP Sentence Detection Models» (en anglès). [Consulta: 4 gener 2025].
* ↑ «Apache Stanbol - OpenNLP POS Tagging Engine» (en anglès). [Consulta: 11 febrer 2019].