Aprendizaje automático en el trading: teoría, práctica, operaciones y más - página 286
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Y ahora lo veo. En otras palabras, formemos primero, digamos, una red sin maestro. A continuación, escribimos los valores obtenidos en las ponderaciones del clasificador y luego el clasificador se entrena aún más con un maestro. Supongamos que hemos recibido los pesos del ajuste fino guiado por las neuronas, los pesos siguen siendo optimizados????? En otras palabras, mediante el preaprendizaje sin profesor establecemos pesos iniciales para el clasificador que lo llevan al mínimo global. ¿Es así como funciona?
El aprendizaje "profundo" tiene sentido debido a la atenuación (sigmoide) / crecimiento explosivo (hipertangente) de las derivadas durante la retropropagación, cuando las capas llegan a ser significativamente más de 4-5, este problema se sorteó con una "muleta" de preentrenamiento capa por capa mediante autocodificadores o RBM, que esencialmente realizan una selección jerárquica de características no lineales (como el PCA sólo que no lineal y muchas veces), que luego pueden ser fácilmente manejadas por las capas de alto nivel, y luego por el habitual backprop afinar rápidamente todo el sistema por el conjunto de objetivos (con un maestro).
Véase: https://www.youtube.com/watch?v=iowsPfk7uUY
Por supuesto, hay un montón de "expertos" con artículos y se comieron sus perros en ZZ, que saben de memoria qué paquete en R se debe utilizar en todos los casos, así que voy a decir en el aire, nadie me va a creer de todos modos, Las redes neuronales profundas, como la CNN, cuando se entiende cómo funcionan, no se pueden utilizar para la previsión del mercado, porque una jerarquía tan grande de características sólo es necesaria para las imágenes, los vídeos y la PNL, porque hay una gran jerarquía, nuestro mundo está construido así, los objetos están hechos de objetos, etc. lo mismo con la PNL porque el lenguaje es jerárquico. No hay nada de eso en el mercado, tú operas un tipo de marco temporal, lo que pasa en los más pequeños es ruido para ti. Los inversores toman una decisión en un marco temporal, no dependen de lo que hayan decidido los scalpers y los HFT, y mucho menos los hedgers, los arbitrajistas, etc. Y la jerarquía en la red profunda implica coherencia, lo pequeño define lo grande, una avalancha está formada por copos de nieve.
Se ve bien, pero es un poco caro.
1 Me gustaría practicar en algo libre y ver cómo funciona en tiempo real sin lag, y hay una demo con un lag gigantesco.
2 ¿Puede describir en pocas palabras cómo se utiliza dicha señal en el comercio y el MO? Si no es un secreto, cuando se publican noticias importantes, ¿tienes tiempo para operar, o alguien empieza a llegar al mercado un segundo, medio segundo antes y muerde el anzuelo?
1 Par con sitios web.
2 Comprar mejor de lo esperado, vender peor de lo esperado.
El aprendizaje "profundo" tiene sentido debido a la atenuación (sigmoide) / crecimiento explosivo (hipertangente) de las derivadas durante la retropropagación, cuando las capas llegan a ser significativamente más de 4-5, este problema se sorteó con una "muleta" de preentrenamiento capa por capa mediante autocodificadores o RBM, que esencialmente realizan una selección jerárquica de características no lineales (como el PCA sólo que no lineal y muchas veces), que luego pueden ser fácilmente manejadas por las capas de alto nivel, y luego por el habitual backprop afinar rápidamente todo el sistema por el conjunto de objetivos (con un maestro).
Véase: https://www.youtube.com/watch?v=iowsPfk7uUY
Por supuesto, hay un montón de "expertos" con artículos y se comieron sus perros en ZZ, que saben de memoria qué paquete en R se debe utilizar en todos los casos, así que voy a decir en el aire, nadie me va a creer de todos modos, Las redes neuronales profundas, como la CNN, cuando se entiende cómo funcionan, no se pueden utilizar para la previsión del mercado, porque una jerarquía tan grande de características sólo es necesaria para las imágenes, los vídeos y la PNL, porque hay una gran jerarquía, nuestro mundo está construido así, los objetos están hechos de objetos, etc. lo mismo con la PNL porque el lenguaje es jerárquico. No hay nada de eso en el mercado, tú operas un tipo de marco temporal, lo que pasa en los más pequeños es ruido para ti. Los inversores toman una decisión en un marco temporal, no dependen de lo que hayan decidido los scalpers y los HFT, y mucho menos los hedgers, los arbitrajistas, etc. Y la jerarquía en la red profunda implica coherencia, que lo pequeño define lo grande, los copos de nieve conforman la avalancha.
El aprendizaje "profundo" tiene sentido debido a la atenuación (sigmoide)/crecimiento explosivo (hipertangente) de las derivadas durante la retropropagación, cuando las capas llegan a ser significativamente más de 4-5, este problema se sortea con una "muleta" de preaprendizaje capa por capa mediante autocodificadores o RBM, que esencialmente realizan una selección jerárquica de características no lineales (como el PCA sólo que no lineal y muchas veces), que luego pueden ser fácilmente manejadas por las capas de alto nivel, y luego por el habitual backprop afinar rápidamente todo el sistema por el conjunto de objetivos (con un maestro).
Véase: https://www.youtube.com/watch?v=iowsPfk7uUY
Por supuesto, hay un montón de "expertos" con artículos y se comieron sus perros en ZZ, que saben de memoria qué paquete en R se debe utilizar en todos los casos, así que voy a decir en el aire, nadie me va a creer de todos modos, Las redes neuronales profundas, como la CNN, cuando se entiende cómo funcionan, no se pueden utilizar para la previsión del mercado, porque una jerarquía tan grande de características sólo es necesaria para las imágenes, los vídeos y la PNL, porque hay una gran jerarquía, nuestro mundo está construido así, los objetos están hechos de objetos, etc. lo mismo con la PNL porque el lenguaje es jerárquico. No hay nada de eso en el mercado, tú operas un tipo de marco temporal, lo que pasa en los más pequeños es ruido para ti. Los inversores toman una decisión en un marco temporal, no dependen de lo que hayan decidido los scalpers y los HFT, y mucho menos los hedgers, los arbitrajistas, etc. Y la jerarquía en la red profunda implica coherencia, que lo pequeño define lo grande, los copos de nieve forman una avalancha.
Por alguna razón, la conversación se desliza constantemente hacia una discusión sobre los méritos y deméritos de uno u otro modelo.
Aunque mi experiencia no es tan amplia, la contribución de los modelos por sí mismos al éxito de las operaciones es muy pequeña.
Es la definición del objetivo y sus predictores lo que lo define.
Sobre el ejemplo de ZZ, he intentado muchas veces demostrar que incluso una variable objetivo tan obvia, ilustrativa y hermosa como ZZ no es la misma y tiene obstáculos insuperables al examinarla más de cerca.
Si hablamos de predictores, es bastante obvio para mí, como persona que se ha dedicado a la economía toda su vida, que:
Si uno se concentra únicamente en resolver estos dos fundamentos para la predicción económica y de divisas, entonces el éxito sólo vendrá de estos dos parámetros. Y la selección del modelo que mejor se ajusta al objetivo y a sus predictores puede mejorar sólo marginalmente el rendimiento, puede dar algunas consideraciones válidas sobre la vida del modelo sin reentrenamiento.
Una vez más, pido que se centren en la variable objetivo y en la justificación de los predictores para esta variable objetivo concreta.
PS.
Entrar en las interrelaciones de los pares de divisas. Me ha dado unos resultados sorprendentes. En particular:
Entrando en la interrelación de los pares de divisas. Me ha dado unos resultados sorprendentes. En particular:
Por alguna razón, la conversación deriva constantemente hacia una discusión sobre los méritos y deméritos de ciertos modelos.
Aunque mi experiencia me dice que la contribución al éxito del comercio es muy pequeña.
Es la definición del objetivo y sus predictores lo que lo define.
Sobre el ejemplo de ZZ, he intentado muchas veces demostrar que incluso una variable objetivo tan obvia, ilustrativa y hermosa como ZZ no es lo mismo y tiene obstáculos insuperables al examinarla más de cerca.
Si hablamos de predictores, es bastante obvio para mí, como persona que se ha dedicado a la economía toda su vida, que:
Si uno se concentra únicamente en resolver estos dos fundamentos para la predicción económica y de divisas, entonces el éxito sólo vendrá de estos dos parámetros. Y la selección del modelo que mejor se ajusta al objetivo y a sus predictores puede mejorar sólo marginalmente el rendimiento, puede dar algunas consideraciones válidas sobre la vida del modelo sin reentrenamiento.
Una vez más, pido que se centre en la variable objetivo y en la justificación de los predictores para esta variable objetivo en particular.
PS.
Entrar en las interrelaciones de los pares de divisas. Me han dado unos resultados sorprendentes. En particular:
Mihail Marchukajtes:
Estoy de acuerdo con usted, pero me gustaría hacer una corrección. En primer lugar, me gustaría aclarar el primer punto. No para relacionarse con el objetivo, sino para ser la razón del mismo. Es decir, ha cambiado el predictor, ha cambiado el objetivo, y no al revés. Y entonces el segundo punto simplemente se cae. No es necesario anticiparse. Basta con que la entrada sea la causa de la salida. Y de nuevo, todo el mundo se olvida de dónde trabajas. Lo principal en la bolsa es el precio. Encuentre las entradas que son la causa de los cambios de precios y cualquier TS, le aseguro, absolutamente cualquier TS funcionará como debería.
=================================================================================
Este es un punto absolutamente correcto. Sólo que yo lo reformularía: el objetivo debe ser generado por el o los predictores.
Sin embargo, no tienes una respuesta a la pregunta de cómo implementarlo usando R, si he entendido bien.
La respuesta no es tan sencilla. Aquí hay una forma, por ejemplo, con una neurona, pero hay que entender cómo funciona una neurona, qué fórmulas tiene, etc.
Supongamos que hay una neurona simple, con cuatro entradas, tres perceptrones en una capa oculta y una salida. Una neurona de este tipo, en términos matemáticos, funcionaría así:
double sigmoid(double x)
{
return 1.0 / (1.0 + exp(-x));
}
double NeuralNetwork(double* input, double* bias, double* weight){
double perc_output[3]; //временный массив для хранения промежуточных результатов каждого перцептрона
double perc_output[0] = sigmoid(bias[0] + input[0] * weight[0] + input[1] * weight[1] + input[2] * weight[2] + input[3] * weight[3]);
double perc_output[1] = sigmoid(bias[1] + input[0] * weight[4] + input[1] * weight[5] + input[2] * weight[6] + input[3] * weight[7]);
double perc_output[2] = sigmoid(bias[2] + input[0] * weight[8] + input[1] * weight[9] + input[2] * weight[10] + input[3] * weight[11]);
double result = sigmoid(bias[3] + perc_output[0] * weight[12] + perc_output[1] * weight[13] + perc_output[2] * weight[14]);
return result;
}
Ahora puede tomar una tabla con ejemplos de entrenamiento, y encontrar el resultado para cada ejemplo
double nn_bias[4]; //массив сдвигов, на текущем этапе тут будут рандомные значения
double nn_weight[15]; //массив весов, на текущем этапе тут будут рандомные значения
//для всех обучающих примеров находим по очереди результат нейронки. При этом массивы nn_bias и nn_weight не должны меняться
double results[trainSampleCount];
// trainSampleCount = число обучающих примеров
for(int i=0; i<trainSampleCount; i++){
nn_input = trainSamples[i]; //синтаксис реально не такой, нужно из обучающей таблицы взять i-тую строку и запихнуть в этот массив nn_input
results[i] = NeuralNetwork(nn_input, nn_bias, nn_weight);
}
A continuación, por ejemplo, se traza el beneficio de las predicciones en la matriz de resultados, y se evalúa.
El código anterior se puede meter en el optimizador. El optimizador debe encontrar valores adecuados de pesos y desplazamientos en las matrices nn_bias y nn_pesos:
1) intercambiar los valores de nn_bias y nn_weight según sus algoritmos
2) encontrar los resultados de todos los ejemplos de entrenamiento
3) trazar el gráfico de la operación
4) estimar el gráfico comercial, utilizar esta estimación como valor de aptitud para los siguientes pasos de optimización
5) Repita los pasos 1-4 del algoritmo de optimización hasta que el gráfico de beneficios sea aceptable
Eso es todo, pero hay un matiz: los optimizadores que he probado no pueden manejar los pesos, sólo encuentran algún mínimo local cuando todos los resultados son iguales a 0,5 para minimizar el error medio y se quedan atascados en él. Tienes que aplicar algún truco aquí, no he llegado más lejos.
Cuanto más compleja sea la estructura de las neuronas, mayor será el número de pesos y más difícil será para el algoritmo de optimización seleccionarlos, en neuronas grandes simplemente se estancan y casi no mejoran el resultado inicial.
Tienes que aplicar algún tipo de truco aquí.
El truco es realmente conocido, sólo que no he visto ningún software para implementarlo. Derivados.
La neurona, el trazado de la balanza y la evaluación de los gráficos son fórmulas. Y así se pueden encontrar las derivadas de nn_bias y nn_weight con respecto a la estimación final.
En algún vídeo de formación sobre MO el conferenciante hablaba de los nuevos lenguajes de programación del futuro, por ejemplo alguien en algún lugar está intentando hacer un lenguaje con cálculo automático de derivadas para cualquier variable dentro de cualquier fórmula compleja (no por recálculo con un pequeño desplazamiento de valor, sino analíticamente). Este es el tipo de cosas que ayudarían.
Es decir, normalmente se toma un ejemplo de entrenamiento, y para cada peso se determina analíticamente cuánto mejora el resultado, y el peso se aumenta o disminuye en consecuencia. Tenemos que hacer lo mismo, pero no un ejemplo a la vez, sino para todos, y la derivada no se busca para los resultados de entrenamiento uno por uno, sino inmediatamente para la evaluación final del gráfico.
Y una pequeña desventaja - todo esto en esta forma no ayudará en el comercio. Sólo ajustaremos los pesos para el gráfico ideal, obtendremos un 100% de sobreentrenamiento y caeremos en picado en los nuevos datos. Para obtener un beneficio real habrá que trastear con la estructura de las neuronas, al final será algo así como una red convolucional probablemente.