IP Library › Granted Patent US 11,853,328
Granted Patent B2
US 11,853,328 · App. 17/552,874 · Granted Dec 26, 2023

Adaptive multi-model item selection systems and methods

Inventors: Jesse Anderton (Princeton Junction, NJ); Maryam Aziz (Princeton Junction, NJ); David Bourgin (Brooklyn, NY); Benjamin Austin Carterette (Wilmington, DE)
Assignee: Spotify AB
G06F16/285G06N3/08
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 11,853,328
App. No.
17/552,874
Granted
Dec 26, 2023
Kind
B2
Abstract

An adaptive multi-model item selection method, comprising: receiving, from one of a plurality of client devices, a request including a client-side feature vector representing a state of the client device; determining, by an advocate model, a probability distribution of a plurality of specialist cluster models from the client-side feature vector; choosing, by a use case selector, a cluster corresponding to a use case from the probability distribution; and obtaining, by the use case selector based on the cluster (i.e., the cluster that was sampled by the user case selector), a specialist cluster model from the plurality of specialist cluster models.

Claims (58)

1. An adaptive multi-model item selection method, comprising:

receiving, from a client device of a plurality of client devices, a request including a client-side feature vector representing a state of the client device;

determining, by an advocate model, a probability distribution of a plurality of specialist cluster models from the client-side feature vector;

choosing, by a use case selector, a cluster corresponding to a use case from the probability distribution; and

obtaining, by the use case selector based on the cluster, a specialist cluster model from the plurality of specialist cluster models.

2. The method according to claim 1 , further comprising:

selecting, by an item selector interface, an item from a database of items using the specialist cluster model.

3. The method according to claim 2 , further comprising:

wherein the item selector interface is a content item selector interface and the item is a content item.

4. The method according to claim 1 , further comprising:

scoring, by the advocate model, the client-side feature vector based on an estimate of a probability the client-side feature vector is associated with each cluster of a plurality of clusters.

5. The method according to claim 1 , wherein choosing the cluster corresponding to the use case from the probability distribution includes randomly sampling a cluster.

6. The method of claim 1 , further comprising:

receiving, from a server, a plurality of server-side client feature vectors, each server-side client feature vector representing any one of (i) a set of item features associated with a plurality of items available to a client device, (ii) a set of client features associated with at least one client device, or (iii) a combination of (i) and (ii);

storing, in a memory, a plurality of mini-specialist cluster models, each mini-specialist cluster model of the plurality of mini-specialist cluster models being (i) associated with a corresponding client-side feature vector and (ii) trained on the plurality of server-side client feature vectors;

clustering the plurality of mini-specialist cluster models to obtain a soft cluster assignment for each of the mini-specialist cluster models, thereby generating a plurality of soft cluster assignments; and

training, by a model trainer, each of the plurality of specialist cluster models by combining the plurality of mini-specialist cluster models based on the soft cluster assignments associated with the mini-specialist cluster models.

7. The method of claim 6 , wherein the client-side feature vector includes a first set of client context features and the server-side client feature vectors include a plurality of second sets of client context features.

8. A system for multi-model item selection, comprising:

a data communication device configured to receive, from one of a plurality of client devices, a request including a client-side feature vector representing a state of the client device;

a memory device configured to store an advocate model and one or more specialist cluster models;

an analyzer configured to determine, using the advocate model, a probability distribution of a plurality of specialist cluster models from the client-side feature vector; and

a use case selector configured to:

choose a cluster corresponding to a use case from the probability distribution, and

obtain, based on the cluster, a specialist cluster model from the plurality of specialist cluster models.

9. The system according to claim 8 , further comprising:

an item selector interface configured to select an item from a database of items using the specialist cluster model.

10. The system according to claim 9 , wherein the item selector interface is a content item selector interface and the item is a content item.

11. The system according to claim 8 , wherein the advocate model is further configured to score the client-side feature vector based on an estimate of a probability the client-side feature vector is associated with each cluster of a plurality of clusters.

