Category: Procesamiento del Lenguaje Natural

Del procesamiento conjunto de la ciencia computacional y la lingüística aplicada, nace el Procesamiento de Lenguaje Natural (PLN o NLP en inglés), cuyo objetivo no es otro que el de hacer posible la compresión y procesamiento asistidos por ordenador de información expresada en lenguaje humano, o lo que es lo mismo, hacer posible la comunicación entre personas y máquinas.

Existen distintos programas que exhiben diferente grado del procesamiento inteligente del lenguaje. Por ejemplo, un buscador de documentos puede buscar simplemente los documentos que contienen la cadena de caracteres especificada por el usuario, sin importar que dicha cadena tenga o no un significado en un lenguaje o idioma. En este caso no sería una aplicación del PLN. Sin embargo, el mismo buscador podría buscar los documentos que comuniquen la idea especificada por el usuario, sin importar las letras que la comunican, y en este caso, sin duda, sería una excelente aplicación de PLN, ya que entendería la idea comunicada en la petición del usuario, la idea comunicada en cada uno de los documentos, y sería capaz de compararlas.

Por este motivo, para profundizar más en esta temática, os exponemos algunas tareas y aplicaciones del Procesamiento del Lenguaje Natural:

1.Speech To Text / Text To Speech

Speech to text o STT se basa en la conversión de audio a texto y se trata de una tarea para poner en valor los audios, que una vez convertidos en textos, pueden ser procesados con otras técnicas de PLN. Una vez procesado es posible devolver un audio utilizando la conversión de texto a audio (Text To Speech o TTS). Ambas tareas, STT y TTS, han cobrado mucha relevancia con los sistemas conversacionales con un alto nivel de calidad, como pueden ser los sistemas de Siri, Alexa, OK Google, Cortana, etc.

PLN speech to text itelligent

2.Preguntas y Respuestas (Questioning and Answering, Q&A)

Q&A es la tarea de responder preguntas a partir de información obtenidas de distintos recursos. Es una tarea importante para los sistemas de diálogo como los chatbots y para la mejora de los sistemas de búsqueda (Information Retrieval). Los nuevos sistemas de Deep Learning están permitiendo una mejora sustancial en esta tarea. En un proyecto realizado por ITELLIGENT sobre Turismo Inteligente, se desarrolló un sistema de Questioning and Answering entrenado con comentarios sobre recursos turísticos de Andalucía (hoteles, restaurantes, playas, museos,…) y que permitía localizar recursos turísticos a partir de muchas preguntas variadas.

Antes, mencionamos los sistemas de Information Retrieval, estos sistemas de búsqueda  fueron uno de los primeros sistemas de Procesamiento de Lenguaje Natural que se adoptaron de forma generalizada. Hay dos pasos fundamentales en un buscador:

  • Generación Índice Invertido. El índice invertido permite guardar para cada palabra los documentos en los que aparece, de forma que la búsqueda de los documentos que contienen una palabra sea muy rápida.
  • Ranking de documentos. Una vez localizado todos los documentos que contienen las palabras que buscamos es necesario decidir en qué orden mostrarlos (orden de relevancia), aquí Google introdujo una innovación con su técnica denominada PageRank.

3.Traducción Automática

La traducción automática, permite traducir un texto de un idioma a otro. Esta tarea cobró un importante impulso gracias a los corpus de textos traducidos entre dos idiomas (denominados “corpus paralelos”), facilitados por el parlamento de la Unión Europea. Frente a los primeros sistemas de los años 50s, actualmente la traducción automática es una tarea de Procesamiento de Lenguaje Natural que ha conseguido un alto nivel de calidad. Ejemplo de ello, aplicaciones como  iTranslate Converse para iOS o Microsoft Translator App.

ios traducir app

 

4.Extracción de Información (Information Extraction)

La extracción de información es la obtención de conjunto predefinido de campos de un texto en formato libre. Se puede ver como la generación de una base de datos a partir de documentos poco estructurados. Por ejemplo, obtener distintos datos de un PDF de sobre inspecciones de soldadura, extraer: nombre soldador, características de la soldadura, etc.

5.Clasificación de Documentos: cómo funciona

La tarea de clasificación de documentos (document classification) consiste en entrenar un sistema para que sea capaz de aprender a clasificar textos a partir de un conjunto de textos ya clasificados. En la mayoría de los casos estos sistemas suelen funcionar bastante bien, consiguiéndose calidades de clasificación (ej. accuracy) superiores al 95%. En un post anterior, explicábamos cómo funciona un clasificador automático de documentos utilizando técnicas de PLN y Machine Learning sobre un conjunto de elementos para ordenarlos por clases o categorías.

Década de los 50

Se considera 1950 como el año del nacimiento del PLN, cuando Alan Turing publica un artículo denominado “Machine and Intelligence”. Poniendo de relieve que una forma de medir la inteligencia seria a través de la capacidad de una máquina de responder preguntas de forma que un operador humano no distinguiera sus respuestas de las de un humano (Test de Turing).

Un énfasis inicial en la década de los 50s fue la traducción automática, en particular entre inglés y ruso, con objetivos militares. Una época de fuerte optimismo en las posibilidades del PLN.

En esa época uno de los sistemas desarrollados, al traducir un versículo del testamento (Mateos, 26:41) que dice: ‘the spirit is willing, but the flesh is weak’ (el espíritu es voluntarioso, pero la carne es débil) lo tradujo por ‘the vodka is agreeable, but the meat is spoiled’ (el vodka es agradable pero la carne esta podrida), estos tipos de errores fueron los que hicieron

