IP Library Granted Patent US 9,183,250
Granted Patent B2
US 9,183,250 · App. 13/618,942 · Granted Nov 10, 2015

Query disambiguation

Inventors: Abdur R. Chowdhury (Oakton, VA); Gregory S. Pass (Reston, VA)
Assignee: FACEBOOK, INC.
G06F17/30424G06F17/30864G06F17/30867G06Q30/0601G06F17/30646Y10S707/948Y10S707/99932Y10S707/99933Y10S707/99934Y10S707/99944
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 9,183,250
App. No.
13/618,942
Granted
Nov 10, 2015
Kind
B2
Abstract

A search query is resolved prior to being submitted to one or more search engines. The query is resolved such that the query unambiguously corresponds to a category included in a query ontology that relates search queries to query categories. The query may be resolved by supplementing the query with additional information corresponding to the category. For example, the query may be formatted into a canonical form of the query for the category. Alternatively or additionally, the query may be supplemented with one or more keywords that are associated with the category and that represent words or phrases that appear in a high percentage of search results for queries from the category. Resolving the query yields search results that more closely reflect search results desired by a user submitting the query.

Claims (61)

1. A method, comprising:

tracking queries and selections of search results in response to the queries;

receiving a query that comprises a search term;

identifying a plurality of different categories indicating different meanings associated with the search term;

identifying from the tracked queries, one or more previous queries that include the search term;

identifying one or more search results previously selected in response to the identified one or more previous queries that include the search term;

identifying, from the one or more search results previously selected, search results selected most often in response to the identified one or more previous queries that include the search term;

determining, using at least one processor and without user input, one or more categories of the plurality of different categories corresponding to the search results selected most often in response to the identified one or more previous queries that include the search term;

identifying a plurality of search results responsive to the query;

prioritizing search results, from the plurality of search results, associated with the one or more categories; and

providing the prioritized search results to a user.

2. The method as recited in claim 1 , further comprising:

identifying an additional search term associated with the one or more categories; and

supplementing the query with one or more keywords associated with the additional search term.

3. The method as recited in claim 2 , further comprising:

identifying an additional plurality of search results responsive to the supplemented query;

prioritizing additional search results, from the additional plurality of search results; and

providing the prioritized additional search results to the user.

4. The method as recited in claim 1 , wherein determining the one or more categories from among the plurality of different categories corresponding to the search results selected most often comprises matching the search term to one or more popular queries of the tracked queries.

5. The method as recited in claim 1 , wherein determining the one or more categories from among the plurality of different categories corresponding to the search results selected most often comprises selecting one or more categories from the plurality of different categories corresponding to the search results selected most often based on the popularity of the one or more categories.

6. The method as recited in claim 1 , wherein identifying search results selected most often in response to the identified one or more previous queries that include the search term comprises identifying a number of times each of the search results has been selected.

7. The method as recited in claim 1 , wherein determining the one or more categories from among the plurality of different categories corresponding to the search results selected most often comprises determining that the query as a whole corresponds to a category in the plurality of different categories and the search term corresponds to the category in the plurality of different categories.

8. The method as recited in claim 1 , further comprising determining a frequency of occurrence in the identified search results for each word that appears in the search term.

9. The method as recited in claim 1 , further comprising providing the plurality of different categories corresponding to the search results selected most often associated with the search term to the user.

10. The method as recited in claim 9 , wherein providing the plurality of different categories corresponding to the search results selected most often associated with the search term to the user comprises providing a plurality of meanings that correspond to the search term.

11. The method as recited in claim 9 , wherein providing the plurality of different categories corresponding to the search results selected most often associated with the search term to the user comprises providing a plurality of canonical forms of the query.

12. The method as recited in claim 1 , wherein providing the prioritized search results to a user comprises providing the prioritized search results on a web page user interface of an Internet search engine.

13. A system comprising:

at least one processor; and

at least one non-transitory computer readable storage medium storing instructions thereon that, when executed by the at least one processor, cause the system to:

track queries and selections of search results in response to the queries;

receive a query that comprises a search term;

identify a plurality of different categories indicating different meanings associated with the search term;

identify from the tracked queries, one or more previous queries that include the search term;

identify one or more search results previously selected in response to the identified one or more previous queries that include the search term;

identify, from the one or more search results previously selected, search results selected most often in response to the identified one or more previous queries that include the search term;

determine, without user input, one or more categories of the plurality of different categories corresponding to the search results selected most often in response to the identified one or more previous queries that include the search term;

identify a plurality of search results responsive to the query;

prioritize search results, from the plurality of search results, associated with the one or more categories; and

provide the prioritized search results to a user.

14. The system as recited in claim 13 , further comprising instructions that, when executed by the at least one processor, cause the system to assign a score to each search result in the plurality of search results.

15. The system as recited in claim 14 , wherein the prioritized search results are prioritized based on the scores assigned to each search result in the plurality of search results.

16. The system as recited in claim 14 , further comprising instructions that, when executed by the at least one processor, cause the system to filter the plurality of search results.

17. The system as recited in claim 13 , further comprising instructions that, when executed by the at least one processor, cause the system to provide the plurality of different categories corresponding to the search results selected most often in response to the identified one or more previous queries that include the search term associated with the search term to the user.

18. The system as recited in claim 17 , further comprising instructions that, when executed by the at least one processor, cause the system to determine, a frequency of occurrence in the identified search results for each word that appears in the search term.

19. A non-transitory computer readable storage medium storing instructions thereon that, when executed by a processor, cause a computer system to:

track queries and selections of search results in response to the queries;

receive a query that comprises a search term;

identify a plurality of different categories indicating different meanings associated with the search term;

identify from the tracked queries, one or more previous queries that include the search term;

identify one or more search results previously selected in response to the identified one or more previous queries that include the search term;

identify, from the one or more search results previously selected, search results selected most often in response to the identified one or more previous queries that include the search term;

determine, without user input, one or more categories of the plurality of different categories corresponding to the search results selected most often in response to the identified one or more previous queries that include the search term;

identify a plurality of search results responsive to the query;

prioritize search results, from the plurality of search results, associated with the one or more categories; and

provide the prioritized search results to a user.

20. The non-transitory computer readable storage medium as recited in claim 19 , further comprising instructions that, when executed by the processor, cause the computer system to:

identify an additional search term associated with the query;

supplement the query with the additional search term;

identify an additional plurality of search results responsive to the supplemented query; and

provide at least one of the additional search results to the user.

Assignments (5)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058961/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2013
From: CHOWDHURY, ABDUR R.; PASS, GREGORY S.
To: AMERICA ONLINE, INC.
Reel/Frame 031028/0398 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2013
From: AOL LLC
To: AOL INC.
Reel/Frame 031028/0429 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2013
From: AOL INC.
To: FACEBOOK, INC.
Reel/Frame 031028/0504 →
CHANGE OF NAME Recorded Aug 16, 2013
From: AMERICA ONLINE, INC.
To: AOL LLC
Reel/Frame 031031/0432 →
Continuity (4)
Continuation 12425636 · Apr 17, 2009
Continuation 11023643 · Dec 29, 2004
Provisional Application 60584137 · Jul 1, 2004
Related Publication 20130173599A1 · Jul 4, 2013