Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto...

161
Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho

Transcript of Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto...

Page 1: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Processamento de Linguagem Natural

Inteligência Artificial

Prof. Cedric Luiz de CarvalhoInstituto de Informática

UFG 2006

Page 2: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Ao entardecer em uma floresta na região da Estrada de Ferro, um grupo de macacos guariba está procurando comida nas folhagens debaixo das tortuosas árvores da região, quando de repente um guariba solta um grito alto, parecido com um latido

Page 3: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação Os outros macacos que

estavam comendo reconhecem isto como um gripo de perigo por causa de uma onça pintada

Todos sobem para as árvores os macacos possuem uma

boa comunicação com o grupo

Page 4: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

“Troca intencional de informação através da produção e percepção de sinais a partir de um sistema compartilhado de sinais convencionais”

Page 5: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

A maioria dos animais

vocabulários de sinais: representando importantes mensagens

“comida por perto” “predador se aproximando” etc.

chimpanzés, golfinhos e outros mamíferos: centenas de sinais

Page 6: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Em mundos parcialmente observáveis

a comunicação pode ajudar a agentes a terem sucessos

eles podem aprender informações que são observados ou inferidos por outros agentes

Page 7: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Seres humanos linguagem

sistema estruturado e complexo de sinais permite os seres humanos a comunicar a maioria do

seu conhecimento sobre o mundo

número limitados de sinais convencionais sorrisos apertos de mão acenos etc.

Page 8: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação Seres humanos

golfinhos, chimpanzés e outros mamíferos possuem um vocabulário com centenas de sinais capacidade para arranjar os sinais

somente os seres humanos podem comunicar com um número ilimitado de mensagens

diferentes usar roupas torcer para o Flamengo assistir televisão durante 3 horas

Page 9: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação Ato de fala

ação de um agente ao produzir linguagem fala, não conversa

digitação, uso de sinais, etc. fala

palavra qualquer tipo de sinal comunicativo

Termos para ser referir aos modos de comunicação orador ouvinte declaração

Page 10: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Por quê um agente executaria um ato de fala ao invés de executar uma de suas ações ordinárias?

um grupo de agentes poderia tirar vantagem (coletivamente e individualmente)

Page 11: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Agentes em ambientes multiagentes podem usar a comunicação para ajudar a articular planos para chegarem ao objetivo: perguntar aos outros agentes sobre aspectos

particulares do mundo Você encontrou os sinais das balas?

responder questões Existem vários sinais de bala nas paredes do quarto.

informar os demais sobre a parte do mundo que ele já explorou

Existe um grande buraco antes da ponte.

Page 12: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Agentes em ambientes multiagentes podem usar a comunicação para ajudar a articular planos para chegarem ao objetivo: requisitar ou ordenar que outros agentes

executem ações Por favor, me ajude a carregar o resto do corpo. Anda logo, carregue o resto do corpo para o

carro.

Page 13: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação Agentes em ambientes multiagentes podem usar

a comunicação para ajudar a articular planos para chegarem ao objetivo: prometer fazer alguma coisa ou oferecer negócios

Amanhã faço o exame dos ossos. Vendo laudos médicos, quer comprar?

concordar com requisições ou ofertas Sim, posso realizar o trabalho.

compartilhar sentimentos e experiências Toda vez que ocorre este tipo de crime alguma

torcida organizada está envolvida.

Page 14: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Para um agente:

é difícil decidir quando executar um ato de fala

é difícil decidir qual ato de fala deve ser escolhido

pode existir vários

Page 15: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Este problema pode ser encarado como uma questão de planejamento:

o agente tem várias opções para escolher uma, e deve selecionar aquela que lhe permita atingir a sua meta

comunicar alguma informação a outro agente

Entretanto, planejamento dos atos de fala é uma tarefa

difícil

Page 16: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Não determinismo:

um agente pode dar um comando fale(“vire à direita”).

outro agente pode perceber a ordem segui-la, ou simplesmente ignorar o comando

É necessário um planejamento condicional

Page 17: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Planejamento geral ou política de conversação: ao invés de se fazer o planejamento do início até o fim da

conversação gera-se a primeira sentença e espera-se pela resposta, a

partir da qual é executada uma reação Por exemplo:

1) Vamos em um bar hoje?2) Não.3) Então vamos ficar em casa e assistir um

filme?...

Page 18: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

Entendimento de atos de fala: apresenta a mesma dificuldade de outros

problemas como o entendimento de imagens, diagnósticos médicos, etc.

é dado um conjunto de entradas ambíguas, partir das quais se deve descobrir que estado do mundo gerou estas entradas

Page 19: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação

A linguagem é determinante

Por quê um agente executou um certo ato de fala? é necessário saber algo sobre a sintaxe e sobre

a semântica Por exemplo:

Feia casa. Feia é um substantivo ou adjetivo Casa é um verbo ou substantivo

Page 20: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação Implicações lógicas

uma boa maneira de descrever como palavras e sentenças são combinadas para produzir frases maiores

Técnicas de raciocínio sob incerteza pode tratar outra parte do problema de

entendimento vários estados do mundo podem levar a um mesmo

ato de fala deve-se decidir qual é o mais provável por exemplo: Corra!!!!

Correr em um jogo, fugir da polícia, almoçar rápido, etc.

Page 21: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens

Linguagens formais - LF Lisp Lógica de Primeira Ordem etc.

