IP Library Granted Patent US 8,401,841
Granted Patent B2
US 8,401,841 · App. 11/847,915 · Granted Mar 19, 2013

Retrieval of documents using language models

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,401,841
App. No.
11/847,915
Granted
Mar 19, 2013
Kind
B2
Abstract

Methods of retrieving documents using a language model are disclosed. A method may include preparing a language model of a plurality of documents, receiving a query, processing the query using the language model, and using the processed query to retrieve documents responding to the query via the search engine. The methods may be implemented in software and/or hardware on computing devices, including personal computers, telephones, servers, and others.

Claims (112)

1. A method of modeling documents implemented by a computing device comprising:

receiving a plurality of documents and building a language model, the building comprising, for each of the documents,

tokenizing text included in the document;

defining paragraphs by identifying paragraph boundaries in the tokenized text;

identifying word pairs in each defined paragraph wherein the word pairs comprise two words occurring in any location in the same defined paragraph, including adjacent to one another;

calculating the frequency of the identified word pairs; and

adding the identified word pairs and corresponding frequency information to the language model.

2. The method of claim 1 further comprising:

identifying the language(s) used in the document.

3. The method of claim 1 further comprising:

removing stopwords from the tokenized text.

4. The method of claim 1 further comprising:

extracting text from the document before the tokenizing the text from the document.

5. The method of claim 1 wherein building the language model further comprises:

computing the probability of alternate terms.

6. The method of claim 1 further comprising:

indexing the tokenized text.

7. A method of processing a query for documents implemented by a computing device comprising:

providing a language model, the language model comprising a plurality of terms and a plurality of pair-values, each pair-value representing the relatedness of term pairs within a document;

receiving an original query for documents after the language model is prepared independent of the original query;

tokenizing the original query into a tokenized query;

extracting a group of associated terms from the language model,

wherein the extracting comprises identifying pair-values in the language model corresponding to term pairs comprising a term in the tokenized query and another term that is different from any term in the tokenized query and identifying associated terms as the terms that are different from any term in the tokenized query and that are related to at least one term in the tokenized query and

wherein the probability of relatedness is determined from the pair-values in the language model;

forming an expanded query comprising a top group of associated terms and the original query, wherein the top group of associated terms are a subset of the associated terms, the terms in the top group of associated terms having a higher probability of relatedness to terms in the tokenized query than associated terms not in the top group;

computing a boost weight for each term in the expanded query based on the probability of relatedness of the terms in the expanded query being related to the terms in the original query to create a weighted query; and

submitting the weighted query to a search engine.

8. The method of claim 7 further comprising:

preparing the language model.

9. The method of claim 8 wherein the preparing of the language model comprises:

receiving a plurality of documents and for each of the documents

tokenizing text included in the document;

identifying paragraph boundaries in the tokenized text;

identifying word pairs in the paragraphs, wherein the word pairs comprise two words occurring in any location in a particular paragraph, including adjacent to one another;

calculating the frequency of the word pairs in the paragraphs; and

adding the word pairs and corresponding frequency information to the language model.

10. The method of claim 9 wherein the preparing the language model further comprises:

identifying the language used in the document.

11. The method of claim 9 wherein the preparing the language model further comprises:

removing stopwords from the tokenized text.

12. The method of claim 9 wherein the preparing the language model further comprises:

extracting text from the document before the tokenizing of the text from the document.

13. The method of claim 9 wherein the preparing the language model further comprises:

computing the probability of alternate terms.

14. The method of claim 9 wherein the preparing the language model comprises:

indexing the tokenized text.

15. The method of claim 7 wherein each pair-value represents the relatedness of term pairs within one or more same paragraphs of a document.

16. A method of retrieving documents implemented by a computing device comprising:

receiving a plurality of documents;

building a language model, the building comprising, for each of the documents,

tokenizing text included in the document;

defining paragraphs by identifying paragraph boundaries in the tokenized text;

identifying word pairs in each defined paragraph wherein the word pairs comprise two words occurring in any location in the same defined paragraph, including adjacent to one another;

calculating the frequency of the identified word pairs; and

adding the identified word pairs and corresponding frequency information to the language model;

receiving an original query for documents;

tokenizing the original query into a tokenized query;

extracting a group of associated terms from the language model,

wherein the associated terms have a highest probability of relatedness to each of the terms in the tokenized query; and

wherein the probability of relatedness is calculated from the probabilities in the language model;

forming an expanded query comprising a top group of associated terms and the original query;

computing a boost weight for each term in the expanded query based on the probability of relatedness of the terms in the expanded query being related to the terms in the original query to create a weighted query;

submitting the weighted query to the search engine; and

receiving a list of documents from the plurality of documents that most closely correspond to the original query.

17. A storage medium having instructions stored thereon which when executed by a processor cause the processor to perform actions comprising:

providing a language model, the language model comprising a plurality of terms and a plurality of pair-values, each pair-value representing the relatedness of term pairs within a document;

receiving an original query for documents after the language model is prepared independent of the original query;

tokenizing the original query into a tokenized query;

