i

Eine weitere Vereinfachung

Bei den Aufgaben im vorhergehenden Abschnitt hast Du gesehen, dass man für eine bestimmte Zuordnung der Eingangswerte zu den Ausgangswerten sowohl den Gewichten wi als auch dem Schwellenwert s geeignete Werte geben muss.

Würde man z.B. den Schwellenwert immer auf den Wert 0 setzen, könnten manche Zuordnungen nicht mehr alleine über die Belegung der Gewichte wi erreicht werden.

Trotzdem wäre es elegant, wenn das Zuordnungsverhalten eines Neurons nur über die synaptischen Gewichte wi alleine festgelegt werden könnte und man sich nicht immer noch gesondert um den Schwellenwert s kümmern müsste. Hierfür haben sich die Informatiker einen Trick ausgedacht:

Man setzt den Schwellenwert tatsächlich auf s=0, so dass sich die Ausgabefunktion nochmal vereinfacht: y=f(a)={1wenn a>00sonst

Um trotzdem wieder alle Zuordnungen zu ermöglichen, die mit dem Schwellenwert möglich waren, fügt man dem Neuron jedoch noch einen weiteren Eingang x3 und ein zugehöriges synaptisches Gewicht w3 hinzu. Den Eingang setzt man konstant auf den Wert x3=1, so dass in der Summe a=w1x1+w2x2+...+wnxn+wn+11 nun noch der Wert wn+11 hinzukommt.

Perzeptron mit konstantem Eingang[1]

Man kann sich leicht überlegen, dass ein solches Neuron mit dem zusätzlichen 0-ten Eingang sich genauso wie ein Neuron aus dem letzten Abschnitt mit Schwellenwert s verhält, wenn man wn+1=s setzt.

Aufgabe 1

Begründe, weshalb ein Neuron mit dem zusätzlichen 0-ten Eingang sich genauso verhält wie ein Neuron aus dem letzten Abschnitt mit Schwellenwert s, wenn man wn+1=s setzt.

Aufgabe 2: Berechnen eines Ausgangswertes

Berechne per Hand die Ausgangswerte eines Neurons mit zwei Eingängen für alle Kombinationen (x1=0;x2=0);(x1=0;x2=1);(x1=1;x2=0);(x1=1;x2=1) bei bei folgenden Werten. w1=2.5w2=3.7w3=1.2 Falls Du im Unterricht schon logische Schaltungen kennen gelernt hast: Bestimme, welcher logischen Grundschaltung diese Zuordnung der Eingänge zum Ausgangswert entspricht.

Aufgabe 3: Festlegen von Gewichten per Hand

Betrachte ein Neuron mit zwei Eingängen x1 und x2, die beide die Werte 0 oder 1 annehmen können (und dem konstanten Eingang x3=1). Lege die Werte für die drei wi so fest, dass der Wert von y dann und nur dann 1 ist, wenn beide Eingänge den Wert 1 haben (entsprechend einer UND-Schaltung).

Aufgabe 4: Gewichte für einen etwas komplizierteren Zusammenhang

Betrachte ein Neuron mit zwei Eingängen x1 und x2, die beide die Werte 0 oder 1 annehmen können (und dem konstanten Eingang x3=1). Lege die Werte für die drei wi so fest, dass der Wert von y dann und nur dann 1 ist, wenn x1 den Wert 1 hat und x2 den Wert 0.

Aufgabe 5: Ein extrem einfacher Zusammenhang

Betrachte ein Neuron mit zwei Eingängen x1 und x2, die beide die Werte 0 oder 1 annehmen können (und dem konstanten Eingang x3=1) . Lege die Werte für die drei wi so fest, dass der Wert von y bei jeder der vier möglichen Eingangskombinationen den Wert 1 hat.

Aufgabe 6: Ein sehr problematischer Zusammenhang

Betrachte ein Neuron mit zwei Eingängen x1 und x2, die beide die Werte 0 oder 1 annehmen können (und dem konstanten Eingang x3=1) . Versuche zunächst, die Werte für die drei wi so festzulegen, dass der Wert von y immer dann und nur dann 1 ist, wenn die beiden x-Werte verschiedene Werte haben.
Beschreibe dann, warum eine passende Festlegung der Gewichte bei noch so viel Anstrengung nicht gelingen kann.

Aufgabe 7: Ein Computer-Programm für ein Perzeptron mit festen Gewichten

Schreibe ein Computer-Programm (z.B. in Python) für ein Perzeptron mit zwei Eingängen (und einem zusätzlichen konstanten Eingang). Lege die Gewichte im Programmcode fest und ermögliche es, dass der Benutzer die Eingangswerte über die Tastatur eingibt. Der Ausgangswert des Neurons soll dann auf dem Bildschirm angezeigt werden. Überprüfe mit Hilfe dieses Programms, ob Du die Aufgaben 2-4 richtig gelöst hast.

Aufgabe 8: Perzeptron mit Gewichten zum Eingeben

Schreibe ein Computer-Programm (z.B. in Python) für ein Perzeptron mit beliebig vielen Eingängen (und einem zusätzlichen konstanten Eingang). Zunächst soll die Anzahl der Eingänge (n) über die Tastatur eingegeben werden. Dann sollen die n Eingangswerte eingegeben werden. Zuletzt sollen die n+1 synaptischen Gewichte eingegeben werden. Danach soll das Programm den Ausgangswert des Neurons berechnen.
Tipp: Es empfiehlt sich, für die Zahlenwerte von Eingängen und synaptischen Gewichten Listen (bzw. Arrays) zu verwenden.

Quellen

Suche

16.5.5.3Eine weitere Vereinfachung
Kopieren durch Anklicken

Rückmeldung geben