inteligenta artificiala
DESCRIPTION
Inteligenta Artificiala. Universitatea Politehnica Bucuresti Anul universitar 2006-2007 Adina Magda Florea http://turing.cs.pub.ro/ia_07. Curs nr. 13. Prelucrarea limbajului natural. 2. Comunicare. - PowerPoint PPT PresentationTRANSCRIPT
1
Inteligenta ArtificialaInteligenta Artificiala
Universitatea Politehnica BucurestiAnul universitar 2006-2007
Adina Magda Floreahttp://turing.cs.pub.ro/ia_07
2
Curs nr. 13
Prelucrarea limbajului natural
2
3
ComunicareComunicare Definitie: schimbul intentional de informatie generat
de producerea si perceperea semnelor dintr-un sistem partajat de semne conventionale
Componentele comunicarii– intentie– generare– sinteza
– perceptie– analiza– desambiguare– incorporare
4
Acte de comunicareActe de comunicare Teoria actelor de comunicare locutie ilocutie prelocutie
– asertive– directive– comisive– permisive– prohibitive– declarative– expresive
Tipuri de agenti care comunica
5
Definire limbajDefinire limbaj Lexicon Analiza lexicala Gramatici Analiza (pars oratoris) Terminale, neterminale, reguli de rescriere simbol de inceput LHS RHS
Analza semantica Analiza pragmatica
6
Lexicon
Noun breeze | wumpus | ballVerb is | see | smell | hitAdjective right | left | smelly …Adverb here | there | ahead …Pronoun me | you | I | itRelPronoun that | whoName John | Mary Article the | a | an Preposition to | in | on Conjunction and | or | but
7
GramaticaGramatica
Neterminale – diferite categorii din propozitie– sentence S– noun phrase NP– verb phrase VP– prepositional phrase PP– relative clause RelClause
8
Exemplu
S NP VP | S Conjunction SNP Pronoun | Noun | Article Noun |
NP PP | NP RelClauseVP Verb | VP NP | VP Adjective |
VP PP | VP AdverbPP Preposition NPRelClause RelPronoun VP
9
Analiza sintacticaAnaliza sintactica
– top-down parsing– bottom-up parsing
– in adancime– pe nivel
10
Top-Down Parsing
"John hit the ball" 1. S 2. S NP, VP 3. S Noun, VP 4. S John, Verb, NP 5. S John, hit, NP 6. S John, hit, Article, Noun 7. S John, hit, the, Noun 8. S John, hit, the, ball
11
Bottom-Up Parsing
1. John, hit, the, ball 2. Noun, hit, the, ball 3. Noun, Verb, the, ball 4. Noun, Verb, Article, ball 5. Noun, Verb, Article, Noun 6. NP, Verb, Article, Noun 7. NP, Verb, NP 8. NP, VP 9. S
12
Definite Clause Grammar (DCG)Definite Clause Grammar (DCG)
Gramatici BNF - probleme Utilizare LP Gramatici cu clauze definite DCG – gramatica; propozitie = clauza
definita neterminal = predicat de 1 argument parsing = inferenta logica
13
In BNF S NP VP
In LPNP(s1) VP(s2) S(Append(s1, s2))
BNFNoun ball | book
In LP(s = “ball” s = “book”) Noun(s)
BNF, DCG, PrologBNF, DCG, PrologBNF FOPL PROLOG
S NP VPNP NounNoun stenchNoun wumpusVP VerbVerb smellsVerb kills
NP(s1) VP(s2) S(append(s1,s2))Noun(s) NP(s)Verb(s) VP(s)(s = “stench” s = “wumpus”) Noun(s)(v = “smells” v = “kills”) Verb(v)
sentence([S1, S2]) :- np(S1), vp(S2).np(S):- noun(S).vp(S):- verb(S).noun(stench).noun(wumpus).verb(smells).verb(kills).?- sentence([wumpus, smells]).?-sentence([S1, S2]).
15
Imbogatire DCGImbogatire DCG
Imbogatesc neterminale cu argumente suplimentare
Verifica corectitudinea gramaticala Ataseseaza semantica Adauga expresii / functii care se
testeaza
16
Argument pt semanticaArgument pt semantica
DCG FOPL PROLOG
S(sem) NP(sem1) VP(sem2) {compose(sem1, sem2, sem)}
NP(s1, sem1) VP(s2, sem2) S(append(s1, s2)), compose(sem1, sem2, sem)
slide urmator
semantica compozitionala
The dog has legs. (caine parti picioare)The ball is yellow. (minge proprietate galbena)The ball is red. (mine proprietate rosie)The dog bites. (caine actiune musca)
sentence(S, Sem) :- np(S1, Sem1), vp(S2, Sem2), append(S1, S2, S),Sem = [Sem1 | Sem2].
np([S1, S2], Sem) :- article(S1), noun(S2, Sem).vp([S], Sem) :- verb(S, Sem1), Sem = [actiune, Sem1].vp([S1, S2], Sem) :- verb(S1,_), adjective(S2, Sem1), Sem = [proprietate, Sem1].vp([S1, S2], Sem) :- verb(S1,_), noun(S2, Sem1), Sem = [parti, Sem1].noun(dog,caine).noun(ball,ball).noun(legs,picioare).verb(bytes,musca).verb(is,este).verb(has,are).adjective(yellow,galbena).adjective(red,rosie).
?- sentence([the,ball,is,yellow],Sem).Sem = [minge, proprietate, galbena] Yes?- sentence([the,dog,bytes],Sem).Sem = [caine, actiune, musca] Yes?- sentence([is,dog,bytes],Sem).No?- sentence([the,dog,has,legs],Sem).Sem = [caine, parti, picioare] Yes
18
Verificare corectitudine gramaticalaVerificare corectitudine gramaticala
cazuri subcategorii verbe: complementul pe
care il poate accepta un verb acord subiect predicat etc.
Parametrizarea neterminalelor
CazuriNominativ (subjective) I take the bus Eu iau autobuzulYou take the bus Tu iei autobuzulHe takes the bus El ia autobuzul Acuzativ (objective)He gives me the book Imi da cartea
S NP(Subjective) VPNP(case) Pronoun (case) | Noun | Article Noun
// IVP VP NP(Objective) // believe himVP VP PP // turn to the rightVP VP AdjectiveVP VerbPP Preposition NP(Objective)Pronoun(Subjective) I | you | he | shePronoun(Objective) me | you | him | her
20
sentence(S) :- np(S1,subjective), vp(S2),append(S1, S2, S).
np([S], Case) :- pronoun(S, Case).np([S], _ ) :- noun(S).np([S1, S2], _ ) :- article(S1), noun(S2).pronoun(i, subjective).pronoun(you, _ ).pronoun(he, subjective).pronoun(she, subjective).pronoun(me, objective).pronoun(him, objective).pronoun(her, objective).noun(ball).noun(stick).article(a).article(the).
21
Subcategorii verbeSubcategorii verbe Lista de subcategorii: ce complemente accepta
verbul depinde de verb S NP(Subjective) VP(subcat)dar cazuri in care nu depinde VP(subcat) VP(subcat) PP | VP(subcat) Adverb I smell the
wumpus now
VP(subcat) {subcat = np} VP(np) NP(Objective)| {subcat = adj} VP(adj) Adjective| {subcat = pp} VP (pp) PP| Verb
smell [NP] smell a wumpus[Adjective] smell awfull[PP] smell like a wumpus
is [Adjective] is smelly[PP] is in box[NP] is a pit
give [NP, PP] give the gold in box to me[NP, NP] give me the gold
died [] died
S NP(Subjective) VP(subcat)
NP(case) Pronoun (case) | Noun | Article Noun
Pronoun(Subjective) I | you | he | shePronoun(Objective) me | you | him | her
VP(subcat) {subcat = np} VP(np) NP(Objective)| {subcat = adj} VP(adj) Adjective| {subcat = pp} VP (pp) PP| Verb| VP(subcat) PP| VP(subcat) Adverb
VP(subcat) {subcat = np} VP(np) NP(Objective)| {subcat = adj} VP(adj) Adjective| {subcat = pp} VP (pp) PP| Verb| VP(subcat) PP| VP(subcat) Adverb
sentence(S) :- np(S1,subjective), vp(S2, Subcat),append(S1, S2, S).
VP(subcat) VP(subcat) … !!!
vp(S, Subcat) :- Subcat = np, vp1(S1, np),np(S2, objective), append(S1, S2, S).
vp(S,Subcat) :- vp1(S1, Subcat), pp(S2), append(S1, S2, S). vp1([S],np):-verb(S).verb(give).verb(make).
25
Analiza pragmaticaAnaliza pragmatica
Analiza semantica Desambiguare Interpretare pragmatica – utilizare si
efect asupra ascultatorului Indexical – refera situatia curenta Anafora – refera obiecte deja
mentionate
26
AmbiguitateAmbiguitate
Lexicala – acelasi cuvant diverse intelesuri
Sintactica – arbori diferiti de analiza Referentiala – referire la obiecte
anerioare Pragmatica – referire la loc, timp