Grundlagen der Textanalyse

In dieser Übung geht es darum, einige Python-Bibliotheken kennenzulernen, mit denen sich ein beliebiger Text sprachlich analysieren lässt und bestimmte Merkmale visualiert werden können.

Ziele

  • Sie recherchieren einen beliebigen Text und konvertieren ihn in ein verarbeitbares Format.
  • Sie setzen Python-Bibliotheken zur Textanalyse ein.
  • Sie visualisieren statistische Erkenntnisse.
  • Sie bereiten Grafiken für die weitere Verwendung in Visualisierungen auf.
  • Sie lernen Grundlagen für weiterführende Verfahren von Künstlicher Intelligenz (KI) und Machine Learning (ML) kennen.

Voraussetzungen

  • Installation von Python >3.9.x
  • Installation von JupypterLab
  • Installation von pandoc

Mögliches Ergebnis

Ein mögliches Ergebnis dieser Lerneinheit könnte in der folgenden Abbildung bestehen. Sie zeigt die Grundformen (Infinitive) der Verben in

Quelle: "The Town Musicians of Bremen 2" on [freesvg.org](https://freesvg.org/1487612321), Public Domain
Quelle: “The Town Musicians of Bremen 2” on freesvg.org, Public Domain

Aufträge

Die folgenden Aufträge sind in JupyterLab und im Terminal zu bearbeiten. Beachten Sie, dass ggf. weitere Software bzw. Python-Pakete installiert werden müssen.

Aufgabenstellung 1: Daten suchen und vorbereiten

  • Recherchieren Sie einen Text im Netz, den Sie analysiseren möchten. Dieser sollte im HTML-Format vorliegen, um die anschließende Konvertierung zu vereinfachen.
  • Speichern Sie die Webseite als HTML-Dokument im Ordner Ihres JupyterLab-Projekts.
  • Konvertieren Sie das HTML-Dokument mit Pandoc zu einer Markdown-Datei:
1  $ pandoc ihr-text.html -o text.md --wrap=none
  • Öffnen Sie die Markdown-Datei in einem Editor Ihrer Wahl, und bereinigen Sie den Text manuell, wobei Sie alle Elemente löschen, die später nicht sprachlich analysiert werden sollen.

Aufgabenstellung 2: Daten analysieren und visualisieren

  • Klonen Sie das Codebeispiel für JupyterLab, und sorgen Sie dafür, dass es fehlerfrei ausführbar ist. Ggf. müssen Sie Software nachinstallieren:
    • Die Installation von Spacymodellen ist auf dieser Webseite dokumentiert. Zusätzliche Python-Pakete installieren Sie mit pip. Öffnen Sie dazu ein Terminal auf Ihrem Rechner oder in JupypterLab. Für die Installation des deutschen Modells und PIL sind daher die folgenden Schritte erforderlich:
1$ pip install spacy
2$ python -m spacy download de_core_news_lg
3$ pip install pillow
4$ pip install numpy
5$ pip install wordcloud
  • Suchen Sie ein Bild Ihrer Wahl, am besten unter einer freien Lizenz, und bereiten Sie es für die Maskierung der WordCloud vor. Hierfür müssen alle Bereiche, die nicht mit der WordCloud gefüllt werden sollen, RGB-weiß (255,255,255) sein.
  • Analysieren Sie noch eine weitere Wortart.
Bei der Installation von WordCloud unter Windows 10 kann es zu Problemen kommen. Ein Post auf GitHub weist den richtigen Weg: Auf der verlinkten Seite der Wheels muss so bspw. die Datei wordcloud‑1.8.1‑cp310‑cp310‑win_amd64.whl heruntergeladen werden. Die Installation erfolgt dann mit python -m pip install wordcloud‑1.8.1‑cp310‑cp310‑win_amd64.whl

Aufgabenstellung 3: Analyse abwandeln und erweitern

  • Lesen Sie spätestens jetzt in den Referenzen der verwendeten Bibliotheken und Paketen nach:
  • Wie können Sie eine WordCloud in den Farben der verwendeten Maske erstellen?
  • Wie können Sie zwei Wortarten in der WordCloud gemeinsam anzeigen?
  • Wie können Sie die Hintergrundfarbe ändern?
  • Wie können Sie die bestimmte Wörter herausfiltern?