ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO
Departamento de Engenharia de Computação e Sistemas Digitais
Implementação de buscas
utilizando Linguagem Natural
através de Algoritmos Adaptativos
Alencar Jr. Cerqueira
André Martini Diniz
Carolina Dorta
Paulo Shindi Kuniyoshi




Motivação
Objetivos
Vídeo 1: Complexidade PLN(Mostrar todas as combinações possíveis)
Aspectos Conceituais
▪ Linguagem Natural
▪ Técnicas de Processamento de Linguagem Natural
▪ Autômato de Pilha estruturado
▪ Adaptatividade
▪ Rede semântica
 Implementação
▪ Vídeo 2: Funcionamento (Montar árvore sintatica, rede semantica)
▪ Escolha do método / técnica(Metodologia)
▪ Sistema
▪ Modo de funcionamento / Modo de aprendizado / Mode de utilização
▪ Arquitetura: Simplificada / Detalhada
▪ Analisador Morfológico: Jspell / Dicionário IBLINAA
▪ Analisador Sintático
▪ Ações semânticas


Limitação das buscas por palavras-chaves
Busca por semântica
 Técnicas de Processamento de Linguagens Naturais

Técnicas:
 Simbólica
 Estatística
 Híbrida
Comparação técnicas PLN
/
Aquisição de dados
Simbólico
Menos dados para gerar um
sistema maduro
Estatístico
Connectionist
Mais dados para gerar sistema
maduro
Criação de regras
Possuem critérios
Pouco especificadas
Teoria ou Modelo
Baseada em regras
Parametrizado
Robustez
Vulnerável aos ruídos
Flexibilidade
Não adaptável
Mais tolerantes a ruídos
Mais indicados para tratar
textos irrestritos

Extensão do Autômato Finito para ter aninhamento
sintáticos
 Chamada de Sub-máquina + Pilha


APE Adaptativo
Redes semânticas
• O usuário insere um artigo no sistema
Inserção Artigo
Inserção gradual
de novas
estruturas
PréProcessamento
• O sistema realiza um pré-processamento que
identifica informações relevantes em estruturas de
frases conhecidas pelo analisador da linguagem
Rede
Semântica
• O sistema armazenará as informações retiradas da
etapa anterior em uma rede semântica que
orientará a busca destas informações
Inserção gradual
de novas
estruturas
Estrutura de
Pergunta
• O usuário seleciona uma estrutura de pergunta
reconhecida pelo sistema
Pergunta
• Neste momento o usuário faz a pergunta em si e
o sistema irá buscar a resposta dentro de sua
rede semântica
Resposta
• O sistema retorna a resposta para o usuário, bem
como a fonte de onde esta resposta foi retirada e
um link para acessar este documento
Analisador Sintático
Algorítmo
Adaptativo
Rede
Semântica
IBLINAA
View
View
...
View
Controller
Controller
...
Controller
Analisador
Morfológico
Interface de Comunicação
Analisador Sintático Adaptativo
Model
história
biologia
...
BDs
Figura 5- Diagrama Classes módulo Análise Sintática

Jspell : Framework de análise morfológica mais utilizado na língua
portuguesa

Dicionário IBLINAA: Construção para suprir as deficiências do Jspell
Figura 5- Diagrama Classes módulo Análise Sintática



Autômato de pilha estruturado
Gramática simplificada do Português pelo professor João
José Neto baseada no livro do Luft
Gramática projetada pelo grupo
Classes do módulo de Análise Sintática

Sub-máquinas
Figura 9- Máquina V

Estrutura semântica do Banco de Dados

Exemplo estruturado em rede semântica
Quem
Exemplo de pergunta: Quem ofereceu café?
Para as perguntas iniciadas por Quem, deve-se seguir a seguinte estratégia de busca:
•
Identifica-se o verbo: ofereceu
•
Identifica-se o objeto (conceito 2): café
•
Identifica-se a Ligação Semântica cujo conceito 2 seja café e o verbo seja ofereceu -> José.
•
Identifica-se o texto de Sujeito a que o conceito 2 se refere -> O lindo José.
Resposta: O lindo José.
Figura 5- Diagrama Classes módulo Análise Sintática



Teste das sentenças (Sub-máquinas)
Teste Adaptatividade(Aprendizado)
Teste para extração de informação(Busca)

Testes já realizados
Caminho
Exemplo: Submáquina Det
Frase
OK?
Det(0123)
Todos os meus
OK
Det(0123)
Primeiro o meu
OK
Det(0123)
Primeiro aquele seu
OK
Det(0123)
Todo aquele nosso
OK
Det(0123)
Todos os primeiros
OK
Det(0123)
Primeiro o terceiro
OK
Det(0123)
Primeiro esse terceiro
OK
Det(0123)
Todos estes primeiros
OK
Det(012)
Todas as
OK
Det(012)
Todos nossos
OK
Det(012)
Primeiro as
OK
Figura 5- Diagrama Classes módulo Análise Sintática
Figura 5- Diagrama Classes módulo Análise Sintática

Gramática Luft vs Gramática IBLINAA
 Comparação árvore entre Luft e IBLINAA



Desempenho das „pétalas“
Mostrar os casos de reconhecimento
Pergunta / Resposta
Figura 5- Diagrama Classes módulo Análise Sintática






Adaptatividade
Dicionário IBLINAA
Gramática da língua portuguesa
Estrutura Semântica
Reconhecimento de estruturas da língua portuguesa
Pesquisa na Internet
Figura 5- Diagrama Classes módulo Análise Sintática

Vantagens desta técnica:
 Flexível a outras gramáticas
▪ Fácil de reconhecer sentenças de outras linguagens naturais
 Modular
▪ Fácil de mudar as sub-máquinas
 „Inteligente“
▪ Adaptativo
 …

Laboratório de Linguagens e Técnicas Adaptativas da USP
http://www.pcs.usp.br/~lta/union/index.php?cp=4

World Wide Web Consortium (W3C)
http://www.w3.org/

DBpedia
http://dbpedia.org/About
Teste de Reconhecimento
Texto:Coelhinho esperto
Tempo de Processamento :
4 minutos
Quantidade de frases:
50
Quantidade de frases reconhecidas:
Possibilidade de reconhecimento com pequenas
modificações :
5
+ 5 frases
Não reconhecimento por:
Gramática não reconheceu (com possibilidade de
mudanças)
20
Gramática não reconheceu (mudanças complicadas)
12
Período composto
29
Erro no Jspell (verbo)
6
Erro no Jspell (outras classes)
8
Erro do Analisador Sintático
0
( Não foram contabilizados os períodos
compostos aqui )
Download

Rede semântica