Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Neuronales Netz - Wie kann es sich mehrere Dinge merken? (https://www.delphipraxis.net/100713-neuronales-netz-wie-kann-es-sich-mehrere-dinge-merken.html)

Flips 2. Okt 2007 23:20


Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Hi.

Ich weiß, es gab in letzter Zeit viele Themen zu neuronalen Netzen.
Bis jetzt hab ich auch mit Hilfe von Google alles hinbekommen und bin nun soweit, das ich ein Programm habe welches aus 8*8 Panels (weiß oder schwarz) die Zahl 1 erkennt.
http://owned.ow.funpic.de/wichtig/panels.PNG
Soweit sogut.
Wenn ich das Programm jetzt aber so modifizieren will, dass es alle Zahlen von 0-9 erkennt, dann komm ich rein theoretisch nicht dahinter, wie EIN Netz 10 verschiedene Muster erkennen und zuordnen kann.

DAS es geht weiß ich, wurde ja hier schon gezeigt.

Korrigiert mich, wenn ich was falsch verstanden haben, aber das Lernen einer Zahl läuft doch so ab:
- Lege die Zahl fest (in meinem Fall: 1)
- SCHLEIFE START
- Erstelle eine Zufallszahl zwischen 0-9
- Wenn die Zufallszahl = 1, dann muss im Output nachher 1 stehen, wenn nicht dann 0
- Lerne aus den Fehlern
- SCHLEIFE ENDE

So, jetzt hat sich das Netz auf die 1 eingelernt, klappt ja auch soweit.
:?: Wenn ich das ganze jetzt für die 2 wiederhole, dann sind doch die Gewichte usw. für die 1 "weg", oder?

:?: Ich könnte die Gewichte vorher in eine Datei speichern, aber das muss doch irgendwie einfacher gehen, oder???

Thx!!!

Reinhard Kern 3. Okt 2007 00:02

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Zitat:

Zitat von Flips
Hi.

...
Wenn ich das Programm jetzt aber so modifizieren will, dass es alle Zahlen von 0-9 erkennt, dann komm ich rein theoretisch nicht dahinter, wie EIN Netz 10 verschiedene Muster erkennen und zuordnen kann.
...
Ich könnte die Gewichte vorher in eine Datei speichern, aber das muss doch irgendwie einfacher gehen, oder???

Thx!!!

Hallo,

wenn ein Netz 2 Muster erkennen soll, muss es 2 Ausgänge haben usw.

Gruss Reinhard

Dunkel 3. Okt 2007 00:37

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Zitat:

Zitat von Reinhard Kern
wenn ein Netz 2 Muster erkennen soll, muss es 2 Ausgänge haben usw.

Vielen Dank für diese Info! :thumb: Das ist gut zu wissen.

Das verkompliziert mein Vorhaben mit KNN doch erheblich; in sofern stelle ich das zuerst mal hinten an. Gut, dass ich noch nicht großartig angefangen habe. :stupid:

Flips 3. Okt 2007 10:31

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Hi.

Das heißt in meinem Fall also, dass das Netz 10 Ausgänge haben muss?
Kennt nicht zufällig jemand ne gute und einfach Implementierung, abgesehn von der einen OS-Geschichte im Forum?
Oder ein Tutorial was im wesentlichen auf die Implementierung, und nicht auf die Theorie abzielt?

Phoenix 3. Okt 2007 10:56

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Nein, Du brauchst nur 4 Ausgänge. Die Ausgabe eines NN ist Binär.

Flips 3. Okt 2007 11:11

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Achso...hm ok, das ändert das ganze schon um einiges^^

Flips 3. Okt 2007 11:42

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Mhh oder auch nicht, auf brinkee's Website steht in seiner Facharbeit folgendes:
Zitat:

Zur Vereinfachung sollen hier keine Buchstaben, sondern nur die Zahlen von 0 bis 9
identifiziert werden können, weswegen 10 Ganglienzellen benötigt werden, welche die
Output-Schicht bilden.
Dann ist die Ausgabe hier aber nicht binär

HERMES 3. Okt 2007 12:33

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Das ist auch ein binärer Code (1 aus 10 Code), du könntest genauso gut irgendeinen anderen binären Code verwenden, wie Beispielsweise Grey oder BCD.

Reinhard Kern 3. Okt 2007 13:07

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
Zitat:

Zitat von HERMES
Das ist auch ein binärer Code (1 aus 10 Code), du könntest genauso gut irgendeinen anderen binären Code verwenden, wie Beispielsweise Grey oder BCD.

Hallo,

das ist bei einem NN eben wurscht - die Beziehung Eingang - Ausgang wird gelernt, und wenn der Ausgang eben BCD sein soll, wird die BCD-Kodierung mitgelernt. Natürlich müssen dann die Lerndaten auch so sein, mit BCD als Soll.

Gruss Reinhard

Edit: die Zahl der Ausgänge darf man nicht überbewerten - das Netz muss komplex genug sein, um z.B. für Buchstabenerkennung 256 Zustände zu unterscheiden, ob dazu 256 Ausgänge gebraucht werden oder nur 8, ist zweitrangig. Bitte NICHT fragen, wie komplex das Netz genau sein muss.

Reinhard

Flips 3. Okt 2007 18:01

Re: Neuronales Netz - Wie kann es sich mehrere Dinge merken?
 
So, ich habes es endlich geschafft.
Das Netz funktioniert, werde es eventuell bald mitsamt Source hochladen.
Noch zum Aufbau: Habe jetzt 10 Output-Neuronen genommen, während der Programmierung ist mir klar geworden das es natürlich wie schon erwähnt auch binär kein Problem ist.

Danke an alle!!! :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:01 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz