IP Library Granted Patent US 12,298,982
Granted Patent B2
US 12,298,982 · App. 17/093,885 · Granted May 13, 2025

Diversity and explainability parameters for recommendation accuracy in machine learning recommendation systems

Inventors: Wenzhuo Yang (Singapore, SG); Jia Li (Mountain View, CA); Chenxi Li (Belmont, CA); Latrice Barnett (Oakland, CA); Markus Anderle (Moraga, CA); Simo Arajarvi (Dublin, IE); Harshavardhan Utharavalli (Hyderabad, IN); Caiming Xiong (Menlo Park, CA); Richard Socher (Menlo Park, CA); Chu Hong Hoi (Singapore, SG)
Assignee: Salesforce, Inc.
G06F16/2457G06N20/20
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,298,982
App. No.
17/093,885
Granted
May 13, 2025
Kind
B2
Abstract

Embodiments are directed to a machine learning recommendation system. The system receives a user query for generating a recommendation for one or more items with an explanation associated with recommending the one or more items. The system obtains first features of at least one user and second features of a set of items. The system provides the first features and the second features to a first machine learning network for determining a predicted score for an item. The system provides a portion of the first features and a portion of the second features to second machine learning networks for determining explainability scores for an item and generating corresponding explanation narratives. The system provides the recommendation for one or more items and corresponding explanation narratives based on ranking predicted scores and explainability scores for the items.

Claims (89)

1. A system comprising:

a non-transitory memory; and

one or more processors coupled to the non-transitory memory and configured to read instructions from the non-transitory memory to cause the system to perform operations comprising:

receiving a user query for generating a recommendation for one or more items and one or more explanations associated with the one or more items;

for each item in a plurality of items:

obtaining input features comprising at least one user feature and at least one item feature;

determining, using one or more relevancy models in one or more first machine learning networks and the input features, a predicted score of the item;

determining, using a first diversity model in second machine learning networks, first diversity scores and a first explainability score for the item from at least a first portion of the input features;

determining, using a second diversity model in the second machine learning networks, second diversity scores and a second explainability score for the item from at least a second portion of the input features, the second portion of the input features different from the first portion of the input features, wherein the second machine learning networks are associated with a weight parameter indicative of the degree of diversity in recommendations;

determining an explanation narrative for the item using the first and second explainability scores; and

combining the predicted score, the first diversity scores of the first diversity model and the second diversity scores of the second diversity model into a combined score for the item;

ranking the plurality of items according to combined scores;

providing the recommendation that includes the one or more items from the plurality of items, wherein the one or more items correspond to top combined scores;

receiving a user input indicative of an updated value for the weight parameter;

generating an updated recommendation for the one or more items and the one or more explanations associated with the one or more items based on the updated value for the weight parameter; and

providing the updated recommendation that includes the one or more items from the plurality of items.

2. The system of claim 1 , wherein the operations further comprise:

determining a diversity loss associated with the first and second diversity scores;

determining an accuracy loss using the predicted score; and

determining a total loss using the diversity loss and the accuracy loss.

3. The system of claim 2 , wherein the operations further comprise:

training the one or more first machine learning networks and the second machine learning networks to minimize the total loss.

4. The system of claim 1 , wherein the operations further comprise determining the explanation narrative concurrently with the first and second explainability scores.

5. The system of claim 1 , wherein to determine the predicted score, the operations further comprise:

determining a user vector from the at least one user feature and an item feature in the at least one item feature, wherein the item feature is associated with the user feature;

determining an item vector from the at least one item feature; and

determining the predictive score from the user vector and the item vector.

6. The system of claim 1 , wherein the operations further comprise:

determining a popularity score in the first or second explainability score using an item identifier feature in the at least one item feature.

7. The system of claim 1 , wherein the operations further comprise:

determining a category score in the first or second explainability score using an item identifier feature in the at least one item feature and at least one category feature from the at least one user feature.

8. The system of claim 1 , wherein the operations further comprise:

determining a continuous score in the first or second explainability score using an item identifier feature in the at least one item feature and at least one continuous feature from the at least one user feature.

