20.03.2014 Aufrufe

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

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.

5.4 Sprachverarbeitung und Parsen <strong>in</strong> Prolog<br />

Die Übersetzung <strong>in</strong> re<strong>in</strong>es Prolog ist gerade<br />

s(E<strong>in</strong>,Rest) :- aa(X,E<strong>in</strong>,Rest1),bb(X,Rest1,Rest2),cc(X,Rest2,Rest3),dd(X,Rest3,Rest).<br />

aa(0,E<strong>in</strong>,Rest) :- term<strong>in</strong>al([a],E<strong>in</strong>,Rest).<br />

aa(succ(X),E<strong>in</strong>,Rest) :- term<strong>in</strong>al([a],E<strong>in</strong>,Rest1), aa(X,Rest1,Rest).<br />

bb(0,E<strong>in</strong>,Rest) :- term<strong>in</strong>al([b],E<strong>in</strong>,Rest).<br />

bb(succ(X),E<strong>in</strong>,Rest) :- term<strong>in</strong>al([b],E<strong>in</strong>,Rest1), bb(X,Rest1,Rest).<br />

cc(0,E<strong>in</strong>,Rest) :- term<strong>in</strong>al([c],E<strong>in</strong>,Rest).<br />

cc(succ(X),E<strong>in</strong>,Rest) :- term<strong>in</strong>al([c],E<strong>in</strong>,Rest1), cc(X,Rest1,Rest).<br />

dd(0,E<strong>in</strong>,Rest) :- term<strong>in</strong>al([d],E<strong>in</strong>,Rest).<br />

dd(succ(X),E<strong>in</strong>,Rest) :- term<strong>in</strong>al([d],E<strong>in</strong>,Rest1), dd(X,Rest1,Rest).<br />

o<strong>der</strong> ohne Verwendung von term<strong>in</strong>al:<br />

s(E<strong>in</strong>,Rest) :- aa(X,E<strong>in</strong>,Rest1),bb(X,Rest1,Rest2),cc(X,Rest2,Rest3),dd(X,Rest3,Rest).<br />

aa(0,[a|E<strong>in</strong>],E<strong>in</strong>).<br />

aa(succ(X),[a|E<strong>in</strong>],Rest) :- aa(X,E<strong>in</strong>,Rest).<br />

bb(0,[b|E<strong>in</strong>],E<strong>in</strong>).<br />

bb(succ(X),[b|E<strong>in</strong>],Rest) :- bb(X,E<strong>in</strong>,Rest).<br />

cc(0,[c|E<strong>in</strong>],E<strong>in</strong>).<br />

cc(succ(X),[c|E<strong>in</strong>],Rest) :- cc(X,E<strong>in</strong>,Rest).<br />

dd(0,[d|E<strong>in</strong>],E<strong>in</strong>).<br />

dd(succ(X),[d|E<strong>in</strong>],Rest) :- dd(X,E<strong>in</strong>,Rest).<br />

Die zusätzlich erlaubten Parameter <strong>in</strong>nerhalb <strong>der</strong> DCGs s<strong>in</strong>d <strong>in</strong>sbeson<strong>der</strong>e für <strong>die</strong> Verarbeitung<br />

natürlicher Sprache nützlich, da sie bestimmte Attribute <strong>der</strong> Term<strong>in</strong>ale testen<br />

können, <strong>die</strong> bei bestimmten Satzglie<strong>der</strong>n übere<strong>in</strong>stimmen müssen, z.B. Geschlecht, Fall,<br />

Zeit, usw. und <strong>die</strong> Akzeptanz e<strong>in</strong>er Phrase steuern können.<br />

Deutsch (Late<strong>in</strong> auch) z.B. bauen auf Wortendungen zum Anzeigen <strong>der</strong> Fälle, S<strong>in</strong>gluar/Plural<br />

Geschlecht an und erlauben somit auch e<strong>in</strong>e freiere Wahl <strong>der</strong> Satzstellung. Als<br />

Beispielsprache ist Englisch e<strong>in</strong>facher, da es fast ke<strong>in</strong>e Wortendungen gibt, und <strong>die</strong> Reihenfolge<br />

<strong>der</strong> Worte e<strong>in</strong>es Satzes fast nicht umstellbar ist.<br />

5.4.1 Kontextfreie Grammatiken für Englisch<br />

E<strong>in</strong>e Tabelle <strong>der</strong> syntaktischen Kategorien ist:<br />

M. Schmidt-Schauß & D. Sabel, Skript KI, WS 2012/13 185 Stand: 7. Januar 2013

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!