En el mundo actual, la gestión financiera personal y la categorización precisa de las transacciones bancarias juegan un papel crucial para usuarios y desarrolladores de aplicaciones financieras. Plaid, reconocido proveedor de datos financieros, ofrece categorización de transacciones para diferentes plataformas, pero su precisión en ciertos casos deja espacio para mejoras significativas. Inspirado por esta necesidad, diseñé un clasificador neural que optimiza la clasificación de categorías de transacciones, especialmente en ámbitos específicos como los gastos relacionados con la salud. Este proyecto no solo busca mejorar la precisión, sino que también abre posibilidades para innovar en aplicaciones financieras que dependen de datos categorizados cuidadosamente. Mi motivación para construir este clasificador comenzó con la creación de una startup enfocada en un programa de recompensas para gastos relacionados con la salud.
Los usuarios, distribuidos principalmente en ciudades como San Francisco, Nueva York, Los Ángeles, Chicago y Boston, requerían una experiencia fluida y confiable al momento de identificar gastos elegibles para recompensas. Sin embargo, rápidamente observé que las categorías predeterminadas de Plaid no eran lo suficientemente precisas para determinar si una transacción era relacionada con la salud o no. Este obstáculo me llevó a buscar una solución alternativa que pudiese superar las limitaciones de las reglas y heurísticas convencionales. Uno de los mayores desafíos que enfrenté inicialmente fue la precisión del categorizado de Plaid, que en promedio alcanzaba solo un 65.22%.
Curiosamente, cuando Plaid podía identificar a un comerciante conocido mediante un “Entity ID”, la precisión mejoraba a un 83.99%. Este dato reveló que había un margen para la mejora, especialmente en transacciones que involucraban a pequeñas y medianas empresas, donde la identificación resultaba más compleja. Para abordar estos desafíos, aposté por la creación de un sistema basado en inteligencia artificial, específicamente un clasificador neural que pudiera interpretar diversas características de las transacciones más allá de la simple categoría asignada. A partir de datos ya limpios proporcionados por el propio Plaid, mi pipeline integró variables cruciales como el monto de la transacción, la ubicación del punto de venta, el método de pago (ya sea presencial u online) y una lista específica de patrones únicos en el formato bancario que recopilé especialmente de los principales bancos.
Esta combinación de datos me permitió no solo identificar con mayor precisión al comerciante, especialmente cuando existían múltiples entidades con nombres similares, sino también agrupar identificadores regionales diferentes bajo un mismo paraguas organizacional. Un ejemplo claro de esta dificultad es el caso de Orangetheory, una cadena de gimnasios que utiliza diferentes denominaciones para cada ubicación, desde "Orangetheory" hasta "otf {ciudad}". Resolver estos detalles fue clave para generar una categorización sólida y coherente. Una ventaja fundamental del modelo fue la posibilidad de crear categorías personalizadas para las necesidades específicas de mi proyecto. En lugar de usar categorías genéricas, definí la clasificación “relacionada con la salud” basándome en reglas de elegibilidad para cuentas FSA/HSA (Flexible Spending Account y Health Savings Account), complementadas con una interpretación amplia de otros factores relevantes como clases de fitness o suplementos nutricionales.
Los resultados superaron mis expectativas, alcanzando una precisión del 87.28% en identificar gastos relacionados con la salud. Además, logramos un impresionante 95.78% en precisión para la clasificación general en finanzas personales, apoyándonos en una base de datos con solo 300 entidades conocidas. Este resultado sugiere que con un mayor esfuerzo en la expansión de la lista de entidades y la mejora continua del modelo, la productividad y exactitud pueden ser aún mayores.
El valor de desarrollar un sistema de este tipo va mucho más allá del simple reemplazo de categorías ya existentes. Se trata de dotar a los datos financieros de un entendimiento semántico que facilita la toma de decisiones tanto para usuarios finales como para desarrolladores. Con una categorización más precisa, las fintechs y plataformas de gestión de gastos pueden ofrecer servicios personalizados y robustos, desde plataformas de recompensas hasta herramientas de contabilidad o aplicaciones dedicadas a la gestión de gastos médicos. Este proyecto también sirvió como una lección importante acerca de la complejidad intrínseca en el manejo de datos financieros. Hay aspectos que a simple vista pueden parecer triviales, como la nomenclatura de comerciantes o los formatos bancarios, pero que tienen un impacto directo en el desempeño de los modelos de inteligencia artificial.
Por ello, es crucial contar con un enfoque multidimensional que integre datos convencionales y heurísticos específicos del dominio. Considerando el futuro, la infraestructura desarrollada para este clasificador tiene el potencial de transformarse en una API o toolkit accesible para desarrolladores interesados en la industria financiera. Esto podría facilitar la creación de aplicaciones más inteligentes, capaces de interpretar y categorizar transacciones con granularidad y precisión, abriendo nuevas oportunidades para servicios de personal finance, manejo de gastos médicos y programas de beneficios ajustados al comportamiento real de los usuarios. En resumen, la construcción de un clasificador neural para reemplazar las categorías de Plaid representa un avance significativo en la forma en que se procesa y aprovecha la información financiera. Al superar limitaciones técnicas y conceptuales, este sistema impulsa la precisión, personalización y confiabilidad en la gestión de categorías de gastos, elementos esenciales para la innovación en fintechs y soluciones financieras del futuro.
La experiencia también refuerza la importancia de combinar métodos avanzados de inteligencia artificial con un profundo conocimiento del dominio para crear productos que realmente resuelvan problemas prácticos y mejoren la experiencia del usuario.