27.10.2014 Aufrufe

Messung maschineller¨Ubersetzbarkeit von ... - Parallele Systeme

Messung maschineller¨Ubersetzbarkeit von ... - Parallele Systeme

Messung maschineller¨Ubersetzbarkeit von ... - Parallele Systeme

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

7. Modellierung <strong>von</strong> MT Analyser<br />

Satz, für den ebenfalls eine Wertung zu erstellen ist. Darüber hinaus besteht jeder Satz<br />

aus einem oder mehreren Teilsätzen, die benötigt werden, um die Textmerkmale darin<br />

zu suchen. Gleichzeitig ist einem Satz eine unbestimmte Anzahl größer oder gleich null<br />

<strong>von</strong> Übersetzungsschwierigkeiten zugeordnet, die sich aus den gefundenen Textmerkmalen<br />

ergeben.<br />

Daraus lassen sich vier Klassen ableiten: Text für den kompletten Text, Sentence für einen<br />

einzelnen Satz aus dem Text, PartialSentence für einen Teilsatz eines Satzes und TranslationDifficulty<br />

für eine Übersetzungsschwierigkeit. Hinzu kommt noch eine fünfte Klasse<br />

namens TextStatistics, die <strong>von</strong> der Klasse Text benutzt wird, um wichtige statistische<br />

Kennzahlen zu speichern.<br />

Zusätzlich müssen auf Basis dieser Datenhaltungsklassen alle wichtigen Berechnungen<br />

zur Bewertung der Übersetzbarkeit durchgeführt werden, wofür sich zwei weitere Klassen<br />

anbieten - je eine zur Berechnung auf Satz- und Textebene. Dies sind SentenceAnalyser zur<br />

Analyse eines einzelnen Satzes und TextAnalyser zur Analyse des gesamten Textes. Das<br />

Zusammenspiel zwischen den Klassen lässt sich dem UML-Klassendiagramm in Abbildung<br />

7.2 entnehmen.<br />

Klasse Text<br />

Die Klasse Text ist die oberste Klasse und kapselt einen kompletten Text. Sie besteht im<br />

wesentlichen aus einem Array mit mindestens einem Satz, gespeichert als Objekte vom<br />

Typ Sentence. Hinzu kommt eine Instanz vom Typ TextStatistics, in der die zum Text<br />

gehörenden Kennzahlen wie die Anzahl der gefundenen Schwierigkeiten hinterlegt sind.<br />

Drei Attribute sind auch direkt in der Klasse zugänglich, unter anderem die wichtigste<br />

Kennzahl, der Übersetzbarkeitsindex des gesamten Textes.<br />

Klasse Sentence<br />

Eine Instanz der Klasse Sentence repräsentiert einen Satz aus einem größeren Text und<br />

speichert über den eigentlichen Text hinaus weitere wichtige Parameter. Insbesondere<br />

gehören zu einem Satz auch die <strong>von</strong> TreeTagger vergebenen Tags und die jeweiligen<br />

Grundformen der Wörter. Sie werden wie auch die einzelnen Wörter in Arrays <strong>von</strong> jeweils<br />

identischer Größe gespeichert. Eine Darstellung des ursprünglichen Satzes als ein String<br />

ist ebenfalls verfügbar. Darüber hinaus sind in jedem Satz auch die einzelnen Teilsätze<br />

sowie die gefundenen Übersetzungsschwierigkeiten gespeichert. Jeder Satz hat mindestens<br />

einen Teilsatz, aber nicht unbedingt eine Übersetzungsschwierigkeit. Der Übersetzbarkeitsindex<br />

des Satzes sowie die Länge in Wörtern mit und ohne Satzzeichen können ebenfalls<br />

abgerufen werden.<br />

Klasse PartialSentence<br />

Die Klasse PartialSentence kapselt einen Teilsatz, der aus einem ganzen Satz extrahiert<br />

wurde. Die zugehörigen Wörter, Tags und Grundformen werden wie in der Klasse Sentence<br />

in gleichgroßen Arrays abgelegt. Ein Objekt der Klasse PartialSentence kann sowohl ein<br />

atomarer Teilsatz als auch ein aus mehreren Teilsätzen zusammengesetztes Aggregat sein.<br />

Der Parameter attached gibt dabei an, ob ein Teilsatz bereits einem anderen angegliedert<br />

wurde. Ist er auf falsch gesetzt, so steht der aktuelle Teilsatz für die Angliederung anderer<br />

Teilsätze bereit. Das Zusammenfügen zweier Teilsätze übernimmt die Methode attach.<br />

78

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!