Recursos lingüístics en codi lliure

Compartiu


Processament del Llenguatge Natural

Lluís Padró
padro@lsi.upc.es

El terme “Processament del Llenguatge Natural” (PLN) engloba les tecnologies dedicades a automatitzar processos que requereixen un cert grau de comprensió de la llengua. Aplicacions típiques d’aquestes tecnologies són els traductors automàtics, els correctors sintàctics, els resumidors automàtics, les interfícies telefòniques de diàleg, etc.

Per poder desenvolupar aplicacions com les anteriors, són necessaris una sèrie de recursos i eines informàtiques relacionades amb la llengua: Bases de dades amb informació morfològica i semàntica de les paraules, programes capaços d’extreure l’estructura sintàctica d’una frase, o de decidir si un nom propi (per exemple, “Barcelona”) es refereix a una ciutat o a un equip de futbol segons el context on apareix, etc.

Cadascuna d’aquestes eines bàsiques requereix molts anys d’esforç, recerca i desenvolupament, que en general només és abordable des de departaments de recerca universitaris o de grans multinacionals. La falta de disponibilitat de recursos d’aquesta mena constitueix un seriós fre a l’avenç del desenvolupament d’aplicacions finals que tractin la llengua. En el cas particular del català, s’hi afegeix el fet que sovint les grans companyies de software considerin innecessària i poc rendible el desenvolupament de productes en una llengua que veuen com minoritària o no-oficial.

Per tant, cal emprendre passos en la direcció de que hi hagi disponibles eines i recursos per al PLN, que puguin ser usats sense restriccions, i que permetin avenços més ràpids en aquest camp tecnològic, i que alhora facilitin el desenvolupament d’aquest tipus de programari per a la llengua catalana.

En conseqüència, el Centre de Recerca en Tecnologies i Aplicacions del Llenguatge i la Parla (TALP) de la UPC, ha llançat la primera versió de FreeLing, una suite d’analitzadors lingüístics bàsics, que ofereix la possibilitat de ser integrable en qualsevol sistema de PLN, extensible, i portable a noves llengües. Per fer possible tot això, la suite es llicencia com programari lliure, sota la llicencia LGPL. Més informació a www.lsi.upc.es/~nlp.

Programari Lliure

Malgrat que les companyies de software tradicional insisteixen en que el programari lliure no és un model viable, de fet ofereix clars avantatges per als usuaris, així com moltes oportunitats de negoci per companyies de software innovadores: Per una banda, tant els usuaris com els desenvolupadors es beneficien de les millores que gent d’arreu del món pugui fer al codi, obtenint un programari de més alta qualitat. Per l’altra, el fet que el codi sigui obert, no elimina l’activitat comercial de les companyies de software, sinó que la canvia per afavorir el consumidor: Els productors de software ja no poden basar el seu negoci en vendre productes “prêt-à-porter” sense cap mena de garantia, però en canvi poden oferir múltiples serveis associats a aquell programari: Instal·lació, manteniment, personalització, extensió sota demanda, suport tècnic, o qualsevol altra activitat de valor afegit.

Aquest model de negoci alternatiu resulta inconvenient per a unes poques companyies productores de software a gran escala, però és una molt bona notícia per a petites i mitjanes empreses del sector de la informàtica, que poden omplir un nou nínxol del mercat, i òbviament, també per als usuaris, que finalment poden exercir el seu dret a escollir en un mercat de lliure competència.

En el nostre cas, el fet d’oferir la nostra suite d’analitzadors sota llicencia LGPL, permet que pugui ser usada per construir aplicacions comercials de PLN. El fet que sigui programari lliure fa que tothom pugui usar-la en les mateixes condicions, i que ningú pugui treure profit exclusiu de les millores que faci a les eines en sí.

Analitzadors del centre TALP

