El teorema de Frisch–Waugh–Lovell: Causalidad y Doble ML Carlos Ruiz
Una de las grandes ventajas que tiene Machine Learning sobre otros métodos para resolver problemas complejos es su capacidad para incluir una enorme cantidad de variables explicativas. Todos los científicos de datos saben que una base de datos con pocas columnas difícilmente es un objeto amable para los métodos tradicionales.
La gran desventaja de este enfoque es la ausencia de explicabilidad y causalidad de estos modelos, si abordamos un problema de previsión de un desastre natural con Machine Learning, no es suficiente con obtener resultados magníficos en un backtesting o inclusive en las primeras pruebas reales, si el modelo no está prediciendo por las razones correctas entonces no es un modelo confiable.
Por lo anterior es indispensable que se encuentre mejores métodos para detectar relaciones de causalidad en los modelos de machine learning. En este artículo hablaremos sobre la piedra angular detrás de Double Machiine Learning, una técnica extraordinariamente útil para investigar la causalidad en una base de datos. Estas ideas han sido promovidas por el exitoso economista Victor Chernozhukov así como sus colaboradores.
Predecir lluvias usando USD/MXN
Supongamos que estamos intentando predecir el número de litros por metro cuadrado que caerán en distintas zonas en la República Mexicana. Si abordamos este problema como científicos datos pronto notamos que es un problema de regresión, es decir nuestra variable objetivo es numérica.
Inmediatamente reconocemos que debemos agregar variables que expliquen el lugar donde estamos prediciendo, por ejemplo si estamos en la playa, en una montaña, etc. A todas estas variables les llamaremos nuestras X, estas podrían ser muchísimas y solo supongamos que todas son numéricas o binarias para poder utilizar un modelo lineal de regresión.
Posiblemente la descripción geográfica del lugar no sea suficiente, para todos sería razonable incluir variables que describan el momento del año en el que nos gustaría predecir la cantidad de lluvia. Vamos a imaginar que hemos enloquecido y las variables que añadimos están relacionadas con la economía nacional, por ejemplo las últimas tasas de interés, el tipo de cambio entre pesos mexicanos y dólares americanos en los últimos días, el valor del petróleo también en los últimos días y un gran etc. A todas estas variables las llamaremos $.
En resumen, nos gustaría entrenar un modelo matemático que utilice a X y $ para predecir cuánto lloverá mañana. No parece muy aventurado suponer que podríamos encontrar esta información y armar un bonito dataset. El sentido común nos alerta pues seguramente nadie nos sentimos cómodos utilizando información financiera para predecir el clima, claro que nos gustaría hacer un estudio sobre la causalidad entre estas dos variables, por el momento solo concentrémonos en el problema predictivo.
El teorema de Frisch–Waugh–Lovell
Un buen benchmark para comenzar esta locura podría ser utilizar un modelo de regresión lineal, como siempre debemos de comenzar probando con modelos sencillos. Escrito en una ecuación, nos gustaría resolver lo siguiente:
Y = AX+B$ + C
Con resolver queremos decir que nos gustaría encontrar cuáles son los valores A, B y C que mejor aproximen los litros por metro cuadrado en una zona particular, como estamos suponiendo que tanto X como $ son más de una sola variable, los A,B y C serían vectores. Vamos a suponer por el momento que $ es una sola variable, digamos el cambio peso/dolar. Supongamos que ya lo hemos hecho. El valor de B refleja cómo se utiliza MXN/USD para predecir los litros por metro cuadrado. ¡Qué horrible se escucha!
El teorema de Frisch–Waugh–Lovell afirma lo siguiente, también podríamos calcular a B siguiendo estos pasos:
Entrenamos una regresión lineal para predecir los litros por metro cuadrado únicamente utilizando la información geográfica, es decir las X. Una vez que lo hayamos hecho podríamos calcular el error en nuestra base de datos, es decir cuánto sub-estime o sobre-estimé que iba a llover en cada uno de esos lugares. A esta variable le llamaremos e.
Ahora vamos a entrenar una regresión lineal para predecir a & utilizando información geográfica. Este paso es una locura, estamos intentando utilizar características geográficas de algún lugar para predecir cuánto cuesta un dólar americano en cierto instante. Al error de estas predicciones le llamaremos E para reflejar nuestro sentir con este paso.
Por último vamos a entrenar una regresión para predecir la columna e utilizando la columna E, esta es una regresión uni-variada que tendrá un único peso asociado a E al que llamaremos B'.
La primera afirmación que hace el teorema de Frisch–Waugh–Lovell es que B y B' son idénticos. La segunda afirmación no la discutiremos en este texto.
En el contexto de Doble Machine Learning se utiliza la segunda metodología para encontrar relaciones causales utilizando modelos no-paramétricos de Machine Learning.
¿Dónde aprender más sobre la teoría y la práctica de estos temas?
En el Colegio Bourbaki estamos por comenzar nuestro flamante curso sobre la Causalidad en Machine Learning, pueden conocer más detalles sobre el temario en esta liga.
Si desean más información con gusto pueden escribirnos en Colegio de Matemáticas Bourbaki o al whatsapp de Bourbaki.