Una biblioteca rápida y gratuita para MT4, para deleite de los neuralnetworkers - página 13

 
Figar0 >> :

El resultado es sólo una sana, se utiliza, pero no puedo decir que este es el mérito de ZZ).

Emitido no es cometer, y sólo unos pocos (kol'ton conjunto) redes seleccionadas por el error mínimo, pero que Statistisu no debe alimentar los datos no preparados es un engaño. Ciertamente en la búsqueda de decisiones se pueden probar diferentes cosas, pero volcar todo en una parrilla, y dejarlo hervir, no pasa, cualquiera de los presentes te lo dirá.

¿Y en qué dirección vale la pena trabajar, dígame por favor, si los resultados de su trabajo no se clasifican del público?

 
Kharin >> :

¿Están seguros de que la biblioteca no está "torcida"?

La situación es la siguiente: el mensaje de error aparece regularmente y que el terminal se cerrará.

Lee el hilo. Está escrito en ruso:

static bool Parallel = true;

Если параллельный режим не поддерживается процессором, то это может привести к тому, что терминал выгрузится с сообщением об ошибке
 
lasso >> :

Que se joda el concejal. No hay necesidad de volver a escribir y lidiar con ello.

Existe la sospecha de un funcionamiento incorrecto de la propia biblioteca, y es necesario averiguar si es así o no. De lo contrario, no tiene sentido seguir adelante.

He modelado su situación. De hecho, al utilizar ann_train, las respuestas son las mismas incluso después de entrenar la red con ~10.000 señales. Las respuestas de la red cuando se utiliza ann_train_fast son a veces diferentes y a veces no.

Creo que realmente hay un problema, al menos con la aleatorización de los pesos.

 

Intenta comentar f2M_randomize_weights. Si las respuestas de las redes son diferentes, entonces hay un error en FANN2MQL. Si siguen siendo los mismos, hay un error en FANN.

El valor por defecto es la aleatoriedad (-0,1 ... 0,1)


UPD: Lo he comprobado yo mismo. En ambos casos hay aleatoriedad. Sólo una rareza: de 2 a 5 redes seguidas responden igual, y luego un grupo de otras redes idénticas. Así que hay 5 respuestas diferentes por cada 16 redes. Si no se corrige el error, un comité de N miembros necesita 3*N redes, el resto son lastres.

 
Henry_White >> :

Lee el hilo. Está escrito en ruso:

¡¿Quién te ha dicho que uso el modo paralelo?!

¿Por qué tienes que "echar caca" de forma sermoneadora? Si no puede decir lo que está escrito en la pila y cuál es exactamente el error,

no digas nada. Sí, ahora vamos a empezar a hablar de telépatas y demás, advierto este grito: se ha dado un mensaje de error,

Su texto completo, las funciones utilizadas son las mismas que en el de Yury Reshetov, no se utiliza el modo paralelo.

¿Cuál puede ser la razón de este mensaje?

 
Kharin >> :

¡¿Y quién te dijo que estaba usando el modo paralelo?!

Perdóneme ))

 
Kharin писал(а) >>

Por eso creo que tu última frase no tiene sentido.

Lo piensas porque te lo has tomado como algo personal, mientras que yo sólo intentaba decir que la librería no tiene un gestor de errores potente, y no perdona la manipulación incorrecta de los objetos y los punteros a los mismos. Así que, ¡seamos amigos! )))

¿Has probado el Asesor Experto de Reshetov? ¿También rebota el terminal?

 
Dali писал(а) >>

UPD: Lo he comprobado yo mismo. En ambos casos hay una aleatorización. Sólo hay una rareza: de 2 a 5 redes seguidas responden lo mismo, y luego un grupo de otras idénticas. Así que hay 5 respuestas diferentes por cada 16 redes. Si no se corrige el error, el comité de N miembros necesita 3*N redes, el resto son lastres.

Se ha tomado nota. La aleatoriedad va de -1 a 1, y en el perfil de la red los pesos van de -10,0e--003 a 10,0e-003

Ejemplo: (12, -7,35577636217311400000e-003) (13, 7,63970005423449810000-002)

¿Es esto correcto?

.....

Sí, ha ocurrido lo mismo, que los valores de salida de las dos o cuatro primeras redes son diferentes de los posteriores.

He intentado multiplicar las entradas por diferentes coeficientes. Esto no resuelve el problema.

 
lasso >> :

Lo piensas porque te lo has tomado como algo personal, y yo sólo intentaba decir que la librería no tiene un gestor de errores potente, y no perdona la manipulación incorrecta de los objetos y los punteros a los mismos. Así que, ¡seamos amigos! )))

¿Has probado el Asesor Experto de Reshetov? ¿También rebota el terminal?

Me gusta más la amistad)))

El Asesor Experto de Reshetov eliminó el terminal antes de que hubiera abolido la computación paralela.

Ahora pruebo mi Asesor Experto en todas las direcciones y compruebo el éxito de las operaciones con Print.

He observado la siguiente peculiaridad: la creación de una cuadrícula puede ser infructuosa((

a = f2M_create_standard (nn_layer,nn_input,nn_hidden1,nn_hidden2,nn_output);

esta línea devuelve muy a menudo -1.

Para ser más precisos, un cierto número de veces devuelve no -1, y entonces sólo -1.

La única manera de deshacerse de él es reiniciar el ordenador. Me imaginé que la razón era que la malla anterior no se borraba y no hay ningún lugar para la nueva

y no hay ningún lugar para que el nuevo vaya, así que hice este pedazo de código:

for (int i=0;i<1024;i++)
{ann_destroy (ann[i]);}
int a=-1;
while(a<0)
{
a = f2M_create_standard (nn_layer,nn_input,nn_hidden1,nn_hidden2,nn_output);
Print(a);
}


Ahora hay que eliminar definitivamente las primeras 1024 mallas. (Puede que me equivoque).

Pero de nuevo, escribe -1 en el registro. Antes de reiniciar...

 

Bueno, creo que añadiré también las rarezas de FANN...

Como experimento, decidí entrenar por fuerza bruta un comité de 46 redes de dimensión 30/N/N/1 (es decir, en cada barra: ~300k). Un NS por canal de datos. Se introduce un patrón de tiempo en la entrada. Me he metido con la dimensionalidad, por eso especifico N/N (he probado diferentes). También he jugado con las capas.
Activador - FANN_SIGMOID_SYMMETRIC_STEPWISE. He probado otros, pero la red no converge tan rápidamente como con este.
Sólo enseño 1 o -1. Aprender en cada iteración.
El número de iteraciones positivas y negativas del aprendizaje son casi iguales. Para ser exactos, es 132522/-112221.
Los datos están normalizados en un rango de 1:-1.
Casi todas las mallas convergen a un RMS dentro de 0,09 al final del entrenamiento. Esto es mucho, por supuesto, pero no es lo principal.

Pero lo curioso es que en la sección de pruebas, todo el comité salió con valores cercanos a -1. En mi opinión, este es un comportamiento poco saludable para NS. Quizás también haya un error de algoritmo en la biblioteca...

Una observación más... Con el entrenamiento normal (sólo las secciones de señal), la comisión sigue tendiendo a acumularse en los valores negativos, aunque no tan claramente como en la fuerza bruta.

¿Alguien ha observado un fenómeno similar en sí mismo? ¿Tal vez tengas alguna idea?


Ejemplo de datos de entrada visualizados (abajo):



Razón de la queja: