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:45] – 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 ===== | ===== Aufgabe: Klassifikation von Iris setosa ===== | ||
Zeile 7: | Zeile 7: | ||
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 **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:// | + | Der Datensatz wurde ursprünglich **1936 von Ronald A. Fisher** veröffentlicht und ist frei verfügbar ([[https:// |
\\ | \\ | ||
- | 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, sowie den Namen der Art als Ausgabe. |
+ | // | ||
+ | |||
+ | |||
+ | <WRAP center round tip 90%> | ||
+ | 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. | ||
+ | </WRAP> | ||
+ | |||
- | ==== Die drei Iris-Arten ==== | ||
- | Hier sind Beispielbilder der drei Blumenarten: | ||
^ **Iris setosa** | ^ **Iris setosa** | ||
- | | {{https:// | + | | {{ :inf: |
==== Datenformat (CSV) ==== | ==== Datenformat (CSV) ==== | ||
Zeile 27: | Zeile 33: | ||
* **Kronblattbreite (cm)** | * **Kronblattbreite (cm)** | ||
- | Ein Beispiel für eine Zeile in der CSV-Datei: | + | <WRAP center round download 95%> |
+ | **Download Iris-Datensatz als // | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | </ | ||
==== Aufgabe ==== | ==== 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. | ||
- **Teilen Sie den Datensatz** in **80% Trainingsdaten** und **20% Testdaten**. | - **Teilen Sie den Datensatz** in **80% Trainingsdaten** und **20% Testdaten**. | ||
Zeile 38: | Zeile 53: | ||
- **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. | ||
- | - **Erstellen Sie einen aussagekräfgigen Graphen. | + | |
<WRAP center round info 85%> | <WRAP center round info 85%> | ||
- | Verwenden Sie die **Schwellenwertfunktion** als Aktivierungsfunktion. | + | Verwenden Sie die Schwellenwertfunktion als Aktivierungsfunktion. |
- | Die Schwelle kann als **5. Eingabeneuron mit dem konstanten Input 1** moduliert werden. | + | Die Schwelle kann als 5. Eingabeneuron mit dem konstanten Input **1** moduliert werden. |
</ | </ | ||
+ | ==== Analyse ==== | ||
+ | ++++ Perzeptron lernen | | ||
+ | |||
+ | Wir untersuchen jetzt genauer, warum das Perzeptron in der Lage ist, diese Aufgabe zu lernen. | ||
+ | === Streudiagramm === | ||
+ | Erstellen Sie eine grafische Darstellung, | ||
+ | * Wählen Sie **zwei Merkmale** des Datensatzes aus (**Kronblattlänge und Kronblattbreite**). | ||
+ | * Erstellen Sie ein **Streudiagramm**, | ||
+ | * Die **Datenpunkte für Setosa** in einer Farbe dargestellt werden. | ||
+ | * Die **Datenpunkte für Nicht-Setosa** in einer anderen Farbe dargestellt werden. | ||
+ | Betrachten Sie den Graphen: **Was fällt auf? | ||
- | ===== Aufgabe: Klassifikation von Iris setosa ===== | + | === Entscheidungsgrenze |
+ | Jetzt untersuchen wir, wie das Perzeptron gelernt hat, das Problem zu klassifizieren. | ||
- | // | + | Das Perzeptron |
- | 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:// | + | |
- | \\ | + | |
- | Das Ziel dieser Aufgabe ist es, ein **einfaches | + | |
- | // | + | |
- | ==== Die drei Iris-Arten ==== | + | $$ y = |
- | Hier sind Beispielbilder der drei Blumenarten: | + | \begin{cases} |
+ | 1, & \text{falls } w_1 x_1 + w_2 x_2 + b \geq 0 \\ | ||
+ | 0, & \text{sonst} | ||
+ | \end{cases} | ||
+ | $$ | ||
- | ^ **Iris setosa** | + | Hier sind: |
- | | {{https:// | + | |
- | ==== Datenformat | + | * \( x_1 \) = Kronblattlänge |
+ | * \( 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) | ||
- | Der Datensatz liegt als **CSV-Datei** vor, in der die Werte **mit Semikolon (`;`) getrennt** sind. Jede Zeile enthält die Messwerte einer Blume mit den folgenden Spalten: | + | Die **Entscheidungsgrenze** tritt genau dann auf, wenn die gewichtete Summe **gleich Null** ist: |
- | * **Art** (Setosa, Versicolor oder Virginica) | + | $$ w_1 x_1 + w_2 x_2 + b = 0 $$ |
- | * **Kelchblattlänge (cm)** | + | |
- | * **Kelchblattbreite (cm)** | + | |
- | * **Kronblattlänge (cm)** | + | |
- | * **Kronblattbreite (cm)** | + | |
- | Ein Beispiel für eine Zeile in der CSV-Datei: | + | * Zeigen Sie, dass dies **äquivalent zu einer Geradengleichung** |
+ | * Wiederholen Sie das Lernen und vergleichen Sie die Diagramme. | ||
+ | Diskutieren Sie das Ergebnis. | ||
+ | ++++ | ||
+ | ++++ Zusatzaufgabe: | ||
+ | Erstellen Sie eine **3D-Darstellung**, | ||
+ | * Verwenden Sie die folgenden drei Merkmale als Achsen: | ||
+ | * **Kronblattlänge (x-Achse)** | ||
+ | * **Kronblattbreite (y-Achse)** | ||
+ | * **Kelchblattlänge (z-Achse)** | ||
+ | * Erstellen Sie ein **3D-Streudiagramm**, | ||
+ | * Die **Datenpunkte für Setosa** in einer Farbe dargestellt werden. | ||
+ | * Die **Datenpunkte für Nicht-Setosa** in einer anderen Farbe dargestellt werden. | ||
+ | * Ermitteln Sie die **Entscheidungsgrenze des Perzeptrons** und stellen Sie diese als **Ebene im 3D-Raum** dar. | ||
+ | Diskutieren Sie das Ergebnis: | ||
+ | * Trennen sich die Klassen im 3D-Raum eindeutig? | ||
+ | * Wie unterscheidet sich die Trennung von der 2D-Darstellung? | ||
+ | ++++ | ||
perzeptron_aufgaben.1739011558.txt.gz · Zuletzt geändert: 2025/02/08 10:45 von torsten.roehl