Inicio Facebook

Business Intelligence desde datos No Estructurados

El sábado 19 de Noviembre participé en el SQL Saturday 558 - Business Intelligence Edition en Costa Rica.

Expuse a IBM Watson y como, lejos de ser competencia, puede completar un proceso de Business Intelligence de los modelos de datos estructurados actuales.

El objetivo era exponer como Watson puede funcionar como interprete y luego esa información estructurada resultante, puede ser aprovechada por un BI, por ejemplo en SQL Server.

Watson comprende el lenguaje, y desde ese lenguaje extrae diversa información importante.

Un texto dice mucho más que solo las palabras que contiene.

*Actualmente Watson está siendo portado a Español y por esto algunas características están aún en proceso para funcionar 100% en español. ¿Quieres usar alguna puntual? Puedo ayudarte, solo escríbeme en los comentarios.

Para la demostración que realicé, utilicé el servicio de Watson llamado Alchemy y demostré como un chat en un Centro de Atención puede ser la clave para conocer quienes son los mejores agentes, cuales son las personalidades que mejor tienden a atender clientes e inclusive como mejorar el rendimiento de todo el centro solo explotando la información "oscura" que anteriormente se ignoraba.

Tome este ejemplo:

Tradicionalmente este tipo de información es almacenada y nunca procesada. En algunos casos se extraen palabras claves y se verifica si al final la conversación fue calificada como positiva por un sistema de evaluación tradicional.

Sin embargo ya sabemos que estos modelos de evaluación tradicional tienen sus limitantes.

¿Qué tal si pudiésemos crear un servicio en Bluemix (la nube pública de IBM) de Alchemy Language y a través de un simple llamado web, extraer el sentimiento de un texto?

Referencia técnica de Alchemy Language

Contar con algo como esto:

La columna "Sentimiento" es el valor retornado por el API de Alchemy Language - Sentiment.
El mismo evalúa un texto y retorna el sentimiento que ese texto maneja.

En este caso, para la demostración realicé solicitudes web por CURL y copié manualmente cada valor en cada fila. Pero esto debe ser automatizado por una rutina de programación simple.

Una vez que se tienen estos valores, en este caso el rango es desde -1 hasta 1, es decir de 0 a -1 es negativo y de 0 a 1 es positivo, así como 0 es neutro. Para poder diagramar esto fácilmente solamente se requiere normalizar el valor. Una simple formula de normalización lo logra:

f(x) = (x-Min)/(Max-Min)

Con ese valor en términos de porcentaje podemos contar con algo así:

De este gráfico descubrimos que el cliente llegó con un sentimiento severamente negativo, sin embargo a como concurrió la conversación, el sentimiento de sus mensajes mejoró. Esto se dio porque en el chat, el mensaje número 8 fue cuando el agente le resolvió al cliente.

¿Qué tal si todo el call center contara con esta información?

Un siguiente paso podría ser: IBM Watson puede hacer análisis de personalidad desde texto. Así que si se suma la tendencia de convertir clientes "con sentimiento negativo" a clientes "felices" y lo cruzamos contra los personality traits que Watson también puede extraer; contamos con el insight necesario para saber cuales son las características de personalidad que mejor funcionan para el call center.

¿Qué no se podría usar mezclando las herramientas correctas? ¡Cualquier duda que pueda aclarar queda abierta la sección de comentarios!

Walter Montes

Read more posts by this author.

San José, Costa Rica

Please Donate To Bitcoin Address: [[address]]

Donation of [[value]] BTC Received. Thank You.
[[error]]