IP Library › Granted Patent US 12,038,975
Granted Patent B2
US 12,038,975 · App. 17/576,720 · Granted Jul 16, 2024

Systems and methods for query engine analysis

Inventors: Junchao Zheng (Jersey City, NJ); Vishal Kumar Rathi (Kearny, NJ); Andrew Thomas Catalano (Kingston, NY); Sanjay Shah (Elizabeth, NJ); Aniket Ashok Limaye (Secaucus, NJ); Jun Zhao (Jersey City, NJ); Zheng Yan (Short Hills, NJ)
Assignee: WALMART APOLLO, LLC
G06F16/90328G06F16/24578
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,038,975
App. No.
17/576,720
Granted
Jul 16, 2024
Kind
B2
Abstract

Systems and methods including one or more processors and one or more non-transitory computer readable media storing computing instructions that, when executed on the one or more processors, perform: receiving historical in-session user activity information; receiving, via a graphical user interface (GUI) of a user device, a partial search query from a user; analyzing the partial search query based on the historical in-session user activity information using one or more query suggestion systems to determine a respective score for respective suggested search queries from each of the one or more query suggestion systems; determining a respective absolute position metric for the respective suggested search queries from each of the one or more query suggestion systems; determining a respective efficiency metric for each of the one or more query suggestion systems based on the respective absolute position metric; analyzing the respective efficiency metric for each of the one or more query suggestion systems to determine a query suggestion system of the one or more query suggestion systems that satisfies a threshold; and transmitting instructions to modify the GUI to display the respective suggested search queries from the query suggestion system that satisfied the threshold.

Claims (94)

1. A system comprising:

one or more processors; and

one or more non-transitory computer-readable media storing computing instructions that, when executed on the one or more processors, perform:

coordinating at a first system in an online mode:

receiving historical in-session user activity information; and

receiving, via a graphical user interface (GUI) of a user device, a partial search query from a user;

coordinating at a second system in the online mode in response to receiving a communication from the first system:

analyzing the partial search query based on the historical in-session user activity information using one or more query suggestion systems to determine a respective score for respective suggested search queries from each of the one or more query suggestion systems; and

coordinating at a third system in the online mode in response to receiving a communication from the second system:

determining a respective absolute position metric for the respective suggested search queries from each of the one or more query suggestion systems, wherein the respective absolute position metric is based on a respective score for the respective suggested search queries, wherein the respective absolute position metric is determined based on a combination of (1) a number of characters of the partial search query, (2) a number of suggested queries that were previously presented to the user, and (3) a number of ranked queries that were previously presented to the user, and wherein the third system comprises a machine learning model that operates in an offline mode to determine the respective absolute position metric to reduce latency of the one or more processors;

determining a respective efficiency metric for each of the one or more query suggestion systems based on the respective absolute position metrics for the each of the one or more query suggestion systems;

analyzing the respective efficiency metric for the each of the one or more query suggestion systems to determine a query suggestion system of the one or more query suggestion systems that satisfies a threshold; and

transmitting instructions to the first system to modify the GUI to display the respective suggested search queries from the query suggestion system that satisfied the threshold.

2. The system of claim 1 , wherein the historical in-session user activity information comprises at least one or more of: (i) add-to-cart (ATC) history information for the user and prior users, (ii) previous queries for the user, or (iii) affinity information for the user.

3. The system of claim 2 , wherein analyzing the partial search query based on the historical in-session user activity information using the one or more query suggestion systems to determine the respective scores for the respective suggested search queries from each of the one or more query suggestion systems further comprises:

converting the ATC history information for the user and the prior users to a first numerical value;

converting the previous queries for the user to a first binary value; and

converting the affinity information for the user to a second binary value.

4. The system of claim 3 , wherein converting the ATC history information for the user and the prior users to the first numerical value further comprises determining a ratio between a minimum baseline score of the ATC history information and a maximum baseline score of the ATC history information.

5. The system of claim 3 , wherein converting the affinity information for the user to the second binary value further comprises:

determining one or more categories corresponding to each of the previous purchases of the user; and

determining an affinity probability for each of the one or more categories.

6. The system of claim 1 , wherein determining the respective score for the respective suggested search queries from each of the one or more query suggestion systems comprises using an equation comprising:

score=1/(1 +e **[−( x 1* w 1+ x 2* w 2+ x 3* w 3+ b 1)])

wherein w1 comprises a first weight, w2 comprises a second weight, and w3 comprises a third weight, x1 comprises the first numerical value, x2 comprises the first binary value, x3 comprises the second binary value, and b1 comprises an intercept term.

7. The system of claim 1 , wherein determining the respective absolute position metric for the respective suggested search queries from each of the one or more query suggestion systems comprises using an equation comprising:

pos abs =(len(prefix)−1)×num suggestions +ranking query

wherein prefix comprises a number of characters of the partial search query, num suggestion comprises a number of suggested queries that were previously presented to the user, and ranking query comprises a number of ranked queries that were previously presented to the user.

8. The system of claim 1 , wherein determining the respective efficiency metric for each of the one or more query suggestion systems based on the respective absolute position metrics for the each of the one or more query suggestion systems comprises using an equation comprising:

MRR

⁢

=

1

N

⁢

∑

i

=

1

N

1

r

i

wherein N comprises a sample of queries, and ri comprises the respective absolute position metric.

9. The system of claim 1 , wherein analyzing the respective efficiency metric for the each of the one or more query suggestion systems to determine the query suggestion system that satisfies the threshold further comprises selecting a query suggestion system that has a largest efficiency metric value compared to others of the one or more query suggestion systems for the partial search query.

