Buscadores como Google – e há outros, como Bing, DuckDuckGo, etc – são os mais importantes sistemas de informação documental da nossa época. Já são parte intrínseca da Internet e ninguém mais imagina outras formas de navegar pela riqueza da Web sem sua ajuda. Os motores de busca têm crescido em relevância e funcionalidade desde sua primeira aparição nos anos 90.

Antes de explicar como realizar uma busca avançada na Internet, é importante entendermos a anatomia de um buscador, ou o seu motor de busca. Mesmo que básica, a compreensão de sua natureza e de como ele funciona vai nos ajudar a usá-lo melhor. É como um carro, a gente pode dirigi-lo sem conhecer sua mecânica, mas vamos saber aproveitar melhor suas funcionalidades se a conhecermos.

O motor de busca é um sistema de informação documental que aceita dois tipos de entradas:

  • Documentos: No nosso caso, as páginas web, mas não apenas elas, já que os servidores web incluem todo tipo de documentos, como PDFs e planilhas.
  • Necessidades de informação: São as perguntas feitas pelos internautas, os termos buscados.

A saída do sistema é uma lista de links a sites que, presume-se, contenham informação capaz de satisfazer as necessidades do usuário. Claro, se a primeira consulta não gera os resultados esperados, o internauta vai tentar outra vez, usando outros termos ou parametrizando a consulta com a busca avançada.

Estrutura de um motor de busca

Um motor de busca consiste em um conjunto de programas que podem ser divididos em dois grupos principais:

  • Sistema de exploração: também conhecido como “rastreador” (em inglês, spyder ou crawler)
  • Sistema de recuperação de informação: em inglês, information retrieval system. Compreende o sistema de indexação, que se ocupa da análise dos documentos carregados na Web e dos critérios que permitem as consultas ao motor, e o sistema de consulta, que é a parte visível do motor de busca, a interface com o usuário

O rastreador tem a missão de descobrir e copiar sites e outros documentos dos servidores da World Wide Web. Para isso, percorre todos os sites rastreáveis (ao criar um site, seu webmaster pode optar por não indexá-lo, ou seja, não torná-lo “buscável”) e guarda no seu índice de dados (o índex dos motores de pesquisa) a cópia destas mesmas páginas. Para manter a informação atualizada, o motor de busca repete esta indexação com uma frequência variável e avalia cada site por nível de importância.

Quando alguém efetua uma pesquisa (search query) no motor de busca, ele vai procurar no seu índice e devolver todos os resultados que contenham as palavras (keywords) da pesquisa efetuada.

Por exemplo: se você procurar por “motores de busca” no Google, ele vai procurar páginas que tenham estas palavras em sites que ele considere importantes.

Mas como é que um buscador considera a informação de determinado site importante? Como ele ranqueia a informação?

Não é num passe de mágica. O motor de pesquisa tem um algoritmo de relevância que vai ditar a ordem na qual os resultados aparecem.

Cálculo de relevância

Os distintos documentos obtidos pelo sistema de recuperação de informação apresentam um grau de relevância que determina sua posição na página de resultados. Imagine se os resultados das nossas buscas tivessem como critério apenas a ordem alfabética ou cronológica, será que economizaríamos o tempo desejado com os resultados da consulta? Os motores de busca atuais combinam diferentes critérios para determinar a relevância de uma página:

  • Internos ou intrínsecos: se referem principalmente a aspectos estatísticos ou de frequência da ocorrência da palavra-chave da pergunta. Ou seja, páginas que tenham em maior frequência a palavra-chave serão mais relevantes. Outros aspectos, como a palavra aparecer entre tags em seu código HTML ou fazer parte da URL da página, também outorgam maior importância relativa a ela.
  • Externos ou de popularidade: os critérios externos se referem, principalmente, a links externos. Quanto mais linkada uma página, mais importância ela obtém no buscador.

Cada motor de busca tem seus próprios conjuntos de critérios – que guiam seus algoritmos – e os pesos atribuídos a cada um deles para gerar o ranking de resultados considerado mais relevante para o usuário.

O motor de busca do Google

O rastreamento e a indexação do Google estabelecem a forma como o buscador reúne e organiza as informações da Web. O índice do Google ultrapassa os 100.000.000 de gigabytes e exigiu mais de um milhão de horas de computação para ser construído. Saiba mais sobre os fundamentos neste vídeo.