Linguagens naturais - LN Português Inglês etc.

Page 22: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens

Linguagens formais - LF:

conjuntos de cadeias (Strings) concatenação de símbolos terminais tomados de

um conjunto finito também chamado de palavras

Page 23: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens

Linguagens formais - LF: por exemplo, na linguagem da lógica de primeira

ordem os símbolos terminais ν, Q e P uma string membro da linguagem: P ν Q uma string não membro da linguagem: P Q ν

LF possuem severas definições matemáticas já as LN não possuem esta definição

mas são usadas por uma comunidade oradores

Page 24: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens Gramáticas:

conjunto finito de regras que especificam uma linguagem

LF sempre possuem uma gramática oficial, especificadas em livros ou manuais

LN não possuem uma gramática oficial embora, lingüistas descobrem propriedades e

codificam suas descobertas em uma gramática também existem lingüistas que tentam ditar como

uma gramática dever ser usada

Page 25: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens Gramáticas:

ambas LF e LN associam um significado semântico para cada string válida

por exemplo, em uma linguagem aritmética, teríamos uma regra que diz que se “X” e “Y” são expressões, então, “X + Y” também são expressões, e a sua semântica é a soma de X e Y

Page 26: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens Gramáticas:

nas LN, também é importante entender o pragmatismo de uma string

Dicionário Aurélio: pragmatismo é uma doutrina de Charles Sanders, cuja tese fundamental é que a idéia que temos de um objeto qualquer nada mais é senão a soma das idéias de todos os efeitos imagináveis atribuídos por nós a esse objeto, que possam ter um efeito prático

Em resumo: o significado atual da string como ela é falada em uma dada situação

o significado não somente das palavras, mas na interpretação das palavras também

Page 27: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens

Gramáticas: diversos formalismos e notações

idéia básica: estrutura de frases as strings são compostas de substrings,

chamadas de frases, classificadas em diferentes categorias

Page 28: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens

Categorização das frases:

devem estar associadas a semântica – facilita o seu tratamento

ajuda a descrever as cadeias permitidas na linguagem

Page 29: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens

Símbolos não terminais:

Frases nominais (FN) “o rei”, “a torre na casa (2,3)”, etc.

Frases verbais (FV): “está morto”, “está em perigo”, etc.

Sentenças (S): FN + FV “o rei + está morto”

Page 30: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Fundamentos das Linguagens

Na Forma Normal de Bakus-Naur (BNF):

S FN FV

Regras de Reescrita

Um não terminal do ladoesquerdo e uma

seqüência de terminais enão terminais do lado

direito.S pode consistir de

qualquer FN seguindo por qualquer FV

Page 31: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação Um episódio típico de comunicação, em que um orador

que informar a um ouvinte sobre uma proposição usando com conjunto de palavras, é composto de 7 passos ou processos

Convenções: Quem fala (orador): S

Quem ouve (ouvinte): H

O que será comunicado: proposição P

Palavras as serem usadas em P: W

Page 32: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação Processos (quem fala):

1) Intenção: S quer que H acredite em P (tipicamente S acredita em P)

quem fala deve decidir se vale a pena dizer algo ao ouvinte

envolve raciocínio a respeito das crenças e metas do ouvinte

de forma que a comunicação tenha efeito

Page 33: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação Processos (quem fala):

2) Geração: S escolhe as palavras W (que expressam o significado de P) para que H faça a inferência do significado de P

quem fala deve usar seus conhecimentos a respeito da linguagem para decidir o que dizer, por exemplo:

A vítima está morta!

3) Síntese: S emite uma realização física W’ das palavras W (usualmente endereçando-as a H)

deve ser produzida uma saída escrita em papel ou na tela: trivial

saída sonoras: síntese de sons a partir de alfabetos fonéticos

Page 34: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação

Processos (quem ouve):

4) Percepção: H recebe W´ (idealmente W = W´, mas pode haver percepção equivocada) e decodifica para W2

quando o meio de transmissão é falado, o passo de percepção é chamado de reconhecimento de fala

quando o meio de transmissão é impresso, o passo de percepção é chamado de reconhecimento de caracteres óptico

Page 35: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação

Processos (quem ouve): 5) Análise: H infere que W2 tem os possíveis

significados P1, ..., Pn (palavras e frases podem ter vários significados)

a análise é dividida em três partes:

análise gramatical (parsing) interpretação semântica interpretação pragmática

Page 36: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação Processos (quem ouve):

5) Análise: análise gramatical (parsing) é o processo de construir uma árvore de análise para

uma string de entrada ligações representam aplicação de regras gramaticais os nós representam as frases e as folhas

representam as palavrasS

FN FV

artigo

A

substantivo

vitíma

verbo

está

adjetivo

morta

Page 37: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação Processos (quem ouve):

5) Análise: Interpretação semântica é o processo de extrair o significado de uma proposição

em alguma linguagem por exemplo, dado a proposição: “A vítima está morta”,

podemos ter duas possíveis interpretações semânticas

A vítima perdeu a vida

A vítima está muito cansada (morta de cansaço)

Obs.: proposições com várias interpretações são ditas ambíguas

Page 38: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação

Processos (quem ouve): 5) Análise: Interpretação pragmática

palavras iguais podem ter diferentes significados em situações diferentes

a interpretação sintática é uma função com um argumento, a string

a interpretação pragmática é função do predicado e do contexto ou situação em que o predicado foi emitido

