Media item clustering based on similarity data
Abstract
Methods and arrangements for facilitating generation of media mixes for a program participant based at least in part on media library inventory information provided by a number of program participants. Those individuals that decide to be program participants are interested in organizing, maintaining and playing their music, based at least in part, on data derived from a population of other participants in the program. A program participant must send, and the system, receive, data representative of that program participant's media inventory. The system or program determines a relative similarity of each item from the collection of program participants as compared to each other item and from the similarity information clusters of similar items are identified. The clusters can be used to identify clusters of similar items in an individual program participant's media library and therefrom mixes of similar media items can be created.
Claims
exact text as granted — not AI-modified1 . A computer implemented method for clustering similar media items in a program participant's media library comprising:
dividing a collection of media items that each exist in at least one program participant's media library of a population of program participants into canopies comprising respective groups of potentially similar media items; recursively sub-dividing the media items in each canopy, each recursion producing non-overlapping, increasingly refined, server clusters of media items determined to be similar to other items in a respective server cluster based on a cluster analysis of similarity data derived from the population of program participants; terminating the recursive sub-dividing responsive to determining that the server clusters produced from the latest recursion each comprise no more than a determined number of media items, resulting in a plurality of lowest-lowest server clusters; and creating one or more media item clusters for a particular program participant from items present in that program participant's media library, comprising: determining respective participant media item clusters for media items found in that program participant's media library from their membership in any of the lowest-level server clusters; and recursively agglomerating participant clusters that share a common parent server cluster, and which have fewer than a participant cluster minimum number of media items, into respective larger participant clusters until each of those larger participant clusters comprises at least the participant cluster minimum number of media items.
2 . The method of claim 1 , wherein the canopies divide the program participants' collective media library inventories into groupings based on editorial data from which it can be concluded that media items in different groupings can never be considered similar.
3 . The method of claim 2 , wherein the editorial data comprises genre information.
4 . The method of claim 1 , wherein the cluster analysis comprises a k-means analysis.
5 . The method of claim 1 , wherein the media items in each canopy are grouped by artist before the cluster analysis.
6 . The method of claim 1 , wherein the determined number of media items in a lowest-level server cluster is 1000 or less.
7 . The method of claim 1 , wherein the determined number of media items in a lowest-level server cluster is 100 or less.
8 . The method of claim 1 , wherein the determined number of media items in a lowest-level server cluster is 50 or less.
9 . The method of claim 1 , wherein the participant cluster minimum number of media items comprising is equal to or greater than 20 items.
10 . The method of claim 1 , wherein the participant cluster minimum number of media items comprising a participant cluster is equal to or greater than 50 items.
11 . The method of claim 1 , wherein the similarity data derived from the population of program participants comprises a vector space, wherein each vector within the vector space represents a media item and all media items similar to the media item.
12 . A method of creating mixes of media items from a program participant's collection of media items comprising:
sending to a server, information describing individual media items of a program participant's collection of media items; receiving from the server, data describing clusters of media items contained within the program participant's collection of media items, the clusters having been compiled based on an agglomeration of tracks found in hierarchically related clusters of media items in a media item inventory available to the server, the clusters of media items in the inventory having been determined based on a cluster analysis of similarity data derived from a population of program participants; and determining a mix of media items, the mix comprising media items selected from one of the clusters of media items contained within the program participant's collection of media items received from the server.
13 . The method of claim 12 , wherein the mix of media items comprises a playlist generated from songs selected from one of the clusters and songs similar to the songs selected from one of the clusters.
14 . The method of claim 12 , wherein the songs comprising the mix of media items are chosen based on a degree of similarity between each of the songs and the one cluster.
15 . The method of claim 12 , wherein the similarity data derived from the population of program participants comprises a vector space, wherein each vector within the vector space represents a media item and all media items similar to the media item.
16 . A device comprising:
a media storage unit configured to store data describing clusters of media items stored in a program participant's collection of media items, the clusters having been compiled based on an agglomeration of tracks found in hierarchically related clusters of media items available from a server inventory, the clusters of media items in the server inventory having been determined based on a cluster analysis of similarity data derived from a population of program participants; a tangible computer readable medium storing instructions for configuring a processor to select a mix of media items selected from media items identified in one of the clusters of media items in the program participant's collection of media items; and a processor to be configured by instructions obtained from the computer readable medium.
17 . The device of claim 16 further comprising:
a communications interface configured to send to the server, information describing individual media items contained with a program participant's collection of media items, and further configured to receive, from the server, the data describing the clusters of media items in the program participants collection of media items.
18 . The device of claim 17 , wherein the cluster data comprises information identifying a plurality of clusters and media items identified within each of the plurality of clusters.
19 . The device of claim 17 , wherein the mix comprises a list of similar media items generated from the cluster data.
20 . A system for clustering similar media items in a program participant's media library comprising:
a server configured to recursively sub-divide a collection of media items formed from the media items that exist in at least one program participant's media library of a population of program participants, each recursive sub-division producing non-overlapping, increasingly refined, server clusters of media items determined to be similar to other items in a respective server cluster based on a cluster analysis of similarity data derived from the media libraries of the population of program participants and to terminate the recursive sub-dividing responsive to a determination that the server clusters produced from the latest recursive sub-division each comprise no more than a determined number of media items; a server configured to create one or more media item clusters for a particular program participant from items present in that program participant's media library based on the server clusters, by performing a method comprising: determining participant clusters for media items from that program participant's media library that are found in one or more lowest-level server cluster, and recursively agglomerating, into larger participant clusters, participant clusters that share a common parent server cluster until each of those larger participant clusters comprises at least a determined minimum number of media items; and a media playing device configured to generate a mix of similar media items for playback based on a selection of media items represented in one of the participant clusters.
21 . The system of claim 20 , wherein the servers make up part of one server array.
22 . The system of claim 20 , wherein the servers comprise the same server.
23 . The system of claim 20 , wherein the similarity data derived from the population of program participants comprises a vector space, wherein each vector within the vector space represents occurrences of an individual media item in each program participant's media library.
24 . The system of claim 20 , wherein the similarity data derived from the population of program participants comprises a similarity matrix representing incidences of co-occurrences of an individual media items in among program participants' media libraries.
25 . A machine-readable medium having stored thereon machine-readable instructions for causing a machine to perform a method comprising:
recursively sub-dividing a collection of media items that each exist in at least one program participant's media library of a population of program participants, each recursion producing non-overlapping, increasingly refined, server clusters of media items determined to be similar to other items in a respective server cluster based on a cluster analysis of similarity data derived from the population of program participants; terminating the recursive sub-dividing responsive to determining that the server clusters produced from the latest recursive sub-division all comprise no more than a determined number of media items; and creating one or more media item clusters for a particular program participant from items present in that program participant's media library, comprising:
forming respective participant clusters of media items found in that program participant's media library based on membership of those media items in respective lowest-level server clusters; and
recursively agglomerating participant clusters that share a common parent server cluster into larger participant clusters until each of those larger participant clusters comprises at least a determined minimum number of media items.
26 . The machine-readable medium of claim 25 , wherein the method further comprises
dividing the collection of media items that each exist in at least one program participant's media library of a population of program participants into canopies comprising respective groups of potentially similar media items, wherein items in different canopies cannot be divided into the same server cluster.
27 . The machine-readable medium of claim 26 , wherein the canopies are determined based on editorial data.
28 . The machine-readable medium of claim 27 , wherein the editorial data comprises genre information.
29 . The machine-readable medium of claim 25 , wherein the cluster analysis comprises a k-means analysis.
30 . A machine-readable medium having stored thereon machine-readable instructions for causing a machine to perform a method comprising:
sending to a server, information describing individual media items contained with a program participant's collection of media items; receiving from the server, data defining clusters of the media items contained within the program participant's collection of media items, the clusters having been compiled based on an agglomeration of tracks found in hierarchically related clusters of media items in a server inventory, the clusters of media items in the server's inventory having been determined based on a cluster analysis of similarity data derived from a population of program participants; and determining a mix of media items, the mix comprising media items represented in one of the clusters of media items contained within the program participant's collection of media items received from the server.
31 . The machine-readable medium of claim 30 , wherein each of the clusters identifies a determined minimum number of items, and the cluster was formed by agglomerating increasingly dissimilar items until the cluster identified the minimum number of items.Join the waitlist — get patent alerts
Track US2011060738A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.