Comunicação. Capítulo 22

Documentos relacionados
Processamento de Linguagem Natural

Processamento de Linguagem Natural

Processamento de Linguagem Natural

Comunicação. Capítulo 22

Gramáticas Livres de Contexto

28/04/2011 SINTAXE PARTE 1. SCC5908 Tópicos em Processamento de Língua Natural. Thiago A. S. Pardo SINTAXE E GRAMÁTICAS

Análise Sintática. Fabiano Baldo

Ferramenta de apoio a identificação de eventos utilizando Linguagem Natural. Aluno: Ricardo Tomelin Orientador: Everaldo Artur Grahl

Inteligência Artificial Alameda e Taguspark

Construção de Compiladores Aula 16 - Análise Sintática

Aula de Hoje. Processamento Estatístico da Linguagem Natural. Bottom-Up Filtering. Ambiguidade. Combinando Top-Down e Bottom-Up

INE5416 Paradigmas de Programação. Ricardo Azambuja Silveira INE CTC UFSC E Mail: URL:

Inteligência Artificial

Inteligência Artificial

17/09/2010 SINTAXE PARTE 1. SCC5869 Tópicos em Processamento de Língua Natural. Thiago A. S. Pardo SINTAXE E GRAMÁTICAS

Gramática de Montague

Conhecimento e Raciocínio Agente Lógicos Capítulo 7. Leliane Nunes de Barros

Inteligência Artificial Alameda e Taguspark

Introdução à Programação

V Análise Sintática. V.1.1 Gramáticas Livres de Contexto Definições de GLC

Definições Hierarquia de Chomsky Exemplos de gramáticas. Gramáticas. Objetivo de ensinar o inglês pelo computador e conseguir um tradutor de línguas

Conceitos de Linguagens de Programação

Disciplina: LINGUAGENS FORMAIS, AUTÔMATOS E COMPUTABILIDADE Prof. Jefferson Morais

Definições Exemplos de gramáticas

DISCIPLINA DE LÍNGUA PORTUGUESA - 6.º Ano 1. COMPETÊNCIAS ESSENCIAIS COMPETÊNCIAS ESPECÍFICAS COMPETÊNCIAS GERAIS

Linguagens Formais e Autômatos P. Blauth Menezes

6 Atributos. A dívida da empresa subiu.

Linguagem com sintaxe e semântica precisas: lógica. Mecanismo de inferência: derivado da sintaxe e da

Python e sua sintaxe LNCC UFRJ

Análise sintática Parsing

Gramáticas Livres de Contexto Parte 1

Compiladores. Análise lexical. Plano da aula. Motivação para análise lexical. Vocabulário básico. Estrutura de um compilador

Análise Sintática. Compiladores Cristina C. Vieira. Compiladores 2012/2013

Compiladores. Bruno Lopes. Bruno Lopes Compiladores 1 / 30. Instituto de C

Análise Sintática de Frases utilizando Gramáticas Livres de Contexto Probabilísticas

Parte 4 - Semântica. Papéis Temáticos

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

Construção de Compiladores Aula 3 - Analisador Sintático

ACH2043 INTRODUÇÃO À TEORIA DA COMPUTAÇÃO

Compiladores I Prof. Ricardo Santos (cap 1)

LINGUAGEM LIVRE DE CONTEXTO GRAMÁTICA LIVRE DE CONTEXTO

Há dois sintagmas essenciais: o sintagma nominal (SN), cujo núcleo é um nome ou palavra que seja equivalente; e o sintagma verbal (SV) cujo núcleo é

01/10/2010 SINTAXE PARTE 3. SCC5869 Tópicos em Processamento de Língua Natural. Thiago A. S. Pardo ATRIBUTOS E UNIFICAÇÃO

AULA TEÓRICA RESOLUÇÃO DE PROBLEMAS 4ª

Um Compilador Simples. Definição de uma Linguagem. Estrutura de Vanguarda. Gramática Livre de Contexto. Exemplo 1

Análise Sintática II. Eduardo Ferreira dos Santos. Outubro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 34

Exercícios de múltipla escolha

ELEMENTAR da LÍNGUA PORTUGUESA

Hierarquia de Chomsky Exemplos de gramáticas

DISCIPLINA DE LÍNGUA PORTUGUESA ANO LECTIVO 2007/2008

