Skip to content

Sprachverarbeitung Oberstufe ​

Der Prozessor versteht nur Maschinenbefehle aus Nullen und Einsen. Wie wird aus print("Hallo") etwas, das er ausführen kann? Und wie versteht ein Sprachassistent „Stell einen Wecker auf sieben“?

Compiler und Interpreter ​

CompilerInterpreter
übersetzt das ganze Programm vorab in Maschinencodeübersetzt und führt Anweisung für Anweisung aus
Ergebnis: eigenständige ausführbare DateiProgramm braucht immer den Interpreter
schnell bei der Ausführung, Fehler zeigen sich vor dem Startflexibel, gut zum Ausprobieren, Fehler erst bei Erreichen der Zeile
Beispiele: C, C++, RustBeispiele: Python, JavaScript (vereinfacht)

Programmiersprachen klassifizieren (Leistungskurs)

Maschinensprache (Bits) → Assembler (kurze Befehle wie MOV, ADD, nah an der Hardware) → höhere Programmiersprachen (Python, Java; unabhängig von der Hardware, gut lesbar).

Der Übersetzungsprozess Lk ​

Beispiel: summe = a + 42

Merke

  1. Lexikalische Analyse (Scanner): Der Text wird in Tokens zerlegt. Dafür nutzt man reguläre Ausdrücke bzw. endliche Automaten. BEZEICHNER(summe) ZUWEISUNG BEZEICHNER(a) PLUS ZAHL(42)
  2. Syntaktische Analyse (Parser): Mit der Grammatik der Sprache wird geprüft, ob die Tokens in einer erlaubten Reihenfolge stehen, und ein Syntaxbaum aufgebaut.
  3. Semantische Analyse: Ist die Bedeutung sinnvoll? Ist a überhaupt definiert?
  4. Code-Erzeugung: Aus dem Baum entsteht Maschinen- oder Bytecode.
text
          =
        /   \
    summe     +
            /   \
           a     42

So erklären sich auch Fehlermeldungen: SyntaxError kommt vom Parser, NameError (unbekannte Variable) von einer späteren Prüfung.

Natürliche Sprache verarbeiten ​

Sprachassistenten, Übersetzer, Chatbots und Sprachsteuerung im Auto verarbeiten natürliche Sprache, die mehrdeutig ist, Dialekte hat und sich ständig verändert. Heute geschieht das meist mit maschinellem Lernen statt mit festen Grammatiken.

Merke: Turing-Test

Alan Turing schlug 1950 vor: Eine Person unterhält sich schriftlich mit einem Menschen und einer Maschine, ohne zu wissen, wer wer ist. Kann sie die Maschine nicht zuverlässig erkennen, hat die Maschine den Test bestanden.

Chancen und Risiken ​

ChancenRisiken
Barrierefreiheit (Vorlesen, Sprachsteuerung)Mikrofone, die ständig „zuhören“
Übersetzung und Verständigung über SprachgrenzenFehler und Missverständnisse bei wichtigen Entscheidungen
Programmieren mit Hilfe von KI-AssistentenBots, die sich als Menschen ausgeben und Meinungen beeinflussen
schneller Zugang zu InformationenAbhängigkeit und Verlust eigener Fähigkeiten

Diskussion

Chatbots bestehen den Turing-Test heute in vielen Situationen. Bedeutet das, dass sie denken können? Und sollten Bots im Netz immer als Bots gekennzeichnet sein müssen?