perzeptron_aufgaben
                Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| perzeptron_aufgaben [2025/02/08 10:26] – torsten.roehl | perzeptron_aufgaben [2025/02/09 12:12] (aktuell) – torsten.roehl | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Perzeptron Aufgaben ====== | ====== Perzeptron Aufgaben ====== | ||
| + | ===== Aufgabe: Klassifikation | ||
| + | Einfache (klassische) Perzeptron-Probleme wie das UND/ODER und das XOR-Problem werden im Abschnitt Lernalgorithmus behandelt ([[lernalgorithmus|siehe dort]]). | ||
| + | ===== Aufgabe: Klassifikation von Iris setosa ===== | ||
| + | // | ||
| + | Der **Iris-Datensatz** ist einer der bekanntesten Datensätze im Bereich maschinelles Lernen. Er enthält Messungen von drei verschiedenen Schwertlilienarten (**Iris setosa**, **Iris versicolor**, | ||
| + | \\ | ||
| + | Der Datensatz wurde ursprünglich **1936 von Ronald A. Fisher** veröffentlicht und ist frei verfügbar ([[https:// | ||
| + | \\ | ||
| + | Die Daten enthalten vier messbare Merkmale der Blüte, die als Eingabe für das neuronale Netz dienen, sowie den Namen der Art als Ausgabe. | ||
| + | // | ||
| - | ===== Aufgabe: Klassifikation von Iris setosa | + | <WRAP center round tip 90%> | 
| + | Das Ziel dieser | ||
| + | </ | ||
| - | |||
| - | Der **Iris-Datensatz** ist einer der bekanntesten Datensätze im Bereich maschinelles Lernen. Er enthält Messungen von drei verschiedenen Schwertlilienarten (**Iris setosa**, **Iris versicolor**, | ||
| - | Das Ziel dieser Aufgabe ist es, ein **einfaches Perzeptron** zu trainieren, das automatisch erkennt, ob eine gegebene Blume zur Art **Iris setosa** gehört oder nicht. Die Daten enthalten vier messbare Merkmale der Blüte, die als Eingabe für das neuronale Netz dienen. | ||
| - | ==== Die drei Iris-Arten ==== | ||
| - | Hier sind Beispielbilder der drei Blumenarten: | ||
| ^ **Iris setosa** | ^ **Iris setosa** | ||
| - | | {{https:// | + | | {{ :inf: | 
| - | ==== Gegeben | + | ==== Datenformat (CSV) ==== | 
| - | Der Datensatz | + | |
| + | Der Datensatz | ||
| + | |||
| + | * **Art** (Setosa, Versicolor oder Virginica) | ||
| * **Kelchblattlänge (cm)** | * **Kelchblattlänge (cm)** | ||
| * **Kelchblattbreite (cm)** | * **Kelchblattbreite (cm)** | ||
| Zeile 23: | Zeile 33: | ||
| * **Kronblattbreite (cm)** | * **Kronblattbreite (cm)** | ||
| - | Zusätzlich soll ein **weiteres Eingangsneuron** mit festem Wert hinzugefügt werden, um eine implizite **Schwellenwertanpassung** zu ermöglichen. | + | <WRAP center round download 95%> | 
| + | **Download Iris-Datensatz als // | ||
| - | ==== Vorgehen | + | |
| + | {{ : | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Aufgabe | ||
| + | |||
| + | ^ **Topologie des Netzwerks** | ||
| + | |{{ : | ||
| + | |Ein Perzeptron mit vier Eingangsneuronen (insgesamt fünf Gewichten) und einem Ausgangsneuron für die Klassifizierung der Art. | | ||
| - **Laden Sie den Datensatz** und bereiten Sie die Daten für das Training vor. | - **Laden Sie den Datensatz** und bereiten Sie die Daten für das Training vor. | ||
| - | - **Erweitern Sie den Datensatz um ein zusätzliches Eingangsneuron**, | ||
| - **Teilen Sie den Datensatz** in **80% Trainingsdaten** und **20% Testdaten**. | - **Teilen Sie den Datensatz** in **80% Trainingsdaten** und **20% Testdaten**. | ||
| - **Kodieren Sie das Problem als binäre Klassifikation**: | - **Kodieren Sie das Problem als binäre Klassifikation**: | ||
| * **Setosa = 1** | * **Setosa = 1** | ||
| * **Nicht-Setosa (Versicolor/ | * **Nicht-Setosa (Versicolor/ | ||
| - | - **Implementieren Sie ein einfaches Perzeptron**, | ||
| - | - **Verwenden Sie die Schwellenwert-Aktivierungsfunktion**: | ||
| - | * \[ y = 1, \quad \text{falls } \sum w_i x_i \geq 0 \] | ||
| - | * \[ y = 0, \quad \text{sonst} \] | ||
| - **Trainieren Sie das Modell** mit dem Trainingsdatensatz. | - **Trainieren Sie das Modell** mit dem Trainingsdatensatz. | ||
| - **Bewerten Sie die Klassifikationsgenauigkeit** auf dem Testdatensatz. | - **Bewerten Sie die Klassifikationsgenauigkeit** auf dem Testdatensatz. | ||
| + | <WRAP center round info 85%> | ||
| + | Verwenden Sie die Schwellenwertfunktion als Aktivierungsfunktion. | ||
| + | Die Schwelle kann als 5. Eingabeneuron mit dem konstanten Input **1** moduliert werden. | ||
| + | </ | ||
| - | ===== Aufgabe: Training eines einfachen Perzeptrons zur Klassifikation von Iris setosa ===== | ||
| - | ==== Motivation ==== | ||
| - | Der **Iris-Datensatz** ist einer der bekanntesten Datensätze im Bereich maschinelles Lernen. Er enthält Messungen von drei verschiedenen Schwertlilienarten (**Iris setosa**, **Iris versicolor**, | ||
| - | Das Ziel dieser Aufgabe ist es, ein **einfaches | + | ==== Analyse ==== | 
| + | ++++ Perzeptron | ||
| + | |||
| + | Wir untersuchen jetzt genauer, warum das Perzeptron in der Lage ist, diese Aufgabe zu lernen. | ||
| - | ==== Die drei Iris-Arten ==== | + | === Streudiagramm | 
| - | Hier sind Beispielbilder der drei Blumenarten: | + | Erstellen Sie eine grafische Darstellung, | 
| - | ^ **Iris setosa** | + |  | 
| - | | {{https:// | + |  | 
| + |  | ||
| + | * Die **Datenpunkte für Nicht-Setosa** in einer anderen Farbe dargestellt werden. | ||
| + | Betrachten Sie den Graphen: **Was fällt auf? | ||
| - | ===== Aufgabe: Training eines einfachen Perzeptrons zur Klassifikation von Iris setosa ===== | + | === Entscheidungsgrenze | 
| + | Jetzt untersuchen wir, wie das Perzeptron gelernt hat, das Problem zu klassifizieren. | ||
| - | ==== Motivation ==== | + | Das Perzeptron berechnet eine gewichtete Summe der Eingaben und entscheidet nach einer Schwellenwertfunktion: | 
| - | Der **Iris-Datensatz** ist einer der bekanntesten Datensätze im Bereich maschinelles Lernen. Er enthält Messungen von drei verschiedenen Schwertlilienarten (**Iris setosa**, **Iris versicolor**, | + | |
| - | Der Datensatz wurde ursprünglich **1936 von Ronald A. Fisher** veröffentlicht und ist **gemeinfrei**. Er ist unter folgendem Wikipedia-Link dokumentiert: | + | $$ y = | 
| - | → [[https:// | + | \begin{cases} | 
| + | 1, & \text{falls } w_1 x_1 + w_2 x_2 + b \geq 0 \\ | ||
| + | 0, & \text{sonst} | ||
| + | \end{cases} | ||
| + | $$ | ||
| - | Der Datensatz ist frei verfügbar und soll hier als **Trainingsdatensatz für ein einfaches Perzeptron** verwendet werden. | + | Hier sind: | 
| - | ==== Die drei Iris-Arten ==== | + | * \( x_1 \) = Kronblattlänge | 
| - | Hier sind Beispielbilder der drei Blumenarten: | + | * \( x_2 \) = Kronblattbreite | 
| + | * \( w_1, w_2 \) = Gewichte, die das Perzeptron gelernt hat | ||
| + | * \( b \) = Bias (wird durch das fünfte Eingangsneuron mit Wert 1 gesteuert) | ||
| - | ^ **Iris setosa** | + | Die **Entscheidungsgrenze** tritt genau dann auf, wenn die gewichtete Summe **gleich Null** ist: | 
| - | | {{https:// | + | |
| - | ==== Gegeben ==== | + | $$ w_1 x_1 + w_2 x_2 + b = 0 $$ | 
| - | Der Datensatz enthält vier Merkmale, die für jede Blume gemessen wurden: | + | |
| - | * **Kelchblattlänge (cm)** | + | |
| - | * **Kelchblattbreite (cm)** | + | |
| - | * **Kronblattlänge (cm)** | + | |
| - | * **Kronblattbreite (cm)** | + | |
| - | Zusätzlich soll ein **weiteres Eingangsneuron** mit festem Wert hinzugefügt werden, um eine implizite | + |  | 
| + |  | ||
| - | ==== Vorgehen ==== | + | Diskutieren Sie das Ergebnis. | 
| - | - **Laden Sie den Datensatz** und bereiten Sie die Daten für das Training vor. | + | ++++ | 
| - |  | + | ++++ Zusatzaufgabe: | 
| - |  | + | Erstellen Sie eine **3D-Darstellung**, um zu untersuchen, | 
| - |  | + | |
| - | * **Setosa | + | * Verwenden | 
| - | * **Nicht-Setosa | + |  | 
| - |  | + | * **Kronblattbreite (y-Achse)** | 
| - | - **Verwenden Sie die Schwellenwert-Aktivierungsfunktion**: | + |  | 
| - | * \[ y = 1, \quad \text{falls } \sum w_i x_i \geq 0 \] | + | * Erstellen | 
| - | * \[ y = 0, \quad \text{sonst} \] | + | * Die **Datenpunkte für Setosa** | 
| - | - **Trainieren Sie das Modell** mit dem Trainingsdatensatz. | + | * Die **Datenpunkte für Nicht-Setosa** | 
| - |  | + | * Ermitteln | 
| + | |||
| + | Diskutieren Sie das Ergebnis: | ||
| + |  | ||
| + | * Wie unterscheidet sich die Trennung von der 2D-Darstellung? | ||
| + | ++++ | ||
perzeptron_aufgaben.1739010391.txt.gz · Zuletzt geändert:  von torsten.roehl
                
                