Post on 16-Jan-2016
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
Desenvolvido no CLG (CLUL)
Objectivo: Desenvolvimento de um Sistema Pergunta-Resposta que
permita interagir em Linguagem Natural com a WordNet.PT
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
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
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
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
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
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)
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
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
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]).
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
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]]
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
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)
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
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,
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
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
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 ...
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
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
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,
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)
Demonstração
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
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