Rechenzeit

Sie sind sich nicht sicher, in welches Forum Ihre Frage oder Ihr Anliegen passt?
Möchten Sie ein neues Forum vorschlagen? Möchten Sie Kritik am Forum selbst üben?

Dann posten Sie bitte hier.
Post Reply
Toddster
Posts: 15
Joined: Thu 17. Nov 2011, 17:49

Rechenzeit

Post by Toddster »

Hallo Zusammen,

ich habe eine Frage zu den Datenmengen die Membrain oder Neuronale Netze allgemein "stemmen" können. Ganz konkret habe ich Lessons mit ca. 5 Mio. Mustern.
Es handelt sich um sehr lange Messreihen. Ich habe 15 Input Neuronen/Variablen und einen Outputwert. Ziel ist es den Einfluss der einzelnen Neuronen/Variablen auf den Output zu Isolieren. Ich habe bis jetzt nur mal ein wenig herum probiert, ob das Überhaupt geht bei solchen Mengen. Bei 1 Mio. Muster war die Trainingszeit für einen Durchlauf doch schon recht lange.

Meine Fragen:

Können solche Datenmengen sinnvoll verarbeitet ohne die Rechenzeit unendlich in die Höhe zu treiben?
Welche Einstellungen könnte ich vornehmen um die Rechenzeit zu verringern? Ich habe z.B. anstatt RPROP mal die standard BP ohne loopback gewählt und die Rechenzeit und der Net Error haben sich (wider erwarten) deutlich verbessert.
Gibt es eine bestimmte Systemleistung die nötig ist für dieses Problem? Ich hätte notfalls auch die Möglichkeit das irgendwie auf einem Server laufen zu lassen.

Vielen Dank schon einmal für hilfreiche Hinweise.
User avatar
TJetter
Posts: 346
Joined: Sat 13. Oct 2012, 12:04

Re: Rechenzeit

Post by TJetter »

Hallo,
Toddster wrote:Können solche Datenmengen sinnvoll verarbeitet ohne die Rechenzeit unendlich in die Höhe zu treiben?
So lange der Rechner ausreichend RAM hat (also nicht auf die Platte swappen muss), sollte die Rechenzeit linear mit der Anzahl der Trainingsmuster steigen.
Dagegen ist prinzipiell erst einmal nichts zu machen. Ob die Zeiten akzeptabel sind, muss man im Einzelfall entscheiden.
Toddster wrote:Gibt es eine bestimmte Systemleistung die nötig ist für dieses Problem?
Ausreichendes RAM vorausgesetzt, ist die Taktrate des Prozessors entscheidend. Die Anzahl der Kerne ist zweitranging. Es sollte zwar mehr als einer sein, da MemBrain schon mehrere Threads am laufen hat. Allerdings findet die eigentliche Berechnung in einem einzigen Thread statt, so dass immer nur ein Kern voll ausgelastet wird.
Die Aufteilung der Netzberechnung auf mehrere Kerne ist problematisch, da die Berechnung im NN immer schichtweise durchgeführt werden muss. Aus diesem Grund können nicht mehrere Kerne beliebig 'vor sich hin rechnen'. Sie müssen in jedem Layer des Netzes permanent aufeinander warten, bis alle Neuronen des Layers berechnet sind. Diese Synchronisation macht eine feste Aufteilung des Netzes auf mehrere Kerne ineffizient und in aller Regel langsamer als mit nur einem Kern. Ich arbeite hier allerdings an einem neuen Ansatz, der erfolgversprechender ist, so dass MemBrain in naher Zukunft hoffentlich alle Kerne voll nutzen kann.

Viele Grüße
Thomas Jetter
AlexG
Posts: 1
Joined: Fri 10. Aug 2012, 09:33

Re: Rechenzeit

Post by AlexG »

TJetter wrote: So lange der Rechner ausreichend RAM hat (also nicht auf die Platte swappen muss), sollte die Rechenzeit linear mit der Anzahl der Trainingsmuster steigen.
Ausreichend viel RAM ist wirklich Gold wert. Die Erfahrung musste ich auch schon machen.
Post Reply