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

 
Maxim Dmitrievsky:

Por qué pensar tan estrechamente, todo el mundo aquí escribe como si nunca hubiera visto nada más dulce que una zanahoria )) Joder con los predictores, enseñar a la neurona a encontrar esos mismos predictores, enseñar a la neurona a enseñar a la neurona, experimentar :) Naturalmente, es muy estúpido coger simplemente indicadores, alimentarlos a la entrada y a la salida por un zigzag, no sé por qué todo el mundo lo discute :)

Ojalá pudiera, pero...

Por ejemplo, las redes neuronales convolucionales poseen parcialmente esa "habilidad", pueden aprender el preprocesamiento (filtrado) por sí mismas, pero están muy estrechamente especializadas, como los descendientes de Neo-Cognitron Focus, diseñados como un "análogo" del ojo de la retina, entrenados por backprops, CNN en realidad para las imágenes no es cosa trivial tampoco? Desgraciadamente, desde el punto de vista de la ingeniería, desarrollar un sistema milagroso para que lo hagan todo ellos mismos es una utopía ingenua, es mucho más fácil hacer soluciones especiales para una tarea concreta, que de todas formas puede llevar años de trabajo en equipo, mientras que el SRS está más cerca de algo filosófico y humanitario.

 
Aliosha:

Ojalá pudiera, pero...

Por ejemplo, las redes neuronales convolucionales poseen parcialmente esa "habilidad", pueden aprender el preprocesamiento (filtrado) por sí mismas, pero están muy estrechamente especializadas, como los descendientes de Neo-Cognitron Focus, diseñados como un "análogo" del ojo de la retina, entrenados por backprops, CNN en realidad para las imágenes no es cosa trivial tampoco? Hay un montón de números mágicos y arquitecturas chamánicas en la configuración, un paso a la izquierda, un paso a la derecha y todo se rompe, es decir, es un ajuste muy fino de la tarea, pero no una solución universal para todo y todo. Por desgracia, desde el punto de vista de la ingeniería, para desarrollar un sistema de milagro que harían todo ellos mismos - utopía ingenua, es mucho más fácil de hacer soluciones individuales, que de todos modos puede tomar años de trabajo en equipo, y FTI está más cerca de algo filosófico, humanitaria.


Pero creo que es posible hacer una buena herramienta de auto-optimización, que no funcionará perfectamente siempre, pero de vez en cuando lo hará.

Pero obviamente no funcionará con indicadores estándar y una salida en zigzag :) A mí me parece incluso un juego de niños, aunque sea como ejemplo.

 
Maxim Dmitrievsky:

no es que no estén correlacionadas, sino que se contradicen a medida que aumenta la muestra, sí, como resultado o bien la salida es siempre 0 o 1, o 0,5... además para 1 neurona. Así que si >0,5 vender y <0,5 comprar. Usted establece predictores correctos (en su opinión) y respuestas correctas, es decir, si psi está sobrevendido y el mercado crece en las próximas n barras, entonces salida 0, y si psi está sobrecomprado y el mercado baja, entonces salida 0. Pero habrá muchos casos en los que sea al revés y se embote, se mezclen las señales y se entre en trance. Como resultado la salida siempre estará en torno a 0,5 con desviaciones muy pequeñas en una u otra dirección... y ocurrirá con todos los osciladores, porque no son predictores, sólo derivan del precio :)
Debería comprar si es > 0,8 y vender si es <0,2. De esta manera, se eliminará el ruido que se encuentra en el centro del rango, es decir, alrededor de 0,5
 
elibrarius:
Hay que comprar si >0,8, si<0,2 vender. De esta manera se elimina el ruido que se encuentra en el centro del rango, es decir, alrededor de 0,5

no lo entiendes )
 
una red neuronal es inteligencia artificial y cualquier sistema de pensamiento no funcionará para nada.... no es estúpido...le ofreces dinero antes del entrenamiento o le prometes un porcentaje de las ganancias, entonces empezará a encontrar patrones reales y a aportar ingresos...
 
Una pregunta para los que llevan mucho tiempo con el tema de la NS.
Redes neuronales en ALGLIB y R - ¿los pesos se recogen de -1 a 1?
 
elibrarius:

Es complicado... Llevaría más tiempo que entender el algoritmo (como en el caso de la correlación K) y escribirlo. Creo que la función de probar todas las entradas, calcular la correlación y filtrar las altamente correlacionadas llevará un par de horas.

Esperemos que con otras soluciones para cribar predictores sea igual de fácil)

¿Existen otras soluciones para encontrar predictores innecesarios?

Echa un vistazo aquí.

A la hora de estimar la importancia de los predictores es importante recordar que se trata de un valor complejo, que no está determinado únicamente por criterios de información. En el artículo di un ejemplo de selección de predictores usando RandomUniformForest para mostrar la importancia de los predictores en diferentes aspectos. En mi opinión, es el paquete más exitoso para este propósito.

En el caso concreto de las redes neuronales, la importancia de los predictores puede determinarse por sus pesos en la primera capa. Este enfoque se utiliza en H2O. Si encuentro tiempo le daré un ejemplo.

Además de la importancia de los predictores, debemos definir los ejemplos de ruido (cadenas). Y ponerlos en una clase separada o eliminarlos del conjunto de entrenamiento. Ver NoiseFilterR

Buena suerte

 
elibrarius:
Una pregunta para los que llevan mucho tiempo con el tema de la NS.
Redes neuronales en ALGLIB y R - ¿los pesos se recogen de -1 a 1?
¿Te refieres a la inicialización de los pesos o?
 

Vladimir Perervenko:
En mi artículo di un ejemplo de selección de predictores usando RandomUniformForest para mostrar la importancia de los predictores en diferentes aspectos.

Sería interesante conocer el algoritmo de cálculo de la importancia en esta función para hacer un análogo en MQL.

Vladimir Perervenko:

En el caso concreto de las redes neuronales, la importancia de los predictores puede determinarse por sus pesos en la primera capa. Este enfoque se utiliza en H2O. Si encuentro tiempo le daré un ejemplo.

Yo también lo he pensado, no es difícil de implementar.

Vladimir Perervenko:

Además de la importancia de los predictores, también debemos definir las muestras de ruido (cadenas). Deberá crear una clase separada para ellos o eliminarlos del conjunto de entrenamiento. Ver NoiseFilterR

Esto es nuevo para mí, gracias por la idea, debería pensar en ello).


Vladimir Perervenko:
¿Se refiere a la inicialización de las escalas o?
Me refiero a toda la gama, en la que están emparejados - de -1 a 1.
El inicial se elige al azar, supongo (opcionalmente en el medio del rango).
 
elibrarius:

Sería interesante conocer el algoritmo de cálculo de importancia en esta función para hacer un análogo en MQL.

Yo también lo he pensado, no es difícil de implementar.

Esto es nuevo para mí, gracias por la idea, tendré que pensarlo).


Me refiero a cuál es el rango completo en el que se emparejan - de -1 a 1.
Supongo que el punto de partida se elige al azar (alternativamente en el medio del rango).

Las redes neuronales son muy sensibles a la inicialización de los pesos. No es una cuestión trivial en absoluto. Hay bastantes formas de inicialización, una de las cuales - el preentrenamiento (utilizado en las redes neuronales profundas) es la más prometedora (IMHO).

Durante el entrenamiento los pesos de las neuronas pueden tomar valores en un amplio rango desde -inf hasta +inf. La regularización y otras técnicas de estabilización se utilizan para evitar estos sesgos, limitando el rango de pesos.

Buena suerte

Razón de la queja: