inteligenta artificiala

26
1 Inteligenta Inteligenta Artificiala Artificiala Universitatea Politehnica Bucuresti Anul universitar 2006-2007 Adina Magda Florea http://turing.cs.pub.ro/ ia_07

Upload: piper-bridges

Post on 14-Mar-2016

39 views

Category:

Documents


2 download

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 Presentation

TRANSCRIPT

Page 1: Inteligenta Artificiala

1

Inteligenta ArtificialaInteligenta Artificiala

Universitatea Politehnica BucurestiAnul universitar 2006-2007

Adina Magda Floreahttp://turing.cs.pub.ro/ia_07

Page 2: Inteligenta Artificiala

2

Curs nr. 13

Prelucrarea limbajului natural

2

Page 3: Inteligenta Artificiala

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

Page 4: Inteligenta Artificiala

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

Page 5: Inteligenta Artificiala

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

Page 6: Inteligenta Artificiala

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

Page 7: Inteligenta Artificiala

7

GramaticaGramatica

Neterminale – diferite categorii din propozitie– sentence S– noun phrase NP– verb phrase VP– prepositional phrase PP– relative clause RelClause

Page 8: Inteligenta Artificiala

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

Page 9: Inteligenta Artificiala

9

Analiza sintacticaAnaliza sintactica

– top-down parsing– bottom-up parsing

– in adancime– pe nivel

Page 10: Inteligenta Artificiala

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

Page 11: Inteligenta Artificiala

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

Page 12: Inteligenta Artificiala

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

Page 13: Inteligenta Artificiala

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)

Page 14: Inteligenta Artificiala

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]).

Page 15: Inteligenta Artificiala

15

Imbogatire DCGImbogatire DCG

Imbogatesc neterminale cu argumente suplimentare

Verifica corectitudinea gramaticala Ataseseaza semantica Adauga expresii / functii care se

testeaza

Page 16: Inteligenta Artificiala

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

Page 17: Inteligenta Artificiala

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

Page 18: Inteligenta Artificiala

18

Verificare corectitudine gramaticalaVerificare corectitudine gramaticala

cazuri subcategorii verbe: complementul pe

care il poate accepta un verb acord subiect predicat etc.

Parametrizarea neterminalelor

Page 19: Inteligenta Artificiala

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  

Page 20: Inteligenta Artificiala

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).

Page 21: Inteligenta Artificiala

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

Page 22: Inteligenta Artificiala

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

Page 23: Inteligenta Artificiala

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

Page 24: Inteligenta Artificiala

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).

Page 25: Inteligenta Artificiala

25

Analiza pragmaticaAnaliza pragmatica

Analiza semantica Desambiguare Interpretare pragmatica – utilizare si

efect asupra ascultatorului Indexical – refera situatia curenta Anafora – refera obiecte deja

mentionate

Page 26: Inteligenta Artificiala

26

AmbiguitateAmbiguitate

Lexicala – acelasi cuvant diverse intelesuri

Sintactica – arbori diferiti de analiza Referentiala – referire la obiecte

anerioare Pragmatica – referire la loc, timp