faecher:informatik:oberstufe:machine_learning:einfuehrung: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:start [03.03.2023 13:59] – [Was können Computer gut?] Frank Schiebelfaecher:informatik:oberstufe:machine_learning:einfuehrung:start [04.03.2023 18:08] (aktuell) – [Eine Vorhersagemaschine] Frank Schiebel
Zeile 26: Zeile 26:
 Es gibt aber trotzdem viele Aufgaben, die man nicht einfach lösen kann, indem man Es gibt aber trotzdem viele Aufgaben, die man nicht einfach lösen kann, indem man
 einzelne Befehle geschickt aneinanderreiht. einzelne Befehle geschickt aneinanderreiht.
 +
 +Ein Regelwerk, das bei unbekannten Bildern beispielsweise durch Betrachtung jedes einzelnen Pixels und seiner Relation zu anderen Pixeln entscheiden soll, welches der drei Bilder oben ein Zebra darstellt ist nahezu undenkbar und fast sicher unmöglich imperativ zu programmieren.
 +
 +Auch ein Mensch kann diese Frage erst beantworten, nachdem er Dinge **gelernt** hat - ein 2 Jähriger könnte die Bilder wohl kaum unterscheiden, eine Zehnjährige ziemlich sicher.
 +
 +Wie kann man einem Computer aber beibringen zu lernen, was also soll "maschinelles Lernen" sein - und wie kann das funktionieren?
 +
 +===== Eine Vorhersagemaschine =====
 +
 +Als erstes Beispiel soll die Umrechnung von Zentimeter in Inch dienen((Die "gewöhnliche" Herangehensweise wäre, herauszufinden, welcher Faktor ''c'' diese beide Einheiten ineinander umrechnet und anschließend (imperativ) die Gleichung ''inch=c*zentimeter'' in einer Programmiersprache deiner Wahl zu implementieren)).
 +
 +Als einzige Information sei die folgende Tabelle gegeben:
 +
 +
 +^ Zentimeter  | -42         | -11.2          5.5 | 8        | 15       | 22       | 38        |
 +^ Inch        | -16.53543,  | -4.40945  | 2.16535  | 3.14961  | 5.90551  | 8.66142  | 14.96063  |
 +
 +Wir wollen nun eine //**"Vorhersagemaschine"**// verwenden, die wir mit diesen Daten füttern. Dabei soll die Maschine "lernen", welcher Zusammenhang zwischen Eingabe und Ausgabe besteht und für einen angegebenen Wert eine Vorhersage für den zugehörigen Wert bestimmen.
 +
 +---- 
 +{{:aufgabe.png?nolink  |}}
 +=== (A1) Die Vorhersagemaschine als "Black Box" ===
 +
 +**(A)** Lade den vorbereiteten Code von https://codeberg.org/qg-info-unterricht/tf-vorhersagemaschine herunter oder klone das Repo. Anschließend musst du die python-Abhängigkeiten für das Projekt installieren - unter Linux kannst du einfach das Skript ''mkvenv.sh'' ausführen, das richtet ein Virtual-Environment ein, installiert alle Abhängigkeiten und aktiviert es anschließend. FIXME Windows?
 +
 +  * Führe als ersten Test den Befehl ''./vorhersagemaschine.py -i datensatz01.csv -t 10 -x 8'' aus.
 +  * Vergleiche den vorhergesagten Wert für x=8 mit dem tatsächlichen Wert aus der Tabelle.
 +  * Wiederhole den Befehl mit einer 
  • faecher/informatik/oberstufe/machine_learning/einfuehrung/start.1677851995.txt.gz
  • Zuletzt geändert: 03.03.2023 13:59
  • von Frank Schiebel