Existem milhares ou milhões de páginas com informações úteis para uma consulta típica. Os algoritmos são os processos e fórmulas de computador que transformam as perguntas em respostas. Atualmente, os algoritmos do Google utilizam mais de 200 sinais ou “pistas” diferentes para adivinhar o que o usuário realmente procura. Esses sinais incluem coisas como os termos em websites, a atualização do conteúdo, a região do usuário e o PageRank.

O processo de pesquisa e a página de resultados envolvem muitos componentes, e o Google atualiza constantemente suas tecnologias e sistemas para oferecer resultados melhores. Muitas dessas mudanças incluem inovações interessantes, como o Painel do conhecimento ou o Google Instant. Neste vídeo, funcionários do Google falam sobre a evolução do buscador.

Busca Avançada

Qualquer um hoje é capaz de fazer uma busca simples na Internet. Os buscadores têm se esforçado, seguindo o exemplo do Google, em oferecer opções de busca realmente simples. Basta escrever uma palavra na caixa de busca e dar “enter”.

Contudo, algumas vezes, para buscas mais especializadas ou para buscas em um contexto profissional ou acadêmico, é necessário acudir à busca avançada para obter resultados de qualidade.

Durante anos, a busca avançada para recuperar informação esteve baseada na chamada lógica booleana, incluindo os motores de busca de primeira geração (AltaVista, por exemplo). Como veremos, o conhecimento da lógica booleana continua sendo útil, já que a maioria dos buscadores e das bases de dados a utiliza de alguma forma, mas sua importância tem diminuído nos últimos anos devido aos modernos sistemas de cálculo de relevância.

Não obstante, muitas vezes o que diferencia um profissional de um apaixonado pelo mundo digital é precisamente este conhecimento.

Linguagens de interrogação

“Linguagem de interrogação” (query language) é um termo técnico herdado das primeiras bases de dados. Atualmente é trivial colocar um ou mais termos em um buscador, fazer a consulta e obter resultados relevantes. Chamar essa operação de “linguagem de interrogação” soa desnecessariamente técnico. Contudo, para que essa operação tenha se tornado simples, foi preciso um grande desenvolvimento conceitual e tecnológico.

No passado, era necessário que o usuário explicitasse de forma muito detalhada o que queria encontrar usando a lógica booleana, em quais campos queria encontrar, como gostaria que fosse a resposta, por quais campos queria que ela fosse ordenada, etc. Um sistema de busca era tão bom quanto a sua linguagem de interrogação. Embora os documentos estivessem bem indexados, se o usuário não expressasse com a máxima precisão o que queria, o sistema gerava uma grande quantidade de ruído.

Tudo isso foi minimizado atualmente pelo uso de sistemas de relevância, que eram praticamente inexistentes antes do ano 2000. Por isso, embora não tenha deixado de existir, a linguagem de interrogação passa hoje despercebida. O seu papel não mudou, mas os modernos sistemas de busca fazem com que ele não seja notado.

O papel da linguagem de interrogação é transformar uma necessidade de informação, que por definição é algo intangível, em uma fórmula bem configurada que um robô possa interpretar.

Então, o primeiro passo é sempre a necessidade de informação do usuário, ele precisa partir de um ASK (anomalous state of knowledge, em inglês, o que significa um estado mental de carência de informação que se busca solucionar). A linguagem natural dos usuários nem sempre é utilizável diretamente como linguagem de interrogação, para isso ela deve cumprir algumas regras e, neste caso, os operadores booleanos assumem essa função.

No caso do Google, a linguagem de interrogação assume papéis incríveis e que talvez você nem imagine. Aqui uma lista (não exaustiva) deles:

  • calculadora aritmética (experimente colocar 9*2 na caixa de busca. Depois experimente algo mais complexo, que só o seu primo que passou por Cálculo na faculdade vai entender: sqrt(cos(x))*cos(300x)+sqrt(abs(x))-0.7)*(4-x*x)^0.01, sqrt(6-x^2), -sqrt(6-x^2) from -4.5 to 4.5)
  • conversor de moedas (experimente colocar 100 brl em euro na caixa de busca)
  • conversor de medidas (experimente colocar 100kg em libras na caixa de busca)
  • relógio mundial (experimente colocar horário em Bogotá na caixa de busca)
  • listagem de obras de autores e cantores (experimente colocar a expressão livros de Machado de Assis na caixa de busca)
  • sistema de respostas diretas (experimente colocar moeda da Jordania na caixa de busca)
  • jogos estúpidos da sua infância (experimente colocar a expressão “atari breakout” na caixa de busca do Google Imagens)

Lógica Booleana

