30 pontos por xguru 2021-04-05 | 1 comentários | Compartilhar no WhatsApp

Um texto que explica passo a passo os fundamentos de um mecanismo de busca, sem recorrer a técnicas especiais, usando o conjunto completo de dados de títulos + resumos da Wikipédia em inglês

  1. Criar o objeto Abstract para preparar os dados

  2. Criar o índice: tokenização e filtragem

→ minúsculas

→ radicalização (stemming)

→ excluir as 25 palavras mais usadas no inglês (the, be, to, of, a..)

  1. Criar uma busca básica

  2. Adicionar recurso de relevância: Term Frequency (quantas vezes a palavra aparece no resumo)

  3. Adicionar Inverse Document Frequency: número de outros documentos ligados a este documento

Código: https://github.com/bartdegoede/python-searchengine

1 comentários

 
xguru 2021-04-05

Busca difusa de strings que também oferece suporte à busca por consoantes iniciais do coreano: https://pt.news.hada.io/topic?id=3631

Embora a base técnica e a implementação sejam totalmente diferentes deste texto, achei uma leitura interessante por explicar as partes básicas em detalhes, passo a passo.

Existem várias bibliotecas Python que implementam de forma mais completa recursos relacionados a busca textual completa/modelagem de tópicos/indexação de documentos/similaridade.

O SQLite tem uma extensão separada de Full-Text Search.