IP Library Granted Patent US 10,223,358
Granted Patent B2
US 10,223,358 · App. 15/063,170 · Granted Mar 5, 2019

Selecting balanced clusters of descriptive vectors

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,223,358
App. No.
15/063,170
Granted
Mar 5, 2019
Kind
B2
Abstract

A clustering machine can cluster descriptive vectors in a balanced manner. The clustering machine calculates distances between pairs of descriptive vectors and generates clusters of vectors arranged in a hierarchy. The clustering machine determines centroid vectors of the clusters, such that each cluster is represented by its corresponding centroid vector. The clustering machine calculates a sum of inter-cluster vector distances between pairs of centroid vectors, as well as a sum of intra-cluster vector distances between pairs of vectors in the clusters. The clustering machine calculates multiple scores of the hierarchy by varying a scalar and calculating a separate score for each scalar. The calculation of each score is based on the two sums previously calculated for the hierarchy. The clustering machine may select or otherwise identify a balanced subset of the hierarchy by finding an extremum in the calculated scores.

Claims (90)

1. A method comprising:

accessing, by one or more processors, descriptive vectors that describe items, each descriptive vector having multiple dimensions whose values indicate extents to which multiple characteristics are present in a different item among the items;

calculating, by the one or more processors, vector distances between pairs of the descriptive vectors;

generating, by the one or more processors, a hierarchy of vector clusters by clustering the descriptive vectors into the vector clusters based on the calculated vector distances;

determining, by the one or more processors, centroid vectors of the vector clusters in the hierarchy by calculating mean vectors of the vector clusters, each mean vector and each centroid vector representing a different vector cluster in the hierarchy;

summing, by the one or more processors, inter-cluster vector distances between pairs of the centroid vectors;

summing, by the one or more processors, intra-cluster vector distances between pairs of descriptive vectors in each of the vector clusters;

calculating, by the one or more processors, scores of the hierarchy based on the summed inter-cluster vector distances and on the summed intra-cluster vector distances, each of the scores being calculated based on a different scalar among a plurality of scalars among which a scalar corresponds to an extreme score among the calculated scores; and

selecting, by the one or more processors, a subset of the vector clusters in the hierarchy based on the scalar that corresponds to the extreme score.

2. The method of claim 1 , further comprising:

accessing the items prior to the accessing of the descriptive vectors, each of the items including different media content; and

determining the descriptive vectors by generating a different descriptive vector for each of the items, the generating of each different descriptive vector including analyzing the media content in the corresponding item to be described.

3. The method of claim 2 , wherein:

the accessed items are media items;

the method further comprises normalizing the media items by at least one of:

omitting duplicate media items, omitting non-original media items, omitting media items released on compilation albums, omitting media items recorded at live performances, or retaining media items recorded in studios; and

the determining of the descriptive vectors is performed by generating a different descriptive vector for each of the normalized media items.

4. The method of claim 1 , wherein:

the calculating of the vector distances between the pairs of the descriptive vectors is based on correlations among the descriptive vectors.

5. The method of claim 1 , wherein:

the calculating of the vector distances between the pairs of the descriptive vectors includes calculating quadratic-chi histogram distances between the pairs of the descriptive vectors.

6. The method of claim 1 , wherein:

the clustering of the descriptive vectors is performed according to an agglomerative hierarchical clustering algorithm.

7. The method of claim 6 , wherein:

the agglomerative hierarchical clustering algorithm includes a complete-linkage clustering algorithm.

8. The method of claim 1 , wherein:

the calculating of each score of the hierarchy includes:

selecting a scalar between zero and unity;

multiplying the scalar by the summed intra-cluster vector distances to obtain a first multiplicative product;

multiplying the summed inter-cluster vector distances by the scalar subtracted from unity to obtain a second multiplicative product; and

adding the first multiplicative product to the second multiplicative product to obtain the score of the hierarchy.

9. The method of claim 8 , wherein:

the items are media items released in a set of albums by a same artist; and

the selecting of the scalar is based on a count of albums in the set of albums by the same artist.

10. The method of claim 1 , further comprising:

modifying the selected subset of the vector clusters in the hierarchy, the modifying of the selected subset including:

calculating weights of vector clusters in the selected subset, a first calculated weight corresponding to a first vector cluster in the selected subset; and

removing a first vector cluster from the selected subset based on the first calculated weight failing to transgress a threshold percentile of the calculated weights of the vector clusters in the selected subset.

11. The method of claim 10 , wherein:

the calculating of the weights of vector clusters in the selected subset is based on sizes of vector clusters in the selected subset, the first calculated weight being calculated based on a count of descriptive vectors in the first vector cluster within the selected subset.

12. The method of claim 10 , wherein:

the calculating of the weights of vector clusters in the selected subset is based on average popularity scores of vector clusters in the selected subset, the first calculated weight being calculated based on an average of a group of popularity scores that correspond to a group of items described by at least some descriptive vectors in the first vector cluster within the selected subset.

13. The method of claim 10 , wherein:

the calculating of the weights of vector clusters in the selected subset is based on values of most dominant dimensions of descriptive vectors in vector clusters in the selected subset,

the first vector cluster having a first centroid vector among the centroid vectors,

the first calculated weight being calculated based on a ratio of a most dominant value of a most dominant dimension in the first centroid vector of the first vector cluster to a sum of less dominant values of less dominant dimensions in the first centroid vector of the first vector cluster.

14. The method of claim 1 , further comprising:

generating labels that identify vector clusters in the selected subset of the hierarchy,

