Skip to content
rafapolo edited this page Jun 10, 2012 · 53 revisions

Consulta-Natural

  • A linguagem natural, tal como falamos, permite manifestar e navegar numa infinidade de significados.
  • O conhecimento explícito é um grafo entre informações, que por sua vez, é constituída por dados.
  • Um arquivo no padrão RDF (Resource Description Framework), recomendado pela W3C, tal como o HTML, é uma modelagem conceitual de informações em grafo – um repositório de conhecimento.

Consulta-Natural mapeia a relação entre as palavras de uma pergunta com as palavras do repositório, interpretando em parte a semântica da consulta.

pergunta: De que banda é o álbum Nevermind?
resposta: Nirvana.

pergunta: De que cor é o S da Perdigão?
resposta: Não sei.

Quais albuns da banda “The Beatles”?
…[lista]…

Como?

Para tal, a ontologia mapeada no .RDF deve seguir como a descrição de fatos.
Fato, nesse contexto, é uma triade sujeito-predicado-objeto.

Supondo um repositório cujos recursos descritos são álbuns, todos os sujeitos dos fatos são álbuns.
As afirmações dos fatos nesse repositório parecem:

  • Nevermind ano 1991
  • In Rainbows banda Radiohead
  • Warning link megaupload.com/xyz
  • Nevermind banda Nirvana

Assim:
pergunta: “Qual o ano do album Nevermind?”
>> sujeito = Nevermind > predicado = ano > objeto = x
resposta: 1991

Portanto, toda consulta válida deve satisfazer dois termos entre o sujeito-predicado-objeto. O termo sem
correspondência é o termo-pergunta a ser descoberto entre os fatos do RDF.

Arquivos

consulta_natural.rb é o interpretador que gera consultas ao RDF a partir do texto da pergunta.
console_consulta.rb é um console UNIX-like para as consultas em linguagem natural. (exemplo console)
agente_conversa.rb permite usar o interpretador como um usuário no GTalk/Jabber.


Referência
Natural Language Query System for RDF Repositories ( ler )
Nokia Research Center Cambridge, 2007
Proceedings of the Seventh International Symposium on Natural Language Processing, SNLP



Rafael Polo jun.2010
Clone this wiki locally
You can’t perform that action at this time.