Década de los 60 y 70

A principio de los 60s los sistemas desarrollados de Traducción Automática son evaluados con resultados muy limitados lo que paralizó su desarrollo futuro y en general supuso un baño de realidad para el sector del PLN.

Durante esta década Noam Chomsky (lingüista estadounidense) introduce la teoría formal del lenguaje y la sintaxis generativa. Esto dio un nuevo impulso al PLN, con la creación de nuevas aproximaciones basadas principalmente en reglas cuyo objetivo era generar lenguaje o parsear textos.

Desgraciadamente estos sistemas basados en reglas, se vieron pronto superados por la complejidad del lenguaje natural, así los sistemas requerían más y más reglas llegando a convertirse en inmanejables.

Se comenta que en esa época Fred Jelinek de IBM que trabajaba en los sistemas de PLN decía: “cada vez que un lingüista abandona el equipo el sistema mejora”, en referencia a las limitaciones de los modelos basados en reglas lingüísticas frente a los modelos basados en probabilidad y aprendizaje automático.

Década de los 80 y 90

Las limitaciones de los sistemas basados en reglas hacen que en esta década comiencen a tener cada vez más protagonismo los sistemas basados en probabilidad y aprendizaje automático (machine learning). Estos sistemas van reduciendo su dependencia de modelos lingüísticos y se basan cada vez más en datos (ej. conjuntos de textos denominados “corpus”).

Durante los 90s la aparición de internet, introduce la disponibilidad de un gran número de textos (html, pdfs,…) y audios, además de la necesidad de nuevas herramientas que sean capaces de poner en valor estos grandes repositorios de datos. Durante esta década se desarrollan los sistemas de búsqueda (ej. AltaVista y Yahoo) y a finales de los 90s aparece Google que supone un cambio de paradigma en los sistemas de búsqueda.

yahoo

Década de los 2000

Las técnicas de Aprendizaje Automático (Machine Learning) van tomando cada vez más protagonismo. El éxito de empresas como Google, hacen que la Inteligencia Artificial y el PLN comiencen a popularizarse.

Durante la década del 2000s IBM desarrolla Watson, que en el 2011 derrota al juego del Jeopardy a dos expertos en dicho juego. Watson es un sistema diseñado para una tarea de PLN denominada Q&A (preguntas y respuestas), adaptado a las particularidades de Jeopardy y con capacidad de interactuar por voz con el presentador.

Década de los 2010

Las nuevas técnicas de Deep Learning (redes neuronales profundas) que a principios de la década están revolucionando el procesamiento de imágenes llegan al PLN. Apareciendo en el 2012 Word2Vec una técnica de “Word embedding” que permite representar las palabras de un texto como vectores, con unas propiedades muy interesantes. Word2vec representó la introducción de un nuevo paradigma en el PLN, que comienza a abordar con éxito tareas hasta entonces consideradas extremadamente complicadas.

En el 2018 Google presenta BERT, que es un modelo de Word embedding, que presenta mejoras sobre Word2vec, entre otras, su capacidad de representar mediante diferentes vectores palabras polisémicas.

El Plan de Impulso de las Tecnologías del Lenguaje (PTL) se ejecuta en el marco de la Agenda Digital para España y tiene como objetivo impulsar el sector del procesamiento del lenguaje natural (PLN), la traducción automática y los sistemas conversacionales en lengua española y lenguas cooficiales. Con un alcance de cinco años, este PTL tiene como premisa coordinar todas las actuaciones de la Administración General del Estado junto a las Comunidades Autónomas para fomentar las tecnologías del lenguaje.

Asimismo, existen algunos objetivos específicos que se engloban en este Plan:

  • Establecer medidas encaminadas a aumentar el número, calidad y disponibilidad de las infraestructuras lingüísticas en español y lenguas cooficiales.
  • Impulsar la Industria del lenguaje fomentando la transferencia de conocimiento entre el sector investigador y la industria.
    • Ayudar a la internacionalización de las empresas e instituciones que componen el sector.
    • Mejorar la difusión de los proyectos actuales.
  • Mejorar la calidad y capacidad del servicio público incorporando las tecnologías PLN, la traducción automática y los sistemas conversacionales.
    • Apoyar la generación, estandarización y difusión de recursos lingüísticos.

El PTL pretende que el impulso a las tecnologías del lenguaje se realice de forma coordinada: buscar sinergias y evitar duplicidad de esfuerzos, conforme a las recomendaciones de la Comisión para la Reforma de las Administraciones Públicas (CORA).

Este PTL se estructura en cuatro ejes principales:

  • Eje I: Apoyo al desarrollo de infraestructuras lingüísticas
  • Eje II: Impulso de la Industria de las Tecnologías del Lenguaje
  • Eje III: La Administración Pública como impulsor de la Industria del Lenguaje
  • Eje IV: Proyectos faro de tecnologías de procesamiento de lenguaje natural.

Puedes descargarlo aquí.

ITELLIGENT, pionera en España  en Procesamiento del Lenguaje Natural

Con más de diez años de experiencia, ITELLIGENT ha sido pionera en aplicaciones de técnicas de Procesamiento de Lenguaje Natural para diversos clientes y proyectos, tanto nacionales como internacionales. Asimismo, nos hemos especializado en el desarrollo de tecnologías encaminadas a la estructuración de Big Data y el desarrollo de soluciones que permitan a las organizaciones una ventaja competitiva gracias a la «inteligencia» que el análisis de estos grandes volúmenes de datos les aporta.

¿Quieres saber más sobre nuestros proyectos?