diff --git a/Semester_2/Einheit_12/Grundlagen-ML.ipynb b/Semester_2/Einheit_12/Grundlagen-ML.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..5dc13207d5bf906edea8f5fd495b32b5eb9eec9c
--- /dev/null
+++ b/Semester_2/Einheit_12/Grundlagen-ML.ipynb
@@ -0,0 +1,819 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "id": "7671966d-f256-49ca-80c4-1d6181acc60a",
+   "metadata": {},
+   "source": [
+    "### <font color='blue'>**Grundlagen Maschinelles Lernen**</font>\n",
+    "\n",
+    "Maschinelles Lernen (ML) ist ein weit verbreiteter Ansatz im Gebiet der Künstlichen Intelligenz. \n",
+    "\n",
+    "Grundidee des Maschinellen Lernens: \n",
+    "\n",
+    "* Aus Beispielen werden Regelmäßigkeiten, Muster oder Modelle durch \"Lernen\" extrahiert. \n",
+    "* Hierzu werden ML-System mithilfe von Beispielen trainiert.\n",
+    "* Nach der Lernphase entstehen Modelle, die die bisherigen Beispiel durch Erkennen von Mustern, Beziehungen und Regelmäßigkeiten verallgemeinern. \n",
+    "* Damit lassen sie sich auf neue Daten anwenden und künftige Werte vorhersagen.\n",
+    "* Aktuelle ML-Systeme zeichnen sich durch einen geringen Entwicklungsaufwand und leichte anpassbarkeit aus.\n",
+    "* Nachteile sind eine großer Datenbedarf und die schlechte Erklärbarkeit, warum und wie das System welche Lösung gefunden hat. \n",
+    "\n",
+    "Fokus hier auf eine Spezialform des Maschinellen Lernens: Methoden des Deep Learnings (tiefes Lernen). \n",
+    "Sie basieren basieren auf künstlichen neuronalen Netzwerke (artificial neuronal networks ANN.\n",
+    "Deep bzw. tief bedeutet, dass tiefe, mehrschichtige Netzwerke - heute mit bis zu 100 Schichten - verwendet werden.\n",
+    "Schematischer Workflow \n",
+    "\n",
+    "1. **Vorbereitete Daten**, z.B. normalisiert, stehen zur Verfügung. \n",
+    "2. Ggf. muss eine **Konvertierung** in ein verwertbares Format.\n",
+    "3. Ggf. **Anreicherung** der bestehenden Daten, z.B. durch synthetische Daten \n",
+    "4. Abschließende **Analyse der Daten**, z.B. auf Integrität\n",
+    "5. Prüfung, ob **existierende Modelle** für die Aufgabe herangezogen werden können. \n",
+    "6. Erstellung eines **ersten Modells* \n",
+    "7. **Training** des Modells \n",
+    "8. **Evaluation** des trainierten Modells \n",
+    "9. Prüfung auf **Verwertbarkeit des Modells**\n",
+    "10. Ggf. **Anpassung des Modells** in einem iterativen Prozess\n",
+    "11. **Anwendung eines akzeptablen Modells** für künftige Szenarien\n",
+    "\n",
+    "Lernansätze beim Maschinellen Lernen kann man wie folgt klassifizieren: \n",
+    "\n",
+    "* **Lernmodus** - mit dem das Netzwerk trainiert wird\n",
+    "  * **Überwachtes Lernen** - Supervised Learning: Für Eingabe sind die Ausgaben bekannt \n",
+    "  * Unüberwachtes Lernen - Unsupervised Learning: Exploration von Daten, Identifikation inhärenter struktureller Eigenschaften. \n",
+    "  * Teilüberwachtes Lernen - Semi-supervised Learning\n",
+    "  * Bestärkendes Lernen - Reinforcement Learning: Belohnen richtiger und bestrafen falscher Antworten führt zu selbständig entwicleten Strategien. \n",
+    "  * Aktives Lernen - Active Learning \n",
+    "* **Problemtyp** - der zu lösen ist\n",
+    "  * **Regression**: Vorhersage von kontinuierlichen Werten, Methoden: lineare, polynomiale oder multivariate Regression, Beispiel: Vorhersage eletrischer Leistung in abhängigkeit meteorologischer Daten.  \n",
+    "  * **Klassifikation**: Vorhersage von Klassenzugehörigkeiten, d.h. Abbildung von Merkmalen in einen diskreten Wertebereich, Beispiel: Kategorisierung von E-Mails als Spam.\n",
+    "  * **Clustering**: Findung von Gruppierung und deren Ähnlichkeitsmerkmalen nach nicht vorgegebenen Bezeichungen), Methoden des Unsupervised Learnings.\n",
+    "  \n",
+    "  \n",
+    "<div>\n",
+    "<img src=\"./Pics/Methoden.png\" width=\"800\"/>\n",
+    "</div>\n",
+    "\n",
+    "\n",
+    "\n",
+    "### <font color='blue'>**Neuronale Netzwerke**</font>\n",
+    "\n",
+    "Deep Learning basiert auf der Analogie zur Funktionsweise des menschlichen Gehirns. Die Bausteine sind Neuronen, die miteinander verknüpft sind. \n",
+    "Hier werden künstliche Neuronen genutzt und in mehreren Schichten miteinanderverknüpft. \n",
+    "\n",
+    "#### <font color='blue'>**Aufbau**</font>\n",
+    "\n",
+    "Ein natürliche Neuron besteht aus \n",
+    "\n",
+    "* einem **Zellkörper (Soma)**, der die Informationsverarbeitung vornimmt,\n",
+    "* den **Verästelungen (Dendriten)**, die die Reize der umgebenden Neuronen aufnehmen und an den Zellkörper weiterleiten,\n",
+    "* dem **Axon**, einem langen Fortsatz des Zellkörpers analog zu den Dendriten, die an den Enden Verästelungen (Axonterminale) mit Anknüpfungen an die Synapsen haben.\n",
+    "* die **Kontakzonen der Nervenzellen (Synapsen)** zwischen den Axonterminalen und den Dendriten. \n",
+    "\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"./Pics/Neuron.png\" width=\"400\"/>\n",
+    "</div>\n",
+    "\n",
+    "\n",
+    "Beim Übertragen der Impulse an die nächste Nervenzelle werden Botenstoffe (Neurotransmitter) ausgeschüttet. Sie lösen eine Änderung des elektischen Potentials der verbundenen Neuronen aus. Zwischen den Zellen werden ankommende Aktivierungspotential ausgelöst, wenn ein Schwellenpotential überschritten wird. \n",
+    "\n",
+    "Ein künstliches Neuron wird als Perzeptron modelliert und besteht aus \n",
+    "\n",
+    "* einem **Perzeptor** als Modell der künstlichen Nervenzelle, der die Berechnung der **Übertragungs- und Aktivierungsfunktion** durchführt,\n",
+    "* eine **Eingabeschicht** mit der Dendritenfunktion zur Aufnahme von Reizen, \n",
+    "* eine **Ausgabe** als Modell des Axons,\n",
+    "* den **Gewichtungen (weights)**, die die Eigenschaften der Synapsen repäsentieren.\n",
+    "* und das **Bias**, das zu der Summe des Eingabevektors addiert wird.  \n",
+    "* Die **Aktivierungsfunktion** modelliert das Ãœberschreiten des Schwellenwertes. \n",
+    "\n",
+    "<div>\n",
+    "<img src=\"./Pics/AufbauNeuron.png\" width=\"600\"/>\n",
+    "</div>\n",
+    "\n",
+    "#### <font color='blue'>**Modell**</font>\n",
+    "\n",
+    "In der mathematische Formulierung sind\n",
+    "\n",
+    "* die Eingabewerte bilden einen **n-dimensionalen Vektor** $X = [x_1, x_2, ... ]$, dessen Komponenten mit dem **Wichtungen** $w_i$ versehen und inklusive des **Bias** $b$ aufaddiert werden: \n",
+    "$$\n",
+    "   \\alpha = \\sum\\limits_{i=1}^n w_i x_i + b \\; . \n",
+    "$$\n",
+    "* Die Ausgabe des Neurons errechnet sich dann durch die Anwendung der **Aktivierungsfunktion**\n",
+    "$$\n",
+    "    y = \\varphi( \\alpha ) \n",
+    "$$\n",
+    "Beispiel für Aktivierungsfunktionen sind \n",
+    "$$\n",
+    "  y_1 = \\frac {1}{1+e^{-x}} \\quad y_2 = \\frac {e^x - e ^{-x}} {e^x + e ^{-x}}\n",
+    "$$\n",
+    "\n",
+    "#### <font color='blue'>**Lernen**</font>\n",
+    "\n",
+    "Das **Lernen** für ein einzelnes Neuron geschieht über die **Anpassung der Wichtungen** der linearen Übertragungsfunktion. Hierzu werden wiederholt Eingabewerte vorgegeben und die Ausgaben des Neurons $y_i$ mit den erwarteten Ausgaben $\\hat{y}_i$ verglichen. Das wird iterativ solange gemacht, bis das Neuron die erwarteten Ausgaben bestmöglich vorhersagt. \n",
+    " \n",
+    "Zur Anpassung wird gerne die **Delta-Regel** angewendet: \n",
+    "$$\n",
+    "    w_{i_{neu}} = w_{i_{alt}} + \\eta \\cdot ( y_i - \\hat{y}_i  ) \n",
+    "$$\n",
+    "Die **Lernrate** $\\eta$ ist geeignet, d.h. nicht zu hoch und nicht zu niedrig zu wählen. \n",
+    "Üblich ist es, zunächst mit hohen Lernraten zu beginnen und dann die Raten schrittweise zu reduzieren.\n",
+    "\n",
+    "#### <font color='blue'>**Mehrschichtige Netzwerke**</font>\n",
+    "\n",
+    "Mehrschichtige neuronale Netze bestehen aus mehrschichtigen Ansammlungen von Neuronen mit gewichteten Verbindungen. Die Bestandteile sind: \n",
+    "\n",
+    "* Eine **Eingabeschicht (input layer)**: \n",
+    "  Jedes neuron repräsentiert hier ein Merkmal.\n",
+    "  \n",
+    "* Eine oder mehrere **verdeckte Schichten (hidden layers)**: Sie dienen zur Weiterverarbeitung der Eingabeschicht. Mehr als eine verdeckte Schicht führt zu **tiefen neuronalen Netzen (deep neuronal networks)**\n",
+    "  \n",
+    "* Eine **Ausgabeschicht (output layer)**: \n",
+    "  Sie repräsentiert die Zielwerte, z.B. die gefundenen Klassen bei Klassifikationsaufgaben\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"./Pics/Netzwerk.png\" width=\"500\"/>\n",
+    "</div>\n",
+    "  \n",
+    "\n",
+    "Unterschieden werden \n",
+    "\n",
+    "* **vorwärtsgekoppelte Netze** (feedforward neural networks) mit unidirektionalen Verbindungen vom Input zum Ouput, d.h. es gibt keine Verbindungen zu Neuronen voriger Schichten. Vertreter sind CNNs (convolutional neural networks), z.B. für die Bildklassifikation \n",
+    "\n",
+    "* **rückgekoppelte Netze** (feedback neural networks) haben Rückführungen zu den unmittelbaren Vorgängern (direkte Rückkopplung) oder zu anderen vorhergehenden Schichten (indirekte Rückkopplung). Sie sind für Fragen mit zeitlichen Abläufen geeignet. \n",
+    "\n",
+    "#### <font color='blue'>**Lernvorgang**</font>\n",
+    "\n",
+    "Ziel ist die möglichst genaue Abbildung von Eingabevektoren auf gegebene Ausgabevektoren. Diese Abbildung wird dann als Modell bezeichnet. Hierzu müssen die Gewichte und die Aktivierungsfunktionen so gewählt werden, dass für viele Eingabebeispiele die Ausgabedaten korrekt bestimmt werden. \n",
+    "Zur Anpassung werden mathematische Verfahren verwendet. \n",
+    "Diese Training erfolgt in einem iterativen Prozess in folgenden Schritten: \n",
+    "\n",
+    "<div>\n",
+    "<img src=\"./Pics/Training.png\" width=\"600\"/>\n",
+    "</div>\n",
+    "\n",
+    "1. Festlegung der **Struktur** des neuronalen Netzwerks, z.B. nach Gefühl oder durch Adaption bestehender Modelle \n",
+    "   und Festlegung von **Hyperparametern des Lernprozesses**, z.B. Anzahl der Epochen\n",
+    "2. **Initialisierung** des Netzwerks ggf. durch zufällige Wahl von Gewichtungen und Bias \n",
+    "3. Bereitstellung der **Trainingsdaten** aufgeteilt in Batches für einen  \n",
+    "4. **Feed-Forward** Schritt von der Eingabeschicht bis zur Ausgabeschicht\n",
+    "5. **Fehlerevaluation** zur Beurteilung der Differenzen zwischen den berechneten und den Trainingsdaten über eine Fehlerfunktion\n",
+    "6. Sofern Fehlertoleranz und Anzahl der Epochen noch nicht erreicht, erfolgt eine \n",
+    "7. **Anpassung der Gewichtungen und des Bias**, indem die Fehlerinfomation durch Anpassung von der Ausgabeschicht über die verdeckten Schichten bis hin zu Eingabeschicht zrückpropagiert werden (Backpropagation). Hierzu wird die **Delta-Regel** verallgemeinert.  \n",
+    "8. Nach Ende des Lernvorgangs (Fehler ist minimiert oder Zahl der Epochen erreicht) wird das **angelernte Modell evaluiert**, indem mit Testdaten mit bekannter Ausgabe die Antworten berechnet werden und deren Korrektheit und Präzision beurteilt wird. \n",
+    "9. Im Fall der Unzulänglichkeit erfolgt eine **Überarbeitug der Struktur des Modells**, d.h. Anpassungen des durch zusätzliche Schichten oder Aktivierungsfunktionen, und das erneute Durchlaufen des Lernprozesses.\n",
+    "10. Wenn da Modell verwertbar ist, dann kann es als **final** betrachtet, gespeichert und benutzt werden. \n",
+    "\n",
+    "#### <font color='blue'>**Fehlerfunktion**</font>\n",
+    "\n",
+    "Ein Fehlerwert beurteilt die Qualität der Abbildung der Eingaben auf die Ausgaben. Hier wird die **Fehlerfunktion (loss function)** verwendet, die je nach Aufgabengebiet sehr unterschiedlich sein kann. \n",
+    "\n",
+    "Für Regressionsaufgaben verbreitet ist die Erfassung des **mittleren quadratischen Fehlers (mean squared error - MSE)**, die durch die Fehlerfunktion definiert ist: \n",
+    "$$\n",
+    "    E = \\frac 1 n \\sum\\limits_{i=1}^{n} ( y_i - \\hat y _i )^2\n",
+    "$$\n",
+    "$E$ ist der Fehlerwert, $n$ die Anzahl der Trainigsbeispiele und $y_i$ und $\\hat y _i$ die gewünschten und die errechneten Ausgaben. \n",
+    "\n",
+    "#### <font color='blue'>**Gewichtsanpassung**</font>\n",
+    "\n",
+    "Die Anpassung der Gewichtungen wird über die Backpropagation mittels **spezieller mathematischer Verfahren**, z.B. dem Gradientenverfahren, durchgeführt. Die Anpassung der jeweiligen Wichtungen erfolgt nach der verallgemeinerten Delta-Regel:\n",
+    "$$\n",
+    "    w_{i_{neu}} = w_{i_{alt}} - \\eta \\, \\frac {\\partial E} {\\partial w_i}  \\; , \n",
+    "$$\n",
+    "in der als Änderung das Produkt der Lernrate $\\eta$ mit der partiellen Ableitung des Fehlers nach der Wichtung verwendet wird. \n",
+    "Beginnend mit den Wichtungen der letzten Verbindungen zwischen Output- und vorhergehender Schicht, werden die Anpassungen Schicht für Schicht bis zur Input-Schicht vorgenommen. \n",
+    "\n",
+    "### <font color='blue'>**Klassifikationsbeispiel**</font>\n",
+    "\n",
+    "Der Trainingsdatensatz enthält 50 Instanzen von drei Arten von Schwertlilien mit den Merkmalen:\n",
+    "1. **Länge des Kelchblatts** (Spalte `sepal-length`) \n",
+    "2. **Breite des Sepalums** (Spalte `sepal-width`)\n",
+    "3. **Länge des Kronblatts** (Spalte `petal-length`)\n",
+    "4. **Breite des Kronblatts** (Spalte `petal-width`)\n",
+    "Zu den Merkmalen gehören die drei Kategorien der Iris-Varianten Iris-setosa, Iris-versicolor und Iris-virginica (Spalte `species`).\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"./Pics/Bluete.png\" width=\"600\"/>\n",
+    "</div>\n",
+    "\n",
+    "Das Netzwerk soll zuerst aus drei Teilen bestehen: \n",
+    "\n",
+    "1. eine Input-Schicht, in das die vier Merkmale eingehen,\n",
+    "2. eine versteckte Schicht mit 10 Neuronen,\n",
+    "3. eine Output-Schicht, die die zu erkennenden Klassen der Iris-Varianten ausgibt.\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 1,
+   "id": "8174ac33-47c7-4704-8c01-d485c1ad4067",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "     sepal length  sepal width  petal length  petal width         species\n",
+      "0             5.1          3.5           1.4          0.2     Iris-setosa\n",
+      "1             4.9          3.0           1.4          0.2     Iris-setosa\n",
+      "2             4.7          3.2           1.3          0.2     Iris-setosa\n",
+      "3             4.6          3.1           1.5          0.2     Iris-setosa\n",
+      "4             5.0          3.6           1.4          0.2     Iris-setosa\n",
+      "..            ...          ...           ...          ...             ...\n",
+      "145           6.7          3.0           5.2          2.3  Iris-virginica\n",
+      "146           6.3          2.5           5.0          1.9  Iris-virginica\n",
+      "147           6.5          3.0           5.2          2.0  Iris-virginica\n",
+      "148           6.2          3.4           5.4          2.3  Iris-virginica\n",
+      "149           5.9          3.0           5.1          1.8  Iris-virginica\n",
+      "\n",
+      "[150 rows x 5 columns]\n"
+     ]
+    }
+   ],
+   "source": [
+    "import numpy as np\n",
+    "import pandas as pd\n",
+    "\n",
+    "# Lade den Iris-Datenset\n",
+    "data_train = pd.read_csv('./iris.csv')\n",
+    "print( data_train ) "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "id": "7c414d55-5f28-4fa5-bea7-357beb651a74",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Mapping der Iris-Varianten zu numerischen Werten 0, 1 bzw. 2\n",
+    "data_train.loc[data_train['species']=='Iris-setosa',     'species'] = 0\n",
+    "data_train.loc[data_train['species']=='Iris-versicolor', 'species'] = 1\n",
+    "data_train.loc[data_train['species']=='Iris-virginica',  'species'] = 2\n",
+    "data_train = data_train.apply(pd.to_numeric)\n",
+    "data_train_array = data_train.values"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "id": "d48c4828-4429-4131-b5d8-e8e60794f70b",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "# Reproduzierbarkeit der Ergebnisse\n",
+    "np.random.seed(17)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 4,
+   "id": "866f4a76-040f-4d8f-81c6-4285a98b0862",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "# Splitten des Datensatzes in Trainings- und Testdaten 80% vs. 20% \n",
+    "from sklearn.model_selection import train_test_split\n",
+    "X_train, X_test, y_train, y_test = train_test_split(data_train_array[:,:4], # X \n",
+    "                                                    data_train_array[:,4],  # Y \n",
+    "                                                    test_size=0.2 )"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 5,
+   "id": "04290085-675d-481f-b50a-918552b89e03",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "from sklearn.neural_network import MLPClassifier\n",
+    "# VERSION 1\n",
+    "# Neuronales Netz zur Klassifikation (MultiLayerPerceptron)\n",
+    "# mit Aktivierungsfunktion 'relu' und Optimierer 'adam'.\n",
+    "mlp = MLPClassifier( hidden_layer_sizes=(10,), activation='relu', solver='adam', \n",
+    "                     max_iter=350, batch_size=10, verbose=False )\n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 6,
+   "id": "a3c1c40a-9932-477c-803b-2ccb536de868",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [],
+   "source": [
+    "# VERSION 2 \n",
+    "# Neuronales Netz mit 2 Hidden-Layers mit 5 bzw. 3 Neuronen \n",
+    "# mit Aktivierungsfunktion tanh und Optimierer adam \n",
+    "mlp = MLPClassifier( hidden_layer_sizes=(5,3), activation='tanh', solver='adam', \n",
+    "                     max_iter=350, batch_size=10, verbose=False)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "id": "ff931304-da0c-47ab-bb5c-5010b81250f7",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "text/html": [
+       "<style>#sk-container-id-1 {color: black;}#sk-container-id-1 pre{padding: 0;}#sk-container-id-1 div.sk-toggleable {background-color: white;}#sk-container-id-1 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-1 label.sk-toggleable__label-arrow:before {content: \"â–¸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-1 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-1 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-1 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-1 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-1 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-1 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"â–¾\";}#sk-container-id-1 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-1 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-1 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-1 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-1 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-1 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-1 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-1 div.sk-item {position: relative;z-index: 1;}#sk-container-id-1 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-1 div.sk-item::before, #sk-container-id-1 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-1 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-1 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-1 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-1 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-1 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-1 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-1 div.sk-label-container {text-align: center;}#sk-container-id-1 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-1 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-1\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>MLPClassifier(activation=&#x27;tanh&#x27;, batch_size=10, hidden_layer_sizes=(5, 3),\n",
+       "              max_iter=350)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-1\" type=\"checkbox\" checked><label for=\"sk-estimator-id-1\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">MLPClassifier</label><div class=\"sk-toggleable__content\"><pre>MLPClassifier(activation=&#x27;tanh&#x27;, batch_size=10, hidden_layer_sizes=(5, 3),\n",
+       "              max_iter=350)</pre></div></div></div></div></div>"
+      ],
+      "text/plain": [
+       "MLPClassifier(activation='tanh', batch_size=10, hidden_layer_sizes=(5, 3),\n",
+       "              max_iter=350)"
+      ]
+     },
+     "execution_count": 7,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "# Training \n",
+    "mlp.fit(X_train, y_train) "
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "ad948853-d373-4e38-89e8-0279edf4e650",
+   "metadata": {},
+   "source": [
+    "#### <font color='blue'>**Evaluation**</font>\n",
+    "\n",
+    "Die **Konfusionsmatrix** hilft dabei, die Qualität einer erlernten Klassifikation auswerten und neutral zu bewerten. Des Weiteren lassen sich mithilfe der Wahrheitsmatrix einfacher spezifische Kennzahlen errechnen. Um die Konfusion Matrix aufzubauen, benötigt man das Testset des Datensatzes. Der Klassifikator teilt den Eingabedaten die Ausgabe-Klassen zu. Die Konfusionsmatrix wird gerne genutzt, um festzustellen, welche Art des Fehlers beim Klassifikator häufig vorkommt. \n",
+    "\n",
+    "Die Matrix setzt sich aus den bereits genannten Fehlertypen zusammen. \n",
+    "Die Zeilen sind dabei die vorhergesagten Klassen und die Spalten die tatsächlichen Klassen der Testdaten:\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"./Pics/Konfusionsmatrix.png\" width=\"500\"/>\n",
+    "</div>\n",
+    "Weiter Kennzahlen sind: \n",
+    "\n",
+    "* Die **Sensitivität** (engl. **Recall**) bezieht die für eine Klasse richtig vorhergesagten Datenpunkte auf die Gesamtzahl der tatsächlich vorhandenen Datensätze der Klasse:\n",
+    "$$        \n",
+    "        \\text{Recall}_i = \\frac { N_{ii} } { \\sum _j N_{ji} }\n",
+    "$$\n",
+    "Sie ist von großer Bedeutung, da in vielen Praxisbeispielen das Modell vor allem daran gemessen wird, ob es die positiven Fälle richtig erkennt. Nehmen wir an, wir trainieren ein Klassifikationsmodell, das anhand von Bildern Krebszellen erkennen soll. In diesem Fall ist es sehr wichtig, dass alle positiven Personen, die also wirklich Krebs haben, erkannt werden, damit man die Krankheit frühzeitig behandeln kann. In diesem Beispiel sind andere Kennzahlen nicht von solch großer Bedeutung, denn es schadet nicht, wenn Personen, die keinen Krebs haben, trotzdem genauer untersucht werden. \n",
+    "\n",
+    "* Die **Präzision** ist die relative Häufigkeit einer richtig vorhergesagten Klasse bezogen auf die Gesamtzahl der vorsagten Exemplare dieser Klasse:\n",
+    "$$        \n",
+    "       \\text{Präzision}_i  = \\frac { N_{ii} } { \\sum _j N_{ij} }\n",
+    "$$\n",
+    "\n",
+    "* Die **Genauigkeit** umschreibt die insgesamt richtig Klassifizierten im Verhältnis zu allen Klassifzierungen:\n",
+    "$$        \n",
+    "       \\text{Genauigkeit}  = \\frac { \\sum _i N_{ii}  } { \\sum _i \\sum _j N_{ij} }\n",
+    "$$\n",
+    "Auf den ersten Blick sehen die Formeln für die Genauigkeit und Präzision relativ ähnlich aus. Ein gutes Machine Learning Modell muss nach dem Training gute Vorhersage für neue, ungesehene Daten liefern. Jedoch ist ein solches Modell nur dann wertvoll, wenn es sehr oft gute Vorhersagen liefert und die guten Ergebnisse nicht nur selten auftreten. Diese Eigenschaften lassen sich mit der Genauigkeit und Präzision messen.\n",
+    "<br>\n",
+    "Die Genauigkeit misst, wie nahe die Vorhersagen an den gewünschten Werten liegt. Bei einer Klassifikation bedeutet das also, wie oft die vorhergesagte Klasse auch der tatsächlichen entspricht. Die Präzision hingegen misst, wie scharf die Ergebnisse sind, d.h. wie reproduzierbar die Ergebnisse sind. Konkret bedeutet dies, wie nahe die Ergebnisse für ähnliche Eigenschaftswerte beeinander liegen. Dies gibt eine Aussage über die Reproduzierbarkeit von Ergebnissen da ein Modell nicht wirklich brauchbar ist, wenn es für denselben bei zwei Vorhersagen zwei sehr unterschiedliche Werte liefert. \n",
+    "\n",
+    "* Der **F-Score**, auch F1-Score genannt, ist eine im maschinellen Lernen und in der Datenanalyse weit verbreitete Metrik zur Bewertung der Leistung von Klassifizierungsmodellen. Er ist ein Maß für die *Präzision* und den *Recall* eines Modells, wobei die Präzision den Anteil der wahrhaft richtigen Ergebnisse an allen vorhergesagten richtigen Ergebnissen und der Recall den Anteil der wahrhaft richtigen Ergebnisse an allen tatsächlich richtigen Ergebnissen angibt. <br>\n",
+    "Der F-Score ist ein gewichtetes harmonisches Mittel aus Precision und Recall und liefert eine einzige Zahl, die die Leistung eines Modells in Bezug auf Precision und Recall zusammenfasst. \n",
+    "Der **F-Score reicht von 0 bis 1**, wobei ein höherer Wert für eine bessere Modellleistung steht. \n",
+    "Der F1-Score wird häufig in Situationen verwendet, in denen ein Ungleichgewicht zwischen der Anzahl positiver und negativer Beispiele in den Daten besteht, da er eine ausgewogene Bewertung der Leistung eines Modells unabhängig von der Klassenverteilung liefert.\n",
+    "$$\n",
+    "      \\text{F-Score} = \\frac {2 \\cdot \\text{Recall} \\cdot \\text{Precision}} { \\text{Recall} + \\text{Precision} }\n",
+    "$$\n",
+    "Durch die Nutzung des sogenannten harmonischen Mittels, und nicht des klassischen arithmetischen Mittel, wird sichergestellt, dass Extremwerte einer der beiden Größen deutlich stärker bestraft werden. "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 8,
+   "id": "1f933cdb-9327-4b4a-a545-0c4d86350141",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Trainingsergebnis: 0.992\n",
+      "[[ 7  0  0]\n",
+      " [ 0 11  0]\n",
+      " [ 0  1 11]]\n",
+      "              precision    recall  f1-score   support\n",
+      "\n",
+      "         0.0       1.00      1.00      1.00         7\n",
+      "         1.0       0.92      1.00      0.96        11\n",
+      "         2.0       1.00      0.92      0.96        12\n",
+      "\n",
+      "    accuracy                           0.97        30\n",
+      "   macro avg       0.97      0.97      0.97        30\n",
+      "weighted avg       0.97      0.97      0.97        30\n",
+      "\n",
+      "Testergebnis: 0.967\n"
+     ]
+    }
+   ],
+   "source": [
+    "print(\"Trainingsergebnis: %5.3f\" % mlp.score( X_train, y_train ) )\n",
+    "\n",
+    "predictions = mlp.predict(X_test)                      # Evaluation anhand der Testdaten \n",
+    "\n",
+    "from sklearn.metrics import classification_report, confusion_matrix  \n",
+    "print( confusion_matrix( y_test, predictions ) )       # Konfusionsmatrix Zeile: prediction Spalte: wahr\n",
+    "print( classification_report( y_test, predictions ) )  # Ausgabe precison, recall und f1-score\n",
+    "\n",
+    "print( \"Testergebnis: %5.3f\" % mlp.score( X_test, y_test ) ) # Test und Ergebnisausgabe des Modells"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "id": "56c547b7-1952-4232-9a41-170a4f81d37d",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Wichtungen: [array([[-0.18175367,  0.51967945, -0.03682395, -0.1205498 ,  0.16938574],\n",
+      "       [-0.71339316,  0.1364212 ,  0.68704501,  0.83270091,  0.40263018],\n",
+      "       [ 1.02301099, -0.62040153, -0.54177161, -0.58501333, -0.41696715],\n",
+      "       [ 0.53283474, -0.92627887,  0.24828775,  1.00029128, -0.58660593]]), array([[-1.64319389,  0.99261637,  0.48133661],\n",
+      "       [ 0.19205787, -0.35979584,  1.30116347],\n",
+      "       [ 0.49705423, -0.08875001,  1.10067155],\n",
+      "       [ 0.31704068, -1.41095649, -0.4765751 ],\n",
+      "       [ 0.53497596, -0.47725283,  2.05482876]]), array([[ 1.80286371, -0.92012959, -0.82321987],\n",
+      "       [-2.25024998,  0.78176397,  0.15917304],\n",
+      "       [ 0.98562046,  2.12981661, -2.50680455]])]\n",
+      "Biases:     [array([ 0.36436877,  0.79437877,  0.03455584, -0.69635934,  0.69751936]), array([-0.32413316,  0.70181907,  0.44662492]), array([ 0.51175497, -0.31347659,  0.17286358])]\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Folgendes gibt die Werte der Gewichte pro Layer aus\n",
+    "print( \"Wichtungen:\", mlp.coefs_ )\n",
+    "print( \"Biases:    \", mlp.intercepts_ ) "
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 10,
+   "id": "611bd33f-f191-4a6d-bd80-cdbdca083329",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "[0. 2. 0. 1.]\n"
+     ]
+    }
+   ],
+   "source": [
+    "# Modellanwendung zur Vorhersage auf folgenden Werten \n",
+    "print( mlp.predict( [[5.1,3.5,1.4,0.2], [5.9,3.,5.1,1.8], [4.9,3.,1.4,0.2], [5.8,2.7,4.1,1.]] ) )"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 11,
+   "id": "31b7dbe2-0297-42ed-86c2-e0488d7f085e",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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W6+++qrWrVunw4cP6/rrrzexWv+pq6tTWlqalixZ0u7zv/vd7/THP/5RS5cu1aeffqqwsDBNnz5djY2N3nNuvfVWffHFF1qzZo3eeustrV+/Xnfeeae/PoLfnKqtJOmqq65q8z17+eWX2zzfH9pq3bp1mjdvnj755BOtWbNGTU1NuvLKK1VXV+c951S/c263W1dffbVcLpc+/vhjvfDCC1q+fLkWLlxoxkfqFp1pJ0m644472nynfve733mf6w/tJEmDBg3SI488opycHG3atEmXXXaZrr32Wn3xxReSevj3yeinpk6dasybN8/7s9vtNpKSkozFixebWJW5Fi1aZKSlpbX7XGVlpREYGGi8+uqr3mM7d+40JBnZ2dl+qrBnkGS88cYb3p89Ho+RkJBgPProo95jlZWVht1uN15++WXDMAxjx44dhiTjs88+857zzjvvGBaLxTh06JDfave3r7eVYRjGnDlzjGuvvbbDa/prW5WUlBiSjHXr1hmG0bnfudWrVxtWq9UoKirynvPMM88YkZGRhtPp9O8H8JOvt5NhGMYll1xi3HvvvR1e0x/bqVV0dLTx3HPP9fjvU7/sGXG5XMrJyVFmZqb3mNVqVWZmprKzs02szHy7d+9WUlKShg0bpltvvVX5+fmSpJycHDU1NbVps9GjR2vw4MH9vs3y8vJUVFTUpm0cDofS09O9bZOdna2oqChNmTLFe05mZqasVqs+/fRTv9dstrVr12rgwIEaNWqU7r77bpWVlXmf669tVVVVJUmKiYmR1LnfuezsbI0fP967N5gkTZ8+XdXV1d5/Dfc1X2+nVv/4xz8UGxurcePGacGCBaqvr/c+1x/bye12a8WKFaqrq1NGRkaP/z75vFFeX1BaWiq3292mwSUpPj5eX375pUlVmS89PV3Lly/XqFGjVFhYqF/96le66KKLtH37dhUVFSkoKEhRUVFtromPj1dRUZE5BfcQrZ+/ve9T63NFRUUaOHBgm+cDAgIUExPT79rvqquu0vXXX6+hQ4dq7969+vnPf64ZM2YoOztbNputX7aVx+PRD3/4Q11wwQXeTUQ78ztXVFTU7veu9bm+pr12kqRbbrlFQ4YMUVJSkrZu3aqf/exn2rVrl15//XVJ/audtm3bpoyMDDU2Nio8PFxvvPGGxowZo9zc3B79feqXYQTtmzFjhve/J0yYoPT0dA0ZMkSvvPKKQkJCTKwMfclNN93k/e/x48drwoQJGj58uNauXavLL7/cxMrMM2/ePG3fvr3NHC2cqKN2On4+0fjx45WYmKjLL79ce/fu1fDhw/1dpqlGjRql3NxcVVVV6bXXXtOcOXO0bt06s8s6pX45TBMbGyubzXbCLOLi4mIlJCSYVFXPExUVpZEjR2rPnj1KSEiQy+VSZWVlm3NoM3k//8m+TwkJCSdMjm5ublZ5eXm/b79hw4YpNjZWe/bskdT/2uqee+7RW2+9pY8++kiDBg3yHu/M71xCQkK737vW5/qSjtqpPenp6ZLU5jvVX9opKChII0aM0OTJk7V48WKlpaXpySef7PHfp34ZRoKCgjR58mRlZWV5j3k8HmVlZSkjI8PEynqW2tpa7d27V4mJiZo8ebICAwPbtNmuXbuUn5/f79ts6NChSkhIaNM21dXV+vTTT71tk5GRocrKSuXk5HjP+fDDD+XxeLz/4+yvDh48qLKyMiUmJkrqP21lGIbuuecevfHGG/rwww81dOjQNs935ncuIyND27ZtaxPe1qxZo8jISI0ZM8Y/H6Sbnaqd2pObmytJbb5Tfb2dOuLxeOR0Onv+96lbp8f2YCtWrDDsdruxfPlyY8eOHcadd95pREVFtZlF3N/86Ec/MtauXWvk5eUZ//3vf43MzEwjNjbWKCkpMQzDMO666y5j8ODBxocffmhs2rTJyMjIMDIyMkyu2j9qamqMLVu2GFu2bDEkGY8//rixZcsW48CBA4ZhGMYjjzxiREVFGW+++aaxdetW49prrzWGDh1qNDQ0eF/jqquuMiZNmmR8+umnxoYNG4yzzjrLuPnmm836SN3mZG1VU1Nj/PjHPzays7ONvLw844MPPjDOOecc46yzzjIaGxu9r9Ef2uruu+82HA6HsXbtWqOwsND7qK+v955zqt+55uZmY9y4ccaVV15p5ObmGu+++64RFxdnLFiwwIyP1C1O1U579uwxHnroIWPTpk1GXl6e8eabbxrDhg0zLr74Yu9r9Id2MgzDuP/++41169YZeXl5xtatW43777/fsFgsxvvvv28YRs/+PvXbMGIYhvGnP/3JGDx4sBEUFGRMnTrV+OSTT8wuyVSzZs0yEhMTjaCgICM5OdmYNWuWsWfPHu/zDQ0Nxve//30jOjraCA0NNb75zW8ahYWFJlbsPx999JEh6YTHnDlzDMNoub33wQcfNOLj4w273W5cfvnlxq5du9q8RllZmXHzzTcb4eHhRmRkpDF37lyjpqbGhE/TvU7WVvX19caVV15pxMXFGYGBgcaQIUOMO+6444R/BPSHtmqvjSQZf/3rX73ndOZ3bv/+/caMGTOMkJAQIzY21vjRj35kNDU1+fnTdJ9TtVN+fr5x8cUXGzExMYbdbjdGjBhh/OQnPzGqqqravE5fbyfDMIzvfe97xpAhQ4ygoCAjLi7OuPzyy71BxDB69vfJYhiG0b19LwAAAB3rl3NGAABAz0EYAQAApiKMAAAAUxFGAACAqQgjAADAVIQRAABgKsIIAAAwFWEEAACYijACAABMRRgBAACmIowAAABTEUYAAICp/n/HlyC2oB6lnQAAAABJRU5ErkJggg==\n",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "# Visualisierung der Loss-Kurve\n",
+    "import matplotlib.pyplot as plt\n",
+    "loss_values = mlp.loss_curve_\n",
+    "plt.plot(loss_values)\n",
+    "plt.show()"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "91376581-9808-4db2-840d-254291726be3",
+   "metadata": {},
+   "source": [
+    "#### <font color='blue'>**Regressionsbeispiele**</font>"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 12,
+   "id": "50005cd0-1f67-4fe7-911d-92a26bd61a1c",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "import numpy as np\n",
+    "\n",
+    "def generate_data(expanded=False): \n",
+    "    rng = np.random.RandomState(0)\n",
+    "    n_sample = 100\n",
+    "    x_max, x_min = 1.4, -1.4\n",
+    "    x_delta = x_max - x_min\n",
+    "    x_train = np.sort(rng.rand(n_sample) * x_delta - x_delta / 2)\n",
+    "    y_train = x_train**3 - 0.5 * x_train**2 + rng.randn(n_sample) * 0.3\n",
+    "    x_train = x_train.reshape((-1, 1))\n",
+    "\n",
+    "    if expanded: \n",
+    "        x_train = np.concatenate([x_train, x_train**2, x_train**3], axis=1)\n",
+    "    return x_train, y_train"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 13,
+   "id": "3ccfd473-fdc4-4ed5-9bb4-143bf552a2c5",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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\n",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "X_train, y_train = generate_data(expanded=False)\n",
+    "\n",
+    "from sklearn.neural_network import MLPRegressor\n",
+    "from sklearn.linear_model import LinearRegression\n",
+    "from sklearn.metrics import mean_squared_error\n",
+    "\n",
+    "if True:  \n",
+    "    regressor = MLPRegressor(hidden_layer_sizes=(5,), random_state=1, \n",
+    "                             activation='identity', # ‘identity’, ‘logistic’, ‘tanh’, ‘relu’\n",
+    "                             max_iter=500)\n",
+    "else: \n",
+    "    regressor = LinearRegression()\n",
+    "    \n",
+    "regressor.fit(X_train, y_train)\n",
+    "\n",
+    "#print( regressor.coefs_ )\n",
+    "#print( regressor.intercepts_ )\n",
+    "\n",
+    "y_predicted = regressor.predict(X_train)\n",
+    "mse = mean_squared_error(y_train, y_predicted)\n",
+    "\n",
+    "import pandas as pd\n",
+    "import matplotlib.pyplot as plt\n",
+    "data_frame = pd.DataFrame({'input': X_train[:,0], 'output': y_train})\n",
+    "ax1 = data_frame.plot.scatter(x='input', y='output', c='DarkBlue')\n",
+    "ax1.plot( X_train[:,0], y_predicted, color='red')\n",
+    "_ = ax1.set_title(f\"Mean squared error = {mse:.3f}\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "27ea2669-bbc3-4bf0-9c7b-e67bc6ae2640",
+   "metadata": {},
+   "source": [
+    "Es ist wichtig zu beachten, dass das gelernte Modell nicht in der Lage ist, die nicht-lineare Beziehung zwischen Daten und Ziel zu behandeln, da lineare Modelle davon ausgehen, dass die Beziehung zwischen Daten und Ziel linear ist.\n",
+    "\n",
+    "Denkbar sind 3 Möglichkeiten, dieses Problem zu lösen:\n",
+    "\n",
+    "* Auswahl eines Modells, das mit Nichtlinearität umgehen kann,\n",
+    "* Entwicklung eines reichhaltigeren Satzes von Merkmalen durch Einbeziehung von Expertenwissen, das direkt von einem einfachen linearen Modell verwendet werden kann, oder\n",
+    "* Verwendung eines \"Kerns\", um eine lokal basierte Entscheidungsfunktion anstelle einer globalen linearen Entscheidungsfunktion zu haben.\n",
+    "\n",
+    "Der erste Punkt soll anhand eines **Entscheidungsbaum-Regressors**, der von Haus aus mit Nichtlinearität umgehen kann, veranschaulicht werden.\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "68b4561d-735e-4002-ba6f-6d4eca54cd5a",
+   "metadata": {},
+   "source": [
+    "### <font color='blue'>**Entscheidungsbäume**</font>\n",
+    "\n",
+    "Entscheidungsbäume (Decision Trees, DTs) sind eine **überwachte Lernmethode**, die für **Klassifizierung und Regression** verwendet wird. Ziel ist es, ein Modell zu erstellen, das den Wert einer Zielvariablen vorhersagt, indem einfache **Entscheidungsregeln** aus den Datenmerkmalen abgeleitet werden. Ein Baum kann als eine stückweise konstante Annäherung betrachtet werden. Ein Entscheidungsbaum-Regressor versucht also, eine kontinuierliche Zielvariable vorherzusagen, indem er die Merkmalsvariablen in **kleine Zonen unterteilt, wobei jede Zone eine konstante Vorhersage enthält**. Entscheidungsbäume lernen aus den Daten eine Reihe von Wenn-dann-also-Entscheidungsregeln zu approximieren. Je tiefer der Baum ist, desto komplexer sind die Entscheidungsregeln und desto besser passt das Modell.\n",
+    "\n",
+    "Bei **jedem Modellierunsgschritt** wird nun das **Attribut (z.B. Intervallgrenze) gesucht**, mit welchem sich die Trainingsdaten in diesem Schritt bezüglich des Zielattributs am besten klassifizieren lassen. Das ermittelte Attribut wird nun zur Aufteilung der Daten verwendet. Auf die so entstandenen Teilmengen wird die Prozedur rekursiv angewendet, bis in jeder Teilmenge nur noch Objekte mit einer Klassifikation enthalten sind. Am Ende ist ein Entscheidungsbaum entstanden, der das Erfahrungswissen des Trainingsdatensatzen beschreibt.\n",
+    "\n",
+    "<div>\n",
+    "<img src=\"./Pics/Entscheidungsbaum.png\" width=\"700\"/>\n",
+    "</div>\n",
+    "  \n"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 14,
+   "id": "ddaa9f73-1ae3-4707-a26c-e72c1a96bf9d",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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PYSoqCh8/PHH2Lx5s933raKiAh9++CHS09Mxe/ZsVFZWYunSpUhJScGvv/6KIUOGmO2/bNkynD9/Hvfccw/UajXCwsLw119/4fLLL0fPnj0xb948BAQE4Msvv8TUqVPx9ddf4/rrrwcAnD17FuPHj0djY6Npv/fff9/qX9bWXsfo/vvvR3h4OJ599llUV1ebthcXF2PSpEm49dZbcfvttyMiIgK1tbUYN24ccnNz8eCDD6JPnz746quvMHPmTJSVleHhhx/u8D588MEHeOihhzBt2jQ8/PDDOH/+PPbt24ddu3a1G8CNioqKrLoHQUFBFptws7KyAADDhw832x4VFYVevXqZnu9IbW0tqqurUVVVhZ9++gnLli3DqFGjLP6ssrKycPDgQfzjH/+w6hot6fV67Nu3D3fddVer50aMGIH169ejsrISQUFBdp2/Lfa8zva0d++HDRsGpVKJrKws3H777RaP79u3L4KDg822G5uw9u7di+joaFNfoOXLl2PUqFG44oorUFZWhueffx5ardYsPJGbkrvqiTyfscnkt99+E2+++aYICgoSNTU1QgghbrrpJjF+/HghhGjV7LVt2zYBQHz66adm51u3bl2r7cbzNXfvvfcKf39/cf78edO2sWPHCgDif//7n2lbXV2diIyMFDfeeKPF1/H6668LAKKwsLDdfd544w0BQHz55ZembdXV1SIhIUEAEFu2bDFtj4mJETNmzGh1jrFjx4qxY8eaHjc2NrZqsiktLRURERHirrvuMm07evSoACCCg4NFQUGB2f4TJkwQgwYNMrsXer1ejB49WiQmJpq2PfLIIwKA2LVrl2lbQUGBCAkJsarZy9rrGN8TY8aMadV8YfwZvfvuu2bbjff2k08+MW2rr68Xo0aNEoGBgaKioqLD+3DdddeJAQMGWHwN7QFg1deyZcssnufVV18VAMTx48dbPXfppZeKyy67zKryLFq0yOy6EyZMaPOczT3++OMCgDhw4IBV12ipsLBQABDPPfdcq+feeustAUAcOnTI6vNZ0+xlz+tszwMPPCBUKlWbz4WHh4tbb73V4vEDBgwQV111Vavtf/31V6v3bE5Ojhg6dKhZ2ePi4my6PyQfNnuRpG6++WbU1tZi9erVqKysxOrVq9v9i/urr75CSEgIrr76ahQVFZm+hg0bhsDAQLNmn+Z/BVZWVqKo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\n",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "X_train, y_train = generate_data(expanded=False)\n",
+    "\n",
+    "from sklearn.tree import DecisionTreeRegressor\n",
+    "\n",
+    "tree1 = DecisionTreeRegressor(max_depth=1).fit(X_train, y_train)\n",
+    "y_predicted1 = tree1.predict(X_train)\n",
+    "mse1 = mean_squared_error(y_train, y_predicted1)\n",
+    "\n",
+    "tree2 = DecisionTreeRegressor(max_depth=2).fit(X_train, y_train)\n",
+    "y_predicted2 = tree2.predict(X_train)\n",
+    "mse2 = mean_squared_error(y_train, y_predicted2)\n",
+    "\n",
+    "tree3 = DecisionTreeRegressor(max_depth=3).fit(X_train, y_train)\n",
+    "y_predicted3 = tree3.predict(X_train)\n",
+    "mse3 = mean_squared_error(y_train, y_predicted3)\n",
+    "\n",
+    "\n",
+    "data_frame = pd.DataFrame({'input': X_train[:,0], 'output': y_train})\n",
+    "ax1 = data_frame.plot.scatter(x='input', y='output', c='DarkBlue')\n",
+    "ax1.plot( X_train, y_predicted1, color='blue')\n",
+    "ax1.plot( X_train, y_predicted2, color='red')\n",
+    "ax1.plot( X_train, y_predicted3, color='green')\n",
+    "_ = ax1.set_title(f\"Mean squared errors = {mse1:.2f}  {mse2:.2f}  {mse3:.2f}\")\n",
+    "\n"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "76b4b1aa-a86f-4240-815c-ea6a30d04415",
+   "metadata": {},
+   "source": [
+    "Anstatt ein Modell zu haben, das von Haus aus mit Nichtlinearität umgehen kann, könnten wir unsere Daten auch modifizieren: Wir könnten neue Merkmale erstellen, die von den ursprünglichen Merkmalen abgeleitet sind, indem wir etwas Expertenwissen nutzen. In diesem Beispiel wissen wir, dass wir eine kubische und quadratische Beziehung zwischen Daten und Ziel haben (weil wir die Daten erzeugt haben).\n",
+    "\n",
+    "Mit dieser Information könnten wir zwei neue Merkmale ($x^2$ und $x^3$) wie folgt erstellen. \n",
+    "Diese Art der Transformation wird als polynomiale Merkmalserweiterung bezeichnet:"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 15,
+   "id": "fcd2a5e5-66de-4b9b-94ec-434224a806dd",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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/bbC57V/1V+9ehXR0dHw8/PDjBkzEB4eDm9vb/z555+YNGlSuSpNRZUGQJpvyJjq1atjx44d2Lp1K9avX4+UlBSsWLECDz/8MH755ReD5zXk7gRJq7S0VO9cy5cvx4gRI9C/f39MnDgRderUgbu7O2bOnIns7OwK4yxL+/5ff/11xMXFVfiaERERZsVeEUtex1AiYGofI2PMOYdarTZpGHr16tXh7+9v8Pn69esDAM6fP1/uufPnz6NWrVpGp3Qoe3xwcHC548tW5Dw9PfHll1/ivffeQ0ZGBurWrYumTZsiMTERbm5usvxMiaqKyQ/RbQMGDMCYMWOwZ88erFixwuB+4eHhSEtLw4MPPmj0i2zbtm24cuUKVq9ejW7duum2Hz9+XNa4Aam5oUePHujRowc++ugjvP/++/i///s/bN26FbGxsQgJCcG///4LIYRecnP06NFy5woMDMTVq1fLbT958iTCwsJ0j5OTkxEWFobVq1frnXPatGkmxaw9l4eHB2JjY43uGxISgszMzHLbK4q/Kq9jiZCQEPz999/QaDR61R9ts2ZISIjF53788cfLNZtVZPjw4ViyZInB5xs2bIigoCDs27ev3HMVdU6/m/b5ffv26SU6586dw5kzZypsPq1bty7q1q0LQEqct23bho4dO7LyQw6BfX6IbvP19cXChQvxn//8B48++qjB/QYPHozS0lK888475Z4rKSnRJQ7aKknZyk1xcTH++9//yhq3Wq0ut037ZaVtpujduzfOnTunG5IMSHPUfPHFF+WODQ8Px549e/QqDuvWrcPp06f19qvo/e3duxe7d+82Ke46deogJiYGn3/+eYUVibIT4vXu3Rt79uzB77//rve8oeqbpa9jid69eyMnJ0cvYS4pKcG8efPg6+uL6Ohoi88tV58fQOprdPfPcfPmzcjIyMATTzyh23br1i0cOXJE71q1aNECzZo1wxdffKE3TcPChQuhUqkMNhFrzZkzB+fPn8eECRPMeftEVsPKD1EZw4cPr3Sf6OhojBkzBjNnzsSBAwfQs2dPeHh4IDMzE6tWrcKnn36KQYMGoUuXLggMDMTw4cPxyiuvQKVSYdmyZZU2Y5lrxowZ2LFjB/r06YOQkBBcvHgR//3vf9GoUSN07doVgNSBd/78+Rg2bBj279+P+vXrY9myZRVO0Ddq1CgkJycjPj4e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3YmIiOyIlR+5zZsHAPCd8DJiHgnTeyqWQ92JiIjsjpUfOf3+u3Tz9ET1cS8ipU4dZGbmIisrFxERgaz4EBEROQAmP3KaP1/6d8gQoE4dAEBkJJMeIiIiR8JmL7lcvAiskDo6Y+xY+8ZCREREBjH5kcsXXwDFxUCHDtKNiIiIHBKTHzncugUsWiTdf/ll+8ZCRERERjH5kcOaNcDZs1I/nyeesHc0REREZASTHzncHt6O554DvLzsGwsREREZxdFeVSUEkJAA5OUBzz9v72iIiIioEiohhLB3ELaSn58Pf39/5OXlwc/Pz97hEBERkQnk/v5msxcRERG5FCY/RERE5FKY/BAREZFLYfJDRERELoXJDxEREbkUJj9ERETkUpj8EBERkUth8kNEREQuhckPERERuRQmP0RERORSmPwQERGRS2HyQ0RERC6FyQ8RERG5FCY/RERE5FKY/BAREZFLYfJDRERELoXJDxEREbkUJj9ERETkUqrZOwBnl5GhRnb2VUREBCIyMtDe4RAREbk8Jj9WolYXIjFxPVJTT+i2xcWFIimpLwIDve0XGBERkYtjs5eVJCauR1raSb1taWknkZCwzk4REREREcDkxyoyMtRITT2B0lKht720VCA19QQyM3PtFBkREREx+bGC7OyrRp/PymLyQ0REZC9MfqwgPDzA6PMREez4TEREZC9MfqygadNaiIsLhbu7Sm+7u7sKcXGhHPVFRERkR0x+rCQpqS9iY0P0tsXGhiApqa+dIiIiIiKAQ92tJjDQGykpg5CZmYusrFzO80NEROQgmPxYWWQkkx4iIiJHwmYvIiIicilMfoiIiMilsNlLBly/i4iISDkUV/kpKipCmzZtoFKpcODAAbvGolYXIj4+GVFRX6F379Vo2nQx4uOTkZt7065xERERkWGKS37eeOMNNGjQwN5hAOD6XUREREqkqORn48aN+OWXXzBnzhx7h8L1u4iIiBRKMX1+Lly4gNGjR2PNmjXw8fEx6ZiioiIUFRXpHufn58sWjynrd7H/DxERkeNRROVHCIERI0bg+eefR/v27U0+bubMmfD399fdgoODZYuJ63cREREpk12Tn8mTJ0OlUhm9HTlyBPPmzUNBQQGmTJli1vmnTJmCvLw83e306dOyxc71u4iIiJRJJYQQle9mHZcuXcKVK1eM7hMWFobBgwfj559/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\n",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "X_train, y_train = generate_data(expanded=True)\n",
+    "\n",
+    "from sklearn.neural_network import MLPRegressor\n",
+    "from sklearn.linear_model import LinearRegression\n",
+    "from sklearn.metrics import mean_squared_error\n",
+    "\n",
+    "if True:  \n",
+    "    regressor = MLPRegressor(hidden_layer_sizes=(5,5,), random_state=1, \n",
+    "                             activation='identity', #\n",
+    "                             #activation='logistic', #\n",
+    "                             #activation='tanh', #\n",
+    "                             #activation='relu', # ‘identity’, ‘logistic’, ‘tanh’, ‘relu’\n",
+    "                             max_iter=500)\n",
+    "else: \n",
+    "    regressor = LinearRegression()\n",
+    "    \n",
+    "regressor.fit(X_train, y_train)\n",
+    "\n",
+    "#print( regressor.coefs_ )\n",
+    "#print( regressor.intercepts_ )\n",
+    "\n",
+    "y_predicted = regressor.predict(X_train)\n",
+    "mse = mean_squared_error(y_train, y_predicted)\n",
+    "\n",
+    "import pandas as pd\n",
+    "import matplotlib.pyplot as plt\n",
+    "data_frame = pd.DataFrame({'input': X_train[:,0], 'output': y_train})\n",
+    "ax1 = data_frame.plot.scatter(x='input', y='output', c='DarkBlue')\n",
+    "ax1.plot( X_train[:,0], y_predicted, color='red')\n",
+    "_ = ax1.set_title(f\"Mean squared error = {mse:.3f}\")"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "id": "bd94af80-46cd-4e65-8b1f-ed2df11bdddd",
+   "metadata": {},
+   "source": [
+    "Wir sehen, dass mit einem linearen Modell die Linearitätsbeschränkung des Modells überwunden werden kann, indem die nichtlinearen Komponenten bei der Entwicklung zusätzlicher Merkmale hinzufügen. Hier wurden neue Merkmale erstellt, indem man wusste, wie das Ziel generiert wurde bzw. welche gestzmäßigkeit dahinter stand.\n",
+    "\n",
+    "Anstatt solche polynomialen Merkmale manuell zu erstellen, kann man direkt `sklearn.preprocessing.PolynomialFeatures` verwenden.\n",
+    "\n",
+    "Um die Verwendung der Klasse `PolynomialFeatures` zu demonstrieren, verwenden wir eine Scikit-Learn-`Pipeline`, die zunächst die Merkmale transformiert und dann das Regressionsmodell anpasst.\n",
+    "Hierbei wird `include_bias=False` gesetzt, da wir sonst eine Spalte erstellen würden, die perfekt mit dem durch die LinearRegression eingeführten intercept_ korreliert. \n",
+    "Ob dieses Verfahren der manuellen Erstellung der Merkmale bis zum numerischen Fehler gleichwertig ist, kann überprüft werden, indem das Maximum der absoluten Werte der Differenzen zwischen den von beiden Methoden erzeugten Merkmalen beurteilt wird."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 16,
+   "id": "75709f30-925f-4170-97f5-c255b20abffd",
+   "metadata": {
+    "tags": []
+   },
+   "outputs": [
+    {
+     "data": {
+      "image/png": "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5WLyYwUc6k5ERKRcTH6sgEPdiYiIlIvJj5VwqDsREZEyOcQMz44oMNALKSn9kZmZj6ysfERFBbLFh4iISAGY/FhZdDSTHiIiIiVhtxcRERG5FCY/RERE5FKY/BAREZFLYfJDRERELoXJDxEREbkUJj9ERETkUpj8EBERkUth8kNEREQuhckPERERuRQmP0RERORSmPwQERGRS2HyQ0RERC6FyQ8RERG5FCY/RERE5FKY/BAREZFLYfJDRERELoXJDxEREbkUJj9ERETkUpj8EBERkUth8kNEREQuhckPERERuRQmP0RERORSmPwQERGRS2HyQ0RERC6FyQ8RERG5lBr2DsDZZWTkITu7AFFRgYiODrR3OERERC6PyY+V5OUVY/DgVUhNPaHblpAQjuTkXggM9LJfYERERC6O3V5WMnjwKqSl5ehtS0vLQVLSSjtFRERERACTH6vIyMhDauoJlJUJve1lZQKpqSeQmZlvp8iIiIiIyY8VZGcXGH08K4vJDxERkb0w+bGCyMgAo49HRbHwmYiIyF6Y/FhBkya1kZAQDrVapbddrVYhISGco76IiIjsiMmPlSQn90J8fJjetvj4MCQn97JTRERERARwqLvVBAZ6ISWlPzIz85GVlc95foiIiBSCyY+VRUcz6SEiIlISdnsRERGRS2HyQ0RERC6F3V4y4PpdREREjsPhWn5KSkrQqlUrqFQq7N+/366x5OUVIzFxCWJifkTPnsvQpMksJCYuQX7+DbvGRURERIY5XPLz1ltvITg42N5hAOD6XURERI7IoZKfNWvWYO3atZgyZYq9Q+H6XURERA7KYWp+zp8/j5EjR2L58uXw8fEx6ZiSkhKUlJTo7hcVFckWjynrd7H+h4iISHkcouVHCIHhw4fj+eefR9u2bU0+bvLkyfD399fdQkNDZYuJ63cRERE5JrsmP+PGjYNKpTJ6O3LkCKZPn44rV67g7bffNuv8b7/9NgoLC3W3U6dOyRY71+8iIiJyTCohhKh6N+u4ePEiLl++bHSfiIgIDBw4EL///jtUqtuJRllZGdRqNYYMGYK5c+ea9HxFRUXw9/dHYWEh/Pz8qhU7AOTn30BS0kqkpp7QbUtICEdyci8EBnpV+/xEREQk//e3XZMfU508eVKvXufs2bNISEjAkiVL0L59ezRs2NCk88h98bS4fhcREZH1yP39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\n",
+      "text/plain": [
+       "<Figure size 640x480 with 1 Axes>"
+      ]
+     },
+     "metadata": {},
+     "output_type": "display_data"
+    }
+   ],
+   "source": [
+    "X_train, y_train = generate_data(expanded=False)\n",
+    "\n",
+    "from sklearn.pipeline import make_pipeline\n",
+    "from sklearn.preprocessing import PolynomialFeatures\n",
+    "\n",
+    "regressor = make_pipeline(\n",
+    "    PolynomialFeatures(degree=2, include_bias=False),\n",
+    "    LinearRegression(),\n",
+    ")\n",
+    "\n",
+    "regressor.fit(X_train, y_train)\n",
+    "\n",
+    "y_predicted = regressor.predict(X_train)\n",
+    "mse = mean_squared_error(y_train, y_predicted)\n",
+    "\n",
+    "import pandas as pd\n",
+    "import matplotlib.pyplot as plt\n",
+    "data_frame = pd.DataFrame({'input': X_train[:,0], 'output': y_train})\n",
+    "ax1 = data_frame.plot.scatter(x='input', y='output', c='DarkBlue')\n",
+    "ax1.plot( X_train[:,0], y_predicted, color='red')\n",
+    "_ = ax1.set_title(f\"Mean squared error = {mse:.3f}\")"
+   ]
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.8.10"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/Semester_2/Einheit_12/Pics/.ipynb_checkpoints/Training-checkpoint.png b/Semester_2/Einheit_12/Pics/.ipynb_checkpoints/Training-checkpoint.png
new file mode 100644
index 0000000000000000000000000000000000000000..269c5099c0980556881c25dde81c8a45d9dec138
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/.ipynb_checkpoints/Training-checkpoint.png differ
diff --git a/Semester_2/Einheit_12/Pics/AufbauNeuron.png b/Semester_2/Einheit_12/Pics/AufbauNeuron.png
new file mode 100644
index 0000000000000000000000000000000000000000..9d40d1e20be907fa1d3bb62667661205ccaa3410
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/AufbauNeuron.png differ
diff --git a/Semester_2/Einheit_12/Pics/Bluete.png b/Semester_2/Einheit_12/Pics/Bluete.png
new file mode 100644
index 0000000000000000000000000000000000000000..79ceeacd18bd90e6e91b26eccea237da91262a3a
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/Bluete.png differ
diff --git a/Semester_2/Einheit_12/Pics/Entscheidungsbaum.png b/Semester_2/Einheit_12/Pics/Entscheidungsbaum.png
new file mode 100644
index 0000000000000000000000000000000000000000..77adb2c7af79b77ec664d7e3c326a1ad0e7290da
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/Entscheidungsbaum.png differ
diff --git a/Semester_2/Einheit_12/Pics/Konfusionsmatrix.png b/Semester_2/Einheit_12/Pics/Konfusionsmatrix.png
new file mode 100644
index 0000000000000000000000000000000000000000..ed2341911657019df4f1c2a1ee03414d7985d69f
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/Konfusionsmatrix.png differ
diff --git a/Semester_2/Einheit_12/Pics/Methoden.png b/Semester_2/Einheit_12/Pics/Methoden.png
new file mode 100644
index 0000000000000000000000000000000000000000..93c9f922f5d26fe1c67d5d68676445a4b8339c18
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/Methoden.png differ
diff --git a/Semester_2/Einheit_12/Pics/Netzwerk.png b/Semester_2/Einheit_12/Pics/Netzwerk.png
new file mode 100644
index 0000000000000000000000000000000000000000..3a6884df38a74a201c1a6b2880dc29ad14d93046
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/Netzwerk.png differ
diff --git a/Semester_2/Einheit_12/Pics/Neuron.png b/Semester_2/Einheit_12/Pics/Neuron.png
new file mode 100644
index 0000000000000000000000000000000000000000..c632b9eb0b6617aaa5912816a2e194d8c48abb10
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/Neuron.png differ
diff --git a/Semester_2/Einheit_12/Pics/QRCode.png b/Semester_2/Einheit_12/Pics/QRCode.png
new file mode 100644
index 0000000000000000000000000000000000000000..6747198dd58e8e4f1c753a0a1b04ea39023647da
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/QRCode.png differ
diff --git a/Semester_2/Einheit_12/Pics/Training.png b/Semester_2/Einheit_12/Pics/Training.png
new file mode 100644
index 0000000000000000000000000000000000000000..269c5099c0980556881c25dde81c8a45d9dec138
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/Training.png differ
diff --git a/Semester_2/Einheit_12/Pics/decision_tree.png b/Semester_2/Einheit_12/Pics/decision_tree.png
new file mode 100644
index 0000000000000000000000000000000000000000..43e668f06e662c2b72b78df253e858ccde8ff245
Binary files /dev/null and b/Semester_2/Einheit_12/Pics/decision_tree.png differ
diff --git a/Semester_2/Einheit_12/iris.csv b/Semester_2/Einheit_12/iris.csv
new file mode 100644
index 0000000000000000000000000000000000000000..fa85845b76a0a20252e05faefb5f4f0df1ba4c02
--- /dev/null
+++ b/Semester_2/Einheit_12/iris.csv
@@ -0,0 +1,151 @@
+sepal length,sepal width,petal length,petal width,species
+5.1,3.5,1.4,0.2,Iris-setosa
+4.9,3,1.4,0.2,Iris-setosa
+4.7,3.2,1.3,0.2,Iris-setosa
+4.6,3.1,1.5,0.2,Iris-setosa
+5,3.6,1.4,0.2,Iris-setosa
+5.4,3.9,1.7,0.4,Iris-setosa
+4.6,3.4,1.4,0.3,Iris-setosa
+5,3.4,1.5,0.2,Iris-setosa
+4.4,2.9,1.4,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+5.4,3.7,1.5,0.2,Iris-setosa
+4.8,3.4,1.6,0.2,Iris-setosa
+4.8,3,1.4,0.1,Iris-setosa
+4.3,3,1.1,0.1,Iris-setosa
+5.8,4,1.2,0.2,Iris-setosa
+5.7,4.4,1.5,0.4,Iris-setosa
+5.4,3.9,1.3,0.4,Iris-setosa
+5.1,3.5,1.4,0.3,Iris-setosa
+5.7,3.8,1.7,0.3,Iris-setosa
+5.1,3.8,1.5,0.3,Iris-setosa
+5.4,3.4,1.7,0.2,Iris-setosa
+5.1,3.7,1.5,0.4,Iris-setosa
+4.6,3.6,1,0.2,Iris-setosa
+5.1,3.3,1.7,0.5,Iris-setosa
+4.8,3.4,1.9,0.2,Iris-setosa
+5,3,1.6,0.2,Iris-setosa
+5,3.4,1.6,0.4,Iris-setosa
+5.2,3.5,1.5,0.2,Iris-setosa
+5.2,3.4,1.4,0.2,Iris-setosa
+4.7,3.2,1.6,0.2,Iris-setosa
+4.8,3.1,1.6,0.2,Iris-setosa
+5.4,3.4,1.5,0.4,Iris-setosa
+5.2,4.1,1.5,0.1,Iris-setosa
+5.5,4.2,1.4,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+5,3.2,1.2,0.2,Iris-setosa
+5.5,3.5,1.3,0.2,Iris-setosa
+4.9,3.1,1.5,0.1,Iris-setosa
+4.4,3,1.3,0.2,Iris-setosa
+5.1,3.4,1.5,0.2,Iris-setosa
+5,3.5,1.3,0.3,Iris-setosa
+4.5,2.3,1.3,0.3,Iris-setosa
+4.4,3.2,1.3,0.2,Iris-setosa
+5,3.5,1.6,0.6,Iris-setosa
+5.1,3.8,1.9,0.4,Iris-setosa
+4.8,3,1.4,0.3,Iris-setosa
+5.1,3.8,1.6,0.2,Iris-setosa
+4.6,3.2,1.4,0.2,Iris-setosa
+5.3,3.7,1.5,0.2,Iris-setosa
+5,3.3,1.4,0.2,Iris-setosa
+7,3.2,4.7,1.4,Iris-versicolor
+6.4,3.2,4.5,1.5,Iris-versicolor
+6.9,3.1,4.9,1.5,Iris-versicolor
+5.5,2.3,4,1.3,Iris-versicolor
+6.5,2.8,4.6,1.5,Iris-versicolor
+5.7,2.8,4.5,1.3,Iris-versicolor
+6.3,3.3,4.7,1.6,Iris-versicolor
+4.9,2.4,3.3,1,Iris-versicolor
+6.6,2.9,4.6,1.3,Iris-versicolor
+5.2,2.7,3.9,1.4,Iris-versicolor
+5,2,3.5,1,Iris-versicolor
+5.9,3,4.2,1.5,Iris-versicolor
+6,2.2,4,1,Iris-versicolor
+6.1,2.9,4.7,1.4,Iris-versicolor
+5.6,2.9,3.6,1.3,Iris-versicolor
+6.7,3.1,4.4,1.4,Iris-versicolor
+5.6,3,4.5,1.5,Iris-versicolor
+5.8,2.7,4.1,1,Iris-versicolor
+6.2,2.2,4.5,1.5,Iris-versicolor
+5.6,2.5,3.9,1.1,Iris-versicolor
+5.9,3.2,4.8,1.8,Iris-versicolor
+6.1,2.8,4,1.3,Iris-versicolor
+6.3,2.5,4.9,1.5,Iris-versicolor
+6.1,2.8,4.7,1.2,Iris-versicolor
+6.4,2.9,4.3,1.3,Iris-versicolor
+6.6,3,4.4,1.4,Iris-versicolor
+6.8,2.8,4.8,1.4,Iris-versicolor
+6.7,3,5,1.7,Iris-versicolor
+6,2.9,4.5,1.5,Iris-versicolor
+5.7,2.6,3.5,1,Iris-versicolor
+5.5,2.4,3.8,1.1,Iris-versicolor
+5.5,2.4,3.7,1,Iris-versicolor
+5.8,2.7,3.9,1.2,Iris-versicolor
+6,2.7,5.1,1.6,Iris-versicolor
+5.4,3,4.5,1.5,Iris-versicolor
+6,3.4,4.5,1.6,Iris-versicolor
+6.7,3.1,4.7,1.5,Iris-versicolor
+6.3,2.3,4.4,1.3,Iris-versicolor
+5.6,3,4.1,1.3,Iris-versicolor
+5.5,2.5,4,1.3,Iris-versicolor
+5.5,2.6,4.4,1.2,Iris-versicolor
+6.1,3,4.6,1.4,Iris-versicolor
+5.8,2.6,4,1.2,Iris-versicolor
+5,2.3,3.3,1,Iris-versicolor
+5.6,2.7,4.2,1.3,Iris-versicolor
+5.7,3,4.2,1.2,Iris-versicolor
+5.7,2.9,4.2,1.3,Iris-versicolor
+6.2,2.9,4.3,1.3,Iris-versicolor
+5.1,2.5,3,1.1,Iris-versicolor
+5.7,2.8,4.1,1.3,Iris-versicolor
+6.3,3.3,6,2.5,Iris-virginica
+5.8,2.7,5.1,1.9,Iris-virginica
+7.1,3,5.9,2.1,Iris-virginica
+6.3,2.9,5.6,1.8,Iris-virginica
+6.5,3,5.8,2.2,Iris-virginica
+7.6,3,6.6,2.1,Iris-virginica
+4.9,2.5,4.5,1.7,Iris-virginica
+7.3,2.9,6.3,1.8,Iris-virginica
+6.7,2.5,5.8,1.8,Iris-virginica
+7.2,3.6,6.1,2.5,Iris-virginica
+6.5,3.2,5.1,2,Iris-virginica
+6.4,2.7,5.3,1.9,Iris-virginica
+6.8,3,5.5,2.1,Iris-virginica
+5.7,2.5,5,2,Iris-virginica
+5.8,2.8,5.1,2.4,Iris-virginica
+6.4,3.2,5.3,2.3,Iris-virginica
+6.5,3,5.5,1.8,Iris-virginica
+7.7,3.8,6.7,2.2,Iris-virginica
+7.7,2.6,6.9,2.3,Iris-virginica
+6,2.2,5,1.5,Iris-virginica
+6.9,3.2,5.7,2.3,Iris-virginica
+5.6,2.8,4.9,2,Iris-virginica
+7.7,2.8,6.7,2,Iris-virginica
+6.3,2.7,4.9,1.8,Iris-virginica
+6.7,3.3,5.7,2.1,Iris-virginica
+7.2,3.2,6,1.8,Iris-virginica
+6.2,2.8,4.8,1.8,Iris-virginica
+6.1,3,4.9,1.8,Iris-virginica
+6.4,2.8,5.6,2.1,Iris-virginica
+7.2,3,5.8,1.6,Iris-virginica
+7.4,2.8,6.1,1.9,Iris-virginica
+7.9,3.8,6.4,2,Iris-virginica
+6.4,2.8,5.6,2.2,Iris-virginica
+6.3,2.8,5.1,1.5,Iris-virginica
+6.1,2.6,5.6,1.4,Iris-virginica
+7.7,3,6.1,2.3,Iris-virginica
+6.3,3.4,5.6,2.4,Iris-virginica
+6.4,3.1,5.5,1.8,Iris-virginica
+6,3,4.8,1.8,Iris-virginica
+6.9,3.1,5.4,2.1,Iris-virginica
+6.7,3.1,5.6,2.4,Iris-virginica
+6.9,3.1,5.1,2.3,Iris-virginica
+5.8,2.7,5.1,1.9,Iris-virginica
+6.8,3.2,5.9,2.3,Iris-virginica
+6.7,3.3,5.7,2.5,Iris-virginica
+6.7,3,5.2,2.3,Iris-virginica
+6.3,2.5,5,1.9,Iris-virginica
+6.5,3,5.2,2,Iris-virginica
+6.2,3.4,5.4,2.3,Iris-virginica
+5.9,3,5.1,1.8,Iris-virginica
\ No newline at end of file