Artigo definido / artigo indefinido e seu emprego Nome Género Formação do feminino Formação do plural. Unidade 0

Apresentação 11 Lista de abreviações 13. Parte I: NATUREZA, ESTRUTURA E FUNCIONAMENTO DA LINGUAGEM

ESCREVA BEM E INSPIRE PESSOAS. 5 dicas de redação para mudar a imagem do seu clube + dica de ouro

Inteligência Artificial. Prof. Tiago A. E. Ferreira Aula 15 Agentes que Raciocinam Logicamente

Compiladores Analisador Sintático. Prof. Antonio Felicio Netto Ciência da Computação

IBM1088 Linguagens Formais e Teoria da Computação

INE5317 Linguagens Formais e Compiladores AULA 9: Propriedades e Reconhecimento das Linguagens Livres do Contexto

Curso: Letras Português/Espanhol. Disciplina: Linguística. Docente: Profa. Me. Viviane G. de Deus

INE5317 Linguagens Formais e Compiladores. AULA 4: Gramáticas

Agentes Lógicos. Capítulo 7 (online)

Análise Sintática. Eduardo Ferreira dos Santos. Outubro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 18

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores

Capítulo 7 - Agentes lógicos (Agentes baseados em Conhecimento)

Análise Sintática I. Eduardo Ferreira dos Santos. Abril, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 42

INFORMAÇÃO PROVA DE EQUIVALÊNCIA À FREQUÊNCIA Inglês LE I (2 anos) 2016

IV Gramáticas Livres de Contexto

LINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam

Linguagens Livres de Contexto

TÉCNICO EM MANUTENÇÃO E SUPORTE EM INFORMÁTICA FORMA SUBSEQUENTE. Professora: Isabela C. Damke

Lógica Proposicional Sintaxe

Transcrição:

Comunicação Capítulo 22

Sumário Comunicação Gramáticas Análise sintáctica (parsing)

Comunicação Comunicar consiste em trocar informação através da produção e percepção de sinais, pertencentes a um sistema partilhado de sinais convencionais

Comunicação Grande parte dos animais usa sinais para representar mensagens importantes

Comunicação Num mundo parcialmente observável, a comunicação pode ajudar os agentes, pois podem aprender informação que é observada ou inferida por outros agentes

Comunicação Por exemplo, no mundo dos Wumpus um grupo de agentes exploradores pode ganhar (como grupo e como indivíduos) se forem capazes de: Inquirir outros agentes sobre particularidades do mundo Encontraram wumpus algures? Informar sobre o estado do mundo Cheira bem na posição 3 4 Pedir a outros agentes para executar acções Ajudas-me a carregar o ouro? Etc.

Comunicação Um agente pode produzir linguagem: a isto chamamos actos de discurso Enviar um mail, usar linguagem gestual, são tudo actos de discurso

Fundamentos da linguagem Linguagem formal: Conjunto de palavras (concatenação de símbolos terminais), eventualmente infinito Linguagens formais têm definições matemáticas rigorosas e.g. P Q em LP é uma frase; PQ não é Linguagem natural: Português, Inglês, Chinês, Não têm definições rigorosas Objectivo deste capítulo: estudar linguagem natural de um modo formal

Fundamentos da Linguagem Sintaxe / Gramática Conjunto de regras de uma linguagem e.g. se X e Y são expressões válidas, então X+Y é uma expressão válida e.g. Cuidado com o degrau é uma expressão sintacticamente válida em Português. Degrau com cuidado o não é uma expressão válida.

Fundamentos da Linguagem Semântica Significado da linguagem e.g. X+Y denota a soma de X com Y e.g. O que quer dizer Cuidado com o degrau? Quer dizer (interpretação literal) que devemos ter cuidado com um degrau. Mas podem existir outras interpretações...

Fundamentos da Linguagem Pragmática Significado em função do contexto: nova interpretação O que quer dizer Cuidado com o degrau se soubermos que degrau é o nome de um cão?

Modelo de Comunicação

Etapas na Comunicação Intenção: S (speaker) quer informar H (hearer) sobre P (proposition) A Maria quer pedir ao Pedro que abra a porta à sua amiga Berta Geração: S selecciona palavras W (words) para exprimir P no contexto C A Maria escolhe as palavras a usar para fazer o seu pedido Síntese: S emite palavras W A Maria diz: Pedro, por favor, abre a porta à Berta...