a first label identifying a first vector cluster in the selected subset,

the first vector cluster having a first centroid vector among the centroid vectors,

the first label being generated by:

determining a set of most dominant dimensions in the first centroid vector of the first vector cluster, the set of most dominant dimensions having most dominant values in the first centroid vector;

accessing a database that maps the set of most dominant dimensions to corresponding textual descriptors; and

incorporating the textual descriptors into the first label.

15. The method of claim 1 , wherein:

the descriptive vectors that describe the items are mood vectors that describe media items all recorded by a same artist, each mood vector indicating extents to which multiple emotions are perceivable in a different media item among the media items;

the hierarchy of vector clusters is a nested hierarchy of mood clusters that group the mood vectors; and

the selected subset of the mood clusters represents a tier among multiple tiers of the nested hierarchy, the centroid vectors of the selected mood clusters describing and representing the same artist.

16. The method of claim 1 , wherein:

the items described by the descriptive vectors have a common source;

the selected subset of the vector clusters is representative of the common source of the items; and the method further comprises:

storing identifiers of centroid vectors of vector clusters in the selected subset, the identifiers being stored with a contemporary timestamp in an evolutionary history of items attributed to the common source.

17. The method of claim 1 , wherein:

the items described by the descriptive vectors are sourced from multiple sources that include a first source and a second source;

the selected subset of the vector clusters has a first portion that is representative of the first source of the items and has a second portion that is representative of the second source of the items; and the method further comprises:

determining that the first source represented by the first portion of the selected subset is distinct from the second source; and

causing presentation of a notification that the first and second sources are different.

18. A non-transitory machine-readable storage medium comprising instructions that, when executed by one or more processors of a machine, cause the machine to perform operations comprising:

accessing descriptive vectors that describe items, each descriptive vector having multiple dimensions whose values indicate extents to which multiple characteristics are present in a different item among the items;

calculating vector distances between pairs of the descriptive vectors;

generating a hierarchy of vector clusters by clustering the descriptive vectors into the vector clusters based on the calculated vector distances;

determining centroid vectors of the vector clusters in the hierarchy by calculating mean vectors of the vector clusters, each mean vector and each centroid vector representing a different vector cluster in the hierarchy;

summing inter-cluster vector distances between pairs of the centroid vectors;

summing intra-cluster vector distances between pairs of descriptive vectors in each of the vector clusters;

calculating scores of the hierarchy based on the summed inter-cluster vector distances and on the summed intra-cluster vector distances, each of the scores being calculated based on a different scalar among a plurality of scalars among which a scalar corresponds to an extreme score among the calculated scores; and

selecting a subset of the vector clusters in the hierarchy based on the scalar that corresponds to the extreme score.

19. The non-transitory machine-readable storage medium of claim 18 , wherein:

the selecting of the subset of the vector clusters in the hierarchy includes determining that the scalar that corresponds to the extreme score corresponds to a minimum score among the calculated scores; and

the selected subset of the vector clusters represents a tier among multiple tiers of the hierarchy.

20. A system comprising:

one or more processors; and

a memory storing instructions that, when executed by at least one processor among the one or more processors, cause the system to perform operations comprising:

accessing descriptive vectors that describe items, each descriptive vector having multiple dimensions whose values indicate extents to which multiple characteristics are present in a different item among the items;

calculating vector distances between pairs of the descriptive vectors;

generating a hierarchy of vector clusters by clustering the descriptive vectors into the vector clusters based on the calculated vector distances;

determining centroid vectors of the vector clusters in the hierarchy by calculating mean vectors of the vector clusters, each mean vector and each centroid vector representing a different vector cluster in the hierarchy;

summing inter-cluster vector distances between pairs of the centroid vectors;

summing intra-cluster vector distances between pairs of descriptive vectors in each of the vector clusters;

calculating scores of the hierarchy based on the summed inter-cluster vector distances and on the summed intra-cluster vector distances, each of the scores being calculated based on a different scalar among a plurality of scalars among which a scalar corresponds to an extreme score among the calculated scores; and

selecting a subset of the vector clusters in the hierarchy based on the scalar that corresponds to the extreme score.

Assignments (12)
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
SECURITY INTEREST Recorded May 8, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: ARES CAPITAL CORPORATION
Reel/Frame 063574/0632 →
SECURITY INTEREST Recorded Apr 28, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 063561/0381 →
SECURITY AGREEMENT Recorded Jan 31, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 063560/0547 →
RELEASE (REEL 042262 / FRAME 0601) Recorded Oct 13, 2022
From: CITIBANK, N.A.
To: GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC
Reel/Frame 061748/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Apr 13, 2017
From: GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE DIGITAL VENTURES, LLC
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 042262/0601 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Feb 8, 2017
From: JPMORGAN CHASE BANK, N.A.
To: GRACENOTE, INC.; CASTTV INC.; TRIBUNE MEDIA SERVICES, LLC; TRIBUNE DIGITAL VENTURES, LLC
Reel/Frame 041656/0804 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2016
From: VARTAKAVI, ANEESH; DIMARIA, PETER C; CREMER, MARKUS K; POPP, PHILLIP
To: GRACENOTE, INC.
Reel/Frame 039423/0188 →
NOTICE AND CONFIRMATION OF GRANT OF SECURITY INTEREST IN PATENTS Recorded May 11, 2016
From: GRACENOTE, INC.; TRIBUNE BROADCASTING COMPANY, LLC; TRIBUNE MEDIA COMPANY
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038679/0458 →