US-20260127655-A1 - SYSTEM AND METHOD OF GENERATING DIGITAL ITEM RECOMMENDATIONS
Abstract
A method and server for generating user recommendations for users of a digital recommendation platform are provided. The method comprises: generating, by scanning a chronologically organized user log, a training set of data comprising a plurality of training digital objects; and feeding each one of the plurality of training digital objects to the MLA, thereby causing the MLA to generate a respective predicted indication of the user interaction of a given user with a given digital item of the digital recommendation platform; and applying a loss function, configured to penalize the respective predicted indication if it is different from the respective label, thereby training the MLA to identify, in a plurality of digital items of the digital recommendation platform, for the given user, the previously unseen digital items associated with the previously unknown, for the given user, source with which the given user is likely to interact.
Inventors
- Daniil BURLAKOV
- Anastasiia KARPOVA
- Aleksandr SAFRONOV
Assignees
- Y.E. Hub Armenia LLC
Dates
- Publication Date
- 20260507
- Application Date
- 20251029
- Priority Date
- 20241101
Claims (20)
- 1 . A computer-implemented method for generating item recommendations for users of a digital recommendation platform, the digital recommendation platform storing a plurality of digital items, the method comprising: training a machine-learning algorithm (MLA) to identify previously unseen items associated with previously unknown, for a given user, sources to be recommended to the given user, the training including: acquiring, for the given digital item of the plurality of digital items, a respective item vector representative of item features of the given digital item including a respective source associated therewith; acquiring, for the given user of the digital recommendation platform, a respective user vector representative of user features of the given user; retrieving, from a user log associated with the given user, a training set of past digital items of the plurality of digital items of the digital recommendation platform, a given past digital item of the training set of past digital items being associated with an indication of a user interaction of the given user with the given past digital item; generating a training set of data comprising a plurality of training digital objects, generating a given training digital object of the plurality of training digital objects including: scanning the training set of past digital items organized in a chronological order to identify at a given past time, a given target past digital item of a respective target source; the given target past digital item being a first digital item of digital items associated with the respective target source with which the given user had interacted with by the given past time; generating a respective training subset of past digital items including past digital items that had been interacted with by the given user prior to interacting with the given target past item; and generating the given training digital object to include: (i) the respective user vector; (ii) a combination of respective item vectors of the respective training subset of past digital items associated with the given target past digital item; and (iii) a respective label including the indication of the user interaction of the given user with the given target past digital item associated with the respective target source; feeding each one of the plurality of training digital objects to the MLA, thereby causing the MLA to generate a respective predicted indication of the user interaction of the given user with the given digital item of the plurality of digital items; and applying a loss function, the loss function being configured to penalize the respective predicted indication of the user interaction in response to the respective predicted indication being different from the respective label, thereby training the MLA to identify, in the plurality of digital items, for the given user, the previously unseen digital items associated with the previously unknown, for the given user, source with which the given user is likely to interact.
- 2 . The method of claim 1 , wherein the retrieving the training set of past digital items comprises retrieving the training set of past digital items over a predetermined period.
- 3 . The method of claim 2 , wherein the retrieving the training set of past digital items over the predetermined period comprises retrieving latest past digital items over the predetermined period.
- 4 . The method of claim 2 , wherein steps of the retrieving, the generating, the feeding, and the applying are executed during a first training iteration, and wherein the method further comprises: during a second training iteration, following the first training iteration: retrieving, from the user log associated with the given user, a second training set of past digital items of the plurality of digital items of the digital recommendation platform over the predetermined period, a given other past digital item of the second training set of past digital items being associated with an indication of the user interaction of the given user with the given past digital item over the predetermined period; generating a second training set of data comprising a second plurality of training digital objects, generating a given other training digital object of the second plurality of training digital objects including: scanning the second training set of past digital items organized in the chronological order to identify at a given other past time during the predetermined period, a given other target past digital item of the respective target source; the given other target past digital item being the first digital item of the digital items associated with the respective target source with which the given user had interacted with by the given past time during the predetermined period; generating a respective other training subset of past digital items including past digital items that had been interacted with by the given user prior to interacting with the given other target past item during the predetermined period; and generating the given other training digital object to include: (i) the respective user vector of the given user; (ii) the combination of the respective item vectors of the respective other training subset of past digital items associated with the given other target past digital item; and (iii) the respective label including the indication of the user interaction of the given user with the given other target past digital item associated with the respective target source; feeding each one of the second plurality of training digital objects to the MLA, thereby causing the MLA to generate a respective other predicted indication of the user interaction of the given user with the given digital item of the plurality of digital items; and applying a loss function, the loss function being configured to penalize the respective other predicted indication of the user interaction in response to the respective other predicted indication being different from the respective label, thereby training the MLA to identify, in the plurality of digital items, for the given user, the previously unseen digital items associated with the previously unknown, for the given user, source with which the given user is likely to interact.
- 5 . The method of claim 4 , wherein the predetermined period comprises one of selected from the group consisting of a day, a week, and a month.
- 6 . The method of claim 1 , wherein the combination of the respective item vectors comprises a concatenation thereof.
- 7 . The method of claim 1 , further comprising using the MLA for generating the item recommendation for the given user, by: retrieving, from the user log associated with the given user, an in-use set of past digital items of the plurality of digital items of the digital recommendation platform; generating an in-use digital object that includes: (i) the respective user vector of the given user; and (ii) the combination of the respective item vectors of the in-use set of past digital items; feeding the in-use digital object to the MLA, thereby causing the MLA to identify, in the plurality of digital items, a given in-use digital item; and causing presentation of the given in-use digital item as being a next digital item for the given user.
- 8 . The method of claim 7 , wherein prior to the causing, the method further comprises: feeding the respective item vector of the given digital item as an input feature to a second MLA, thereby causing the second MLA to identify, in the plurality of digital items, a given other in-use digital item; the second MLA having been trained to generate the item recommendation based on outputs of the MLA; and causing presentation of the given other in-use digital item as being the next digital item for the given user.
- 9 . The method claim 8 , wherein the second MLA comprises a Gradient Boosting Decision Tree-based MLA.
- 10 . The method of claim 1 , wherein the MLA comprises a Deep Semantic Similarity Model (DSSM).
- 11 . The method of claim 1 , wherein the respective source comprises one selected from the group consisting of an artist associated with the given digital item, a production studio associated with the given digital item, and an entity having a copyright on the given digital item.
- 12 . A system for generating item recommendations for users of a digital recommendation platform, the digital recommendation platform storing a plurality of digital items, the system comprising at least one processor and at least one non-transitory computer-readable memory storing executable instructions, which, when executed by the at least one processor, cause the system to: train a machine-learning algorithm (MLA) to identify previously unseen items associated with previously unknown, for a given user, sources to be recommended to the given user, by: acquiring, for the given digital item of the plurality of digital items, a respective item vector representative of item features of the given digital item including a respective source associated therewith; acquiring, for the given user of the digital recommendation platform, a respective user vector representative of user features of the given user; retrieving, from a user log associated with the given user, a training set of past digital items of the plurality of digital items of the digital recommendation platform, a given past digital item of the training set of past digital items being associated with an indication of a user interaction of the given user with the given past digital item; generating a training set of data comprising a plurality of training digital objects, generating a given training digital object of the plurality of training digital objects including: scanning the training set of past digital items organized in a chronological order to identify at a given past time, a given target past digital item of a respective target source; the given target past digital item being a first digital item of digital items associated with the respective target source with which the given user had interacted with by the given past time; generating a respective training subset of past digital items including past digital items that had been interacted with by the given user prior to interacting with the given target past item; and generating the given training digital object to include: (i) the respective user vector; (ii) a combination of respective item vectors of the respective training subset of past digital items associated with the given target past digital item; and (iii) a respective label including the indication of the user interaction of the given user with the given target past digital item associated with the respective target source; feeding each one of the plurality of training digital objects to the MLA, thereby causing the MLA to generate a respective predicted indication of the user interaction of the given user with the given digital item of the plurality of digital items; and applying a loss function, the loss function being configured to penalize the respective predicted indication of the user interaction in response to the respective predicted indication being different from the respective label, thereby training the MLA to identify, in the plurality of digital items, for the given user, the previously unseen digital items associated with the previously unknown, for the given user, source with which the given user is likely to interact.
- 13 . The system of claim 12 , wherein the retrieving the training set of past digital items comprises retrieving the training set of past digital items over a predetermined period.
- 14 . The system of claim 13 , wherein the retrieving the training set of past digital items over the predetermined period comprises retrieving latest past digital items over the predetermined period.
- 15 . The system of claim 13 , wherein the executable instructions cause the system to execute the steps of the retrieving, the generating, the feeding, and the applying during a first training iteration, and wherein the executable instructions further cause the system to: during a second training iteration, following the first training iteration: retrieve, from the user log associated with the given user, a second training set of past digital items of the plurality of digital items of the digital recommendation platform over the predetermined period, a given other past digital item of the second training set of past digital items being associated with an indication of the user interaction of the given user with the given past digital item over the predetermined period; generate a second training set of data comprising a second plurality of training digital objects, generating a given other training digital object of the second plurality of training digital objects including: scanning the second training set of past digital items organized in the chronological order to identify at a given other past time during the predetermined period, a given other target past digital item of the respective target source; the given other target past digital item being the first digital item of the digital items associated with the respective target source with which the given user had interacted with by the given past time during the predetermined period; generating a respective other training subset of past digital items including past digital items that had been interacted with by the given user prior to interacting with the given other target past item during the predetermined period; and generating the given other training digital object to include: (i) the respective user vector of the given user; (ii) the combination of the respective item vectors of the respective other training subset of past digital items associated with the given other target past digital item; and (iii) the respective label including the indication of the user interaction of the given user with the given other target past digital item associated with the respective target source; feeding each one of the second plurality of training digital objects to the MLA, thereby causing the MLA to generate a respective other predicted indication of the user interaction of the given user with the given digital item of the plurality of digital items; and applying a loss function, the loss function being configured to penalize the respective other predicted indication of the user interaction in response to the respective other predicted indication being different from the respective label, thereby training the MLA to identify, in the plurality of digital items, for the given user, the previously unseen digital items associated with the previously unknown, for the given user, source with which the given user is likely to interact.
- 16 . The system of claim 15 , wherein the predetermined period comprises one of selected from the group consisting of a day, a week, and a month.
- 17 . The system of claim 12 , wherein the combination of the respective item vectors comprises a concatenation thereof.
- 18 . The system of claim 12 , wherein the executable instructions further cause the system to use the MLA for generating the item recommendation for the given user, by: retrieving, from the user log associated with the given user, an in-use set of past digital items of the plurality of digital items of the digital recommendation platform; generating an in-use digital object that includes: (i) the respective user vector of the given user; and (ii) the combination of the respective item vectors of the in-use set of past digital items; feeding the in-use digital object to the MLA, thereby causing the MLA to identify, in the plurality of digital items, a given in-use digital item; and causing presentation of the given in-use digital item as being a next digital item for the given user.
- 19 . The system of claim 18 , wherein prior to the causing, the executable instructions cause the system to: feed the respective item vector of the given digital item as an input feature to a second MLA, thereby causing the second MLA to identify, in the plurality of digital items, a given other in-use digital item; the second MLA having been trained to generate the item recommendation based on outputs of the MLA; and causing presentation of the given other in-use digital item as being the next digital item for the given user.
- 20 . The system of claim 12 , wherein the MLA comprises a Deep Semantic Similarity Model (DSSM).
Description
CROSS-REFERENCE The present application claims priority to Russian Patent Application No. 2024132896, entitled “System and Method of Generating Digital Item Recommendations”, filed Nov. 1, 2024, the entirety of which is incorporated herein by reference. FIELD The present technology relates generally to recommendations systems; and in particular, to a method of generating digital item recommendations for users of digital recommendation platforms. BACKGROUND Digital recommendation platforms host various digital items to be provided to the users thereof. Some of the digital recommendation platforms comprise streaming platforms, for example, audio or video streaming platforms as a Sportify™ audio streaming platform, a Yandex.Music™ audio streaming platform, a Netflix™ video streaming platform, an Amazon™ Prime Video streaming platform, and the like, hosting various audio tracks and video clips. Other digital recommendation platforms can be implemented as online listing platforms, such as a Yandex™ Market online listing platform, an Amazon™ online listing platform, an Ozon.ru™ online listing platform, and others. These platforms allow the users to purchase various goods and services online. The given digital recommendation platform can be configured to host millions or even tens or hundreds of millions of digital items for presentation to the users. To assist the user in navigating through such a number of digital items hosted by the given digital recommendation platform and increase their user satisfaction from interacting therewith, the given digital recommendation platform can be configured to provide the user with user recommendations. For example, a request for the user recommendations can be triggered by the user appreciating a given digital item on the given digital recommendation platform, such as an audio track on an audio streaming platform. In response, the given digital recommendation platform can be configured to provide a list of recommended digital item to be presented to the user after the given digital item. In another example, the given digital recommendation platform can be configured to determine and further provide the list of recommended digital items to the user in response to the user starting up the given digital recommendation platform on her/his electronic device or the request for recommendations expressly. The recommended digital items can be, for example, of a similar category or provided by a same item source, such as a singer. The given digital recommendation platform is typically configured to determine the list recommended digital items based on past user interactions of users of the digital recommendation platform with the plurality of digital items thereof. Such a list can include, for example, tens, hundreds, or thousands recommended digital items. One of the technical problems associated with providing digital item recommendation to the users is that typically, digital recommendation platforms tend to provide the users with digital items that are similar to the digital items with which a given user has interacted. In an example where the given digital recommendation platform is the audio streaming platform, the given user can be provided with recommended digital items including audio tracks of an artist, with whose audio tracks the given user has already had positive experience, that is, indicated their positive feedback with (such as by providing a LIKE thereto). This may restrict the given user's audio item recommendations only to audio tracks of specific artists, and therefore disable the user to explore music of other, previously unknown artists that the given user might find of interest. Such a state of “being stuck” on the content provided only from certain sources (like artists in the present example) may affect the overall interest of the given user in interacting with the given digital recommendation platform. Certain prior art approaches have been proposed to tackle the above-identified technical problem. U.S. Pat. No. 11,237,693-B1, issued on Feb. 1, 2022, assigned to Outbrain Inc, and entitled “PROVISIONING SERENDIPITOUS CONTENT RECOMMENDATIONS IN A TARGETED CONTENT ZONE,” discloses a content recommendation method and system. In an implementation, the method and system generate a record identifying a set of content items interacted with by users of a content system, where each content item is associated with one or more topics. A confidence score associated with each of a set of topics associated with the set of content items is generated, where the confidence score represents a quantity of instances a respective topic appears in a collection of content items. A portion of the set of topics having a confidence score that exceeds a threshold confidence level is determined. A search of the collection of content items is executed to identify a serendipitous candidate content item that includes multiple portions of the set of topics previously interacted with by a us