Etapas na Comunicação Percepção: H percebe W no contexto C Pedro percebe: Abre a porta aberta Análise: H infere possíveis significados P 1,,P n Pedro fica a pensar o que a Maria quer dizer: abrir a porta aberta ou... Abrir a porta à Berta. Esta fase inclui interpretação sintáctica (parsing), interpretação semântica e interpretação pragmática Desambiguação: H infere significado pretendido P i A porta está fechada e estão à espera da Berta, pelo que o Pedro percebe que a Maria lhe pediu para abrir a porta à Berta Incorporação: H incorpora P i na BC (Base de Conhecimento) Pedro compreende que lhe foi pedido para abrir a porta à Berta

Comunicação: exemplo

Sumário Comunicação Gramáticas Análise sintáctica (Parsing)

Gramática Formal G = (N, T, S0, P) N é o conjunto de símbolos não terminais T é o conjunto de símbolos terminais S0 é símbolo inicial P é um conjunto de regras de produção

Gramática Formal A maior parte dos formalismos gramaticais são baseados na ideia de que certas sequências de palavras formam sequências com diferentes categorias (sintagmas, phrases) que combinados formam frases (S, Sentence) Considerando o formato BNF (Bachus-Naur Form) uma regra de uma gramática poderá ter a forma: S NP VP» S é o símbolo de frase» S, NP e VP são símbolos não terminais» NP, Noun Phrase» VP, Verb Phrase NP Article Name VP Verb

Construção de Gramáticas Léxico: palavras permitidas na linguagem Agrupadas em classes (ou categorias): pronomes, artigos, nomes, verbos, etc. Classes abertas: Não é possível listar todos os elementos ou novos elementos são adicionados frequentemente» Ex: kunami Nomes, verbos, adjectivos, advérbios Classes fechadas: Os seus elementos podem ser enumerados; evolução a longo prazo Pronomes, artigos, proposições, conjunções

Léxico do Wumpus (linguagem 0 )

Gramática do Wumpus

Classificação de gramáticas Gramáticas são classificadas em função da capacidade gerativa (linguagens que podem representar) Supondo,, sequência de símbolos terminais e não terminais A, B símbolos não terminais a, b símbolos terminais As gramáticas regulares têm regras da forma: A B a a B ex: S as a As gramáticas livres de contexto têm regras da forma: A ex: S asb as Sb a As gramáticas sensíveis ao contexto têm regras da forma: A As gramáticas recursivamente enumeráveis não têm restrições nas regras Foi demonstrado que quase todas as línguas naturais podem ser caracterizadas por gramáticas livres de contexto

Avaliação de Gramáticas Linguagem formal L 1 pode diferir da linguagem natural L 2 Ajustar L 2 para ficar semelhante a L 1 é um problema de aprendizagem!

Avaliação de Gramáticas Problemas Supergeração: geração de frases incorrectas Me go Boston Subgeração: não é possível gerar frases que estão correctas I think the wumpus is smelly

Sumário Comunicação Gramática Análise sintáctica (Parsing)

Análise sintáctica: parsing Processo que gera uma árvore de parsing para os dados de entrada PARSE( I shoot the wumpus, 0, S) 0 é o léxico S é o símbolo inicial Parsing (básico) Top-down Começar com S como raiz da árvore; gerar árvore com palavras como folhas Bottom-up Começar com palavras como folhas

Parsing top-down Estado inicial [S:?] Função sucessores Selecciona o nó aberto mais à esquerda na árvore Procura regras cujo símbolo do lado esquerdo corresponda a esse nó Por cada regra cria um sucessor onde? é substituído pelo lado direito da regra correspondente Teste objectivo Folhas correspondem exactamente aos dados de entrada Nenhuma palavra dos dados de entrada está em aberto ou é desconhecida

Parsing top-down Exemplo Considerando a gramática do Wumpus, temos S -> NP VP S Conjunction S Para qualquer input, o primeiro passo de um algoritmo top-down é: [S: [NP:?][VP:?]] [S: [S:?][Conjunction:?][S:?]] Nota: [A:?] representa um símbolo não terminal ainda em aberto

Parsing bottom-up Estado inicial: Lista de palavras nos dados de entrada Função sucessores Procura emparelhar lado direito de uma regra com cada posição na lista Teste objectivo: Estado com uma única árvore com S na raiz

