"New Neural" es un proyecto de motor de red neuronal de código abierto para la plataforma MetaTrader 5. - página 15

 
TheXpert:

No me lo creo :)

Y piénsalo, como las neuronas utilizan la memoria común, al asignar un valor a una célula éste (valor) pasa a estar disponible inmediatamente en todas las neuronas conectadas, por lo que se deduce que toda la diferencia en el aprendizaje está en escribir la fórmula en sentido inverso al activador, el resto es igual para todos, la diferencia es el avance o el retroceso. Una lista de diferencias bastante escasa :o)

La fórmula de activación y su derivada se prescriben al crear una neurona (o mejor dicho, al seleccionar un tipo entre los disponibles), la dirección de la trayectoria de aprendizaje también se elige al crear la red.

 
Avals:

Sí, se puede hacer eso, pero es exagerado)))

¿Cómo es que no es exagerado?

________________

Nikolai, la forma más sencilla, obvia y rápida de representar es uniendo vectores y matrices.

 
TheXpert:

¿Cómo es que no es exagerado?

________________

Nikolai, la forma más sencilla, obvia y rápida de representar es uniendo vectores y matrices.

Pero está fuertemente ligado a la topología, o (si elimina algunas celdas, lo que le da versatilidad) sobreutilizará la memoria.

¿Cómo se puede utilizar una matriz para representar una cuenca de 1000x1000 ecos, el 95% de los cuales no existen? La pregunta es retórica, está claro que la creación de una cuenca de este tipo por el método de la matriz cada neurona debe ser capaz de conectarse a cualquier neurona, que es 1000000 conexiones potenciales por neurona, multiplicar por 1000000 neuronas y tienes 10^6 x 10^6 mql matriz que no va a funcionar.

 
TheXpert:

¿Cómo es que no es a través de una cosa?

Bueno, para no tener que idear un algoritmo de entrenamiento para una variante particular de TS con NS. Es decir, para que ocurra de forma automática: hay un Asesor Experto con NS y al ejecutar el entrenamiento de NS no nos importa cómo se implementará, pero no necesitaremos recoger los valores de las entradas en alguna vecindad por nosotros mismos, etc. Puede ser, que en el ejemplo que consideramos el algoritmo sea el mismo que has descrito, y si, por ejemplo, el NS es otra parte del sistema, sería diferente. En general, quiero que forme parte de la formalización y que esté oculta para el usuario. Probablemente, se trata del preprocesamiento de los datos de salida de la NS o, en otros casos, de la entrada, pero puede automatizarse en la mayoría de los casos, y no pasar por los delicados hombros del usuario)))) No sé cómo formalizarlo :)
 
Avals:

Para no inventar un algoritmo de aprendizaje para una versión particular de TC con NS.

No se puede hacer así :) Como mínimo, hay que saber qué tomar, qué enseñar y cómo evaluar. Y estas son las cosas que tienes que organizar con tus manos.

En general, quería que formara parte de la formalización y se ocultara al usuario. No sé cómo formalizarlo :)

Exactamente. Yo tampoco lo sé. No sólo eso, hay conjuntos que son muy difíciles de combinar en absoluto. Neuronics es sólo una herramienta. En manos hábiles (por ejemplo, Leonid), es incluso muy potente.

Me pregunto si estaría dispuesto a dar algún consejo.

 
TheXpert:

Hay que saber al menos qué tomar, qué enseñar y cómo evaluar. Y estas son las cosas que tienes que organizar con tus manos.

Exacto. Y no lo sé. No sólo eso, hay conjuntos que son muy difíciles de combinar en absoluto. Las neuronas son sólo una herramienta. En manos capaces (por ejemplo, Leonid) es muy potente.

Por lo menos, considere las opciones estándar (por ejemplo, la comentada en la página anterior). Ha sugerido una solución formal. ¿Por qué crees que no hay uno para el resto de nosotros?

Es posible que todos se reduzcan a unos pocos del mismo tipo.

 
Avals:
¿Por qué crees que no hay filtro para los demás?

Sí que lo hay :), pero se trata de entradas y salidas :) la red es secundaria. Puede reconocer las letras de la forma que quiera, MLP, PNN, SOM, echo grid, pero el principio será casi idéntico.

Avals:

Probablemente, todo se reduce a unos pocos del mismo tipo

Este es un buen ejemplo: es muy fácil organizar un filtro de ofertas.

Y alimentar una simple ST no es una tarea para mentes promedio. Y el primero es casi 100% un ajuste.

 
TheXpert:

Sí que lo hay :), pero se trata de entradas y salidas :) la red es secundaria. Puede reconocer las letras como quiera, MLP, PNN, SOM, echoset, pero el principio será casi idéntico.

Así que sí, el preprocesamiento y postprocesamiento de los datos NS es lo que más tiempo consume y lo más delicado. Si esto se sistematiza y se automatiza en parte con las variantes típicas de CT, es una ventaja sobre los paquetes de terceros. De lo contrario, es más fácil hacerlo todo en ellos (ya que están más especializados para trabajar con NS de todos modos), y los modelos ya listos se transfieren a MT5
 

Algunos correos sobre la organización de la clase utilizada en las EA:

Propiedades:

1. número mínimo de imágenes que la red está entrenada para utilizar después.

2. número máximo de imágenes. Cuando se añade una nueva imagen al conjunto de entrenamiento, se elimina la anterior y se vuelve a entrenar la red.

Métodos externos:

1. Enviar la imagen a entrenar. Cuando se utiliza en EA, es posible dar una nueva imagen a la red según las señales del indicador .

2. Pregunte a la red si está preparada o no. Si la red está entrenada para un número suficiente de imágenes.

3. método básico. Envía una imagen a la red y recibe un resultado.


Cuando se envía una nueva imagen a la red para su entrenamiento, realiza su preprocesamiento:

1. Escala.

2. Comprueba la correlación, para que no haya dos imágenes con correlación opuesta con la misma salida, ni dos imágenes idénticas con salida diferente.


Todo esto se añade rápidamente al Asesor Experto; a medida que los indicadores señalan, la red recibe imágenes, en cuanto se acumula el número suficiente de imágenes, la red se entrena y entonces, cuando aparece la señal de abrir una posición, le pedimos a la red que confirme o no. Esto se hace en el probador. Si en la cuenta, la red debe ser entrenado después de la prueba y debe haber un medio de guardar la red y la carga.

Las imágenes que se envían a la red son a elección del usuario: precio, indicador o verdadero/falso. Los parámetros de la red (número de capas, entradas y salidas) se establecen durante la inicialización de la red.

 

El constructor de redes gráficas también se puede hacer en mql5.

Creo que puede haber diferentes neuronas en una capa, no es un problema, cómo entrenar una red así es otra cuestión.

¿Una neurona en una capa? ¿Qué sentido tiene? A menos que se trate de una capa adicional puenteada.