faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:start [09.05.2023 16:08] Marco Kuemmelfaecher:informatik:oberstufe:machine_learning:einfuehrung_nn:start [12.09.2023 18:44] (aktuell) Marco Kuemmel
Zeile 1: Zeile 1:
 +((Quelle siehe: [[faecher:informatik:oberstufe:machine_learning:einfuehrung_mit_membrain:start|Einführung in Maschinelles Lernen mithilfe von MemBrain]] ))
 +<WRAP center round important 90%>
 +Orientiere dich bei der Bearbeitung der Arbeitsblätter am **WIKI**! Lies hier genau welche Aufgabe als nächstes bearbeitet werden soll und lies zwischen den Aufgaben (falls vorhanden) erst hier die nächste Information.
 +</WRAP>
 +
 ===== Wie funktioniert die Informationsverarbeitung und -weiterleitung im Gehirn? ===== ===== Wie funktioniert die Informationsverarbeitung und -weiterleitung im Gehirn? =====
  
Zeile 5: Zeile 10:
 {{:aufgabe.png?nolink  |}} {{:aufgabe.png?nolink  |}}
 === Arbeitsblatt 1) === === Arbeitsblatt 1) ===
-Bearbeite das folgende Arbeitsblatt. +Bearbeite das folgende Arbeitsblatt.  
-Nutze für die Aufgabe 1 u. a. die folgende Seite: http://www.biologie-schule.de/nervenzelle-neuron.php+Nutze für die Aufgabe 1 u. a. die folgende Seite: http://www.biologie-schule.de/nervenzelle-neuron.php
  
 {{ :faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:ab_1_-_gehirn.pdf |}} {{ :faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:ab_1_-_gehirn.pdf |}}
Zeile 16: Zeile 21:
 ===== Wie ist ein künstliches Neuron aufgebaut? ===== ===== Wie ist ein künstliches Neuron aufgebaut? =====
  
-Vergleiche deine Lösung aus Aufgabe mit dem hier abgebildeten Neuron+{{:aufgabe.png?nolink  |}} 
 +=== Arbeitsblatt 2) === 
 +Besorge dir das folgende Arbeitsblatt "AB 2 - Maschinelles Lernen und neuronale Netze - Grundlagen"
  
