2 votos

Tratamiento de los resultados estocásticos de los modelos de aprendizaje automático

Estoy construyendo modelos de selección de valores, y elijo los 5 mejores y los 5 peores valores. Dada la variabilidad de los resultados del gradiente estocástico, éstos cambian constantemente. Una forma de obtener resultados consistentes es utilizar la semilla aleatoria, pero estoy buscando si hay una mejor manera de lidiar con esto. También cómo se interpretan los resultados, es decir, un conjunto de top 5 frente a otro conjunto de Top 5 picks (3-4 de ellos son los mismos, pero pueden diferir en la clasificación). Estoy corriendo suficientes iteraciones para saber que esto no es un problema de convergencia.

1voto

Carmen Puntos 6

¿Ha probado a elegir un número arbitrario de modelos, digamos 20, teniendo cada uno su propia semilla? Entonces, ejecuta sus veinte modelos y utiliza la mediana de sus 20 resultados como señal. Una de las ventajas de este método es que también puede obtener una estimación de confianza de su predicción gracias a la desviación estándar de sus 20 resultados.

0 votos

¿hay alguna fuente que pueda citar?

0 votos

@user23564 esta técnica se utiliza en un artículo publicado por un equipo quant de un banco importante sin embargo no se me permite citar ya que el artículo es sólo para clientes. Aparte de eso creo que es suficientemente intuitivo....

1voto

BigCanOfTuna Puntos 210

Las soluciones estocásticas son una propiedad inevitable de los métodos estocásticos, en particular de los métodos de optimización. Véase, por ejemplo, la sección 3 de Una revisión de los métodos de optimización heurística en econometría . En general, no es posible deshacerse de la aleatoriedad; hay que Hay que analizarla, observando y analizando distribuciones (por ejemplo, de carteras) en lugar de números individuales. Véase, por ejemplo Un análisis empírico de los criterios alternativos de selección de carteras (del que soy coautor).

La convergencia significa (en el mejor de los casos) que el algoritmo se ha detenido en una óptimo local. Si tiene varios óptimos, el algoritmo puede detenerse en diferentes óptimos. ¿Ha comparado los valores de las los valores de las funciones objetivo de las ejecuciones repetidas? Incluso si son los mismos: significa que el algoritmo, o más concretamente específicamente, su criterio de selección (=función objetivo objetivo) no puede diferenciar entre diferentes soluciones. ¿Podría modificar el modelo, por ejemplo, añadiendo más restricciones?

0 votos

Cuando te refieres a las restricciones, ¿sería sólo en términos restricciones de los hiperparámetros? Quería asegurarme de que no 'detener demasiado pronto, así que había aumentado el modelo se ejecuta de manera significativa con una buena cantidad de varianza en las conjeturas iniciales. Voy a ejecutar el modelo con diferentes criterios de parada, así, ver cómo afecta el modelo.

0 votos

No, me refería a las restricciones en su modelo; como las restricciones de diversificación. Eso podría ser útil si sus diferentes soluciones en realidad corresponden al mismo valor de la función objetivo.

1voto

Sbennett Puntos 11

La mejor apuesta para ti es utilizar el aprendizaje ensamblado, como alguien con experiencia en las competiciones de Kaggle, la mejor manera de replicar un buen rendimiento en el Private Learderboard es ensamblar tantos algoritmos juntos. Esto incluye intra e inter ensamblaje. Intra significa ensamblar los mismos algoritmos (por ejemplo, Xgboost) pero con diferentes parámetros de ajuste. Se pueden elegir los 10 mejores parámetros según los resultados de la validación cruzada para el ensamblaje interno. Algunos participantes también ensamblan diferentes semillas aleatorias de los mismos parámetros, lo que lleva el número total de modelos a más de 500. El segundo es el inter-ensamblaje, en el que se ensamblan diferentes algoritmos (por ejemplo, red neuronal, bosque aleatorio y xgboost), la forma de elegir estos algoritmos es mirando dos cosas: 1) La precisión de validación cruzada para cada algoritmo debe estar cerca, 2) La correlación en las predicciones de validación cruzada no debe ser más del 80-90%.

0 votos

Aunque parece una buena respuesta al problema, creo que también introduce una complicación adicional de interpretabilidad del modelo. ¿Alguna idea al respecto? Yo podría ver uno usando la importancia de las características, para ayudar un poco.

1 votos

Creo que la interpretabilidad será difícil incluso si se utiliza un único algoritmo como la red neuronal o Xgboost o bosque aleatorio, muchos de los algoritmos de ML populares no son muy interpretables, que son de caja negra por naturaleza, pero eso no significa que su estrategia de inversión con ellos tiene que ser de caja negra, si se inicia con una buena tesis fundamental para la selección de valores y el uso de los algoritmos de ML como una herramienta en lugar de marco de base, que debe ser bueno.

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