IP Library Granted Patent US 12,346,949
Granted Patent B2
US 12,346,949 · App. 17/688,159 · Granted Jul 1, 2025

Online recommendations

Inventors: Joshua Correa (Arlington, MA); Alexander Kushkuley (Ashland, MA)
Assignee: Salesforce, Inc.
G06Q30/0631G06N7/01G06Q30/0282G06Q30/0633
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,346,949
App. No.
17/688,159
Granted
Jul 1, 2025
Kind
B2
Abstract

A group of recommendations related to an item, such as an item of content presented to a user in a page, can be ranked according to a probability distribution that is iteratively updated with each user interaction. For practical implementations, a click stream of interactions may be logged, and then applied in a batch process to update the probability distribution on any suitable schedule independent of the timing of incoming user interactions.

Claims (51)

1. A computer-implemented method for revising a ranked list of recommendations, the method comprising:

identifying a plurality of recommended items related to an item;

generating a probability distribution for the recommended items of being selected by a user;

ranking the plurality of recommended items according to the probability distribution;

receiving an interaction with a first item of the plurality of recommended items; and

in response to the interaction, adjusting, by a processor, the probability of being selected in the probability distribution by:

increasing the probability of being selected for the first item of the plurality of recommended items based on a ranking parameter; and

decreasing the probability of being selected for at least a second item of the plurality of recommended items based on the ranking parameter.

2. The method of claim 1 , further comprising:

dynamically adjusting the ranking parameter to reduce the probability of recommended items that are not selected during a time interval by a predetermined amount based on an average historical per-item click rate.

3. The method of claim 1 , further comprising: in response to the interaction, adjusting one or more other probability distributions for a second plurality of recommended items.

4. The method of claim 1 , wherein the step of increasing the probability of being selected for the first item comprises:

multiplying the probability of being selected for the first item by a function of the ranking parameter that causes a sum of probabilities in the probability distribution to equal 1.

5. The method of claim 1 , wherein the step of decreasing the probability of being selected for the second item comprises:

multiplying the probability of being selected for the second item by the ranking parameter.

6. The method of claim 1 , further comprising:

adding an alternate third recommended item to the plurality of recommended items in response to a selection of the third recommended item by an alternative recommender.

7. The method of claim 1 , further comprising:

recording the interaction in an interaction log; and

updating the probability distribution based on a historical sequence of interactions in the interaction log.

8. The method of claim 7 , further comprising:

updating a plurality of different probability distributions for a plurality of items based on the interaction log.

9. The method of claim 1 , further comprising:

in response to the interaction, adjusting the probability distribution for each of a plurality of different types of interactions using a type-specific ranking parameter.

10. The method of claim 1 , wherein the interaction includes at least one action selected from a group consisting of:

a user selecting the first item; an addition of the first item to an online shopping cart; and a check-out of an online shopping cart that includes the first item.

11. The method of claim 1 , wherein the ranking parameter has a value not less than 0 and not greater than 1.

12. The method of claim 9 , wherein the ranking parameter has a value not less than 0.9 and not greater than 1.

13. A system comprising:

a server configured to present web content;

a database storing content including an item for presentation by the server in a page, a plurality of recommended items related to the item, and a probability distribution for the recommended items of being selected by a user;

a ranking engine configured to, in response to an interaction with a first item of the plurality of recommended items, adjust the probability of being selected in the probability distribution by:

increasing the probability of being selected for the first item of the plurality of recommended items based on a ranking parameter; and

decreasing the probability of being selected for at least a second item of the plurality of recommended items based on the ranking parameter.

14. The system of claim 13 , the ranking engine further configured to dynamically adjust the ranking parameter to reduce the probability of recommended items that are not selected during a time interval by a predetermined amount based on an average historical per-item click rate.

15. The system of claim 13 , the ranking engine further configured to, in response to the interaction, adjust one or more other probability distributions for a second plurality of recommended items.

16. The system of claim 13 , wherein increasing the probability of being selected for the first item comprises multiplying the probability of being selected for the first item by a function of the ranking parameter that causes a sum of probabilities in the probability distribution to equal 1.

17. The system of claim 13 , wherein decreasing the probability of being selected for the second item comprises multiplying the probability of being selected for the second item by the ranking parameter.

18. The system of claim 13 , further comprising:

an interaction log storing records of interactions with items;

the system further configured to update the probability distribution based on a historical sequence of interactions in the interaction log.

19. The system of claim 13 , further comprising:

in response to the interaction, adjusting the probability distribution for each of a plurality of different types of interactions using a type-specific ranking parameter.

20. A computer program product for revising a ranked list of recommendations comprising non-transitory computer executable code embodied in a computer readable medium that, when executed by one or more computing devices, performs a method comprising:

identifying a plurality of recommended items related to an item;

generating a probability distribution for the recommended items of being selected by a user;

ranking the plurality of recommended items according to the probability distribution;

receiving an interaction with a first item of the plurality of recommended items; and

in response to the interaction, adjusting, by a processor, the probability of being selected in the probability distribution by:

increasing the probability of being selected for the first item of the plurality of recommended items based on a ranking parameter; and

decreasing the probability of being selected for at least a second item of the plurality of recommended items based on the ranking parameter.

Assignments (3)
CHANGE OF NAME Recorded May 26, 2025
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 071392/0849 →
CHANGE OF NAME Recorded Mar 4, 2025
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 070391/0393 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2022
From: CORREA, JOSHUA; KUSHKULEY, ALEXANDER
To: SALESFORCE.COM, INC.
Reel/Frame 059234/0176 →
Continuity (2)
Continuation 16999845 · Aug 21, 2020
Related Publication 20220188900A1 · Jun 16, 2022
References Cited (10)
US 8117085B1 · Smith · 2012 [cited by examiner]
US 10762548B1 · Krishnan · 2020 [cited by applicant]
US 10789293B2 · Kushkuley · 2020 [cited by applicant]
US 20100274783A1 · Chevalier · 2010 [cited by examiner]
US 20120284079A1 · Vakhutinsky · 2012 [cited by applicant]
US 20130211878A1 · Kushkuley · 2013 [cited by applicant]
US 20170193585A1 · Guo · 2017 [cited by examiner]
US 20190311301A1 · Pyati · 2019 [cited by applicant]
US 20210263939A1 · Das · 2021 [cited by examiner]
Schafer et al., “E-Commerce Recommendation Applications.” Data Mining and Knowledge Discovery, vol. 5, Nos. 1-2, Jan. 2001, pp. 115-153. (Year: 2001). [cited by examiner]