Realicé un análisis de la opinión pública sobre las principales aplicaciones financieras en Colombia, utilizando modelos de Procesamiento de Lenguaje Natural (PLN) para clasificar el sentimiento a partir de reseñas de la Google Play Store.
1. Tema del Proyecto
Este proyecto utiliza técnicas de Procesamiento de Lenguaje Natural (PLN) para extraer, procesar y analizar más de 47,000 reseñas de usuarios de 11 de las principales aplicaciones financieras y neobancos en Colombia. El objetivo es ir más allá de la simple calificación por estrellas, validando un modelo de sentimiento preciso para cuantificar y comparar la percepción real del cliente (positiva, negativa o neutral) hacia cada una de estas aplicaciones.
2. Resumen Ejecutivo
Problema:
En el competitivo mercado FinTech, las calificaciones por estrellas (score) son insuficientes. Una app con 4.1 estrellas puede tener usuarios encantados con la experiencia en la app, mientras que otra con el mismo 4.1 puede tener usuarios frustrados pero "cautivos". Las empresas no tienen una forma escalable de leer y cuantificar las miles de reseñas de texto para entender el "por qué" detrás del score y compararse objetivamente con sus competidores.
Solución:
Se implementó un pipeline para:
Extracción (Scraping): Se obtuvieron +47,000 reseñas de 11 apps de la Google Play Store.
Validación de Modelos: Se comparó un modelo genérico (SentimentAnalysisSpanish) contra un modelo avanzado Transformer (BERT), usando el score del usuario como ground truth.
Selección: Las matrices de confusión demostraron la superioridad del modelo BERT.
Análisis: Se aplicó el modelo BERT a todas las reseñas y se calcularon las proporciones de sentimiento para cada app, normalizando los datos para una comparación justa.
Resultado:
Se generó un ranking de percepción de sentimiento que revela claros ganadores y perdedores. Nequi lidera con un 65% de sentimiento positivo, mientras que Powwi y Coink muestran la mayor fricción, superando el 60% de sentimiento negativo. Este análisis proporciona inteligencia competitiva accionable e identifica a los líderes del mercado en experiencia de usuario real.
3. Contexto de Negocio
El ecosistema FinTech y de Neobancos en Colombia está en plena ebullición. La competencia por la adquisición y retención de usuarios es intensa. En este contexto, entender la voz del cliente no es un lujo, es una necesidad estratégica. Las reseñas de las tiendas de aplicaciones son la fuente más grande, gratuita y honesta de feedback del cliente. Analizarlas pueden permitir a las empresas:
Identificar puntos de dolor o puntos críticos específicos.
Comparar su desempeño (benchmark) con el de la competencia directa.
Priorizar mejoras de producto basadas en datos reales.
4. Trabajo Realizado
El proyecto se ejecutó en 5 fases principales:
Extracción de Datos: Se utilizó la librería google_play_scraper en Python para extraer 47,198 reseñas de 11 apps, incluyendo 'Nequi', 'Daviplata', 'Lulo Bank', 'Nubank Colombia', 'Movii', 'Coink', etc.
Preprocesamiento y Limpieza: Se consolidaron todos los archivos CSV con glob, se hizo normalización y limpieza de texto, eliminación de ruido (links, emojis, hashtags), se eliminaron valores nulos en las reseñas y se creó una columna nombre_app para identificar la fuente de cada comentario.
Validación de Modelos (Paso Crítico):
Se creó una etiqueta de "Realidad" (score_label) a partir del score del usuario (1-2=Negativo, 3=Neutral, 4-5=Positivo).
Se generó sentimiento con dos modelos: SentimentAnalysisSpanish y Transformer (BERT).
Se crearon Matrices de Confusión para ambos. El modelo genérico confundió 6,972 reseñas positivas como negativas. El modelo BERT fue drásticamente más preciso, identificando correctamente la diagonal (aciertos) y reduciendo los errores.
Decisión: Se seleccionó Transformer (BERT) por su rendimiento superior.
Análisis Descriptivo:
Se aplicó el modelo BERT a las 47,198 reseñas.
Se agruparon los resultados por nombre_app y sentimiento_transformer.
Se calcularon las proporciones de sentimiento (en %) para cada app, eliminando el sesgo introducido por el volumen total de reseñas.
Visualización de Resultados:
Se creó un Gráfico de Barras Apiladas al 100% ordenado por el porcentaje de sentimiento negativo, permitiendo una comparación visual e instantánea del desempeño de cada app.
Se generó la tabla de proporciones que alimenta el gráfico.
Evaluación de modelos:
El gráfico "Concordancia" muestra la precisión general o qué tan a menudo el modelo coincide con la calificación del usuario dando como resultado que el modelo BERT es casi 14 puntos porcentuales más preciso:
Transformer (BERT): Tiene una concordancia del 84.65%.
SentimentAnalysisSpanish: Tiene una concordancia mucho menor, del 70.92%.
El gráfico "Comparación de errores" explica por qué BERT es mucho mejor:
SentimentAnalysisSpanish: Su principal defecto es una tasa masiva de Falsos Negativos (28.44%). Esto indica que el modelo es considerablemente pesimista: casi un tercio de las veces que una reseña es positiva, este modelo la clasifica incorrectamente como negativa.
Transformer (BERT): Este modelo reduce drásticamente ese error, bajando los Falsos Negativos a solo 9.88%. Aunque tiene una tasa de Falsos Positivos ligeramente más alta (3.38% vs 1.52%), la enorme ganancia en la reducción de Falsos Negativos lo hace un modelo mucho más equilibrado.
➡️Los gráficos demuestran que Transformer (BERT) es la mejor opción ya que su alta concordancia se debe a que ha logrado solucionar el principal punto débil del modelo SentimentAnalysisSpanish el cual tiende a clasificar erróneamente las reseñas positivas como negativas.
(SentimentAnalysisSpanish)
Positivo: Un recall de 0.569 significa que el modelo solo es capaz de encontrar (recordar) el 56.9% de todas las reseñas que eran realmente positivas. El otro 43.1% las clasificó mal probablemente como negativas, dado el alto recall de esa clase.
Negativo: Precisión de 0.680 quiere decir que de todos los que el modelo clasifica como negativos, el 68% realmente lo eran. El otro 32% son Falsos Positivos .
Neutral: el F1-score de 0.041 nos indica que el modelo no tiene la capacidad de identificar reseñas neutrales
(Transformer-BERT)
Positivo: El recall de 0.840 indica que de las reseñas realmente positivas el modelo clasifica bien el 84% mostrando una mejora en comparación al modelo anterior.
Negativo: la precisión mejora también drásticamente, ya que dee todos los casos que el modelo predijo como negativos, el 82.6% realmente lo eran.
Neutral: Sigue siendo una métrica baja -lo cual es común, pues "Neutral" es ambiguo y tiene menos datos- pero es más de 4 veces mejor que el otro modelo.
Selección:
Para asegurar la validez del análisis, el primer paso fue determinar el modelo de Procesamiento de Lenguaje Natural (PLN) más preciso, comparando el modelo genérico (SentimentAnalysisSpanish) contra un modelo avanzado basado en Transformer (BERT).
La "realidad" (ground truth) se estableció usando el score de estrellas del usuario (1-2 = Negativo, 3 = Neutral, 4-5 = Positivo).
El modelo SentimentAnalysisSpanish mostró una gran debilidad, especialmente al confundir reseñas Positivas con Negativas. Como se ve en la matriz e confusión, de las reseñas que eran "Positivas" (Fila 1), el modelo clasificó incorrectamente 6,972 como "Negativo" y 3,597 como "Neutral".
El modelo Transformer (BERT) fue mucho más preciso. Logró identificar correctamente 20,595 reseñas positivas y 18,669 negativas (la diagonal principal), así mismo la "fuga" de positivos a negativos fue mucho menor (2,422).
➡️Debido a su alta precisión y su capacidad para alinearse mejor con la intención del score del usuario, se seleccionó el modelo Transformer (BERT) para realizar todo el análisis descriptivo del proyecto.
Un análisis más superficial se limitaría a promediar el score (estrellas) del usuario, sin embargo, este es un indicador ruidoso y poco fiable ya que los usuarios algunas veces se equivocan al seleccionar las estrellas, asignando 1 estrella a reseñas con texto 100% positivo, o viceversa.
Por esto otra justificación del uso de Transformer (BERT) ya que no solo busca una mayor precisión, sino que también es un paso crítico para validar la intención real del usuario.
Al comparar la predicción del modelo basada en el texto con el score, el sistema puede:
Identificar Falsos Negativos del Usuario: Detectar reseñas positivas que fueron erróneamente marcadas con 1 o 2 estrellas.
Identificar Falsos Positivos del Usuario: Detectar reseñas negativas marcadas por error con 5 estrellas.
Por lo tanto, el modelo BERT no solo clasifica el sentimiento; funciona como una herramienta de auditoría que limpia el ruido del score y nos permite medir la verdadera percepción del cliente con una confianza mucho mayor que un simple promedio de estrellas.
Resultados:
Al aplicar el modelo para clasificar todas las reseñas de las principales apps financieras y neobancos en Colombia y para comparar de forma justa (sin importar si una app tenía 10,000 reseñas y otra solo 500), se usó un gráfico de barras apiladas al 100%. Esto normaliza los resultados y muestra la proporción real de sentimientos para cada app. El gráfico se ordenó de mayor a menor porcentaje de reseñas Negativas.
El análisis revela una clara diferencia en la percepción pública de las apps financieras en Colombia.
a) El Líder Indiscutible en Sentimiento Positivo:
Nequi (Bancolombia) es el claro ganador en percepción positiva (65.23%). Su proporción de reseñas negativas (28.14%) es drásticamente menor que la de cualquier competidor, indicando una base de usuarios mucho más satisfecha.
b) La Zona de Alta Fricción (Mayor Sentimiento Negativo):
Powwi (61.85%), Coink (60.11%) y Daviplata (57.60%) lideran el ranking de sentimiento negativo. Más de la mitad de las interacciones de sus usuarios son clasificadas como negativas, sugiriendo problemas significativos de usabilidad, servicio al cliente o fallos en la plataforma.
c) El grupo Competitivo:
Un gran grupo de neobancos y billeteras (incluyendo Lulo Bank, Nubank, Movii y Tpaga) compiten en un espacio muy similar, con proporciones de sentimiento negativo que oscilan entre el 51% y 52%.
Ualá y Addi logran desmarcarse ligeramente de este grupo, siendo las únicas (además de Nequi) que logran superar el 50% de sentimiento positivo.
5. Business Case
Problema:
Una empresa mide su éxito basándose en el promedio de estrellas (ej. 4.1 estrellas) y en reportes manuales o anecdóticos de reseñas ("algunos usuarios se quejan..."). No hay una visión clara de cómo se compara este sentimiento con el de la competencia, ni de cuál es la proporción real de usuarios insatisfechos. .
Hipótesis clave:
El análisis de sentimiento del texto de las reseñas es un indicador más preciso de la salud de la marca y la lealtad del cliente que la calificación por estrellas.
Parámetros Obtenidos:
Se estableció el "% de Sentimiento Negativo" como el KPI principal para medir la fricción del cliente, y el "% de Sentimiento Positivo" como el KPI para medir la afinidad (amor) por la marca.
Resultado:
Líder positivo: Nequi domina con 65% de sentimiento favorable y solo 28% negativo.
Problemas graves: Powwi (62%), Coink (60%) y Daviplata (58%) presentan alta insatisfacción, con más de la mitad de reseñas negativas.
Grupo medio: Lulo Bank, Nubank, Movii y Tpaga muestran niveles similares (51-52% negativo).
Destacados: Ualá y Addi son las únicas -junto con Nequi- que superan el 50% de sentimiento positivo.
Nequi lidera ampliamente la satisfacción, mientras tres apps muestran problemas significativos de experiencia de usuario.
Repositorio en [GitHub]