Parsing bottom-up Exemplo: I shoot the wumpus [I,shoot,the,wumpus] Dado que na gramática temos Pronoun I Cria-se a entrada [[Pronoun: I],shoot,the,wumpus]... [S:[NP:[Pronoun: I]][VP:[VP:[Verb:shoot]][NP:[Article:the][Noun:wumpus]]]]

Árvore de parsing Após uma análise top-down ou bottom-up, se a frase em análise pertencer à linguagem aceite pela gramática em causa, é criada pelo menos uma árvore de análise/parsing.

Árvore de Parsing (construída por um algoritmo bottom-up)

Árvore de Parsing (construída por um algoritmo bottom-up)

Árvore de Parsing (construída por um algoritmo bottom-up)

Árvore de Parsing (construída por um algoritmo bottom-up)

Árvore de Parsing (construída por um algoritmo bottom-up)

Parsing canto-esquerdo Caso particular de parser top-down, que opera da esquerda para a direita Inicialmente é feita uma recolha de todos os símbolos não terminais directamente ligados aos terminais que podem aparecer no canto esquerdo, numa análise feita a partir de S Ex: S -> NP VP VP NP -> Article Noun Pronoun VP -> Verb VP NP A partir de S consigo obter à esquerda: Article, Pronoun, Verb Assim evitamos ciclos infinitos derivados de regras X -> X

Análise sintáctica Quer a análise bottom-up quer a top-down têm os seus problemas: A bottom-up pode estar a construir sub-árvores que não levam ao símbolo inicial A top-down pode estar a construir sub-árvores que não levam aos símbolos terminais O parser canto esquerdo sempre resolve este problema Em qualquer dos casos podem haver redundâncias nos cálculos, pois sub-árvores que já foram construídas uma vez, voltam a sê-lo

Extensão do formalismo gramatical Considere-se a seguinte gramática para um pequeno fragmento do Português: Frase SN SV // SN sintagma nominal, SV verbal SN nome det nome // det determinante SV vi vt SN // vi verbos intransitivos, vt transitivos nome sumo Maria det a vt bebe vi fugiu vi fugiram

Extensão do formalismo gramatical Fazem parte desta gramática frases como: A Maria bebe sumo A Maria fugiu Mas também: A Maria bebe a sumo A Maria fugiram Casos como A Maria bebe a sumo e A Maria fugiram não são correctos porque: No primeiro caso não há concordância em género entre o determinante a (feminino) e o nome comum sumo (masculino) No segundo caso não há concordância em número entre o sujeito A Maria (singular) e o predicado fugiram (plural).

Extensão do formalismo gramatical Uma maneira de resolver este problema é: Adicionar novas categorias: Por exemplo, nome passa a nome-fs, nome-ms, nome-fp, nome-mp f/m para feminino/masculino, s/p para singular/plural E reescrever as regras: Por exemplo, SN nome det nome passa a SN-ms nome-ms det-ms nome-ms SN-mp nome-mp det-mp nome-mp Etc. Só que esta abordagem multiplica o número de regras e símbolos e torna a gramática muito complicada

Extensão do formalismo gramatical Uma maneira alternativa consiste em estender o formalismo gramatical (augmented grammars): Por exemplo, SN nome det nome passa simplesmente a SN(NUM, GEN) nome(num, GEN) det(num, GEN) nome (NUM, GEN) Indicando que: O nome e o determinante têm de concordar em género e número O SN tem NUM como número e GEN como género.

Conclusões A área de comunicação (processamento de língua natural) é uma importante área do ramo de IA. Sintaxe, semântica, pragmática são alguns dos ingredientes em jogo. A ambiguidade da língua natural faz com que formalismos/técnicas usadas para línguas formais não tenham grande sucesso. São inúmeras as aplicações nesta área: Sistemas de pergunta/resposta Sistema de diálogo Sistemas de tradução automática Sumarização...

Slides adaptados a partir de: www.inf.ed.ac.uk/teaching/courses/aipp/lectur e_slides/11_ps_dcgs.ppt www.inf.ed.ac.uk/teaching/courses/aipp/lectur e_slides/10_dcg.ppt http://www.cse.nd.edu/courses/cse571/www/p resentations/chap22.pdf