IP Library Granted Patent US 9,535,996
Granted Patent B1
US 9,535,996 · App. 13/791,628 · Granted Jan 3, 2017

Selecting content objects for recommendation based on content object collections

Inventors: Andrew Simz Arneson McCann (Vancouver, CA); Roger David Donaldson (Vancouver, CA); Christopher Warren Nell (Vancouver, CA)
Assignee: deviantArt, Inc.
G06F17/30864G06F17/3028G06F17/30247G06F17/30268G06F17/30277G06F17/30536
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 9,535,996
App. No.
13/791,628
Granted
Jan 3, 2017
Kind
B1
Abstract

Collections identifying associated content objects, such as user-defined collections, are stored. A request to display or play a seed content object is received. A plurality of seed collections are identified based on the seed object. A plurality of candidate content objects are identified based on the identified seed collections, for instance by identifying the content objects that are identified by the seed collections. Properties of the seed object are identified, such as the categorization of the seed object, or the tags associated with the seed object. The candidate objects are ranked based on the identified seed collections and the identified properties of the seed object, and a candidate object is selected for recommendation to the user based on the ranking. The ranking of candidate objects can also be determined based on the coherence of the seed collections and the centrality of the seed object to the seed collections.

Claims (46)

1. A computer implemented method of selecting an image for recommendation to a user, the method comprising:

storing a plurality of image collections in a non-transitory computer-readable storage medium, wherein each image collection comprises a set of associated images;

receiving a request for a seed image from a user;

identifying a plurality of seed collections, wherein each seed collection comprises a stored image collection identifying the seed image;

identifying a plurality of candidate images based on the identified seed collections;

identifying properties of the seed image;

determining, for each image collection, a coherence score representative of a similarity of the set of images within the image collection, the coherence score comprising a measure of entropy of object vectors associated with each of the set of images within the image collection, each entry of an object vector representative of a property of an image associated with the object vector;

determining, for each candidate image in the plurality of candidate images, a corresponding result by dividing a first sum of the determined coherence scores for the image collections comprising seed collections to which the candidate image belongs by a second sum of the determined coherence scores for all of the plurality of image collections;

ranking each candidate image in the plurality of candidate images based on the determined corresponding results and based on the identified properties of the seed image; and

selecting a candidate image for recommendation to the user based on the ranking of candidate images.

2. The method of claim 1 , wherein at least one of the plurality of image collections comprises a user-defined collection.

3. The method of claim 1 , wherein at least one of the plurality of image collections comprises a machine-generated collection.

4. The method of claim 1 , wherein identifying a plurality of seed collections comprises identifying all of the stored image collections that identify the seed image.

5. The method of claim 1 , wherein identifying a plurality of candidate images comprises identifying all of the images identified by the identified seed collections except for the seed image.

6. The method of claim 1 , wherein the identifying properties of the seed image comprises identifying a categorization of the seed image.

7. The method of claim 1 , wherein the identifying properties of the seed image comprises identifying tags associated with the seed image.

8. The method of claim 1 , wherein the identifying properties of the seed image comprises identifying characteristics of the seed image.

9. The method of claim 1 , wherein the identified candidate images are ranked further based on a number of seed collections that identify each candidate image.

10. The method of claim 1 , wherein the identified candidate images are ranked further based on a proportion of seed collections that identify each candidate image relative to a proportion of stored image collections that identify each candidate image.

11. The method of claim 1 , wherein the identified candidate images are ranked further based on common properties between each candidate image and the seed image.

12. The method of claim 1 , wherein the selected candidate image for recommendation to the user comprises a top-ranked candidate image.

13. The method of claim 1 , further comprising:

displaying the selected candidate image to the user within a portion of an interface dedicated to displaying recommended images.

14. The method of claim 1 , further comprising:

determining a centrality score for each seed collection representing a representativeness of the seed image to the seed collection; and

further ranking the identified candidate images based on the determined centrality scores.

15. The method of claim 14 , wherein identifying a plurality of seed collections further comprises identifying only seed collections with a centrality score above a pre-determined threshold.

16. The method of claim 14 , wherein the determined centrality score is based on a distance from the seed image in a distribution of the properties of the images identified by the seed collection to a mean of the distribution.

17. A non-transitory computer-readable storage medium having executable computer program instructions embodied therein for selecting an image for recommendation to a user, the computer program instructions configured to, when execute, cause a computer to:

store a plurality of image collections in a non-transitory computer-readable storage medium, wherein each image collection comprises a set of associated images;

receive a request for a seed image from a user;

identify a plurality of seed collections, wherein each seed collection comprises a stored image collection identifying the seed image;

identify a plurality of candidate images based on the identified seed collections;

identify properties of the seed image;

determine, for each image collection, a coherence score representative of a similarity of the set of images within the image collection, the coherence score comprising a measure of entropy of object vectors associated with each of the set of images within the image collection, each entry of an object vector representative of a property of an image associated with the object vector;

determine, for each candidate image in the plurality of candidate images, a corresponding result by dividing a first sum of the determined coherence scores for the image collections comprising seed collections to which the candidate image belongs by a second sum of the determined coherence scores for all of the plurality of image collections;

rank each candidate image in the plurality of candidate images based on the determined corresponding results and based on the identified properties of the seed image; and

select a candidate image for recommendation to the user based on the ranking of candidate images.

18. A computer implemented method of selecting an image for recommendation to a user, the method comprising:

storing a plurality of image collections in a non-transitory computer-readable storage medium, wherein each image collection comprises a set of associated images;

displaying a seed image to a user;

identifying a plurality of seed collections, wherein each seed collection comprises a stored image collection identifying the seed image;

identifying a plurality of candidate images from the plurality of seed collections;

determining, for each image collection, a coherence score representative of a similarity of the set of images within the image collection, the coherence score comprising a measure of entropy of object vectors associated with each of the set of images within the image collection, each entry of an object vector representative of a property of an image associated with the object vector;

determining, for each candidate image in the plurality of candidate images, a corresponding result by dividing a first sum of coherence scores for the image collections comprising seed collections to which the candidate image belongs by a second sum of coherence scores for all of the plurality of image collections; and

selecting an image from the plurality of candidate images for recommendation to the user based on the determined corresponding results.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2019
From: DEVIANTART INC.
To: WIX.COM LTD.
Reel/Frame 049288/0600 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2013
From: MCCANN, ANDREW SIMZ ARNESON; DONALDSON, ROGER DAVID; NELL, CHRISTOPHER WARREN
To: DEVIANTART, INC.
Reel/Frame 030217/0709 →
Continuity (1)
Provisional Application 61695010 · Aug 30, 2012