IP Library › Granted Patent US 12,141,132
Granted Patent B1
US 12,141,132 · App. 18/070,261 · Granted Nov 12, 2024

Query refinements using search data

Inventors: Matthias Heiler (Zurich, CH); Behshad Behzadi (Freienbach, CH); Evgeny A. Cherepanov (Adliswil, CH); Nils Grimsmo (Adliswil, CH); Aurélien Boffy (Basel, CH); Alessandro Agostini (Zurich, CH); Karoly Csalogany (Zurich, CH); Fredrik Bergenlid (Zurich, CH); Marcin M. Nowak-Przygodzki (Zurich, CH)
Assignee: GOOGLE LLC
G06F16/243G06F16/23G06F16/2425G06F16/24575G06F16/248G06F16/3338G06F16/90328G06F16/9535
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 12,141,132
App. No.
18/070,261
Granted
Nov 12, 2024
Kind
B1
Abstract

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for determining query refinements using search data. In one aspect, a method includes receiving a first query and a second query each comprising one or more n-grams for a user session, determining a first set of query refinements for the first query, determining a second set of query refinements from the first set of query refinements, each query refinement in the second set of query refinements including at least one n-gram that is similar to an n-gram from the first query and at least on n-gram that is similar to an n-gram from the second query, scoring each query refinement in the second set of query refinements, selecting a third query from a group consisting of the second set of query refinements and the second query, and providing the third query as input to a search operation.

Claims (56)

1. A system comprising one or more computers and one or more storage devices on which are stored instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

receiving, from a user device, a first query for a user session;

receiving, from the user device, a second query for the user session, the second query being different from the first query, and being subsequent to the first query in the user session without an intervening query;

determining, based on the first query and the second query, two or more query refinements;

selecting, based on scores associated with the two or more query refinements, a highest scored query refinement from the two or more query refinements, wherein selecting the highest scored query refinement is in response to determining that a highest score for the highest scored query refinement satisfies a threshold score;

providing, to the user device, first data for a first search result that is responsive to the highest scored query refinement; and

receiving, from the user device, user interface input indicating that the highest scored query refinement is incorrect.

2. The system according to claim 1 , the operations further comprising, responsive to receiving the user interface input indicating that the highest scored query refinement is incorrect, providing, to the user device, second data for a second search result that is responsive to the second query.

3. The system according to claim 1 , wherein scoring each query refinement comprises scoring each query refinement using historical data.

4. The system according to claim 1 , wherein the first query and the second query are spoken queries.

5. A system comprising one or more computers and one or more storage devices on which are stored instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

receiving, from a user device, a first query for a user session;

receiving, from the user device, a second query for the user session, the second query being different from the first query, and being subsequent to the first query in the user session without an intervening query;

determining, based on the first query and the second query, two or more query refinements;

selecting, based on scores associated with the two or more query refinements, a highest scored query refinement from the two or more query refinements, wherein a higher score is assigned to the first query refinement from the two or more query refinements that was similar to a query refinement received from the user device than to the second query refinement from the two or more query refinements that is not similar to a query refinement received from the user device;

providing, to the user device, first data for a first search result that is responsive to the highest scored query refinement; and

receiving, from the user device, user interface input indicating that the highest scored query refinement is incorrect.

6. The system according to claim 5 , wherein the first query refinement is similar to the query refinement received from a device associated with the user account for the user device when i) a first n-gram from the first query refinement and a second n-gram from the query refinement are an exact match, synonyms, alternate spellings of the same n-gram, or n-grams from the same class, or ii) when one of the first n-gram or the second n-gram is an acronym for the other n-gram, an expansion for the other n-gram, an abbreviation for the other n-gram, or a different grammatical number n-gram for the other n-gram.

7. A system comprising one or more computers and one or more storage devices on which are stored instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

receiving, from a user device, a first query for a user session;

receiving, from the user device, a second query for the user session, the second query being different from the first query, and being subsequent to the first query in the user session without an intervening query;

determining, based on the first query and the second query, two or more query refinements;

selecting, based on scores associated with the two or more query refinements, a highest scored query refinement from the two or more query refinements, wherein a higher score is assigned to the first query refinement that was received from the user device than to the second query refinement that was not received from the user device;

providing, to the user device, first data for a first search result that is responsive to the highest scored query refinement; and

receiving, from the user device, user interface input indicating that the highest scored query refinement is incorrect.

8. A system comprising one or more computers and one or more storage devices on which are stored instructions that are operable, when executed by the one or more computers, to cause the one or more computers to perform operations comprising:

receiving, from a user device, a first query for a user session;

