1 votos

Diferencia entre validación cruzada, backtesting, simulación histórica, simulación de Monte Carlo, replicación de bootstrap?

Para determinar si una estrategia es mejor que otras, o para optimizar los parámetros de un modelo, a menudo se emplean las siguientes técnicas estadísticas, a menudo una sobre las otras en lugar de todas juntas. Sus resultados son importantes en términos de entrenar un modelo o estrategia y asegurar que retendrá el rendimiento predicho cuando se aplique a datos de prueba no vistos, pero ¿cuáles son todas las diferencias entre sus procedimientos, así como sus debilidades, aplicabilidad y fortalezas, dado que muchos parecen hacer su propia versión de remuestreo de datos? Para empezar, una breve descripción de su procedimiento podría ayudar para comparar.

  1. Backtesting
  2. Simulación histórica
  3. Simulación de Monte Carlo
  4. Replicación de bootstrap
  5. Validación cruzada

4voto

dotnetcoder Puntos 1262

Al igual que con muchas cosas, especialmente en el aprendizaje automático y la inteligencia artificial, creo que encontrarás que estos procesos no tienen una descripción única, lógica o matemáticamente definida. Más bien diría que dependiendo del contexto pueden significar cosas diferentes e incluso podrían significar lo mismo. Sin embargo, en mi experiencia, este es su uso más común.

Backtesting

En el aprendizaje automático he encontrado el 'backtesting' en el ámbito de las finanzas cuando un modelo o estrategia ha sido definido y su propósito es probar genuinamente la rentabilidad de las acciones en algunos datos históricos reales. Por lo tanto, backtesting requiere series temporales y datos reales y tiene como objetivo probar un modelo. Si el modelo ha sido diseñado con los datos de prueba en mente, o ha espiado, entonces la prueba no reflejará el rendimiento real.

Simulación Histórica

Esto es similar a lo anterior, excepto que diría que cae en un contexto más general. No solo necesariamente cuando tienes una estrategia de rentabilidad que examinar, sino posiblemente solo para examinar el riesgo, u otros factores, también. Por ejemplo, una simulación histórica del Valor en Riesgo de una cartera. La simulación histórica requiere series temporales y datos reales.

Monte Carlo

Monte Carlo es similar a lo anterior, pero en lugar de requerir datos reales, utiliza datos simulados. Cómo se define el simulador determinará el éxito del análisis, por ejemplo, de manera paramétrica, no paramétrica o mediante otro proceso aleatorio. Monte Carlo se usa para una multitud de tareas no necesariamente relacionadas con finanzas o series temporales.

Replicación Bootstrap

La replicación bootstrap, yo describiría, está entre los dos modelos anteriores. Las muestras bootstrap crean una metodología de muestreo estadístico donde se utiliza en cierta medida los datos reales subyacentes. Ya sea que se muestreen repetitivamente (no paramétricamente) o se cree un modelo paramétrico a partir del cual se generen muestras de una distribución de probabilidad. Aunque esto podría ser bastante similar a Monte Carlo, creo que por definición estará más relacionado con los datos históricos subyacentes.

Validación Cruzada

Al entrenar un modelo de aprendizaje automático a menudo hay dos tipos de parámetros para determinar: parámetros básicos y hiperparámetros. Los parámetros básicos son los valores subyacentes necesarios para el modelo, por ejemplo, un modelo de regresión lineal necesita coeficientes. Estos se entrenan a partir de los datos de entrenamiento. Sin embargo, al entrenar un modelo en los datos en sí mismos es muy sesgado, y podría reproducir esos datos exactamente. Pero al ser probado contra datos nuevos y no vistos podría tener un rendimiento muy pobre. Por lo tanto, a menudo necesitas hiperparámetros para ser entrenados para analizar cuán efectivo puede ser un modelo 'entrenado' en datos no vistos. Los hiperparámetros pueden ser cosas como cuántos nodos usar en una red neuronal, o cuántos clústeres usar en una agrupación k-means. Incluso podrías considerar un hiperparámetro decidir si usar SVMs o Regresión Logística o un Árbol de Decisiones, por ejemplo. La validación cruzada a menudo utiliza mezclas inteligentes de los datos que tienes para determinar un buen conjunto de parámetros básicos y hiperparámetros. Luego puedes probar el modelo final en datos de prueba.

0 votos

No sabría cómo implementarlos basándome únicamente en las descripciones proporcionadas sobre su uso de datos reales o artificiales. ¿En qué se diferencian en cómo re-muestrean los datos una y otra vez para múltiples ejecuciones, cortándolos de manera diferente en cada ejecución? Para una comparación tradicional, consideremos la validación cruzada K-fold tradicional (en lugar de la validación cruzada hacia adelante), y cómo bootstrap de pares (en lugar de bootstrap de residuos) suele ser bueno para 250 repeticiones. En comparación con estos, ¿cómo re-muestrean el mismo conjunto de datos por ejecución el backtesting, la simulación histórica y la simulación de Monte Carlo?

0 votos

"Necesitas a menudo hiperparámetros para ser entrenados para analizar" - el resto del párrafo tiene sentido, pero creo que simplemente redactaste esta parte incorrectamente. No entrenas hiperparámetros para analizar nada, sino para evitar el sobreajuste. Pero también necesitas una forma de evaluar los modelos generados al ajustar los hiperparámetros, y ahí es donde entra en juego la validación cruzada.

0 votos

@NotThatGuy sí, bastante justo, el uso de la palabra 'entrenamiento' no es pedagógico ya que los dos procesos son diferentes y el entrenamiento generalmente se reserva para el primero. Pero el proceso general de establecer parámetros básicos e hiperparámetros para inferir el modelo más preciso dado los datos que tienes es parte de 'construir' o 'modelar' o 'entrenar'. Pero si tuviera que reescribirlo, lo expresaría de manera diferente para resaltar más la distinción.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X