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

 
mytarmailS:

Alexei, deberías aprender python o r-core, intentar construir algo allí... Créeme, mil preguntas desaparecerían...

Qué buen deseo, y sería útil aprender un par de lenguas extranjeras, y dominar todas las demás competencias, que no dependerían de otras personas. Sin embargo, no tengo talento para todo, y me doy cuenta de que no conseguiré grandes resultados en la codificación, y se gastará demasiado esfuerzo.

mytarmailS:

¿Qué sentido tiene comprobar la eficacia de los métodos de selección de rasgos si ya están probados y funcionan?

La cuestión aquí era más bien la eficacia del método, es decir, en qué medida puede mejorar finalmente el resultado en comparación con la muestra de alimentación sin excluir los predictores. Es decir, el experimento real.


mytarmailS:

El problema no está en el rechazo de los rasgos, está en los propios rasgos, si alimentas 10 indicadores, luego seleccionas hasta la saciedad y obtendrás el mismo resultado de CUALQUIER algoritmo de selección...

Ahora mismo tengo unos 5 predictores, por eso es interesante este enfoque.

mytarmailS:

¿Oíste en el vídeo? Están seleccionando entre decenas de miles de características, e incluso mencionan el MSUA donde hablan de crear y enumerar miles de millones de características

De eso es de lo que deberíamos hablar, de sistemas que generan millones de ideas y las comprueban automáticamente, esa es la esencia, esas son las decisiones individuales, y la selección de rasgos es la pequeña parte final del proceso y no hay nada interesante en ella, coges cualquier algoritmo y adelante, no hay nada que hablar, no es interesante.

Sólo estoy trabajando con un gran número de características, y desarrollando métodos para generarlas a partir de un patrón. El proceso de binarización de los rasgos, posiblemente con el mantenimiento de diferentes indicadores dentro del nuevo predictor, lo que haría 50000 rasgos de 5000, y necesitan ser investigados para las relaciones mutuas para crear nuevos rasgos saturados a partir de los cuales ya se construirá el modelo.

En definitiva, no sé por qué una visión tan primitiva de mi actividad...

 
Aleksey Vyazm

De todos modos, no sé por qué tienes una visión tan primitiva de mi actuación...

Alexey, no entiendes que todos tus 5k signos binarios pueden ser sustituidos por 2-3 componentes principales, es decir, 2-3 signos y todo)) pero tienes que hacerlo para saber...

Tampoco entiendes que tu modelo genial con 5k de características puede ser sólo una característica entre cientos de otras para un modelo de mayor rango, que a su vez será una característica para un modelo de rango aún mayor...

Estas son las categorías en las que estoy pensando actualmente.


Mira Ivakhnenko MHUA, qué elaborados y profundos los conceptos, cuando lo leo me siento como un alumno de primer grado en MO...

 
mytarmailS:
Alexei, cómo no puedes entender que todos tus 5k atributos binarios pueden ser sustituidos por 2-3 -componentes principales, es decir, 2-3 atributos y todo)) pero tienes que hacerlo para saber...

¿De dónde sacas esas conclusiones sobre mi comprensión o no? El tema de la MGUA no lo he tocado porque no hay experiencia real de su aplicación. ¿Estás listo para reducir mis señales a 2-3? Me interesaría verlo y compararlo con mi enfoque. Como ya tienes todo afilado para ello, no creo que sea un problema, ¿verdad?

mytarmailS:
Además, no entiendes que todo tu modelo genial con 5k atributos puede ser sólo un atributo entre cientos de otros para un modelo de mayor rango, que a su vez será un atributo para un modelo de rango aún mayor...

Estas son las categorías en las que estoy pensando ahora.

Lo he puesto en práctica durante mucho tiempo, sacando hojas de los modelos - son un componente saturado para los modelos más globales.

Mucho de lo que he ideado tiene otros nombres y está implementado para uso general, pero cuando se hace todo desde cero, hay una comprensión subyacente de cómo y por qué funciona, no sólo la teoría.

 
mytarmailS:
Leído el mismo Ivakhnenko MSUA, qué elaborados y profundos son los conceptos, cuando lo leo me siento como un niño de primer grado en MO...

Tengo que hacer cosas - ya tengo suficientes pensamientos para comprobar, necesito codificar y verificar.

 
mytarmailS:

Tampoco te das cuenta de que todo tu modelo genial con 5k características puede ser sólo una característica entre cientos de otras para un modelo de mayor rango, que a su vez será una característica para un modelo de rango aún mayor...

¿Fan de la película Matrix?

 

He estado pensando en cómo mejorar el método de selección de predictores/atributos/características mediante el análisis del modelo resultante.