receiving, from the user device, a second query for the user session, the second query being different from the first query, and being subsequent to the first query in the user session without an intervening query;

determining, based on the first query and the second query, two or more query refinements;

determining, for at least one of the two or more query refinements, a likelihood that the query refinement will be received by a search engine sequentially after the search engine receives the first query;

selecting, based on scores associated with the two or more query refinements, a highest scored query refinement from the two or more query refinements, wherein each query refinement in the two or more query refinements is scored using the likelihood that a query refinement will be received by a search engine sequentially after the search engine receives the first query;

providing, to the user device, first data for a first search result that is responsive to the highest scored query refinement; and

receiving, from the user device, user interface input indicating that the highest scored query refinement is incorrect.

9. A non-transitory computer storage medium encoded with instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:

receiving, from a user device, a first query for a user session;

receiving, from the user device, a second query for the user session, the second query being different from the first query, and being subsequent to the first query in the user session without an intervening query;

determining, based on the first query and the second query, two or more query refinements;

selecting, based on scores associated with the two or more query refinements, a highest scored query refinement from the two or more query refinements, wherein selecting the highest scored query refinement is in response to determining that a highest score for the highest scored query refinement satisfies a threshold score;

providing, to the user device, first data for a first search result that is responsive to the highest scored query refinement; and

receiving, from the user device, user interface input indicating that the highest scored query refinement is incorrect.

10. The non-transitory computer storage medium according to claim 9 , the operations further comprising, responsive to receiving the user interface input indicating that the highest scored query refinement is incorrect, providing, to the user device, second data for a second search result that is responsive to the second query.

11. The non-transitory computer storage medium according to claim 9 , wherein a higher score is assigned to the first query refinement from the two or more query refinements that was similar to a query refinement received from the user device than to the second query refinement from the two or more query refinements that is not similar to a query refinement received from the user device.

12. The non-transitory computer storage medium according to claim 9 , wherein a higher score is assigned to the first query refinement that was received from the user device than to the second query refinement that was not received from the user device.

13. The non-transitory computer storage medium according to claim 9 , the operations further comprising determining, for at least one of the two or more query refinements, a likelihood that the query refinement will be received by a search engine sequentially after the search engine receives the first query, wherein each query refinement in the two or more query refinements is scored using the likelihood that a query refinement will be received by a search engine sequentially after the search engine receives the first query.

14. The non-transitory computer storage medium according to claim 9 , wherein the first query and the second query are spoken queries.

15. A computer-implemented method comprising:

receiving, from a user device, a first query for a user session;

receiving, from the user device, a second query for the user session, the second query being different from the first query, and being subsequent to the first query in the user session without an intervening query;

determining, based on the first query and the second query, two or more query refinements;

selecting, based on scores associated with the two or more query refinements, a highest scored query refinement from the two or more query refinements, wherein selecting the highest scored query refinement is in response to determining that a highest score for the highest scored query refinement satisfies a threshold score;

providing, to the user device, first data for a first search result that is responsive to the highest scored query refinement; and

receiving, from the user device, user interface input indicating that the highest scored query refinement is incorrect.

16. The computer-implemented method according to claim 15 , further comprising, responsive to receiving the user interface input indicating that the highest scored query refinement is incorrect, providing, to the user device, second data for a second search result that is responsive to the second query.

17. The computer-implemented method according to claim 15 , wherein a higher score is assigned to the first query refinement from the two or more query refinements that was similar to a query refinement received from the user device than to the second query refinement from the two or more query refinements that is not similar to a query refinement received from the user device.

18. The computer-implemented method according to claim 15 , wherein a higher score is assigned to the first query refinement that was received from the user device than to the second query refinement that was not received from the user device.

19. The computer-implemented method according to claim 15 , wherein the first query and the second query are spoken queries.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2022
From: HEILER, MATTHIAS; BEHZADI, BEHSHAD; CHEREPANOV, EVGENY A.; GRIMSMO, NILS; BOFFY, AURÉLIEN; AGOSTINI, ALESSANDRO; CSALOGANY, KAROLY; BERGENLID, FREDRIK; NOWAK-PRZYGODZKI, MARCIN M.
To: GOOGLE INC.
Reel/Frame 061912/0007 →
CHANGE OF NAME Recorded Nov 29, 2022
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 062019/0006 →
Continuity (4)
Continuation 16889166 · Jun 1, 2020
Continuation 15617184 · Jun 8, 2017
Continuation 14813237 · Jul 30, 2015
Continuation 13906889 · May 31, 2013
Cited By (1)
US 12,639,294