12. The system according to claim 8 , wherein the use case selector is further configured to choose the cluster by randomly sampling a cluster from the probability distribution.

13. The system of claim 8 , wherein:

the analyzer is further configured to:

receive a plurality of server-side client feature vectors, each server-side client feature vector representing any one of (i) a set of item features associated with a plurality of items available to a client device, (ii) a set of client features associated with at least one client device, or (iii) a combination of (i) and (ii);

the memory device is further configured to:

store a plurality of mini-specialist cluster models, each mini-specialist cluster model of the plurality of mini-specialist cluster models being (i) associated with a corresponding client-side feature vector and (ii) trained on the plurality of server-side client feature vectors;

the analyzer is further configured to:

cluster the plurality of mini-specialist cluster models to obtain a soft cluster assignment for each of the mini-specialist cluster models, thereby generating a plurality of soft cluster assignments; and

further comprising:

a model trainer configured to train each of the plurality of specialist cluster models by combining the plurality of mini-specialist cluster models based on the soft cluster assignments associated with the mini-specialist cluster models.

14. The system of claim 13 , wherein the client-side feature vector includes a first set of client context features and the server-side client feature vectors include a plurality of second sets of client context features.

15. A computer system, comprising: one or more processors; and a non-transitory computer-readable storage medium storing instructions that when executed by the one or more processors cause the computer system to perform operations, comprising:

receiving, from a client device of a plurality of client devices, a request including a client-side feature vector representing a state of the client device;

determining, by an advocate model, a probability distribution of a plurality of specialist cluster models from the client-side feature vector;

choosing, by a use case selector, a cluster corresponding to a use case from the probability distribution; and

obtaining, by the use case selector based on the cluster, a specialist cluster model from the plurality of specialist cluster models.

16. The non-transitory computer-readable medium of claim 15 , further having stored thereon a sequence of instructions for causing the one or more processors to perform:

selecting, by an item selector, an item from a database of items using the specialist cluster model.

17. The non-transitory computer-readable medium of claim 16 , further comprising:

wherein the item selector interface is a content item selector interface and the item is a content item.

18. The non-transitory computer-readable medium of claim 15 , further having stored thereon a sequence of instructions for causing the one or more processors to perform:

scoring, by the advocate model, the client-side feature vector based on an estimate of a probability the client-side feature vector is associated with each cluster of a plurality of clusters.

19. The non-transitory computer-readable medium of claim 15 , wherein choosing the cluster corresponding to the use case from the probability distribution includes randomly sampling a cluster.

20. The non-transitory computer-readable medium of claim 15 , further having stored thereon a sequence of instructions for causing the one or more processors to perform:

receiving, from a server, a plurality of server-side client feature vectors, each server-side client feature vector representing any one of (i) a set of item features associated with a plurality of items available to a client device, (ii) a set of client features associated with at least one client device, or (iii) a combination of (i) and (ii);

storing, in a memory device, a plurality of mini-specialist cluster models, each mini-specialist cluster model of the plurality of mini-specialist cluster models being (i) associated with a corresponding client-side feature vector and (ii) trained on the plurality of server-side client feature vectors;

clustering the plurality of mini-specialist cluster models to obtain a soft cluster assignment for each of the mini-specialist cluster models, thereby generating a plurality of soft cluster assignments; and

training, by a model trainer, each of the plurality of specialist cluster models by combining the plurality of mini-specialist cluster models based on the soft cluster assignments associated with the mini-specialist cluster models.

21. The non-transitory computer-readable medium of claim 20 , wherein the client-side feature vector includes a first set of client context features and the server-side client feature vectors include a plurality of second sets of client context features.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2023
From: ANDERTON, JESSE; AZIZ, MARYAM; BOURGIN, DAVID; CARTERETTE, BENJAMIN AUSTIN
To: SPOTIFY AB
Reel/Frame 063450/0218 →
Continuity (1)
Related Publication 20230195753A1 · Jun 22, 2023
Cited By (1)
US 12,265,555