Desambiguación lingüística
# Desambiguación lingüística

En el ámbito de la lingüística computacional, la desambiguación del significado de las palabras es un problema abierto de procesamiento del lenguaje natural, que incluye el proceso de identificar con qué sentido se usa una palabra en los términos de una oración, o cuando la palabra en cuestión tiene polisemia, es decir, una pluralidad de significados.

La solución de este problema afecta a otras tareas de la lingüística computacional, tales como el discurso, la mejora de la relevancia en los motores de búsqueda, la resolución de referencia, la coherencia textual (lingüística), la inferencia, y otros.

## Dificultades

Si se consideran dos ejemplos de los diferentes significados que existen para la palabra "vela":

* Cilindro de cera o sebo, atravesado por una mecha que se prende para alumbrar.
* Pieza de lona o lienzo fuerte que, atada a las vigas, recibe el viento que impulsa la nave.

y las oraciones:

* Puso dos velas a San Pancracio.
* Los egipcios fueron los primeros constructores de barcos de vela de los que se tiene noticia.

### Desarrollo de algoritmos

Para un ser humano, es evidente que en la primera frase se utilice la palabra "vela", como primer significado, y en la segunda frase, la palabra "vela" está siendo utilizada con el segundo. El desarrollo de algoritmos para reproducir esta capacidad humana (desambiguar el significado) a menudo puede ser una tarea muy difícil.

### Relación entre los significados

En casos como el presentado, al menos algunos significados son diferentes. Sin embargo, en otros casos los diferentes significados pueden estar estrechamente relacionados (al ser un significado una extensión metafórica metonímica de otro) y, en tales casos, la división de las palabras a sus significados se vuelve aún mucho más difícil.

### Diccionarios y tesauros

Los diccionarios y los tesauros proporcionan diferentes divisiones de las palabras en sus significados. Una solución que algunos investigadores han usado consiste en elegir un diccionario particular, y sólo utilizar el conjunto de significados allí registrados. Sin embargo, los resultados de búsqueda al utilizar distinciones más amplias en los significados han sido mucho mejores.

### Varianza del juez interno: granularidad fina y gruesa

Otro problema es la varianza del juez interno. Los sistemas de desambiguación del significado de la palabra (WSD, por sus siglas en inglés, word sense disambiguation) por lo general se ponen a prueba al comparar sus resultados con los de un ser humano. Sin embargo, si se da una lista de significados y oraciones, los seres humanos no siempre coincidirán en qué palabra pertenece a qué significado. No se puede esperar que una computadora ofrezca un mejor rendimiento en esa tarea que un humano (de hecho, ya que los seres humanos sirven como estándar, el hecho de que el computador sea mejor que el ser humano no tiene sentido), por lo que el rendimiento humano funciona como un límite superior. El rendimiento humano, sin embargo, es mucho mejor en granularidad gruesa que en granularidad fina, así que otra vez ésta es la razón por lo que la investigación sobre las distinciones sobre granularidad gruesa es más útil.

### Inteligencia artificial y sentido común

Algunos investigadores sobre inteligencia artificial, como Douglas Lenat, argumentan que no se pueden analizar los significados de las palabras sin alguna forma de ontología de sentido común. Por ejemplo, compárense estas dos oraciones:

"Jill y María son hermanas." - (Son hermanas entre sí.) "Jill y María son madres." - (Cada una es independientemente una madre.)

Para identificar correctamente los significados de las palabras, hay que conocer los hechos de sentido común. Además, a veces el sentido común es necesario para eliminar la ambigüedad de palabras tales como los pronombres, en caso de que tengan anáforas o catáforas en el texto.

## Enfoques

Como en todo procesamiento del lenguaje natural, existen dos enfoques principales para la desambiguación del significado de la palabra: enfoque profundo y enfoque superficial.

### Enfoque profundo

