AI-For-Beginners/translations/de/lessons/3-NeuralNetworks/03-Perceptron
localizeflow[bot] 6588f07ae1 chore(i18n): sync translations with latest source changes (chunk 1/1, 382 changes) 2026-01-30 01:03:05 +00:00
..
lab chore(i18n): sync translations with latest source changes (chunk 1/1, 382 changes) 2026-01-30 01:03:05 +00:00
Perceptron.ipynb 🌐 Update translations via Co-op Translator 2025-12-12 20:42:50 +00:00
README.md chore(i18n): sync translations with latest source changes (chunk 1/1, 382 changes) 2026-01-30 01:03:05 +00:00

README.md

Einführung in Neuronale Netzwerke: Perzeptron

Quiz vor der Vorlesung

Einer der ersten Versuche, etwas Ähnliches wie ein modernes neuronales Netzwerk zu implementieren, wurde 1957 von Frank Rosenblatt vom Cornell Aeronautical Laboratory unternommen. Es handelte sich um eine Hardware-Implementierung namens "Mark-1", die darauf ausgelegt war, primitive geometrische Figuren wie Dreiecke, Quadrate und Kreise zu erkennen.

Frank Rosenblatt Das Mark 1 Perzeptron

Bilder von Wikipedia

Ein Eingabebild wurde durch ein 20x20-Fotodiodenarray dargestellt, sodass das neuronale Netzwerk 400 Eingaben und einen binären Ausgang hatte. Ein einfaches Netzwerk enthielt einen Neuron, auch Schwellenwert-Logikeinheit genannt. Die Gewichte des neuronalen Netzwerks fungierten wie Potentiometer, die während der Trainingsphase manuell eingestellt werden mussten.

Ein Potentiometer ist ein Gerät, das es dem Benutzer ermöglicht, den Widerstand eines Stromkreises anzupassen.

Die New York Times schrieb damals über das Perzeptron: der Embryo eines elektronischen Computers, von dem [die Marine] erwartet, dass er laufen, sprechen, sehen, schreiben, sich selbst reproduzieren und sich seiner Existenz bewusst sein wird.

Perzeptron-Modell

Angenommen, wir haben N Merkmale in unserem Modell, in diesem Fall wäre der Eingabevektor ein Vektor der Größe N. Ein Perzeptron ist ein Modell zur binären Klassifikation, d.h. es kann zwischen zwei Klassen von Eingabedaten unterscheiden. Wir nehmen an, dass für jeden Eingabevektor x die Ausgabe unseres Perzeptrons entweder +1 oder -1 ist, je nach Klasse. Die Ausgabe wird mit der Formel berechnet:

y(x) = f(wTx)

wobei f eine Stufenaktivierungsfunktion ist.

Training des Perzeptrons

Um ein Perzeptron zu trainieren, müssen wir einen Gewichtsvektor w finden, der die meisten Werte korrekt klassifiziert, d.h. den kleinsten Fehler ergibt. Dieser Fehler E wird durch das Perzeptron-Kriterium wie folgt definiert:

E(w) = -∑wTxiti

wobei:

  • die Summe über die Trainingsdatenpunkte i genommen wird, die zu einer falschen Klassifikation führen
  • xi die Eingabedaten sind und ti entweder -1 oder +1 für negative bzw. positive Beispiele ist.

Dieses Kriterium wird als Funktion der Gewichte w betrachtet, und wir müssen es minimieren. Oft wird eine Methode namens Gradientenabstieg verwendet, bei der wir mit einigen Anfangsgewichten w(0) beginnen und die Gewichte bei jedem Schritt gemäß der Formel aktualisieren:

w(t+1) = w(t) - η∇E(w)

Hier ist η die sogenannte Lernrate, und ∇E(w) bezeichnet den Gradienten von E. Nachdem wir den Gradienten berechnet haben, erhalten wir:

w(t+1) = w(t) + ∑ηxiti

Der Algorithmus in Python sieht wie folgt aus:

def train(positive_examples, negative_examples, num_iterations = 100, eta = 1):

    weights = [0,0,0] # Initialize weights (almost randomly :)
        
    for i in range(num_iterations):
        pos = random.choice(positive_examples)
        neg = random.choice(negative_examples)

        z = np.dot(pos, weights) # compute perceptron output
        if z < 0: # positive example classified as negative
            weights = weights + eta*weights.shape

        z  = np.dot(neg, weights)
        if z >= 0: # negative example classified as positive
            weights = weights - eta*weights.shape

    return weights

Fazit

In dieser Lektion haben Sie etwas über das Perzeptron gelernt, ein Modell zur binären Klassifikation, und wie man es durch die Verwendung eines Gewichtsvektors trainiert.

🚀 Herausforderung

Wenn Sie versuchen möchten, Ihr eigenes Perzeptron zu erstellen, probieren Sie dieses Lab auf Microsoft Learn aus, das den Azure ML Designer verwendet.

Quiz nach der Vorlesung

Rückblick & Selbststudium

Um zu sehen, wie wir das Perzeptron verwenden können, um ein Spielzeugproblem sowie reale Probleme zu lösen, und um weiter zu lernen, gehen Sie zum Perceptron-Notebook.

Hier ist ein interessanter Artikel über Perzeptrons.

Aufgabe

In dieser Lektion haben wir ein Perzeptron für eine binäre Klassifikationsaufgabe implementiert und es verwendet, um zwischen zwei handgeschriebenen Ziffern zu klassifizieren. In diesem Lab sollen Sie das Problem der Ziffernklassifikation vollständig lösen, d.h. bestimmen, welche Ziffer am wahrscheinlichsten zu einem gegebenen Bild gehört.