Laden...
C
computer_case
myCSharp.de - Member
18
Themen
51
Beiträge
Letzte Aktivität
vor 13 Jahren
Dabei seit
18.11.2007
Herkunft
deutschland
Erstellt vor 13 Jahren

Vielen Dank für die Antwort.

Das Batch-Learning war mir bekannt, als dass man die Gewichte nach dem Präsentieren mehrerer Inputreize ändert.
In diesem Fall sind es aber mehrere Änderungen eines Gewichts pro Inputreiz.

Ich werde dann, wie von dir vorgeschlagen, Batch-Learning verwenden, da die Parallelisierung doch einige Vorteile hat.

Mfg
C_C

Erstellt vor 13 Jahren

Habe mich nun weiter eingelesen und bin mir bei etwas nicht ganz sicher.

Um das Beispiels des Links aufzugreifen:
Der erste Layer hat die Grösse 2929. Der zweite Layer beinhaltet 6 Feature Maps welche je 1313 gross sind. Das macht pro Feature Map also 5*5=25 Gewichte +1 fürs Bias.

Alle 13*13=169 Neuronen der Feature Map haben die gleichen 26 Gewichte.
Wie ist das nun beim Training? Wird da nun 169 mal die Änderung des Gewichts berechnet und die Summe dann gemittelt und erst dann das Gewicht geändert? Oder wird das Gewicht 169-mal geändert?

Mfg
C_C

Erstellt vor 13 Jahren

Also haben alle 1014 Neuronen in der Feature Map die gleichen 26 Gewichte?

Dann kann ich mir etwas darunter vorstellen, aber u.a. beim Training des CNN ich noch nicht durch, werde mich noch ein wenig weiter einlesen und wenn weitere Fragen auftauchen hier stellen.

Vielen Dank.

Erstellt vor 13 Jahren

Hallo,

Wie ich beim Suchen hier im Forum gemerkt habe tummeln sich hier auch einige Spezialisten in Sachen neuronale Netze.

Ich habe nun ein kleines Verständnisproblem bei einem Netztypen, dem "Convolutional Neural Network".

Angenommen man hat einen Layer mit der Grösse 29*29.
Der 2te Layer besteht aus 6 "Feature Maps" der Grösse 13x13. Das "Kernel-Window" hat die Grösse 5x5 und wenn man im Layer 1 immer 1 Neuron überspringt gibt es eben genau diese 13x13 Positionen.

Ingesamt sind das dann 13x13x6=1014 Neuronen und jedes Neuron hat 5x5=25 Verbindungen somit sind es insgesamt also 25350 Verbindungen. Nun ist es aber so, dass dieser Netztyp die Gewichte teilt, sodass es dann nur noch 150 zu trainierende Gewichte sind.

Meine Frage ist nun:
Welche Verbindungen teilen sich nun das selbe Gewicht?

Mfg
C_C

Erstellt vor 14 Jahren

Ok, vielen Dank für die Antwort.

Erstellt vor 14 Jahren

Hallo,

Ich hab eine Frage zur Effizienz:

Was ist effizienter, folgendes:


for (int i=0;i<cycles;i++)
{
   MeineMethode();
}

oder


void MeineMethode(int cycles)
{
   for (int i=0;i<cycles;i++)
   {
      //code, der mehrmals ausgeführt wird
   }
}

Macht es überhaupt einen Unterschied, bzw. wird es sowieso auf die gleiche Form optimiert?

Gruss
C_C

Erstellt vor 14 Jahren

Was ist mit Extension Methods?

Erstellt vor 14 Jahren

Vielen Dank für die Erklärung, leuchtet ein.

Mfg
c_c

Erstellt vor 14 Jahren

Guten Tag,

Im Parameter eines Konstruktors möchte ich ein Delegate übergeben. Da dieser Parameterwert optional sein soll, habe ich das neue Feature von C# 4.0 genutzt und den Konstruktor vereinfacht etwa so definiert:


public MeineKlasse(MeinDelegate m = new MeinDelegate((i) => 2*i))
{
//...
}

Die Fehlermeldung, die ich dafür erhalte ist:> Fehlermeldung:

Der Standardparameterwert für "m" muss eine Kompilierzeitkonstante sein.

Die Suche hat dafür keine Treffer geliefert und ich verstehe den Grund für diese Fehlermeldung nicht ganz, bzw. wieso der Ausdruck nicht konstant sein sollte.

Mfg
C_C

Erstellt vor 14 Jahren

Ich glaube er meint sowas wie eine alert() MessageBox und nicht die System.Windows.Forms.MessageBox.

Mfg
C_C