Ela é uma princesa! Dito pelo pai da moça Dito por um admirador

Page 39: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Os Passos para a Comunicação

Processos (quem ouve): 6) Eliminação de ambigüidades: H infere que S

teve a intenção de comunicar Pi (idealmente Pi = P, mas pode haver má percepção)

7) Incorporação: H decide acreditar em Pi (ou a rejeitar, se ela estiver fora dos limites do que H já acredita)

um agente ingênuo deve acreditar em tudo que ele escutou

agentes sofisticados tratam cada ato de fala como uma evidência para Pi

Page 40: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades Na maior parte das vezes, quem fala não quer ser

ambíguo grande parte das falas têm várias interpretações

O ouvinte não se preocupa em descobrir qual o provável significado que quem falou desejou expressar

Depende fortemente de raciocínio sob incerteza

São geradas as possíveis interpretações e, se há mais de uma possível, é escolhida a melhor

Page 41: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uso de Linguagem Os agentes comunicantes:

devem entender a linguagem

devem ter um contexto em comum base para a conversação

devem ter algum mecanismo de raciocínio

Page 42: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Modelos de Comunicação Comunicação

centrada na forma como as crenças de um agente é transformada em palavras

quem fala tem em mente uma proposição P definida e codifica esta proposição em palavras (ou sinais)

como as palavras são transformadas novamente em conhecimento de um outro agente

o ouvinte tenta decodificar a mensagem W de forma a recuperar o proposição original

Page 43: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Modelos de Comunicação Modelo de mensagem codificada:

o significado da mensagem: está na

cabeça de quem fala

a mensagem transmitida e a interpretação usada pelo ouvinte têm o mesmo conteúdo, mas pode haver diferenças

devidas a ruído no canal de comunicação ou

erros de codificação ou decodificação

Page 44: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Modelos de Comunicação

Modelo de linguagem situada:

o significado da mensagem: depende das palavras e da situação em que as palavras são geradas

Page 45: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Modelos de Comunicação Modelo de linguagem situada: as funções de

codificação e decodificação têm um argumento extra, representando a situação atual as mesmas palavras diferentes significados em

diferentes situações se quem fala e quem ouve têm idéias diferentes a

respeito de qual é a situação atual problemas de entendimento

Page 46: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Tipos de Agentes Comunicantes

Agentes que compartilham uma linguagem de representação interna: não é necessária uma linguagem externa para a

comunicação

Agentes que não fazem nenhuma suposição com relação à linguagem interna de outros agentes compartilham uma linguagem externa, que é um

subconjunto do Inglês

Page 47: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação usando DIGA e PERGUNTE

Comunicação Telepática: agentes compartilham linguagem de

representação interna

agentes têm acesso direto à Base de Conhecimento dos outros (através de DIGA e PERGUNTE).

é possível acessar a BC de outros como se fora sua própria BC

Page 48: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação usando DIGA e PERGUNTE

Comunicação Telepática (cont.): os agentes têm que estar de acordo no formato

interno da linguagem de representação e também de grande parte dos símbolos usados

símbolos estáticos: fixos, definidos a priori símbolos dinâmicos: criados depois dos agentes

começarem a explorar o mundo

Page 49: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação usando DIGA e PERGUNTE

Dificuldades na sincronização dos símbolos dinâmicos: deve existir uma política de nomeação: dois

agentes não podem atribuir o mesmo nome para símbolos diferentes

o nome do agente pode fazer parte do nome do símbolo – resolve-se o problema

deve existir um meio de inter-relacionar novos símbolos criados pelos agentes

Page 50: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação usando DIGA e PERGUNTE

Dificuldades na sincronização dos símbolos dinâmicos: é difícil coordenar as diferenças entre as BCs dos

agentes novos fatos podem ser transmitidos a todos assim que

forem gerados: requer boa estrutura de comunicação

se a comunicação não é freqüente: ao ser feito um contato é preciso decidir quais novas informações vale a pena comunicar

Page 51: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação usando DIGA e PERGUNTE

Agentes telepáticos: são vulneráveis a sabotagens

usando a interface DIGA, um agente pode alterar diretamente a BC de outros, inserindo mentiras nelas

Page 52: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação usandoLinguagem Formal

Agentes devem executar ações que produzam uma linguagem compreendida por outros agentes

A linguagem de comunicação pode ser diferente da linguagem de representação interna

Page 53: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Comunicação usandoLinguagem Formal

Problema mais crítico: conciliar as diferenças entre as diferentes BCs

dos agentes

o que um agente A diz e como um agente B interpreta o que A disse depende crucialmente do que A e B acreditam

Qual é o melhor time do mundo, Flamengo ou Real Madri??

Page 54: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uma Gramática Formalpara um Subconjunto do Inglês

Uma linguagem formal é adequada para o tratamento de linguagens naturais:

usam um conjunto fixo de letras (escrita)

usam um conjunto fixo de sons (falada)

estes conjuntos são combinados em um conjunto relativamente fixo de palavras

Page 55: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uma Gramática Formalpara um Subconjunto do Inglês

Alguns problemas:

nem sempre as pessoas estão de acordo a respeito do que está na linguagem

diferenças regionais uai bão trem no meu olho

as linguagens naturais mudam com o tempo voismecê você ??? c (bate-papo)

Page 56: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uma Gramática Formalpara um Subconjunto do Inglês