A  lógica booleana teve origem com o matemático irlandês do século XIX Georges Boole, e é considerada uma das maiores contribuições à matemática até hoje.

O objetivo original de Boole foi desenvolver um sistema de cálculo que se pudesse aplicar às proposições, tal como dispomos de um sistema de cálculo aplicável às operações aritméticas. Estas, dispõem de uma série de operadores (soma, subtração, etc) que permitem operar com números. Boole propôs o uso dos operadores AND, OR e NOT para operar com proposições. Ou seja, ele criou estruturas algébricas que trabalhavam a dualidade verdadeiro/falso de afirmações através dos operadores lógicos, criando o que viria a ser a lógica proposicional.

Aplicada às buscas avançadas, a lógica booleana pode ser vista na tabela a seguir:

 

Booleana

simples

prevenção AND

alcoolismo

prevenção OR

alcoolismo

prevenção NOT

alcoolismo

Principais operadores: AND, OR, NOT.

AND: Exige que ambas as palavras estejam presentes no documento. Em alguns motores de busca, como o Google, um espaço em branco equivale a um AND.

OR: Ao menos uma das palavras deve estar presente. Também podem estar presentes as duas.

NOT: A primeira palavra deve estar presente, sempre que não apareça a segunda palavra. Nesse caso, todos os documentos que tenham a palavra “prevenção”, mas não tenham a palavra “alcoolismo”.

Booleana complexa (álcool OR

anfetaminas)

AND

(tratamento OR

prevenção)

Combina três ou mais palavras-chave com dois ou mais operadores booleanos. Os parênteses podem ser utilizados para delimitar de forma exata a ordem e o alcance de cada operador.

Nesse caso: primeiro se cria o conjunto 1 com todos os documentos que têm a palavra “álcool”, a palavra “anfetaminas” ou ambas. Depois se cria o conjunto 2 com todos os documentos que têm a palavra “tratamento”, a palavra “prevenção” ou ambas. Por último, a interseção entre os conjuntos um e dois, expressa pelo operador AND, produz o resultado final.

 

A principal vantagem da busca booleana é sua capacidade de expressar com quase exatidão as características concretas da necessidade de informação do usuário. A tabela a seguir compara uma busca com vários termos expressa sem o uso de operadores booleanos explícitos, e outra com o uso deles.

No primeiro caso, perde-se totalmente a semântica da pergunta do usuário, enquanto que no segundo ela se traduz com maior exatidão. A necessidade de informação é a seguinte: “cinema e literatura para crianças e adolescentes”.

 

Tipo de interrogação Significado lógico
Não booleana

(sem operadores

explícitos)

cinema literatura crianças

adolescentes

Documentos que contenham todas e cada uma das palavras. Não capta a necessidade real do usuário. Perdem-se, por exemplo, documentos que tratem somente de cinema e adolescentes. Também os que tratam só de cinema e crianças, etc., já que pedimos exatamente que todas as quatro palavras estejam presentes.
Booleana (com

operadores

explícitos)

(cinema OR literatura)

AND (crianças OR

adolescentes)

Capta exatamente a necessidade de informação do usuário. Por exemplo, um documento sobre crianças e literatura será recuperado, mesmo que não fale nem de adolescentes, nem de cinema, etc., e essa é a necessidade do usuário.

 

Como se pode ver, apenas a forma booleana capta de forma adequada a semântica desta necessidade de informação, ou seja, é capaz de evitar tanto o ruído (informação não desejada) quanto o silêncio (informação não recuperada).

A principal desvantagem é que a álgebra booleana é, de fato, antiintuitiva e intimidatória para o usuário final. Por exemplo, se olhamos para a representação da necessidade de informação anterior, “cinema e literatura para crianças e adolescentes”, a maior parte dos usuários a traduziria para a lógica booleana assim: cinema AND literatura AND crianças AND adolescentes. Isso pelo simples procedimento de traduzir todos os “e” gramaticais em AND lógicos (inclusive o “para”), o que é incorreto.

Operadores de pesquisa no Google

Operadores de pesquisa funcionam como os operadores booleanos, são palavras que podem ser adicionadas às pesquisas para ajudar a restringir os resultados. Não se preocupe em memorizar cada operador, pois você também pode usar a página de Pesquisa avançada para criar essas pesquisas.

  • Use site: pra buscar apenas resultados em um site específico:
  • Use filetype: pra buscar por tipos específicos de arquivos, como .pdf ou .xls:

  • Use o símbolo (de subtração) para eliminar resultados que contenham palavras nas quais você não tem interesse:

 

  • Use o símbolo + para mostrar apenas resultados contendo as duas palavras (lembrando que o Google lê o espaço como um + também):

 