extracting a group of associated terms from the language model,

wherein the extracting comprises identifying pair-values in the language model corresponding to term pairs comprising a term in the tokenized query and another term that is different from any term in the tokenized query and identifying associated terms as the terms that are different from any term in the tokenized query and that are related to at least one term in the tokenized query and

wherein the probability of relatedness is determined from the pair-values in the language model;

forming an expanded query comprising a top group of associated terms and the original query, wherein the top group of associated terms are a subset of the associated terms, the terms in the top group of associated terms having a higher probability of relatedness to terms in the tokenized query than associated terms not in the top group;

computing a boost weight for each term in the expanded query based on the probability of relatedness of the terms in the expanded query being related to the terms in the original query to create a weighted query; and

submitting the weighted query to a search engine.

18. The storage medium of claim 17 having further instructions stored thereon which when executed by a processor cause the processor to perform further actions comprising:

preparing the language model.

19. The storage medium of claim 17 wherein the preparing the language model comprises:

receiving a plurality of documents, for each of the plurality of documents;

tokenizing text included in the document;

identifying paragraph boundaries in the tokenized text;

identifying word pairs in the paragraphs, wherein the word pairs comprise two words occurring in any location in a particular paragraph, including adjacent to one another;

calculating the frequency of the word pairs in the paragraphs; and

adding the word pairs and corresponding frequency information to the language model.

20. The storage medium of claim 18 wherein the preparing the language model further comprises:

identifying the language used in the document.

21. The storage medium of claim 18 wherein the preparing the language model further comprises:

removing stopwords from the tokenized text.

22. The storage medium of claim 18 wherein the preparing the language model further comprises:

extracting text from the document before the tokenizing of the text from the document.

23. The storage medium of claim 18 wherein the preparing of the language model comprises:

computing the probability of alternate terms.

24. The storage medium of claim 18 wherein the preparing the language model comprises:

indexing the tokenized text.

25. The method of claim 17 wherein each pair-value represents the relatedness of term pairs within one or more same paragraphs of a document.

26. A computing device to retrieve documents in response to receiving a query for documents, the computing device comprising:

a processor, a memory coupled with the processor, and a storage medium having instructions stored thereon which when executed cause the computing device to perform actions including:

receiving a plurality of documents;

building a language model, the building comprising, for each of the documents,

tokenizing text included in the document;

defining paragraphs by identifying paragraph boundaries in the tokenized text;

identifying word pairs in each defined paragraph wherein the word pairs comprise two words occurring in any location in the same defined paragraph, including adjacent to one another;

calculating the frequency of the identified word pairs; and

adding the identified word pairs and corresponding frequency information to the language model;

receiving a query for documents;

tokenizing the query for documents into a tokenized query;

extracting a group of associated terms from the language model,

wherein the associated terms have a highest probability of relatedness to each of the terms in the tokenized query and

wherein the probability of relatedness is calculated from the probabilities in the language model;

forming an expanded query comprising a top group of associated terms and the query for documents;

computing a boost weight for each term in the expanded query based on the probability of relatedness of the terms in the expanded query being related to the terms in the query for documents to create a weighted query;

submitting the weighted query to the search engine; and

receiving a list of documents from the plurality of documents that most closely correspond to the query for documents.

Assignments (12)
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 8, 2025
From: PROOFPOINT, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 073889/0677 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Mar 21, 2024
From: GOLDMAN SACHS BANK USA, AS AGENT
To: PROOFPOINT, INC.
Reel/Frame 066865/0648 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 31, 2021
From: PROOFPOINT, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 057389/0642 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 31, 2021
From: PROOFPOINT, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 057389/0615 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2017
From: HAWN, MARK
To: ONTARIO ACQUISITION SUB CORP.
Reel/Frame 041084/0876 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 25, 2017
From: ONTARIO ACQUISITION SUB CORP.
To: PROOFPOINT, INC.
Reel/Frame 041084/0893 →
RELEASE OF SECURITY INTEREST Recorded Nov 10, 2015
From: HAWN, MARK E.
To: ORCATEC, LLC
Reel/Frame 036997/0983 →
SURRENDER OF COLLATERAL AND CONSENT TO STRICT FORECLOSURE Recorded Oct 29, 2015
From: ORCATEC, LLC
To: HAWN, MARK
Reel/Frame 036989/0782 →
SECURITY INTEREST Recorded May 15, 2012
From: ORCATEC, LLC
To: HAWN, MARK E.
Reel/Frame 028214/0876 →
CHANGE OF NAME Recorded Sep 3, 2010
From: STRATEGIC DATA RETENTION, LLC
To: ORCATEC LLC
Reel/Frame 024937/0439 →
BILL OF SALE AND ASSIGNMENT Recorded Sep 2, 2010
From: ORCATEC LLC
To: STRATEGIC DATA RETENTION, LLC
Reel/Frame 024932/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 30, 2007
From: ROITBLAT, HERBERT L., PH.D; GOLBERE, BRIAN
To: ORCATEC LLC
Reel/Frame 019770/0168 →