IP Library Granted Patent US 10,380,649
Granted Patent B2
US 10,380,649 · App. 14/637,209 · Granted Aug 13, 2019

System and method for logistic matrix factorization of implicit feedback data, and application to media environments

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 10,380,649
App. No.
14/637,209
Granted
Aug 13, 2019
Kind
B2
Abstract

In accordance with an embodiment, described herein is a system and method for logistic matrix factorization of implicit feedback data, with application to media environments or streaming services. While users interact with an environment or service, for example a music streaming service, usage data reflecting implicit feedback can be collected in an observation matrix. A logistic function can be used to determine latent factors that indicate whether particular users are likely to prefer particular items. Exemplary use cases include providing personalized recommendations, such as personalized music recommendations, or generating playlists of popular artists.

Claims (48)

1. A system for use of logistic matrix factorization of implicit feedback data in determination and communication of media content item recommendations, comprising:

one or more computers, each of which includes a processor and a memory, and a media server provided thereon that includes access points that receive requests from media devices to access media content at the media server;

wherein in response to receiving, via the access points, the requests from the media devices to access the media content at the media server, the media server collects a usage data describing usage by a plurality of users, of a plurality of media content items, wherein the usage data is provided as an observation matrix, wherein each entry in the observation matrix represents a number of times that a particular user of a media device has interacted with a particular media content item;

a data collection and aggregation processor that applies a logistic function to determine latent factors that indicate a likelihood of particular users to prefer particular media content items, including

factorizing the observation matrix of usage data by lower-dimensional matrices representing, respectively a user's taste, and a media content item's implicit characteristics, and

determining one or more probabilities that the particular users will interact with the particular media content items; and

wherein the media server, for a particular user of a media device:

receives an indication of the latent factors that indicate the likelihood of the particular users to prefer the particular media content items,

determines, for the particular user, recommended media content items, based on the latent factors, and

communicates an indication of the recommended media content items to the particular user's media device.

2. The system of claim 1 , wherein the system is used with a media environment or streaming service that enables streaming of media content items from a media server to a media device.

3. The system of claim 2 , wherein the media content items are songs, music, movies, or other media content items; and wherein the implicit characteristics includes one or more of a style or genre of the songs, music, movies, or other media content items.

4. The system of claim 1 , wherein the logistic function is trained using parallel processing by sharding the observation matrix, and user and item blocks.

5. The system of claim 1 , wherein the system includes a plurality of media servers, each of which plurality of media servers including one or more access points that receive requests from media devices, and communicate indications of recommended media content items to the media devices, wherein the plurality of media servers communicate their usage data to the data collection and aggregation processor, to provide the observation matrix.

6. The system of claim 1 , wherein indications of recommended media content items are provided to the media devices as playlists of the recommended media content items.

7. The system of claim 1 , wherein the usage data is collected in response to determining interactions with a media application playlist or a search function to retrieve, play, stream, or otherwise request media content items, which usage data is then provided to the data collection and aggregation processor.

8. The system of claim 1 , wherein the media server includes:

a media application interface that receives the requests from the media devices;

a context database that stores data associated with the presentation of media content by particular media devices; and

a media streaming logic that retrieves or otherwise provides the access to the media content items, in response to the requests from the media devices, and populates a media content buffer with streams of corresponding media content data, which are then returned to a requesting device or a controlled device.

9. The system of claim 1 , wherein each media device includes a user interface which is adapted to display media options and to determine a user interaction or input to download, stream, or otherwise access a corresponding particular media content item.

10. A method for use of logistic matrix factorization of implicit feedback data in determining and communicating media content item recommendations, comprising:

providing, at one or more computers, each of which includes a processor and a memory, a media server that includes access points that receive requests from media devices to access media content at the media server;

