Categorización de contenido extraído de audio con IA

Identificar la temática de una conversación grabada es muy interesante de cara a realizar un almacenamiento ordenado de los mismos y automatizar flujos que permitan tratar diferentes tipos de conversaciones de diferente modo. No es lo mismo una llamada realizada para contratar un servicio que una recibida para emitir una queja o reclamación.  En este post vamos a comentar las técnicas que a día de hoy se están utilizando para el análisis de contenido en conversaciones o textos.

Estudio técnico del problema

En 2017 se desarrolló un método para la clasificación de texto en el cual la representación de las palabras se realiza mediante un modelo pre-entrenado de Google. A continuación, se utilizan 5 redes convolucionales de manera paralela para la extracción de las características. Los resultados producidos son combinados y se aplica BatchNormalization junto con algunas capas densas. Finalmente, se utiliza un modelo SVM para realizar la clasificación [1].

En 2019, se definió un método de clasificación de textos cortos basado en el uso de dos algoritmos conocidos como son Word2Vec y TF- IDF. Ambos métodos se utilizan para extraer características del texto y posteriormente se le pasan esas características a un SVM lineal que es capaz de identificar la categoría del texto [2].

En 2019 se creó un método para clasificar textos basado en redes neuronales artificiales. Utiliza tres arquitectura de redes diferentes. La primera de ellas es BERT, una arquitectura diseñada por Google que permite codificar textos utilizando capas de atención. Una vez que se han extraído las características con BERT, se introducen en una red neuronal convolucional y en una red BiLSTM para extraer las características que se utilizarán para identificar la categoría del texto [10].

Análisis para la extracción de metadatos

A parte de analizar el contenido de los audios, hay otros factores que nos pueden indicar cuál ha sido el tema tratado en la conversación. A partir de la extracción de metadatos de las conversaciones, se puede realizar un análisis que ayude a la clasificación de éstas en función de su temática.

Algunos de los metadatos que pueden resultar de interés son:

  • Duración de la llamada.
  • Hora en la que se produjo la llamada.
  • Lugar desde el que se realizó la llamada.
  • Perfil de las personas involucradas en la conversación.

Análisis para la extracción de contenido y correlación con los metadatos

Para poder realizar el análisis y extracción del contenido de una conversación es estrictamente necesario que este se encuentre en un formato que pueda ser ingerido por los modelos desarrollados. Puesto que, por lo general, estos modelos no son capaces de tratar con texto, si no que requieren una entrada numérica, es necesario realizar una representación del lenguaje. Existen diversos métodos que realizan esta tarea. A continuación se van a describir brevemente los principales:

  • TF-IDF (term frequency-inverse document frequency): es uno de los métodos más utilizados para la representación del texto. Representa una medida estadística que evalúa como de relevante es una palabra en un documento dentro de una colección de documentos. Se calcula mediante la multiplicación de dos métricas: Frecuencia del término (Term frecuency, frecuencia con la que una palabra determinada aparece en un documento) y frecuencia inversa de documento (Inverse document frecuency, indica lo común o, por el contrario, extraña o rara que es una palabra en el total de documentos a evaluar). El resultado de esta multiplicación genera una representación numérica de los textos que forman el conjunto de datos.
  • Word2vec: consiste en una red neuronal de dos capas que ha sido entrenada para reconstruir el contexto lingüístico de las palabras. Recibe como entrada un gran corpus de palabras y produce un espacio vectorial, generalmente con cientos de dimensiones, en el que cada palabra tiene asignada un vector. Los vectores de las palabras están posicionados en el espacio vectorial de manera que aquellas palabras que tienen un contexto similar se encuentren próximas en él. El objetivo de word2vec es obtener una representación numérica de un texto de modo que este pueda ser procesado por una red neuronal u otro algoritmo. 

Es importante destacar que algunos de los modelos más complejos propuestos recientemente requieren un proceso específico para la representación del lenguaje, como es el caso de BERT.

La representación del lenguaje realizada se puede combinar con los metadatos extraídos de la llamada con el objetivo de buscar una correlación o simplemente, pasárselos al modelo con el objetivo de proporcionarle la mayor cantidad de información posible.

Formas de obtención de entidades

La obtención de entidades se basa en la identificación en un determinado texto de ciertos atributos, como pueden ser nombres propios, lugares geográficos, fechas, empresas, etcétera. En función de los intereses de cada cliente, se puede customizar para la extracción de las entidades que sean consideradas de mayor interés por este. 

Proceso para resumir conversaciones de voz

Una funcionalidad interesante de implementar es la realización de un resumen automático de conversaciones. Para ello existen diferentes enfoques:

  • Basado en extracción: involucra la elección de las frases y líneas más relevantes del documento. A continuación, combina todas las líneas importantes para crear el resumen. Por ese motivo, es este enfoque, cada una de las frases que aparecen en el sumario pertenecen al texto original.
  • Basado en abstracción: involucra técnicas basadas en Deep Learning para la creación de nuevas frases y términos a los del documento original transmitiendo las mismas ideas. Construye en primer lugar una representación semántica interna del contenido original y luego utiliza esa representación para la creación del resumen. Es un enfoque más complejo pero más similar a como lo haría el ser humano. 

Bibliografía

[1] Wang and Z. Qu, “Research on Web text classification algorithm based on improved CNN and SVM,” Int. Conf. Commun. Technol. Proceedings, ICCT, vol. 2017-Octob, pp. 1958–1961, 2017, doi: 10.1109/ICCT.2017.8359971.

[2] Z. Chen, “Short text classification based on WORD2VEC and improved TDFIDF merge weighting,” 2019 IEEE 3rd Int. Conf. Electron. Inf. Technol. Comput. Eng. EITCE 2019, pp. 1719–1722, 2019.

[3] W. Li, S. Gao, H. Zhou, Z. Huang, K. Zhang, and W. Li, “The automatic text classification method based on bert and feature union,” Proc. Int. Conf. Parallel Distrib. Syst. – ICPADS, vol. 2019-Decem, pp. 774–777, 2019.