9. A method comprising:

receiving a user query for generating a recommendation for one or more items and one or more explanations associated with the one or more items;

obtaining a first feature comprising at least one user feature and a second feature comprising at least one item feature from a plurality of items;

determining, using one or more first machine learning networks, the first feature, and the second feature, predicted scores for the plurality of items, wherein the one or more first machine learning networks are trained for a recommendation task;

determining, using a first diversity model in second machine learning networks, a first portion of the first feature and a first portion of the second feature, first diversity scores for the plurality of items and explanation narratives;

determining, using a second diversity model in the second machine learning networks, a second portion of the first feature and a second portion of the second feature, second diversity scores for the plurality of items and the explanation narratives, wherein the second machine learning networks are associated with a weight parameter, and wherein varying the weight parameter during the determining the first diversity score and the second diversity scores changes the one or more items included in the recommendation; and

determining combined scores for the plurality of items from the predicted scores, the first diversity scores from the first diversity model and the second diversity scores from the second diversity model;

identifying the one or more items from the plurality of items as the items with highest scores from the combined scores; and

generating the recommendation that includes the one or more items and corresponding one or more explanation narratives.

10. The method of claim 9 , further comprising:

determining a diversity loss associated with the first and second diversity scores;

determining an accuracy loss using the predicted scores; and

determining a total loss using the diversity loss and the accuracy loss.

11. The method of claim 10 , further comprising:

training the one or more first machine learning networks and the second machine learning networks to minimize the total loss.

12. The method of claim 9 , wherein determining the predicted scores further comprises:

determining a user vector from the at least one user feature and an item feature in the at least one item feature, wherein the item feature is associated with the user feature;

determining an item vector from the at least one item feature; and

determining the predicted scores from the user vector and the item vector.

13. The method of claim 9 , further comprising:

determining, using the second machine learning networks, explainability scores for the plurality of items;

determining a popularity score in the explainability scores using an item identifier feature in the at least one item feature; and

determining the one or more explanation narratives based on the popularity score.

14. The method of claim 9 , further comprising:

determining, using the second machine learning networks, explainability scores for the plurality of items;

determining a category score in the explainability scores using an item identifier feature in the at least one item feature and at least one category feature from the at least one user feature; and

determining the one or more explanation narratives based on the category score.

15. The method of claim 11 , further comprising:

determining, using the second machine learning networks, explainability scores for the plurality of items;

determining a continuous score in the explainability scores using an item identifier feature in the at least one item feature and at least one continuous feature from the at least one user feature; and

determining the one or more explanation narratives based on the continuous score.

16. A non-transitory machine-readable medium having stored thereon machine-readable instructions executable to cause a system to perform operations comprising:

receiving a user query for generating a recommendation for one or more items and one or more explanations associated with the one or more items;

for each item in a plurality of items:

obtaining input features comprising at least one user feature and at least one item feature;

determining, using one or more first machine learning networks and the input features, a predicted score of the item;

determining, using a first diversity model in second machine learning networks, first diversity scores and a first explainability score for the item from at least a first portion of the input features;

determining, using a second diversity model in the second machine learning networks, second diversity scores and a second explainability score for the item from at least a second portion of the input features, wherein the second machine learning networks are associated with a weight parameter indicative of the degree of diversity in recommendations;

combining the predicted score, the first diversity scores of the first diversity model and second diversity scores of the second diversity model into a combined score for the item; and

ranking the plurality of items according to the combined scores;

determining explanation narratives for the ranked plurality of items using the first and second explainability scores;

providing the recommendation that includes the one or more items in the plurality of items that correspond to highest scores and one or more explanation narratives corresponding to the one or more items;

receiving a user input indicative of an updated value for the weight parameter;

generating an updated recommendation for the one or more items and the one or more explanations associated with the one or more items based on the updated value for the weight parameter; and

providing the updated recommendation that includes the one or more items from the plurality of items.

17. The non-transitory machine-readable medium of claim 16 , wherein the operations further comprise:

