Discusión sobre el artículo "Tercera generación de neuroredes: "Neuroredes profundas"" - página 14

 
Rashid Umarov:
Inserte el código correctamente, por favor. Lo he arreglado
Gracias. No me di cuenta enseguida de qué botón era.
 
Vladimir Perervenko:

Buenas tardes.

¿De qué guión estamos hablando?

¿Podrías describir con un poco más de detalle lo que contiene el script?

¿Tengo entendido que has conseguido ejecutar el script con el proceso R en el probador?

Si es así, es interesante.

Por favor, tómate tu tiempo y descríbelo con el mayor detalle posible. ¿El proceso R se ejecuta en un paquete cliente-servidor o en un único Rterm?

Sí, se ejecuta en un bundle cliente-servidor.

¿Cómo puedo explicarlo de la forma más sencilla posible?

Tomé el código de la función OnTimer() en una función común para OnTick() y OnTimer(). Lo único que añadí fue un interruptor de modo personalizado y un contador de ticks.

Todos los demás procedimientos de inicio siguen siendo los mismos. Un poco más tarde implementaré la función en el script adjunto en el foro y lo publicaré.

PD: La documentación de MQL4 dice que la función OnTimer() simplemente no funciona en el tester.

 
kimkarus:

Sí. Es cliente-servidor.

¿Cómo puedo explicarlo de la forma más sencilla posible?

Tomé el código de la función OnTimer() en una función común para OnTick() y OnTimer(). Lo único que añadí fue un interruptor de modo personalizado y un contador de ticks.

Todos los demás procedimientos de inicio siguen siendo los mismos. Un poco más tarde implementaré la función en el script adjunto en el foro y lo publicaré.

PD: La documentación de MQL4 dice que la función OnTimer() simplemente no funciona en el probador.

Entiendo OnTimer().

¿Has hecho algún movimiento adicional en la conexión cliente-servidor?

Todavía no he conseguido que funcione. Y no sólo yo, a juzgar por los posts en el hilo en inglés.

Suerte

 

Como prometí, he adjuntado el SAE local a MQL4 para que funcione en el probador de estrategias.

i_SAE

e_SAE

Sustituir los originales, recompilar *.ex.

Arrancar el tester, seleccionar e_SAE, poner Enable timer = false y Count ticks = 120 (para mi fue optimo). Arrancamos.

Añadimos velocidad, esperar a que el mensaje mágico "OPP = CLOSE...." en el lado izquierdo, y reducir la velocidad. Después, añadimos i_SAE a la gráfica con Send to server = true. Añadir un poco de velocidad. Esperamos los resultados para finalizar.

Mi R era la versión 3.2.2. ¡Asegúrate de comparar tu versión en ambos archivos!

¡Buena suerte con tus experimentos!

e_SAE

 
Hola ¿has encontrado la manera de solucionar el problema con el socket del servidor?
 

Hola, Adjunto al artículo, un experto actualizado.

Adjunto al artículo, un experto actualizado .

Sal de ahí.

Sal de ahí.

Vladimir

 

Buenas tardes.

Muy buena. Gracias.

Ahora vamos a comprobar como funciona en el tester y en futuros ejemplos con R incluiré esta característica.

Adjunto al nuevo artículo de DNRBM una versión rediseñada de este EA DNSAE con autoaprendizaje, pero sin servidor.

Por favor, pruébalo.

Suerte

 
Hola veo que utilizó 11 oscilador indicador de entrada, tengo algunos indicadores en Mt4 y no son oscilador, ¿Cómo puedo agregar o reemplazar estos indicador le gusta en su artículo

Stacked RBM (DN_SRBM) https://www.mql5.com/es/articles/1628

Deep neural network with Stacked RBM. Self-training, self-control
Deep neural network with Stacked RBM. Self-training, self-control
  • 2016.04.26
  • Vladimir Perervenko
  • www.mql5.com
This article is a continuation of previous articles on deep neural network and predictor selection. Here we will cover features of a neural network initiated by Stacked RBM, and its implementation in the "darch" package.
 
Fascinante.

Es interesante observar que, si un ser humano se sumerge en una tarea, mejorará
, mientras que si una máquina hace lo mismo, puede estancarse en un óptimo local.

Quizá la inmersión algorítmica podría evolucionar de un paradigma de "estudio" a un paradigma de "ejecución".

Gran artículo.
 
Vladimir Perervenko:


De nuevo tenemos una fase rentable de unas 5 semanas hasta que el modelo se deteriora.

Esto es normal. El modelo puede y debe reaprenderse periódicamente.

Creo que la división en datos de prueba y de entrenamiento es innecesaria: podemos utilizar todos los datos para el entrenamiento.

Puede. Es importante recordar algunos puntos importantes:
1. los conjuntos de entrenamiento y prueba no deben cruzarse.
2. El conjunto de entrenamiento debe ser mixto

3. Si la proporción de clases de equilibrio - para hacer el ajuste.

Me alegro de que había colegas que utilizan R.

Saludos cordiales

Vladimir

Hola,

por favor, ayúdame a aclarar algunos de mis prejuicios negativos acerca de las redes neuronales (NN).

  1. ¿Es correcto que primero hay que optimizar los indicadores que se van a introducir en la red neuronal?
  2. ¿Y luego optimizar los parámetros de la red neuronal?
  3. ¿O se optimizan al mismo tiempo los parámetros de la red neuronal y los indicadores?
  4. ¿No es cierto que cuantas más variables haya que optimizar, mayor es el riesgo de sobreadaptación?
  5. Si los conjuntos de datos para 1. y 2. son los mismos, ¿no me llevaría eso a una especie de adaptación excesiva al conjunto de datos?
  6. ¿No es exactamente eso lo que indica"De nuevo tenemos una fase rentable de unas 5 semanas hasta que el modelo se deteriora"?
  7. a) Supongamos que tenemos un grupo de indicadores todos juntos optimizados por el probador y ahora
    b) ejecutamos una segunda optimización por el probador sólo para comprobar cuáles de los indicadores optimizados necesitamos(*)
    c) de modo que tenemos un grupo más pequeño de nuestros indicadores optimizados
    d) ¿para qué necesito la NN?
  8. ¿Conoces una estimación de lo grande que tiene que ser el conjunto de datos para una NN debido al número de entradas, capas y perceptrones?


(*) Desafortunadamente, si ejecuta el optimizador de mt4' en modo genético y quiere evitar ciertos conjuntos de parámetros (por ejemplo, no probar si el "indicador-A" está 'activado') volviendo de OnInit() con"INIT_PARAMETERS_INCORRECT" el algoritmo genético todavía cuenta esto como una pasada válida y eso reduce el número de pasadas realmente ejecutadas antes de que este algoritmo se detenga debido al número de pasadas que es uno de los criterios de terminación.