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.
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:
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.
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.
Knowledge Discovery in Database
Data Mining (minería de datos) es también conocida como Knowledge Discovery in database (KDD). Es comúnmente definida como el proceso para descubrir patrones útiles o conocimientos a partir de fuentes de datos tales como Bases de Datos, textos, imágenes, la web, etc. Los patrones deben ser válidos, potencialmente útiles y entendibles. La minería de datos es un campo multidisciplinar que incluye: aprendizaje automático, estadísticas, sistemas de base de datos, inteligencia artificial, Information Retrieval, visualización de la información, … El objetivo general del proceso de minería de datos consiste en extraer información de un conjunto de datos y transformarla en una estructura comprensible para su uso posterior. Existen muchas técnica dentro de data mining. Existen muchas tareas de data mining. Algunos de los más comunes consisten en el aprendizaje supervisado, aprendizaje no supervisado, minería de asociación de reglas y minería de secuencia (1).
En resumen, la minería de datos es el conjunto de técnicas y tecnologías que permiten explorar grandes bases de datos, de manera automática o semiautomática, con el objetivo de encontrar patrones repetitivos, tendencias o reglas que expliquen el comportamiento de los datos en un determinado contexto.
10 VENTAJAS DEL USO DE MINERÍA DE DATOS
Sin embargo, también existen pequeños inconvenientes en el uso de técnicas de minería de datos, tales como:
¿Quieres saber más sobre Data Mining o Minería Web?
Te recomendamos que eches un vistazo a estas dos publicaciones en nuestro blog:
O también, puedes leer este libro, como parte de la bibliografía consultada para este post: (1) LIU, BING (2007): WEB DATA MINING Exploring Hyperlinks, contents and usage data. Berlín: Ed. Springer Science & Business Media.