Překladový systém TectoMT

25
1/25 Překladový systém TectoMT Zdeněk Žabokrtský ÚFAL MFF UK

description

Překladový systém TectoMT. Zden ěk Žabokrtský ÚFAL MFF UK. Osnova. Teoretický úvod systém rovin, motivace pro použití t-roviny, formémy Vývojové prostředí TectoMT design decisions, bloky Anglicko-český překlad implementovaný v TectoMT scénář, ukázka překladu věty krok po kroku - PowerPoint PPT Presentation

Transcript of Překladový systém TectoMT

Page 1: Překladový systém TectoMT

1/25

Překladový systémTectoMT

Zdeněk ŽabokrtskýÚFAL MFF UK

Page 2: Překladový systém TectoMT

2/25

Osnova

Teoretický úvodsystém rovin, motivace pro použití t-roviny, formémy

Vývojové prostředí TectoMTdesign decisions, bloky

Anglicko-český překlad implementovaný v TectoMTscénář, ukázka překladu věty krok po kroku

Závěrečné poznámky

Page 3: Překladový systém TectoMT

3/25

Překladový trojúhelník

Klíčová otázka: jaká úroveň abstrakce je pro úlohu strojového překladu nejvhodnější?

MT triangle:

sourcelanguage

targetlanguage

interlingua

tectogram.

surf.synt.

morpho.

raw text.

level ofabstraction

"transfer distance"

?

Page 4: Překladový systém TectoMT

4/25

Motivace pro použití t-roviny

obecný předpoklad: na t-rovině jsou si jazyky podobnější transfer by měl být snadnější než na povrchu

kde konkrétně může t-rovina přispět k vytvořeních lepších modelů?

přirozená faktorizace transferu1. překlad syntaktizace2. překlad lexikalizace3. překlad (morfologických) gramatémů

možnost využití stromového kontextu (místo lineárního)

ale: náklady na analýzu a syntézu (!)

Page 5: Překladový systém TectoMT

5/25

Zjednodušená t-rovina

cíl: zjednodušit analýzu a především umožnit deterministickou syntézu vět

zachované některé vlastnosti t-roviny (věta ~ závislostní strom, "schovaná" funkční slova, typované uzly...), ale

žádné aktuální členění ("uzlosled" kopíruje původní/cílový slovosled)žádné "kopírované" uzlyžádné odkazy do valenčního slovníkužádné funktory (kromě koordinačních)

u každého komplexního t-uzlu ale navíc formém

Page 6: Překladový systém TectoMT

6/25

Formémy (1)

formém = informace o tom, které morfosyntaktické prostředky byly (budou) užity k vyjádření závislosti daného t-uzlu vůči jeho řídícímu uzlu

několik desítek hodnot, přijatelné hodnoty podmíněné sémantickým slovním druhem t-uzlu

co formém nezachycuje:morfologické kategorie vyplývající ze shodymorfologické kategorie, které už jsou vyjádřeny gramatémem

Page 7: Překladový systém TectoMT

7/25

Formémy (2)

příklady formémů navržených pro češtinu: pro sémantická substantiva

bezpředložkový pád - n:1, n:4, ... předložkový pád - n:z+2, n:o+6, ... přivlastňovací tvar - n:poss

pro sémantická adjektiva atributivní pozice: adj:attr doplňková pozice: adj:comp

pro sémantická slovesa finitní tvar - v:fin f.t. ve v.v. spojkové - v:že+fin, ... f.t. ve v.v. vztažné - v:rc infinitiv - v:inf

formémy pro angličtinu:n:obj1, n:for+X, n:X+ago, v:without+ger, v:to+inf

Page 8: Překladový systém TectoMT

8/25

Vývojové prostředíTectoMT

Page 9: Překladový systém TectoMT

9/25

Cíle

hlavní cílimplementovat překladový systém, pokud možno s maximálním využitím anotačního schématu PDT (roviny lingvistického popisu, technologie atd.)

vedlejší cíleusnadnit život úfalího programátoravytvořit rámec, ve kterém bude možné empiricky ověřit užitečnost softwarových nástrojů z oblasti NLP na aplikaci z reálného životavyužít abstrakční schopnost tektogramatické rovinydodávat data/technologii pro další projektysdílet

Page 10: Překladový systém TectoMT

10/25

"Design decisions"

TectoMT - vývojové prostředí, nikoli aplikace pro koncového uživatele (finální aplikace lze samozřejmě izolovat)

Perl, Linux

technologie z PDT 2.0: tred/btred/ntred, PML

důraz na modularitu - rozklad na velký počet podúloh

snadná znovupoužitelnost modulů

snadná nahraditelnost modulů

užití lingvisticky interpretovatelných rovin popisu jazyka

žádná omezení ohledně metod řešení (statistika/pravidla)

komunikace mezi jednotlivými moduly -jednotné objektově orientované API (nikoli přes souborové formáty!)

žádná podpora pro backtracking, žádná podpora pro reranking

Page 11: Překladový systém TectoMT

11/25

Základní pojmy

hierarchie jednotek datové reprezentace dokument (~ 1 soubor v pml) svazek stromů (bundle) strom uzel atribut

hierarchie pracovních jednotek blok scénář - posloupnost bloků aplikace - typické schéma:

1. konverze ze vstupního formátu 2. spuštění scénáře3. konverze do výstupního formátu

sourcelanguage

targetlanguage

MT triangle:interlingua

tectogram.

surf.synt.

morpho.

raw text.

Page 12: Překladový systém TectoMT

12/25

Blokymoduly v Perlumalé, samostatně dobře vymezitelné úkolyrůzné funkce:

bloky pro analýzu/transfer/syntézu, např. SEnglishW_to_SEnglishM::Lemmatize_mtree SEnglishP_to_SEnglishA::Mark_heads TCzechT_to_TCzechA::Vocalize_prepositions

