Pregunta sobre la programación de redes neuronales - página 4

 
2rip: ¿Alguna sugerencia? ;)
 
plan:
2rip: ¿Alguna sugerencia? ;)
Siempre hay ofertas... Tenemos que entender lo adecuado que será el intercambio :)
 
Curiosamente, el intercambio nunca es mutuamente beneficioso. Así que alguien tiene que pensar. Y menos mal que no soy yo.
 
plan:
2rip: ¿Alguna sugerencia? ;)

Podríamos hacer algo más sencillo. Cada uno pone su trabajo y los demás deciden. Pero nadie quiere dar lo suyo en las manos equivocadas, aunque alguien ya lo ha hecho. Por lo tanto, el problema suele encontrarse en otra cosa. Pero si se llega a una idea común, a menudo se obtiene un resultado muy bueno.
 
plan:
2rip: ¿Alguna sugerencia? ;)


Se sugiere utilizar esta configuración como "célula comunitaria":

//+------------------------------------------------------------------+
//| 2-х слойная нейросеть из 3-х нейронов                            |
//| первый слой - два нейрона                                        |
//| второй слой - один нейрон                                        |
//| веса W[0], W[N+1], W[2*N+2] - задают смещение нейронов           |
//| N - число входов                                                 |
//| Число подстраиваемых весов расчитывается как N*2+2+3             |
//+------------------------------------------------------------------+
double neuronet1(double W[],double x[]) 
  {
   int i;
   int N=ArraySize(x);
   if(ArraySize(W)!=N*2+5) {
      Print("Ошибка! Размер массива весов должен быть = ",N*2+5);
      return(0);
   }
   double sum=0.0;
   double Out1=0.0, Out2=0.0;
   //---Neuron 1 ----------------+
   sum=W[0];
   //---
   for(i=1; i<=N; i++) { 
      sum+=W[i]*x[i-1];
   }
   Out1=MathArctan(sum);//th(sum);
   //---Neuron 2 ----------------+
   sum=W[N+1];
   //---
   for(i=N+2; i<=2*N+1; i++) { 
      sum+=W[i]*x[i-(N+2)];
   }
   Out2=MathArctan(sum);//th(sum);
   //---Neuron 3 ----------------+
   return(MathArctan(Out1*W[2*N+3]+Out2*W[2*N+4]+W[2*N+2]));
  }
//-------------------------------------------------------------------------------------------------
 
Vinin:
plan:
2rip: ¿Alguna sugerencia? ;)

Podemos hacerlo de forma más sencilla. Cada uno pone su trabajo y los demás deciden. Pero nadie quiere dar lo suyo en las manos equivocadas, aunque alguien ya lo ha hecho. Por lo tanto, el problema suele encontrarse en otra cosa. Pero si se llega a una idea común, se obtienen muy buenos resultados.
Sí. Ponerlo a la vista del público no es una buena idea, a no ser, claro, que se trate de un grial, ¡de los que hay muchos! Aunque estoy a favor del código abierto, pero mi trabajo en el diploma más tarde irá y no sería prudente ponerlos en la red antes
 
rip:
plan:
2rip: ¿Alguna sugerencia? ;)
Siempre hay ofertas... Necesitamos entender si el intercambio será adecuado :)

No hay necesidad y, por tanto, no hay deseo de intercambiar nada... Pero la ayuda en algunos asuntos siempre es bienvenida. Mis ideas las he resumido brevemente más arriba. Es interesante escuchar lo que tienes :)
 

¡Esto es un indicador! Un AG de fabricación propia puede utilizarse como herramienta de formación para las NS anteriores:

Archivos adjuntos:
 
klot:
Se sugiere utilizar esta configuración como "célula comunitaria":
...
Gracias por el código. ¿Por qué esta configuración en particular? ¿Tienes algún resultado con él? ¿Y no se puede utilizar algo más rápido que la arctangencia como función sigmoidea?
 
rsi:
klot:
Se sugiere utilizar esta configuración como "célula comunitaria":
...
Gracias por el código. ¿Por qué esta configuración en particular? ¿Tienes algún resultado con él? ¿Y no se puede utilizar algo más rápido que la arctangencia como función sigmoidea?

Cualquier función no lineal sirve. ¡Es un indicador!