Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Maschinelle Übersetzung I

Ähnliche Präsentationen


Präsentation zum Thema: "Maschinelle Übersetzung I"—  Präsentation transkript:

1 Maschinelle Übersetzung I
Prolog Grundkurs WS 99/00 Christof Rumpf

2 Übersetzung von Sprachen
Formale Sprachen Compilerbau Prolog  C C  Assembler Natürliche Sprachen Maschinelle Übersetzung (MachineTranslation) Deutsch  Japanisch Deutsch  Englisch Niveaudifferenz! Niveaudifferenz??? (Japanisch  Englisch)? GK Prolog - Maschinelle Übersetzung I

3 DeutschEnglisch direkt
„Paul klaut Bananen“ soll via DCG übersetzt werden in/zurück „Paul steals bananas“ GK Prolog - Maschinelle Übersetzung I

4 GK Prolog - Maschinelle Übersetzung I
DCG1 DeutschEnglisch %Syntax s( A,C) --> np(A,B), vp(B,C). vp(A,C) --> v(A,B), np(B,C). % Lexicon v( [steals |T],T) --> [klaut]. np([paul |T],T) --> [paul]. np([bananas|T],T) --> [bananen]. GK Prolog - Maschinelle Übersetzung I

5 DCG1: Paare von Differenzlisten
%Syntax s( A1,C1,A2,C2):- np(A1,B1,A2,B2), vp(B1,C1,B2,C2). vp(A1,C1,A2,C2):- v(A1,B1,A2,B2), np(B1,C1,B2,C2). % Lexicon v( [steals |T1],T1, [klaut |T2],T2). np([paul |T1],T1, [paul |T2],T2). np([bananas|T1],T1, [bananen|T2],T2). GK Prolog - Maschinelle Übersetzung I

6 GK Prolog - Maschinelle Übersetzung I
Anfragen an DCG1 ?- s([paul,steals,bananas],[],S,[]). S = [paul,klaut,bananen], yes ?- s(S,[],[paul,klaut,bananen],[]). S = [paul,steals,bananas], yes ?- s(E,[],D,[]). D = [paul,steals,paul] E = [paul,klaut,paul] ->; ... 4 Lösungen GK Prolog - Maschinelle Übersetzung I

7 GK Prolog - Maschinelle Übersetzung I
Bewertung von DCG1 DCG1 funktioniert für das gegebene Grammatik-fragment wunderbar. Allerdings ist dies ein reiner Zufall, da die Syntax der beiden Sprachen im Fragment übereinstimmt. Sobald eine solche Übereinstimmung der syntaktischen Struktur nicht gegeben ist, ist das Übersetzungsmodell nicht mehr verwendbar. GK Prolog - Maschinelle Übersetzung I

8 SubjektVerbObjekt vs. SubjektObjektVerb
NP VP paul V NP klaut bananen S NP VP paulga NP V bananao nusumu Deutsch Japanisch GK Prolog - Maschinelle Übersetzung I

9 Nebensatz Deutsch/Englisch
Rel NP VP daß Paul NP V Bananen klaut S‘ Rel NP VP that Paul V NP steals bananas SOV SVO GK Prolog - Maschinelle Übersetzung I

10 DCG2 DeutschJapanisch
%Syntax s( A,C) --> np(A,B), vp(B,C). vp(A,C) --> v(B,C), np(A,B). % Lexicon v( [nusumu |T],T) --> [klaut]. np([paulga |T],T) --> [paul]. np([bananao|T],T) --> [bananen]. GK Prolog - Maschinelle Übersetzung I

11 Bewertung von DCG2 Das Vertauschen der ‚japanischen‘ Differenzlisten von V und NP in der VP-Expansion führt offensichtlich zur korrekten Korrespondez der Sätze Paul klaut Bananen  Paulga bananao nusumu Unschönerweise wird das japanische Verb innerhalb der deutschen NP verarbeitet und die japanische NP innerhalb des deutschen Verbs. Darüberhinaus wachsen die Probleme mit komplexeren Differenzen in der syntaktischen Struktur. GK Prolog - Maschinelle Übersetzung I

12 Resümee direkte Übersetzung
Nicht nur aufgrund syntaktischer Differenzen scheint die direkte Übersetzung zwischen natürlichen Sprachen inadequat. Auch auf lexikalischer Ebene ergeben sich Probleme aufgrund unterschiedlicher Wort-bedeutungen, oder weil es in der Zielsprache kein entsprechendes Wort gibt, so daß eine Paraphrasierung notwendig wird. GK Prolog - Maschinelle Übersetzung I