bloky pro alignment, bloky pro evaluaci ...

různé přístupy:implementace "ostrých" lingvistických pravidelempiricky podložené heuristikysystémy s komplexními pravděpodobnostními modely

mnoho bloků jsou jen "wrappery" ke dříve existujícím nástrojům (Collinsův parser, McDonnaldův parser, Brantsův TnT tagger, Hajičova morfologie ...)

Page 13: Překladový systém TectoMT

13/25

Co je v TectoMT kromě bloků

pml-specifikace formátu tmtprimární souborový formát používaný v TectoMTaplikace PML, zahrnující mj. aplikace PML pro roviny z PDT 2.0

core - OO rozhraní pro práci s tmt soubory (Perl)makra pro podporu vizualizace tmt v TrEdu

všechny stromu bundlu na jedné obrazovce

datanatrénované modelykonvertory formátůautomatické testy...

Page 14: Překladový systém TectoMT

14/25

Anglicko-český překlad implementovaný v

TectoMT

Page 15: Překladový systém TectoMT

15/25

Scénář č.-a. překladuposloupnost cca 80 bloků

EnglishW EnglishM- bloky pro segmentaci, tokenizaci, tagging, lemmatizaci

EnglishM EnglishP- složkový parsing

EnglishP EnglishA- označení hlav, vyrobení a-stromu, nejnutnější afuny

EnglishA EnglishT- spojení funkčních a autosém. a-uzlů do t-uzlu, gramatémy, koreference ...

EnglishT CzechT- klon t-stromu, překlad formémů, lexémů a gramatémů

CzechT CzechA- shoda, přidání a-uzlů pro funkční slova, generování tagů, volba formy

CzechA CzechW- spojení tokenů do věty, spojení vět do textu

Page 16: Překladový systém TectoMT

16/25

Demo - překlad krok po kroku

Page 17: Překladový systém TectoMT

17/25

Faktorizace transferu

3 kanály1. transfer formémů

volba syntaktizace v cílovém jazycena základě překladového slovníku formémů

2. transfer lexémůvolba lexikalizace v cílovém jazycena základě překladového slovníku t-lemmatlexém a formém musí být kompatibilní

3. transfer gramatémůvětšinou triviální

Page 18: Překladový systém TectoMT

18/25

Překladový slovník formémů

P(Ft|Fs)

natrénováno z 5000 paralelních t-stromůjednoduchý algoritmus párování paralelních t-stromů po uzlech

postupné přidávání párů uzlů, výběr na základě skórovací funkces(na,nč) = w.f(na,nč) , ručně navržené rysy, váhy trénované perceptronem

příklady P(Ft|Fs)

adj:attr adj:attr 0.9514adj:attr n:2 0.0138 n:of+X n:2 0.7719n:of+X adj:attr 0.0477n:of+X n:z+2 0.0402v:to+inf v:inf 0.4817v:to+inf v:aby+fin 0.0950v:to+inf n:k+3 0.0702

Page 19: Překladový systém TectoMT

19/25

Překladový slovník lexémů

pravděpodobnostní slovník - P(Lt|Ls)

cca 370.000 překladových párůkombinace slovníku z PCEDT a slovníku extrahovaného z paralelního korpusu Czengrozšířeno pomocí pravidel pro slovotvorné derivacepravděpodobnosti vyhlazené četnostmi v ČNKvzorek:

buy#N odkup#N 0.350477

buy#N koupěN 0.196962

buy#N kup#N 0.092403

buy#V koupit#V 0.412127

buy#V kupovat#V 0.169639

buy#V nakupovat#V 0.108744

buy#V nakoupit#V 0.075064

Page 20: Překladový systém TectoMT

20/25

Vyhodnocení kvality překladu

WMT'08 Shared Task (soutěž ve strojovém překladu)směry: z francouzštiny, němčiny, češtiny, španělštiny do angličtiny a/nebo zpět, plus z angličtiny do maďarštinyRuční evaluace kvality automatických překladů (dobrovolníci)

Page 21: Překladový systém TectoMT

21/25

Závěrečné poznámky

Page 22: Překladový systém TectoMT

22/25

Vývoj TectoMT v číslech

doba vývoje: cca 30 měsíců

aktivně přispívajících programátorů: 6

velikost kódu: cca 25.000 Perl LOCs

počet bloků: cca 200

dynamika: v repozitáři svn 560 revizí za

posledních 6 měsíců

Page 23: Překladový systém TectoMT

23/25

Další aplikace TectoMT

dosud: příprava dat pro tektogramatickou anotaci angličtiny na požádání jednorázová zpracování dodaných dat (např. data pro analýzu dialogu, rekonstrukci řeči, zkoumání vztahu syntaxe a prozodie)

brzy: generátor anglických vět uvnitř dialogovém systému (projekt Companions) interaktivní t-analýza v TrEdu

Page 24: Překladový systém TectoMT

24/25

Plány do budoucna

nejbližší budoucno:vylepšování stávajících bloků na základě analýzy chybhledání a zapojování lepších alternativ (Morče místo TnT, McDonald místo Collinse...)

vzdálenější budoucno:v transferu: HMM upravený pro stromy, s perceptronem trénovanou kombinací překladového a jazykového modelu

Page 25: Překladový systém TectoMT

25/25

Závěr

Technických cílu bylo dosaženo: TectoMT je funkční, modulární, umožňuje rychlý a pohodlný vývoj dalších komponent pro NLP i relativně snadnou integraci většiny už existujících. Ověřeno na prototypu překladového systému.

"State-of-the-art" v MT se nepodařilo překonat. Otázka praktického přínosu/vhodnosti t-roviny pro strojový překlad zůstává otevřená.