diff --git a/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_JSON_struct.PNG b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_JSON_struct.PNG new file mode 100644 index 0000000..e48c3f2 Binary files /dev/null and b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_JSON_struct.PNG differ diff --git a/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_ProcessingTime.PNG b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_ProcessingTime.PNG new file mode 100644 index 0000000..b9da412 Binary files /dev/null and b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_ProcessingTime.PNG differ diff --git a/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_structure.PNG b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_structure.PNG new file mode 100644 index 0000000..4b4cf15 Binary files /dev/null and b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Archive_structure.PNG differ diff --git a/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Name_Matching.PNG b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Name_Matching.PNG new file mode 100644 index 0000000..b08040e Binary files /dev/null and b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/Abbildungen/Name_Matching.PNG differ diff --git a/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/S4-3-2.md b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/S4-3-2.md new file mode 100644 index 0000000..784a139 --- /dev/null +++ b/documentations/Ergebnisse/Abschlussbericht_und_Praesentation/SeZe/S4-3-2.md @@ -0,0 +1,51 @@ +#### 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](Abbildungen/Archive_structure.PNG) + +##### 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](Abbildungen/Archive_JSON_struct.PNG) + +##### 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](Abbildungen/Archive_ProcessingTime.PNG) + +##### 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](Abbildungen/Name_Matching.PNG) + +##### 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. \ No newline at end of file