Wer braucht Computerlinguistik?



Esther Seyffarth
@ojahnn

23. Juni 2016, Webworker Ruhr

Was tut Computerlinguistik?

Computerlinguistik beschäftigt sich u.a. mit der Programmierung von Bots, z.B. dieser künstlichen Psychotherapeutin
Screenshot von der ELIZA-Implementierung auf http://www.masswerk.at/elizabot/

1. Aufgabe:
Input verarbeiten und "verstehen"

Rechtschreibkorrektur

falsch geschriebene Inputwörter können nicht verarbeitet werden, daher ist die Rechtschreibkorrektur ein nötiger erster Schritt.
Falsch geschriebene Inputwörter können nicht weiterverarbeitet werden

Tokenisierung: Zerlegen des Inputs

Bevor die Eingabe verstanden werden kann, muss sie in kleinere Einheiten zerlegt werden, damit z.B. jedes einzelne Wort nachgeschlagen und jeder einzelne Satz alleinstehend interpretiert werden kann.
Jeder einzelne Satz muss separat interpretiert werden. Jedes einzelne Wort muss separat verarbeitet werden.

Lemmatisierung: Zusammenführen von Wortformen

Damit Wörter nachgeschlagen werden können, muss die Zuordnung zum Wortstamm geklärt werden.
Ein Wort kann nur dann verstanden werden, wenn klar ist, zu welchem Wortstamm es gehört.

Parsen: Grammatische Struktur der Eingabe ermitteln

die grammatische Struktur der Eingabe hat direkte Auswirkungen auf die Bedeutung der Eingabe, z.B. ist 'Tom liebt Jan' etwas anderes als 'Jan liebt Tom'.
Ist die grammatische Struktur bekannt, kann die Eingabe vom Computer "verstanden" werden.
Screenshot von http://demo.ark.cs.cmu.edu/parse

Interne semantische Repräsentation: Verständnis vortäuschen

I think my mother and I are too close.

$$\exists e \exists c [think(e, SPEAKER, c) \wedge $$ $$ be\_too\_close(c, SPEAKER, SPEAKERS\_MOTHER)]$$
Die Bedeutung von Sätzen setzt sich nach bestimmten Regeln aus den Bedeutungen der Einzelelemente zusammen.

2. Aufgabe:
Antwort generieren

Ungelöst und unlösbar (?)

Jurafskys Folie zeigt den Stand von 2012 in einer Auswahl der Teilbereiche der Computerlinguistik Folie von Dan Jurafsky, 2012 http://spark-public.s3.amazonaws.com/nlp/slides/intro.pdf

Bots

  • Bots als Brücke zwischen Frontend und Backend
  • Plattform zur Weiterentwicklung bzw. Präsentation computerlinguistischer Tools und Algorithmen
  • Bots als "Apps mit geringerer Hemmschwelle"
  • Bots als Programmierprojekte für Einsteiger/innen
  • Bots als Kunstform: #botALLY
  • Bots als bessere Menschen?

Let's Talk About Bots! \o/

Unkonferenz am 09.07. im Unperfekthaus, Essen

Kommt alle!
Danke fürs Zuhören!