10. The system of claim 1 , wherein transmitting the instructions to the first system to modify the GUI to display the respective suggested search queries from the query suggestion system that satisfied the threshold further comprises:

displaying a first numerical value of the respective suggested search queries that are output from the query suggestion system; and

displaying a second numerical value of the respective suggested search queries that are output by the query suggestion system in response to receiving, via the GUI of the user device, a modification of the partial search query from the user.

11. A method implemented via execution of computing instructions configured to run at one or more processors and configured to be stored at non-transitory computer-readable media, the method comprising:

coordinating at a first system in an online mode:

receiving historical in-session user activity information; and

receiving, via a graphical user interface (GUI) of a user device, a partial search query from a user;

coordinating at a second system in the online mode in response to receiving a communication from the first system:

analyzing the partial search query based on the historical in-session user activity information using one or more query suggestion systems to determine a respective score for respective suggested search queries from each of the one or more query suggestion systems; and

coordinating at a third system in the online mode in response to receiving a communication from the second system:

determining a respective absolute position metric for the respective suggested search queries from each of the one or more query suggestion systems, wherein the respective absolute position metric is based on a respective score for the respective suggested search queries, wherein the respective absolute position metric is determined based on a combination of (1) a number of characters of the partial search query, (2) a number of suggested queries that were previously presented to the user, and (3) a number of ranked queries that were previously presented to the user, and wherein the third system comprises a machine learning model that operates in an offline mode to determine the respective absolute position metric to reduce latency of the one or more processors;

determining a respective efficiency metric for each of the one or more query suggestion systems based on the respective absolute position metrics for the each of the one or more query suggestion systems;

analyzing the respective efficiency metric for the each of the one or more query suggestion systems to determine a query suggestion system of the one or more query suggestion systems that satisfies a threshold; and

transmitting instructions to the first system to modify the GUI to display the respective suggested search queries from the query suggestion system that satisfied the threshold.

12. The method of claim 11 , wherein the historical in-session user activity information comprises at least one or more of: (i) add-to-cart (ATC) history information for the user and prior users, (ii) previous queries for the user, or (iii) affinity information for the user.

13. The method of claim 12 , wherein analyzing the partial search query based on the historical in-session user activity information using the one or more query suggestion systems to determine the respective scores for the respective suggested search queries from each of the one or more query suggestion systems further comprises:

converting the ATC history information for the user and the prior users to a first numerical value;

converting the previous queries for the user to a first binary value; and

converting the affinity information for the user to a second binary value.

14. The method of claim 13 , wherein converting the ATC history information for the user and the prior users to the first numerical value further comprises determining a ratio between a minimum baseline score of the ATC history information and a maximum baseline score of the ATC history information.

15. The method of claim 13 , wherein converting the affinity information for the user to the second binary value further comprises:

determining one or more categories corresponding to each of the previous purchases of the user; and

determining an affinity probability for each of the one or more categories.

16. The method of claim 11 , wherein determining the respective score for the respective suggested search queries from each of the one or more query suggestion systems comprises using an equation comprising:

score=1/(1 +e **[−( x 1* w 1+ x 2* w 2+ x 3* w 3+ b 1)])

wherein w1 comprises a first weight, w2 comprises a second weight, and w3 comprises a third weight, x1 comprises the first numerical value, x2 comprises the first binary value, x3 comprises the second binary value, and b1 comprises an intercept term.

17. The method of claim 11 , wherein determining the respective absolute position metric for the respective suggested search queries from each of the one or more query suggestion systems comprises using an equation comprising:

pos abs =(len(prefix)−1)×num suggestions +ranking query

wherein pre fix comprises a number of characters of the partial search query, num suggestions comprises a number of suggested queries that were previously presented to the user, and ranking query comprises a number of ranked queries that were previously presented to the user.

18. The method of claim 11 , wherein determining the respective efficiency metric for each of the one or more query suggestion systems based on the respective absolute position metrics for the each of the one or more query suggestion systems comprises using an equation comprising:

MRR

⁢

=

1

N

⁢

∑

i

=

1

N

1

r

i

wherein N comprises a sample of queries, and ri comprises the respective absolute position metric.

19. The method of claim 11 , wherein analyzing the respective efficiency metric for the each of the one or more query suggestion systems to determine the query suggestion system that satisfies the threshold further comprises selecting a query suggestion system that has a largest efficiency metric value compared to others of the one or more query suggestion systems for the partial search query.

20. The method of claim 11 , wherein transmitting the instructions to the first system to modify the GUI to display the respective suggested search queries from the query suggestion system that satisfied the threshold further comprises:

displaying a first numerical value of the respective suggested search queries that are output from the query suggestion system; and

displaying a second numerical value of the respective suggested search queries that are output by the query suggestion system in response to receiving, via the GUI of the user device, a modification of the partial search query from the user.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2022
From: LIMAYE, ANIKET ASHOK
To: WALMART APOLLO, LLC
Reel/Frame 060746/0853 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2022
From: CATALANO, ANDREW THOMAS
To: WALMART APOLLO, LLC
Reel/Frame 060747/0699 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2022
From: ZHENG, JUNCHAO; RATHI, VISHAL KUMAR; SHAH, SANJAY; ZHAO, JUN; YAN, ZHENG
To: WALMART APOLLO, LLC
Reel/Frame 059815/0599 →
Continuity (1)
Related Publication 20230229706A1 · Jul 20, 2023