Observação: ao fazer uma pesquisa usando operadores ou sinais de pontuação, não adicione espaços entre o operador e os termos de pesquisa. Uma pesquisa por site:nytimes.com funcionará, mas por site: nytimes.com, não.

Outros sinais de pontuação também podem ajudar a restringir a busca:

  • Use “” (aspas) quando quiser obter resultados com as palavras ou a expressão exatamente na mesma ordem do que está dentro das aspas. Use isso apenas se você estiver procurando por uma palavra ou frase exata. Caso contrário, você excluirá muitos resultados úteis por engano.
  • Use * (asterisco) como um marcador para termos desconhecidos ou caracteres curinga. Exemplo: “melhor um * na mão do que dois *”
  • Separe os números por .. (dois pontos) sem espaços para ver resultados que contenham números dentro de um intervalo. Exemplo: câmera R$50..R$100

Para ter resultados ainda mais relevantes, experimente combinar diferentes operadores e parâmetros de busca. Por exemplo: “desenvolvimento sustentável” site:ufrj.br filetype:pdf.

 

Buscas com o Google Imagens

O Google Imagem é hoje o serviço mais utilizado para pesquisas de arquivos fotográficos. Mas encontrar uma foto com padrões específicos para um determinado tema pela busca simples pode dar trabalho. Por isso podemos fazer uso da pesquisa avançada do Google Imagens.

O primeiro passo é acessar o Google e inserir o termo desejado na caixa de busca da página inicial do Google e clicar em seguida em “imagens”, no menu logo abaixo da caixa de busca. Você também pode acessar direto o endereço http://images.google.com e efetuar a busca.  Depois de fazer essa busca simples, vamos filtrar os resultados fazendo uso da busca avançada.

Uma opção é usar as Ferramentas de Pesquisa, que já oferece os filtros mais básicos pra sua busca. Outra é utilizar a opção de Busca avançada no ícone de configurações (veja as duas imagens abaixo).

Você pode, a partir da busca avançada:

  • Selecionar imagens de um site ou domínio específico
  • Selecionar apenas imagens sem restrições ou licenças para o uso e compartilhamento.
  • Filtrar imagens por um tamanho específico (Grandes – Imagens superiores a 1024 x 768 pixels, Médias – Imagens de 400 x 300 pixels até 1024 x 768 pixels, Ícones – Imagens de 50 x 50 pixels a 256 x 256 pixels)
  • Filtrar imagens apenas de um país especifico
  • Filtrar imagens por cor
  • Filtrar imagens por formato de arquivo: JPG, PNG,GIF, BMP, SVG e diversos outros formatos
  • Filtrar imagens por tipo: rosto, foto, clip art, desenho linear e animação
  • Filtrar imagens por proporção, entre elas: alta, panorâmica, quadrada ou larga.
  • Filtrar imagens por frases especificas
  • Excluir termos da sua pesquisa (como na pesquisa avançada, usando o operador -)
  • Filtra palavras relacionadas

Também é possível utilizar a busca invertida de imagens, partindo de uma imagem para buscar informações sobre ela, encontrar fotos e figuras parecidas ou publicações em sites que se relacionem com a imagem. Para isso, você deve fazer o upload de um arquivo ou arrastar e soltar uma imagem na caixa de busca, ou ainda inserir uma URL que de uma foto ou figura no campo disponível ao clicar no ícone abaixo.

Referências

CABEZAS, ÁL.; TORRES, D. y DELGADO, E. (2009). “Ciencia 2.0: Herramientas e implicaciones para la actividad investigadora”. El Profesional De La Información 18, (1):72-9.

CHU, H. (2003). Information representation and retrieval in the Digital Age. Medford: Information Today.

CODINA, L. Ciencia 2.0 (http://www.mindomo.com/view.htmm=d4d1f77be0d04af0804c719038144de8), diagrama y directorio. 2009-2014.

FOUST, J. C. (2009). Online journalism: Principles and practice for the web. 2.a edición. Scottsdale: Holcomb Hataway.

GIUSTINI, D. y BARSKY, E. “A look at Google Scholar, PubMed, and Scirus: comparisons and recommendations” (https://ejournals.library.ualberta.ca/index.php/jchla/article/viewFile/22437/16666).

MILSTEIN, S.; BIERSDORFER, J. D. y MACDONALD, M. (2006). Google: The Missign Manual. Sebastopol: O`Reilly.