Definición de un framework para el análisis predictivo de datos no estructurados

  1. Jiménez Márquez, José Luis
Dirigida por:
  1. Israel González Carrasco Director/a
  2. José Luis López Cuadrado Codirector/a

Universidad de defensa: Universidad Carlos III de Madrid

Fecha de defensa: 15 de marzo de 2019

Tribunal:
  1. Alejandro Calderón Mateos Presidente/a
  2. Alejandro Rodríguez González Secretario/a
  3. Marion Graf Vocal

Tipo: Tesis

Resumen

El volumen de información que se genera segundo a segundo en Internet aumenta en volumen y variedad cada día. La web 2.0, el Internet de las cosas y los dispositivos móviles son tan sólo algunos de los elementos que han generado tal incremento en el volumen de los datos. En el futuro cercano, la introducción de la tecnología 5G propiciará un incremento exponencial en la generación de datos al permitir una mayor transferencia de estos. Por lo anterior, la investigación en esta área debe establecer las pautas que guíen el camino mediante el cual se puedan establecer metodologías para el análisis de los datos, así como medios para tratarlos. No obstante, el tamaño y la diversidad de estos datos hacen que tengan que conjuntarse diversas disciplinas científicas para poder analizar la información y obtener hallazgos relevantes dentro de esta. Es decir, que no sólo se aplicarán las técnicas tradicionales para realizar el análisis de la información, sino que se tendrán que conjuntar otras áreas científicas para poder extraer la denominada ‘información oculta’ que se encuentra en los datos. Por otra parte, dentro de esta disponibilidad de datos que se está generando, la web 2.0 contribuye con el paradigma de las redes sociales y los datos no estructurados que se generan, que comúnmente consisten de texto libre. Este texto libre puede venir asociado a otros elementos en los datos dependiendo de la fuente de donde procedan, por ejemplo, pueden estar asociados a una escala de valoración de algún producto o servicio. Por lo anterior, esta tesis plantea la definición de un framework que permita el análisis de datos no estructurados de redes sociales mediante técnicas de aprendizaje automático, Procesamiento de Lenguaje Natural y Big Data. Las características del framework son: - Está dividido en dos fases, cada una de las cuáles consta de un conjunto de etapas definidas con el propósito de analizar un volumen de datos ya sea pequeño o grande. - El elemento central de la fase uno del framework es la fase de aprendizaje automático la cual consiste de dos elementos: (i) una serie de técnicas de Procesamiento de Lenguaje Natural orientadas al preprocesamiento de datos y (ii) un conjunto de algoritmos de aprendizaje automático para la clasificación de textos. - El modelo de aprendizaje automático construido en la primera fase tiene como intención el poder ser empleado en la segunda para analizar el mismo origen de datos, pero a un mayor volumen. - La fase de aprendizaje automático no está relacionada directamente con la aplicación de determinados algoritmos para su uso, lo que lo convierte en un framework versátil para emplearse en otros ámbitos. El marco en que se desenvuelve esta investigación es multidisciplinar al conjuntar diversas disciplinas científicas con un mismo propósito. Por lo cual, el resolver el problema de análisis de datos no estructurados provenientes de redes sociales requiere de la unión de técnicas heterogéneas. La metodología de investigación seguida para la elaboración de esta tesis doctoral ha consistido en: 1) Estado del Arte: Se presenta una selección de estudios que otros autores han realizado al respecto en las áreas de Big Data, Aprendizaje Automático (Machine Learning) y Procesamiento de Lenguaje Natural. 2) Estado de la Técnica: En esta fase se analizaron los diversos elementos técnicos que componen el framework y a partir de esto se presenta una retrospectiva teórica al respecto. 3) Solución Propuesta: En esta fase se presenta el framework propuesto analizándolo desde dos perspectivas: los aspectos teóricos que comprende cada fase y los aspectos de implementación. 4) Evaluación y Validación: Se definen una serie de pruebas destinadas a comprobar las hipótesis establecidas al principio de la investigación, para demostrar la validez del modelo propuesto. 5) Conclusiones: Se presentan las conclusiones que surgen al término de la investigación así como los trabajos a realizar en la investigación futura. Por lo que se construyó un framework que contempla dos fases a través de las cuáles se realiza el análisis de un conjunto de datos no estructurados, siendo una distinción de este framework la construcción de un modelo de aprendizaje automático durante la primera fase, que pretende servir como base en la segunda, la cual se caracteriza por el procesamiento de datos de gran volumen. Para poder validar los resultados de esta tesis se emplearon datos de Yelp, concretamente del sector de la hotelería. También se evaluó el framework mediante la ejecución de pruebas empleando diversos clasificadores de aprendizaje automático. El framework está relacionado con diversas áreas que, aunque pudiera pensarse que no están relacionadas, en el Estado del Arte se reafirma que las áreas se encuentran vinculadas, y que es necesario el seguir desarrollando investigación sobre estas áreas temáticas ya que el estado de la técnica avanza vertiginosamente y deben existir modelos en la ciencia que aporten a este conocimiento. En el Estado del Arte se presentan una serie de estudios realizados sobre las áreas de Big Data, Machine Learning y Procesamiento de Lenguaje Natural para acercar al lector en la investigación que se ha hecho sobre las áreas, además de hacer una integración de todos los temas para poder ser vistos como un único modelo. Aunque el Big Data sigue siendo considerado por algunos expertos de la industria como una moda temporal, se puede afirmar que éste abre un nuevo horizonte a los académicos y profesionales para los desarrollos tecnológicos del mañana. Debido a que esta tesis doctoral abarca diferentes áreas de investigación que se relacionan con las disciplinas de Machine Learning, Big Data y Procesamiento de Lenguaje Natural, se presenta en este trabajo una visión transversal de las principales técnicas existentes para poder aportar un perspectiva que abarque los diversos ámbitos que forman parte de esta tesis doctoral. En el Estado de la Técnica se abarcan temas como: la inteligencia artificial, la preparación del corpus, Cloud Computing o la visualización de datos. Se tocan temas también como las generalidades de la inteligencia artificial y el Machine Learning para conocer sus similitudes, pero también para establecer sus diferencias. En lo referente a los algoritmos de Machine Learning empleados en el modelo, se presentan sus generalidades, y se discuten temas como: los tipos de aprendizaje, las fases de entrenamiento y prueba o las métricas de evaluación. El Estado de la Técnica también aborda temas como: Procesamiento del Lenguaje Natural, recuperación de información, preparación de datos y estructura y modelado de los datos, los cuáles se enmarcan en la primera fase del framework propuesto. Mientras que para la segunda fase, la cual involucra técnicas de Big Data se presentan temas como: los sistemas Big Data, los clúster Big Data, Machine Learning en Big Data y visualización de datos. El estudio de datos de medios sociales es un área en constante evolución debido al potencial económico que grandes empresas tecnológicas están encontrando en el valor oculto de la información. Para poder realizar investigación en esta área se deben integrar diversas disciplinas que logren los objetivos planteados, por lo que es primordial integrar técnicas de Machine Learning en este tipo de estudios ya que este realiza el análisis de los datos. Para llegar a la etapa de análisis de datos es necesario haber pasado por un conjunto de etapas previas que se encarguen desde la recolección y obtención de los datos hasta la limpieza y preparación de estos. En el documento se exponen una serie de técnicas para realizar el proceso de limpieza y preparación de datos. En la etapa del PLN se exponen una serie de técnicas relacionadas con la preparación del texto para su posterior análisis. Algunas de estas técnicas se llevan a cabo en la etapa de lectura de la información como: Stop Words o tokenización. Mientras que para generar el modelo de espacio vectorial se aplican las técnicas de N-gramas y stemming. En la solución propuesta se presentan las diversas etapas que componen el framework justificando cada una de estas desde una perspectiva teórica para comprender su importancia y, en su caso, los trabajos relacionados en el estado del arte. En cada apartado se habla de la forma de llevar a cabo la implementación de los conceptos que fueron indicados de forma teórica, pero aplicados a un dominio concreto. Esto da como resultado que se pueda evaluar la calidad del framework para validar las hipótesis de partida. Por otra parte se subraya que los elementos que componen la primera fase dan soporte a la segunda dado que en aquella se realiza el estudio exploratorio inicial sobre el estado de los datos. En lo que respecta a los ambientes de desarrollo empleados, en la primera fase se emplea Python y Scikit-learn; mientras que en la segunda fase se utilizó Spark y en concreto las librerías de PySpark ML. Los aspectos más relevantes del framework son: 1) es un modelo de dos fases: la primera se centra principalmente en preparar los datos y encontrar el Modelo de Machine Learning más adecuado para analizar los datos; la segunda se refiere a la creación de una infraestructura de Big Data capaz de realizar tareas de análisis y visualización de datos; 2) las etapas en la primera fase se han reducido para obtener resultados en el menor tiempo posible al reducir la complejidad, lo que permite incluir nuevos dominios y algoritmos de Machine Learning; y 3) la fase de Machine Learning no está relacionada con determinados algoritmos de Machine Learning, lo cual aumenta la flexibilidad de utilizar el framework. Las etapas de la primera fase son: 1) Recuperación de Información, 2) Preparación de datos, 3) Estructura y Modelado, Modelo de Aprendizaje Automático: 4) Procesamiento de Lenguaje Natural y 5) Aprendizaje Automático. Las etapas de la segunda fase son: 1) Sistema de Archivos Distribuido, 2) Administrador de Recursos del Clúster, 3) Acceso a Datos, Análisis de Datos: 4) Procesamiento de Lenguaje Natural y 5) Aprendizaje Automático, 6) Visualización. La primera fase se lleva a cabo en un entorno no Big Data y, a diferencia de otros modelos, se resalta que se debe crear un modelo conceptual antes de llevar a cabo el análisis. Los clasificadores utilizados en esta etapa para las pruebas son: Perceptrón multicapa, Clasificador de vectores de soporte C, Regresión logística, Clasificador lineal de vectores de soporte, Clasificador lineal con entrenamiento de Gradiente estocástico y Multinomial Naïve Bayes. Mientras que los clasificadores utilizados para las pruebas en la segunda etapa fueron: Perceptrón multicapa, Regresión logística, Clasificador lineal de vectores de soporte y Naïve Bayes Multinomial. En lo que respecta al Clasificador de vectores de soporte C y el Clasificador lineal con entrenamiento de Gradiente estocástico, estos no se emplearon durante las pruebas como se detalla en el documento. La evaluación y validación del framework se realizó mediante la comparación de los resultados obtenidos al final de la primera fase contra aquellos obtenidos al final de la segunda. De igual manera se compara el rendimiento obtenido en ambas fases contra los conseguidos en otros trabajos similares del estado del arte. Como lo establece el framework, se siguió una serie de etapas divididas en dos fases para el análisis de datos de pequeño y gran volumen. El Modelo de Machine Learning construido en la primera fase mediante el empleo de diversos clasificadores tiene la intención de servir como base para el análisis que se lleva a cabo en el entorno Big Data de la segunda fase. Esta suposición se fundamenta en el hecho de que las dos fases comparten el mismo propósito: analizar un conjunto de datos no estructurados en entornos tecnológicos distintos. El framework no está vinculado a un proveedor, metodología o algoritmo de Machine Learning específicos, lo cual es su característica más distintiva con respecto a otros modelos existentes que analizan datos de pequeño o gran volumen. Por otra parte, se observó que no todos los métodos aplicados en la fase del entorno no Big Data pueden ser directamente escalables a las técnicas de análisis del entorno Big Data, dado que no existe una correspondencia total de los algoritmos de Machine Learning, así como de sus implementaciones internas. Las hipótesis que se formularon al inicio de la investigación han sido validadas en la investigación como se plantea a continuación. La primera de las hipótesis planteadas afirmaba que en el framework propuesto se podrían aplicar diversos indicadores de estudio independientemente del volumen de datos a analizar. Esta hipótesis se ha validado al presentar los resultados del porcentaje de acierto de predicción obtenidos por los diversos clasificadores, pues fueron obtenidos empleando diversas métricas. Para el entorno no Big Data las métricas fueron las siguientes: promedio de exactitud en la predicción, mínimo de exactitud, máximo de exactitud, tiempo en segundos de la prueba y el promedio del error cuadrático medio. Mientras que el entorno Big Data las métricas empleadas fueron las siguientes: promedio de exactitud en la predicción, tiempo en segundos de la prueba y el error cuadrático medio La segunda hipótesis planteaba que las técnicas de análisis de aprendizaje automático propuestas por el framework detectan patrones que permiten establecer predicciones sobre los datos de cualquier volumen. Esta hipótesis se ha validado presentando los resultados de la clasificación binaria, donde las técnicas de análisis permitieron obtener los patrones que identifican a una crítica como positiva o negativa, empleando técnicas que pueden ser empleadas tanto en volúmenes reducidos como grandes de datos. En la Fase 1 el clasificador con el mejor promedio es el Perceptrón multicapa, mientras que Multinomial Naïve Bayes es el que registró el menor tiempo de clasificación para ambas fases. Por su parte, en la Fase 2 se tiene que el Clasificador lineal de vectores de soporte es el que registra el mejor promedio de predicción de las dos fases, mientras que Multinomial Naïve Bayes es el que efectúa esta tarea en el menor tiempo. En ambas fases el Perceptrón multicapa es el que registra el mayor tiempo de ejecución para completar la tarea predictiva, mientras que Multinomial Naïve Bayes es el que lo realiza en el menor tiempo, tomando como base de comparación el rendimiento dentro de su propio entorno. La tercera hipótesis suponía que los Modelo de Machine Learning definidos en un entorno no Big Data pueden aplicarse en un entorno de Grandes Volúmenes de Datos no Estructurados para realizar el mismo análisis sobre los datos. Esta hipótesis se ha validado al presentar un conjunto de algoritmos de Machine Learning que en un principio fueron aplicados en la primera fase, y posteriormente pudieron ser aplicados en la segunda para analizar la información. Con estas hipótesis se ha comprobado la capacidad del framework planteado al principio de la investigación para poder establecer predicciones basadas en el análisis y la comparación de datos cualitativos contra cuantitativos en dos entornos tecnológicos que se diferencian por el volumen de datos que se puede procesar en cada uno. Los principales resultados y contribuciones de la tesis se enlistan a continuación: 1. Se cuenta con un marco de referencia, así como un framework teórico que permite organizar un conjunto de etapas que tienen como fin común el análisis de información no estructurada, primordialmente textual o en lenguaje natural. 2. Aunque en el estado del arte existen modelos que realizan funciones parecidas a las presentadas en esta investigación, estos por lo general están ligados a ciertas técnicas para resolver un problema específico. Por lo cual se afirma que el framework es novedoso en función de que las técnicas a utilizar para resolver los problemas de análisis de la información quedan abiertas dado que las técnicas propuestas pueden ser sustituidas con el fin de mejorar los resultados. 3. En el framework se propone efectuar el análisis de los datos en dos fases, de tal manera que al realizar un proyecto de investigación que involucre decidir el establecer o contratar una arquitectura Big Data, se pueda llevar a cabo dicho análisis previamente en un entorno no Big Data. Una vez que se hayan obtenido resultados intermedios, se puede llevar el Modelo de Machine Learning al entorno Big Data. Esto además representa la ventaja de que se podrá comprobar si el análisis de los datos requiere técnicas propias de Big Data en función del volumen de estos y las capacidades de hardware que sean requeridas. 4. El framework es libre de dominio en el sentido de que el análisis que se realizó en el Modelo de Machine Learning puede ser aplicado a dominios que compartan las características de la información analizada (cualitativa y cuantitativa), variando algunos elementos durante el preprocesamiento del texto y ajustando el entrenamiento de los algoritmos de Machine Learning.