Frage zur Programmierung neuronaler Netze - Seite 4

 
2rip: Irgendwelche Vorschläge? ;)
 
plan:
2rip: Irgendwelche Vorschläge? ;)
Es gibt immer wieder Angebote ... Wir müssen verstehen, wie angemessen der Austausch sein wird :)
 
Seltsamerweise ist der Austausch nie zum beiderseitigen Vorteil. Also muss jemand nachdenken. Und es ist gut, dass ich es nicht bin.
 
plan:
2rip: Irgendwelche Vorschläge? ;)

Wir könnten etwas Einfacheres machen. Jeder stellt seine Arbeit vor, und die anderen entscheiden. Aber niemand will sein eigenes in die falschen Hände geben, auch wenn es schon jemand getan hat. Das Problem liegt also meist an einer anderen Stelle. Aber wenn man sich auf eine gemeinsame Idee einigt, kommt man oft zu einem sehr guten Ergebnis.
 
plan:
2rip: Irgendwelche Vorschläge? ;)


Es gibt einen Vorschlag, diese Konfiguration als "Gemeinschaftszelle" zu verwenden:

//+------------------------------------------------------------------+
//| 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: Irgendwelche Vorschläge? ;)

Wir können es auch einfacher machen. Jeder stellt seine Arbeit vor und die anderen entscheiden. Aber niemand will sein eigenes in die falschen Hände geben, auch wenn es schon jemand getan hat. Das Problem liegt also meist an einer anderen Stelle. Aber wenn man sich auf eine gemeinsame Idee einigt, kann man sehr gute Ergebnisse erzielen.
Ja. Es ist keine gute Idee, ihn öffentlich zur Schau zu stellen, es sei denn, es handelt sich um einen Gral, von denen es viele gibt! Ich bin zwar für Open Source, aber meine Arbeit an dem Diplom wird später gehen und es wäre nicht klug, sie vorher ins Netz zu stellen
 
rip:
Plan:
2rip: Irgendwelche Vorschläge? ;)
Es gibt immer wieder Angebote ... Wir müssen verstehen, ob der Austausch angemessen sein wird :)

Es besteht keine Notwendigkeit und daher auch kein Wunsch, etwas umzutauschen ... Aber Hilfe in manchen Angelegenheiten ist immer willkommen! Meine Ideen habe ich oben kurz zusammengefasst. Interessant zu hören, was Sie haben :)
 

Dies ist ein Indikator! Ein selbst erstellter GA kann als Schulungsinstrument für die oben genannten NS verwendet werden:

Dateien:
 
klot:
Es gibt einen Vorschlag, diese Konfiguration als "Gemeinschaftszelle" zu verwenden:
...
Vielen Dank für den Code. Warum diese besondere Konfiguration? Haben Sie damit irgendwelche Ergebnisse erzielt? Und kann man nicht etwas Schnelleres als Arktangenz als Sigmoidfunktion verwenden?
 
rsi:
klot:
Es gibt einen Vorschlag, diese Konfiguration als "Gemeinschaftszelle" zu verwenden:
...
Vielen Dank für den Code. Warum diese besondere Konfiguration? Haben Sie damit irgendwelche Ergebnisse erzielt? Und kann man nicht etwas Schnelleres als Arktangenz als Sigmoidfunktion verwenden?

Jede nicht-lineare Funktion ist geeignet. Das ist ein Indikator!