Machine Learning

Überblick

Dozent: Florian Dahms, R 1-138

  • Vorlesung: Mittwoch 08:00-09:30 (2-137)
  • Übung: Donnerstag 10:00-11:30 (1-315)
  • OLAT
  • Übungsaufgaben werden in OLAT veröffentlicht.
  • Jupyter
  • Mündliche Prüfung am Ende des Semesters.

Referenzen

  • "The Elements of Statistical Learning", Trevor Hastie, Robert Tibshirani, Jerome Friedman
  • Stanfords CS229

Machine Learning

Arthur Samuel (1959): Some Studies in Machine Learning Using the Game of Checkers

Machine Learning is the field of study that gives the computer the ability to learn without being explicitly programmed.

Defintion: Machine Learning

Eine Maschine lernt, wenn sie ihre Performance verbessern kann, indem sie neue Beobachtungen aus der Welt verarbeitet.

Geschichte

1950er Machine Learning taucht erstmals als Begriff auf; Perceptron; Neuronale Netzwerke
1960er Nearest Neighbor; Backpropagation; Fundamentale Grenzen neuronaler Netzwerke werden bekannt
1970er AI Winter
1980er Backpropagation wird wiederentdeckt; Reinforcement Learning
1990er AI Winter; Support Vector Machines; Recurrent Neural Networks
2000er Netflix prize; ImageNet
2010er Deep Learning Boom

Automatische Übersetzung

Google Translate

Objekterkennung

https://commons.wikimedia.org/wiki/File:Computer_vision_sample_in_Sim%C3%B3n_Bolivar_Avenue,_Quito.jpg

Proteinfaltung

https://commons.wikimedia.org/wiki/File:C12orf29_AlphaFold.png

Aber: Deep / Machine Learning sind kein magischer Feenstaub.

DALL·E 2

  • Spam Filter
  • Planung von Rettungseinsätzen
  • Ermittlung individuelles Covid-19 Risiko
  • Click Wahrscheinlichkeiten von Werbung
  • Immobilien Preise
  • ...

https://commons.wikimedia.org/wiki/File:Fig-X_All_ML_as_a_subfield_of_AI.jpg

Unterteilung Machine Learning

  • Supervised Learning (überwachtes Lernen)
  • Unsupervised Learning (unüberwachtes Lernen)
  • Reinforcement Learning (bestärkendes Lernen)

Supervised Learning

Wir haben Daten $(x_1, y_1), (x_2, y_2), \ldots$ mit korrektem Label $y_i$

Beispiel: Lineare Regression

Input $x$: Rohe Pixel

Output $y$: Objektart, Bounding Box

https://commons.wikimedia.org/wiki/File:Detected-with-YOLO--Schreibtisch-mit-Objekten.jpg

Unsupervised Learning

Wir haben ungelabelte Daten $x_1, x_2, x_3, \ldots$

Beispiel: Clustering

https://commons.wikimedia.org/wiki/File:Cluster-1.svg
https://commons.wikimedia.org/wiki/File:Cluster-2.svg

Input $x$: Genom Sequenz

https://www.sciencedirect.com/topics/medicine-and-dentistry/sequence-clustering

Reinforcement Learning

Zum Zeitpunkt $t$ beobachten wir $s_t$ und entscheiden uns für eine Aktion $a_{t+1}$, die eine Belohnung $r_{t+1}$ bringt und zu einem neuen Zustand $s_{t+1}$ führt.

$\Rightarrow s_0; a_1, r_1, s_1; a_2, r_2, s_2; \ldots$

Input $x$: Video Pixels
Output $a$: Maus Position, Klick, Tastenanschlag
Belohnung $r$: Sieg oder Niederlage

https://openai.com/blog/more-on-dota-2/

Machine Learning = Statistik + Algorithmen

Ziel: Wir lernen viele Werkzeuge kennen um später das richtige für unser Problem zu finden.

Python

  • Eine der populärsten Programmiersprachen.
  • (relativ) leicht erlernbar.
  • Exzellente Bibliotheken für Data Science und Machine Learning.
  • Open Source
Link Jupyter

Lokale Python / Jupyter Installation:
Anaconda