An alise sint atica { Parsing

Post on 03-Jan-2022

13 views 0 download

Transcript of An alise sint atica { Parsing

Analise sintatica – ParsingIBM1088 Linguagens Formais e Teoria da Computacao

Evandro Eduardo Seron Ruizevandro@usp.br

Departmento de Computacao e MatematicaFFCLRP

Universidade de Sao Paulo

Baseado em Jurafsky&Martin

E.E.S Ruiz (DCM – USP) POS 1 / 59

Pensamento do dia

Benjamin Franklin

We are all born ignorant, but one must work hard to remain stupid.

BF, polıtico, cientista e inventor norte-americano, 1706–1790.

E.E.S Ruiz (DCM – USP) POS 2 / 59

Conteudo

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 3 / 59

Motivacao

GLC e estruturas sintaticas

Estudamos as GLC

GLC e uma gramatica formal

Topicos de GLC podem ser adaptadas para textos livres

GLC atraves de regras podem determinar ou analisar estruturasgramaticais

E.E.S Ruiz (DCM – USP) POS 4 / 59

Introducao

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 5 / 59

Introducao

Analise sintatica (AS)

Parsing

O processo de analisar uma sequencia de sımbolos (palavras outermos) para determinar sua estrutura gramatical de acordo com umadeterminada gramatica

Resultado: arvore sintatica

F

N

Joao

SV

V

toca

N

piano

E.E.S Ruiz (DCM – USP) POS 6 / 59

Introducao

Analise sintatica (AS)

Parsing

O processo de analisar uma sequencia de sımbolos (palavras outermos) para determinar sua estrutura gramatical de acordo com umadeterminada gramatica

Resultado: arvore sintatica

F

N

Joao

SV

V

toca

N

piano

E.E.S Ruiz (DCM – USP) POS 6 / 59

Introducao Recordando. . .

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 7 / 59

Introducao Recordando. . .

AS: Analise componencial

Trabalha sobre unidades menores internas a frase, osconstituintes

Constituintes Exe: sintagmas e categorias gramaticais

Sintagmas Grupos de palavras em torno de um nucleo sintaticodominante

Exemplos

Nucleo=verbo: sintagma verbal (SV=VP)Nucleo=substantivo, adjetivo, pronome: sintagma nominal(SN=NP)

Categorias gramaticais: verbo, substantivo. . .

E.E.S Ruiz (DCM – USP) POS 8 / 59

Introducao Recordando. . .

Estrutura arborea de uma frase

F

SN

Det

o

N

Joao

SV

V

comprou

SN

Q

todos

SN

Det

os

N

livros

E.E.S Ruiz (DCM – USP) POS 9 / 59

Introducao Recordando. . .

recordando. . . Constituintes em todos lugar

Os constituintes sao modulares

Podem surgir em varios pontos das frases

Analisar a sentenca sob o ponto de vista de constituintes e umaforma de otimizar a analise

todos os livros do Joao foram doadosEu nao entendo como todos os livros foram doados?

Constituintes podem ser e expandidos

Eu nao entendo como todos aqueles livros maravilhosos foramdoados?

E.E.S Ruiz (DCM – USP) POS 10 / 59

Introducao Recordando. . .

GLC e Analise sintatica

Analise sintatica (AS) e um ponto central no ensino degramatica

AS e essencial em CC: analise sintatica das LP

AS e baseada numa gramatica

Gramatica e um conjunto de regras para a composicao de frases

E.E.S Ruiz (DCM – USP) POS 11 / 59

Introducao Recordando. . .

Onde estao as regras?

Pronominais, por Oswald de Andrade

De-me um cigarro

Diz a gramatica

Do professor e do aluno

E do mulato sabidoMas o bom negro e o bom brancoDa Nacao BrasileiraDizem todos os diasDeixa disso camaradaMe da um cigarro

E.E.S Ruiz (DCM – USP) POS 12 / 59

Introducao Recordando. . .

GLC e Analise sintatica

Gramaticas livres de contexto (GLC) de sao gramaticasdeclarativas de LP

Mas as GLC nao especificam como fazer o parsing

Existem diversos tipos de parsers e algoritmos

Dois grandes grupos:

Top-down parsersBottom-up parsers

E.E.S Ruiz (DCM – USP) POS 13 / 59

Introducao Recordando. . .

AS: utilidades

Verificacao gramatical em processadores de texto

Estagio intermediario para Analise Semantica

Importante para:

Traducao automaticaSistemas de Question AnsweringExtracao de informacao

E.E.S Ruiz (DCM – USP) POS 14 / 59

Parsing

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 15 / 59

Parsing

AS: o problema

F

SN

Det

o

N

Joao

SV

V

comprou

SN

Q

todos

SN

Det

os

N

livros

Encontrar todas as arvores sintaticas com raıs em F.Problema de busca, passeio em arvore

E.E.S Ruiz (DCM – USP) POS 16 / 59

Parsing

AS: distincoes

Aplicacoes diferentes, parsers distintos

Parsers para linguagens naturais sao distintos de parsers paracompiladores de linguagens formais.

Grande parte da teoria de aplicacao de parsers para compiladores naoe adequada para PLN

E.E.S Ruiz (DCM – USP) POS 17 / 59

Parsing

AS: Objetivo

S

NP

John

VP

V

loves

NP

Mary

Encontrar todas as arvores sintaticas com raıs em S .

Pode haver ambiguidade

Condicoes de contorno:1 As folhas da arvore devem ser as palavras da frase2 Arvore deve ter uma raız S

E.E.S Ruiz (DCM – USP) POS 18 / 59

Parsing

Uma pequena gramatica + lexico (corrigir)

Gramatica(regras de producao)

S → NP VPS → Aux NP VPS → VPNP → Det NOM(inal)NOM → NoumNOM → Noum NOMNP → ProperNoumVP → VerbVP → Verb NP

Lexico

Det → that | this | aNoum → book | flight | meal | moneyVerb → book | include | preferAux → doesPrep → from | to | onProperNoum → Huston | TWANOM → NOM PP

E.E.S Ruiz (DCM – USP) POS 19 / 59

Parsing Top-down parsing

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 20 / 59

Parsing Top-down parsing

Top-down: basico

Busca por uma arvore sintatica a partir do no S

Explora todos os espacos de busca, os ramos da arvore

Assume que a partir de S ele encontrar as folhas no lexico

Busca por todas as arvores possıveis

E.E.S Ruiz (DCM – USP) POS 21 / 59

Parsing Top-down parsing

Top-down: inıcio

Parte do no S e busca todas suas constituintes (sintagmas)derivados

Tenta expandir estes sintagmas

Busca as derivacoes mais a esquerda da cadeia de entrada

Do inıcio da frase para o final

Veja figura a seguir

E.E.S Ruiz (DCM – USP) POS 22 / 59

Parsing Top-down parsing

Top-down: expansao de arvores

Abordagem top-down buscando analisar Book that flight.

So a expansao da quinta arvore da camada mais baixa (VP→ VerbNP) casara com a frase Book that flight.

E.E.S Ruiz (DCM – USP) POS 23 / 59

Parsing Top-down parsing

Top-down: comentarios

LL-parser (com ou sem recursao) e o tipo de top-down maiscomum

LL-parser interessantes para LP

Pode ter O(exp)1 em GLC ambıguas

Escalabilidade e muito ruim

Gramaticas mais amplas: qual arvore escolher?

Gramaticas mais rıgidas: muitas arvores derivadas, muitamemoria

GLC com 10 regras podem surgir 592 arvores de derivacao

1Complexidade de tempo exponencialE.E.S Ruiz (DCM – USP) POS 24 / 59

Parsing Top-down parsing

Top-down: comentarios

LL-parser (com ou sem recursao) e o tipo de top-down maiscomum

LL-parser interessantes para LP

Pode ter O(exp)1 em GLC ambıguas

Escalabilidade e muito ruim

Gramaticas mais amplas: qual arvore escolher?

Gramaticas mais rıgidas: muitas arvores derivadas, muitamemoria

GLC com 10 regras podem surgir 592 arvores de derivacao

1Complexidade de tempo exponencialE.E.S Ruiz (DCM – USP) POS 24 / 59

Parsing Bottom-up parsing

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 25 / 59

Parsing Bottom-up parsing

Bottom-up: basico

Forma mais antiga de AS (Victor H. Yngve, U. Chicago, 1955)

AS inicia pela cadeia de entrada e tenta gerar arvore sintaticaate S aplicando as regras de producao

Sucesso se consegue chagar ao S

E.E.S Ruiz (DCM – USP) POS 26 / 59

Parsing Bottom-up parsing

Bottom-up: na pratica

Abordagem top-down buscando analisar Book that flight.

Problema: book pode ser verbo ou substantivo

Gera duas possıveis arvores de derivacao

Bottom-up busca o casamento das regras a partir do lado direitodas regras de producao

Diferente do top-down que busca o lado esquerdo das regras

E.E.S Ruiz (DCM – USP) POS 27 / 59

Parsing Bottom-up parsing

Bottom-up: expansao de arvores

Abordagem top-down buscando analisar Book that flight.

E.E.S Ruiz (DCM – USP) POS 28 / 59

Parsing Bottom-up parsing

Bottom-up: primeira expansao

Abordagem top-down buscando analisar Book that flight.

E.E.S Ruiz (DCM – USP) POS 29 / 59

Parsing Bottom-up parsing

Bottom-up: segunda expansao

Abordagem top-down buscando analisar Book that flight.

E.E.S Ruiz (DCM – USP) POS 30 / 59

Parsing Bottom-up parsing

Bottom-up: derivacoes finais

Abordagem top-down buscando analisar Book that flight.

E.E.S Ruiz (DCM – USP) POS 31 / 59

Parsing Bottom-up parsing

Bottom-up: comentarios

Se a gramatica tem multiplas regras que comecam com omesmo sımbolo

mas tem producoes diferentes

Entao podemos usar bottom-up determinıstico

Top-down nao e adequado sem backtracking2

2Correlacionar com a busca em profundidade.E.E.S Ruiz (DCM – USP) POS 32 / 59

Parsing Bottom-up parsing

Bottom-up: + comentarios

LR parser e um tipo de bottom-up parser que analisa GLCdeterminıstica em tempo linear

LR criado por Donald Knuth

LR e um acronimo: le cadeia pela esquerda, regras de producaopela direita

LR sao determinısticos. Nao usam backtracking

Existem variacoes do LR que usam diversas estrategias

E.E.S Ruiz (DCM – USP) POS 33 / 59

Parsing Combinando as duas abordagens

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 34 / 59

Parsing Combinando as duas abordagens

Top-down + bottom-up: Introducao

Ambos, top-down e bottom-up, tem suas vantagens edesvantagens

Combinacao de ambas abordagens e uma estrategia valida

Segredo: escolher a melhor caracterıstica de cada uma

Combinacao escolhida:

Estrategia de controle: Top-downFiltragem: aspectos do Bottom-up

E.E.S Ruiz (DCM – USP) POS 35 / 59

Parsing Combinando as duas abordagens

Busca em profundidade

Explorando o potencial do Top-down. . .

Usar a busca em profundidade para explorar cada ramo da arvore

Buscar uma sub-arvore consistente a cada ramo

Se sub-arvore for inconsistente, backtrack

Deixar o bottom-up fazer a filtragem (casamento) das folhas

E.E.S Ruiz (DCM – USP) POS 36 / 59

Parsing Combinando as duas abordagens

Opcoes da busca em profundidade

Arvore de derivacao nao sao especificadas por esta combinacao

Duas escolhas devem ser feitas:

Qual sub-arvore expandir primeiro (pre-ordem, in-ordem,pos-ordem)Qual a ordem de aplicacao das regras da gramatica

E.E.S Ruiz (DCM – USP) POS 37 / 59

Parsing Combinando as duas abordagens

Opcao: pre-ordem

Fazer a busca em profundidade a partir da sub-arvore mais aesquerda

Casa com a ordem de entrada das palavras na cadeia decaracteres

Quanto as regras: aplica-las na ordem textual da gramatica

E.E.S Ruiz (DCM – USP) POS 38 / 59

Parsing Combinando as duas abordagens

Derivacao top-down depht-first (1/4)

Analisar Does this flight include a meal.

E.E.S Ruiz (DCM – USP) POS 39 / 59

Parsing Combinando as duas abordagens

Derivacao top-down depht-first (2/4)

Analisar Does this flight include a meal.

E.E.S Ruiz (DCM – USP) POS 40 / 59

Parsing Combinando as duas abordagens

Derivacao top-down depht-first (3/4)

Analisar Does this flight include a meal.

E.E.S Ruiz (DCM – USP) POS 41 / 59

Parsing Combinando as duas abordagens

Derivacao top-down depht-first (4/4)

Analisar Does this flight include a meal.

e segue. . .E.E.S Ruiz (DCM – USP) POS 42 / 59

Parsing Combinando as duas abordagens

Comentarios: Derivacao top-down depht-first

Notem que, a medida que a primeira palavra e aceita um‘apontador’ muda para a segunda palavra

Se a analise for bem sucedida. . .

A palavra corrente deve ser a primeira palavra nas regras deproducao que irao derivar a proxima sub-arvore

O parser nao pode considerar uma palavra que nao esteja naleft-corner tree

Recorde a figura a seguir:

E.E.S Ruiz (DCM – USP) POS 43 / 59

Parsing Combinando as duas abordagens

Derivacao top-down depht-first (2/4)

Analisar Does this flight include a meal.

E.E.S Ruiz (DCM – USP) POS 44 / 59

Parsing Combinando as duas abordagens

Left-corner rule

Considernado A e B nao terminais e α terminal

A producaoA→∗ Bα

tem B no left-corner se existe uma derivacao de A tal quecomeca com B .

E.E.S Ruiz (DCM – USP) POS 45 / 59

Parsing Combinando as duas abordagens

Recordando as regras de producao

Retornando para a frase: Does this flight include a meal

S → NP VP

S → Aux NP VP

S → VP

Aqui e facil ver que Does so se encaixa na terceira regra e naonas demais

E.E.S Ruiz (DCM – USP) POS 46 / 59

Parsing Combinando as duas abordagens

Recordando as regras de producao

Caso analisassemos a frase: prefer a bagel

VP

Verb

prefer

NP

Det

a

Noum

bagel

A regra S → VP deveria anteceder as demais

E.E.S Ruiz (DCM – USP) POS 47 / 59

Parsing Problemas da abordagem combinada

1 Motivacao

2 IntroducaoRecordando. . .

3 ParsingTop-down parsingBottom-up parsingCombinando as duas abordagensProblemas da abordagem combinada

E.E.S Ruiz (DCM – USP) POS 48 / 59

Parsing Problemas da abordagem combinada

Problemas da abordagem combinada

Mesmo com a abordagem top-down incrementada, o parser aindasofre de 3 problemas

1 Recursao a esquerda

2 Ambiguidade

3 Parsing repetitivo das sub-arvores

E.E.S Ruiz (DCM – USP) POS 49 / 59

Parsing Problemas da abordagem combinada

Recursao a esquerda

Gramaticas recursivas a esquerda: Formalmente. . .

A→∗ αAβ

A→∗ ε

Para A nao terminal e α e β terminais.

Contem um nao-terminal para qual existe uma derivacao mais aesquerda que inclui o proprio sımbolo

Regra introduz uma recursao a esquerda que pode levar a umpercurso infinito e nunca fazer um backtrack

E.E.S Ruiz (DCM – USP) POS 50 / 59

Parsing Problemas da abordagem combinada

Recursao a esquerda: exemplo

NP → NP PP

VP → VP PP

S → S and S

Reparem que a primeira regra de producao habilita a recursao aesquerda

S

NP VP

S

NP

NP PP

VP

S

NP

NP

NP PP

PP

VP

E.E.S Ruiz (DCM – USP) POS 51 / 59

Parsing Problemas da abordagem combinada

Recursao a esquerda: Resolvendo o problema

Ideia e eliminar a recursao rescrevendo a gramatica originaltransformado-a numa gramatica fracamente nao recursiva a esquerda

Com recursao

A→ A β | α

Sem recursao

A→ αA′

A′ → βA′ | ε

Problema

A gramatica rescrita pode nao mais representar o modo natural deexpressao da lıngua.

E.E.S Ruiz (DCM – USP) POS 52 / 59

Parsing Problemas da abordagem combinada

Recursao a esquerda: Resolvendo o problema

Ideia e eliminar a recursao rescrevendo a gramatica originaltransformado-a numa gramatica fracamente nao recursiva a esquerda

Com recursao

A→ A β | α

Sem recursao

A→ αA′

A′ → βA′ | ε

Problema

A gramatica rescrita pode nao mais representar o modo natural deexpressao da lıngua.

E.E.S Ruiz (DCM – USP) POS 52 / 59

Parsing Problemas da abordagem combinada

Ambiguidade

Novo tipo de ambiguidade: ambiguidade estrutural

Gramatica associa mais de uma arvore de derivacao a uma frase

Tres tipos se destacam:

Ambiguidade por qualificacao, aposto, ligacaoAmbiguidade por coordenacaoAmbiguidade por sintagmas nominais

Vejamos um exemplo de ambiguidade por qualificacao:

E.E.S Ruiz (DCM – USP) POS 53 / 59

Parsing Problemas da abordagem combinada

Ambiguidade estrutural: exemplo

Analisando a ambiguidade em: I once shot an elephant in mypajamas.

Sentido: While I was wearing my pajamas, I once shot an elephant.

E.E.S Ruiz (DCM – USP) POS 54 / 59

Parsing Problemas da abordagem combinada

Ambiguidade estrutural: exemplo

Analisando a ambiguidade em: I once shot an elephant in mypajamas.

Sentido: I once shot an elephant that was in my pajamas.

E.E.S Ruiz (DCM – USP) POS 55 / 59

Parsing Problemas da abordagem combinada

Ambiguidade: solucao

Sintagma preposicional e uma grande fonte de ambiguidade

SP= locucao prepositiva. Modificador de qualquer outrosintagmaExe: Ontem eu e Maria caminhamos pela cidade

Desambiguar: problema difıcil!

Tarefa exige conhecimento estatıstico e/ou semantico

Possibilidade: usar GLC probabilıstica

E.E.S Ruiz (DCM – USP) POS 56 / 59

Parsing Problemas da abordagem combinada

Parsing repetitivo das sub-arvores

Considere S=a flight from NYC to Chicago on Delta

O parse ideal e a frase inteira, mas

Como usamos a abordagem top-down, depth-first, left-to-right

Algumas sub-arvores falham no parse

Segundo a ordem, as primeiras regras de producao fomentamarvores que eventualmente nao cobrem todos os termos

Varios backtrack, os mesmos sintagmas sao derivados variasvezes

E.E.S Ruiz (DCM – USP) POS 57 / 59

Parsing Problemas da abordagem combinada

Outros parsers

Nao estao no escopo desta aula

Parser (algoritmo) de Earley (1970)

Programacao dinamica (reparticao do problema)Melhorias: recursao a esquerda, ambiguidade e parsingrepetitivoPior caso: O(N3), N numero de palavras

Cocke–Younger–Kasami (CYK) parser

Trabalha sobre forma normal de Chomsky (FNC)Pior caso: O(N3 × |G |), N numero de palavras, |G | tamanhoda FNC

Top: Parsers probabilısticos

E.E.S Ruiz (DCM – USP) POS 58 / 59

Finalizando. . .

Continuem estudando

Leiam as notas de aula e os livros texto!

E.E.S Ruiz (DCM – USP) POS 59 / 59