Alguns problemas:

algumas construções que não seguem a gramática podem ser entendidas

O Flamengo é bom (segue a gramática ) Flamengo bom (não segue a gramática )

o julgamento a respeito de correção gramatical pode não ser absoluto

vários lingüistas divergem

Page 57: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uma Gramática Formalpara um Subconjunto do Inglês

Alguns problemas: as sentenças a seguir podem ser

classificadas: Para quem você enviou a carta? Perto de quem você estava? De quem você encontrou um amigo? De quem você viu o vendedor que comprou o

quadro que Vincent pintou?

BOA

RUIM

Page 58: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uma Gramática Formalpara um Subconjunto do Inglês

Mesmo se forem definidas quais sentenças pertencem à linguagem e quais não pertencem, o problema mais crítico ainda persiste: interpretação semântica e eliminação de

ambigüidades

Page 59: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uma Gramática Formal para um Subconjunto do Português

Linguagem formal: todo enunciado é um comando

Linguagem natural: o ouvinte precisa determinar se a fala é: um comando uma pergunta um enunciado promessa etc.

Page 60: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Léxico O primeiro passo é definir o léxico (vocabulário)

conjunto de palavras permitidas

Estas palavras são classificadas: substantivos denotam coisas

verbos denotam ações

adjetivos modificam os nomes

advérbios modificam os verbos

artigo, numeral, pronome, proposição, conjunção e interjeição

Page 61: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Léxico

Substantivo carne | flor | cheiro | mulher | ...

Verbos ver | ter | olhar | testar | ...

Adjetivos claro | bonito | cheirosa | ...

Advérbios aqui | ali | cedo | ...

Pronome eu | tu | nós | ...

Nome Paula | Cláudia | Maria | ...

Artigo o | um | a | ...

Preposição para | em | ...

Conjunção e | ou | mas | enquanto | ...

Dígito 0 | 1 | ... | 9

Page 62: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Léxico Como foi visto no slide anterior, cada categoria

finaliza com ... é impossível listar todas além de existir milhares, a cada dia novas membros

das classes surgem MP3

Classes abertas substantivos, verbos, adjetivos e advérbios

Classes fechadas artigo, numeral, pronome, proposição, conjunção e

interjeição podem demorar séculos para haver mudanças

voismecê você

Page 63: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Uma Gramática O próximo passo é combinar as palavras em

frases: gramática Usaremos 5 Não Terminais:

S sentença FN frase nominal FV frase verbal FP frase preposicional CR cláusula relativa

Consiste de umpronome relativoseguido de uma

frase verbal.Ex.: que, cujo, quem

Une palavras, designa relações, por exemplo, posse e tempo. Em orações é um conectivo.

Ex.: as pernas da mulher

Page 64: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática

PaulaFN Nome

a flor + de mariaFN FN FP

euFN Pronome

florFN Substantivo

a + florFN Artigo Substantivo

3 5FN Dígito Dígito

eu + colhi a florS FN FV

eu colhi a flor + e + a dei a maria.S S Conjunção S

a flor + que é cheirosaFN FN CR

Page 65: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática

para + o lesteFP Preposição FN

vá + em frenteFV FV Advérbio

está + cheirosaFV FV Adjetivo

vire + para o lesteFV FV FP

que + é cheirosaCR que FV

verFV Verbo

colhi + a florFV FV FN

Page 66: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática Esta gramática é dita ser overgenerate

gera sentenças que não fazem parte da gramática Eu vou Brasília S FN FV Pronome FV FN pronome verbo nome

Esta gramática é dita ser undergenerate não gera algumas sentenças que fazem parte da gramática Eu pensei que o jogo estava perdido S FN FV pronome FV FN pronome verbo FN CR

perdido

Page 67: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise Sintática

Parsing Algoritmo não determinístico:

Trata a lista de palavras como uma floresta sintática: lista ordenada de árvores sintáticas.

Page 68: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise Sintática

Algoritmo: Em cada passo do laço:

encontra uma subseqüência de elementos na floresta e se “casa” com o lado direito de uma das regras da gramática.

Page 69: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise Sintática

Algoritmo: Em cada passo do laço:

encontra uma subseqüência de elementos na floresta e se “casa” com o lado direito de uma das regras da gramática.

Substitui a subseqüência por uma única árvore sintática cuja categoria é o lado esquerdo da produção e cujos filhos são os nós na subseqüêcia original.

Page 70: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise Sintática

função ANASINT(palavras,gramática) retorna árvore sintática

floresta palavras

repita faça

se COPRIMENTO(floresta) = 1

