DevSecOps

24 abr, 2008

Máquina de busca em linguagem natural

100 visualizações
Publicidade

Fazer buscas na web, para a grande maioria dos usuários, é sinônimo de fazer buscas no Google e no Yahoo!, por exemplo. Consultas normalmente são sinônimas de palavras-chave, que sintetizam o que se deseja procurar. Resultados, por sua vez, são representados por uma série de links que levam (ou não) à resposta esperada.

Entretanto, há mecanismos de busca que procuram facilitar esse procedimento, tentando aproximar-se da forma como os humanos se comunicam. São aqueles baseados em processamento de linguagem natural, pouco populares na internet. Sem dúvida, a tarefa de compreensão e geração automática da linguagem humana não é fácil, principalmente quando se trata do amplo universo da web. Entretanto, há aqueles que se aventuram nesse ramo, como fez o Powerset , o Ask, o Lexxe, o Hakia (disponível em português), entre outros. O principal objetivo comum a esses sites de busca é, dada uma pergunta em linguagem natural, fornecer respostas diretas e claras com base em conhecimento semântico, ao invés de um conjunto de links relacionados.

Também com esse objetivo foi desenvolvido o True Knowledge. Sua diferença dos demais (o que motivou este post 🙂 é que ele engloba outras características interessantes. O buscador True Knowledge é uma máquina de busca em linguagem natural do tipo pergunta/resposta e, além disso:

  • permite que o usuário acrescente informações, sem a necessidade de conhecimentos técnicos de computação;
  • é baseado em um esquema de classes, relações e atributos, que fornece uma representação mais fiel do mundo real.

Em outras palavras, ele visa representar o conhecimento do mundo de forma clara e acessível para humanos e compreensível para máquinas.

A consistência semântica do conhecimento é mantida de duas formas: avaliação do sistema e do usuário. A primeira permite que fatos sejam marcados como falsos se eles são contradizentes com outros fatos. Essa mesma permissão é dada ao usuário, cuja informação é avaliada de acordo com sua reputação e histórico.

Adicionar conhecimento ao True Knowledge não é complicado, basta responder a uma série de questões. Por exemplo, procurado por “Tropa de Elite”, não encontrei resultados relacionados ao filme brasileiro. Resolvi adicionar essa informação.

Inicialmente foi perguntado a que classe “Tropa de Elite” pertence, no caso, à classe filme. Em seguida, foram requeridas informações mais específicas sobre o tipo de filme, além de uma descrição mais detalhada de “Tropa de Elite” (um filme brasileiro de 2007 sobre o BOPE – Batalhão de Operações Policiais Especiais). Depois, foi fornecida a opção de adicionar novas formas de se dizer “Tropa de Elite”, para tal só acrescentei seu título em inglês (The Elite Squad). Após submeter o ID do termo ([tropa de elite]), foram apresentados os fatos coletados pelas minhas informações:

Depois de confirmar esses fatos, acrescentei o link da Wikipedia para o termo “Tropa de Elite” e informações adicionais, como ano de criação, diretor, URL do site oficial e ator principal. No caso do ator principal, como não havia informações sobre Wagner Moura, também adicionei esse conhecimento, de forma simples e rápida.

Como visto, a base de conhecimento do True Knowledge é facilmente incrementada por qualquer usuário. Devido ao seu esquema bem estruturado de informação, é possível que se obtenha respostas para perguntas que não são compreendidas pela maioria dos mecanismos de busca, mesmo aqueles baseados em semântica, como os citados no início deste post. Por exemplo, perguntado ao True Knowledge: “Quantos anos tem a Torre Eiffel?”, a resposta encontrada foi a seguinte:

A mesma pergunta feita no Powerset, Ask, Lexxe ou Hakia leva a uma série de links relacionados, os quais deverão ser pesquisados até que se encontre a resposta correta. O mesmo ocorre para perguntas do tipo: “Madonna estava casada em 2001?”, “Quantas patas tem uma borboleta?”, “Quem são os netos da Rainha Elizabeth II?”, “Alguma cobra é herbívora?” e (pasme) “Que horas são em Nova York?”. Simples consultas no True Knowledge para essas perguntas levarão diretamente às respostas procuradas.

Além disso, o True Knowledge pode ser tratado como uma máquina de busca comum, pesquisando por palavras-chave (keywords). Dependendo da classe relacionada à consulta, informações específicas são apresentadas, como no caso de pessoas, lugares, empresas e filmes, por exemplo. Neste caso, os resultados não diferem muito em relação aos mecanismos de busca padrões.

Na sua página inicial, é apresentado um vídeo com duração de 7 minutos mostrando detalhes sobre a arquitetura e tecnologia True Knowledge e de como dados são adicionados. Para assisti-lo, http://www.trueknowledge.com/technology/video/ (em inglês).

O site ainda está em fase beta, aceitando um número controlado de usuários. O procedimento para a geração da base de conhecimento é lento e talvez ainda demore até que se tenha uma base considerável para que o site se expanda para o público em geral. Mesmo quando isso acontecer, é provável que a abrangência do True Knowledge na web seja infinitamente inferior à do Google, por exemplo. Entretanto, a qualidade dos resultados tenderá a ser muito melhor. Dependendo do domínio e do objetivo, o mecanismo de busca mais adequado poderá ser escolhido. Até lá, se conseguir seu login no True Knowledge, vale a pena brincar com suas possibilidades!