INQUER Interacção Pessoa-Máquina em Linguagem Natural

28
INQUER Interacção Pessoa-Máquina em Linguagem Natural Módulo I Análise Sintáctico-Semântica Catarina Ribeiro

description

INQUER Interacção Pessoa-Máquina em Linguagem Natural. Módulo I Análise Sintáctico-Semântica. Catarina Ribeiro. Tópicos. Inquer WordNet.PT Módulo I - Análise Sintáctico-Semântica Tratamento da Base de Dados Lexical Implementação do analisador gramatical. INQUER. - PowerPoint PPT Presentation

Transcript of INQUER Interacção Pessoa-Máquina em Linguagem Natural

Page 1: INQUER Interacção Pessoa-Máquina em Linguagem Natural

INQUER Interacção Pessoa-Máquina em Linguagem Natural

Módulo I

Análise Sintáctico-Semântica

Catarina Ribeiro

Page 2: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Tópicos

Inquer

WordNet.PT

Módulo I - Análise Sintáctico-Semântica

Tratamento da Base de Dados Lexical

Implementação do analisador gramatical

Page 3: INQUER Interacção Pessoa-Máquina em Linguagem Natural

INQUER

Desenvolvido no CLG (CLUL)

Objectivo: Desenvolvimento de um Sistema Pergunta-Resposta que

permita interagir em Linguagem Natural com a WordNet.PT

Page 4: INQUER Interacção Pessoa-Máquina em Linguagem Natural

INQUER - Arquitectura Geral

Base de DadosLéxico-Conceptual

(WordNet.PT)

MÓDULO IIMotor de Inferência

MÓDULO IIIGerador

MÓDULO I

Analisador

Pergunta (Português)

Resposta (Português)

Base de DadosLexical

Forma Lógica

Resposta

Forma Lógica

INQUER

Page 5: INQUER Interacção Pessoa-Máquina em Linguagem Natural

WordNet.PT

Base de Dados de Conhecimento Linguístico Rede Léxico-Conceptual

hiperonímia

hiponíminia

{alimento}

{carne, chicha}

{carne picada} ... {carne branca}

Conj. de sinónimos

Conj. de sinónimos

Page 6: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Módulo IAnálise Sintáctico-Semântica

Objectivo Geral: Selecção e modelização de estruturas sintácticas

Construção de um analisador gramatical que: Recebe uma pergunta em LN Analisa-a e Reconhece-a sintacticamente Constrói uma representação semântica para cada

interpretação possível

Page 7: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Módulo IAnálise Sintáctico-Semântica

Especificidades do módulo: Formalismo Sintáctico:

Inspirado no modelo de HPSG(subcategorização representada através de estruturas de traços)

Formalismo Semântico: Linguagem de Lógica de Primeira Ordem + Termos Lambda

Linguagem de Programação Prolog

Page 8: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Módulo I - Arquitectura

Forma Lógica

Pergunta (Expressão em Português)

Base de DadosLéxico-Conceptual

(WordNet.PT)

Base de DadosLexical

Analisador Gramatical

Herança de Traços

Representação Semântica das unidades

lexicais

Regras Lexicais

Regras Sintácticas

Representação Semântica da Expressão

Regras Sintagmáti

cas

Meta-Entradas

Lexicais

Processamento da Pergunta

Page 9: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Base de Dados Lexical

Entradas Lexicais retiradas da WordNet.PT Expressões nominais (ex. cão, planta) Expressões verbais (ex. ladrar, andar)

Entradas Lexicais e Funcionais introduzidas Verbos (ex. ser, ter) Determinantes (ex. o, todos) Preposições (ex. de) Pronomes relativos e interrogativos (ex. que, qual) Nomes (ex. tipo, raça) Conjunções (ex. e) Operador de negação (não)

Page 10: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Base de Dados Lexical

Inclusão de traços morfológicos e semânticos nas entradas lexicais

Necessários para o processamento sintáctico e morfológico

Exemplo: * um vaca

um → [gen: mas; num:sing] vaca → [gen:fem; num:sing, cont:s]

Implementação de um mecanismo de herança de traços utilizando a estrutura hierárquica da WordNet.PT

Page 11: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Base de Dados Lexical

Formato das Entradas Lexicais

cat(FSem,Ltraços) ---> [Lex].

cat - Categoria

Fsem - Forma Semântica

Ltraços - Lista de traços

Lex - Unidade Lexical

Page 12: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Exemplos de Entradas Lexicais

Exemplos de entradas lexicais animal

vaca

