Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 897

 
Aleksey Vyazmikin:

evaluación de la oob (out of bag)

 
Maxim Dmitrievsky:

estimación de oob (out of bag)

He leído sobre este método aquíhttps://habr.com/company/ods/blog/324402/ pero no pude ver cómo la estimación puede afectar a la búsqueda de un patrón en los datos que se modifican. Tal vez no estoy hablando correctamente, pero aquí hay un ejemplo simple en una muestra que tenemos, digamos, un patrón como este

"

1+2=3

...

1+2=3,5

...

1+2=3,8

...

1+2=3,5

...

1+2=3

"

"..." - no es un periodo de tiempo definido después del cual una norma cambia. Incluso si lo ideal es que haya un patrón de cambios de reglas. ¿Cómo pueden encontrar esta regularidad diciendo que una regla se cambiará en n líneas de muestra y luego n*x reglas volverán a su estado original? ¿Y si la naturaleza del cambio de regla no es sólo un intervalo de tiempo, sino la influencia de otras circunstancias cuyos datos están en la muestra, pero la regularidad de su influencia sólo puede estimarse por la secuencia de eventos (es decir, por el orden en que se presenta cada fila con datos)? Los bosques están sacando trozos por diferentes métodos, ¿cómo pueden ver no sólo la regularidad horizontal (conjunto de predictores), sino también la vertical (cambio de predictores con respecto al pasado n)?

 
Aleksey Vyazmikin:

Responderé más tarde en la noche... un repentino antojo de pizza y blondie

 
Maxim Dmitrievsky:

Responderé más tarde esta noche... de repente me apetece pizza y blondie

La primavera - podría explicar la brusquedad :)

Esperaré una respuesta, gracias por tomarse el tiempo de hacer mis probablemente estúpidas preguntas.

 
Aleksey Vyazmikin:

La primavera - puede explicar la brusquedad :)

Estoy deseando saber de ti, gracias por tomarte el tiempo de hacer mis probablemente tontas preguntas.

Al contrario, buenas preguntas lógicas, yo mismo me las hice hace poco.

 
Aleksey Vyazmikin:

"..." - no es un periodo de tiempo definido después del cual una norma cambia. Incluso si lo ideal es que haya un patrón de cambios de reglas. ¿Cómo puede el andamiaje encontrar esta regularidad diciendo que una regla será cambiada en n líneas de muestra y luego en n*x líneas la regla volverá a su estado inicial? ¿Y si la naturaleza del cambio de regla no es sólo un intervalo de tiempo, sino la influencia de otras circunstancias cuyos datos están en la muestra, pero la regularidad de su influencia sólo puede estimarse por la secuencia de eventos (es decir, por la secuencia de presentación de cada fila con datos)? Los bosques sacan trozos utilizando diferentes métodos, ¿cómo pueden ver no sólo el patrón horizontal (conjunto de predictores), sino también el vertical (cambio en los predictores en relación con el pasado n)?

Bueno, no es exactamente un cambio de patrón. Más bien una aproximación más gruesa. Si la muestra es lo suficientemente grande, por ejemplo, se entrena el andamio en subconjuntos aleatorios, se sacan trozos, sí, y en oob (los trozos restantes) se valida el modelo, y se comparan los errores. Si los errores son +- iguales, entonces el andamiaje no está sobreentrenado, por lo que hay una mayor probabilidad de predicciones correctas en el futuro. Si el error en oob no es satisfactorio, podemos jugar un poco con los ajustes, por ejemplo, reducir el subconjunto de entrenamiento (añadir más ruido al modelo) y aumentar el subconjunto de validación. Al hacerlo, el modelo ya se aproximará peor a las muestras de entrenamiento, el error será mayor, pero en los nuevos datos existe la posibilidad de obtener exactamente el mismo error, es decir, el modelo será estable en ambas submuestras. Y como las propias submuestras se eligen aleatoriamente, se cubre un gran número de incógnitas en la submuestra de entrenamiento. Obviamente, esto no es una panacea, pero da más flexibilidad para trabajar en contraste con los árboles. Lo mismo para los conjuntos de NS.

 
Maxim Dmitrievsky:

Bueno, no es exactamente un cambio de patrón. Más bien una aproximación más gruesa. Si la muestra es lo suficientemente grande, por ejemplo, entonces el andamio se entrena en subconjuntos aleatorios, sacando trozos, sí, y en oob (los trozos restantes) se valida el modelo, y se comparan los errores. Si los errores son +- iguales, entonces el andamiaje no está sobreentrenado, por lo que hay una mayor probabilidad de predicciones correctas en el futuro. Si el error en oob no es satisfactorio, podemos jugar un poco con los ajustes, por ejemplo, reducir el subconjunto de entrenamiento (añadir más ruido al modelo) y aumentar el subconjunto de validación. Al hacerlo, el modelo ya se aproximará peor a las muestras de entrenamiento, el error será mayor, pero en los nuevos datos existe la posibilidad de obtener exactamente el mismo error, es decir, el modelo será estable en ambas submuestras. Y como las propias submuestras se eligen aleatoriamente, se cubre un gran número de incógnitas en la submuestra de entrenamiento. Obviamente, no es la panacea, pero da más flexibilidad para trabajar en contraste con los árboles simples. Lo mismo ocurre con los conjuntos NS.

Bueno, más o menos así lo pensé, si primitivamente, simplemente comprueba las reglas, en la muestra de cada árbol condicionalmente independiente, y debido al error de cruce se compra, el sobreentrenamiento, pero de la misma manera cortó todas las regularidades temporales, la causalidad de los cuales no se pudo establecer (y fue posible establecer esta causalidad sólo por casualidad, si el árbol comprobó su resultado con esa muestra, donde se conservó la regularidad).

