Las Tecnologías del Lenguaje
Entendemos por tecnologías del lenguaje, la rama de la inteligencia artificial que permite, entre otras cosas, explotar automáticamente la enorme cantidad de información textual y oral a la que tenemos acceso fruto del desarrollo de la digitalización y cuyo análisis sería inabordable sin el apoyo de la técnica. Estas tecnologías incluyen: el procesamiento del lenguaje natural, la traducción automática y los sistemas conversacionales.
El Plan de impulso de las Tecnologías del Lenguaje es una iniciativa de la Secretaría de Estado para el Avance Digital que tiene como objetivo fomentar el procesamiento del lenguaje natural, la traducción automática y los sistemas conversacionales en español y lenguas cooficiales.
Procesamiento del lenguaje natural (PLN)
Es un área interdisciplinaria entre la Informática y la Lingüística cuyo objetivo principal es desarrollar componentes y conjuntos de sistemas de software diseñados para procesar el lenguaje humano y permitir analizar, comprender y generar lenguaje natural. El mayor reto en el PLN es la ambigüedad y la complejidad del lenguaje natural que es una dimensión importante de la inteligencia humana, por esto el PLN siempre ha formado parte de la Inteligencia Artificial. El Procesamiento del Lenguaje Natural pretende simular esta inteligencia humana de comprender y generar el lenguaje. Esta capacidad engloba ambas vertientes del lenguaje natural: la escrita y la oral. Sin embargo, en el contexto del Plan de Tecnologías del Lenguaje, la línea del PLN solo se centra en el procesamiento del texto, quedando la parte oral englobada en la categoría de Sistemas Conversacionales.
El PLN ha ido cobrando más relevancia con las grandes cantidades de datos disponibles hoy en día porque permite analizar el contenido no-estructurado y extraer el conocimiento y las relaciones subyacentes y permitiendo así dar un paso más allá de lo que ofrece el análisis de los datos estructurados.
El PLN implica tareas de pre-procesamiento básico del texto como la tokenización o la segmentación para identificar las unidades a analizar junto a las propias tareas de anotación y análisis que pueden realizarse a los diferentes niveles lingüísticos como el análisis morfosintáctico, sintáctico, semántico, pragmático-discursivo.
Las técnicas aplicadas en PLN se han ido desarrollando a lo largo de los años empezando con los modelos basados en reglas y lexicones pasando por los modelos estadísticos hasta llegar a los modelos de aprendizaje automático. En los últimos años, gracias al gran avance en cuanto a las capacidades de cómputo y almacenamiento, los modelos de aprendizaje profundo han introducido un cambio sustancial en el panorama del PLN, representando un salto cuantitativo y cualitativo respecto a los resultados obtenidos.
Los ejemplos de aplicaciones que emplean el PLN son varios. Entre ellos: la búsqueda inteligente, la recuperación y extracción de información, los sistemas de pregunta-respuesta, los resúmenes automáticos, el análisis de sentimiento en textos, la clasificación automática por temática, etc.
Traducción automática (TA)
La traducción automática permite traducir de una lengua origen a una lengua destino sin la intervención humana. Las tecnologías de la traducción incluyen la traducción automática y la traducción asistida por ordenador. Estas tecnologías son clave para superar las barreras del idioma en un mundo hiperconectado como el nuestro. Al igual que la traducción de un idioma natural a otro, hecha por los humanos, la traducción automática no consiste simplemente en sustituir palabras en un idioma por palabras en otro, sino en la aplicación de conocimientos lingüísticos complejos que implican distintos niveles de análisis, como la morfología (cómo se construyen las palabras a partir de unidades de significado más pequeñas), la sintaxis (estructura de las oraciones), la semántica (significado) y la pragmática (contexto). Estos procesos, que en las primeras etapas de la tecnología se codificaban en forma de reglas lingüísticas programadas manualmente, en los sistemas actuales se abordan de forma integral por medio de redes neuronales multicapa de aprendizaje profundo, que se entrenan sobre grandes corpus de texto, tanto bilingües como monolingües. .
Las soluciones de traducción automática y traducción asistida por ordenador utilizan las siguientes herramientas o componentes básicos:
- Motores de traducción automática: son sistemas que permiten traducir automáticamente de una lengua origen a una lengua destino.
- Memorias de traducción: se trata de repositorios de traducciones previas revisadas, almacenadas en forma de segmentos originales alineados con su traducción respectiva. Sirven tanto para alimentar herramientas de asistencia a la traducción como de entrenamiento de motores de traducción automática.
- Herramientas de traducción asistida: Estas herramientas permiten crear y gestionar memorias de traducción, en las que se van almacenando las traducciones que los usuarios realizan con el uso de la propia herramienta. De forma genérica, estas herramientas detectan coincidencias en los segmentos originales (no necesariamente coincidencias estrictas) y proponen al usuario la traducción correspondiente. A menudo estas herramientas incorporan además acceso a motores de traducción automática.
Sistemas conversacionales (SSCC)
En el ámbito del Plan TL se utiliza el término sistemas conversacionales para hacer referencia a las aplicaciones o sistemas informáticos con los que es posible comunicarse sosteniendo una conversación en lenguaje natural. Este enfoque enfatiza dos ideas clave:
- En primer lugar, la utilización de lenguaje natural (escrito o hablado) como soporte a la comunicación.
- En segundo lugar, el soporte a una interacción conversacional o dialogada. Es decir, la interacción se realiza a través de una serie de turnos en los que usuario y sistema van intercambiando mensajes en lenguaje natural.
Existe una amplia terminología relacionada con los sistemas conversacionales. El término chatbot se suele utilizar para describir sistemas con los que usualmente se interactúa en modo texto (a través de un chat), con los que se charla sobre cualquier temática, habitualmente para entretenerse. A los sistemas conversacionales también se les puede denominar sistemas de diálogo, utilizándose ambos términos como sinónimos en muchas ocasiones. Otra distinción sutil consiste en el uso del término sistema conversacional frente a agente conversacional. Usualmente, se emplea la palabra agente cuando el usuario puede figurarse al sistema como un interlocutor identificable. Esto suele ocurrir con los agentes conversacionales personificados, que tienen una apariencia física mostrada a través de avatares u otras representaciones gráficas; o los robots, para los cuales también existe el término robot conversacional.
El desarrollo de un sistema conversacional involucra un gran número de componentes que replican las funciones que llevamos a cabo los seres humanos para mantener un diálogo: reconocer la secuencia de palabras mencionadas por el usuario (reconocimiento automático del habla); extraer el significado de dichas palabras, es decir, comprender qué información es útil en el dominio del sistema (comprensión del lenguaje natural); realizar operaciones de acceso a servicios u otros recursos del sistema, en los que se almacena la información que solicita el usuario o se registran las operaciones que desea conocer; decidir qué acción o acciones deben realizarse a continuación de cada solicitud del usuario, es decir, qué respuesta debe suministrar el sistema (gestión de diálogo); reproducir un mensaje hablado que informe al usuario qué acción ha seleccionado el sistema (síntesis del habla), y que puede ir acompañado de información adicional en otras modalidades.
En el campo del reconocimiento automático del habla, se ha progresado desde el reconocimiento de palabras aisladas dentro de conjuntos reducidos de vocabulario hasta el reconocimiento de habla continua y con conjuntos de vocabulario cada vez mayores con la utilización de técnicas de aprendizaje profundo. También ha habido avances importantes en la comprensión del lenguaje hablado a través de la utilización de modelos estadísticos generativos, modelos discriminativos y técnicas de aprendizaje profundo. La comprensión del lenguaje hablado está relacionada con tareas clásicas del PLN, como la definición de gramáticas, la tokenización, reconocimiento de actos de diálogo, uso de bolsas de palabras, reconocimiento de entidades nombradas, etc. Las aproximaciones basadas en el aprendizaje automático de modelos de gestión de diálogo a partir de los datos han mejorado también notablemente su rendimiento en comparación con los enfoques tradicionales basados en la definición manual de reglas.
El número de entornos y tareas en los que pueden aplicarse los sistemas conversacionales es enorme, por ejemplo: sistemas que proporcionen información; sistemas de atención en el ámbito médico; servicios de banca electrónica; turismo; entornos industriales; aplicaciones accesibles desde los vehículos; sistemas que faciliten el acceso a la información a personas con discapacidades, aplicaciones de tele-educación; apps y asistentes para dispositivos móviles; acceso a servicios y control de máquinas vía telefónica; interacción en el hogar y control domótico; interacción con robots y dispositivos wearables; sistemas capaces de reconocer gestos, emociones de los usuarios, etc.
Impulso de las Tecnologías del Lenguaje: Plan TL
El Plan de impulso de las Tecnologías del Lenguaje (Plan TL) apoya el desarrollo de servicios públicos inteligentes. Las Administraciones Públicas (AAPP) españolas cuentan con un alto grado de digitalización, lo que posibilita la incorporación de estas técnicas y la generación de valiosos recursos para el desarrollo del sector industrial de las TL.
El Plan TL apoya en este proceso a las AAPP mediante:
- Oficina Técnica para la definición y análisis de casos de uso, estándares y validación de resultados
- Herramientas SW
- Organización de campañas de evaluación
- Plataforma de alto rendimiento (HPC)
- Colaboración en proyectos europeos (H2020, CEF, eInfra…)
- Coordinación entre AAPP
¿Cómo se impulsan las Tecnologías del Lenguaje desde el Plan?
- Generando recursos: corpus (textuales, audio, video, memorias de traducción) y componentes SW.
- Fomentando las TL desde la demanda; Aplicando TL y otras técnicas de inteligencioa artificial a la resolución de casos de uso de AAPP.
- Creando plataformas comunes de PLN y TA para las AAPP.
- Impulsando la transferencia de conocimiento y la formación en TL.
- Validando científicamente los resultados mediante campañas de evaluación.