Hey an alle,
habe einen Aufsatz zu bearbeiten. Es geht gerade über die Fehlerhäufigkeit eines neuronales Netzes. Kann mir jemand kurz sagen, wovon diese abhängig ist?? Ich würde jetzt schätzen, von der Höhe der Testmuster??
MfG
J.
Hey an alle,
habe einen Aufsatz zu bearbeiten. Es geht gerade über die Fehlerhäufigkeit eines neuronales Netzes. Kann mir jemand kurz sagen, wovon diese abhängig ist?? Ich würde jetzt schätzen, von der Höhe der Testmuster??
MfG
J.
Hallo,
welche Fehler? Ein NN gibt auf ein Eingabemuster die „passendse“ Antwort, die es entsprechend seinem Training finden kann. Wenn ein NN für die Erkennung von 0…9 eine 3 nicht erkennt, könnte man zwar sagen (als Mensch), das NN hat einen Fehler gemacht, aber in Wirklichkeit weicht entweder die 3 zu stark vom Standard ab oder das NN wurde nicht ausreichend trainiert.
Ich würde das genauso sehen wie bei einem allgemeinen Computer: es kommt nicht unbedingt das Erwartete heraus, aber das liegt praktisch immer am Bediener. Echte Computerfehler gibt es theoretisch, aber sie sind mindestens millionenfach seltener. Ebenso wie ein Computer wird ein NN auf das gleiche Eingabemuster auch immer die gleiche Antwort wählen.
Dazu fehlt auch noch ein Bezugspunkt: wer entscheidet denn im obigen Beispiel, was eine korrekte 3 ist? Sollte man dazu ausgerechnet den Menschen als fehlerfrei betrachten (und wenn welchen)?
Kurzform der Antwort: ein Neuronales Netz macht keine Fehler.
Gruss Reinhard
welche Fehler? Ein NN gibt auf ein Eingabemuster die
„passendse“ Antwort, die es entsprechend seinem Training
finden kann. Wenn ein NN für die Erkennung von 0…9 eine 3
nicht erkennt, könnte man zwar sagen (als Mensch), das NN hat
einen Fehler gemacht, aber in Wirklichkeit weicht entweder die
3 zu stark vom Standard ab oder das NN wurde nicht ausreichend
trainiert.
So einfach ist das nicht. Nicht jedes Neuronale Netz kann jede Aufgabe beliebig gut lösen.
Ein Perceptron ohne verdeckte Schichten kann beispielsweise nur linear separable Probleme lösen. Bereits mit einer simplen XOR-Verknüpfung ist es hoffnungslos überfordert - egal wie man es trainiert.
Auch ein Netz, dessen Architektur zwar prinzipiell für die Lösung des Problems geeignet ist, kann scheitern, wenn es nicht komplex genug ist. Genau wie beim Versuch, eine Parabel mit einer Geraden zu fitten, kommt es dann zur Übergeneralisierung. Auch hier hilft kein noch so gutes Training.
Umgekehrt kann ein Netzt auch dann Fehler produzieren, wenn es zu komplex für die Lernaufgabe ist. Genau wie beim Fit von beispielsweise 5 Datenpunkten mit einem Polynom 10. Grades kann, kann es dann passieren, dass der Standard perfekt wiedergegeben wird, aber bereits bei kleinen Abweichungen vom Standard große Fehler auftreten.
Hallo,
das ist ja alles richtig, aber meiner Meinung nach nicht das, was man unter Fehlerhäufigkeit eines technischen Systems versteht. Wenn du mit deinem Fahrrad einen Berg nicht hochkommst, sagst du ja auch nicht, das Fahrrad arbeitet fehlerhaft - zumindest wäre das eine sehr anthropozentrische Definition von Fehler.
Gruss Reinhard
das ist ja alles richtig, aber meiner Meinung nach nicht das,
was man unter Fehlerhäufigkeit eines technischen Systems
versteht. Wenn du mit deinem Fahrrad einen Berg nicht
hochkommst, sagst du ja auch nicht, das Fahrrad arbeitet
fehlerhaft - zumindest wäre das eine sehr anthropozentrische
Definition von Fehler.
Wenn ich den Berg nicht hochkomme, weil beim Fahrrad aufgrund der dabei auftretenden Belastung die Kette reißt, dann würde ich schon sagen, dass das Fahrrad fehlerhaft arbeitet. Genauso spreche ich davon, dass ein neuronales Netz fehlerhaft arbeitet, wenn es prinzipbedingt und nicht etwa durch Bedienungsfehler falsche Ausgaben liefert. Dass diese Fehler (egal ob beim Fahrrad oder beim neuronalen Netz) Resultat eines ungeeigneten Designs sind, ist ein anderes Thema.