Available in English

 

Curso de Machine Learning y Banca Central

Formato Virtual. Del 9 al 13 de noviembre de 2020.

 

Durante la primera edición de este Curso, realizado virtualmente en colaboración con Deutsche Bundesbank y el Banco Central de Costa Rica, los participantes pudieron conocer los conceptos fundamentales sobre el Machine Learning y cómo se pueden resolver los problemas del Banco Central a través de este conjunto de técnicas. Además de las sesiones conceptuales, el Curso contó con ejercicios prácticos donde se mostró cómo implementar los conceptos en el lenguaje de programación R.

Día 1

El primer día comenzó con una presentación del profesor Stefan Bender con una descripción general sobre Machine Learning (ML) y cómo este puede ser una herramienta confiable para que los bancos centrales la utilicen dentro de sus diferentes áreas para resolver múltiples problemas relacionados con aspectos de los sistemas de pago y la estabilidad financiera, entre otros. Se mencionó el proceso general para desarrollar un sistema basado en ML que es: i) comprender el problema comercial, ii) mapear el problema original a un problema de ML, iii) comprender los datos que se están utilizando, iv) explorar y preparar (preprocesar) los datos, v) seleccionar el mejor método, v) llevar a cabo una evaluación y vi) implementar. Luego se revisaron los principales enfoques dentro de ML, que son: supervisados, semi-supervisados ​​y no supervisados. Se mencionaron algunos ejemplos de cada uno de ellos, como los algoritmos de clustering y los métodos de clasificación. Finalmente mencionó los principales factores a considerar a la hora de implementar estos métodos, que son: la complejidad, el sobreajuste, la robustez, la interpretabilidad y el tiempo de entrenamiento y prueba.

La siguiente sesión se dedicó a mostrar un caso de uso donde el Deutsche Bundesbank desarrolló una metodología basada en ML para encontrar vínculos entre registros relacionados con la misma entidad en bases de datos de diferentes fuentes, esto debido a que los identificadores únicos no estaban disponibles para ser vinculados directamente. Se mostró que el desarrollo de dicho sistema puede proporcionar enormes beneficios relacionados con el análisis de la información. El proceso comprendió estos pasos: preprocesamiento de las bases de datos, reducción del espacio de búsqueda, comparación de registros, clasificación (decidir si existe o no un vínculo) y evaluación de los resultados. El desarrollo también presentó un desafío con respecto a los problemas de privacidad.

A continuación, se revisó el proceso de división de datos común en ML. Es una práctica común en ML evaluar modelos sobre datos que no se utilizaron para entrenarlos. Para ello, es necesario dividir todos los datos en diferentes conjuntos, esta partición casi siempre se realiza de forma aleatoria y cada conjunto tiene diferentes propósitos. El conjunto de entrenamiento se usa para que el modelo aprenda los patrones de datos subyacentes, luego el conjunto de validación se usa para probar diferentes configuraciones del modelo y para seleccionar la que tiene el mejor rendimiento, finalmente los datos de prueba se usan para ver qué tan bien un modelo funciona con datos invisibles.

En esta sesión también se revisó el concepto de validación cruzada, que es un procedimiento exhaustivo que prueba diferentes conjuntos de entrenamiento y validación. Luego se mostró el concepto de matriz de confusión que involucra la contabilización de verdaderos positivos, verdaderos negativos, falsos positivos y falsos negativos que junto con otras medidas como recall, exactitud, precisión y puntaje f1, las cuáles sirven para la validación y evaluación de modelos de ML.

El día terminó con una serie de ejercicios prácticos sobre los principales comandos R.

 

Dia 2

El segundo día se dedicó a profundizar en los métodos shrinkage, que son variaciones de la regresión de mínimos cuadrados ordinales (OLS, por sus siglas en inglés).

La presentación comenzó con las principales motivaciones que impulsan el uso de estas técnicas, que son el control de la complejidad de los modelos cuando se tienen muchas dimensiones, la reducción de la sobre-parametrización y sobreajuste, y la reducción de recursos computacionales. También se mencionó que la idea central de estas técnicas se puede encontrar en modelos econométricos como la regresión de mínimos cuadrados parciales y componentes principales.

La sesión continuó con una revisión de la regresión Ridge. Se observó que la diferencia con la regresión de OLS se basa en la adición de un nuevo término a la función objetivo que impone una penalización en la magnitud de los coeficientes, este término hace uso de la norma L2. Se mencionó que esta sutil diferencia tiene como consecuencia una reducción en el valor de los coeficientes de regresión y una mejora en la predicción de valores no incluidos en el entrenamiento.

Luego se revisó la regresión Lasso. Como en el caso de la regresión Ridge, se agrega un término de penalización a la función objetivo, pero en este caso el término hace uso de la norma L1. El nuevo término obliga a los coeficientes de regresión menos importantes a ser cero, lo que equivale a excluir a las variables relacionadas del modelo. Esta técnica presenta una mejora en la predicción y tiene una ventaja computacional ya que obliga a que algunos coeficientes sean cero.

Posteriormente se explicó la técnica elastic net. Se observó que a veces la regresión de la cresta sufre un efecto de agrupamiento, es decir, las variables fuertemente correlacionadas tienden a estar dentro o fuera del modelo juntas. Para evitar este problema, elastic net hace una combinación convexa de términos de penalización Ridge y Lasso. Finalmente, se presentó un ejemplo de clasificación de múltiples clases, donde se comparó el desempeño de los métodos shrinkage.

El día concluyó con una serie de ejercicios prácticos en R.

 

Día 3

El tercer día del Curso se dedicó a estudiar los métodos de árboles de decisión, cómo se implementan y algunos ejemplos. Además, se introdujo la primera parte del tema de métodos de ensamble.

El día comenzó con una introducción a los árboles de decisión, que son un conjunto de métodos que pertenecen a la categoría de algoritmos greedy los cuales generan particiones recursivas sobre los datos para crear subconjuntos cuya variable dependiente relacionada pertenece predominantemente a una categoría. El foco de la sesión estuvo en los árboles de clasificación.

La sesión continuó presentando un ejemplo de cómo se vería un árbol de decisión, seguido de los pasos fundamentales a considerar para crearlo; estos son: el criterio de división, selección de variables independientes para las divisiones, la profundidad que debe tener el árbol y el valor que debe predecirse en cada parte del árbol. Luego se discutió en profundidad cada uno de los pasos fundamentales. Primero se mencionaron los principales criterios de división: CART, valor mínimo y valor máximo; a continuación, cómo el método encuentra la variable independiente y el corte correspondiente a través de la división; luego se presentaron criterios de parada y pre-poda para controlar la profundidad de un árbol y evitar el sobreajuste; y finalmente se discutieron dos alternativas diferentes para generar predicciones en cada nodo hoja, que fueron votaciones por mayoría y probabilidades predichas.

Luego, se mencionó que uno de los principales objetivos en Machine Learning es encontrar modelos que alcancen el punto óptimo tanto del sesgo como de la varianza, minimizando lo más posible ambos. Una opción para lograr este objetivo es utilizar la validación cruzada para estimar el error de validación y probar el modelo con nuevas observaciones. Otra posibilidad es combinar muchos modelos para generar predicciones promediadas, tal enfoque se llama aprendizaje por ensamble. En la última parte del día se dio una introducción sobre métodos de ensamble y bagging. Los métodos de ensamble combinan varios modelos débiles para generar uno más fuerte. En el bagging, la idea es generar múltiples conjuntos de datos a partir del original para estimar un nuevo modelo en cada uno y luego agregar las predicciones de cada modelo.

El día finalizó con ejercicios prácticos de implementación de técnicas de árboles en R.

 

Día 4

El cuarto día se dedicó a profundizar en dos métodos de ensamble que utilizan como modelo base árboles de decisión, bosque aleatorio y aumento de gradiente.

Después de una recapitulación sobre los métodos de ensamble y bagging, la sesión se centró en el análisis de bosques aleatorios, cuya idea principal es primero generar una serie de nuevos conjuntos de datos (mediante remuestreo), luego entrenar un árbol para cada conjunto de datos solo considerando una proporción del conjunto total de variables independientes, esto para introducir aleatoriedad en la metodología, y finalmente generar un agregado de las predicciones de cada árbol para obtener la predicción final. Luego, se mencionó que si bien los bosques aleatorios reducen la varianza debido a su naturaleza de conjunto, es necesario poner atención en la búsqueda del conjunto óptimo de parámetros para el modelo; esto es para evitar un aumento desmedido en la varianza.

La sesión continuó con una implementación de bosques aleatorios en R

Luego se realizó una revisión sobre la técnica de aumento de gradiente. La idea principal consiste en entrenar secuencialmente nuevos modelos, dando más importancia a las observaciones que son difíciles de predecir, el nivel de dificultad se refleja en ponderaciones (pesos) o residuales que se vinculan a cada observación. Para este caso, a diferencia del bosque aleatorio, el conjunto de datos utilizado para cada modelo es el mismo y solo los pesos cambian en cada iteración. El aumento de gradiente a menudo se aplica en el contexto de árboles, pero se puede usar cualquier modelo débil. También se observó, por un lado, que esta técnica puede resolver cualquier tipo de problema, siempre que se pueda calcular el gradiente de la función de pérdida involucrada. Por otro lado, se debe considerar que la implementación debe ir acompañada de un fino ajuste de hiperparámetros para controlar el sesgo, y que para este caso se requiere más tiempo de cómputo en comparación con el resto de técnicas vistas.

El día terminó con un ejercicio práctico sobre el aumento de gradiente en R.

 

Día 5

El último día del Curso se dedicó a presentar los tres proyectos principales de Machine Learning desarrollados por el CEMLA junto con bancos centrales regionales y University College London (UCL), seguido de un resumen general de los temas tratados durante el Curso y los comentarios finales de los participantes.  

 