in response to receiving, via the access points, the requests from the media devices to access the media content at the media server, collecting by the media server a usage data describing usage by a plurality of users, of a plurality of media content items, wherein the usage data is provided as an observation matrix, wherein each entry in the observation matrix represents a number of times that a particular user of a media device has interacted with a particular media content item;

processing the observation matrix including the usage data by a data collection and aggregation processor, including applying a logistic function to determine latent factors that indicate a likelihood of particular users to prefer particular media content items, including

factorizing the observation matrix of usage data by lower-dimensional matrices representing, respectively a user's taste, and a media content item's implicit characteristics, and

determining one or more probabilities that the particular users will interact with the particular media content items;

receiving at the media server an indication of the latent factors that indicate the likelihood of the particular users to prefer the particular media content items;

determining, for a particular user, recommended media content, based on the latent factors; and

communicating an indication of the recommended media content items to the particular user's media device.

11. The method of claim 10 , wherein the method is used with a media environment or streaming service that enables streaming of media content items from a media server to a media device.

12. The method of claim 11 , wherein the media content items are songs, music, movies, or other media content items; and wherein the implicit characteristics includes one or more of a style or genre of the songs, music, movies, or other media content items.

13. The method of claim 10 , wherein the logistic function is trained using parallel processing by sharding the observation matrix, and user and item blocks.

14. The method of claim 10 , wherein the method is performed by a plurality of media servers, each of which plurality of media servers including one or more access points that receive requests from media devices, and communicate indications of recommended media content items to the media devices, wherein the plurality of media servers communicate their usage data to the data collection and aggregation processor, to provide the observation matrix.

15. The method of claim 10 , wherein indications of recommended media content items are provided to the media devices as playlists of the recommended media content items.

16. A non-transitory computer readable storage medium, including instructions stored thereon which when read and executed by one or more computers cause the one or more computers to perform the method comprising:

providing, at one or more computers, each of which includes a processor and a memory, a media server that includes access points that receive requests from media devices to access media content at the media server;

in response to receiving, via the access points, the requests from the media devices to access the media content at the media server, collecting by the media server a usage data describing usage by a plurality of users, of a plurality of media content items, wherein the usage data is provided as an observation matrix, wherein each entry in the observation matrix represents a number of times that a particular user of a media device has interacted with a particular media content item;

processing the observation matrix including the usage data by a data collection and aggregation processor, including applying a logistic function to determine latent factors that indicate a likelihood of particular users to prefer particular media content items, including

factorizing the observation matrix of usage data by lower-dimensional matrices representing, respectively a user's taste, and a media content item's implicit characteristics, and

determining one or more probabilities that the particular users will interact with the particular media content items;

receiving at the media server an indication of the latent factors that indicate the likelihood of the particular users to prefer the particular media content items;

determining, for a particular user, recommended media content, based on the latent factors; and

communicating an indication of the recommended media content items to the particular user's media device.

17. The non-transitory computer readable storage medium of claim 16 , wherein the method is used with a media environment or streaming service that enables streaming of media content items from a media server to a media device.

18. The non-transitory computer readable storage medium of claim 17 , wherein the media content items are songs, music, movies, or other media content items; and wherein the implicit characteristics includes one or more of a style or genre of the songs, music, movies, or other media content items.

19. The non-transitory computer readable storage medium of claim 16 , wherein the logistic function is trained using parallel processing by sharding the observation matrix, and user and item blocks.

20. The non-transitory computer readable storage medium of claim 16 , wherein the method is performed by a plurality of media servers, each of which plurality of media servers including one or more access points that receive requests from media devices, and communicate indications of recommended media content items to the media devices, wherein the plurality of media servers communicate their usage data to the data collection and aggregation processor, to provide the observation matrix.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Jun 13, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SPOTIFY AB
Reel/Frame 038982/0327 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT Recorded Jul 22, 2015
From: SPOTIFY AB
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 036150/0415 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2015
From: JOHNSON, CHRISTOPHER
To: SPOTIFY AB
Reel/Frame 035291/0614 →