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

 
elibrarius:
Estaba aserrando a Darch en la R. Encontré un par de errores, los describí en los comentarios. Tras un par de semanas de silencio, este Darch resultó estar en el archivo de CRANa.
Le pedí al desarrollador que arreglara algunas cosas, y lo hizo. Y luego volvió completamente a la versión original, borrando todas las correcciones. Como resultado, todas las modificaciones que utilicé no estaban disponibles.
Conclusión: o bien lo hace todo usted mismo, o bien utiliza productos de primera calidad con muy buena asistencia.

1.Tienes que hacer un fork y alojar todos los cambios. Pueden ser aceptadas o no, pero podrás utilizar tu versión desde tu GitHub.

2. Por supuesto, esta es la opción más fiable.

 
Maxim Dmitrievsky:

Para los que se empeñan en lo complejo pero no entienden lo hermoso que puede ser lo simple

y en inglés, por supuesto, como se pide. No, no lo voy a traducir yo. Hay un enlace a la página web donde se pueden traducir los artículos.


Este interesantísimo informe no se limita a lo simple y lo complejo. Se hace hincapié en el hecho de que utilizando un preprocesamiento complejo se puede reducir la resolución de un problema a modelos simples. Es la confirmación de una simple verdad que no me canso de repetir en mis artículos: "El principal esfuerzo debe dedicarse al preprocesamiento de los predictores, los modelos son secundarios.

El orador es divertidísimo.

Buena suerte

 
Vladimir Perervenko:

Esta interesantísima charla no sólo trata de lo simple y lo complejo. Se hace hincapié en cómo el uso de un preprocesamiento complejo puede reducirse a la resolución de un problema con modelos simples. Es la confirmación de una simple verdad que no me canso de repetir en mis artículos: "El principal esfuerzo debe dedicarse al preprocesamiento de los predictores, los modelos son secundarios.

El orador es divertidísimo.

Buena suerte

XGBOOST tiene pesos de matriz de entrada con pesos de fila. Algunos otros paquetes también lo tienen.
Estaba pensando que podría escribir allí pesos desde 1 (para cadenas frescas) hasta 0,5 para cadenas viejas. Esto aumentaría el impacto de los nuevos datos.
Lo probé y no noté ninguna mejora en particular.

¿Alguien más lo ha probado? ¿Alguna mejora?

 
elibrarius:
XGBOOST tiene una matriz de entrada con pesos de fila. Algunos otros paquetes también lo tienen.
Pensé que podría escribir allí pesos de 1 (para datos frescos) a 0,5 para datos antiguos. Esto aumentaría el impacto de los nuevos datos.
Lo probé y no noté ninguna mejora en particular.

¿Alguien más lo ha probado? ¿Alguna mejora?

Está un poco mal. Tienes, por ejemplo, train[2000, ] y test[500, ]. Se entrena en train con pesos de ejemplo iniciales = 1.0, se hace predicado de test[] un modelo entrenado. En función de la calidad de cada prefijo de prueba se le da un peso. A continuación, combine el entrenamiento y la prueba y forme una nueva muestra de entrenamiento, entrene el modelo, pruébelo y así sucesivamente hasta que todas las muestras de entrenamiento tengan pesos obtenidos de esta manera. Se les puede aplicar un factor de reducción para los bares más antiguos, pero no lo he comprobado. Todo esto es para la clasificación, por supuesto.

now_train <- rbind(train,test)%>% tail(dim(train)[1])

Comprobado con ELM, da buenos resultados.

Buena suerte

 
Vladimir Perervenko:

Eso no es del todo correcto. Tienes, por ejemplo, train[2000, ] y test[500, ]. Entrenar en nrain con pesos de ejemplo iniciales = 1.0, hacer del predicado test[] un modelo entrenado. En función de la calidad de cada prefijo de prueba se le da un peso. A continuación, fusiona el entrenamiento y la prueba y forma una nueva muestra de entrenamiento, entrena el modelo, lo prueba y así sucesivamente hasta que toda la muestra de entrenamiento tenga pesos obtenidos de esta manera. Se les puede aplicar un factor de reducción para los bares más antiguos, pero no lo he comprobado. Todo esto es para la clasificación, por supuesto.

