Cómo formar correctamente los valores de entrada para el NS. - página 10

 
TheXpert писал (а) >>

No importa, lo siento si me equivoco.

Intentaré explicar con más detalle en qué consiste esta comprobación cruzada, por si este post no ha quedado claro. Supongamos que estamos entrenando una red para un error mínimo. Supongamos que lo probamos en 2007 y obtenemos un resultado intermedio de 0,5. Lo comprobamos en 2008 y obtenemos 0,8. Esta red queda memorizada y seguimos entrenando. Entonces obtuvimos 0,4 para 2007 y lo comprobamos con 0,7 para 2008. Se descartan las redes viejas y se memoriza esta red y se sigue con el entrenamiento. Luego tenemos 0,3 para 2007 y 0,6 para 2008. La antigua red se desecha y se recuerda esta red y se sigue entrenando. Para 2007 - 0,2, para 2008 - 0,8. Esta red no se memoriza, se mantiene la anterior. Se mantendrá en la memoria y se seguirá entrenando. Si no hemos conseguido que baje de 0,6 en 2008, nos quedamos con la red que tiene 0,6 en 2008 y 0,3 en 2007, y no con la que tiene 0,2 o menos en 2007. En efecto, un mayor entrenamiento de la red es un sobreentrenamiento. Esto evita el sobreentrenamiento, aunque no siempre lo salva.

Y como puede ver, las pruebas de avance no tienen nada que ver con esto......)))))

 
TheXpert писал (а) >>

...

Y sobre el código, ¿podrá Neurosolutions o Neuroshel 2 portar el código a MQL4? Voy a escribir un par de funciones, que creo que serán útiles para los habitantes de aquí, y tal vez para mí también. Razón de más para escribir un centenar de líneas de código: me llevará una hora.

No. Mediante la importación de dll/def o la reescritura desde "c".

Voy a escribir un par de funciones, que creo que serán útiles para los habitantes de aquí, y tal vez para mí también. Razón de más para escribir cien líneas de código... es una hora de tiempo.

Sobre todo, si se dedican a "1. Preparación de los datos de entrada. (desplazamiento de la media, descorrelación, ecualización de la covarianza).", entonces muy cool, y si ... otra implementación de NS en MQL4, entonces ...

Yo, por ejemplo, nunca he sido capaz de averiguar cómo implementar las hermosas palabras "significación de las entradas", "correlación cruzada de las entradas" en el código (no tengo Ezhov a mano para insertar palabras aún más hermosas). Es decir, fórmulas/algoritmos que conozco, pero a OHLC, ruido o viceversa filtros DC, y sólo "valores discretos" cuando los minutos son divertidos y los días tardíos. :)

 
SergNF писал (а) >>

No. Mediante la importación de dll/def o la reescritura desde "s".

Sobre todo si se dedican a "1. Preparación de los datos de entrada. (Desplazamiento de medias, descorrelación, ecualización de covarianza).",

>> Así es.

Por mi parte, nunca he podido averiguar cómo implementar las bonitas palabras "importancia de las entradas", "correlación cruzada de las entradas" en el código (no hay Ezhov a mano para insertar más palabras bonitas). Es decir, fórmulas/algoritmos que conozco, pero a OHLC, ruido o viceversa filtros DC, y sólo "valores discretos" cuando los minutos son divertidos y los días tardíos. :)

¿Cuál es el problema? A las fórmulas les da igual que les den datos por minutos o semanales.

 
LeoV писал (а) >>

Intentaré explicar con más detalle en qué consiste esta comprobación cruzada, por si este post no ha quedado claro. Supongamos que estamos entrenando una red para un error mínimo. Supongamos que lo probamos en 2007 y obtenemos un resultado intermedio de 0,5. Lo comprobamos en 2008 y obtenemos 0,8. Esta red se memoriza y seguimos entrenando. Entonces obtuvimos 0,4 para 2007 y lo comprobamos con 0,7 para 2008. Se descartan las redes viejas y se memoriza esta red y se sigue con el entrenamiento. Luego tenemos 0,3 para 2007 y 0,6 para 2008. La vieja red se descarta y se recuerda esta red y se sigue entrenando. Para 2007 - 0,2, para 2008 - 0,8. Esta red no se memoriza, se mantiene la anterior. Se mantendrá en la memoria y se seguirá entrenando. Si no hemos conseguido que baje de 0,6 en 2008, nos quedamos con la red que tiene 0,6 en 2008 y 0,3 en 2007, y no con la que tiene 0,2 o menos en 2007. En efecto, un mayor entrenamiento de la red es un sobreentrenamiento. Esto evita el sobreentrenamiento, aunque no siempre lo salva.

Y como puede ver, las pruebas de avance no tienen nada que ver con esto......)))))

En otras palabras, el entrenamiento/optimización no termina cuando el error es mínimo en la muestra de entrenamiento, sino antes de que el error empiece a aumentar en la muestra de prueba.

 
Erics писал (а) >>

En otras palabras, el entrenamiento/optimización no termina cuando el error es mínimo en la muestra de entrenamiento, sino antes de que el error comience a aumentar en la muestra de prueba.

Así que básicamente sí. Porque la teoría dice que la magnitud del error en la muestra de prueba, primero disminuye cuando el error en la muestra de entrenamiento disminuye, y luego comienza a aumentar, aunque el error en la muestra de entrenamiento sigue disminuyendo. El truco está en atrapar esta depresión. Este es el punto de sobreentrenamiento (para las redes) o de sobreoptimización (para la CT).

 
LeoV писал (а) >>

Pues sí. Porque la teoría es que el error en la muestra de prueba primero cae a medida que el error en la muestra de entrenamiento disminuye, y luego comienza a aumentar, aunque el error en la muestra de entrenamiento sigue disminuyendo. El truco está en atrapar esta depresión. Este es el punto de sobreentrenamiento (para las redes) o de sobreoptimización (para la CT).

 
sergeev писал (а) >>

Absolutamente correcto. Sólo hay que hacer una pequeña observación. Cuando la curva sube, puede haber mínimos, pero deben ser más altos que el primer mínimo. Aunque a veces puede ser menos (en la práctica), pero es raro.

 

Y aquí hay una imagen sobre el sobreentrenamiento

 
LeoV писал (а) >>

Absolutamente correcto. Sólo hay que hacer una pequeña observación. Cuando la curva está subiendo, puede haber mínimos, pero deberían ser más altos que el primer mínimo (en teoría). Aunque a veces puede ser menor (en la práctica), pero es raro.

Buen punto.

En general, la teoría en este hilo ya ha dicho mucho (se puede defender una tesis en nuestro foro :).

Y la mente está ahora sedienta de experiencias prácticas y conocimientos.

Si es posible, deje que los profesionales compartan su experiencia en el análisis y la preparación de los valores de entrada . Son ejemplos concretos.

>> Gracias.

 
sergeev писал (а) >> Si es posible, que los profesionales compartan su experiencia en el análisis y la preparación de las aportaciones . Es decir, ejemplos concretos.

Los valores de entrada tampoco son una cuestión sencilla. Lo que hay que suministrar a la entrada de la red depende de muchos factores -

1. Qué tipo de red neuronal se utiliza.

2. Lo que queremos obtener de la red neuronal: el precio o la dirección del movimiento o los puntos de reversión o la siguiente vela o algo más.

Así que primero hay que decidir sobre estas cuestiones, y luego decidir sobre los insumos.

Razón de la queja: