Discusión sobre el artículo "Redes neuronales: así de sencillo (Parte 36): Modelos relacionales de aprendizaje por refuerzo (Relational Reinforcement Learning)"

 

Artículo publicado Redes neuronales: así de sencillo (Parte 36): Modelos relacionales de aprendizaje por refuerzo (Relational Reinforcement Learning):

En los modelos de aprendizaje por refuerzo analizados anteriormente, usamos varias opciones de redes convolucionales que pueden identificar varios objetos en los datos originales. La principal ventaja de las redes convolucionales es su capacidad de identificar objetos independientemente de la ubicación de estos. Al mismo tiempo, las redes convolucionales no siempre son capaces de hacer frente a diversas deformaciones de los objetos y al ruido. Pero estos problemas pueden resolverse usando el modelo relacional.

La principal ventaja de los modelos relacionales es la capacidad de crear dependencias entre objetos, lo cual permite estructurar los datos de origen. El modelo relacional se puede representar más claramente en forma de gráficos, y los objetos y eventos se representan como nodos. Las relaciones muestran dependencias entre objetos y eventos relacionados.

Gráfico

El uso de gráficos nos permite construir visualmente la estructura de las dependencias entre objetos. Por ejemplo, si queremos describir un patrón de ruptura de un canal, dibujaremos un gráfico, en cuya parte superior habrá la formación de un canal. La descripción de la formación del canal también se puede representar como un gráfico. A continuación, crearemos 2 nodos de ruptura del canal (bordes superior e inferior). Ambos nodos tendrán las mismas conexiones con el anterior nodo de formación del canal, pero no están conectados entre sí. Para evitar entrar en una posición en caso de una ruptura falsa, podemos esperar un retroceso hacia el borde del canal. Estos serán 2 nodos más de retroceso hacia los bordes superior e inferior del canal, los cuales tendrán conexiones con los nodos de ruptura del borde del canal correspondiente, pero, una vez más, no tendrán conexiones entre sí.

La estructura descrita encaja bien en el gráfico y ofrece una estructuración clara de los datos y la secuencia de eventos. Ya analizamos algo similar al construir las reglas asociativas, pero esto difícil se conecta con las redes convolucionales que usamos anteriormente.

Parecería que las redes convolucionales se usan para identificar objetos en los datos. Podemos entrenar el modelo para resaltar algunos puntos de reversión del movimiento o pequeñas tendencias, pero en la práctica, el proceso de formación del canal puede extenderse en el tiempo con diferentes intensidades de tendencia dentro del canal, mientras que los modelos convolucionales no siempre se adaptan bien a tales distorsiones. Además, ni las capas neuronales convolucionales ni las completamente conectadas pueden separar 2 patrones diferentes que consten de los mismos objetos con una secuencia diferente.

También debemos considerar que las redes neuronales convolucionales solo son capaces de detectar objetos: no son capaces de construir dependencias entre ellos. Entonces necesitaremos encontrar algún otro algoritmo que pueda aprender tales dependencias, y aquí deberemos recordar los modelos de atención. Son precisamente los modelos de atención los que hacen posible centrar la atención en objetos individuales, destacándolos del array de datos general.

Autor: Dmitriy Gizlyk

 
¿Son compatibles las redes neuronales creadas en este artículo (Forward model, Inverse model) con el artículo anterior?
 
happy side #:
¿Son compatibles las redes neuronales creadas en este artículo (modelo Forward, modelo Inverse) con el artículo anterior?

 
CS      0       15:22:10.739    Core 01 2023.01.01 00:00:00   EURUSD_PERIOD_H1_RRL-learning.nnw
CS      0       15:22:10.739    Core 01 2023.01.01 00:00:00   OpenCL not found. Error code=5103
CS      2       15:22:10.739    Core 01 2023.01.01 00:00:00   invalid pointer access in 'NeuroNet.mqh' (2876,11)
CS      2       15:22:10.739    Core 01 OnInit critical error
CS      2       15:22:10.739    Core 01 tester stopped because OnInit failed
CS      2       15:22:10.740    Core 01 disconnected
CS      0       15:22:10.740    Core 01 connection closed

Sigo recibiendo el mismo error cuando intento entrenar, he intentado hacer la red neuronal con el NetCreator también pero se produjo el mismo error.

¿qué puede estar causando el problema?

 
Dmitry empezó a mirar el código, falta el archivo de la biblioteca
 
happy side #:

Me sigue dando el mismo error cuando intento entrenar, he intentado hacer la red neuronal con el NetCreator también pero me ha dado el mismo error.

¿Qué puede estar causando el problema?

ERR_OPENCL_CONTEXT_CREATE

5103

Error al crear el contexto OpenCL

Antes de utilizar esta librería debes instalar OpenCL en tu PC

 
Dmitry Gizlyk # :

ERR_OPENCL_CONTEXT_CREATE

5103

Error al crear el contexto OpenCL

Antes de usar esta librería debes instalar OpenCL en tu PC

Utilizo una GPU Nvidia Tesla A100, que ya tiene OpenCL habilitado, pero se produce el mismo error
 
Kekeletso Mofokeng #:
Yo uso una GPU Nvidia Tesla A100, ya tiene OpenCL habilitado, pero se produce el mismo error

¿Está habilitado OpenCL en las opciones de MetaTrader?


 
Dmitry Gizlyk # :

¿Está OpenCL habilitado en las opciones de MetaTrader?


Sí, está habilitado, pero yo era capaz de identificar el problema. Mi probador de estrategia utiliza procesador en lugar de GPU, pero mi procesador no tiene OpenCL creo. ¿Cómo puedo hacer que el probador utilice GPU en lugar de CPU?

CS        0        20  : 01  : 11.215       Core 01  AMD EPYC 7  V13 64  -Core, 225278  MB 
 

¡Eh, Dmitry!

Maravilloso trabajo.

En esta parte, entrenar una red neuronal dura muchísimo más tiempo que antes. ¿Tienes la misma experiencia?

Saludos,

Tomasz

 
Hola Dmitry, ¿puedes decirme cómo "deslizar" un archivo binario (.nnw )a una red ya entrenada en el probador de estrategias? Si he entendido bien, en el probador, de nuevo, una caja de arena virtual se crea, e incluso si el archivo se copia a la fuerza a este directorio del probador, a continuación, cuando el probador se reinicia, todos los archivos de la misma se eliminan. Aquí está este directorio como un ejemplo. C:\Users\ACER\AppData\Roaming\MetaQuotes\Tester\36A64B8C79A6163D85E6173B54096685\Agent-127.0.0.1-3000\MQL5\Files La red se construye naturalmente en una red nueva y sin entrenamiento. ¿O cómo puedo resolver este problema de otra manera?