determining an accuracy loss of the one or more first machine learning networks from the predictive score of the item;

determining a diversity loss of the second machine learning networks from the first and second diversity scores; and

determining a total loss from the accuracy loss and the diversity loss.

18. The non-transitory machine-readable medium of claim 16 , wherein the first or second explainability score include a category score, a popular score, and a continuous score.

19. The non-transitory machine-readable medium of claim 16 , wherein to determine the predicted score, the operations further comprise:

determining a user vector from the at least one user feature and an item feature in the at least one item feature, wherein the item feature is associated with the user feature;

determining an item vector from the at least one item feature; and

determining the predictive score from the user vector and the item vector.

20. The non-transitory machine-readable medium of claim 17 , wherein the operations further comprise:

training the one or more first machine learning networks and the second machine learning networks to minimize the total loss.

Assignments (2)
CHANGE OF NAME Recorded Apr 3, 2025
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 070734/0555 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2020
From: YANG, WENZHUO; LI, JIA; LI, CHENXI; BARNETT, LATRICE; ANDERLE, MARKUS; ARAJARVI, SIMO; UTHARAVALLI, HARSHAVARDHAN; XIONG, CAIMING; SOCHER, RICHARD; HOI, CHU HONG
To: SALESFORCE.COM, INC.
Reel/Frame 054322/0608 →
Priority Claims (1)
IN 202021022981 · Jun 1, 2020 · national
Continuity (1)
Related Publication 20210374132A1 · Dec 2, 2021
References Cited (32)
US 11004135B1 · Sandler · 2021 [cited by examiner]
US 20190392330A1 · Martineau · 2019 [cited by examiner]
US 20210118034A1 · Indrakanti · 2021 [cited by examiner]
Adomavicius et al., 2012, “Improving Aggregate Recommendation Diversity Using Ranking-Based Techniques,” IEEE Trans. on Knowl. and Data Eng. 24, 5 (2012), 15 pages. [cited by applicant]
Brynjolfsson et al., Jan. 2011, “Goodbye Pareto Principle, Hello Long Tail: The Effect of Search Costs on the Concentration of Product Sales,” Management Science 57, 8 (2011), 32 pages. [cited by applicant]
Brynjolfsson et al., Nov. 2003, “Consumer Surplus in the Digital Economy: Estimating the Value of Increased Product Variety at Online Booksellers,” Management Science 49, 11 (2003), 1580-1596. [cited by applicant]
Chen et al., Jul. 8-12, 2018, “Attention-Driven Factor Model for Explainable Personalized Recommendation,” In the 41st International ACM SIGIR Conference on Research & Development in Information Retrieval (SIGIR '18). 9… [cited by applicant]
Chen et al., 2018, “Fast Greedy Map Inference for Determinantal Point Process to Improve Recommendation Diversity,” In Proceedings of the 32nd International Conference on Neural Information Processing Systems (NIPS'18).… [cited by applicant]
Chen et al., 2019, “Personalized Fashion Recommendation With Visual Explanations Based on Multimodal Attention Network: Towards Visually Explainable Recommendation,” In Proceedings of the 42nd International ACM SIGIR Co… [cited by applicant]
Cheng et al., Jun. 24, 2016, “Wide & Deep Learning for Recommender Systems,” In Proceedings of the 1st Workshop on Deep Learning for Recommender Systems (DLRS 2016). 7-10. [cited by applicant]
Covington et al., Sep. 15-19, 2016, “Deep Neural Networks for Youtube Recommendations,” In Proceedings of the 10th ACM Conference on Recommender Systems (RecSys '16). 191-198. [cited by applicant]
Devlin et al., May 24, 2019, “BERT: Pre-Training of Deep Bidirectional Transformers for Language Understanding,” In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational L… [cited by applicant]
Donkers et al., Aug. 27-31, 2017, “Sequential User-Based Recurrent Neural Network Recommendations,” In Proceedings of the Eleventh ACM Conference on Recommender Systems (RecSys '17). 152-160. [cited by applicant]
Guo et al., 2017, “DeepFM: A Factorization-Machine Based Neural Network for CTR Prediction,” In Proceedings of the 26th International Joint Conference on Artificial Intelligence (IJCAI'17). AAAI Press, 1725-1731. [cited by applicant]
Ho et al., Feb. 24-28, 2014, “Who Likes It More? Mining Worth-Recommending Items From Long Tails by Modeling Relative Preference,” In Proceedings of the 7th ACM International Conference on Web Search and Data Mining (WS… [cited by applicant]
Hu et al., 2008, “Collaborative Filtering for Implicit Feedback Datasets,” In Proceedings of the 2008 Eighth IEEE International Conference on Data Mining (ICDM '08). 263-272. [cited by applicant]
Kim et al., 2019, “Sequential and Diverse Recommendation With Long Tail,” In Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence, IJCAI 2019, Macao, China, Aug. 10-16, 2019. 2740-2… [cited by applicant]
Krizhevsky et al., 2012, “Imagenet Classification With Deep Convolutional Neural Networks,” In Proceedings of the 25th International Conference on Neural Information Processing Systems—vol. 1 (NIPS'12), 9 pages. [cited by applicant]
McAuley et al., Oct. 12-16, 2013, “Hidden Factors and Hidden Topics: Understanding Rating Dimensions With Review Text.” In Proceedings of the 7th ACM Conference on Recommender Systems (RecSys '13). 165-172. [cited by applicant]
Peake et al., Aug. 19-23, 2018, “Explanation Mining: Post Hoc Interpretability of Latent Factor Models for Recommendation Systems,” In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery &… [cited by applicant]
Steffen Rendle. 2010, “Factorization Machines,” In Proceedings of the 2010 IEEE International Conference on Data Mining (ICDM '10). 995-1000. [cited by applicant]
Marco Tulio Ribeiro et al., 2016, “Why Should I Trust You?”: Explaining the Predictions of Any Classifier, In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD '16).… [cited by applicant]
Salakhutdinov et al., 2007, “Restricted Boltzmann Machines for Collaborative Filtering,” In Proceedings of the 24th International Conference on Machine Learning (ICML '07). 791-798. [cited by applicant]
Shan et al., Aug. 13-17, 2016, “Deep Crossing: Web-Scale Modeling Without Manually Crafted Combinatorial Features,” In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (… [cited by applicant]
Sundararajan et al., 2017, “Axiomatic Attribution for Deep Networks,” In Proceedings of the 34th International Conference on Machine Learning (ICML'17). 3319-3328. [cited by applicant]
Wang et al., Aug. 17, 2017, “Deep & Cross Network for Ad Click Predictions,” In Proceedings of the ADKDD'17 (ADKDD'17). [cited by applicant]
Wang et al., Apr. 21, 2020, “Personalized Re-Ranking for Improving Diversity in Live Recommender Systems,” arXiv:cs.IR/2004.06390. [cited by applicant]
Wilhelm et al., Oct. 2018, “Practical Diversified Recommendations on Youtube With Determinantal Point Processes,” In Proceedings of the 27th ACM International Conference on Information and Knowledge Management (CIKM '18… [cited by applicant]
Zhang et al., Oct. 23-25, 2008, “Avoiding Monotony: Improving the Diversity of Recommendation Lists,” In Proceedings of the 2008 ACM Conference on Recommender Systems (RecSys '08). 123-130. [cited by applicant]
Zhang et al., Jul. 6-11, 2014, “Explicit Factor Models for Explainable Recommendation Based on Phrase-Level Sentiment Analysis,” In Proceedings of the 37th International ACM SIGIR Conference on Research & Development in… [cited by applicant]
Zhou et al., Sep. 13, 2018, “Deep Interest Network for Click-Through Rate Prediction,” In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (KDD '18). 9 pages. [cited by applicant]
Ziegler et al., May 10-14, 2005, “Improving Recommendation Lists Through Topic Diversification,” In Proceedings of the 14th International Conference on World Wide Web (WWW '05). 22-32. [cited by applicant]