Grundlagen der künstlichen Intelligenz

Überblick

Dozent: Florian Dahms, R 1-138

  • Vorlesung: Dienstag 10:00-11:30 (1-315), Donnerstag 08:15-09:45 (1-312)
  • Übung: Mittwoch 08:15-09:45 (1-314)
  • OLAT
  • Übungsaufgaben auf Jupyter
    • Bis zu 10 Bonuspunkte für die Klausur
  • Aufzeichnungen: Panopto
  • Abschlussklausur

Referenzen

  • "Artificial Intelligence: A Modern Approach", Stuart Russel, Peter Norvig
  • Stanfords CS221

Achtung: Denglisch

Viele Englische Begriffe haben kein (gebräuchliches) deutsches Pendant oder es finden sich keine guten Ressourcen, wenn man nach diesem sucht.

Künstliche Intelligenz

Rational handelnde Maschinen

Turing Test

https://commons.wikimedia.org/wiki/File:Test_de_Turing.jpg

https://www.bostondynamics.com

Brettspiele

https://www.deepmind.com/blog/alphazero-shedding-new-light-on-chess-shogi-and-go

Planungsprobleme

https://commons.wikimedia.org/wiki/File:UCC_Athletic_Event_Scheduling_Board.jpg

Autopiloten

https://commons.wikimedia.org/wiki/File:Tesla_Autopilot_Engaged_in_Model_X.jpg

Virtuelle Assistenten


https://en.wikipedia.org/wiki/File:Android_Assistant_on_the_Google_Pixel_XL_smartphone_(29526761674).jpg
https://en.wikipedia.org/wiki/File:Amazon_Echo.jpg

Automatische Übersetzung

Google Translate

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

3 Hauptparadigmen

  • Modellierung
  • Schlussfolgern
  • Lernen

Modellierung

$\Rightarrow$

https://en.wikipedia.org/wiki/File:Bratislava_SPOT_1027.jpg

"All models are wrong, but some are useful"

George Box

Lernen

$\Rightarrow$
Daten

Schlussfolgern / Inference

$\Rightarrow$

Was ist auf dem Bild hier?

Reflex basierte Modelle

Beispiele: Lineare Classifier, Deep Neural Networks

https://en.wikipedia.org/wiki/Neural_network#/media/File:Neural_network_example.svg

Zustands basierte Modelle

Beispiel

Zustandsbasierte Modelle

  • Spiele: Schach, Go, Pac-Man, Starcraft, ...
  • Navigationssysteme
  • Robotik: Motion Planning
  • Natural Language Processing, Maschinelles Übersetzen

    Klassen von zustandsbasierten Modellen

  • Such Probleme
  • Markov Entscheidungs Prozesse
  • Kompetitive Spiele

Variablen basierte Modelle

$\Rightarrow$

https://en.wikipedia.org/wiki/File:Sudoku_Puzzle_by_L2G-20050714_standardized_layout.svg
https://en.wikipedia.org/wiki/File:Sudoku_Puzzle_by_L2G-20050714_solution_standardized_layout.svg

Logik

Alice is a student

Students are people

Is Alice a person?

Such Probleme
Regression Markov Decision Processes Constraint Satisfaction Problems
Classifier Kompetitive Spiele Bayesian networks
Reflex Zustände Variablen Logik
"Niedrige Intelligenz" "Höhere Intelligenz"

Ziel: Überblick und Grundlagenwissen zu diversen KI Methoden

Tiefergehende Details in anderen Vorlesungen

Geschichte

1956: Dartmouth College Summer Workshop (John McCarty)

Geburtstunde des Begriff "Artificial Intelligence"

Frühe Erfolge

  • 1956: Logic Theorist (Newell, Simon, Shaw)
    Generieren von automatischen Beweisen für Theoreme
  • 1959: Dame (Brettspiel) (Samuel)
    Spielt Dame auf starkem Amateur Level

Großer Optimismus, dass in 10-20 Jahren KI "gelöst" sein wird.

Schlechte Ergebnisse in anderen Bereichen: Übersetzung

The spirit is willing but the flesh is weak.

(Russisch)
The vodka is good but the meat is rotten.

1966: ALPAC report führt zum Ende der Finanzierung von Machine Translation projekten

1970er und 80er: Expertensysteme

Regelbasierte Systeme
"When [x] dann [y]"
Komplett spezifiziert durch Domänenexperten

    Erster großer industrieller Einsatz von KI

  • DENDRAL: Molekülstruktur aus Massenspektrum vorhersagen
  • MYCIN: Diagnose von Blut Infektionen und Empfehlung von Antibiotike
  • XCON: Kundenbestellungen bei DEC in Einzelkomponenten übersetzen

    Pros:

  • Erste echte Anwendungen
  • Expertenwissen kann skaliert werden
  • Cons:

  • Deterministische Regeln unzureichend für nicht deterministische Welt
  • Regeln für viele Probleme zu komplex zum manuellen erfassen

1987: zweiter "AI winter"

Künstliche neuronale Netze

  • 1943: künstliche neuronala Netze / Schaltkreise (McCulloch, Pitts)
  • 1949: "cells that fire together wire together" Regel (Hebb)
  • 1958: Perceptron Algorithmus (Rosenblatt)
  • 1959: ADALINE maschine für lineare regression (Widrow/Hoff)
  • 1969: "Perceptrons" (Minsky, Papert): Zeigten, dass lineare Modelle nicht XOR berechnen können

2. Welle von neuronalen Netzen

  • 1980: Neocognitron (convolutional neural network) für Bilder (Fukushima)
  • 1986: (Wiederentdeckte) Backpropagation zum Training von Multi-layer Netzwerken (Rumelhardt, Hinton, Williams)
  • 1989: Convolutional neural network zum Erkennen von handgeschriebenen Ziffern (LeCun)

Deep Learning

  • 2006: Hinton et. al. zeigen, wie sich tiefe neuronale Netzwerke trainieren lassen
  • 2012: AlexNet macht sehr große Fortschritte bei der Bilderkennung
  • 2016: AlphaGo gewinnt gegen Weltmeister Lee Sedol im Go
  • 2022: ChatGPT schlägt sich sinnvoll im Turing Test

Zwei Hauptrichtungen

Symbolische KI Neuronale KI

Ideen aus diversen Feldern

  • 1801: Lineare Regression (Gauss, Legendre)
  • 1936: Lineare Klassifikation (Fisher)
  • 1956: Kürzeste Wege Suche (Dijkstra)
  • 1957: Markov Entscheidungs Prozesse (Bellman)
  • 1985: Bayesian Networks (Pearl)
  • 1995: Support Vector Machines (Cortes, Vapnik)

Python

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

Mehr Python Referenzen

Übungen

  • Alle Übungsaufgaben sind im Jupyter verfügbar.
    Menüpunkt Nbgrader $\to$ Assignment List
  • Bitte melden, falls Zugang nicht funktioniert.
  • Abgabe muss bis zum Dienstag um 12 Uhr passieren.
  • Es können mehrere Abgaben gemacht werden. Die jeweils letzte zählt.

Demo

Lokale Python / Jupyter Installation:
Anaconda