Y si cortamos la muestra y entrenamos en trozos más pequeños (digamos que cortamos un año en 12 meses y tomamos 2-3 años), y luego, en el caso del árbol, recogemos todas las reglas de cada árbol con mayor peso y las emparejamos con 24 muestras (si una regla funciona para menos del x% de la muestra, la desechamos), ¿no podemos ver que diferentes reglas funcionarán para diferentes períodos? Entonces podemos hacer la suposición de la ciclicidad, que debe ser el caso en los mercados financieros, debido al calendario (informes financieros).

Por ejemplo mucha gente escribe sobre el análisis de correlación como método preliminar para estimar los predictores, pero cuando miro la tabla no puedo entender, la correlación es pequeña, pero el árbol da más valor a este elemento después de ser construido. ¿Por qué ocurre esto?


Si tomamos un predictor llamado "arr_TimeH" y pensamos en él, es obvio que podemos esperar un comportamiento diferente del mercado a diferentes horas, por ejemplo a las 10 de la mañana en la apertura de la bolsa habrá un fuerte movimiento, ya que se procesa la información (eventos acumulados) desde el momento de la ausencia de negociación, y en otros momentos la situación puede ser diferente, la misma noticia prevista puede ser publicada, después de lo cual un fuerte movimiento del mercado es muy probable, por otro lado hay una sesión de la tarde, donde el movimiento a menudo cambia contra el día anterior, puede ser menos amplitud, por lo que el tiempo obviamente influenciado. Por eso creo que se deberían utilizar métodos de MO para operar en lugar de confiar en las tradiciones ya establecidas, incluyendo el preprocesamiento de datos.


P. S. Dibujé las tablas en Photoshop, las marqué a mi antojo, para mostrar los colores, y me quedé de piedra cuando vi que el color de las casillas coincidía con el de las escalas de significación: ¡sube al tono! ¿Cómo puede ser eso? Resulta que le presté atención de forma inconsciente y eso afectó a mi elección. Quizá la gente opere de forma intuitiva de la misma manera, es decir, utiliza un sistema del que no se da cuenta.

 
Aleksey Vyazmikin:

Por ejemplo, mucha gente escribe sobre el análisis de correlación como método preliminar para evaluar los predictores, pero cuando miro la tabla no puedo entender que la correlación sea pequeña, pero el árbol da más importancia a este elemento después de construirlo. ¿Por qué ocurre esto?

Tal vez según la combinación de sus predictores temporales (mes, semana, día, hora...) el árbol simplemente se dirige a una determinada barra de COMPRA/VENTA.

Es como memorizar el tiempo de las grandes barras y utilizarlo para operar de forma rentable en el historial, aunque la correlación de este atributo con el movimiento del precio será casi nula.

 
Ivan Negreshniy:

Tal vez por la combinación de sus predictores de tiempo (mes, semana, día, hora...) el árbol sólo va a una barra particular de COMPRA/VENTA.

Es como memorizar las barras de tiempo y utilizarlas para operar en el historial, aunque la correlación de este atributo con el movimiento del precio será casi nula.

Tal vez sí, pero sólo hay dos predictores: el día de la semana y la hora, es decir, podemos obtener 5*14=70 grupos con ese atributo, mientras que la muestra contiene 403933 líneas, es decir, 5770 líneas caen en un grupo, por otro lado, 33000 líneas objetivo, es decir, 471 líneas objetivo caen en un grupo. Y si además tenemos en cuenta que hay otros predictores, ya tendremos muchos grupos. Es como cortar una manzana en rodajas, marcar las rodajas y poner en una tabla aquellas rodajas con más de un rasgo que las otras, pero como hay muchas rodajas, habrá rodajas con un solo rasgo. Así pues, se plantea la cuestión de cuántos predictores debe haber para un tamaño de muestra determinado. ¿Qué tamaño deben tener las rodajas de manzana?

Bueno, hay un patrón en sí mismo en los días y horas, y está influenciado por factores cronométricos - apertura de la sesión de negociación, período de sesiones de negociación, noticias (económicas/estadísticas, que en su mayoría se publican en el mismo momento y día de la semana).

 
Aleksey Vyazmikin:

Puede ser, pero sólo hay dos predictores - día de la semana y hora, por lo que podemos obtener 5*14=70 grupos por este criterio, y la muestra tiene 403933 líneas, por lo que el grupo obtiene 5770 líneas, por otro lado el objetivo 33000, por lo que obtenemos 471 líneas objetivo para cada grupo. Y si además tenemos en cuenta que hay otros predictores, ya tendremos muchos grupos. Es como cortar una manzana en rodajas, marcar las rodajas y registrar las que tienen más de un rasgo que las otras, pero como hay muchas rodajas, habrá rodajas con un solo rasgo. Así pues, se plantea la cuestión de cuántos predictores debe haber para un tamaño de muestra determinado. ¿Qué tamaño deben tener las rodajas de manzana?

Pero hay un patrón en sí mismo, y está influenciado por factores cronométricos - apertura de una sesión de negociación, período de sesiones de negociación, noticias (económicas/estadísticas, que se publican en su mayoría en el mismo momento y día de la semana).

Maxim Dmitrievsky, ¿cómo se resuelve este problema?

En general, ¿cuáles son las opciones? Las piezas de la manzana pueden ser diferentes.
Para cada ns del conjunto añadir algún contexto y utilizar estos contextos en algún ns de control?
Por contexto me refiero, por ejemplo, a un enlace con alguna definición básica, concepto, predictor y además algunos datos...

Razón de la queja: