BRPI0614024B1 - Sistema de recuperação de informações e métodos implementado em computador para indexação de documentos com respeito a uma frase e de provimento do respectivo sistema - Google Patents

Sistema de recuperação de informações e métodos implementado em computador para indexação de documentos com respeito a uma frase e de provimento do respectivo sistema Download PDF

Info

Publication number
BRPI0614024B1
BRPI0614024B1 BRPI0614024-6A BRPI0614024A BRPI0614024B1 BR PI0614024 B1 BRPI0614024 B1 BR PI0614024B1 BR PI0614024 A BRPI0614024 A BR PI0614024A BR PI0614024 B1 BRPI0614024 B1 BR PI0614024B1
Authority
BR
Brazil
Prior art keywords
phrase
documents
document
phrases
list
Prior art date
Application number
BRPI0614024-6A
Other languages
English (en)
Inventor
L. Patterson Anna
Original Assignee
Google Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=36741037&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=BRPI0614024(B1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Google Llc filed Critical Google Llc
Publication of BRPI0614024A2 publication Critical patent/BRPI0614024A2/pt
Publication of BRPI0614024B1 publication Critical patent/BRPI0614024B1/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/313Selection or weighting of terms for indexing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

sistema de recuperação de informações e métodos implementados em computador para indexação de documentos com respeito a uma frase e de provimento do respectivo sistema. um sistema de recuperação de informações usa frases para indexar, recuperar, organizar e descrever documentos. são identificadas frases que predizem a presença de outras frases em domentos. os documentos são os indexados de acordo com suas frases incluídas. o indice de documento é particionado em indices múltiplos, incluindo cm índice primário e um índice secundário. o índice primário armazena listas de afixação de frases com documentos ordenados em classificação de relevância. o índice secundário armazena documentos em excesso a partir das listas de afixação em ordem de documentos.

Description

Campo da Invenção
A presente invenção relaciona-se com um sistema de recuperação de informações para indexação, busca e classificação de documentos num corpo em grande escala, como a Internet.
Antecedentes da Invenção
Os sistemas de recuperação de informações, geralmente chamados de motores de busca, são, agora, uma ferramenta essencial para encontrar informações em corpos em grande escala, diversos e crescentes, como a Internet. Geralmente, os motores de busca criam um índice que relaciona documentos (ou “páginas”) com as palavras individuais presentes em cada documento. Um documento é recuperado em resposta a uma questão contendo um certo número de termos da questão, tipicamente com base em ter algum número de termos da questão presentes no documento. Os documentos recuperados são, então, classificados de acordo com outras medidas de estatística, tais como a frequência da ocorrência dos termos da questão, o domínio do hospedeiro, a análise de link e similares. Os documentos recuperados são, então, apresentados ao usuário, tipicamente na sua ordem de classificação e
2/47 sem qualquer agrupamento adicional ou hierarquia imposta. Em alguns casos, uma parte selecionada de um texto de um documento é apresentada de modo a prover o usuário de uma vista do conteúdo do documento.
A coincidência “Booleana” direta de termos da questão tem limitações bem conhecidas e, em particular, não identifica documentos que não tenham os termos da questão, mas, têm palavras correlacionadas. Por exemplo, num sistema Booleano típico, uma busca sobre “Pastores australianos” não retornaria documentos acerca de outros cachorros de pastoreio como os Border Collies que não têm os termos exatos da questão. Em vez disso, é provável que esse sistema recupere também e classifique em alto grau documentos que versem sobre a Austrália (e não têm nada a ver com cachorros) e documentos sobre “pastores” em geral.
O problema aqui é que os sistemas convencionais indexam documentos com base em termos individuais, em vez de sobre conceitos. Os conceitos são freqüentemente expressos em frases, tais como “Pastor australiano”, “Presidente dos Estados Unidos” ou “Festival de Filmes Sundance”. Na melhor das hipóteses, alguns sistemas anteriores indexarão documentos com respeito a um conjunto predeterminado e muito limitado de frases “conhecidas”, que são tipicamente selecionadas por um operador humano. A indexação de frases é tipicamente evitada por causa dos requisitos computacionais e de memória percebidos para identificar todas as frases possíveis de, digamos, três, quatro ou cinco ou mais palavras. Por exemplo, na suposição de que quaisquer cinco palavras pudessem constituir uma frase e um corpo grande teria pelo menos 200.000 termos únicos, haveria aproximadamente 3,2 x 1026 frases possíveis, claramente mais do que qualquer sistema existente poderia armazenar na memória ou de outra manipular programaticamente. Um problema adicional é que as frases entram continuamente e deixam o léxico em termos de seu uso, muito mais freqüentemente do que novas palavras individuais são inventadas. Novas frases estão sempre sendo
3/47 geradas, a partir de fontes tais como a tecnologia, as artes, eventos mundiais e a lei. Outras frases declinam de uso com o passar do tempo.
Alguns sistemas de recuperação de informações existentes tentam proporcionar a recuperação de conceitos usando padrões de coocorrência de palavras individuais. Nestes sistemas, uma busca sobre uma palavra, tal como “Presidente” recuperará também documentos que têm outras palavras que aparecem freqüentemente com “Presidente”, tais como “Branca” e “Casa”. Embora esta abordagem possa produzir resultados de busca tendo documentos que são conceitualmente correlacionados ao nível de palavras individuais, tipicamente não captura relações tópicas que sejam inerentes entre as frases de co-ocorrência.
Consequentemente, existe a necessidade de um sistema e metodologia de recuperação de informações que possa compreensívelmente identificar frases num corpo em grande escala, indexar documentos de acordo com frases, buscar e classificar documentos de acordo com as suas frases e proporcionar encacheamento (clustering) crescente e informações descritivas sobre os documentos.
Outro problema com os sistemas convencionais de recuperação de informações é que conseguem indexar apenas uma parte relativamente pequena dos documentos disponíveis na Internet. É atualmente estimado que existem mais de 200 bilhões de páginas na Internet hoje. Todavia, até os melhores motores de busca indexam apenas de 6 a 8 bilhões de páginas, perdendo, assim, a maioria das páginas disponíveis. Existem várias razões para a capacidade de indexação limitada dos sistemas existentes. Mais significativamente, os sistemas típicos contam com uma variação de um índice invertido que mantém para cada termo (como discutido acima) uma lista de cada página em que o termo ocorre, junto com informações de posição que identificam a posição exata de cada ocorrência do termo na página. Esta combinação de indexação de termos individuais e indexação de informações posicionais exige um
4/47 sistema de armazenamento muito grande.
Um problema adicional com muitos sistemas de recuperação de informações usados para buscas na Internet é a sua incapacidade de arquivar páginas que mudam com o passar do tempo. Convencionalmente, a maioria dos motores de busca da Internet só armazena as informações de relevância para uma instância corrente (ou versão) de uma dada página e atualizam estas informações cada vez que a página é reindexada. Como resultado, uma dada busca apenas retorna as versões atuais das páginas que satisfazem a questão. Os usuários são incapazes, como resultado, de buscar instâncias anteriores das páginas ou páginas que eram atuais num intervalo de datas específicas. Também os motores de busca provavelmente não usam versões nem informações de relevância de datas correlacionadas igualmente, quando avaliam questões de buscas ou apresentam resultados de busca.
Conseqüentemente, é desejável proporcionar um sistema de recuperação de informações que possa indexar efetivamente dezenas de bilhões e, por fim, mais de 100 bilhões de páginas de conteúdo, sem os requisitos de armazenamento significativo dos sistemas existentes.
Sumário da Invenção
Um sistema e uma metodologia de recuperação de informações usam frases para indexar, buscar, classificar e descrever documentos na coleção de documentos. O sistema está adaptado para identificar frases que têm uso suficientemente frequente e/ou distinto na coleção de documentos para indicar que são “válidos” ou frases “boas”. Desta maneira, podem ser identificadas frases de palavras múltiplas, por exemplo, frases de quatro, cinco ou mais termos. Isto evita o problema de ter de identificar e indexar cada frase possível resultante de todas as sequências possíveis de um dado número de termos.
O sistema é ainda adaptado para identificar frases que são correlacionadas umas com as outras, com base na capacidade de uma
5/47
Figure BRPI0614024B1_D0001
frase de predizer a presença de outras frases num documento. Mais especificamente, é usada uma medida de predição que relaciona a taxa de co-ocorrência real de duas frases com uma taxa esperada de coocorrência das duas frases. O ganho de informação, como a relação da taxa de co-ocorrência real com a taxa de co-ocorrência esperada, é uma dessas medidas de predição. Duas frases são relacionadas onde a medida de predição excede um limite predeterminado. Nesse caso, a segunda frase tem um ganho de informação significativo com respeito à primeira frase. Semanticamente, frases relacionadas serão aquelas que são geralmente usadas para discutir ou descrever um dado tópico ou conceito, tal como Presidente dos Estados Unidos” e Casa Branca”. Para uma dada frase, as frases relacionadas podem ser ordenadas de acordo com a sua relevância ou significado com base nas respectivas medidas de predição.
Um sistema de recuperação de informações indexa documentos na coleção de documentos pelas frases válidas ou boas. Para cada frase, uma lista de afixação identifica os documentos que contêm a frase. Além disso, para uma dada frase, é usada uma segunda lista, vetor ou outra estrutura para armazenar os dados que indicam qual das frases relacionadas com a frase dada está também presente em cada documento que contém a frase dada. Desta maneira, o sistema consegue identificar prontamente não só que documentos contêm que frases em resposta à questão da busca, mas, que documentos também contêm frases que são relacionadas com frases de questões e, deste modo, mais provável que sejam especificamente sobre os tópicos ou conceitos expressos nas frases da questão.
O sistema de recuperação de informações está também adaptado para usar as frases quando busca documentos em resposta a uma questão. A questão é processada para identificar quaisquer frases que estejam presentes na questão, para recuperar as listas de afixação associadas para as frases da questão e as informações das frases relacio6/47 <λΎ nadas. Além disso, nalgumas instâncias, o usuário pode introduzir uma frase incompleta numa questão de busca, tal como “Presidente do”. As frases Incompletas como estas podem ser identificadas e substituídas por uma extensão de frase, tal como “Presidente dos Estados Unidos”. Isto ajuda a assegurar que a busca mais provável do usuário seja de fato realizada.
Outro aspecto da presente invenção é a capacidade de indexar um número extremamente grande de documentos, na ordem de cem bilhões ou mais, usando uma estrutura de índice múltiplo. Numa modalidade, são providos um índice primário e um índice secundário. O índice primário armazena dados de índice para frases, com um número limitado de documentos indexados para cada frase. Para uma frase particular, os dados de índice para os documentos são armazenados em ordem de classificação da relevância dos documentos para a frase. Esta disposição de armazenamento é preferentemente tanto lógica como física (isto é, como os dados são armazenados nos dispositivos de armazenamento subjacente). Onde mais do que o número limitado de documentos inclui uma frase particular, os dados de índice para estes documentos restantes são armazenados no índice secundário, mas, aqui ordenados por número de documento em vez de por classificação de relevância, e recuperados, por exemplo, usando métodos de tipo separa-junta.
Por exemplo, o índice primário pode ser estruturado para armazenar entradas de documento de 32k para cada frase e o índice secundário estruturado para armazenar quaisquer entradas adicionais de documentos para mais documentos para além de 32k que contêm a frase. Para obter as entradas de documentos para o índice primário, os documentos são marcados quanto à relevância, com respeito à frase, e ordenados por classificação pela sua pontuação de relevância. Alternativamente, os documentos podem ser ordenados por classificação por várias características de documento úteis para a análise de relevância. A ordenação por classificação para as entradas do documento é usada para
7/47 particionar as entradas entre o índice primário e o índice secundário. Onde existe menos do que o número limitado de documentos que contêm a frase, então, todas as entradas são armazenadas no índice primário, novamente em ordem de classificação por relevância. A disposição de indexação possibilita um aumento de dez a quinze vezes na capacidade de armazenamento para o índice e em razão das informações de índice otimizado e um aumento de dez vezes no desempenho do servidor.
Outro aspecto da presente invenção é a capacidade de indexar múltiplas versões ou instâncias de documentos para arquivo. Esta capacidade possibilita que o usuário busque documentos dentro de uma faixa específica de datas e possibilita que informações de relevância relacionadas com a data ou versão sejam usadas na avaliação dos documentos em resposta a uma questão de busca e na organização dos resultados da busca. Numa modalidade, um documento é associado a uma ou mais faixas de datas. Cada faixa de datas é associada com dados de relevância derivados a partir do documento e julgados válidos para o documento durante a faixa de datas. Uma faixa de datas atuais é associada a uma instância atual do documento, a partir da data em que o documento foi indexado mais recentemente. Quando um documento é encontrado durante uma passagem de indexação, é comparado com uma versão prévia para determinar se o documento mudou. Se o documento não mudou, então, os dados de relevância indexados são mantidos. Se o documento mudou, então, a faixa de datas atuais para o documento é fechada e o documento é reindexado e uma nova faixa de datas atuais é estabelecida e associada aos dados de relevância atual.
A presente invenção tem modalidades adicionais em arquiteturas de sistema e software, produtos de programa de computador e métodos implementados por computador e interfaces de usuário e apresentações geradas por computador.
O que precedente são apenas algumas das características
8/47
Figure BRPI0614024B1_D0002
de um sistema e uma metodologia de recuperação de informações com base em frases. Aqueles de capacidade na técnica de recuperação de informações apreciarão que a flexibilidade de generalidade das informações de frases permite uma grande variedade de usos e aplicações em indexação, anotação de documentos, buscas, classificação e outras áreas de análise e processamento de documentos.
Breve Descrição dos Desenhos
A Figura 1 é um diagrama de blocos da arquitetura de software de uma modalidade da presente invenção.
A Figura 2 ilustra um método de identificação de frases em documentos.
A Figura 3 ilustra um documento com uma janela de frase e uma janela secundária.
A Figura 4 ilustra um método de identificação de frases relacionadas.
A Figura 5 ilustra um método de indexação de documentos quanto a frases relacionadas.
A Figura 6 ilustra um método de recuperação de documentos com base em frases.
As Figuras representam uma modalidade preferida da presente invenção para propósitos de ilustração apenas. Uma pessoa qualificada na técnica reconhecerá prontamente a partir da discussão seguinte que podem ser empregadas modalidades alternativas das estruturas e métodos aqui ilustrados sem sair dos princípios da invenção aqui descrita.
Descrição detalhada da Invenção
- Visão Geral do Sistema
Com referência à Figura 1, é mostrada a arquitetura de software de uma modalidade de um sistema de buscas 100, de acordo
9/47 com uma modalidade da presente invenção. Nesta modalidade, o sistema inclui um sistema de indexação 110, um sistema de buscas 120, um sistema de apresentação 130 e um servidor frontal terminal 140.
O sistema de indexação 110 é responsável por identificar frases em documentos e indexar documentos de acordo com as suas frases, acessando vários sítios da Rede 190 e outras coleções de documentos. O servidor frontal terminal 140 recebe questões a partir de um usuário de um cliente 170 e supre essas questões para o sistema de buscas 120. O sistema de buscas 120 é responsável por buscar documentos relevantes para a questão de busca (resultados de busca), incluindo identificar quaisquer frases na questão de busca e, depois, classificar os documentos nos resultados de busca usando a presença de frases para influenciar a ordem de classificação. O sistema de buscas 120 provê os resultados de buscas para o sistema de apresentação 130. O sistema de apresentação 130 é responsável por modificar os resultados de busca incluindo remover documentos quase duplicados e gerar descrições tópicas de documentos e fornecer os resultados de busca modificados de volta para o servidor terminal frontal 140, que supre os resultados para o cliente 170. O sistema 100 inclui ainda um índice primário 150 e um índice secundário 152 que armazena as informações de indexação relativas aos documentos e um armazenamento de dados de frases 160 que armazena frases e informações estatísticas correlacionadas. O índice primário 150 é distribuído através de vários servidores primários 1...M1 e o índice secundário 152 é igualmente distribuído através de vários servidores secundários 1...M2.
No contexto deste Pedido, “documentos” são entendidos serem qualquer tipo de mídia que possa ser indexado e recuperado por um motor de busca, incluindo documentos da Rede, imagens, arquivos de multimídia, documentos de texto, PDFs ou outros arquivos formatados de imagem e assim por diante. Um documento pode ter uma ou mais páginas, partições, segmentos ou outros componentes, conforme apropri10/47 ado ao seu conteúdo e tipo. Equivalentemente, um documento pode ser referido como uma “página”, segundo geralmente usado, para se referir a documentos na Internet. Nenhuma limitação quanto ao âmbito da invenção é implicada pelo uso do termo genérico “documentos”. O sistema de buscas 100 opera num grande corpo de documentos, tal como a Internet e a Rede Mundial, mas, pode ser igualmente usado em coleções mais limitadas, tal como para as coleções de documentos de uma biblioteca ou empreendimentos privados. Num ou outro contexto, será observado que os documentos estão tipicamente distribuídos através de muitos sistemas de computador e sítios diferentes. Sem perda de generalidade, então, os documentos em geral, não importando o formato ou a localização (por exemplo, qual sítio da Web ou base de dados) serão coletivamente referidos como um corpo ou coleção de documentos. Cada documento tem um identificador associado que identifica exclusivamente o documento; o identificador é preferentemente uma URL, mas, podem ser usados também outros tipos de identificadores (por exemplo, números de documento). Nesta revelação, é suposto o uso de URLs para identificar documentos.
II - Sistema de Indexação
Numa modalidade, o sistema de indexação 110 proporciona três operações funcionais primárias: 1) identificação de frases e frases relacionadas, 2) indexação de documentos com respeito a frases e 3) geração e manutenção de uma taxonomia baseada em frase. Aqueles de capacidade na técnica observarão que o sistema de indexação 110 realizará outras funções também em suporte de funções de indexação convencionais e, deste modo, estas outras operações não são mais aqui descritas. O sistema de indexação 110 opera sobre o índice primário 150 e o índice secundário 152 e o repositório de dados 160 de dados de frases. Estes repositórios de dados são melhor descritos abaixo.
- Identificação de Frases
11/47
Figure BRPI0614024B1_D0003
A operação de identificação de frases do sistema de indexação 110 identifica frases “boas” e “ruins” na coleção de documentos que são úteis para indexação e busca de documentos. Num aspecto, frases boas são frases que tendem a ocorrer em porcentagem maior do certa percentagem de documentos na coleção de documentos e/ou são indicadas como tendo uma aparência distinta nesses documentos, tal como delimitado por etiquetas de marcação (markup) ou outros marcadores morfológicos, de formato ou gramaticais. Outro aspecto das frases boas é que são de previsões de outras frases boas e não são meramente sequências de palavras que aparecem no léxico. Por exemplo, a frase “Presidente dos Estados Unidos” é uma frase que prediz outras frases tais como “George Bush” e “Bill Clinton”. Todavia, outras frases não são de previsão, tais como “caíram da escada” ou “auge da manhã”, “fora do azul”, visto que idiomas e coloquialismos como estes tendem a aparecer com muitas outras frases diferentes e não relacionadas. Deste modo, a fase de identificação de frases determina que frases são frases boas e quais são ruins (isto é, carentes na potência de previsão).
Com referência, agora, à Figura 2, o processo de identificação de frase tem as seguintes fases funcionais:
200: Colecionar as frases possíveis e boas, junto com a freqüência e estatísticas de co-ocorrência das frases.
202: Classificar frases possíveis para frases boas ou ruins com base em estatísticas de freqüência.
204: podar a lista de frases boas com base numa medida de previsão derivada a partir das estatísticas de co-ocorrência.
Cada uma destas fases será, agora, descrita em detalhe adicional.
O primeiro estágio 200 é um processo por que o sistema de indexação 110 estabelece um conjunto de documentos na coleção de documentos, fazendo partições repetidas da coleção de documentos com
12/47 ο passar do tempo. Uma partição é processada por passagem. O número de documentos estabelecido por passagem pode variar e é preferentemente de mais ou menos 1.000.000 por partição, É preferível que apenas documentos não previamente estabelecidos sejam processados em cada partição, até que todos os documentos tenham sido processados ou alguns outros critérios de terminação sejam satisfeitos. Na prática, o estabelecimento {crawiling} continua, à medida que novos documentos estão sendo continuamente adicionados à coleção de documentos. As etapas seguintes são tomadas pelo sistema de indexação 110 para cada documento que é estabelecido.
Atravessar as palavras do documento com um comprimento de janela de frase de n, em que n é um comprimento de frase máximo pretendido. O comprimento da janela será tipicamente pelo menos 2 e preferivelmente de 4 ou 5 termos (palavras). De preferência, as frases incluem todas as palavras na janela de frase, incluindo o que de outra forma seria caracterizado como palavras de parada, tais como “uma”, “o, a, os, as” e assim por diante. Uma janela de frase pode ser terminada por um fim de linha, um retorno de parágrafo, uma etiqueta de markup ou outros indícios de mudança no conteúdo ou formato.
A Figura 3 ilustra uma parte de um documento 300 durante uma travessia, que mostra a janela de frase 302 iniciando na palavra “stock? e estendendo-se 5 palavras para a direita, A primeira palavra na janela 302 é a frase candidata i e cada uma das sequências i+1, i+2, i+3, i+4 e i+5 é igualmente uma frase candidata. Assim, neste exemplo, as frases candidatas são; “sfoc/c”, “stock dogs”, “stock dogsfof, “stock dogs for the”, “stock dogs for the Basque”, “stock dogs for the Basque shepherds”.
Em cada janela de frase 302, cada frase candidata é conferida na sua vez para determinar se já está presente na lista de frases boas 208 ou na lista de frases possíveis 206. Se a frase candidata
13/47 não estiver presente na lista de frases boas 208 nem na lista de frases possíveis 206, então a candidata já foi determinada ser ruim” e é pulada.
Se a frase candidata estiver na lista de frases boas 208, como entrada g, então, a entrada do índice 150 para a frase g é atualizada de modo a incluir o documento (por exemplo, a sua URL ou outro identificador de documento), para indicar que esta frase candidata g aparece no documento atual. Uma entrada no índice 150 para uma frase g (ou um termo) é referida como a lista da frase g. A lista de afixação inclui uma lista de documentos d (por seus identificadores de documento, por exemplo, um número de documento ou, alternativamente, uma URL) em que a frase ocorre. Numa modalidade, o número de documento é derivado por um hash de uma só mão da URL, usando, por exemplo, MD5.
Além disso, a matriz de co-ocorrências 212 é atualizada, como melhor explicado abaixo. Na primeira passagem, as listas boas e ruins estarão vazias e, deste modo, a maioria das frases tenderá a ser adicionada à lista de frases possíveis 206.
Se a frase candidata não estiver na lista de frases boas 208, então, é adicionada à lista de frases possíveis 206, a menos que já esteja presente nela. Cada entrada p na lista de frases possíveis 206 tem três contas associadas:
P(p): Número de documentos em que a frase possível aparece;
S(p): Número de todas as instâncias da frase possível; e
M(p): Número de instâncias interessantes da frase possível. Uma instância de uma frase possível é interessante” onde a frase possível é distinta do conteúdo vizinho no documento por marcadores gramaticais ou de formato, por exemplo, por estar em negrito ou sublinhado ou como texto âncora num hiperlink ou entre aspas. Estas (e outras) aparências distintivas são indicadas por várias etiquetas de
14/47 ν' idioma de marcação HTML e marcadores gramaticais. Estas estatísticas são mantidas para uma frase, quando é colocada na lista de frases boas 208.
Além das várias listas, é mantida uma matriz de coocorrência 212 (G) para as frases boas. A matriz G tem uma dimensão de m x em, em que m é o número de frases boas. Cada entrada G(j, k) na matriz representa um par de frases boas (g, gk). A matriz de coocorrência 212 logicamente (embora não fisicamente necessário) mantém três contas separadas para cada par (g, gk) de frases boas com respeito a uma janela secundária 304 que está centrada na palavra atual i e se estende +/- h palavras. Numa modalidade, conforme ilustrado na Figura 3, a janela secundária 304 ê de 30 palavras. A matriz de co-ocorrência 212 mantém, deste modo:
R(j/k): conta de co-ocorrência bruta. O número de vezes em que a frase g aparece numa janela secundária 304 com a frase gkí
D(j,k): conta interessante disjuntiva. O número de vezes em que a frase g ou a frase gk aparece como texto distinto numa janela secundária; e
C(j,k): conta interessante conjuntiva: O número de vezes em que ambas as frases g e gk aparecem como texto distinto numa janela secundária. O uso da conta interessante conjuntiva é particularmente benéfico para evitar a circunstância em que uma frase (por exemplo, um anúncio de direitos autorais) aparece freqüentemente em barras laterais, rodapés ou cabeçalhos e, deste modo, não é realmente de previsão de outro texto.
Com referência ao exemplo da Figura 3, suponha-se que o “stock dogs” está na lista de frases boas 208, assim como também as frases “Australian Shepherd” e “Australian Shepard Club of America”. Ambas estas últimas frases aparecem dentro da janela secundária 304 em torno da frase atual “stock dogs”. Todavia, a frase “Australian
15/47
Figure BRPI0614024B1_D0004
Shepard Club of America” aparece como texto âncora para um hiperlink (indicado pelo sublinhado) para o sítio da Web. Deste modo, a conta de co-ocorrência bruta para o par {“ stock dogs”, “Australian shepherd”} é incrementada e a conta de ocorrência bruta e a conta interessante disjuntiva para {“stock dogsf “Australian Shepard Club of America”} são ambas incrementadas, porque a última aparece como texto distinto.
O processo de atravessar cada documento com ambas a janela de seqüência 302 e a janela secundária 304 é repetido para cada documento na partição.
Uma vez os documentos na partição tenham sido atravessados, o próximo estágio da operação de indexação é atualizar 202 a lista de frases boas 208 a partir da lista de frases possíveis 206. Uma frase possível p na lista de frases possíveis 206 é deslocada para a lista de frases boas 208, se a freqüência de aparecimento da frase e o número de documentos em que a frase aparece indicam que tem uso suficiente como frase semanticamente significativa.
Numa modalidade, isto é testado como se segue. Uma frase possível p é removida da lista de frases possíveis 206 e colocada na lista de frases boas 208, se:
a) P(P) > 10 e S(p) > 20 (o número de documentos que contêm a frase p é mais de 10 e o número de ocorrências da frase p é mais de 20); ou
b) M(p) > 5 (o número de instâncias interessantes da frase p é maior do que 5).
Estes limites são ponderados pelo número de documentos na partição; por exemplo, se 2.000.000 de documentos são estabelecidos numa partição, então os limites são aproximadamente dobrados. É óbvio, aquelas pessoas de capacidade na técnica observarão que os valores específicos dos limites ou a lógica de os testar podem ser variados, conforme pretendido.
Se uma frase p não se qualificar para a lista de frases boas
16/47
208, então, ela é conferida quanto à qualificação para ser uma frase ruim. Uma frase p é uma frase ruim, se:
a) o número de documentos que contêm a frase P(p) < 2; e
b) o número de instâncias interessantes de frase,
M(p) - 0.
Estas condições indicam que a frase é tanto não frequente como não usada como indicativa de conteúdo significativo e, novamente, estes limites podem ser ponderados pelo número de documentos na partição.
Deve ser notado que a lista de frases boas 208 incluirá naturalmente palavras individuais como frases, além de frases de palavras múltiplas, conforme descrito acima. Isto é porque cada primeira palavra na janela de frase 302 é sempre uma frase candidata e as contas de instância apropriada serão acumuladas. Deste modo, o sistema de indexação 110 pode indexar automaticamente tanto as palavras individuais (isto é, frases com uma palavra única) como as frases de palavras múltiplas. A lista de frases boas 208 será também consideravelmente menor do que o máximo teórico com base em todas as combinações possíveis de m frases. Na modalidade típica, a lista de frases boas 208 incluirá mais ou menos 6,5x105 frases. Uma lista de frases ruins não precisa de ser armazenada, visto que o sistema precisa apenas rastrear frases possíveis e boas.
Pela passagem final através da coleção de documentos, a lista de frases possíveis será relativamente pequena, devido à distribuição esperada do uso de frases num corpo grande. Deste modo, se, digamos, pela 10a passagem (por exemplo, 10.000.000 de documentos), aparecer uma frase pela primeira vez, é muito improvável que seja uma frase boa nessa vez. Pode ser uma frase nova agora entrando em uso e, deste modo, durante os estabelecimentos subseqüentes, tornar-se-á crescen17/47
Figure BRPI0614024B1_D0005
temente comum. Nesse caso, as contas respectivas aumentarão e poderá em última instância satisfazer os limites para ser uma frase boa.
O terceiro estágio da operação de indexação é enxugar 204 a lista de frases boas 208 usando uma medida de previsão derivada da matriz de co-ocorrência 212. Sem enxugamento, é provável que a lista de frases boas 208 inclua muitas frases que, embora aparecendo legitimamente no léxico, elas mesmas não predizem suficientemente a presença de outras frases ou elas mesmas são subseqüências de frases mais longas. Remover estas frases boas fracas resulta numa probabilidade muito robusta provável de frases boas. Para identificar frases boas, é usada uma medida de previsão que expressa a probabilidade aumentada de uma frase que aparece num documento, dada a presença de outra frase. Isto é feito, numa modalidade, como se segue.
Como notado acima, a matriz de co-ocorrência 212 é uma matriz m x m de armazenamento de dados associados com as frases boas. Cada fila j na matriz representa uma frase boa gj e cada coluna k representa uma frase boa gk. Para cada frase boa gj é computado um valor esperado E(gj). O valor esperado E é a porcentagem de documentos na coleção esperada conter gj. Isto é computado, por exemplo, como a relação do número de documentos que contêm gj para o número total T de documentos na coleção que foram estabelecidos: P(j)/T.
Como acima notado, o número de documentos que contêm gj é atualizado cada vez que gj aparece num documento. O valor para E(gj) pode ser atualizado cada vez que as contas para gj são incrementadas ou durante este terceiro estágio.
A seguir, para cada frase boa gk (por exemplo, as colunas da matriz), é determinado se gj prediz gk. Uma medida de previsão para gj é determinada como se segue:
i) computa-se o valor esperado E(gk). A taxa de coocorrência esperada E(j,k) de gj e gk, se fossem frases não relacionadas é,
18/47
Figure BRPI0614024B1_D0006
então, E(gj)*E(gk);
ii) computa-se a taxa de co-ocorrência real A(j,k) de gj e gk. Isto é a conta de co-ocorrência bruta R(j, k) dividida por T, o número total de documentos;
iii) gj é dito predizer gk onde a taxa de co-ocorrência real A(j,k) excede a taxa de co-ocorrência esperada E(j,k) por uma quantidade limite.
Numa modalidade, a medida de previsão é o ganho de informação. Deste modo, uma frase g prediz outra frase gk quando o ganho de informação I de gk na presença de g exceder um limite. Numa modalidade, isto é computado como se segue:
10,k) = A(j,k)/E(j,k)
E a frase boa g prediz a frase boa gk onde:
10,k) > Limite de ganho de informação.
Numa modalidade, o limite de ganho de informação é de 1,5, mas, está preferentemente entre 1,1 e 1,7. Elevar o limite mais de 1,0 serve para reduzir a possibilidade de que duas frases de outra forma sem relação co-ocorram mais do que aleatoriamente predito.
Como notado, a computação do ganho de informação é repetida para cada coluna k da matriz G com respeito a uma dada fila j. Uma vez uma fila esteja completa, se o ganho de informação para nenhuma das frases boas gk exceder o limite de ganho de informação, então isto significa que a frase g não prediz nenhuma outra frase boa. Naquele caso, g é removido da lista de frases boas 208, tornando-se essencialmente uma frase ruim. Note-se que a coluna j para a frase g não é removida, visto que esta frase em si pode ser predita por outras frases boas.
Esta etapa está concluída, quando todas as filas da matriz de co-ocorrência 212 tiveram sido avaliadas.
A etapa final deste estágio é podar a lista de frases boas
19/47
Figure BRPI0614024B1_D0007
208 para remover frases incompletas. Uma frase incompleta é uma frase que só prediz suas extensões de frase e que começa no lado mais esquerdo da frase (isto é, o início da frase). A “extensão de frase” da frase p é uma super-seqüência que começa com a frase p. Por exemplo, a frase “Presidente de” prediz “Presidente dos Estados Unidos”, “Presidente do México”, “Presidente da AT&T” etc. Todas estas frases posteriores são extensões de frase da frase “Presidente de”, visto que começam com “Presidente de” e são super-seqüências da mesma.
Conseqüentemente, cada frase gj que permanece na lista de frases boas 208 predirá algum número de outras frases, com base no limite de ganho de informação previamente examinado. Agora, para cada frase gj, o sistema de indexação 110 executa uma coincidência de strings com cada uma das frases gk que ela prediz. A coincidência de strings testa se cada frase predita gk é uma extensão de frase da frase gj. Se todas as frases preditas gk forem extensões de frase da frase gj, então, a frase gj é incompleta e é removida da lista de frases boas 208 e adicionada a uma lista de frases incompletas 216. Deste modo, se existir pelo menos uma frase gk que não seja uma distensão de gj, então, gj está completa e mantida na lista de frases boas 208. Por exemplo, então, “Presidente dos Unidos” é uma frase incompleta, porque a única outra frase que ela prediz é “Presidente dos Estados Unidos” a qual é uma extensão da frase.
A lista de frases incompletas 216 em si é muito útil durante a busca real. Quando é recebida uma questão de busca, ela pode ser comparada contra a lista de frases incompletas 216. Se a questão (ou uma parte da mesma) coincidir com uma entrada na lista, então, o sistema de buscas 120 pode examinar as extensões de frase mais prováveis da frase incompleta (a extensão de frase que tem o maior ganho de informação dada a frase incompleta) e sugere esta extensão de frase para o usuário ou busca automaticamente sobre a extensão de frase. Por exemplo, se a questão de busca for “Presidente dos Unidos”, o sistema de buscas 120 pode sugerir automaticamente ao usuário “Presidente dos
20/47
4ÍνΜ
Estados Unidos” como questão de busca.
Depois que a última fase do processo de indexação estiver completada, a lista de frases boas contém um grande número de frases boas que foram descobertas no corpo. Cada uma destas frases boas predirá pelo menos outra frase que não é uma extensão de frase dela. Isto ê, cada frase boa é usada com frequência e independência suficientes para representar conceitos ou idéias significativos expressos no corpo. Diferentemente dos sistemas existentes que usam frases predeterminadas ou selecionadas à mão, a lista de frases boas reflete frases que realmente estão sendo usadas no corpo. Além disso, visto que o processo acima de estabelecimento e indexação é periodicamente repetido, à medida que novos documentos são adicionados à coleção de documentos, o sistema de indexação 110 detecta automaticamente novas frases, à medida que elas entram no léxico.
- Identificação de Frases Relacionadas e de Agrupamentos de Frases Relacionadas
Com referência ã Figura 4, o processo de identificação de frases relacionadas inclui as operações funcionais a seguir.
400: Identifica frases relacionadas tendo um elevado valor de ganho de informação.
402: Identifica agrupamentos de frases relacionadas.
404: Armazena o vetor de bits de agrupamento e o número de agrupamentos.
Cada uma destas operações é, agora, descrita em detalhe.
Primeiro, relembre-se de que a matriz de co-ocorrência 212 contém frases boas g, cada uma das quais prediz pelo menos outra frase bom gk com um ganho de informação maior do que o limite de ganho de informação. Para identificar 400 frases relacionadas, então, para cada par de frases boas (gj, gk) o ganho de informação é comparado com um limite de frase relacionada, por exemplo, 100. Isto é, gj e gk são frases
21/47 vrelacionadas onde:
I(gj> gk) > 100·
Este limite elevado é usado para identificar as co-ocorrências de frases boas que estão bem para além das taxas estatisticamente esperadas. Estatisticamente significa que as frases gj e gk co-ocorrem 100 vezes mais do que a taxa de co-ocorrência esperada. Por exemplo, dada a frase “Monica Lewinsky” num documento, a frase “Bill Clinton” tem uma probabilidade 100 vezes maior de aparecer no mesmo documento, então, é provável que a frase “Bill Clinton” apareça em qualquer documento aleatoriamente selecionado. Outro modo de dizer isto é que a precisão da afirmação é de 99,999%, porque a taxa de ocorrência é 100:1.
Consequentemente, qualquer entrada (gj, gk) que for menos do que o limite de frase relacionada é zerado, indicando que as frases gj, gk não são relacionadas. Quaisquer entradas restantes na matriz de coocorrência 212 indicam, agora, todas as frases relacionadas.
As colunas gk em cada fila gj da matriz de co-ocorrência 212 são, então, classificadas pelos valores do ganho de informação I(gj, gk), de forma que a frase relacionada gk com o ganho de informação mais elevado é listada primeiramente. Esta classificação identifica, assim, que, para uma dada frase gj, outras frases têm maior probabilidade de serem relacionadas em termos de ganho de informação.
O próximo passo é determinar 402 que frases relacionadas formam em conjunto um agrupamento de frases relacionadas. Um agrupamento é um conjunto de frases relacionadas em que cada frase tem elevado ganho de informação com respeito a pelo menos outra frase. Numa modalidade, os agrupamentos são identificados como se segue.
Em cada fila gj da matriz, existirão uma ou mais outras frases que são relacionadas com a frase gj. Este conjunto é o conjunto de frases relacionadas Rj, onde R={ gk, gi,... gm}.
Para cada frase relacionada m em Rj, o sistema de indexa22/47
Η3 ção 110 determina se cada uma das outras frases relacionadas em R é também relacionada com gj. Deste modo, se I(gk, gi) for também diferente de zero, então gj, gk e gi são parte de um agrupamento. Este teste de agrupamento é repetido para cada par (gi, gm) em R.
Por exemplo, suponha-se que a frase boa “Bill Clinton” está relacionada com as frases “Presidente”, “Monica Lewinsky”, porque o ganho de informação de cada uma destas frases com respeito a “Bill Clinton” excede o limite de frase relacionada. Suponha-se ainda que a frase “Monica Lewinsky” está relacionada com a frase “desenhista de bolsas”. Estas frases, então, formam o conjunto R. Para determinar os agrupamentos, o sistema de indexação 110 avalia o ganho de informação de cada uma destas frases para as outras determinando os seus ganhos de informação correspondentes. Deste modo, o sistema de indexação 110 determina os ganhos de informação I(“Presidente”, “Monica Lewinsky”), I(“Presidente”, “desenhista de bolsas”) e assim por diante, para todos os pares em R, Neste exemplo, “Bill Clinton,” “Presidente” e “Monica Lewinsky” formam um agrupamento, “Bill Clinton” e “Presidente” formam um segundo agrupamento e “Monica Lewinsky” e “desenhista de bolsas” forma um terceiro agrupamento e “Monica Lewinsky”, “Bill Clinton” e “desenhista de bolsas” forma um quarto agrupamento. Isto é porque, enquanto “Bill Clinton” não prediz “desenhista de bolsas” com ganho de informação suficiente, “Monica Lewinsky” prediz ambas estas frases.
Para gravar 404 as informações de agrupamento, a cada agrupamento é atribuído um número único de agrupamento (ID do agrupamento). Esta informação ê, então, gravada junto com cada frase boa gj.
Numa modalidade, o número de agrupamento é determinado por um vetor de bits de agrupamento que também indica as relações de ortogonalidade entre as frases. O vetor de bits de agrupamento é uma seqüência de bits de comprimento η, o número de frases boas na lista de frases boas 208. Para uma dada frase boa gj, as posições de bit
23/47
Figure BRPI0614024B1_D0008
correspondem às frases relacionadas classificadas R de gj. Um bit é configurado se a frase relacionada gk em R estiver no mesmo agrupamento que a frase gj. Mais geralmente, isto significa que o bit correspondente no vetor de bits de agrupamento é configurado, se houver ganho de informação numa ou noutra direção entre gj e gk.
O número de agrupamento então é o valor da string de bits que resulta. Esta implementação tem a propriedade de que frases relacionadas que têm ganhos de informação múltiplos ou de uma só mão aparecem no mesmo agrupamento.
Um exemplo dos vetores de bits de agrupamento é como segue, usando as frases acima:
Bill Clinton Presidente Mônica Lewinsky Desenhista de Bolsa ID de Agrupamento
Bill Clinton 1 1 1 0 14
Presidente 1 1 0 0 12
Mônica Lewinsky 1 0 1 1 11
Desenhista de Bolsa 0 0 1 1 3
Para resumir, então, após este processo, será identificado, para cada frase boa gj, um conjunto de frases relacionadas R, que são classificadas em ordem de ganho de informação I(gj, gk) desde o mais elevado até o mais baixo. Além disso, para cada frase boa gj, existirá um vetor de bits de agrupamento, cujo valor é um número de agrupamento que identifica o agrupamento primário do qual a frase gj é um membro e os valores de ortogonalidade (1 ou 0 para cada posição de bit) indicando
24/47 vquais as frases relacionadas em R estão em agrupamentos comuns com gj. Deste modo, no exemplo acima, “Bill Clinton”, “Presidente” e “Monica Lewinsky” estão no agrupamento 14 com base nos valores dos bits na fila para frase “Bill Clinton”.
Para armazenar esta informação, estão disponíveis duas representações básicas. Primeiro, como indicado acima, as informações podem ser armazenadas na matriz de co-ocorrência 212, em que:
entrada G[fila j, col. K] = (I(j,k), clusterNumber, clusterBitVector).
Alternativamente, a representação de matriz pode ser evitada e todas as informações armazenadas na lista de frases boas 208, em que cada fila nela representa uma frase boa gj:
Frasefilaj = lista [frase gk, (Ij, k), clusterNumber, clusterBitVector)].
Esta abordagem proporciona uma organização útil para os agrupamentos. Primeiro, em lugar de uma hierarquia definida estritamente - e, com freqüência, arbitrariamente - de tópicos e conceitos, esta aproximação reconhece que os tópicos, conforme indicados por frases relacionadas, formam um gráfico complexo de relações, onde algumas frases estão relacionadas com muitas outras frases e algumas frases têm um âmbito mais limitado e onde as relações podem ser mútuas (cada frase prediz a outra frase) ou unidirecional (uma frase prediz a outra, mas, não vice-versa). O resultado é que os agrupamentos (clusters) podem ser caracterizados como “locais” para cada frase boa e alguns agrupamentos sobrepor-se-ão, então, tendo uma ou mais frases comuns relacionadas.
Para uma dada frase boa gj, então, o ordenamento das frases relacionadas por ganho de informação proporciona uma taxonomia para nomeação dos agrupamentos da frase: o nome do agrupamento é o nome da frase relacionada no agrupamento tendo o ganho de informação mais elevado.
25/47
Figure BRPI0614024B1_D0009
O processo acima proporciona um modo muito robusto de identificar frases significativas que aparecem na coleção de documentos e, vantajosamente, a maneira como estas frases relacionadas são usadas em conjunto em “agrupamentos” naturais na prática real. Como resultado, esta formação de agrupamentos dirigida por dados de frases relacionadas evita os desvios que são inerentes em qualquer seleção “editorial” dirigida manualmente de termos e conceitos relacionados, como é comum em muitos sistemas.
- Indexação de Documentos com Frases e Frases Relacionadas
Dada a lista de frases boas 208, incluindo as informações pertinentes a frases e agrupamentos relacionados, a próxima operação funcional do sistema de indexação 110 é indexar documentos na coleção de documentos com respeito às frases boas e agrupamentos e armazenar as informações atualizadas no índice primário 150 e no índice secundário. A Figura 5 ilustra este processo, em que existem as seguintes fases funcionais para indexação de um documento:
500: Colocar o documento nas listas de frases boas encontradas no documento.
502: Atualizar as contas de instância e vetor de bits de frases relacionados para fases relacionadas e frases secundárias relacionadas.
504: Reordenar as entradas de índices de acordo com o tamanho da lista.
506: Classificar as entradas de índices em cada lista de afixação por uma pontuação de recuperação de informações ou valor de característica.
508: Particionar cada lista de afixação entre o servidor primário 150 e um servidor secundário 152.
Estas fases são, agora, descritas em detalhe adicional.
26/47
Um conjunto de documentos é atravessado ou estabelecido, como antes; este pode ser o mesmo ou um conjunto diferente de documentos. Para um dado documento d, atravessra 500 o documento palavra por palavra com uma janela de sequência 302 de comprimento n, a partir da posição i, da maneira acima descrita.
Numa dada janela de frase 302, identificar todas as frases boas na janela, começando na posição i. Cada frase boa é apontada como gj. Deste modo, gi é a primeira frase boa, g2 seria a segunda frase boa e assim por diante.
Para cada frase boa gj (exemplo gi “Presidente” e g4 “Presidente da ATT”) colocar o identificador de documento (por exemplo, a URL) na lista de afixação para a frase boa gj no índice 150. Esta atualização identifica que a frase boa gj aparece neste documento específico.
Numa modalidade, a lista de afixação para uma frase gj toma a seguinte forma lógica:
Frase gj: lista: (documento d, [lista: contas da fase relacionada] [informação de frase relacionada]).
Para cada frase gj existe uma lista dos documentos d em que a frase aparece. Para cada documento, existe uma lista de contas do número de ocorrências das frases relacionadas R da frase gj que aparece também no documento d.
Numa modalidade, a informação da frase relacionada é um vetor de bits de fase relacionada. Este vetor de bits pode ser caracterizado como um vetor “bi-bit”, na medida em que, para cada frase relacionada gk, existem duas posições de bit, gk-i, gk-2. A primeira posição de bits armazena uma bandeira que indica se a frase relacionada gk está presente no documento d (isto é, a conta para gk no documento d é maior do que 0). A segunda posição de bits armazena uma bandeira que indica se uma frase relacionada gi de gk está também presente no documento d. As frases relacionadas gi de uma frase relacionada gk de uma frase gj são aqui chamadas de “frases relacionadas secundárias de gj”. As contas e
27/47
Figure BRPI0614024B1_D0010
posições de bits correspondem à ordem canônica das frases em R (classificadas em ordem de ganhos de informação decrescentes). Esta ordem de classificação tem o efeito de tornar a frase relacionada gk que é mais altamente predita por gj associada com o bit mais significativo do vetor de bits de frase relacionadas e a frase relacionada gi que é menos predita por gj associada com o bit menos significativo.
É útil notar que, para uma dada frase g, o comprimento do vetor de bits de frases relacionadas e a associação das frases relacionadas aos bits individuais do vetor serão os mesmos com respeito a todos os documentos que contêm g. Esta implementação tem a propriedade de permitir que o sistema compare prontamente os vetores de bits de frases relacionadas com algum (ou todos) documento contendo g, para ver que documentos têm uma dada frase relacionada. Isto é benéfico para facilitar o processo de busca para identificar documentos em resposta a uma questão de busca. Conseqüentemente, um dado documento aparecerá nas listas de afixação de muitas frases diferentes e em cada uma dessas listas, o vetor de frases relacionadas para aquele documento será específico para a frase que possui a lista de afixação. Este aspecto preserva a localidade dos vetores de bits de frase relacionadas com respeito a frases e documentos individuais.
Conseqüentemente, o próximo estágio 502 inclui atravessar a janela secundária 304 da posição de índice atual no documento (como antes de uma janela secundária de +/- K termos, por exemplo, 30 termos), por exemplo, a partir de i-K até i+K. Para cada frase relacionada gk de gi que aparece na janela secundária 304, o sistema de indexação 110 incrementa a conta de gk com respeito ao documento d na conta de frase relacionadas. Se gi aparece mais tarde no documento e a frase relacionada é novamente encontrada dentro da janela secundária mais antiga, novamente a conta é incrementada.
Conforme notado, o primeiro bit correspondente gk-i no mapa de bits de frases relacionadas é configurado com base na conta,
28/47 com ο bit ajustado para 1, se a conta para gk for >0, ou ajustado para 0, se a conta igualar 0.
A seguir, o segundo bit, gk-2 é configurado checando a frase relacionada gk no índice 150, identificando na lista de afixação gk a entrada para o documento d e, então, conferindo as contas de frases relacionadas secundárias (ou bits) para gk para quaisquer das suas frases relacionadas. Se qualquer destas contas/bits de frases relacionadas secundárias for configurada, então, isto indica que as frases relacionadas secundárias de gj estão também presentes no documento d.
Quando o documento d foi completamente processado desta maneira, o sistema de indexação 110 terá identificado o seguinte:
i) cada frase boa gj no documento d;
ii) para cada frase boa gj qual de suas frases relacionadas gk está presente no documento d;
iii) para cada frase relacionada gk presente no documento d, qual de suas frases relacionadas gi (as frases relacionadas secundárias de gj) está também presente no documento d.
a) Indexação Particionada
Cada frase no índice 150 recebe um número de frase, com base na sua freqüência de ocorrência no corpo. Quanto mais comum a frase, menor o número de frase que recebe no índice. O sistema de indexação 110, então, classifica 504 todas as listas de afixação 214 no índice primário 150 em ordem declinante, de acordo com o número de documentos listados em cada lista de afixação, de forma que as frases de maior freqüência têm o número de frase mais baixo e são listadas primeiro no índice primário 150. Como notado acima, o índice primário 150 é distribuído através dos servidores primário Ml. Para reduzir a restrição de disco, as frases são distribuídas através destas máquinas por função hash, por exemplo, phase_number MOD Ml.
Para aumentar significativamente o número de documen29/47
Figure BRPI0614024B1_D0011
tos que podem ser indexados pelo sistema, o índice primário 150 é ainda processado para particionar seletivamente cada uma das listas de afixação 214. Como notado acima, a lista de afixação de cada frase contém uma lista de documentos. Cada documento na lista de afixação recebe 506 uma pontuação de tipo de recuperação de informação com respeito à frase. Embora a pontuação seja computada, os documentos na lista de afixação são, então, classificados em ordem decrescente por esta pontuação, com os documentos de pontuação mais elevada listados primeiro na lista de afixação. Esta pré-classificação de documentos é particularmente benéfica para o desempenho melhorado, quando se recupera documentos em resposta a uma questão de busca.
O algoritmo de pontuação para pré-classificação dos documentos pode ser o mesmo algoritmo de pontuação de relevância subjacente usado no sistema de buscas 120 para gerar uma pontuação de relevância. Numa modalidade, a pontuação IR é com base no algoritmo de classificação de página, como descrito na Patente US 6.285.999. Alternativa ou adicionalmente, as estatísticas para vários atributos relevantes de IR do documento, tal como o número de inlinks, outlinks, comprimento do documento, podem ser também armazenadas e usadas sozinhas ou em combinação, a fim de classificar os documentos. Por exemplo, os documentos podem estar em ordem decrescente de acordo com o número de inlinks. Para facilitar mais a recuperação o mais rápido possível de informações a partir do índice primário 150, as entradas em cada lista de afixação 214 são fisicamente armazenadas no servidor primário apropriado ordem de classificação por pontuação do tipo IR.
Dado que os documentos de pontuação mais alta para uma dada frase estão, agora, no princípio da lista de afixação, a lista de afixação 214 é particionada 508 entre o índice primário 150 e o índice secundário 152, As entradas da lista de afixação para até os primeiros documentos de K permanecem armazenadas no servidor primário 150, enquanto as entradas da lista de afixação para os restantes n>K documentos são armazenadas no índice secundário 152 e deletadas a partir
30/47
W do final da lista de afixação 214 no índice primário 150. Numa modalidade, K é configurado para 32.768 (32k), mas, pode ser usado um valor mais elevado ou inferior de K. Uma frase que tem a sua lista de afixação particionada entre o índice primário e o secundário é chamada de frase “comum”, enquanto uma frase que não é particionada é chamada de frase “rara”. A parte de uma lista de afixação armazenada no índice primário 150 é referida como lista de afixação primária e contém as entradas primárias e a parte de uma lista de afixação armazenada no índice secundário 152 é referida como lista de afixação secundária e contém as entradas secundárias. As entradas secundárias para uma dada lista de afixação 214 são atribuídas a um servidor secundário de acordo com outra função de hash do número de frase, por exemplo, número de frase MOD M2. A ID secundária do servidor é armazenada na lista de afixação no servidor primário, para permitir que o sistema de buscas 120 acesse prontamente o servidor secundário apropriado conforme necessário. Para cada lista de afixação de frases armazenada em um dos servidores secundários, as entradas secundárias são fisicamente armazenadas na ordem de seus números de documento, a partir do número de documento mais baixo até o mais alto (em contraste com o ordenamento de relevância no índice primário 150). Preferen te mente, nenhuma informação de relevância é armazenada nas entradas secundárias, de forma que as entradas contêm uma quantidade mínima de dados, como o número de documento e o localizador de documento (por exemplo, URL). As etapas de classificação e particionamento podem ser realizadas sequencialmente para cada frase; alternativamente todas as (ou um certo número de) frases podem ser primeiro classificadas e, então, particionadas; o projeto de algoritmo é somente uma escolha de projeto e as variações acima são consideradas equivalentes. As etapas de classificação e particionamento são conduzidas durante cada passagem de indexação num conjunto de documentos, de forma que quaisquer frases que sejam atualizadas com novos documentos durante uma passagem de indexação são reclassificadas e reparticionadas. São também possíveis
31/47
3Λoutras otimizações e operações.
Numa modalidade, a seleção de atributos de documento que estão armazenados no índice primário 150 para cada documento na listagem de afixação 214 é variável e, em particular, diminui para o final da lista de afixação 214 no índice primário. Em outras palavras, os documentos que estão altamente classificados na lista de afixação com base na sua pontuação de relevância (ou outros atributos baseados em relevância) terão todos ou a maioria dos atributos de documentos armazenados na entrada de documentos na lista de afixação. Os documentos próximos do final da lista de afixação 214 no índice primário terão apenas um conjunto mais limitado desses atributos armazenados.
Numa modalidade, cada lista de afixação 214 no índice primário 150 tem três seções (ou fileiras) de comprimentos m, 3m, 5m, onde m aqui é um número de entradas de documento. Nesta modalidade, é desejável que cada seção tenha comprimento K, como descrito acima, isto é, m=K e o índice primário inteiro tem 9K entradas; o índice secundário iria, então, armazenar as entradas secundárias onde n>9K.
Na primeira seção (primeiras m entradas), são armazenados os seguintes atributos de relevância para cada entrada de documento na lista de afixação de uma dada frase:
- pontuação de relevância do documento (por exemplo, classificação da página);
- número total de ocorrências da frase no documento;
- uma lista ordenada de classificação de até 10.000 documentos de âncora que também contêm a frase e que apontam para este documento e para cada documento de âncora a sua pontuação de relevância (por exemplo, classificação da página) e o texto de âncora em si; e
- a posição de cada ocorrência de frase e, para cada ocorrência, um conjunto de bandeiras indicando se a ocorrência é
32/47 um título, um negrito, um cabeçalho, numa URL, no corpo, numa barra lateral, num rodapé, num anúncio, em maiúscula ou em algum outro tipo de marcação de HTML.
Na segunda seção (próximo das entradas 3m), apenas os itens 1-3 são armazenados.
Na terceira seção (entradas finais 5m), apenas o item 1 é armazenado.
Reduzir sistematicamente que atributos de documentos são armazenados em partes mais antigas de cada lista de afixação 214 é aceitável, porque os documentos próximos do final da lista de afixação já são determinados serem menos relevantes para a frase particular (pontuação de relevância inferior) e, assim, não é totalmente necessário para armazenar todas as suas características de relevância.
A disposição de armazenamento precedente possibilita armazenar significativamente mais entradas numa dada quantidade de armazenamento de disco rígido do que as técnicas convencionais. Primeiro, a eliminação das informações de posição de termo para cada frase em todo o documento proporciona aproximadamente uma redução de 50% na quantidade de armazenamento necessário para um conjunto de documentos dados, dobrando, assim, efetivamente o número de documentos que podem ser armazenados. Segundo, particionar as listas de afixação entre o índice primário e os índices secundários e armazenar informações de relevância apenas no índice primário proporciona economias significativas adicionais. Muitas frases têm mais de 100.000, mesmo 1.000.000 de documentos nas suas listas de afixação. Armazenar as informações de relevância para apenas um número limitado de entradas no índice primário elimina o armazenamento necessário para os documentos que provavelmente não têm de ser retornados na busca. Este aspecto proporciona aproximadamente um aumento de dez vezes no número de documentos que podem ser armazenados. Finalmente, economias adicionais (aproximadamente redução de 25%-50% na capa33/47
SM cidade de armazenamento exigida) são alcançadas armazenando seletivamente informações de menor relevância no índice primário 150 para os documentos menos relevantes (classificados mais baixos) em cada lista de afixação 214.
b) Determinação dos Tópicos
Para um Documento
A indexação de documentos por frases e o uso de informações em cachos proporciona ainda outra vantagem para o sistema de indexação 110, que é a capacidade de determinar os tópicos sobre que um documento versa com base nas informações de frase relacionadas.
Suponha-se que, para uma dada frase boa g e um dado documento d, a entrada da lista de afixação é como se segue:
gj: documento d: contagens de frase relacionada: = {3,4,3,0,0,2,1,1,0};
vetor de bits de frases relacionadas:={l 1 11 10 00
10 10 10 01} onde o vetor de bits de frases relacionadas é mostrado em pares bi-bit.
A partir do vetor de bits de frases relacionadas, podemos determinar tópicos primários e secundários para o documento d. Um tópico primário é indicado por um par de bits (1,1) e um tópico secundário é indicado por um par de bits (1,0). Um par de bits de frases relacionadas de (1,1) indica que ambas as frases relacionadas gk para o par de bits estão presentes no documento d, junto com as frases secundárias relacionadas gi também. Isto pode ser interpretado querer dizer que o autor do documento d usou várias frases relacionadas gj, gk, e gi em conjunto na elaboração do documento. Um par de bits de (1,0) indica que ambos os gj e gk estão presentes, mas, nenhuma frase relacionada secundária adicional a partir de gk está presente e, deste modo, isto é um tópico menos significativo.
34/47
c) Indexação de Instâncias de Documentos Para a Recuperação de Arquivos
Outra modalidade da presente invenção permite a capacidade de armazenar e manter documentos históricos nos índices e, assim, capacitar a recuperação de arquivos de instâncias específicas de datas (versões) de documentos ou páginas individuais. Esta capacidade tem vários usos benéficos, incluindo capacitar o usuário a poder buscar documentos dentro de uma faixa específica de datas, possibilitando que o sistema de buscas 120 use informações de relevância relacionadas com a data ou versão ao avaliar documentos em resposta a uma questão de busca e na organização de resultados de buscas.
Nesta modalidade, o identificador de documentos codifica a identidade do documento com respeito a um intervalo de datas. A primeira vez que um documento é estabelecido pelo sistema de indexação 110, o identificador de documentos é armazenado como um hash da URL do documento e o carimbo de data do documento, por exemplo, MD5 (URL, primeira data). Associado à instância particular do documento está o campo de faixa de datas, que compreende uma faixa de datas para que a instância do documento seja considerada válida. A faixa de datas pode ser especificada como um par de datas que compreende uma primeira data em que o documento é considerado válido (a data de indexação) e uma última data em que o documento é considerado válido (por exemplo, 11-01-04; 12-15-04). Alternativamente, a faixa de datas pode ser especificada como uma primeira data e um número que indica vários dias a seguir à primeira data (por exemplo, 11-01-04, 45). Uma data pode ser especificada em qualquer formato útil, incluindo strings de data ou números de dia. Durante o período em que o documento é o documento atualmente válido, o segundo valor é uma bandeira de estado ou de sinal (incluindo um valor de Nulo (NULL)}, indicando este estado; isto é chamado o intervalo atual. Por exemplo, (11-01-04, “aberto”) indica que o documento é atualmente válido. Isto indica que o documento satisfará
35/47
3(?
uma busca que inclua uma limitação de data depois da primeira data. Não importando a implementação particular, a primeira data para um dado intervalo de datas pode ser referida como a “data aberta” e a última data para um dado intervalo pode ser chamada de “data fechada”.
Durante as passagens de indexação subsequentes pelo sistema de indexação 110, o sistema de indexação 110 determina se o documento mudou. Se não existir nenhuma mudança no documento, então, o sistema de indexação 110 não toma nenhuma ação adicional com respeito ao documento. Se tiver ocorrido uma mudança no documento (deste modo, uma nova instância ou versão do documento), então, o sistema de indexação 110 reindexa o documento. Após a reindexação, o sistema de indexação 110 fecha o intervalo atual, mudando a bandeira de estado aberto para a data atual menos um dia. Por exemplo, se o sistema de indexação 110 indexar o documento em 12/16/04 e determinar que o documento mudou, então, o intervalo atual é fechado como se segue: (11-01-04, 12-15-04) e é criado um novo intervalo atual, por exemplo, (12-16-04, “aberto”). O sistema de indexação 110 mantém cada uma das faixas de data para o documento, junto com dados correspondentes de relevância indexados (por exemplo, frases, estatísticas de relevância, inlinks do documento e assim por diante) para a faixa de data. Deste modo, cada faixa de datas e conjunto de dados de relevância é associado a uma instância ou versão particular do documento. Para cada um dos intervalos de data para um dado documento, o sistema de indexação mantém um identificador único de documento, por exemplo, MD5 (URL, primeira data), para poder recuperar a instância apropriada de documento cached. Numa modalidade que usa os índices primários e secundários, quando é completada uma passagem de indexação, as listas de afixação 214 no índice primário são repontuadas, reclassificadas e reparticionadas.
A determinação sobre se um dado documento mudou desde a última passagem de indexação pode ser feita de qualquer número de modos, incluindo o uso de regras estatísticas, regras gramaticais ou
36/47
6V heurísticas semelhantes. Numa modalidade, o sistema de indexação 110 usa as frases de um documento para determinar se um documento mudou. Cada vez que um documento é indexado, os N tópicos superiores são identificados e mantidos como uma lista em associação com as informações da faixa de datas, por exemplo, os 20 tópicos superiores para a faixa de datas (11-04-04, 12-15-04). A lista de tópicos da instância que está sendo indexada é, então, comparada com a lista de tópicos de uma instância de documento anterior, preferentemente a faixa de datas mais recentemente fechada. Se mais do que M% dos tópicos mudaram (por exemplo, 5%), então, o documento é considerado ter mudado e é reindexado para todas as frases. Deve ser notado que podem ser também usados outros métodos de determinar se um documento mudou e que não é exigido o uso de indexação baseada em frases. Por exemplo, pode ser usado um conjunto de regras estatísticas com base em mudanças no comprimento do documento, mudanças em que os termos são mais freqüentes, mudanças na frequência de termos, mudanças na quantidade de tipos marcações de HTML ou outras medidas de estrutura ou conteúdo de documento.
III - Sistema de Busca
O sistema de buscas 120 opera de modo a receber uma questão e buscar documentos relevantes para a questão e prover uma lista destes documentos (com links para os documentos) num conjunto de resultados de buscas. A Figura 6 ilustra as operações funcionais principais do sistema de buscas 120:
600: Identificar frases na questão,
602: Recuperar documentos relevantes para frases da questão.
604: Classificar os documentos em resultados de busca de acordo com frases.
Os detalhes de cada uma destes estágios são como se segue.
37/47
- Identificação de Frases na Questão e Expansão da Questão
A primeira fase 600 do sistema de buscas 120 é para identificar quaisquer frases que estejam presentes na questão, a fim de buscar efetivamente o índice. Ê usada nesta seção a terminologia seguinte:
q: uma questão como entrada e recebida pelo sistema de buscas 120.
Qp: frases presentes na questão.
Qr: frases relacionadas de Qp.
Qe: extensões de frase de Qp.
Q: a união de Qp e Qr.
Uma questão q é recebida a partir de um cliente 190, tendo até algum número máximo de caracteres ou palavras.
Uma janela de frase de tamanho N (por exemplo, 5) é usada pelo sistema de buscas 120 para atravessar os termos da questão q. A janela de frases começa com o primeiro termo da questão, estendese N termos para a direita. Esta janela é, então, desviada para a direita M-N vezes, onde M é o número de termos na questão.
Em cada posição de janela, haverá N termos (ou menos) na janela. Estes termos constituem uma frase da questão possível. A frase possível é checada na lista de frases boas 208 para determinar se é uma frase boa ou não. Se a frase possível estiver presente na lista de frases boas 208, então, é retornado um número de frase para a frase; a frase possível é, agora, uma frase candidata.
Depois de todas as frases possíveis em cada janela terem sido testadas para determinar se são boas frases candidatas, o sistema de buscas 120 terá um conjunto de números de frase para as frases correspondentes na questão. Estes números de frases são, então, classificados (em ordem decrescente).
38/47
5$
Começando com o número de frase mais elevado como a primeira frase candidata, o sistema de buscas 120 determina se existe outra frase candidata dentro de uma distância numérica fixa dentro da lista classificada, isto é, a diferença entre os números de frases está dentro de uma quantidade limite, por exemplo, 20.000. Nesse caso, então, a frase que está mais à esquerda na questão é selecionada como uma frase da questão válida Qp. Esta frase da questão e todas as suas subfrases são removidas a partir da lista de candidatas e a lista é reclassificada e o processo repetido. O resultado deste processo é um conjunto de frases da questão válidas Qp.
Por exemplo, suponha-se que a questão de busca é “Hillary Rodham Clinton Bill on the Senate Floof. O sistema de buscas 120 identificaria as seguintes frases candidatas, “Hillary Rodham Clinton Bill on”, “Hillary Rodham Clinton ΒϋΓ e “Hillary Rodham Clinton”. As duas primeiras são descartadas e a última é mantida como frase da questão válida. A seguir, o sistema de buscas 120 identificaria “Bill on the Senate FlooF e a subfrases “Bill on the Senate”, “Bill on the”, “Bill on”, “ΒίΙΓ e selecionaria “Bill” como uma frase da questão válida Qp. Finalmente, o sistema de buscas 120 analisaria gramaticalmente “on the Senate Floor” e identificaria “Senate Floori como frase da questão válida.
A seguir, o sistema de buscas 120 ajusta as frases válidas Qp para letras maiúsculas. Quando analisa gramaticalmente a questão, o sistema de buscas 120 identifica maiúsculas potenciais em cada frase válida. Isto pode ser feito usando uma tabela de maiúsculas conhecidas, tais como “estados unidos” sendo postos em maiúsculas como “Estados Unidos” ou usando um algoritmo de maiúsculas com base na gramática. Isto produz um conjunto de frases da questão com maiúsculas corretas.
O sistema de buscas 120 faz, então, uma segunda passagem através das frases com maiúsculas e seleciona apenas aquelas frases que estão mais à esquerda e com maiúsculas onde tanto uma frase como a sua subfrase estão presentes no conjunto. Por exemplo, uma busca
39/47 (θΟ ν' sobre “presidente dos estados unidos” ficará em maiúsculas como “Presidente dos Estados Unidos”.
No próximo estágio, o sistema de buscas 120 identifica 602 os documentos que são relevantes para as frases da questão Q. O sistema de buscas 120 recupera, então, a lista de afixação das frases da questão Q e, onde necessário, intersecta estas listas para determinar que documentos aparecem no todo (ou algum número) das listas de afixação para as frases da questão. Se uma frase Q na questão tiver um conjunto de extensões de frase Qe (como melhor explicado abaixo), então, o sistema de buscas 120 forma, primeiro, a união das listas de afixação das extensões de frase, antes de fazer a interseção com as listas de afixação. O sistema de buscas 120 identifica extensões de frase checando cada frase da questão Q na lista de frases incompletas 216, conforme descrito acima.
Usando o índice primário 150 e o secundário 150, o sistema de buscas 120 pode ainda otimizar a operação de interseção, Existem quatro casos gerais de análise de interseção que o sistema de buscas 120 tem de manipular com base sobre se as frases da questão são comuns ou raras.
O primeiro caso é para frase da questão única, que pode ser ou comum ou rara. Neste caso, o sistema de buscas 120 passa um número selecionado (por exemplo, 100 ou 1.000) das primeiras entradas na lista de afixação de frases a partir do índice primário 150 até a fase de classificação 604 para a classificação final. A fase de classificação pode otimizar a operação de classificação, visto que os documentos já estão na ordem de classificação. Alternativamente, visto que estes já estão préclassificados pela sua relevância para a frase, o conjunto de documentos pode ser diretamente provido como os resultados da busca, proporcionando resultados essencialmente instantâneos ao usuário.
O segundo caso é onde existem duas frases da questão comuns. Aqui, o sistema de buscas 120 acessa a lista de afixação 214
40/47
6ι para cada frase no índice primário 150 e intersecta estas listas para formar a lista de documento final, que é, então, passada para a frase de classificação 604 para pontuação de relevância com base no conjunto de atributos de relevância associados com o documento. Como existem pelo menos K documentos em cada lista de afixação, existe uma probabilidade muito alta de que um número suficiente de documentos contenha ambas as frases e, deste modo, não é necessária a interseção das entradas secundárias no índice secundário 152. Isto reduz mais a quantidade de tempo necessário para a recuperação.
O terceiro caso é onde existem duas frases raras da questão. Este caso é tratado da mesma maneira que o segundo caso, visto que, aqui, a lista de afixação inteira para cada frase é armazenada no índice primário.
O caso final é onde as frases da questão válidas compreendem uma frase comum e uma frase rara. Neste caso, o sistema de buscas 120 primeiro intersecta a lista de afixação 214 a partir do índice primário 150 para ambas as frases para formar um primeiro conjunto ou documentos comuns. A seguir, o sistema de buscas 120 intersecta a lista de afixação para a frase rara com as entradas secundárias para a frase comum (que jã estão classificadas em ordem de número de documento) para formar um segundo conjunto de documentos comuns. Os dois conjuntos são unidos e, então, passados para a fase de classificação.
Todas as instâncias onde existem três ou mais frases da questão podem ser redutoramente manipuladas por interseções sucessivas usando os métodos acima.
- Classificação
a) Classificando os Documentos Com Base em Frases Contidas
O sistema de buscas 120 proporciona um estágio de classificação 604 em que os documentos nos resultados de busca são classificados usando as informações de relevância e os atributos de
41/47 documentos, junto com as informações de frase em cada vetor de bits de frases relacionadas do documento e o vetor de bits de agrupamento para as frases da questão. Esta abordagem classifica os documentos de acordo com as frases que estão contidas no documento ou informalmente “atingimentos de corpo”.
Como descrito acima, para qualquer dada frase gj, cada documento d na lista de afixação g/s tem um vetor de bits de frases relacionadas associado que identifica que frases relacionadas gk e que frases relacionadas secundárias gi estão presentes no documento d. Quanto mais relacionadas as frases e as frases secundárias relacionadas presentes num dado documento, tanto mais bits serão ajustados no vetor de bits de frases relacionadas do documento para a frase dada. Quanto mais bits são configurados, maior o valor numérico do vetor de bits de frases relacionadas.
Conseqüentemente, numa modalidade, o sistema de buscas 120 classifica os documentos nos resultados de busca de acordo com o valor de seus vetores de bits de frases relacionadas. Os documentos que contêm as frases mais relacionadas para as frases da questão Q terão os vetores de bits de frases relacionadas de valores mais elevados e estes documentos serão os documentos de classificação mais elevada nos resultados de busca.
Esta abordagem é desejável, porque, semanticamente, estes documentos são mais topicamente relevantes para as frases da questão. Note-se que esta abordagem proporciona documentos altamente relevantes, ainda que os documentos não contenham uma elevada frequência dos termos de entrada da questão q, visto que as informações de frases relacionadas foram usadas tanto para identificar documentos relevantes como, depois, classificar estes documentos. Os documentos com uma baixa freqüência dos termos de entrada da questão podem ainda ter um grande número de frases relacionadas com os termos e frases da questão e, deste modo, ser mais relevantes do que os documen42/47 tos que têm uma elevada frequência apenas dos termos e frases da questão, mas, nenhuma frase relacionada.
Numa segunda modalidade, o sistema de buscas 120 pontua cada documento no conjunto de resultados de acordo com as frases relacionadas da frase da questão Q que ele contém. Isto é feito como se segue.
Dada cada frase da questão Q, existirá algum número N de frases relacionadas Qr para a frase da questão, conforme identificado durante o processo de identificação de frases. Como descrito acima, as frases relacionadas à questão Qr são ordenadas de acordo com o seu ganho de informação a partir da frase da questão Q. A estas frases relacionadas são, então, atribuídos pontos, começados com N pontos para a primeira frase relacionada Qrl (isto é, a frase relacionada Qr com o ganho de informação mais elevado de Q), depois, N-l pontos para a próxima frase relacionada Qr2, depois, N-2 pontos para Qr3 e assim por diante, de forma que à última frase relacionada QrN é atribuído 1 ponto.
Cada documento nos resultados de busca é, então, pontuado determinando que frases relacionadas Qr da frase da questão Q estão presentes e dando ao documento os pontos atribuídos a cada uma dessas frases relacionadas Qr. Os documentos são, então, classificados a partir da pontuação mais elevada para a pontuação mais baixa.
Como refinamento adicional, o sistema de buscas 120 pode selecionar certos documentos a partir do conjunto de resultados. Em alguns casos, os documentos podem ser acerca de muitos tópicos diferentes; isto é particularmente o caso para documentos mais longos. Em muitos casos, os usuários preferem documentos que estejam fortemente sobre o ponto com respeito a um tópico único expresso na questão em relação a documentos que são relevantes para muitos tópicos diferentes.
Para selecionar estes últimos tipos de documentos, o sistema de buscas 120 usa as informações de agrupamento nos vetores de
43/47 bits de agrupamento das frases da questão e remove qualquer documento em que haja mais do que um número limite de agrupamentos no documento. Por exemplo, o sistema de buscas 120 pode remover quaisquer documentos que contenham mais de dois agrupamentos. Este limite de agrupamentos pode ser predeterminado ou ajustado pelo usuário como parâmetro de busca.
b) Ordenação de Documentos com Base em Frases de Âncora
Além de ordenar os documentos nos resultados de busca com base em atingimentos do corpo de frases da questão Q, em uma modalidade, o sistema de buscas 120 também classifica os documentos com base no aparecimento de frases da questão Q e frases relacionadas à questão Qr em âncoras para outros documentos. Numa modalidade, o sistema de buscas 120 calcula uma pontuação para cada documento que é uma função (por exemplo, combinação linear) de duas pontuações, uma pontuação de atingimento de corpo e uma pontuação de atingimento de âncora.
Por exemplo, a pontuação de documento para um dado documento pode ser calculada como se segue:
Pontuação=0,30*(pontuação de atingimento de corpo)+0,70*(pontuação de atingimento de âncora).
Os pesos de 0,30 e 0,70 podem ser ajustados conforme pretendido. A pontuação de atingimento de corpo para um documento é o valor numérico do vetor de bits de frases relacionadas mais elevado para o documento, dadas as frases da questão Qp, da maneira descrita acima. Alternativamente, este valor pode ser diretamente obtido pelo sistema de buscas 120 checando cada frase da questão Q no índice 150, acessando o documento a partir da lista de afixação da frase da questão Q e, depois, acessando o vetor de bits de frases relacionadas.
A pontuação de atingimento de âncora de um documento d é uma função dos vetores de bits de frases das frases relacionadas à
44/47
Figure BRPI0614024B1_D0012
questão Q, onde Q é uma palavra de âncora num documento que referencia o documento d. Quando o sistema de indexação 110 indexa os documentos na coleção de documentos, mantém para cada frase uma lista dos documentos em que a frase é texto de âncora num outlink e também para cada documento uma lista dos inlinks (e o texto de âncora associado) a partir de outros documentos. Os inlinks para um documento são referências (por exemplo, hyperlinks) a partir de outros documentos (documentos de referência) para um dado documento.
Para determinar a pontuação de atingimento de âncora para um dado documento d, então, o sistema de buscas 120 itera sobre o conjunto de documentos de referência R (i=l para o número de documentos de referência) listados no índice pelas suas frases de âncora Q e adiciona o produto seguinte:
Ri.Q.Vetor de Bits de frase relacionada *D.Q. vetor de bits de frase relacionada.
O valor do produto aqui é uma pontuação de como a frase de âncora de tópico Q é para o documento D, Esta pontuação é aqui chamada de “componente de pontuação interno”. Este produto pondera efetivamente o vetor de bits relacionados do documento atual D pelos vetores de bits relacionados de frases de âncora no documento de referência R. Se os documentos de referência R são eles mesmos relacionados com a frase da questão Q (e, deste modo, têm um vetor de bits de frases relacionadas de valor mais elevado), então, isto aumenta o significado da pontuação D do documento atual. A pontuação de atingimento de corpo e a pontuação de atingimento de âncora são, então, combinadas para criar a pontuação de documento, conforme descrito acima.
A seguir, para cada um dos documentos de referência R, é obtido o vetor de bits de frases relacionadas para cada frase de âncora Q. Isto é uma medida de quão tópica a frase de âncora Q é para o documento R. Este valor é aqui chamado de componente de pontuação externo.
A partir do índice 150, então, todos os pares (documento
45/47 fóp de referência, documento referenciado) são extraídos para as frases de âncora Q. Estes pares são, então, classificados pelos seus valores associados (componente de pontuação externo, componente de pontuação interno). Dependendo da implementação, qualquer um destes componentes pode ser a chave de classificação primária e o outro pode ser a chave de classificação secundária. Os resultados classificados são, então, apresentados ao usuário. Classificar os documentos sobre o componente de pontuação externo faz documentos que têm muitas frases relacionadas com a questão como atingimentos de âncora ordenarem-se mais altamente, representando, assim, estes documentos como documentos “de perito”. A escolha sobre a pontuação de documento interna torna os documentos que frequentemente referenciaram pelos termos de âncora os mais altos.
c) Ordenando Documentos com Base na Relevância da Faixa de Data
O sistema de buscas 120 pode usar as informações de faixa de datas de vários modos durante as operações de busca e ordenamento. Primeiro, o sistema de buscas 120 pode usar a faixa de datas como um delimitador de busca explícito. Por exemplo, pode incluir termos ou frases e uma data, tal como “Escritório de Patentes e Marcas dos Estados Unidos 12/04/04”. O sistema de buscas 120 pode identificar o termo de data e, depois, selecionar documentos que têm a frase pretendida e que são indexados para uma faixa de datas que inclui o termo de data na questão. A partir dos documentos selecionados, o sistema de buscas 120 pode, então, obtém pontuação de relevância para cada documento que usa os dados de relevância indexados associados com a faixa de data. Desta maneira, pode ser recuperada uma instância mais antiga ou anterior de documento em vez da instância atual onde é mais relevante para a questão de busca. Isto é particularmente útil para os documentos e páginas que mudam frequentemente, tais como as “home pages” de sítios de notícias e outros sítios que contêm informações
46/47 <ρΎ freqüentemente variáveis.
Segundo, onde nenhum termo de data é incluído numa questão de busca, o sistema de buscas 120 pode usar as informações de data no índice durante o ordenamento da relevância, ponderando as pontuações de relevância de documento de acordo com a idade deles, de forma que os documentos mais antigos tenham as suas pontuações de relevância subponderadas (ou documentos mais novos sejam mais altamente ponderados). Alternativamente, em alguns casos, são as versões mais antigas de um documento que são mais relevantes para um tópico, em lugar da versão mais atual de um documento. Por exemplo, sítios de portal de notícias contemporaneamente criados no momento de eventos históricos serão mais provavelmente mais relevantes para uma questão específica sobre o evento do que instâncias atuais do novo portal. Neste caso, o sistema de buscas 120 pode sobreponderar instâncias do documento mais antigas, onde, por exemplo, o padrão de pontuações de relevância de documento para todas as instâncias de um documento mostra um aumento em torno de alguma data histórica, seguido de pontuações de relevância decrescente para instâncias mais atuais do documento.
Onde um ou mais termos de data são incluídos na questão de busca, como acima, os documentos podem ter as suas pontuações de relevância subponderadas em proporção à diferença entre o termo de data e a faixa de datas de documento, de forma que os documentos que são muito mais antigos do que a faixa de datas (medida a partir da data aberta ou da data final) ou muito mais novos do que os termos de data pretendida tenham a sua relevância pontuada subponderada. Reciprocamente, uma pontuação de relevância pode ser aumentada em vez de subponderada onde a faixa de datas para o documento é mais fechada do que a data pretendida.
Terceiro, o sistema de buscas 120 pode usar as informações de faixa de datas como um fator primário ou secundário para orde47/47
61¾ nar os resultados de busca. Por exemplo, os documentos podem ser agrupados em ordem cronológica inversa (por exemplo, grupos mensais) e, dentro de cada grupo, os documentos podem ser listados a partir do ‘ mais para o menos relevante para a questão de busca.
» 5 Outro uso das informações de faixa de dados é ordenar documentos com base na freqüência com que são atualizados. O sistema de buscas 120 pode determinar o número de instâncias de um dado documento (por exemplo, o número de faixas de datas discretas) num intervalo de tempo (esta conta pode ser mantida durante a indexação). O
Φ 1° número de instâncias é, então, usado para sobreponderar aqueles documentos que são mais freqüentemente atualizados.
1/4
0Ύ “Sistema de Recuperação de Informações e Métodos Implementados em Computador Para Indexação de Documentos com Respeito a uma Frase e de Provimento do Respectivo Sistema”

Claims (4)

  1. Reivindicações
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, em que cada documento tem um identificador de documento, caracterizado por que compreende:
    estabelecer uma lista de documentos que contêm a frase; classificar os documentos na lista por uma pontuação de relevância;
    armazenar uma primeira parte da lista compreendendo documentos classificados como mais altos num índice primário em ordem de classificação das pontuações de relevância; e armazenar uma segunda parte da lista compreendendo os documentos menos classificados num índice secundário em ordem numérica dos identificadores de documento.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo com a reivindicação 1, caracterizado por que a pontuação de relevância compreende uma pontuação do tipo baseado em classificação da página.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo com a reivindicação 1, caracterizado por que compreende ainda armazenar, para cada documento, os atributos de relevância de índice primário do documento.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo com a reivindicação 3, caracterizado por que os atributos de relevância incluem pelo menos um dos seguintes: um número total de ocorrências da frase no documento, uma lista ordenada por classificação dos documentos de âncora que também contêm a frase e que apontam para o documento, uma posição
  2. 2/4 de cada ocorrência de frase no documento, um conjunto de uma ou mais bandeiras que indicam um formato da ocorrência ou uma parte do documento que contém a ocorrência.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo com a reivindicação
  3. 3, caracterizado por que o armazenamento da segunda parte da lista no índice secundário compreende armazenar substancialmente apenas as informações de identificação do documento.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo com a reivindicação 1, caracterizado por que o armazenamento da primeira parte da lista num índice primário compreende armazenar a primeira parte da lista num dispositivo de armazenamento físico em ordem de classificação das pontuações de relevância.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo com a reivindicação 1, caracterizado por que armazenar uma segunda parte da lista num índice secundário compreende armazenar a segunda parte da lista num dispositivo de armazenamento físico em ordem numérica dos identificadores de documento.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo coni a reivindicação 1, caracterizado por que a primeira parte de cada lista de documentos inclui uma primeira seção, em que cada documento listado na primeira seção inclui uma primeira pluralidade de atributos de relevância, e uma segunda seção, em que cada documento listado na segunda seção compreende uma segunda pluralidade de atributos de relevância que são um subconjunto do primeiro conjunto de atributos de relevância e em que os documentos listados na primeira seção são classificados mais elevadamente do que os documentos listados na segunda seção.
    - Método Implementado em Computador Para Indexação de Docu3/4
    Oh mentos com Respeito a uma Frase, de acordo com a reivindicação 8, caracterizado por que a primeira parte de cada lista de documentos inclui uma terceira seção em que cada documento listado na terceira seção inclui uma terceira pluralidade de atributos de relevância que são um subconjunto da segunda pluralidade de atributos de relevância e em que os documentos listados na segunda seção são classificados mais elevadamente do que os documentos listados na terceira seção.
    - Método Implementado em Computador Para Indexação de Documentos com Respeito a uma Frase, de acordo com a reivindicação 8, caracterizado por que a primeira parte de cada lista contem n entradas, em que a segunda parte da lista contem m*n entradas, em que m>2, e a terceira parte da lista contém l*n entradas, em que 1>4,
    - Método de Provimento de Sistema de Recuperação de Informações, caracterizado por compreende:
    armazenar um índice primário, que inclui listas de afixação de frases primárias, estando cada lista de afixação associada com uma frase e incluindo, até um número máximo, documentos que contêm a frase, sendo os documentos ordenados por classificação pelas respectivas pontuações de relevância;
    armazenar um índice secundário que inclui listas de afixação de frases secundárias, sendo cada lista de afixação associada com uma lista de afixação de frases primárias no índice primário e incluindo documentos que contêm a frase e que têm pontuações de relevância menores do que a pontuação de relevância de um documento classificado mais baixo na lista de afixação primária para a frase, sendo os documentos classificados pelo identificador de documento;
    receber uma questão de busca, que compreende pelo menos uma frase;
    responder à questão de busca contendo uma primeira frase tendo uma lista de afixação primária e uma lista de afixação secundária e tendo uma segunda frase apenas uma lista de afixação primária,
  4. 4/4 intersectando a listagem de afixação primária da primeira frase com a listagem de afixação primária da segunda frase, para obter um primeiro conjunto de documentos comuns, e intersectando a listagem de afixação secundária da primeira frase com a lista de afixação primária da segunda frase, para obter um segundo conjunto de documentos comuns, e juntando os primeiro e segundos conjuntos de documentos comuns; e classificar os documentos comuns.
    - Sistema de Recuperação de Informações, caracterizado por que compreende:
    1° um índice primário, que inclui listas de afixação da frase primária, sendo cada lista de afixação associada com uma frase e incluindo, até um número máximo, documentos que contêm a frase, sendo os documentos ordenados por classificação pelas respectivas pontuações de relevância; e um índice secundário, que inclui listas de afixação de frases secundárias, sendo cada lista de afixação associada com uma lista de afixação de frases primárias no índice primário, e incluindo documentos que contêm a frase e que têm pontuações de relevância menores do que a pontuação de relevância de um documento classificado mais baixo na lista de afixação primária para a frase, sendo os documentos ordenados pelo identificador de documento.
    1/6
    2/6 υ-
BRPI0614024-6A 2005-01-25 2006-01-25 Sistema de recuperação de informações e métodos implementado em computador para indexação de documentos com respeito a uma frase e de provimento do respectivo sistema BRPI0614024B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/043,695 US7567959B2 (en) 2004-07-26 2005-01-25 Multiple index based information retrieval system
US11/043,695 2005-01-25
PCT/US2006/002709 WO2006081325A2 (en) 2005-01-25 2006-01-25 Multiple index based information retrieval system

Publications (2)

Publication Number Publication Date
BRPI0614024A2 BRPI0614024A2 (pt) 2012-12-25
BRPI0614024B1 true BRPI0614024B1 (pt) 2018-02-14

Family

ID=36741037

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0614024-6A BRPI0614024B1 (pt) 2005-01-25 2006-01-25 Sistema de recuperação de informações e métodos implementado em computador para indexação de documentos com respeito a uma frase e de provimento do respectivo sistema

Country Status (11)

Country Link
US (5) US7567959B2 (pt)
EP (1) EP1844391B1 (pt)
JP (1) JP4881322B2 (pt)
KR (1) KR101273520B1 (pt)
CN (1) CN101133388B (pt)
AU (2) AU2006208079B2 (pt)
BR (1) BRPI0614024B1 (pt)
CA (1) CA2595674C (pt)
DK (1) DK1844391T3 (pt)
NO (1) NO338518B1 (pt)
WO (1) WO2006081325A2 (pt)

Families Citing this family (142)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266553B1 (en) * 2002-07-01 2007-09-04 Microsoft Corporation Content data indexing
US7567959B2 (en) 2004-07-26 2009-07-28 Google Inc. Multiple index based information retrieval system
US7584175B2 (en) 2004-07-26 2009-09-01 Google Inc. Phrase-based generation of document descriptions
US7580929B2 (en) * 2004-07-26 2009-08-25 Google Inc. Phrase-based personalization of searches in an information retrieval system
US7702618B1 (en) 2004-07-26 2010-04-20 Google Inc. Information retrieval system for archiving multiple document versions
US7536408B2 (en) 2004-07-26 2009-05-19 Google Inc. Phrase-based indexing in an information retrieval system
US7599914B2 (en) * 2004-07-26 2009-10-06 Google Inc. Phrase-based searching in an information retrieval system
US7711679B2 (en) 2004-07-26 2010-05-04 Google Inc. Phrase-based detection of duplicate documents in an information retrieval system
US7580921B2 (en) * 2004-07-26 2009-08-25 Google Inc. Phrase identification in an information retrieval system
US7199571B2 (en) * 2004-07-27 2007-04-03 Optisense Network, Inc. Probe apparatus for use in a separable connector, and systems including same
US20060036598A1 (en) * 2004-08-09 2006-02-16 Jie Wu Computerized method for ranking linked information items in distributed sources
US7539661B2 (en) * 2005-06-02 2009-05-26 Delphi Technologies, Inc. Table look-up method with adaptive hashing
US7451135B2 (en) * 2005-06-13 2008-11-11 Inform Technologies, Llc System and method for retrieving and displaying information relating to electronic documents available from an informational network
US20070150721A1 (en) * 2005-06-13 2007-06-28 Inform Technologies, Llc Disambiguation for Preprocessing Content to Determine Relationships
JP4756953B2 (ja) * 2005-08-26 2011-08-24 富士通株式会社 情報検索装置および情報検索方法
US20070078889A1 (en) * 2005-10-04 2007-04-05 Hoskinson Ronald A Method and system for automated knowledge extraction and organization
US7676463B2 (en) * 2005-11-15 2010-03-09 Kroll Ontrack, Inc. Information exploration systems and method
US8126874B2 (en) * 2006-05-09 2012-02-28 Google Inc. Systems and methods for generating statistics from search engine query logs
JP4322887B2 (ja) * 2006-06-01 2009-09-02 株式会社東芝 スレッド順位付け装置及び方法
US9015197B2 (en) 2006-08-07 2015-04-21 Oracle International Corporation Dynamic repartitioning for changing a number of nodes or partitions in a distributed search system
US20080033943A1 (en) * 2006-08-07 2008-02-07 Bea Systems, Inc. Distributed index search
US20080071732A1 (en) * 2006-09-18 2008-03-20 Konstantin Koll Master/slave index in computer systems
US20080082554A1 (en) * 2006-10-03 2008-04-03 Paul Pedersen Systems and methods for providing a dynamic document index
US8301603B2 (en) * 2006-10-06 2012-10-30 Nec Corporation Information document search system, method and program for partitioned indexes on a time series in association with a backup document storage
US7966321B2 (en) * 2007-01-17 2011-06-21 Google Inc. Presentation of local results
US7966309B2 (en) 2007-01-17 2011-06-21 Google Inc. Providing relevance-ordered categories of information
US8005822B2 (en) 2007-01-17 2011-08-23 Google Inc. Location in search queries
US8326858B2 (en) * 2007-01-17 2012-12-04 Google Inc. Synchronization of fixed and mobile data
US8966407B2 (en) 2007-01-17 2015-02-24 Google Inc. Expandable homepage modules
US8280877B2 (en) * 2007-02-22 2012-10-02 Microsoft Corporation Diverse topic phrase extraction
US8166045B1 (en) 2007-03-30 2012-04-24 Google Inc. Phrase extraction using subphrase scoring
US7702614B1 (en) 2007-03-30 2010-04-20 Google Inc. Index updating using segment swapping
US7693813B1 (en) 2007-03-30 2010-04-06 Google Inc. Index server architecture using tiered and sharded phrase posting lists
US8086594B1 (en) 2007-03-30 2011-12-27 Google Inc. Bifurcated document relevance scoring
US8166021B1 (en) 2007-03-30 2012-04-24 Google Inc. Query phrasification
US7925655B1 (en) 2007-03-30 2011-04-12 Google Inc. Query scheduling using hierarchical tiers of index servers
US8583419B2 (en) * 2007-04-02 2013-11-12 Syed Yasin Latent metonymical analysis and indexing (LMAI)
US7809610B2 (en) * 2007-04-09 2010-10-05 Platformation, Inc. Methods and apparatus for freshness and completeness of information
US7809714B1 (en) 2007-04-30 2010-10-05 Lawrence Richard Smith Process for enhancing queries for information retrieval
US7814107B1 (en) 2007-05-25 2010-10-12 Amazon Technologies, Inc. Generating similarity scores for matching non-identical data strings
US7908279B1 (en) 2007-05-25 2011-03-15 Amazon Technologies, Inc. Filtering invalid tokens from a document using high IDF token filtering
US8046372B1 (en) 2007-05-25 2011-10-25 Amazon Technologies, Inc. Duplicate entry detection system and method
US7917516B2 (en) * 2007-06-08 2011-03-29 Apple Inc. Updating an inverted index
EP2031508A1 (en) * 2007-08-31 2009-03-04 Ricoh Europe PLC Network printing apparatus and method
US8117223B2 (en) * 2007-09-07 2012-02-14 Google Inc. Integrating external related phrase information into a phrase-based indexing information retrieval system
US8671104B2 (en) * 2007-10-12 2014-03-11 Palo Alto Research Center Incorporated System and method for providing orientation into digital information
US8165985B2 (en) 2007-10-12 2012-04-24 Palo Alto Research Center Incorporated System and method for performing discovery of digital information in a subject area
US8073682B2 (en) * 2007-10-12 2011-12-06 Palo Alto Research Center Incorporated System and method for prospecting digital information
US20090112843A1 (en) * 2007-10-29 2009-04-30 International Business Machines Corporation System and method for providing differentiated service levels for search index
US7895225B1 (en) * 2007-12-06 2011-02-22 Amazon Technologies, Inc. Identifying potential duplicates of a document in a document corpus
US8799264B2 (en) * 2007-12-14 2014-08-05 Microsoft Corporation Method for improving search engine efficiency
WO2009111631A1 (en) * 2008-03-05 2009-09-11 Chacha Search, Inc. Method and system for triggering a search request
GB2471432A (en) * 2008-04-03 2010-12-29 Icurrent Inc Information display system based on user profile data with assisted and explicit profile modification
CN101359331B (zh) * 2008-05-04 2014-03-19 索意互动(北京)信息技术有限公司 对搜索结果重新排序的方法和系统
US20090287684A1 (en) * 2008-05-14 2009-11-19 Bennett James D Historical internet
US8161036B2 (en) * 2008-06-27 2012-04-17 Microsoft Corporation Index optimization for ranking using a linear model
US8171031B2 (en) 2008-06-27 2012-05-01 Microsoft Corporation Index optimization for ranking using a linear model
US8788476B2 (en) * 2008-08-15 2014-07-22 Chacha Search, Inc. Method and system of triggering a search request
US20100057577A1 (en) * 2008-08-28 2010-03-04 Palo Alto Research Center Incorporated System And Method For Providing Topic-Guided Broadening Of Advertising Targets In Social Indexing
US8209616B2 (en) * 2008-08-28 2012-06-26 Palo Alto Research Center Incorporated System and method for interfacing a web browser widget with social indexing
US8010545B2 (en) * 2008-08-28 2011-08-30 Palo Alto Research Center Incorporated System and method for providing a topic-directed search
US20100057536A1 (en) * 2008-08-28 2010-03-04 Palo Alto Research Center Incorporated System And Method For Providing Community-Based Advertising Term Disambiguation
JP5384884B2 (ja) * 2008-09-03 2014-01-08 日本電信電話株式会社 情報検索装置および情報検索プログラム
US8156130B2 (en) 2008-10-17 2012-04-10 Embarq Holdings Company Llc System and method for collapsing search results
US8874564B2 (en) * 2008-10-17 2014-10-28 Centurylink Intellectual Property Llc System and method for communicating search results to one or more other parties
US8326829B2 (en) * 2008-10-17 2012-12-04 Centurylink Intellectual Property Llc System and method for displaying publication dates for search results
US8549016B2 (en) * 2008-11-14 2013-10-01 Palo Alto Research Center Incorporated System and method for providing robust topic identification in social indexes
US8239397B2 (en) * 2009-01-27 2012-08-07 Palo Alto Research Center Incorporated System and method for managing user attention by detecting hot and cold topics in social indexes
US8356044B2 (en) * 2009-01-27 2013-01-15 Palo Alto Research Center Incorporated System and method for providing default hierarchical training for social indexing
US8452781B2 (en) * 2009-01-27 2013-05-28 Palo Alto Research Center Incorporated System and method for using banded topic relevance and time for article prioritization
US9245033B2 (en) 2009-04-02 2016-01-26 Graham Holdings Company Channel sharing
US10089391B2 (en) * 2009-07-29 2018-10-02 Herbminers Informatics Limited Ontological information retrieval system
GB2472250A (en) * 2009-07-31 2011-02-02 Stephen Timothy Morris Method for determining document relevance
US20110040762A1 (en) * 2009-08-12 2011-02-17 Globalspec, Inc. Segmenting postings list reader
US20110078131A1 (en) * 2009-09-30 2011-03-31 Microsoft Corporation Experimental web search system
US8838576B2 (en) * 2009-10-12 2014-09-16 Yahoo! Inc. Posting list intersection parallelism in query processing
US8756215B2 (en) * 2009-12-02 2014-06-17 International Business Machines Corporation Indexing documents
US20110258212A1 (en) * 2010-04-14 2011-10-20 Microsoft Corporation Automatic query suggestion generation using sub-queries
US9031944B2 (en) 2010-04-30 2015-05-12 Palo Alto Research Center Incorporated System and method for providing multi-core and multi-level topical organization in social indexes
US10216831B2 (en) * 2010-05-19 2019-02-26 Excalibur Ip, Llc Search results summarized with tokens
US8352474B2 (en) * 2010-06-16 2013-01-08 Fuji Xerox Co., Ltd. System and method for retrieving information using a query based index
US20120047172A1 (en) * 2010-08-23 2012-02-23 Google Inc. Parallel document mining
US8655648B2 (en) * 2010-09-01 2014-02-18 Microsoft Corporation Identifying topically-related phrases in a browsing sequence
US8738673B2 (en) 2010-09-03 2014-05-27 International Business Machines Corporation Index partition maintenance over monotonically addressed document sequences
JP5492814B2 (ja) * 2011-03-28 2014-05-14 デジタルア−ツ株式会社 検索装置、検索システム、方法およびプログラム
US20120311080A1 (en) * 2011-06-03 2012-12-06 Thomas Alsina Management of Downloads from a Network-Based Digital Data Repository
US9201895B2 (en) 2011-06-03 2015-12-01 Apple Inc. Management of downloads from a network-based digital data repository based on network performance
US8595238B2 (en) 2011-06-22 2013-11-26 International Business Machines Corporation Smart index creation and reconciliation in an interconnected network of systems
US9152697B2 (en) * 2011-07-13 2015-10-06 International Business Machines Corporation Real-time search of vertically partitioned, inverted indexes
US20130024459A1 (en) * 2011-07-20 2013-01-24 Microsoft Corporation Combining Full-Text Search and Queryable Fields in the Same Data Structure
US8818971B1 (en) 2012-01-30 2014-08-26 Google Inc. Processing bulk deletions in distributed databases
US9892198B2 (en) * 2012-06-07 2018-02-13 Oath Inc. Page personalization performed by an edge server
US8892422B1 (en) 2012-07-09 2014-11-18 Google Inc. Phrase identification in a sequence of words
US20140046976A1 (en) * 2012-08-11 2014-02-13 Guangsheng Zhang Systems, methods, and user interface for effectively presenting information
GB2505183A (en) * 2012-08-21 2014-02-26 Ibm Discovering composite keys
US10198776B2 (en) 2012-09-21 2019-02-05 Graham Holdings Company System and method for delivering an open profile personalization system through social media based on profile data structures that contain interest nodes or channels
US9721000B2 (en) * 2012-12-20 2017-08-01 Microsoft Technology Licensing, Llc Generating and using a customized index
US20140195961A1 (en) * 2013-01-07 2014-07-10 Apple Inc. Dynamic Index
US10387429B2 (en) * 2013-02-08 2019-08-20 Jive Software, Inc. Fast ad-hoc filtering of time series analytics
US9501506B1 (en) 2013-03-15 2016-11-22 Google Inc. Indexing system
US9256644B1 (en) * 2013-03-15 2016-02-09 Ca, Inc. System for identifying and investigating shared and derived content
US9575958B1 (en) * 2013-05-02 2017-02-21 Athena Ann Smyros Differentiation testing
US9483568B1 (en) 2013-06-05 2016-11-01 Google Inc. Indexing system
US9146980B1 (en) 2013-06-24 2015-09-29 Google Inc. Temporal content selection
US20150019565A1 (en) * 2013-07-11 2015-01-15 Outside Intelligence Inc. Method And System For Scoring Credibility Of Information Sources
US9489411B2 (en) * 2013-07-29 2016-11-08 Sybase, Inc. High performance index creation
US9424345B1 (en) 2013-09-25 2016-08-23 Google Inc. Contextual content distribution
US9336258B2 (en) 2013-10-25 2016-05-10 International Business Machines Corporation Reducing database locking contention using multi-version data record concurrency control
US9450771B2 (en) * 2013-11-20 2016-09-20 Blab, Inc. Determining information inter-relationships from distributed group discussions
KR101592670B1 (ko) * 2014-02-17 2016-02-11 포항공과대학교 산학협력단 인덱스를 이용하는 데이터 검색 장치 및 이를 이용하는 방법
CN103810300B (zh) * 2014-03-10 2017-08-01 北京国双科技有限公司 用于非索引覆盖的数据查询方法和装置
US9817855B2 (en) * 2014-03-17 2017-11-14 SynerScope B.V. Method and system for determining a measure of overlap between data entries
US10162882B2 (en) 2014-07-14 2018-12-25 Nternational Business Machines Corporation Automatically linking text to concepts in a knowledge base
US10437869B2 (en) * 2014-07-14 2019-10-08 International Business Machines Corporation Automatic new concept definition
US10503761B2 (en) 2014-07-14 2019-12-10 International Business Machines Corporation System for searching, recommending, and exploring documents through conceptual associations
US9864741B2 (en) * 2014-09-23 2018-01-09 Prysm, Inc. Automated collective term and phrase index
US9785724B2 (en) 2014-10-30 2017-10-10 Microsoft Technology Licensing, Llc Secondary queue for index process
US10042928B1 (en) 2014-12-03 2018-08-07 The Government Of The United States As Represented By The Director, National Security Agency System and method for automated reasoning with and searching of documents
US10025783B2 (en) * 2015-01-30 2018-07-17 Microsoft Technology Licensing, Llc Identifying similar documents using graphs
CN104715063B (zh) * 2015-03-31 2018-11-02 百度在线网络技术(北京)有限公司 搜索排序方法和装置
US11281639B2 (en) 2015-06-23 2022-03-22 Microsoft Technology Licensing, Llc Match fix-up to remove matching documents
US10242071B2 (en) 2015-06-23 2019-03-26 Microsoft Technology Licensing, Llc Preliminary ranker for scoring matching documents
US10467215B2 (en) 2015-06-23 2019-11-05 Microsoft Technology Licensing, Llc Matching documents using a bit vector search index
US11392568B2 (en) 2015-06-23 2022-07-19 Microsoft Technology Licensing, Llc Reducing matching documents for a search query
US10565198B2 (en) 2015-06-23 2020-02-18 Microsoft Technology Licensing, Llc Bit vector search index using shards
US10733164B2 (en) 2015-06-23 2020-08-04 Microsoft Technology Licensing, Llc Updating a bit vector search index
US10229143B2 (en) * 2015-06-23 2019-03-12 Microsoft Technology Licensing, Llc Storage and retrieval of data from a bit vector search index
US11392582B2 (en) * 2015-10-15 2022-07-19 Sumo Logic, Inc. Automatic partitioning
CN107015992A (zh) * 2016-01-28 2017-08-04 珠海金山办公软件有限公司 一种文档显示方法及装置
US10885009B1 (en) * 2016-06-14 2021-01-05 Amazon Technologies, Inc. Generating aggregate views for data indices
US10810236B1 (en) * 2016-10-21 2020-10-20 Twitter, Inc. Indexing data in information retrieval systems
US10169331B2 (en) * 2017-01-29 2019-01-01 International Business Machines Corporation Text mining for automatically determining semantic relatedness
CN107357846B (zh) * 2017-06-26 2018-12-14 北京金堤科技有限公司 关系图谱的展示方法以及装置
US11449484B2 (en) * 2018-06-25 2022-09-20 Ebay Inc. Data indexing and searching using permutation indexes
CN108897730B (zh) * 2018-06-29 2022-07-29 国信优易数据股份有限公司 一种pdf文本的处理方法以及装置
CN109376121B (zh) * 2018-08-10 2021-07-02 南京华讯方舟通信设备有限公司 一种基于ElasticSearch全文检索的文件索引系统及方法
CN109086456B (zh) * 2018-08-31 2020-11-03 中国联合网络通信集团有限公司 数据索引方法及装置
US10902069B2 (en) 2018-12-18 2021-01-26 Runtime Collective Limited Distributed indexing and aggregation
CN112084435A (zh) * 2020-08-07 2020-12-15 北京三快在线科技有限公司 搜索排序模型训练方法及装置、搜索排序方法及装置
US11442971B1 (en) * 2021-05-26 2022-09-13 Adobe Inc. Selective database re-indexing
US20230109804A1 (en) * 2021-10-08 2023-04-13 Open Text Holdings, Inc. System and method for efficient multi-stage querying of archived data
WO2023059909A2 (en) * 2021-10-08 2023-04-13 Open Text Holdings, Inc. System and method for efficient multi-stage querying of archived data

Family Cites Families (191)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS619753A (ja) * 1984-06-26 1986-01-17 Hitachi Ltd 文書処理装置における頻発熟語の自動登録方法
US4773039A (en) * 1985-11-19 1988-09-20 International Business Machines Corporation Information processing system for compaction and replacement of phrases
JPH02270067A (ja) 1987-04-16 1990-11-05 Westinghouse Electric Corp <We> インテリジェント問合せシステム
US5321833A (en) 1990-08-29 1994-06-14 Gte Laboratories Incorporated Adaptive ranking system for information retrieval
US5278980A (en) 1991-08-16 1994-01-11 Xerox Corporation Iterative technique for phrase query formation and an information retrieval system employing same
US5523946A (en) 1992-02-11 1996-06-04 Xerox Corporation Compact encoding of multi-lingual translation dictionaries
US5353401A (en) * 1992-11-06 1994-10-04 Ricoh Company, Ltd. Automatic interface layout generator for database systems
JPH0756933A (ja) * 1993-06-24 1995-03-03 Xerox Corp 文書検索方法
US5692176A (en) * 1993-11-22 1997-11-25 Reed Elsevier Inc. Associative text search and retrieval system
US5734749A (en) 1993-12-27 1998-03-31 Nec Corporation Character string input system for completing an input character string with an incomplete input indicative sign
JPH07262217A (ja) 1994-03-24 1995-10-13 Fuji Xerox Co Ltd テキスト検索装置
US5715443A (en) 1994-07-25 1998-02-03 Apple Computer, Inc. Method and apparatus for searching for information in a data processing system and for providing scheduled search reports in a summary format
JP3669016B2 (ja) 1994-09-30 2005-07-06 株式会社日立製作所 文書情報分類装置
US5694593A (en) 1994-10-05 1997-12-02 Northeastern University Distributed computer database system and method
US5758257A (en) * 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
US6460036B1 (en) 1994-11-29 2002-10-01 Pinpoint Incorporated System and method for providing customized electronic newspapers and target advertisements
JP2929963B2 (ja) * 1995-03-15 1999-08-03 松下電器産業株式会社 文書検索装置および単語索引作成方法および文書検索方法
US5745602A (en) * 1995-05-01 1998-04-28 Xerox Corporation Automatic method of selecting multi-word key phrases from a document
US5659732A (en) 1995-05-17 1997-08-19 Infoseek Corporation Document retrieval over networks wherein ranking and relevance scores are computed at the client for multiple database documents
US5724571A (en) 1995-07-07 1998-03-03 Sun Microsystems, Inc. Method and apparatus for generating query responses in a computer-based document retrieval system
JPH0934911A (ja) 1995-07-18 1997-02-07 Fuji Xerox Co Ltd 情報検索装置
US5668987A (en) 1995-08-31 1997-09-16 Sybase, Inc. Database system with subquery optimizer
US6366933B1 (en) 1995-10-27 2002-04-02 At&T Corp. Method and apparatus for tracking and viewing changes on the web
US5757917A (en) 1995-11-01 1998-05-26 First Virtual Holdings Incorporated Computerized payment system for purchasing goods and services on the internet
US6098034A (en) 1996-03-18 2000-08-01 Expert Ease Development, Ltd. Method for standardizing phrasing in a document
US7051024B2 (en) 1999-04-08 2006-05-23 Microsoft Corporation Document summarizer for word processors
US5924108A (en) 1996-03-29 1999-07-13 Microsoft Corporation Document summarizer for word processors
US5794233A (en) 1996-04-09 1998-08-11 Rubinstein; Seymour I. Browse by prompted keyword phrases
US5721897A (en) 1996-04-09 1998-02-24 Rubinstein; Seymour I. Browse by prompted keyword phrases with an improved user interface
US5826261A (en) * 1996-05-10 1998-10-20 Spencer; Graham System and method for querying multiple, distributed databases by selective sharing of local relative significance information for terms related to the query
US5915249A (en) * 1996-06-14 1999-06-22 Excite, Inc. System and method for accelerated query evaluation of very large full-text databases
EP0822502A1 (en) * 1996-07-31 1998-02-04 BRITISH TELECOMMUNICATIONS public limited company Data access system
US5920854A (en) * 1996-08-14 1999-07-06 Infoseek Corporation Real-time document collection search engine with phrase indexing
US6085186A (en) 1996-09-20 2000-07-04 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US20030093790A1 (en) 2000-03-28 2003-05-15 Logan James D. Audio and video program recording, editing and playback systems using metadata
JP3584848B2 (ja) 1996-10-31 2004-11-04 富士ゼロックス株式会社 文書処理装置、項目検索装置及び項目検索方法
JP3902825B2 (ja) * 1997-01-16 2007-04-11 キヤノン株式会社 文書検索システムおよび方法
US5960383A (en) 1997-02-25 1999-09-28 Digital Equipment Corporation Extraction of key sections from texts using automatic indexing techniques
US6539430B1 (en) * 1997-03-25 2003-03-25 Symantec Corporation System and method for filtering data received by a computer system
US6185550B1 (en) 1997-06-13 2001-02-06 Sun Microsystems, Inc. Method and apparatus for classifying documents within a class hierarchy creating term vector, term file and relevance ranking
US6470307B1 (en) 1997-06-23 2002-10-22 National Research Council Of Canada Method and apparatus for automatically identifying keywords within a document
US5995962A (en) * 1997-07-25 1999-11-30 Claritech Corporation Sort system for merging database entries
US5983216A (en) 1997-09-12 1999-11-09 Infoseek Corporation Performing automated document collection and selection by providing a meta-index with meta-index values indentifying corresponding document collections
US5845278A (en) 1997-09-12 1998-12-01 Inioseek Corporation Method for automatically selecting collections to search in full text searches
US6018733A (en) 1997-09-12 2000-01-25 Infoseek Corporation Methods for iteratively and interactively performing collection selection in full text searches
US5956722A (en) 1997-09-23 1999-09-21 At&T Corp. Method for effective indexing of partially dynamic documents
US6542888B2 (en) 1997-11-26 2003-04-01 International Business Machines Corporation Content filtering for electronic documents generated in multiple foreign languages
JP4183311B2 (ja) 1997-12-22 2008-11-19 株式会社リコー 文書の注釈方法、注釈装置および記録媒体
US6185558B1 (en) 1998-03-03 2001-02-06 Amazon.Com, Inc. Identifying the items most relevant to a current query based on items selected in connection with similar queries
JP3664874B2 (ja) * 1998-03-28 2005-06-29 松下電器産業株式会社 文書検索装置
JPH11293535A (ja) * 1998-04-10 1999-10-26 Mitsubishi Rayon Co Ltd 熱融着複合糸の製造方法
US6638314B1 (en) 1998-06-26 2003-10-28 Microsoft Corporation Method of web crawling utilizing crawl numbers
US6363377B1 (en) 1998-07-30 2002-03-26 Sarnoff Corporation Search data processor
US6377949B1 (en) 1998-09-18 2002-04-23 Tacit Knowledge Systems, Inc. Method and apparatus for assigning a confidence level to a term within a user knowledge profile
US6366911B1 (en) * 1998-09-28 2002-04-02 International Business Machines Corporation Partitioning of sorted lists (containing duplicate entries) for multiprocessors sort and merge
US6415283B1 (en) 1998-10-13 2002-07-02 Orack Corporation Methods and apparatus for determining focal points of clusters in a tree structure
US7058589B1 (en) 1998-12-17 2006-06-06 Iex Corporation Method and system for employee work scheduling
US6862710B1 (en) 1999-03-23 2005-03-01 Insightful Corporation Internet navigation using soft hyperlinks
JP4021583B2 (ja) * 1999-04-08 2007-12-12 富士通株式会社 情報検索装置、情報検索方法、及びその方法を実現するプログラムを記録した記録媒体
US6430539B1 (en) 1999-05-06 2002-08-06 Hnc Software Predictive modeling of consumer financial behavior
US6175830B1 (en) * 1999-05-20 2001-01-16 Evresearch, Ltd. Information management, retrieval and display system and associated method
US7089236B1 (en) 1999-06-24 2006-08-08 Search 123.Com, Inc. Search engine interface
US6601026B2 (en) 1999-09-17 2003-07-29 Discern Communications, Inc. Information retrieval by natural language querying
US6996775B1 (en) * 1999-10-29 2006-02-07 Verizon Laboratories Inc. Hypervideo: information retrieval using time-related multimedia:
US6751612B1 (en) 1999-11-29 2004-06-15 Xerox Corporation User query generate search results that rank set of servers where ranking is based on comparing content on each server with user query, frequency at which content on each server is altered using web crawler in a search engine
US6684183B1 (en) 1999-12-06 2004-01-27 Comverse Ltd. Generic natural language service creation environment
US6963867B2 (en) * 1999-12-08 2005-11-08 A9.Com, Inc. Search query processing to provide category-ranked presentation of search results
US6785671B1 (en) * 1999-12-08 2004-08-31 Amazon.Com, Inc. System and method for locating web-based product offerings
US6772150B1 (en) 1999-12-10 2004-08-03 Amazon.Com, Inc. Search query refinement using related search phrases
AU4517501A (en) 1999-12-10 2001-06-18 Amazon.Com, Inc. Search query refinement using related search phrases
CA2293064C (en) * 1999-12-22 2004-05-04 Ibm Canada Limited-Ibm Canada Limitee Method and apparatus for analyzing data retrieval using index scanning
US6981040B1 (en) 1999-12-28 2005-12-27 Utopy, Inc. Automatic, personalized online information and product services
US6820237B1 (en) 2000-01-21 2004-11-16 Amikanow! Corporation Apparatus and method for context-based highlighting of an electronic document
US6883135B1 (en) 2000-01-28 2005-04-19 Microsoft Corporation Proxy server using a statistical model
US6654739B1 (en) 2000-01-31 2003-11-25 International Business Machines Corporation Lightweight document clustering
US6571240B1 (en) 2000-02-02 2003-05-27 Chi Fai Ho Information processing for searching categorizing information in a document based on a categorization hierarchy and extracted phrases
JP2001303279A (ja) * 2000-02-17 2001-10-31 Toyo Gurahoiru:Kk 自己犠牲型金属防食剤および金属防食方法
US7137065B1 (en) 2000-02-24 2006-11-14 International Business Machines Corporation System and method for classifying electronically posted documents
US20060143714A1 (en) 2000-03-09 2006-06-29 Pkware, Inc. System and method for manipulating and managing computer archive files
US6859800B1 (en) 2000-04-26 2005-02-22 Global Information Research And Technologies Llc System for fulfilling an information need
CN1465018A (zh) 2000-05-11 2003-12-31 南加利福尼亚大学 机器翻译技术
US6691106B1 (en) 2000-05-23 2004-02-10 Intel Corporation Profile driven instant web portal
US7096220B1 (en) 2000-05-24 2006-08-22 Reachforce, Inc. Web-based customer prospects harvester system
US20020042707A1 (en) 2000-06-19 2002-04-11 Gang Zhao Grammar-packaged parsing
US20020078090A1 (en) 2000-06-30 2002-06-20 Hwang Chung Hee Ontological concept-based, user-centric text summarization
EP1182577A1 (en) 2000-08-18 2002-02-27 SER Systeme AG Produkte und Anwendungen der Datenverarbeitung Associative memory
KR100426382B1 (ko) 2000-08-23 2004-04-08 학교법인 김포대학 엔트로피 정보와 베이지안 에스오엠을 이용한 문서군집기반의 순위조정 방법
US7017114B2 (en) 2000-09-20 2006-03-21 International Business Machines Corporation Automatic correlation method for generating summaries for text documents
US20020143524A1 (en) 2000-09-29 2002-10-03 Lingomotors, Inc. Method and resulting system for integrating a query reformation module onto an information retrieval system
US20020065857A1 (en) 2000-10-04 2002-05-30 Zbigniew Michalewicz System and method for analysis and clustering of documents for search engine
CA2322599A1 (en) 2000-10-06 2002-04-06 Ibm Canada Limited-Ibm Canada Limitee System and method for workflow control of contractual activities
JP2002132789A (ja) 2000-10-19 2002-05-10 Hitachi Ltd 文書検索方法
US7130790B1 (en) 2000-10-24 2006-10-31 Global Translations, Inc. System and method for closed caption data translation
JP2002169834A (ja) 2000-11-20 2002-06-14 Hewlett Packard Co <Hp> 文書のベクトル解析を行うコンピュータおよび方法
US20020091671A1 (en) 2000-11-23 2002-07-11 Andreas Prokoph Method and system for data retrieval in large collections of data
KR20020045343A (ko) 2000-12-08 2002-06-19 오길록 표준화된 문장 구문구조 및 의미구조에 기반한 정보생성/검색 장치 및 그 방법
JP2002207760A (ja) 2001-01-10 2002-07-26 Hitachi Ltd 文書検索方法及びその実施装置並びにその処理プログラムを記録した記録媒体
US6778980B1 (en) 2001-02-22 2004-08-17 Drugstore.Com Techniques for improved searching of electronically stored information
US6741984B2 (en) 2001-02-23 2004-05-25 General Electric Company Method, system and storage medium for arranging a database
US6721728B2 (en) 2001-03-02 2004-04-13 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration System, method and apparatus for discovering phrases in a database
US6823333B2 (en) 2001-03-02 2004-11-23 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration System, method and apparatus for conducting a keyterm search
US6697793B2 (en) 2001-03-02 2004-02-24 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration System, method and apparatus for generating phrases from a database
US6741981B2 (en) 2001-03-02 2004-05-25 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration (Nasa) System, method and apparatus for conducting a phrase search
US7194483B1 (en) 2001-05-07 2007-03-20 Intelligenxia, Inc. Method, system, and computer program product for concept-based multi-dimensional analysis of unstructured information
US7171619B1 (en) 2001-07-05 2007-01-30 Sun Microsystems, Inc. Methods and apparatus for accessing document content
US6769016B2 (en) 2001-07-26 2004-07-27 Networks Associates Technology, Inc. Intelligent SPAM detection system using an updateable neural analysis engine
EP1421518A1 (en) 2001-08-08 2004-05-26 Quiver, Inc. Document categorization engine
US20030031996A1 (en) 2001-08-08 2003-02-13 Adam Robinson Method and system for evaluating documents
US6778979B2 (en) 2001-08-13 2004-08-17 Xerox Corporation System for automatically generating queries
US6978274B1 (en) 2001-08-31 2005-12-20 Attenex Corporation System and method for dynamically evaluating latent concepts in unstructured documents
JP2003242176A (ja) 2001-12-13 2003-08-29 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
US7356527B2 (en) 2001-12-19 2008-04-08 International Business Machines Corporation Lossy index compression
US6741982B2 (en) 2001-12-19 2004-05-25 Cognos Incorporated System and method for retrieving data from a database system
US7243092B2 (en) 2001-12-28 2007-07-10 Sap Ag Taxonomy generation for electronic documents
US7137062B2 (en) 2001-12-28 2006-11-14 International Business Machines Corporation System and method for hierarchical segmentation with latent semantic indexing in scale space
JP4108337B2 (ja) * 2002-01-10 2008-06-25 三菱電機株式会社 電子ファイリングシステム及びその検索インデックス作成方法
US7139756B2 (en) 2002-01-22 2006-11-21 International Business Machines Corporation System and method for detecting duplicate and similar documents
US7028045B2 (en) 2002-01-25 2006-04-11 International Business Machines Corporation Compressing index files in information retrieval
US7421660B2 (en) 2003-02-04 2008-09-02 Cataphora, Inc. Method and apparatus to visually present discussions for data mining purposes
JP4092933B2 (ja) 2002-03-20 2008-05-28 富士ゼロックス株式会社 文書情報検索装置及び文書情報検索プログラム
US7743045B2 (en) 2005-08-10 2010-06-22 Google Inc. Detecting spam related and biased contexts for programmable search engines
US20030195937A1 (en) 2002-04-16 2003-10-16 Kontact Software Inc. Intelligent message screening
US6877001B2 (en) 2002-04-25 2005-04-05 Mitsubishi Electric Research Laboratories, Inc. Method and system for retrieving documents with spoken queries
NZ518744A (en) 2002-05-03 2004-08-27 Hyperbolex Ltd Electronic document indexing using word use nodes, node objects and link objects
US7085771B2 (en) 2002-05-17 2006-08-01 Verity, Inc System and method for automatically discovering a hierarchy of concepts from a corpus of documents
US7028026B1 (en) 2002-05-28 2006-04-11 Ask Jeeves, Inc. Relevancy-based database retrieval and display techniques
JP4452012B2 (ja) 2002-07-04 2010-04-21 ヒューレット・パッカード・カンパニー 文書の特有性評価方法
JP2004046438A (ja) 2002-07-10 2004-02-12 Nippon Telegr & Teleph Corp <Ntt> テキスト検索方法及び装置及びテキスト検索プログラム及びテキスト検索プログラムを格納した記憶媒体
US7379978B2 (en) 2002-07-19 2008-05-27 Fiserv Incorporated Electronic item management and archival system and method of operating the same
US20040034633A1 (en) 2002-08-05 2004-02-19 Rickard John Terrell Data search system and method using mutual subsethood measures
US7151864B2 (en) 2002-09-18 2006-12-19 Hewlett-Packard Development Company, L.P. Information research initiated from a scanned image media
US7158983B2 (en) 2002-09-23 2007-01-02 Battelle Memorial Institute Text analysis technique
US20040064442A1 (en) 2002-09-27 2004-04-01 Popovitch Steven Gregory Incremental search engine
US6886010B2 (en) 2002-09-30 2005-04-26 The United States Of America As Represented By The Secretary Of The Navy Method for data and text mining and literature-based discovery
JP2004139150A (ja) 2002-10-15 2004-05-13 Ricoh Co Ltd 文書検索装置、プログラム及び記憶媒体
US7970832B2 (en) 2002-11-20 2011-06-28 Return Path, Inc. Electronic message delivery with estimation approaches and complaint, bond, and statistics panels
JP2004192546A (ja) * 2002-12-13 2004-07-08 Nippon Telegr & Teleph Corp <Ntt> 情報検索方法、装置、プログラム、および記録媒体
US20040133560A1 (en) 2003-01-07 2004-07-08 Simske Steven J. Methods and systems for organizing electronic documents
US7725544B2 (en) 2003-01-24 2010-05-25 Aol Inc. Group based spam classification
GB2399427A (en) 2003-03-12 2004-09-15 Canon Kk Apparatus for and method of summarising text
US7945567B2 (en) * 2003-03-17 2011-05-17 Hewlett-Packard Development Company, L.P. Storing and/or retrieving a document within a knowledge base or document repository
US6947930B2 (en) 2003-03-21 2005-09-20 Overture Services, Inc. Systems and methods for interactive search query refinement
US7051023B2 (en) 2003-04-04 2006-05-23 Yahoo! Inc. Systems and methods for generating concept units from search queries
US7149748B1 (en) 2003-05-06 2006-12-12 Sap Ag Expanded inverted index
US7146361B2 (en) * 2003-05-30 2006-12-05 International Business Machines Corporation System, method and computer program product for performing unstructured information management and automatic text analysis, including a search operator functioning as a Weighted AND (WAND)
US7664732B2 (en) 2003-05-31 2010-02-16 Nhn Corporation Method of managing websites registered in search engine and a system thereof
US7272853B2 (en) 2003-06-04 2007-09-18 Microsoft Corporation Origination/destination features and lists for spam prevention
US7051014B2 (en) * 2003-06-18 2006-05-23 Microsoft Corporation Utilizing information redundancy to improve text searches
US7162473B2 (en) 2003-06-26 2007-01-09 Microsoft Corporation Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users
US8042112B1 (en) 2003-07-03 2011-10-18 Google Inc. Scheduler for search engine crawler
US7254580B1 (en) * 2003-07-31 2007-08-07 Google Inc. System and method for selectively searching partitions of a database
JP2005056233A (ja) 2003-08-06 2005-03-03 Nec Corp 移動体通信装置、移動体通信装置の電子メールの受信動作方法及びその電子メールの受信動作プログラム
US20050043940A1 (en) 2003-08-20 2005-02-24 Marvin Elder Preparing a data source for a natural language query
US20050060295A1 (en) 2003-09-12 2005-03-17 Sensory Networks, Inc. Statistical classification of high-speed network data through content inspection
US20050071310A1 (en) 2003-09-30 2005-03-31 Nadav Eiron System, method, and computer program product for identifying multi-page documents in hypertext collections
US20050071328A1 (en) 2003-09-30 2005-03-31 Lawrence Stephen R. Personalization of web search
US7346839B2 (en) 2003-09-30 2008-03-18 Google Inc. Information retrieval based on historical data
US7257564B2 (en) 2003-10-03 2007-08-14 Tumbleweed Communications Corp. Dynamic message filtering
US7240064B2 (en) * 2003-11-10 2007-07-03 Overture Services, Inc. Search engine with hierarchically stored indices
US20050144162A1 (en) * 2003-12-29 2005-06-30 Ping Liang Advanced search, file system, and intelligent assistant agent
US7206389B1 (en) 2004-01-07 2007-04-17 Nuance Communications, Inc. Method and apparatus for generating a speech-recognition-based call-routing system
US20060294124A1 (en) 2004-01-12 2006-12-28 Junghoo Cho Unbiased page ranking
US7310632B2 (en) 2004-02-12 2007-12-18 Microsoft Corporation Decision-theoretic web-crawling and predicting web-page change
US20050198559A1 (en) 2004-03-08 2005-09-08 Kabushiki Kaisha Toshiba Document information management system, document information management program, and document information management method
US20050216564A1 (en) 2004-03-11 2005-09-29 Myers Gregory K Method and apparatus for analysis of electronic communications containing imagery
US20050256848A1 (en) * 2004-05-13 2005-11-17 International Business Machines Corporation System and method for user rank search
WO2006002076A2 (en) 2004-06-15 2006-01-05 Tekelec Methods, systems, and computer program products for content-based screening of messaging service messages
JP2006026844A (ja) 2004-07-20 2006-02-02 Fujitsu Ltd ポリッシングパッド、それを備えた研磨装置及び貼り付け装置
US7599914B2 (en) 2004-07-26 2009-10-06 Google Inc. Phrase-based searching in an information retrieval system
US7584175B2 (en) 2004-07-26 2009-09-01 Google Inc. Phrase-based generation of document descriptions
US7536408B2 (en) 2004-07-26 2009-05-19 Google Inc. Phrase-based indexing in an information retrieval system
US7702618B1 (en) 2004-07-26 2010-04-20 Google Inc. Information retrieval system for archiving multiple document versions
US7711679B2 (en) 2004-07-26 2010-05-04 Google Inc. Phrase-based detection of duplicate documents in an information retrieval system
US7567959B2 (en) 2004-07-26 2009-07-28 Google Inc. Multiple index based information retrieval system
US7580921B2 (en) 2004-07-26 2009-08-25 Google Inc. Phrase identification in an information retrieval system
US7426507B1 (en) 2004-07-26 2008-09-16 Google, Inc. Automatic taxonomy generation in search results using phrases
US7580929B2 (en) 2004-07-26 2009-08-25 Google Inc. Phrase-based personalization of searches in an information retrieval system
US7395260B2 (en) 2004-08-04 2008-07-01 International Business Machines Corporation Method for providing graphical representations of search results in multiple related histograms
US8407239B2 (en) * 2004-08-13 2013-03-26 Google Inc. Multi-stage query processing system and method for use with tokenspace repository
US8504565B2 (en) 2004-09-09 2013-08-06 William M. Pitts Full text search capabilities integrated into distributed file systems— incrementally indexing files
US20060200464A1 (en) 2005-03-03 2006-09-07 Microsoft Corporation Method and system for generating a document summary
WO2006113597A2 (en) 2005-04-14 2006-10-26 The Regents Of The University Of California Method for information retrieval
US7552230B2 (en) 2005-06-15 2009-06-23 International Business Machines Corporation Method and apparatus for reducing spam on peer-to-peer networks
US20080005064A1 (en) 2005-06-28 2008-01-03 Yahoo! Inc. Apparatus and method for content annotation and conditional annotation retrieval in a search context
US7512596B2 (en) 2005-08-01 2009-03-31 Business Objects Americas Processor for fast phrase searching
US7454449B2 (en) * 2005-12-20 2008-11-18 International Business Machines Corporation Method for reorganizing a set of database partitions
JP2007262217A (ja) 2006-03-28 2007-10-11 Toray Ind Inc ポリフェニレンサルファイド樹脂組成物およびそれからなる成形品
WO2007123919A2 (en) 2006-04-18 2007-11-01 Gemini Design Technology, Inc. Method for ranking webpages via circuit simulation
US8166045B1 (en) 2007-03-30 2012-04-24 Google Inc. Phrase extraction using subphrase scoring
JP2008305730A (ja) 2007-06-11 2008-12-18 Fuji Electric Holdings Co Ltd 多色発光デバイスの製造方法
US8117223B2 (en) 2007-09-07 2012-02-14 Google Inc. Integrating external related phrase information into a phrase-based indexing information retrieval system

Also Published As

Publication number Publication date
CN101133388A (zh) 2008-02-27
CA2595674C (en) 2012-07-03
KR20070094972A (ko) 2007-09-27
BRPI0614024A2 (pt) 2012-12-25
US9817825B2 (en) 2017-11-14
AU2010200478B2 (en) 2012-10-04
US20140095511A1 (en) 2014-04-03
NO20074329L (no) 2007-10-23
EP1844391A4 (en) 2010-05-19
US20160283474A1 (en) 2016-09-29
JP2008529138A (ja) 2008-07-31
CA2595674A1 (en) 2006-08-03
EP1844391B1 (en) 2012-10-17
US20180101528A1 (en) 2018-04-12
AU2006208079B2 (en) 2009-11-26
DK1844391T3 (da) 2013-01-28
US10671676B2 (en) 2020-06-02
AU2010200478A1 (en) 2010-03-04
AU2006208079A1 (en) 2006-08-03
US9361331B2 (en) 2016-06-07
KR101273520B1 (ko) 2013-06-14
US20060106792A1 (en) 2006-05-18
NO338518B1 (no) 2016-08-29
CN101133388B (zh) 2011-07-06
US8560550B2 (en) 2013-10-15
US7567959B2 (en) 2009-07-28
JP4881322B2 (ja) 2012-02-22
EP1844391A2 (en) 2007-10-17
US20100030773A1 (en) 2010-02-04
WO2006081325A3 (en) 2007-08-09
WO2006081325A2 (en) 2006-08-03

Similar Documents

Publication Publication Date Title
US10671676B2 (en) Multiple index based information retrieval system
US9817886B2 (en) Information retrieval system for archiving multiple document versions
US9990421B2 (en) Phrase-based searching in an information retrieval system
US7603345B2 (en) Detecting spam documents in a phrase based information retrieval system
US7426507B1 (en) Automatic taxonomy generation in search results using phrases
US7584175B2 (en) Phrase-based generation of document descriptions
CA2513853C (en) Phrase-based indexing in an information retrieval system
CA2513852C (en) Phrase-based searching in an information retrieval system

Legal Events

Date Code Title Description
B06G Technical and formal requirements: other requirements [chapter 6.7 patent gazette]

Free format text: SOLICITA-SE A REGULARIZACAO DA PROCURACAO, UMA VEZ QUE BASEADO NO ARTIGO 216 1O DA LPI, O DOCUMENTO DE PROCURACAO DEVE SER APRESENTADO NO ORIGINAL, TRASLADO OU FOTOCOPIA AUTENTICADA.

B09A Decision: intention to grant [chapter 9.1 patent gazette]
B25D Requested change of name of applicant approved

Owner name: GOOGLE LLC (US)

B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]