Lunes, 9 de noviembre

 

Discurso de apertura 
Dr. Serafín Martínez Jaramillo, Asesor del Director General, CEMLA

Introducción

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Estructura y organización del Curso

Prof. Stefan Bender - Deutsche Bundesbank

  • Machine Learning y Banca Central

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Muestras de entrenamiento, prueba y validación

 

Introducción II

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Validación cruzada
  • Matriz de confusión
  • Medidas de Evaluación (Precisión, Recall, Puntuación-F1, etc.)
  • Curva PR

 

Martes, 10 de noviembre

 

Shrinkage

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Introduction to Shrinkage
  • Lasso
  • Ridge

Shrinkage II

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Red elástica
  • Extensión: problemas multiclase

 

Miércoles, 11 de noviembre

 

Árboles de decisión

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Árboles de decisión (CART)
  • Bootstrapping

Árboles de decisión II

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Introducción a los métodos de conjunto

 

Jueves, 12 de noviembre

 

Métodos de conjunto (Bosque aleatorio)

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Bosque aleatorio

 

Métodos de conjunto (Aumento de gradiente)

Gabriela Alves Werb y Dr. Jens Mehrhoff, Deutsche Bundesbank

  • Aumento de gradiente

 

Viernes, 13 de noviembre

 

Machine Learning en la práctica

Serafín Martínez-Jaramillo, Asesor, CEMLA

Conclusión de la Reunión, Preguntas y Respuesta
Serafín Martínez Jaramillo, CEMLA, Gabriela Alves Werb, Dr. Jens Mehrhoff, y Prof. Stefan Bender, Deutsche Bundesbank

 

 

Dr. Serafín Martínez-Jaramillo
Advisor, CEMLA

Serafin Martinez-Jaramillo is a senior financial researcher at the Financial Stability General Directorate at Banco de México and currently he is an adviser at the CEMLA. His research interests include: financial stability, systemic risk, financial networks, bankruptcy prediction, genetic programming, multiplex networks and machine learning. Serafin has published book chapters, encyclopedia entries and papers in several journals like IEEE Transactions on Evolutionary Computation, Journal of Financial Stability, Neurocomputing, Journal of Economic Dynamics and Control, Computational Management Science, Journal of Network Theory in Finance and some more. Additionally, he has co-edited two books and two special issues at the Journal of Financial Stability. Serafin holds a PhD in Computational Finance from the University of Essex, UK and he is member of the editorial board of the Journal of Financial Stability, the Journal of Network Theory in Finance and the Latin American Journal of Central Banking.

 

Prof. Stefan Bender
Head of the Research Data and Service Center of the Deutsche Bundesbank

Stefan Bender is Head of the Research Data and Service Center of the Deutsche Bundesbank and – since 2018 - Honorary Professor at the School of Social Sciences, University Mannheim. With his position at Deutsche Bundesbank he was chair of INEXDA (the Granular Data Network) and vice-chair of the German Data Forum (www.ratswd.de). Before joining the Deutsche Bundesbank Bender was head of the Research Data Center (RDC) of the Federal Employment Agency at the Institute for Employment Research (IAB), which he has international established a research data centre including access to IAB data in the US (for example Berkeley, Harvard). His research interests are data access, data quality, merging administrative, survey data and/or big data, record linkage, management quality and mobility of inventors. He has published over 100 articles in journals including the American Economic Review or the Quarterly Journal of Economics.

 

Dr Jens Mehrhoff
Head of the Sustainable Finance Data Hub in the Directorate General Statistics of the Deutsche Bundesbank.

Prior to his current role, Jens was Head of the Section for Business Cycle, Price and Property Market Statistics for many years, and recently on secondment to the statistical office of the European Union (Eurostat). Jens is a member of the UN Global Working Group on Big Data and commits research on classification from a central bank's perspective. He gave talks at several high-profile international conferences as well as to major international organizations. He has a post as lecturer in machine learning at Goethe University Frankfurt.

 

Gabriela Alves Werb
Deutsche Bundesbank

Gabriela Alves Werb is a Ph.D. candidate at the Goethe University Frankfurt within the structured doctoral program of the Graduate School of Economics, Finance, and Management (GSEFM). She holds a M.Sc. degree in Quantitative Management from GSEFM (Germany) and a degree in Production Engineering from PUC-Rio (Brazil).She started her career at IBM (2007-2011), where she dedicated herself to financial sales, financial analysis, controlling, pricing and process improvement. In 2011, she joined the consulting firm Hays, where she worked for more than three years. She initially led projects in the Engineering & Manufacturing sector and later led and restructured the Oil & Gas business division in Brazil.

During her Ph.D. studies, she worked at the Chair of Electronic Commerce at the Goethe University Frankfurt. Her teaching focused on machine learning methods and their application to solve substantive problems in several disciplines, including marketing. In August 2020, she joined the Research Data and Service Centre (RDSC) at the Deutsche Bundesbank as a Data Scientist.