13 GK Prolog - Maschinelle Übersetzung I
Interlingua Das ideale Modell zur Übersetzung natürlicher Sprachen verwendet eine Interlingua, die alle Differenzen zwischen Einzelsprachen überbrückt und gleichzeitig die Fähigkeit besitzt, beliebige expressive Nuancen jeder Einzelsprache zu modellieren. NLi  Interlingua  NLj GK Prolog - Maschinelle Übersetzung I

14 GK Prolog - Maschinelle Übersetzung I
PL1 als Interlingua Es scheint plausibel, als Interlingua eine Sprache zu wählen, die die Bedeutung eines natürlichsprachlichen Ausdrucks repräsentiert. Die Prädikatenlogik 1. Stufe kann in einem gewissen Umfang die Bedeutung natürlichsprachlicher Ausdrücke widerspiegeln*. *Statt PL1 üblich: Typenlogik mit -Abstraktion. GK Prolog - Maschinelle Übersetzung I

15 Every man loves a woman. Der englische Satz Every man loves a woman.
soll als PL1-Ausdruck repräsentiert werden: x man(x)  y (woman(y)  loves(x,y)) Skopusambiguität: die Lesart y x man(x)  (woman(y)  loves(x,y)) soll hier nicht weiter berücksichtigt werden. GK Prolog - Maschinelle Übersetzung I

16 Notation für PL1 in Prolog
Wenn wir PL1-Ausdrücke in Prolog repräsentieren wollen, brauchen wir eine Notation dafür. x man(x)  y (woman(y)  loves(x,y)) all(X,man(X) -> exists(Y,woman(Y) + loves(X,Y))) GK Prolog - Maschinelle Übersetzung I

17 GK Prolog - Maschinelle Übersetzung I
Baumtransformation S NP VP Det N V NP every man loves Det N a woman all X -> man exists X Y + woman loves Y X Y GK Prolog - Maschinelle Übersetzung I

18 Typologie der Quantoren
Allaussagen: all(X, P -> Q) Existenzaussagen: exists(X, P + Q) Every man loves a woman. x man(x)  y (woman(y)  loves(x,y)) all(X,man(X) -> exists(Y,woman(Y) + loves(X,Y))) A man loves every woman. x man(x)  y (woman(y)  loves(x,y)) exists(X,man(X) + all(Y,woman(Y) -> loves(X,Y))) GK Prolog - Maschinelle Übersetzung I

19 Baumtransformation konkret
NP VP Det N V NP every man loves Det N all(X,N->VP) man(X) loves(X,Y) a woman exists(Y,N+V) woman(Y) GK Prolog - Maschinelle Übersetzung I

20 Baumtransformation konkreter
NP VP Det N V NP every man loves Det N all(X,N->VP) man(X) loves(X,Y) a woman exists(Y,N+V) woman(Y) GK Prolog - Maschinelle Übersetzung I

21 GK Prolog - Maschinelle Übersetzung I
Ein Prolog-Fragment s(P) > np(X,Q,P), vp(X,Q). vp(X,P) --> tv(X,Y,Q), np(Y,Q,P). np(X,Q,P)--> det(X,R,Q,P), n(X,R). tv(X,Y,loves(X,Y)) > [loves]. det(X,R,Q,all(X,R->Q)) --> [every]. det(X,R,Q,exists(X,Q+R))--> [a]. n(X,man(X)) > [man]. n(X,woman(X)) > [woman]. GK Prolog - Maschinelle Übersetzung I

22 GK Prolog - Maschinelle Übersetzung I
Überblick s(S) np(Subj,VP,S) vp(Subj,VP) det(Subj,NSubj,VP,S) n(Subj,NSubj) tv(Subj,Obj,V) np(Obj,V,VP) det(X,R,Q,exists(Q+R)) n(X,man(X)) tv(X,Y,loves(X,Y)) det(X,R,Q,all(R->Q)) n(X,woman(X)) det(Obj,NObj,V,VP) n(Obj,NObj) det(X,R,Q,exists(Q+R)) n(X,man(X)) det(X,R,Q,all(R->Q)) n(X,woman(X)) GK Prolog - Maschinelle Übersetzung I


Herunterladen ppt "Maschinelle Übersetzung I"

Ähnliche Präsentationen


Google-Anzeigen