User Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
public:users:graen:multilingwis [2015-11-12 13:39] – Page moved from users:graen:multilingwis to public:users:graen:multilingwis Johannes Graënpublic:users:graen:multilingwis [2023-09-15 20:33] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +~~REVEAL white~~
  
 +{{background>:public:bg3.jpg}}
 +====== multilingwis ======
 +Johannes Graën\\
 +2015-11-10
 +
 +
 +{{background>:public:bg3.jpg}}
 +==== Übersicht ====
 +  - Konzept
 +  - Demo der Anwendung
 +  - Datenaufbereitung
 +  - Datenbankvorbereitung
 +  - Suche
 +  - Ausblick
 +
 +
 +
 +{{background>:public:bg16.jpg}}
 +===== Konzept =====
 +
 +==== Funktionsbeschreibung ====
 +  * Suche in multiparallelem Korpus
 +    * nach Übersetzungen von Mehrworteinheiten (//translation spotting//)
 +    * mittels Webanwendung
 +      * ohne besondere Kenntnisse vorauszusetzen
 +    * basierend auf Inhaltswörtern
 +      * Funktionswörter werden bei der Suche übersprungen (//proximity search//)
 +    * mit Anzeige der Häufigkeiten der einzelnen Übersetzungskandidaten
 +      * und (guten) Exemplaren für jeden einzelnen
 +
 +
 +==== vergleichbare Anwendungen ====
 +  * Online-Wörterbuch mit Beispielen
 +  * Übersetzungssuche
 +  * Linguistische Korpusanfrage
 +  * allgemeine Konkordanzsuche
 +  * Beispiele
 +    * [[http://www.linguee.com/|Linguee]]
 +    * [[http://www.tradooit.com/|Tradooit]]
 +    * [[http://glosbe.com/|Glosbe]]
 +    * [[http://www.tradooit.com/|TAUS Data]]
 +    * [[http://bwananet.iula.upf.edu/indexen.htm|Bwananet]]
 +    * [[http://pub.cl.uzh.ch/purl/bilingwis/|bilingwis]]
 +
 +
 +
 +{{background>:public:bg2.jpg}}
 +===== Demo =====
 +=> [[http://pub.cl.uzh.ch/purl/multilingwis]] <=
 +
 +
 +
 +{{background>:public:bg8.jpg}}
 +===== Datenaufbereitung =====
 +
 +==== 1. Schritt ====
 +  * Extraktion der Texte aus ''[[http://pub.cl.uzh.ch/purl/costep|CoStEP]]''
 +    * alle diejenigen Sprecherbeiträge, die in allen fünf Sprachen vorliegen
 +      * ≈ 150k Beiträge in je fünf Sprachen
 +      * ≈ 220m Tokens
 +
 +==== 2. Schritt ====
 +  * Annotationen
 +    * ''TreeTagger'' für Tokenisierung, PoS-Tagging und Lemmatisierung
 +      * mit [[https://pub.cl.uzh.ch:11443/sparcling/costep_xml_to_db_pipeline/tree/master/2_tokenize_tag|Anpassungen]] der Tokenisierungsregeln, Abkürzungslisten, Lexika, ...
 +    * Abbildung aller Tags der fünf verschiedenen Tagsets auf universelle PoS-Tags (12 UPOS-Tags)
 +    * Regelbasierte Satzsegmentierung mithilfe der Wortformen und Tags
 +
 +==== 3. Schritt ====
 +  * Alignierung
 +    * paarweise Satzalignierung mit ''hunalign''
 +      * Lemmata statt Wortformen als Eingabe
 +    * paarweise Wortalignierung mit ''Giza++''
 +      * nur Inhaltswörter als Eingabe statt ganzer Sätze
 +        * Inhaltswörter hier Nomen, Verben, Adjektive und Adverbien (gemäß UPOS-Tags)
 +
 +
 +{{background>:public:bg17.jpg}}
 +===== Datenbankvorbereitung =====
 +
 +==== Indizierung ====
 +  * symmetrisierte Wortalignierung als materialisierte Sicht (420m)
 +    * darauf zweistufiger Index (B-Baum) über Quell- und Zieltoken (9 GB)
 +  * Lemmata mit relevanten Fremdschlüsselwerten als materialisierte Sicht
 +    * Indizes auf Lemmata (5 GB) und Schlüsseln (mehrstufig, 5 GB)
 +
 +
 +==== Suchfunktion - Definition ====
 +  * per Skript generierte Suchfunktionen in Datenbank
 +    * je eine pro Anzahl Suchterme (Funktion überladen)
 +    * erlaubt Offline-Generierung des Queryplans
 +
 +
 +==== Suchfunktion - Ablauf ====
 +  - auf Suchterme passende Token finden (//hits//)
 +    * **1. Kriterium:** gleiches Satzsegment
 +    * **2. Kriterium:** nachfolgendes Token je ein bis vier Positionen nach vorangehendem
 +    * **3. Kriterium:** zwischen je zwei Token befinden sich keine weiteren mit Inhaltsworttags
 +  - Schnitt der Treffer mit symmetrisierten Wortalignierungen, anschließendes Ergänzen der dazugehörigen Lemmata
 +  - Clustern der Daten nach Lemmasequenzen der alignierten Token & Zählen der Vorkommen
 +
 +
 +
 +{{background>:public:bg9.jpg}}
 +===== Suche =====
 +
 +
 +==== Ablauf (1) ====
 +  - der Benutzer gibt im Webfrontend einen (beliebigen) Suchausdruck ein
 +  - die jeweiligen Suchterme werden lemmatisiert und nach Inhalts-/Funktionswort klassifiziert
 +  - der Datenbank-Suchfunktion wird eine Liste der identifizierten Inhaltswörter übergeben
 +  - pro Sprache wird eine nach Häufigkeit sortierte Liste korrespondierender Lemmasequenzen angezeigt
 +  - das global beste Exemplar wird eingeblendet
 +
 +
 +==== Ablauf (2) ====
 +{{ :public:users:graen:ml_ablauf.png }}
 +
 +
 +==== Ablauf (3) ====
 +  * nach erfolgter Suche kann der Benutzer
 +    * eine weitere Suche mit neuen Suchausdruck starten
 +    * die Menge der Exemplare durch Auswahl einer oder mehrerer Lemmasequenzen einschränken
 +    * in den Exemplaren blättern
 +    * nach den gelisteten Lemmasequenzen in der jeweiligen Sprache suchen
 +
 +
 +==== explorative Suche ====
 +{{ :public:users:graen:stern.png }}
 +
 +
 +
 +{{background>:public:bg23.jpg}}
 +===== Ausblick =====
 +
 +==== Probleme ====
 +  * teilweise schlechte Wortalignierung
 +  * bei sehr vielen Treffern und Alignierungen keine Ergebnisse (Speicherlimit)
 +  * Sortierheuristik bevorzugt manchmal eher fragwürdige Exemplar
 +
 +
 +==== Verbesserungsmöglichkeiten ====
 +  * andere Alignierungsmodelle
 +  * Herausfiltern unwahrscheinlicher Alignierungen
 +  * Harmonisieren der geschlechtsspezifischen Lemmata im Deutschen
 +  * Ziffern in Lemmata durch Platzhalter ersetzen
 +  * Limitierung der Suchergebnisse durch randomisierten Index und Filtern
 +  * alternative Lemmata desambiguieren
 +
 +
 +==== Erweiterungen ====
 +  * Datenexport der Treffer (bzw. einer Auswahl davon)
 +  * Suche nach Wortformen und/oder PoS-Tags
 +  * Kontextanzeige für das jeweilige Exemplar 
 +  * Verblemmata im Deutschen um etwaige Verbpräfixe ergänzen
 +
 +
 +
 +
 +{{background>:public:users:graen:ml_fragen.png}}
 +===== ======

CL Wiki

Institute of Computational Linguistics – University of Zurich