Tengo algunas ideas para la implementación del algoritmo, pero decidí compartirlas con la respetada comunidad, tal vez habrá algunas críticas constructivas o adiciones/refinamientos al algoritmo antes de comenzar a trabajar en la implementación de este algoritmo. Es interesante pensar que nada funcionará con la justificación.


Selección de predictores por frecuencia de uso (importancia de las características) al crear un modelo CatBoost
.

La idea es que cada algoritmo tiene sus propias peculiaridades de construcción de árboles y seleccionaremos aquellos predictores que sean más utilizados por el algoritmo, en este caso CatBoost.

Sin embargo, para estimar la uniformidad en la escala temporal, utilizaremos múltiples muestras y agregaremos sus datos en una sola tabla. Este enfoque eliminará los eventos aleatorios que tienen una fuerte influencia en la elección del predictor en uno de los modelos. Las regularidades sobre las que se construye el modelo deben darse en toda la muestra, lo que puede facilitar la clasificación correcta en los nuevos datos. Esta característica es aplicable a los datos del mercado, es decir, a los datos sin integridad, incluida la ciclicidad oculta, es decir, no temporal, sino basada en eventos. Al hacerlo, es conveniente penalizar los predictores que no se encuentren en el 30%-50% superior en uno de los gráficos, lo que permitirá seleccionar los predictores que se demandan con mayor frecuencia en los modelos de los distintos horizontes temporales.

Además, para reducir el factor de aleatoriedad deberíamos utilizar modelos con diferentes valores de Seed, creo que debería haber de 25 a 100 modelos de este tipo. Si el coeficiente debe añadirse en función de la calidad del modelo obtenido o simplemente para promediar todos los resultados por predictores, aún no lo sé, pero creo que deberíamos empezar con la simple, es decir, sólo para promediar.

La cuestión de la utilización de una tabla de cuantificación es importante, puede ser crucial en la selección de los predictores. Si la tabla no es fija, cada modelo creará su propia tabla para la submuestra, lo que imposibilita la comparación de los resultados, por lo que la tabla debe ser común a todas las muestras.

Es posible obtener una tabla de cuantificación:

  1. Estableciendo hiperparámetros para CatBoost sobre el tipo y el número de particiones en cuantos de la muestra de entrenamiento completa, y guardando los resultados en csv.
  2. Establezca los hiperparámetros para CatBoost por tipo y número de particiones en quanta seleccionando una de las áreas de muestra, digamos la mejor, y guarde los resultados en csv.
  3. Obtenga una tabla utilizando un script independiente que seleccione las mejores opciones de un conjunto de tablas.
Las tablas obtenidas previamente se utilizan para cada muestra mediante la carga forzada de la tabla durante el entrenamiento.
 
Puedes conectar los valores de la forma al arranque y ver la interacción de las características en la salida sobre cualquier dato, es para los que les gusta escarbar en la ropa interior, como Alexei :) También hay bibliotecas similares, parecidas a Lime e independientes del modelo. Por supuesto, si se analizan cientos de signos sin sentido, cualquier empresa de este tipo está condenada. Es una tarea sencilla y nadie te la hará gratis, porque es una increíble pérdida de tiempo con un resultado conocido.
 
Maxim Dmitrievsky:
Puedes conectar los valores de shap a bootstrap y ver la interacción de las características en la salida sobre cualquier dato, es para los que les gusta indagar en la ropa interior, como Alexey :)

La cuestión de las métricas está abierta, hay diferentes variantes - deberíamos probar, cuál es mejor - impacto en el modelo, número de divisiones, número de ejemplos correctos después de la división - las métricas son diferentes. La cuestión está en la corrección de su uso para la tarea en cuestión. Por cierto, que yo recuerdelos valores de shap no se podían utilizar en las primeras construcciones para la línea de comandos, pero de esta manera se puede hacer un script para la visualización.

 
Maxim Dmitrievsky:
Por supuesto, si se analizan cientos de signos sin sentido, cualquier esfuerzo de este tipo está condenado. Es una tarea sencilla, y es poco probable que alguien lo haga gratis, ya que es una increíble pérdida de tiempo con un resultado conocido.

Por qué el pesimismo: la cuestión es precisamente generar un conjunto de atributos, en teoría adecuados para cualquier objetivo/estrategia básica y seleccionar el mejor de ellos para un objetivo concreto.

¿Dudas sobre el aumento de la calidad de la clasificación tras la manipulación?
 
Aleksey Vyazmikin:

Por qué el pesimismo: la cuestión es precisamente generar un conjunto de atributos, en teoría adecuados para cualquier objetivo/estrategia básica y seleccionar el mejor de ellos para un objetivo concreto.

¿Dudas de la ganancia de calidad en la clasificación tras la manipulación?
No veo la imagen completa de por qué esto podría funcionar.
Razón de la queja: