Red neuronal en forma de guión - página 3

 
sprite:
kombat:
Algo en la lógica de este script se asemeja a un simple codificador 4en2

Un codificador es un sistema no entrenable.

Y la red en este guión es enseñable. Y el proceso de aprendizaje se muestra en dinámica de época a época en la pantalla.

Puedes ver cómo cambian los pesos de las neuronas en cada capa, y cómo la red se vuelve más y más precisa a medida que se entrena.

Arriba hay tres puestos en los que el mismo algoritmo ha aprendido

para trabajar con tres conjuntos de datos diferentes.

En el caso de un codificador, se necesitarían tres codificadores para cada conjunto de datos.

He ajustado un poco el algoritmo de aprendizaje.

1º cambiar dinámicamente el número de neuronas algo así como un ALGORITMO GENÉTICO, aunque sin seleccionar las mejores y sin crear a partir de ellas generaciones :-) sin corrección de conexiones

2) detener el proceso de aprendizaje cuando se alcanza una alta precisión en los resultados

 
YuraZ:

He afinado ligeramente el algoritmo de aprendizaje

1) cambiar dinámicamente el número de neuronas, algo así como un ALGORITMO GENÉTICO, pero sin seleccionar las mejores y sin producir a partir de ellas :-) sin corregir las conexiones

2. Detener el aprendizaje cuando se alcanza una alta precisión de los resultados.



¿Y la versión final no estará disponible para el público?

 
YuraZ:
sprite:
kombat:
Algo en la lógica de este script se parece a un simple codificador 4v2

El codificador es un sistema sin entrenamiento.

Y la red se entrena en este guión. Y el proceso de aprendizaje se muestra en dinámica de época a época en la pantalla.

Puedes ver cómo cambian los pesos de las neuronas en cada capa, y cómo la red se vuelve más y más precisa a medida que se entrena.

Arriba hay tres puestos en los que el mismo algoritmo aprendió

para trabajar con tres conjuntos diferentes de datos .

En el caso de un codificador, se necesitarían tres codificadores para cada conjunto de datos.

He ajustado un poco el algoritmo de aprendizaje.

1) cambiar dinámicamente el número de neuronas, algo así como un ALGORITMO GENÉTICO, pero sin seleccionar las mejores neuronas ni crear descendencia a partir de ellas :-) sin corregir las conexiones

2ª parada del entrenamiento cuando se alcanza una alta precisión en los resultados


¡¡¡Aquí vamos!!! El hielo se ha roto. :))))

 
Vinin:
YuraZ:

He afinado ligeramente el algoritmo de aprendizaje

1) cambiar dinámicamente el número de neuronas, algo así como un ALGORITMO GENÉTICO, pero sin seleccionar las mejores y sin producir a partir de ellas :-) sin corregir las conexiones

2. Detener el aprendizaje cuando se alcanza una alta precisión de los resultados.



¿Habrá una versión revisada para el público?

Claro, me gustaría echarle un vistazo. Quizás alguien añada algo más :)


En cuanto a la precisión, no creo que sea el objetivo.

El objetivo es que la red al final del entrenamiento distinga todos los conjuntos de entrenamiento

entre ellos . Y esto está disponible con una precisión normal .


Como han demostrado los experimentos, esta red sólo necesita 300 épocas de entrenamiento para aprender a "pensar".

con los conjuntos anteriores. Sí, se puede comprobar visualmente durante el entrenamiento,

La red empieza a distinguir rápidamente entre los conjuntos de datos.


Y sería interesante ver cómo cambiar dinámicamente el número de neuronas de un Asesor Experto durante las pruebas,

en el que se construirá esta red. Y el número de neuronas a recoger en el optimizador MT.

 
Topor:

¿Cómo se hace para predecir el precio?

No se puede. No hay que esperar un milagro de una red neuronal. No es el NS el que hace la previsión, sino el algoritmo que lleva incorporado, el algoritmo se basa en las condiciones de negociación, y las condiciones de negociación .... son determinados por USTED.

 
sprite:
kombat:

No estoy en contra, pero todavía no estoy a favor del uso de redes neuronales en el comercio...

Igualmente :) ¡¡¡!!!

Pero el algoritmo está funcionando y aprendiendo :) Y luego ya veremos :)


El interés por las redes se ve alimentado por la victoria de EA en el Campeonato con la red .

Por supuesto, allí teníamos una red diferente. Pero el hombre hizo el trabajo y obtuvo el resultado.


La cuestión no es qué red, sino qué quieres obtener de ella. Y el resultado se obtuvo no por el NS, sino por las condiciones de negociación, que el NS compuso y dio una cierta previsión probable. El NS es esencialmente un filtro, que puede ser adaptativo (NS de autoaprendizaje) y, por lo tanto, tiene un retraso (para el período de aprendizaje). La ventaja de NS es que puede fusionar componentes dispares de su TS en un solo resultado y ordenar independientemente los ratios de significación de estos componentes (aprender).

 
Vinin:
YuraZ:

He afinado ligeramente el algoritmo de aprendizaje

1) cambiar dinámicamente el número de neuronas, algo así como un ALGORITMO GENÉTICO, pero sin seleccionar las mejores y sin producir a partir de ellas :-) sin corregir las conexiones

2. Detener el aprendizaje cuando se alcanza una alta precisión de los resultados.


¿No proporcionará una versión mejorada para el público?

Víctor, lo habrá.


El problema es que el algoritmo tarda demasiado en entrenarse :-))

Todavía no he resuelto este problema - ¡me aseguraré de publicar el código!

¡Echo de menos el código basado en un temporizador! ¡No lo tengo en MQL4!

 
Xadviser:
Topor:

¿Cómo se hace para predecir el precio?

No se puede. No hay que esperar un milagro de una red neuronal. No es el NS el que hace la previsión, sino el algoritmo que lleva incorporado, el algoritmo se basa en las condiciones de negociación, y las condiciones de negociación .... son determinados por TI.

¿Ha encontrado algún algoritmo decente?

Sólo un par de palabras sobre ellos.

 
Xadviser:
Topor:

¿Cómo se hace para predecir el precio?

No se puede. No hay que esperar un milagro de una red neuronal. El pronóstico no lo da el NS, sino el algoritmo que incorpora, el algoritmo se basa en las condiciones de negociación, y las condiciones de negociación .... Y las condiciones de negociación las defines tú.

Los gurús aconsejan predecir no el precio sino el cambio .

 
YuraZ:

No siempre es necesario normalizar, ¿quién dice que la parrilla PUEDE y DEBE funcionar sólo con 0 y 1?


Puedo adjuntar una retícula sencilla con un ejemplo, (desgraciadamente no hay materiales a mano ahora mismo) - lo haré más tarde

donde una simple NN resuelve este problema sin preparación de datos con normalización

lamentablemente esta no es la fuente


sin embargo, el ejemplo que he dado, es una especie de normalización

la condición tiene dos rangos


1 0-100

2 10-30


sólo hay que encontrar la relación de la posición en un rango - que se sabe que

en esencia esto es escalar.

La normalización es casi siempre necesaria. Los datos deben estar dentro del rango de definición de la función de activación.

En el guión la sigmoide es [-1;+1]. Si lo sustituyes por, digamos, un exponencial ... o raíz cuadrada.


http://www.statsoft.ru/home/portal/applications/NeuralNetworksAdvisor/Adv-new/ActivationFunctions.htm

Razón de la queja: