1 / 21

Natuurlijke-Taalinterfaces

Natuurlijke-Taalinterfaces. week 3 1 . evaluatie van een formule in een model 2 . vraag-antwoord dialogen 3 . Modellen en applicaties. Een eenvoudig vraag-antwoord systeem. Vraag  logische formule Applicatie (database/kennissysteem): (Vertaalbaar naar)

kimi
Download Presentation

Natuurlijke-Taalinterfaces

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Natuurlijke-Taalinterfaces week 3 1. evaluatie van een formule in een model 2. vraag-antwoord dialogen 3. Modellen en applicaties

  2. Een eenvoudig vraag-antwoord systeem • Vraag  logische formule • Applicatie (database/kennissysteem): • (Vertaalbaar naar) • Een Model met objecten en relaties • Antwoord (Ja/nee vraag): • logische formule in waar (ja) / onwaar (nee) in het Model • Antwoord (WH-vraag): • alle objecten die de formule waar maken in het Model Natuurlijke-Taalinterfaces

  3. Betekenis van Logische Formules • (Blackburn & Bos, hst 1) • De formule • lopen(ruud)  zingen(ruud) • is waar in eenmodelMd.e.s.d.a. • lopen(ruud) waar is in Men • zingen(ruud) waar is in M. Natuurlijke-Taalinterfaces

  4. Wat is een (eerste-orde) Model? • Een domein (verzameling objecten), en • een interpretatiefunctie F, • die voor ieder element van het vocabulaire • de semantische waarde (een object of een verzameling objecten, of een verz. van tuples van objecten) geeft. • F(ruud) = r, F(mona) = m, F(lopen) = {r, m, s} F(nomineren) = {<r,m>, <m,s>, <w,r>} Natuurlijke-Taalinterfaces

  5. A  B A  B ~ A A  B A waar is en B waar is A waar is of B waar is A niet waar is A niet waar is of B waar is Betekenis van connectieven De formule is waar d.e.s.d.a. Natuurlijke-Taalinterfaces

  6. Betekenis van atomaire formules • pred(a1,….an) is waar d.e.s.d.a • F(a1) = o1, …. F(an) = on, • en <o1,….on>  F(pred) • Nomineer(bart,ruud) is waar d.e.s.d.a <b,r> nom Natuurlijke-Taalinterfaces

  7.  x F  x F Er een interpretatie is van x die F waar maakt. Iedere interpretatie van x F waar maakt Betekenis van kwantoren De formule is waar d.e.s.d.a. Natuurlijke-Taalinterfaces

  8. Modellen in Prolog • F(bart) = b, F(willem) = w,… • Prolog: • constant(bart). • constant(willem). • …. Natuurlijke-Taalinterfaces

  9. Modellen in Prolog • F(slapen) = { bart, willem, ruud} • F(nomineren) = {<bart,willem>} • F(helpen) =  • Prolog: • [ slapen(bart), slapen(willem), slapen(ruud), nomineren(bart,willem) ] Natuurlijke-Taalinterfaces

  10. Modellen in Prolog • Prolog: • [ slapen(bart), slapen(willem), slapen(ruud), nomineren(bart,willem) ] • Een model is een lijst Prolog-relaties, (ground terms), • !!! Negatieve informatie ontbreekt. Natuurlijke-Taalinterfaces

  11. Waar in een model,Satisfaction % satisfy(Formula, Model) • satisfy(For,Model) :- atomic_formula(For), member(For,Model). • satisfy(A & B, Model) :- satisfy(A, Model), satisfy(B, Model). • satisfy(A v B, Model) :- satisfy(A, Model) ; satisfy(B, Model). Natuurlijke-Taalinterfaces

  12. Waar in een model,Satisfaction % \+ is Prolog voor `not’ • satisfy(~ A, Model) :- \+ satisfy(A, Model). • satisfy(A > B, Model) :- \+ satisfy(A, Model) ; satisfy(B, Model). Natuurlijke-Taalinterfaces

  13. Waar in een model,Satisfaction % satisfy(Formula, Model) • satisfy(exists(X, Form), Model) :- constant(X), satisfy(Form, Model). • satisfy(forall(X, Form), Model) :- satisfy(~ exists(X, ~ Form), Model). Natuurlijke-Taalinterfaces

  14. Testen of een formule een sentence is • Wanneer we een formule testen voor satisfactie in een model, gaan we ervan uit dat het een sentence is, d.w.z. • alle constanten en relaties zijn gedefinieerd, • de zin is syntactisch correct, en • er zijn geen vrije variabelen. Natuurlijke-Taalinterfaces

  15. Ja/Nee vragen • slaapt ruud? • parser : vr(slapen(R)) • janee(Formula) :- sentence([],Formula), model(Model), ( satisfy(Formula,Model) -> zegja ; zegnee ). Natuurlijke-Taalinterfaces

  16. Semantiek van wh-vragen • Wie slaapt? • Semantiek? • parser: wh(X,slapen(X)) • whvraag(X,Formula) :- sentence([X],Formula), model(M), findall(X,satisfy(Form,M),Xs), zeg(Xs). Natuurlijke-Taalinterfaces

  17. Modellen • lijst van (ground) relaties • kunnen we definieren m.b.v. een programma • maakt definitie van modellen eenvoudiger, • interface naar een db • betekenispostulaten Natuurlijke-Taalinterfaces

  18. Modellen als programma’s • example(mymodel, Facts) :- findall(F,fact(F),Facts). • fact(aandeel(X)) :- fonds(X,_). • fact(bedrijf(X)) :- fonds(X,_). • fact(belegger(X)) :- speler(X,_,_). • fact(rijk(X)) :- rekening(X,Saldo), Saldo > 1000. Natuurlijke-Taalinterfaces

  19. fact(koers(Fonds,Koers)) :- haal_koersen_van_tt, aex(Fonds,_,Koers). haal_koersen_van_tt :- retractall(aex(_,_,_)), process_tt_aex(“www.omroep.nl/…..”). Interface naar een db Natuurlijke-Taalinterfaces

  20. Wie een man/vrouw is, is een mens. Wie een moeder is, is een vrouw. Wie een appel eet, eet. fact(mens(X)) :- fact(vrouw(X)). fact(vrouw(X)) :- moeder(X). fact(eet(X)) :- eet(X,_). Betekenispostulaten Natuurlijke-Taalinterfaces

  21. Wat/wie bezit ieder mens? Wie/wat bezit een auto? wh(y, forall(x,auto(x) > bezit(x,y)) wh(y, forall(x,auto(x) > bezit(y,x)) Oplossing: verschil wie/wat maken voor relaties vastleggen wat voor soort argumenten ze verwachten….(het subject c.q. object van bezit is een mens c.q. niet een mens) Ambiguiteit….. Natuurlijke-Taalinterfaces

More Related