Els analitzadors es distribueixen en forma de llibreria C++ que pot ser cridada des de qualsevol programa per obtenir l’anàlisi lingüística d’un text. La versió actual inclou les següents funcionalitats per al castellà, el català i l’anglès:

  • Separació de paraules i frases.
  • Anàlisi morfològica de les paraules (determinació dels possibles lemes i categories gramaticals de cada paraula: per exemple, “cases” pot ser un nom -plural del lema “casa”- o una forma verbal del lema “casar”).
  • Reconeixement de multiparaules (per exemple, “a_la_vora_de”)
  • Reconeixement de noms propis (per exemple, “Universitat Politècnica de Catalunya”).
  • Reconeixement de números (per exemple, “dos milions cent trenta mil”)
  • Reconeixement de dates (per exemple, “el vint-i-tres de març”)
  • Reconeixement de quantitats monetàries (per exemple, “tres mil lliures esterlines”)
  • Reconeixement de percentatges i proporcions (per exemple, “un de cada tres”, “el dotze per cent”)
  • Desambiguació morfosintàctica (determinació de la categoria gramatical correcta de cada paraula segons el context on apareix, per exemple, a “les cases són grans” la paraula “cases” és un nom, plural de “casa”, però a “Quan et cases?” és una forma verbal de “casar”).

Properes versions, inclouran també chunking (reconeixement de sintagmes i la seva estructura sintàctica) i classificació del tipus de noms propis (de persona, de lloc, d’organització, …)

Els diccionaris morfològics pel català i el castellà han estat desenvolupats i revisats per experts en lingüística del Centre de Llenguatge i Computació de la Universitat de Barcelona i tenen les següents característiques:

  • Anglès
    Més de 160.000 formes d’uns 78.000 lemes diferents, obtinguts automàticament de textos anotats.
  • Castellà
    Vora de 71.000 formes, contenint tots els lemes de categories tancades (articles, preposicions, etc.) més totes les formes dels 5.000 lemes més freqüents de categories obertes (noms, verbs, adjectius i adverbis)
  • Català
    Vora de 46.000 formes, contenint tots els lemes de categories tancades més totes les formes dels 5.000 lemes més freqüents de categories obertes.

Sobre un text general, els analitzadors morfològics cobreixen totes les ocurrències de paraules de categories tancades més el 80% de les obertes. Les paraules que no estan al diccionari es tracten amb un procés estadístic sobre els seus sufixos, que proposa la categoria gramatical correcta en el 90% dels casos.

El desambiguador morfosintàctic segueix un model estadístic de Markov, i desambigua correctament més del 96% de les paraules en tots tres idiomes.

L’anàlisi morfològica es realitza a una velocitat de 6.000 paraules/segon en un P4 a 2.4GHz. El desambiguador morfosintàctic va a unes 3.100 paraules/segon. Si es realitzen ambdues tasques sobre el mateix processador alhora, la velocitat conjunta és de 2.300 paraules/segon.

Conclusions i Futur

FreeLing és una suite d’analitzadors lingüístics per al català, el castellà i l’anglès, completament escrita en C++, i distribuïda sota llicència LGPL. Això en facilita la portabilitat a d’altres llengües, i l’adaptabilitat a necessitats específiques dels usuaris o desenvolupadors.

Esperem que aquest programari constitueixi un recurs valuós per a la comunitat que treballa en PLN, tan en temes de recerca (totes les millores al programari revertiran en benefici de la comunitat), com en el desenvolupament d’aplicacions comercials (la llicència LGPL permet l’ús dels analitzadors com un component en un sistema comercial).

Les futures versions de la llibreria inclouran noves capacitats, en les següents línies:

  1. Noves tasques: Classificació de noms propis, continc, anotació semàntica, desambiguació de sentits, resolució de l’anàfora i coreferència, etc.
  2. Millor cobertura: Augmentar la mida dels diccionaris per les llengües actuals, i incloure noves llengües.
  3. Oferir diferents opcions pel mateix servei (per exemple, diversos algorismes de desambiguació, per tal que el programador pugui escollir la més adient a les seves necessitats).
  4. Millorar la capacitat d’incorporació de noves llengües, de manera que se’n puguin afegir modificant el mínim de codi.
  5. Aquest document és © 2004 Lluís Padró. Es permet el seu ús i distribució en qualsevol mitjà sempre que no sigui modificat i s’inclogui aquesta nota.


Comentaris