n(’animal',[num:sing,gen:mas,cont:s,abst:n,anim:s, ser_vivo:s, hum:n])---> [animal].

n(’vaca',[num:sing,gen:fem]) ---> [vaca].

Utilizando o mecanismo de herança de traços

n(’vaca',[num:sing,gen:fem,cont:s,abst:n,anim:s,ser_vivo:s,hum:n]).

Page 13: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Pré-Processamento da Pergunta

Verificação da existência do ponto de interrogação (?)

Conversão da string introduzida numa lista de unidades lexicais

Tratamento de contracçõesExemplo: do → de + o

Page 14: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Pré-Processamento da Pergunta

Reconhecimento do Léxico (através da Base de Dados Lexical)

Identificação de lexicalizações não atómicas As fatias douradas são comida?

[[as,‘fatias douradas’,são,comida],

[as,fatias,douradas,são,comida]]

O gato persa é um animal ?

[[o,‘gato persa’,é,um,animal]]

Page 15: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Meta – Entradas Lexicais

Motivação: Adicionam às entradas lexicais informação necessária à aplicação de

regras sintácticas e semânticas

].Restrições [ListaLtraços)^ Semântica, cat(Forma

Semântica) çãoRepresenta,

LGap :gap

LComps:comp

LSpr:spr

LTraços,elex(cat,

Esquema Geral

Economia do sistema

Page 16: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Meta – Entradas Lexicais

Meta-Entrada para determinantes indefinidos

Exemplo: um gato mia?

Num)].num,aços,extrai(Ltr

_),exist,:tipoaços,emento(Ltr[retira_elLtraços)^Palavra,det(

Q)) & PX,Num,d(Palavra,Q)^(X^P)^(X^ ,

:gap

:comp

:spr

Ltraços,elex(det,

(Palavra = um; algum)

Page 17: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Regras Lexicais

Motivação: Desdobram Meta-Entradas Lexicais permitindo generalizações

importantes

Semântica) çãoRepresenta,

:gap

LComps:comp

LSpr:spr

Ltraços,elex(Cat,

Semântica) çãoRepresenta,

LComps :gap

:comp

LSpr:spr

Ltraços,elex(Cat,

Economia do sistema

Esquema Geral

Page 18: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Regras Lexicais

Regra Lexical para o gap de complemento

Exemplo: Os membros que o gato tem são patas?

P)Y^X^,

:gap

)Y_,,_,r(C,:comp

:spr

Ltracos,elex(v,

P)X^ ,

)Y,_,_,,C( r :gap

:comp

:spr

Ltraços,elex(v,

Page 19: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Fenómenos Linguísticos

Concordância núcleo - especificador (género e número)

Construções com Orações relativas restritivas (de sujeito e complemento)

Coordenações

Negação frásica

Inversão de sujeito (verbo “existir”)

Construções com predicados de um ou dois lugares

Page 20: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Regras Sintagmáticas

Número de Regras: 10

Níveis:

Sintáctico Regras sintácticas que reconhecem sintagmas

Semântico Regras semânticas que constroem representações de sintagmas

Page 21: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Regras Sintagmáticas

Esquema geral Regra Exemplo

X → Y, X Núcleo - Especificador Os gatos são animais

X → X, Y Núcleo - Complemento ... são animais.

X → X1, ..., Xn Coordenação As aranha e os gatos ...

Page 22: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Regras Sintagmáticas

tes].constituin de Lista [

Semântica) çãoRepresenta,

LGap:gap

LComps:comp

LSpr:spr

,executar a PredicadosLtraços,(Cat,r

Esquema Geral:

Parser Tabular Ascendente

Page 23: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Parser Tabular Ascendente

Melhores resultados com a gramática utilizada

Problemas As regras podem ser chamadas antes de todas as variáveis dos

seus constituintes estarem devidamente instanciadas o que provoca falhas

Solução: Guardar, numa lista, as acções a tomar quando todas as variáveis dos seus constituintes estiverem instanciados

Page 24: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Regras Sintagmáticas

Promoção de X para X'

.Sem),

LGap :gap

,:comp

LSpr, :spr

T,elex(N,

Sem),

LGap :gap

, :comp

LSpr, :spr

,T,r(N,

Page 25: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Exemplo

Os gatos miam? F

“os gatos miam?”

d(o, plu, A, gato(A) > miar( A))

SN SV

“os gatos ” “miam ”

(A C)^d(o, plu, A, gato(A )>C ) D miar(D)

D N’

“os ” “gatos”

(A^F)^(A^C)^d(o, plu, A , F> C) E gato(E)

Page 26: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Demonstração

Page 27: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Em Síntese...

Extracção do léxico da WordNet.PT

Tratamento da base de dados (herança de traços)

Construção e implementação do analisador gramatical

Page 28: INQUER Interacção Pessoa-Máquina em Linguagem Natural

Trabalho Futuro

Desenvolver regras capazes de lidar com: Inversões de sujeito Adjunções de sintagmas adjectivais a N’ Estruturas com complementos causais Estruturas que envolvem comparação

Desenvolvimento do Módulo III-Geração