Comprobado con ELM, da buenos resultados.

Buena suerte

Es como en la validación cruzada - dividir los datos en 5-10 partes y poner pesos para cada ciclo hasta que todos los pesos estén establecidos. Creo que deberíamos hacer 2-3 círculos completos para el equilibrio.

Me recuerda a varias iteraciones como en el autoestudio para establecer los mejores pesos de las filas.
 
elibrarius:
Es como la validación cruzada - dividir los datos en 5 -10 partes y poner pesos de parte de las filas cada ciclo, hasta que todos ellos se establecen. Creo que deberíamos hacer 2-3 círculos completos para equilibrarlo.

Me recuerda a varias iteraciones como en el autoestudio para establecer los mejores pesos de las filas.

Es posible comprobarlo con una verificación cruzada.

 
elibrarius:
XGBOOST tiene una matriz de entrada con pesos de fila. Algunos otros paquetes también lo tienen.
Pensé que podíamos escribir allí pesos desde 1 (para los frescos) hasta 0,5 para las cadenas antiguas. Esto aumentaría el impacto de los nuevos datos.
Lo probé y no noté ninguna mejora en particular.

¿Alguien más lo ha probado? ¿Alguna mejora?

bien y sólo se educa bajo los nuevos entonces. Estos pesos son para la alineación de la varianza del modelo en el conjunto de datos, en la regresión logit con la varianza de la variable también se utiliza (si no estoy confundido acerca de lo que estamos hablando)

ninguna mejora conceptualmente significativa, aparte del ajuste del conjunto de datos, debería dar

Si necesita una generalización fiable para la población general sobre una pequeña submuestra, estos son los enfoques bayesianos
 
elibrarius:
XGBOOST tiene una matriz de entrada de pesos con pesos de fila. Algunos otros paquetes también lo tienen.
Estaba pensando que podría poner pesos desde 1 (para datos frescos) hasta 0,5 para datos antiguos. Esto aumentaría el impacto de los nuevos datos.
Lo probé y no noté ninguna mejora en particular.

¿Alguien más lo ha probado? ¿Alguna mejora?

La idea es que estas ponderaciones afecten a la construcción del primer árbol, es decir, casi la misma semilla y el mismo error, diferentes técnicas. Teóricamente, el resultado podría cambiar mucho si se mueven los predictores de la muestra bien separados al fondo en aquellas filas en las que dan la clasificación correcta.

¿No es posible establecer la aplicación del predictor sólo a partir de la división X? Creo que es muy útil encontrar un buen modelo.
 
Maxim Dmitrievsky:

bien y sólo entrenar para los nuevos entonces. Estos pesos son para alinear la varianza del modelo en el conjunto de datos, en la regresión logit con la varianza de la variable también se utiliza (si no me equivoco de lo que estamos hablando)

Cualquier mejora conceptualmente significativa, excepto el ajuste del conjunto de datos, no debería dar

si se necesita una generalización fiable para la población general sobre una pequeña submuestra, son los enfoques bayesianos

Es decir, ¿la alineación se elige por el método sugerido por Vladimir?

 
Aleksey Vyazmikin:

En idea, estos pesos afectarán a la construcción del primer árbol, es decir, casi la misma semilla y el mismo error, diferentes técnicas. Teóricamente, el resultado podría cambiar mucho si desplazamos los predictores de la muestra bien separados al fondo en aquellas filas en las que dan la clasificación correcta.

¿No es posible especificar cómo aplicar un predictor sólo a partir de la división X? Creo que es algo muy útil para buscar un buen modelo.

Estos pesos no sólo en el refuerzo, sino también en el caso de los bosques y NS se puede aplicar. Al parecer, la metodología es común a todos los sistemas del Ministerio de Defensa.
El primer experimento con la disminución de la influencia de los datos antiguos no mostró ninguna mejora.

La prueba se ve mejor cuando se entrena con 30000 líneas que cuando se entrena con 80000 líneas. A 80000 ambas transacciones son menores y el error es mayor. He intentado disminuir el peso proporcionalmente (de 1 para los frescos a 0,5 para los viejos) - los resultados son casi los mismos.


Al parecer, sigue siendo para la alineación de la dispersión, como señaló Maxim, por el método indicado por Vladimir.