EN
Noticias - 11/05/2023

Abrimos la librería Mercury a toda la comunidad

BBVA libera los componentes analíticos más relevantes de Mercury, la librería de ciencia de datos creada internamente en el banco, como contribución a la comunidad open-source

Mercury nació con el objetivo de facilitar la reutilización de componentes de código a gran escala. Gracias a esto, hemos conseguido agilizar el desarrollo de nuevos productos basados en datos. Con la idea de seguir los principios del open-source, Mercury ha logrado impulsar la contribución de código de calidad, ya que los científicos de datos del banco pueden verlo, comentarlo, documentarlo y mejorarlo. La utilización de esta librería también ha acentuado la compartición de ideas y conocimiento, lo que ha creado una fuerte cultura de comunidad interna.

Los componentes analíticos de Mercury están preparados para ser productivos y funcionales, y son siempre asépticos a casos de negocio concretos. Sin embargo, muchas de las soluciones analíticas que podemos encontrar en Mercury están enfocadas en resolver asuntos típicos del sector financiero. Por ejemplo, liberamos componentes analíticos para facilitar la explicabilidad y garantizar la robustez de los modelos de aprendizaje automático (Machine Learning), aspectos indispensables para cumplir con la regulación del sector, así como algoritmos sobre datos transaccionales para predecir eventos o evaluar riesgos basados en acontecimientos pasados.

Hace cuatro años creamos esta librería de Python en BBVA AI Factory. Dos años después, en 2021, su uso se extendió a toda la comunidad de ciencia de datos del banco. Ahora abrimos Mercury para que cualquier persona interesada en el desarrollo de software pueda utilizar estos componentes y aportar ideas, contribuir directamente con código nuevo, proporcionar feedback o ayudar a resolver posibles fallos. Todas las contribuciones serán valoradas por el equipo core de Mercury, encargado de garantizar la calidad y relevancia de los componentes disponibles en la librería.

Con este paso queremos fomentar el uso de la librería e incrementar el número de contribuciones por parte de toda la comunidad de científicos de datos, desarrolladores y profesionales de software, incluidos los profesionales de BBVA que ya emplean los componentes de Mercury en su día a día. Ahora, sus contribuciones tendrán un impacto mayor.

Creemos que poner a disposición de todos parte del trabajo que realizamos nos hace más transparentes y demuestra cómo abordamos el trabajo con datos, con el foco sobre las mejores prácticas de desarrollo de software. Los datos disponibles en Mercury sirven para ilustrar las diferentes funcionalidades, por lo que no se incluye información confidencial.

Los seis paquetes ya disponibles en Mercury

Los componentes analíticos que encontramos en Mercury son usados por los científicos de datos e ingenieros de Machine Learning para desarrollar los nuevos productos basados en IA de BBVA. Estos son los seis paquetes ya disponibles en Mercury:

Figura 1. Los seis paquetes ya disponibles en Mercury para toda la comunidad.
Figura 1. Los seis paquetes ya disponibles en Mercury para toda la comunidad.
  1. Mercury-dataschema un paquete que infiere de forma automática el tipo de variables en los datos y que a su vez realiza cálculos de analítica avanzada, por lo que es muy útil para validar esquemas de datos.
  2. Mercury-explainability, una colección de métodos y técnicas que facilita la explicabilidad de los algoritmos. Facilitar la interpretación e inspección de los modelos de aprendizaje automático asegura el cumplimiento de las regulaciones asociadas con los servicios financieros e incide positivamente en la comprensión del funcionamiento de dichos modelos. Su aplicación puede ir desde la detección de riesgo de crédito hasta la creación de sistemas de recomendación de productos financieros.
  3. Mercury-monitoring, dedicado a la monitorización del rendimiento de modelos de aprendizaje automático. Esto implica la detección de cambios en la distribución de los datos entrantes o el data drift, además de estimar la precisión del modelo en el momento de la inferencia. Preventivamente, detecta posibles degradaciones de los modelos, de modo que puedan ser reentrenados y así evitar su mal funcionamiento.
  4. Mercury-reels, creado para analizar los datos transaccionales de navegación web. Tiene aplicaciones naturales en ciberseguridad y en cualquier lugar donde sea posible predecir eventos o evaluar riesgos basados en eventos pasados.
  5. Mercury-robust un framework pensado para realizar pruebas de robustez en conjuntos de datos y modelos de aprendizaje automático. Estas pruebas permiten la detección de ciertas condiciones indeseadas, como por ejemplo el disponer de un dataset con datos mal etiquetados o tener un modelo excesivamente sensible a desviaciones en los datos de entrada. Además, estas herramientas de Mercury ayudan a verificar que el modelo cumple criterios éticos o de equidad (fairness).
  6. Mercury-settrie, una biblioteca de C++ para manejar contenedores de conjuntos. Settrie nació de la necesidad de una mejor implementación del algoritmo para nuestro sistema de recomendación. Tiene aplicación directa en el indexado de texto para la búsqueda eficiente de documentos.

Contribuimos a la comunidad

En BBVA, como en la mayoría de empresas tecnológicas, empleamos una gran cantidad de librerías y herramientas open-source para desarrollar modelos o soluciones de software, como puede ser Spark, Scikit-learn o TensorFlow. Mercury es nuestra forma de contribuir de vuelta a esa comunidad que ha apoyado el crecimiento y el éxito de nuestra compañía con el desarrollo de soluciones basadas en datos.

Empieza a utilizar Mercury →