2.2 Vorarbeiten - mkappus1/DatenmanagementMTHS24 GitHub Wiki

Vorarbeiten

Pythonumgebung testen

Für einige der Aufgaben und Prozesse im aktuellen Block werden wir auf vorgefertigte Python Skripte zugreifen. Daher sollten Sie zuallererst sicherstellen, dass Sie eine funktioierende Python Installation auf Ihrem Rechner haben.

Starten Sie Ihre UNIX/Linux Installation auf Ihrem Rechner.

2024-09-21-18-02-11-image

Legen Sie die Datei "HalloWeltUndMehr.py" in einem Verzeichnis ab und navigieren Sie in dieses Verzeichnis.

wget https://raw.githubusercontent.com/mkappus1/DatenmanagementMTHS24/refs/heads/main/Woche%202/Skripte/HalloWeltUndMehr.py

Rufen Sie dann Das Skript mit folgendem Befehl auf:

python3 HalloWeltUndMehr.py

2024-09-21-18-09-01-image

Wenn dann in der Kommandozeile "Hallo Welt" angezeigt wird und Sie um einige Eingaben gebeten werden, ist Python auf Ihrem System verfügbar.

Übung: Lassen Sie sich den Inhalt des Python-Skripts anzeigen (z.B. in der Linux Umgebung mit dem Befehl more HalloWeltUndMehr.pyoder über den Windows Explorer und einen geeigneten Texteditor). versuchen Sie zu verstehen, was die verschiednene befehl im Skript machen. grafik

Voraussetzungen Für Python-Skripte

Die meisten der Skripte, die wir verwenden, benötigen bestimmte Voraussetzungen (in Form sogenannter Python-Bibliotheken). Damit wir nicht alle diese Bibliotheken einzeln installieren müssen hat Antoni Oliver (der die Skripte geschrieben hat) für jede der Skriptsammlungen, die wir von seiner Webseite herunterladen, eine Liste der benötigten Python-Bibliotheken in einer Datei namens requirements.txt hinterlegt. In jedem der Verzeichnisse mit Skripten, die wir in den folgenden Lektionen herunterladen, finden Sie also eine Datei mit diesem Namen. Darin wird angegeben, welche Voraussetzungen installiert sein müssen, damit die Programme ausgeführt werden können. Wenn Sie die Pakete mit den Skripten heruntergeladen und entpackt haben, können Sie in den Ordner mit den Skripten wechseln. Neben den Skripten sollten Sie dort dann die Datei _ requirements.txt_ finden. Hier das Beispiel der Skriptsammlung MTUOC-TMX2tabtxt mit den Skripten und der im entsprechenden Verzeichnis abgelegten Datei requirements.txt.

grafik

Mit Hilfe des Befehls pip install -r requirements.txt oder pip3 install -r requirements.txt können Sie dann alle in der Datei requirements.txt aufgeführten python-Bibliotheken installieren und die in dieser Sammlung enthaltenen Skripte sollten funktioneren.

Unter Linux müssen Sie möglicherweise sudo vor dem Befehl verwenden.

An dieser Stelle sei erwähnt, dass es ratsam sein kann, virtuelle Python-Umgebungen zu erstellen, um Inkompatibilitäten zwischen den verschiedenen Bibliotheken und Modulen, die Sie installieren, zu vermeiden, obwohl dies nicht unbedingt erforderlich ist.

Was sind TMX Dateien und wie sind sie aufgebaut?

Im aktuellen Block werden wir mit TMX-Dateien arbeiten. Einigen von Ihnen werden TMX-Dateien bereits aus der Arbeit mit Ihrem CAT-Tool kennen. Hier trotzdem noch einmal eine kurze Übersicht darüber, was TMX-Dateien sind und wie sie typischerweise aufgebaut sind.

TMX steht für Translation Memory eXchange. Es ist ein XML-basiertes Dateiformat, das zum Austausch von Translation Memory Inhalten meist zwischen verschiedenen Übersetzungssoftware-Systemen (CAT-Tools) verwendet wird. Die meisten CAT-Tools haben eine Funktionalität, die den Export aus den (zum Teil proprietären) Datenbanken des jeweiligen Tools ins TMX Format ermöglichen.

#####  Verwendung:

  • TMX-Dateien enthalten Übersetzungseinheiten (Translation Units, TUs), die aus Quell- und Zieltextpaaren bestehen.
  • Sie ermöglichen es Übersetzern, Inhalte zu speichern und diese (meist über eine Export) in anderen Projekten oder Tools wiederzuverwenden.

##### Aufbau:

Eine TMX-Datei basiert auf XML und folgt einer bestimmten Struktur bestehend aus der Kopfzeile den Übersetzungseinheiten und den Segmenten.

  1. Kopfzeile (<header>):
  • Die Kopfzeile (markiert durch das Tag **<header>**) enthält Metadaten über die Datei, wie Erstellungsdatum, Ersteller, Sprachinformationen, Tool-Informationen usw.

Beispiel:

<header creationtool="SomeTool" creationtoolversion="1.0" segtype="sentence" adminlang="en" srclang="en" datatype="plaintext">


2024-09-21-18-14-14-image

  1. Übersetzungseinheiten (<tu>):
  • Jede Übersetzungseinheit (markiert durch das Tag <tu>) repräsentiert eine Quell-Ziel-Textpaarung.
  • Die Sprache der Übersetzungseinheiten wird durch <tuv>-Tags (Translation Unit Variant) markiert.

Beispiel:

<tu>
   <tuv xml:lang="en">
      <seg>Hello, world!</seg>
   </tuv>
   <tuv xml:lang="de">
      <seg>Hallo, Welt!</seg>
   </tuv>
</tu>
  1. Segmente (<seg>):
  • Das tatsächliche Textsegment, das übersetzt wurde, befindet sich innerhalb des <seg>-Tags.

2024-09-21-18-14-58-image

Vorteile:

  • Interoperabilität: TMX-Dateien machen es einfach, Übersetzungsspeicher zwischen verschiedenen Übersetzungswerkzeugen zu teilen.
  • Standardisierung: Die XML-Struktur sorgt für eine standardisierte Darstellung von Übersetzungsdaten, was die Verarbeitung und den Datenaustausch erleichtert.

Zusammenfassung: TMX ist ein strukturiertes, XML-basiertes Format zur Speicherung und zum Austausch von Übersetzungseinheiten zwischen verschiedenen Übersetzungssoftwares, um die Wiederverwendung und Konsistenz von Übersetzungen zu unterstützen.

Ausblick: In diesem Kurs werden wir TMX-Dateien als ein mögliches Format für Trainingsdaten für ein neuronales maschinelles Übersetzungssystem verwenden. Im einfachsten Fall können die TMX-Dateien direkt für das Training von NMT-Systemen verwendet werden. Während zweisprachige Daten in Organisationen oft im TMX Format vorliegen (als Ergebnis der Verwendung von CAT-Tools bei der Übersetzung), akzeptieren jedoch nicht alle NMT-Systeme TMX-Dateien als Input. Daher werden wir auch die Konvertierung von TMX-Dateien in andere Formate betrachten.

Übung: Exportieren Sie den Inhalt eines beliebigen Translation Memorys (idealerweise mit mehr als 20 Übersetzungseinheiten) aus einem früheren Projekt (egal in welchem CAT-Tool). Legen Sie die Datei im UNIX/Linux Datei System ab.

⚠️ **GitHub.com Fallback** ⚠️