e CATEGORIA(floresta([1]) = INÍCIO(gramática) então retorne floresta([1])

caso contrário

i escolha em {1 ... COMPRIMENTO(floresta)}

regra escolha em REGRAS(gramática)

n COMPRIMENTO(REGRA-LD(regra))

Page 71: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise Sintática

subseqüência SUBSEQUÊNCIA(floresta,i,i+n-1)

se CASA(subseqüência, REGRA_LD(regra)) então

floresta[i ... i+n-1] [NOVO-NÓ( REGRA-LE(regra), subseqüência)]

caso contrário falha

fim

Cada nó tem dois campos: CATEGORIA e FILHOS.

Page 72: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise Sintática

S

S FN FVFN FVFN FV

FV FV AdjetivoFV AdjetivoFN FV Adjetivo

FV VerboVerboFN Verbo Adjetivo

Adjetivo cheirosacheirosaFN Verbo cheirosa

Verbo ééFN é cheirosa

FN Artigo Subst.Artigo Subst.Artigo Subst. é cheirosa

Subst. florflorArtigo flor é cheirosa

Artigo aAA flor é cheirosa

regrasubseqüênciafloresta

Page 73: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática de Cláusulas Definidas (DCG) Problemas com a BNF:

Somente representam cadeias, não significados.

Queremos realizar comunicação: o significado é essencial.

É estritamente livre de contexto necessitamos de gramáticas dependentes do

contexto.

Page 74: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática de Cláusulas Definidas (DCG) Usa o poder da Lógica de Primeira Ordem:

Cada símbolo não terminal predicado de um lugar que são verdadeiros se as cadeias são frase desta categoria.

Ex.: Substantivo(“perfume”) é verdadeiro. Substantivo(“para”) é falso.

Page 75: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática de Cláusulas Definidas (DCG) Usa o poder da Lógica de Primeira Ordem:

Cada símbolo não terminal predicado de um lugar que são verdadeiros se as cadeias são frase desta categoria.

Ex.: Substantivo(“perfume”) é verdadeiro. Substantivo(“para”) é falso.

Page 76: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática de Cláusulas Definidas (DCG) “Uma cláusula definida é um tipo de cláusula

de Horn que, quando escrita na forma de um implicação, tem exatamente um átomo no seu conseqüente, e uma conjunção de zero ou mais átomos no seu antecedente, por exemplo,

A1 A2 ... C1”

Page 77: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática de Cláusulas Definidas (DCG) Regras BNF escritas na Lógica de Primeira Ordem:

(s = “flor” ... ) Substantivo(s)

Substantivo flor | ...

FN(s1) FV(s2) S(append(s1,s2))

S FN FV

Lógica de Primeira OrdemBNF

Page 78: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática de Cláusulas Definidas (DCG)

Gramática escrita com sentenças da lógica: gramática lógica.

Inferência lógica irrestrita muito cara, computacionalmente.

Page 79: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Notação Especial para uma DCG

X Y Z ...: Y(s1) Z(s2) ... X(Append(s1, s2...)

X palavra : X([“palavra”])

X Y | Z | ... : Y´(s) Z´(s) ... X(s) Y´ : tradução de expressão DCG Y para a lógica.

Si cadeias

Page 80: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Notação Especial para uma DCG

Extensão da notação: não terminais aumentados com argumentos extras.

Não terminais:

Na BNF: não terminais são representados como predicados de apenas um argumento. Ex: FN é representada como FN(s).

Com extensão: FN(sem) – FN com semântica – é representada como FN(sem,s).

Page 81: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Notação Especial para uma DCG

Variável: Pode aparecer do lado direito de uma regra da DCG Representa um único símbolo da cadeia de entrada, sem

dizer o que ele é.

Definição de uma nova categoria: Double – conjunto de cadeias consistindo de uma palavra repetida duas vezes.

Double w w :

(s1 = [w] s2 = [w]) Double(Append(s1,s2))

Page 82: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Notação Especial para uma DCG

Teste Lógico:

Pode aparecer no lado direito de uma regra

Representado entre chaves na notação DCG.

Page 83: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática Aumentada

Uma gramática como a anterior pode gerar sentenças que não são gramaticalmente corretas:

“Mim sentiram o perfume da flor” Tempo verbal; Concordâncias; Etc.

Page 84: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática Aumentada

As línguas naturais não são livres de contexto.

Para se utilizar uma GLC, deve-se introduzir novas regras que diferenciem os pronomes, os tempos verbais, etc.

Page 85: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática Aumentada

FP Preposição FNo

Pronomes eu | ele | ela | ...

FNo Pronomeo | Substantivo | Artigo Substantivo

FV FV FNo | ...

Pronomeo mim | ...

S FNs FV | ...

FNs Pronomes | Substantivo | Artigo Substantivo

Page 86: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática Aumentada

Ao invés de acrescentar novas regras aumentar as regras existentes:

Introduzir parâmetros nas regras.

Page 87: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Gramática Aumentada

FP Preposição FN(Objeto)

Pronome(Sujeito) eu | ele | ela | ...

FV FV FN(Objeto) | ...

Pronome(Objeto) mim | você | ...

S FN(Sujeito) FV | ...

FN Pronome(Caso) | Substantivo

| Artigo Substantivo

Page 88: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Subcategorização dos Verbos

De acordo com a gramática, poderíamos aceitar as frases:

Dê-me a flor. Vá para a casa (2,4). Vá-me a flor. Dê para a casa (2,4).

Page 89: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Subcategorização dos Verbos

É necessário que sejam especificados os complementos de cada verbo:

frases obrigatórias que seguem um verbo em uma Frase Verbal.

Page 90: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Subcategorização dos Verbos

A cada verbo pode-se associar uma lista de possíveis complementos.

Uma palavra pode estar em mais de uma lista. “Você”, por exemplo, pode aparecer no sujeito

ou no predicado.

Page 91: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Subcategorização dos Verbos

Acreditar

Morrer

Ser

Dar

Verbo

É uma flor.

É bela

[FN]

[Adjetivo]

Morreu[ ]

Acredite que a flor que lhe dei tem per-

fume.

[S]

Exemplos de FVsSubcats.

Dê a flor para Maria.

Dê-me a flor.

[FN,FP]

[FN,FN]

Page 92: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Subcategorização dos Verbos A subcaterização deve ser integrada à

gramática.

FV(subcat) FV([FN|subcat]) FN(Objeto)

| FV([Adjetivo|subcat]) Adjetivo

| FV([FP|subcat]) FP

| Verbo(subcat)

Page 93: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Subcategorização dos Verbos

A regra para S deve dizer que requer uma frase verbal que tem todos os seus complementos, tendo, portanto, uma lista de subcat vazia ( [ ] ). Assim:

Ele morreu sentença aceita. Você comprou sentença não aceita.

Page 94: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Subcategorização dos Verbos

S FN(Sujeito) FV( [ ] )

“Uma sentença pode ser composta por uma FN no caso de sujeito, seguida por uma FV que tenha uma lista subcat vazia.”

Page 95: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Adjuntos Adverbiais

Sinto o perfume agora. Comprei um carro ontem.

FV(subcat) FV(subcat) FP

| FV(subcat) Advérbio

Page 96: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Semântica

Semântica Composicional:

A semântica de uma frase é função da semântica das subfrases.

A semântica de uma frase não depende de qualquer outra, antes, depois ou que a englobe.

Page 97: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Semântica

Vantagem da Semântica Composicional:

Permite tratar gramáticas infinitas com um conjunto finito de regras (freqüentemente pequeno).

Page 98: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Semântica

Interpretação semântica: é responsável por obter um conjunto de possíveis interpretações a partir da combinação composicional de significados.

Eliminação de ambigüidades: escolha do melhor significado.

Page 99: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica e DCG

Pode-se estender uma gramática de forma a incluir especificações semânticas. Exemplo:

Exp(sem) Exp(sem1) Operador(op) Exp(sem2) { sem = aplic(op, sem1, sem2)}

Exp(sem) ( Exp(sem) )Exp(sem) Número(sem)Dígito(sem) sem { 0 sem 9 }Número(sem) Dígito(sem)Número(sem) Número(sem1) Dígito(sem2)

{ sem = 10 * sem1 + sem2 }Operador(sem) sem{ sem {+, - , /, * } }

Page 100: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise de um Subconjuntodo Português Primeiro passo: determinar os fatos:

Quais as representações semânticas que serão associadas às frases.

Exemplo: “João ama Maria”

ama(joão, maria)

Page 101: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise de um Subconjuntodo Português Intuitivamente: “ama maria” é uma descrição

que pode ou não ser aplicada a uma determinada pessoa. É um predicado que dever ser combinado

com um termo que represente uma pessoa: representação lógica completa.

Na representação :

x ama(x, maria)

Page 102: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise de um Subconjuntodo Português Pode-se definir uma regra:

“Uma FN, com semântica obj, seguida por uma FV, com semântica rel, produz uma sentença cuja semântica é o resultado de aplicação da relação rel ao objeto obj.”

S(rel(obj)) FN(obj) FV(rel)

Page 103: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise de um Subconjuntodo Português Pela regra anterior, a interpretação para

“João ama Maria” é:

x ama(x, maria)(joão)

ou

ama(joão, maria)

Page 104: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise de um Subconjuntodo Português Da mesma maneira, pode-se representar os

verbos. Assim, para o verbo “ama”:

y x ama(x, y)

Page 105: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise de um Subconjuntodo Português

A regra FV Verbo FN:

Aplica o predicado, que é a interpretação semântica do verbo, ao objeto que a interpretação semântica da FN

Gera a interpretação semântica da FV.

Page 106: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Análise de um Subconjuntodo Português

Assim:

S(rel(obj)) FN(obj) FV(rel)

FV(rel(obj)) Verbo(rel) FN(obj)

FN(obj) Nome(obj)

Nome(joão) João

Nome(maria) Maria

Verbo(x, y) ama

Page 107: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Como representar:

Tempo. Eventos. Substâncias.

Page 108: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Uma opção, para a sentença “Todo agente sente o cheiro de um gambá” poderia ser:

a Agente(a) g Gambá(g) e e Percebe(a,g,Nariz) Dura(Agora, e)

Page 109: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

A sentença deve ser quebrada em frases FV e FN, às quais podemos associar as semânticas:

Todo agente:

FN(a Agente(a) ,... )

Page 110: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Sente cheiro de um gambá:

FV(g Gambá(g) e e Percebe(...,g,Nariz)

Dura(Agora, e) )

Page 111: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Problemas:

A semântica da sentença inteira parece ser a semântica de FN com a semântica da FV substituindo os “...”.

isto significa que não podemos formar a semântica da sentença com rel(obj).

Page 112: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Problemas (cont.):

Precisamos obter a variável a como um argumento da relação Percebe.

isto significa que a semântica da sentença é formada pela inserção da semântica de FV no espaço em FN e também inserido a variável a, de FN no espaço para o argumento da semântica de FV.

Page 113: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Problemas (cont.):

Precisamos de duas funções de composição : complicado!

A estrutura sintática émuito diferente da

estrutura semântica”

Page 114: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Outro caminho: Definição de uma forma intermediária entre

sintaxe e semântica. Estruturalmente semelhante à sintaxe da

sentença pode ser facilmente construída por composição.

Contém informação suficiente de forma a poder ser traduzida para a Lógica de Primeira Ordem.

Forma “Quase Lógica”

Page 115: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

Forma “quase lógica” inclui:

Toda a Lógica de Primeira Ordem, Expressões lâmbda, e Um termo quantificado.

Ex.: para “todo agente” – [a Agente(a)]

Page 116: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Semântica

A sentença “Todo agente sente o cheiro de um gambá” poderia ser representada, usando-se a relação Percebe:

e (e Percebe([a Agente(a)],

[g Gambá(g)],Nariz) Dura(Agora, e) )

Page 117: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma Gramática

Gramática complexa:

Difícil de escrever – representar a interpretação semântica correta.

Pode haver inúmeras formas de atacar o problema.

Page 118: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Decidir qual forma deverá ser gerada (lógica ou quase lógica).

Escrever alguns exemplos de sentenças e a forma lógica correspondente.

Page 119: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Modificar as palavras nas sentenças (uma de cada vez) e verificar as mudanças na forma lógica correspondente.

Ex.: se a frase anterior fosse alterada para “todo agente sentiu o cheiro de um gambá”

Dura(Agora, e) deve ser substituído por Depois(Agora, e).

Page 120: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

Ex.: se a frase anterior fosse alterada para “todo agente sentiu o cheiro de um gambá”

Dura(Agora, e) deve ser substituído por Depois(Agora, e).

Assim: Dura está associado à semântica de sente e Depois está associado à semântica de sentiu.

Da mesma forma: todo e um

Page 121: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Deve-se definir as categorias e o tipo semântico das palavras em cada categoria.

2. Modificar as frases (uma de cada vez) e analisar as conseqüências na representação.

Ex.: substituir “todo lírio perfumado” por “Eu”.

Page 122: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Aumentar as regras da gramática com interpretações semânticas, associadas as tipos de cada categoria.

Se o lado direito da regra tem somente um constituinte: copia-se a semântica para ele

FN(sem) Pronome(sem)

Page 123: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Se o lado direito da regra contém uma interpretação semântica que é um predicado (ou função) e um ou mais que são objetos: a relação deve ser aplicada ao(s) objeto(s).

S(rel(obj)) FN(obj) FV(rel)

Page 124: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Algumas vezes, a semântica é construída concatenando a semântica dos constituintes.

Algum conector pode ser necessário.

FN([sem1,sem2]) Dígito(sem1) Dígito(sem2)

Page 125: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Algumas vezes, pode ser necessário separar um dos constituintes, antes de definir a semântica de toda a frase. Ex.:

FV(x rel1(x) rel2(Var-Evento(rel1))) FV(rel1) Advérbio(rel2)

A função Var-Evento escolhe a variável de evento da forma intermediária da expressão rel1

Page 126: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida

1. Ex.: Uma frase como “me viu ontem”, pode ter a interpretação:

x e e Ver(x, QuemFala) Depois(Agora, e) Dura(e, Ontem)

Page 127: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Construção de uma GramáticaMetodologia Sugerida Seguindo-se estes passos, pode obter uma

gramática como a seguinte.

Para ser utilizada, a gramática deve ser aumentada com informações de caso e de subcategorização.

Page 128: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Exemplo

e e (Dormir,QuemFala)

Dura(Agora,e)

Eu durmo.SentençaS

Forma Quase lógicaExemploTipoCategoria

Page 129: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Exemplo

x y e e Come(x,y) Dura(Agora, e)

comeobjeton sentençaVerbo

QuemFalaeuObjetoPronome

x y Em(x,y)emobjeto2 sentençaPreposição

x Gambá(x)gambáobjeto sentençaSubstantivo

77NúmeroDígito

p,q (pq)eSentença2 sentençaConjunção

!oQuantificadorArtigo

e Dura(e,Hoje)hojeevento sentençaAdvérbio

x Cheiroso(x)cheirosoobjeto sentençaAdjetivo

Forma Quase lógicaExemploTipoCategoria

Page 130: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Exemplo

x e e Vê(x,QuemFala) Dura(Agora, e)

me vêobjeton sentençaFV

x e e Vê(x,QuemFala) Dura(Agora, e)

que me vêobjeto sentençaCR

x Em(x,[2,2])Em [2,2]objeto2 sentençaFP

[ f Flor(f)]uma florObjetoFN

Forma Quase lógicaExemploTipoCategoria

Page 131: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

São acrescentadas informações sobre a situação atual, informações dependentes do contexto e que não são composicionais.

Page 132: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

Por quê?

Informações pragmáticas são úteis na resolução do significado de frases diretamente relacionadas à situação atual (indexcals).

Ex.: Eu estou na UFG hoje.

Page 133: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

Exemplo: Eu estou na UFG hoje.

O significado de Eu e de hoje depende de quem disse a frase e quando fala.

Page 134: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

O ouvinte que percebe o ato de fala deve também perceber quem fala e usar esta informação para identificar o significado da frase.

Ex.: o ouvinte deve saber que:

T((QuemFala = AgenteB), Agora)

Page 135: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

Anáfora: frase referenciando objetos que foram mencionados anteriormente.

Exemplo: “João estava com fome. Ele entrou em um restaurante.”

Refere-se a João

Page 136: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

Para entender que Ele se refere a João:

É preciso processar a primeira sentença, e Usá-la como parte do conhecimento

situacional para a interpretação da segunda sentença.

Page 137: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

Outro exemplo:

“Depois que João pediu Maria em casamento, eles encontraram um padre e se casaram. A lua-de-mel ocorreu no Havaí.”

Page 138: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Interpretação Pragmática

A frase nominal “a lua-de-mel” se refere a algo implicitamente relacionado ao verbo “casar”.

“Eles” refere-se a um grupo que não foi mencionado explicitamente antes: João e Maria (mas não o padre).

Page 139: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Comunicação ideal:

Quem fala tem em mente uma proposição P e executa um ato de fala que tem várias interpretações mas, na situação atual, pode ser melhor interpretado como comunicando P.

O ouvinte entende isto e chega em P com a interpretação adequada.

Page 140: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

O ouvinte entende isto e chega em P com a interpretação adequada.

O ouvinte resolveu a ambigüidade!

Page 141: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidades léxicas: tipo mais simples de ambigüidades. Uma palavra tem mais de um significado.

Manga (de camisa) Manga (fruta)

Uma palavra pode pertencer a mais de uma categoria:

Mato (substantivo) Mato (verbo matar)

Page 142: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidades sintáticas (ou estrutural): ocorrem com ou sem ambigüidade léxica.

Ex.: “Senti o cheiro do gambá no galinheiro”.

Page 143: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidade semântica: gerada por ambigüidades sintáticas e/ou léxicas. Interpretações:

1. O gambá está no galinheiro.

2. O cheiro do gambá está no galinheiro.

Page 144: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidade semântica: pode ser gerada mesmo se não houver ambigüidades sintáticas e/ou léxicas. Exemplo:

“Estrada costeira” pode significar uma estrada ao longo da costa, ou uma estrada que leve à costa.

Page 145: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidade referencial: ocorre porque linguagens naturais consistem de palavras para categorias, não para objetos individuais.

Exemplo: não há uma palavra para a-maça-que-eu-comi-pela-manhã, mas somente para maça.

Page 146: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidade referencial:

Expressões referenciais como “ela”, podem ser referir a praticamente tudo.

Page 147: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidade pragmática: ocorre quando quem fala e o ouvinte não estão de acordo com relação à situação em questão.

Exemplo: Quem fala diz “Eu o encontrarei na próxima quinta”, se referindo ao dia 17, mas o ouvinte interpreta como sendo o dia 24.

Page 148: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidade local: pode ser que uma substring possa ser analisada sintaticamente de várias formas, mas somente uma destas formas é adequada ao contexto onde ela se insere.

Exemplo - na linguagem C, *c significa ponteiro para c em char *c significa multiplicação por c, em 2*c.

Page 149: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Ambigüidades

Ambigüidade do ato de fala: qual ato foi executado?

Exemplo: Você sabe quantas horas são? Poderia provocar a resposta: Sim. O objetivo de quem fala poderia ser

descobrir quantas horas são.

Page 150: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

É uma questão de diagnóstico:

O ouvinte mantém um modelo do mundo e, ao ouvir um novo ato de fala, acrescenta possíveis interpretações ao modelo, como hipóteses.

Page 151: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Pode-se usar “raciocínio sobre incerteza” para decidir qual interpretação é a melhor.

Por exemplo: João viu Maria trocando de roupa com sua luneta.

É mais provável que João observava Maria enquanto esta trocava de roupa, utilizando a sua luneta (de João e não de Maria).

Page 152: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Em geral, a eliminação de ambigüidades requer a combinação de quatro modelos:

Modelo do mundo. Modelo Mental. Modelo de Linguagem. Modelo acústico.

Page 153: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Modelo do mundo:

A probabilidade de um fato acontecer no mundo.

Page 154: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Modelo mental:

A probabilidade de quem fala formar a intensão de comunicar este fato ao ouvinte, dado que ele ocorreu.

Page 155: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Modelo da linguagem:

A probabilidade de que certa cadeia de palavras foi escolhida, dado que quem fala tem a intensão de comunicar certo fato.

Page 156: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Modelo acústico:

A probabilidade de que uma seqüência particular de sons seja gerada, dado que quem fala escolheu uma dada cadeia de palavras.

Page 157: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Uma outra razão que torna difícil a escolha da interpretação correta:

Pode haver várias interpretações corretas. Poesia, propaganda, retórica política, etc

quem fala pode introduzir ambigüidades proposicionalmente.

Page 158: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

A forma mais simples de tratar probabilidades, neste contexto, é usar uma Gramática Livre de Contexto Probabilística (ou Estocástica) - GLCP.

Cada regra de reescrita é associada a uma probabilidade.

S FN FV (0.9) S S Conjunção S (0.1)

Page 159: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

No modelo da GLCP:

A probabilidade de uma árvore é o produto das probabilidades de todas as regras que geram os nodos da árvore.

Page 160: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

Problema do modelo GLCP:

A gramática é Livre de Contexto. A diferença entre P(“Eu comi uma banana”) e

P(“Eu comi uma bandagem”) depende apenas de P(“banana”) e P(“bandagem”) e não da relação comer entre os respectivos nomes.

Page 161: Processamento de Linguagem Natural Inteligência Artificial Prof. Cedric Luiz de Carvalho Instituto de Informática UFG 2006.

Eliminação de Ambigüidades

No modelo da GLCP(cont.):

A probabilidade de uma cadeia P(palavras) é a soma das probabilidades se suas árvores sintáticas.

Uma única árvore para cadeias não ambíguas; Nenhuma árvore para cadeias não gramaticais; Várias árvores para cadeias ambíguas.