La desambiguación del sentido de las palabras (WSD) se encuentra en el núcleo de los programas de software diseñados para interpretar el lenguaje. Las palabras u oraciones ambiguas se pueden entender de varias maneras, aunque solo se pretende un significado. La desambiguación busca descifrar el significado deseado de palabras y oraciones. Esta área es extremadamente desafiante para los programadores encargados de diseñar interfaces precisas para cerrar la brecha entre el lenguaje hablado y escrito y las traducciones generadas por computadora.
El software diseñado para convertir voz en texto puede «escuchar» a un usuario hablando en un micrófono y traducir las palabras habladas en oraciones escritas a máquina. El usuario dicta la puntuación, intercalando palabras como «coma» y «punto» cuando corresponda. Esto suena bastante sencillo, excepto que muchas palabras suenan exactamente iguales.
Por ejemplo, know y no o I y eye son fonéticamente indistinguibles. La desambiguación del sentido de las palabras ayuda a traducir correctamente, «Debería saberlo la semana que viene», mediante el uso de lo que es básicamente un conjunto de reglas de «si, entonces» que toman en consideración la ubicación de las palabras y las palabras adyacentes como indicadores de la palabra deseada. Este tipo de desambiguación del sentido de las palabras se conoce como el «enfoque superficial» y es bastante preciso, pero no siempre se puede contar con él.
Otro enfoque es aplicar el «conocimiento del mundo», o lo que la lingüística informática llama el «enfoque profundo». Este enfoque se basa en léxicos como diccionarios y sinónimos para ayudar a determinar el sentido correcto de una palabra. Desafortunadamente, diseñar una base de datos de aproximación profunda que sea lo suficientemente completa como para proporcionar una mayor precisión que la aproximación superficial no es una tarea fácil.
El software que lee texto en voz alta (conversión de texto a voz) también requiere desambiguación del sentido de las palabras. La palabra bajo, por ejemplo, podría significar un instrumento musical, una nota o un pez. En el último caso, se pronuncia de manera diferente, dejando que WSD deduzca qué pronunciación usar. Si la oración escrita es «El bajo es pesado», solo un escaneo de las oraciones circundantes podría revelar pistas, como encontrar las palabras «pesca», «barco», «muelle» o, por el contrario, «banda», » música ”o“ canción ”. Si la desambiguación del sentido de las palabras del programa no es lo suficientemente sólida, o si faltan pistas adicionales, el programa puede cometer errores en la traducción.
Además de las reglas de «si, entonces» del enfoque superficial, también se utilizan algoritmos para determinar las interpretaciones correctas. En el ejemplo anterior, un algoritmo puede encontrar palabras clave en todo el documento que claramente apunten a una interpretación musical, o viceversa. También se utilizan otros enfoques en WSD que son básicamente refinamientos o extensiones de estos enfoques básicos.
La desambiguación del sentido de las palabras también es vital en las interfaces de comandos verbales diseñadas para reemplazar el teclado, no solo en la transmisión de comandos simples del sistema operativo, sino en tareas tan complejas como investigar en la Web. Otras áreas en las que WSD juega un papel incluyen el desarrollo de la Web Semántica y modelos mejorados de inteligencia artificial. De hecho, cualquier área de la ciencia que se base en un puente lingüístico entre humanos y máquinas utilizará la desambiguación del sentido de las palabras.