El enfoque profundo supone el acceso a un amplio conjunto de conocimiento del mundo, que permite determinar en qué sentido se utiliza la palabra. Estos enfoques no son muy exitosos en la práctica, principalmente porque tal cuerpo de conocimientos no existe en un formato legible por el computador, fuera de ámbitos muy limitados. Sin embargo, si ese conocimiento sí existe, entonces los enfoques profundos serían mucho más precisos que los enfoques superficiales. Además, hay una larga tradición en la lingüística computacional, de tratar estos enfoques en términos de conocimientos codificados y en algunos casos, es difícil decir con claridad si el conocimiento en cuestión es lingüístico o conocimiento del mundo. El primer intento fue el de Margaret Masterman y sus colegas, en la Unidad de Investigación del Lenguaje de Cambridge, en Inglaterra, en la década de 1950. Este intento de utilizar como dato una tarjeta perforada, versión del diccionario de sinónimos de Roget y sus cabezas numeradas, como un indicador de los temas y espera para las repeticiones en el texto, utilizando un algoritmo de intersección de conjuntos. No tuvo mucho éxito, como lo describen detalladamente Y. Wilks y sus colaboradores (1996), pero tenía una relación fuerte con el trabajo venidero, especialmente la máquina de Yarowsky para el aprendizaje de optimización de un método de diccionarios de sinónimos en la década de 1990.

### Enfoques superficiales

Los enfoques superficiales no tratan de entender el texto, sino que consideran las palabras circundantes, utilizando la información como "si vela tiene las palabras mar o la pesca cerca, probablemente lo es en el sentido de los peces, y si vela tiene las palabras música o canción cerca, es probable que sea en el sentido de la música". Estas reglas se pueden obtener automáticamente por la computadora, utilizando un corpus de formación de palabras con el sentido de las palabras. Este enfoque, en teoría tan poderoso como los enfoques profundos, da mejores resultados en la práctica, debido al limitado conocimiento del mundo del ordenador. Sin embargo, puede ser confundido por otras frases.

**Clasificadores de Bayes y árboles de decisión**

Estos criterios establecen normas de trabajo mediante la definición de N palabras del contenido en torno a la ambigüedad de cada palabra en el cuerpo, y el análisis estadístico de las N palabras alrededor. Dos enfoques poco profundos utilizados son los clasificadores de Bayes y árboles de decisión. En una investigación reciente, los métodos basados en el kernel como, por ejemplo, las máquinas de soporte vectorial, han demostrado un rendimiento superior en el aprendizaje supervisado. Pero en los últimos años no ha habido ninguna mejora en el rendimiento de ninguno de estos métodos.

### La palabra problema

Es instructivo comparar la palabra problema en sentido de desambiguación con el problema de la parte del discurso. Ambas implican ambigüedades o etiquetado de las palabras, ya sea con los sentidos o de partes de la oración. Sin embargo, los algoritmos utilizados para uno no suelen funcionar bien para el otro, principalmente porque la parte del discurso de una palabra está determinada principalmente por las dos o tres inmediatamente adyacentes, mientras que el sentido de una palabra puede ser determinado por palabras más alejadas. La tasa de éxito para una parte de los algoritmos de discurso es en la actualidad mucho mayor que la de WSD (la técnica está en torno al 95% de precisión o mejor, en comparación con menos del 75% de precisión en la desambiguación de palabras con aprendizaje supervisado). Estas cifras son comunes en inglés, y pueden ser muy diferentes en otros idiomas.

### Disponibilidad de datos de entrenamiento

Otro aspecto de la desambiguación del sentido de la palabra que la hace diferente es la disponibilidad de datos de entrenamiento. Si bien los usuarios pueden memorizar todas las posibles palabras de las partes del discurso, es imposible para las personas memorizar todos los sentidos que una palabra puede tener. Así, muchos algoritmos utilizan semi-aprendizaje supervisado en la desambiguación en el sentido de la palabra, que permite tanto los datos etiquetados como los que no lo están. El algoritmo de Yarowsky fue un ejemplo de ese tipo de algoritmo, en el cual las palabras tienden a exhibir un solo sentido en el discurso más concreto y en una colocación determinada.

