Sebastian 3c327966c3
Added section 4-3-2"archive processing" (#574)
Kurze Zusammenfassung über das Archive Processing.

---------

Co-authored-by: Philipp Horstenkamp <philipp@horstenkamp.de>
2024-01-23 15:19:11 +01:00

3.2 KiB

Archive Processing

Im vorherigen Kapitel wurde die mangelnde Datenhistorie beschrieben, da dass Data-Mining inhaltlich nicht die erforderliche Tiefe erreichte und durch die Projektlaufzeit nur ein kurzes Intervall erfasst wurde.
Durch Recherche konnte ein Nachrichtenarchiv gefunden werden, welches 175000 Artikel aus verschiedenen Kategorien, wie z.B. Wirtschaft, Politik, Weltgeschehen, Kultur und Sport zusammenträgt. Die Quellen dieser Artikel sind Online-Nachrichtenseiten wie welt.de, heise.de, sueddeutsche.de und weiteren lokalen Tageszeitungen.

Die Artikel sind als CSV-Datei organisiert und in Spalten strukturiert. Archive structure

Datenaufbereitung - JSON Strukturierung

Um die Nachrichtenartikel für das Projekt nutzbar zu machen, müssen sie in die gleiche JSON-Struktur überführt werden, wie bereits im vorherigen Data-Mining-Kapitel beschrieben.

Notwendige Schritte:

  1. Erstellung des Attributs source_url aus der Spalte source
  2. Löschen der Elemente, die keinen Text enthalten
  3. Umwandlung und Vereinheitlichung der Spalte published in date
  4. Datensatzbereinigung

Nach der Aufbereitung stehen 167.256 Artikel im benötigten Format zur Verfügung. Archive processed

Identifikation von Unternehmen - NER Pipeline

In einem ersten Schritt werden Organisationen in den Artikeln identifiziert. Hierfür wird eine Pipeline für die Named-Entity-Recognition verwendet. Die Funktion dieser NER-Pipeline wird in einem späteren Kapitel genauer erläutert. Das NER-Processing benötigt ~119h für die 167256 Dokumente, was etwa 2,5 Sekunden pro Dokument entspricht.

NER Archive

Datenreduktion - Name Matching mit Rapidfuzz

Aufgrund der Anzahl der Dokumente ist es notwendig, nur relevante Artikel zu identifizieren, um einen Mehrwert für die Projektdatenbank zu erzielen und überflüssiges Processing zu vermeiden. Im vorherigen Schritt wurden die Organisationen identifiziert und es existiert bereits eine Collection mit relevanten Unternehmen.

Diese beiden Dokumentendatenbanken werden mit Rapidfuzz, einer Bibliothek zum String-Matching mit Unschärfe, verglichen. Unschärfe bedeutet, dass die Strings nicht identisch sein müssen, sondern ein Ähnlichkeitsmaß erfüllen müssen, wodurch Namensabwandlungen erkannt werden können.

Durch diesen Abgleich wird die Dokumentenanzahl auf 3.655 reduziert.

Name Matching

Stimmungsanalyse

Für das Projekt muss die Stimmung in den Nachrichten bestimmt werden, um z.B. einen Trend in der Aussenwahrnehmung eines Unternehmens zu analysieren. Diese Sentiment-Analyse wird in einem späteren Kapitel genauer erklärt. An dieser Stelle ist lediglich zu erwähnen, wie die Verteilung der Stimmungen im Nachrichtenarchiv war:

positiv negativ neutral
1637 164 1854
Fazit

Die Recherche und Aufbereitung des Nachrichtenarchivs bestanden aus verschiedenen Arbeitspaketen sowie einem zeitlichen Aufwand des Data-Processing. Der Einsatz hat sich gelohnt, um die Datenbasis des Projekts zu erweitern und eine Historie zu den Unternehmen aufzubauen.