Patent ID: 8200674

Claim:
A system for making personalized media recommendations including a media server, the media server comprising: a media database containing a plurality of media tracks and a database schema defining multiple media styles, each of the media tracks being assigned one or more media styles, each media style of each media track being assigned a track-specific style weight, each track-specific style weight indicating a degree of applicability of that media style to its corresponding media track; a media delivery engine configured to transmit media tracks to each of a plurality of media clients via a computer network for playback via the media client; a feedback module configured to receive history data from each of the media clients, the history data including a track identifier and play count for each media track played by each user of each media client over a period of time; a recommendation engine configured to: compute a plurality of user-specific style weights, based on the track-specific style weights and play counts contained in the history data received for each user from each media client, select one or more recommended media tracks for each user, based on the user-specific style weights and the track-specific style weights for the recommended media tracks, and send a recommendation message to the media client including media links to the recommended media tracks on the media server, to cause the media client to display the media links to each user; a statistics engine configured to compute aggregate statistics based on the history data from the plurality of media clients; wherein the recommendation engine is further configured to select the one or more recommended media tracks for each user further based on the aggregate statistics; and wherein the recommendation engine is further configured to apply one or more of the following thresholds in selecting the one or more recommended media tracks: a threshold play count, according to which the recommendation engine only selects recommended media tracks based on media styles that have been played more than the threshold number play count by a user; a threshold percentage of total play time, according to which the recommendation engine only selects recommended media tracks based on media styles that account for the threshold percentage of the total play time of the user; and a threshold number of media styles, according to which the recommendation engine only selects recommended media tracks from the threshold number of media styles.