“El análisis automático de grandes volúmenes de textos abre una nueva ventana para estudiar temas de las ciencias sociales”
Edgar Altszyler es doctor en Física de la Universidad de Buenos Aires y Licenciado y Magíster en Física del Instituto Balseiro. Actualmente, es becario postdoctoral en el Laboratorio de Inteligencia Artificial Aplicada (LIAA) de Exactas-UBA. Sus investigaciones se centran en la aplicación de técnicas de minería de textos y aprendizaje automático para el estudio del comportamiento social y cultural, la psicología y la salud mental. Recientemente se incorporó como profesor de la Maestría en Data Mining-UBA y también trabaja como consultor de ciencia de datos para la Fundación Sadosky.
En esta entrevista con el Blog Predictivos, Edgar nos cuenta qué valor agregado considera que aporta un posgrado a quienes estén interesados en formarse en ciencia de datos, qué se investiga en el área de procesamiento de textos y cuáles son los grandes desafíos en los que está trabajando actualmente.
¿Qué importancia creés que tiene la Maestría en Data Mining para generar una nueva camada de profesionales en ciencia de datos?
La ciencia de datos es un área que está en un crecimiento exponencial y es muy atractiva. Todos los temas alrededor como Big Data e Inteligencia Artificial y las nuevas herramientas que están apareciendo -que a veces parecen de ciencia ficción- confluyen en que haya muchísimas personas interesadas en aprender estas técnicas.
Ese interés es fácilmente canalizable a través de espacios en los que uno puede aprender de manera autoadministrada, por ejemplo los cursos de Coursera. Está al alcance de la mano pero hay una limitación que tiene que ver con las bases estadísticas y de conocimiento formal que uno necesita para desempeñarse profesionalmente. Por este motivo creo que el posgrado provee una base sólida que quizás con algunos cursos cortos no se van a poder alcanzar. Un ejemplo, uno puede bajarse de internet un Tutorial para hacer un clasificador de redes neuronales en 5 líneas de código en Python. Ahora bien, ¿cómo se puede saber qué líneas usar exactamente para tu problema a resolver? Es algo que requiere un entendimiento más profundo.
¿Podrías contarme sobre el aporte puntual de la Minería de Textos, que en particular es el nombre de la materia que dictás?
La Minería de Textos o comúnmente Procesamiento del Lenguaje Natural, es la manera de desarrollar un análisis cuantitativo a partir de texto concreto. Para ello usamos todo el bagaje de la ciencia de datos, como técnicas estadísticas, redes neuronales, clustering y predicciones.
Hay una gran variedad de métodos, desde capturar partes de palabras o frases del texto, a partir de las reglas de qué letras las componen hasta herramientas que permiten detectar tópicos comunes, de qué habla un corpus de textos, es decir, una colección de varios documentos. Uno puede usar estos métodos para estudiar de qué habla la Wikipedia, un diario online o un grupo de usuarios de las redes sociales, entre otros ejemplos. También existen nuevas herramientas que nos permiten cuantificar qué tan cerca están las palabras entre sí según un conjunto determinado de textos.
¿Cómo sería esa cuantificación?
Por ejemplo, si yo te pido que ubiques el número 25 entre el 0 y el 100, todos coincidiremos en que es el cuarto de la recta. Ahora, si te pido que ubiques a la palabra “bote” entre el “mar” y la “licuadora”, no es tan obvio ubicar numéricamente cómo las palabras se relacionan entre sí. Por lo pronto, estamos de acuerdo en que el concepto de mar está más cerca del concepto de bote que el de una licuadora. Lo que se estudia es si las palabras están relacionadas entre sí, algo que se denomina “similaridad semántica”: qué tan cercanas están las palabras entre sí según su significado.
Esto se suele hacer en forma automática. En uno de los trabajos del Laboratorio de Inteligencia Artificial Aplicada (LIAA), desarrollados con un psicólogo y un investigador del área de neurociencia, usamos herramientas que nos permiten cuantificar cómo se asocian las palabras entre sí para testear una hipótesis de teoría de sueños. Teníamos una colección de más de 20 mil textos de sueños escritos, donde la gente se levantaba a la mañana y describía en un texto qué soñaba. Lo que queríamos atacar es una teoría que dice que uno de los motivos de soñar es aprovechar esta realidad virtual para entrenarnos sobre cómo enfrentar situaciones de amenaza. En la vida real si te enfrentás con un león, vas a tener pocas chances de entrenarte para eso. Pero en un sueño podés entrenarte muchas veces, si es un sueño reiterado. Con estas herramientas le preguntábamos a los textos de los sueños, qué soñaban los individuos cuando corrían y encontramos que se escapaban de situaciones de peligro.
Pero si buscamos un texto de internet o de un libro, uno corre en situaciones deportivas por ejemplo. De esa manera pudimos testear esta teoría. Le preguntamos a la herramienta, cuáles son las palabras más asociadas al verbo “correr”, tanto en los textos de sueños como en los textos donde uno está despierto.
¿Y estás trabajando también en temas de datos para el área de la salud?
El año pasado trabajamos en un proyecto de Triage Automático (clasificación según gravedad) de mensajes en foros y redes sociales. Esto surgió a partir de una competencia internacional. El caso era de una red social de salud mental en Australia, un espacio donde distintos jóvenes pueden charlar sobre las situaciones que le suceden, relacionados con problemas psicológicos y/o emocionales. Los moderadores de la red leen permanentemente los mensajes y, en función de ello, brindan asesoramiento. Lo que sucedió es que había tantos mensajes que los moderadores no daban abasto para leerlos todos. Entonces se contactaron con un grupo de investigadores que desarrollaron esta competencia en el marco de uno de los congresos más relevantes del área de psiquiatría computacional. El propósito era armar un sistema de aprendizaje automático que pudiera detectar el grado de urgencia que tenía cada mensaje.
Los organizadores nos invitaron a participar de la competencia en Estados Unidos, donde había otros equipos. Y nos fue muy bien, ya que de las 4 tareas en 3 obtuvimos el primer puesto y en la otra tarea obtuvimos el segundo puesto. Estos resultados los presentamos en un workshop de Lingüística Computacional y Psicología Clínica en New Orleans. El paper publicado junto a otros autores es: “Using contextual information for automatic triage of posts in a peer-support forum” (Proceedings of the Fifth Workshop on Computational Linguistics and Clinical Psychology: From Keyboard to Clinic).
¿Qué técnicas utilizaron para procesar los mensajes?
De toda la red teníamos mil ejemplos de mensajes ya clasificados manualmente por expertos según la gravedad de cada caso: de los más críticos, de los que eran situaciones intermedias y de los que no requerían atención. A partir de estos mensajes ya anotados manualmente por los expertos, las herramientas de aprendizaje automático aprenden los patrones o elementos característicos que sirven para poder clasificar e identificar los distintos grupos de mensajes. Así cuando llega un nuevo mensaje, ya automáticamente se puede hacer el triage.
Para este proyecto utilizamos software libre como Python, que cuenta con paquetes específicos de aprendizaje automático, pero la parte de creatividad del trabajo es saber elegir qué elementos extraer de los textos, teniendo en cuenta aquellos que serán útiles para clasificar. Por ello requiere un trabajo de programación manual de la herramienta.
Por último, ¿cuáles son las oportunidades más importantes que estás viendo en el procesamiento de textos?
En el área de Procesamiento del Lenguaje Natural hoy contamos con grandes volúmenes de texto que antes eran inimaginables como acceder a una Wikipedia, un diario o revista o una red social entera por ejemplo. Esto abre una nueva ventana a estudiar especialmente ciertos elementos de la sociología, que quizás antes se hacían 100% manualmente. Personalmente me atrae mucho el estudio y uso de estas herramientas en colaboración con profesionales de las ciencias sociales.
Un físico de los datos textuales
Edgar Altszyler tiene 33 años y se graduó en el Instituto Balseiro a los 24 años. Trabajaba en Física Atómica pero reconoce que siempre en su carrera le gustó la Estadística aplicada a temas interdisciplinarios: “Hice un doctorado en la UBA en temas de biología computacional y en la mitad de mi doctorado fui a una charla anual de la Maestría en Data Mining y quedé fascinado con el Procesamiento del Lenguaje Natural. Desde ese momento empecé a leer e investigar por mi cuenta, por eso desde el posdoctorado finalmente me inserté en el Laboratorio en este área”.
Ante la pregunta sobre cómo le sirvió la física para estudiar estos problemas, responde “Para mí la física es el modelado de la naturaleza a través de la matemática. Es justamente este background que nos permite pensar estos problemas de modelado matemático más fácilmente y que se complementa con cualquier otra formación”.
Hola Artículo muy interesante. El objeto del estudio de la sociología es la sociedad. Este objeto principal de la sociología actúa como una realidad objetivamente existente, independiente del investigador. La sociedad es vista como una comunidad grande, estable y históricamente establecida de personas conectadas por un vínculo diverso, cuya apariencia está determinada principalmente por la totalidad de las relaciones entre individuos y grupos. Obviamente, con este enfoque, la atención se enfoca, ante todo, en las conexiones entre las personas que conforman una sociedad determinada. No puede representarse como un conjunto simple de individuos, unidos sobre una base territorial, es decir, viviendo en el mismo territorio, la sociedad también une una cultura común, la historia, los objetivos comunes, el deseo de autoconservación. Buena suerte!
Gracias! Saludos
Hola Artículo muy interesante. El objeto del estudio de la sociología es la sociedad. Este objeto principal de la sociología actúa como una realidad objetivamente existente, independiente del investigador.