-{{ :faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:kuenstliches_neuron.png?400 |}}+{{ :faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:ab_2_-_informationsweiterleitung.pdf |}} 
 + 
 + 
 +  * **Bearbeite Aufgabe 1** 
 + 
 +++++Überprüfe deine Lösung für die 1 b) und übernehme diesen Aufschrieb. | 
 +{{:faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:loesung_1b.jpg?500|}} 
 +++++ 
 + 
 +  * **Bearbeite Aufgabe 2** 
 + 
 +==== Was bringt also nun ein solches Neuron? ==== 
 +  * Wir bekommen auf Basis der Eingabe-Werte einen (eindeutigen) Ausgabewert. 
 +  * Die gesamte Logik dazu steckt in den Gewichten und Aktivierungsschwellen der Neuronen. 
 +  * Im Moment sind das alles noch kleine mathematische Beispiele, die man auch mit imperativer Programmierung lösen könnte. 
 +  * Ein einzelnes Neuron bringt uns aktuell noch nicht groß weiter, es berechnet nur eine simple mathematische Gleichung. 
 + 
 +**Frage:** könnte man die entscheidenden Werte (Gewichte und Schwellenwert) auch **manuell** festlegen? 
 + 
 +  * **Bearbeite Aufgabe 3** 
 + 
 +Die Bearbeitung der Aufgabe 3 führt zu folgender Erkenntnis: 
 +++++Erkenntnis:
 +Es lassen sich nicht alle Funktionen (Teil e) mit nur einem Neuron realisieren! 
 + 
 +Die **Lösung** dazu lautet: Wir benutzen mehrere Neuronen in Form von mehreren Schichten (= **künstliches neuronales __Netzwerk__**) 
 +++++ 
 + 
 +===== Künstliches neuronales Netzwerk ===== 
 +Wenn wir mehrere (künstliche) Neuronen hintereinander schalten und vielfach miteinander verknüpfen, dann bildet sich ein neuronales Netzwerk. Gegenüber einem einzelnen Neuron kann ein solches Netzwerk wesentlich komplexere Zusammenhänge in den Eingabedaten berücksichtigen. 
 + 
 +{{ :faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:nn_example1.png?600 |}} 
 + 
 +Typischerweise werden Neuornale Netze (NN) so dargestellt, dass die Daten von links nach rechts laufen.  
 +  * Der **Input-Layer** hat keine wirkliche Funktion (insb. keine Aktivierungsschwelle), sondern liefert nur die "nackten" Eingabedaten. 
 +  * Der **Hidden-Layer** (davon muss mindestens einer existieren, um von einem Netzwerk sprechen zu können), ist notwendig, um komplexere Zusammenhänge zwischen den Eingabedaten berücksichtigen zu können. Er ist versteckt (hidden), da man ihn von außerhalb nicht direkt erkennen kann, da man nur mit der Ein- und Ausgabe zu tun hat. 
 +  * Der **Output-Layer** gibt schließlich das Ergebnis aus. 
 + 
 +{{ :faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:nn_example2.png?600 |}} 
 +  * Wenn es mehrere Hidden-Layer gibt, dann spricht man vom **deep learning** (in etwa "tiefgehendes Lernen"). Damit können noch komplexere Zusammenhänge berücksichtigt werden, allerdings gilt **nicht** zwingend der Zusammenhang "mehr = besser"!  
 +  * Bei diesem zweiten Bild sieht man außerdem gut, dass alle Neuronen **benachbarter Ebenen** miteinander verbunden sind, aber **nicht** die Neuronen innerhalb einer Ebene.  
 +  * Zudem sieht man, dass es auch mehrere Outputs geben kann. Diese können je nach Anwendungszweck beispielsweise als Binärzahl, Koordinaten oder ähnliches aufgefasst werden. 
 + 
 +**Bearbeite nun die (Knobel-)Aufgabe Nr. 4 auf dem Arbeitsblatt.** 
 +++++Mögliche Lösung: | 
 +{{ :faecher:informatik:oberstufe:machine_learning:einfuehrung_nn:blatt2_aufg4_lsg.jpg?600 |}} 
 +++++
  
-{{:aufgabe.png?nolink  |}} 
-=== (A3) === 
-  - Kopiere das oben abgebildete künstliche Neuron in deine Aufschriebe (hier mit drei Eingängen $x_1$ bis $x_3$) und beschrifte es. 
-  - Wie du siehst, liegen an den Eingängen der künstlichen Neuronen keine unterschiedlich starken Stromimpulse an, sondern größere oder kleinere Zahlenwerte. Im Neuron muss nun eine Rechnung stattfinden, damit das Axon abhängig von den Eingabewerten „feuern“ kann. Überlege in Partnerarbeit, wie die nötige Gleichung aussehen könnte – es genügt, wenn sie zwischen „feuern“ und „nicht feuern“ unterscheiden kann. Du darfst für die Gleichung noch weitere Variablen hinzufügen, die bisher noch nicht zu sehen sind. Beachte dabei: 
-    - Erinnert euch an das Video: Einzelne Impulse von Eingängen werden unterschiedlich stark von den Synapsen an die Dendriten weitergegeben bzw. gewichtet! 
-    - Der Axonhügel (hier reduziert dargestellt im Zellkern/Zelle) bündelt die Signale, leitet sie aber nur weiter, wenn ein bestimmtes Potenzial überschritten ist. 
  
 +<WRAP center round info 90%>
 +**Erkenntnis:**\\
 +Die Gewichte und Schwellenwerte kann man mit viel Aufwand bei kleinen Netzwerken manuell bestimmen. Bei großen Netzwerken wird das aber praktisch unmöglich.\\
 +=> **Wir müssen dem neuronalen Netz daher das eigenständige Lernen beibringen (siehe nächstes Kapitel)!**
 +</WRAP>
  
-{{simplefilelist>.:*}}+{{simplefilelist>.:*.pdf}}
  • faecher/informatik/oberstufe/machine_learning/einfuehrung_nn/start.1683641304.txt.gz
  • Zuletzt geändert: 09.05.2023 16:08
  • von Marco Kuemmel