ich bin nicht sicher, ob ich dich richtig verstehe - aber über Backpropagation Learning laufen sowohl das "einfache" als auch das Jordan Backpropagation Netz.
Beide Netze können grundsätzlich ihre Lern-Matrix auf SD Card speichern und wieder abrufen.
Der Unterschied ist, dass das Jordan-Netz auch bei identischen punktuellen Sensorkonstellationen berücksichtigen kann, wie sich ihr ZUstand in der zurückliegenden Vergangenheit entwickelt hat: hier habe ich es erklärt:
http://www.mindstormsforum.de/viewto...&t=5601#p67272
Begonnen habe ich aber nicht mit Backpropagation, sondern mit einschichtigen Feed-Forward-Netzen und der der Perception Training Rule.
Die Skalierbarkeit heißt nichts anderes, als dass ich die Netzmatrix-Dimension frei durch einfache Definitionen der Arraygrößen vorwählen kann, so kann ich die Netzgröße und die Anzahl der gelernten Input-Output-Pattern den Erfordernissen und der cpu bzw. dem verfügbaren RAM jederzeit anpassen, ohne das ganze Programm neu schreiben zu müssen. Alle Neuronen samt allen ihren Verknüpfungen miteinander in sämtlichen Schichten werden automatisch angepasst und korrekt initialisiert. Einfach nach Größenänderung neu kompilieren, fertig, läuft.
Im Moment ist es für den DUE ausgereizt, für größere cpus / RAM könnte man es noch ein Riesen-Stück hochskalieren (hätte man z.B. einen TRE mit Sitara und mit 1GB statt 96kB RAM samt Sketch/Wiring per Arduino IDE). Da es den aber nicht gibt, ist hier für mich erstmal Ende Gelände mit dem momentanen Ausbau.
https://blog.arduino.cc/category/arduino/tre/
Aber vielleicht kommt er ja doch noch irgendwann, oder irgendwer bringt irgendwann WiringPi samt Arduino-IDE auf einem Raspi etc. zum Laufen.
Nicht verstanden habe ich allerdings deine Frage "Die Realtime Berechnungsgrenzen und Lernzeit über native code zu optimieren hat Dir wieviel an Zeit gebracht?"
Lesezeichen