Text Analytics en un entorno dinámico

Juan Pablo Moraga Leigh
LEMONPOT

--

En plena era del Big Data, la comunicación escrita o por voz, entre los usuarios y empresas sigue manteniendo la misma clásica estructura. Emisor, receptor y mensaje. El problema se genera en los flujos, que crecen exponencialmente. Tanto por que los costos de transferencia son prácticamente nulos para los usuarios (ej.: para enviar un tweet no se necesita más que estar dispuesto a hacerlo), como porque estos nos acostumbramos a exigir una comunicación fluida con los servicios que contratamos. Estos dos factores conllevan, primero a que no dudemos en dar nuestra opinión sobre un producto o servicio y segundo a que las empresas abran cada vez más vías de recepción.

Pero basta una pequeña vuelta por el mercado para darse cuenta que a pesar de grandes esfuerzos, son pocas las compañías que logran responder de manera satisfactoria y menos aún las que logran hacer sentido de la información que reciben.

¿Cuál es la mejor manera de abordar este problema? ¿La respuesta fácil? Algoritmos de clasificación de texto (en el caso de la comunicación por voz primero pasando por speech recognition).

Clasificación de Texto:

La clasificación de texto es el proceso de definir un número de categorías y crear un sistema que asigne a estas los textos (comentarios, mails, reclamos, etc.). Además, es una de las principales técnicas utilizadas por las empresas para, responder oportunamente y tener una mirada global de la información que reciben.

Una vez asignadas las categorías uno puede comenzar a cuantificar los resultados y visualizar datos.

¿Pero cómo lo hacemos? Ahondando un poco en el tema uno encuentra tres maneras de abordar este problema: Machine learning, un sistema de reglas y manualmente.

  • Machine learning: Consiste en construir un algoritmo que emule la asignación de los textos a las categorías definidas que haría un humano. Primero se selecciona una muestra de los textos y se les asigna manualmente una categoría. Luego se entrena un algoritmo con la finalidad de que decida y categorice el resto. Como resultado tenemos un sistema automático de clasificación. Pero esta vía por si sola tiene un inconveniente:
    La cantidad de categorías: Desde el punto de vista matemático. El desempeño del modelo baja en la medida que aumenta la cantidad de categorías (manteniendo la misma cantidad de data). Esto pasa porque al aumentar las categorías, el modelo necesita una mayor cantidad de textos para decidir a que categoría asignar.
    La respuesta clásica ante esta problemática según mi experiencia es disminuir la cantidad de categorías. Forzar esto es evidentemente una perdida de información. ¿A qué costo? ¡No sé! Pero podría ser muy alto.

Mi recomendación es sacar el máximo provecho de estos modelos y siempre tener un benchmark de dos o tres actuando al unísono. Y no descansar en que “la máquina ya aprendió” si es que no le enseñas las cosas que a ti te parecen relevantes.

  • Sistema de reglas: Consiste en establecer un cierto número de reglas dependiendo de las palabras que contenga el texto. El ejemplo más común es hacer una lista de garabatos o palabras que desmedren a la marca en cuestión y clasificarlos negativamente. ¡Pero se pueden hacer cosas bastante más potentes!
    Combinando la lógica con cierta habilidad lingüística y conocimiento del negocio un buen analista puede lograr maravillas.

Este escenario, uno puede definir todas las categorías que se le dé la gana. Pero pierde mucho. Pierdes todo lo que las reglas no vieron.

Este método atesora las principales reglas de negocio. Esas que uno como consultor nunca va a entender del todo. Por lo que creo que es imprescindible, pero debe estar acompañado de un modelo más robusto.

Manual: ¡A la antigua! Personas clasificando los textos uno por uno. Es por lejos lo más natural, lo que uno hace con sus correos y mensajes. Pero al ser más de una persona la que clasifica habrá diferencias. Y en organizaciones grandes, ¿cómo dar una respuesta ‘corporativa’ y controlar que efectivamente ocurra? Ni hablemos de los costos.

Quizás para algunos no va con los tiempos. Pero yo pienso que esta es la manera más efectiva de clasificar un texto, e-mail, reclamo o comentario. Ahora bien, claramente no está a la altura de los flujos de información en la actualidad.

Muchos emisores, pocos receptores y millones de mensajes.

En este escenario, carecer de un sistema de clasificación deja a la empresa con una severa miopía con respecto a lo que le están comunicando. Y peor aún, totalmente desprotegida ante peligrosos sesgos creados por los pocos mensajes que uno pueda leer al pasar. El resultado de esto es uno solo: Tomar malas decisiones.

La mejor manera de solucionar esto es combinar adecuadamente los tres elementos explicados anteriormente. Primero, la capacidad de procesar grandes cantidades de data en tiempo real y emulando un comportamiento humano (Machine Learning). En segundo lugar, el conocimiento del negocio y sus variantes más relevantes (Sistema de Reglas). Y finalmente, el siempre bien ponderado criterio humano a través de el análisis y clasificación manual de algunas muestras.

--

--