The present invention is a system and method for assigning user preference settings for fields in a category, and particularly a media category, using groups and assigning the fields to the groups.
In recent years, there has been an enormous increase in the amount of digital media available online. Services, such as Apple's iTunes® for example, enable users to legally purchase and download music. Other services, such as Yahoo!® Music Unlimited and RealNetwork's Rhapsody® for example, provide access to millions of songs for a monthly subscription fee. YouTube® provides users access to video media. As a result, media items have become much more accessible to consumers worldwide. However, the increased accessibility of media has only heightened a long-standing problem for the media industry, which is namely the issue of linking users with media that matches their preferences.
Many companies, technologies, and approaches have emerged to address this issue. Being able to link users with media that matches their preferences allows companies to more effectively make recommendations of media items to users. Some companies assign ratings to attributes of identified media. The ratings are assembled to create a holistic classification for the media that is then used by a recommendation engine to produce recommendations. Other companies take a communal approach wherein recommendations are based on the collective wisdom of a group of users with similar tastes by profiling the habits of a particular user based on the information provided by the user and then searching similar profiles of other users. Either approach involves the soliciting, assembling, and reviewing of information about a user and/or the user's media likes or dislikes. That information is then used to establish user preferences on which to base media recommendations.
In some recommendation generation schemes, the user's media preferences are used to determine recommendations. User preferences allow more accurate targeting of recommendations. A user may establish preferences by assigning a weight to different media categories. These media categories may include for example, genre, artist, title, album or presentation, date of release, or the like. The weight assigned by the user for each of the media categories is used to establish the user's preferences, and from those preferences, a profile for that user. One example of such an approach is described in U.S. patent application Ser. No. 11/484,130, entitled “P2P NETWORK FOR PROVIDING REAL TIME MEDIA RECOMMENDATIONS,” filed on Jul. 11, 2006, which is co-assigned to the assignee of the instant application, and is hereby incorporated herein by reference in its entirety.
Categories, and particularly media categories, may however contain a large number of fields. To effectively assign a weight to a category to establish a user's preferences, the user must assign a weight to each of the fields within that category. This may be a difficult and time consuming effort for the user depending on the number of fields in the category. Accordingly, users may not, and in most cases, will not spend the time to assign individual weights to each of these fields. Alternatively, the user may opt to assign weights to only certain selected fields of interest. In either scenario, the weighting of the media category would be incomplete. As a result, preferences would be calculated using the incomplete weighting of a media category and thus would be inherently inaccurate. Accordingly, there is a need for a system and method to effectively assign preference weights to fields within a category, and particularly a media category, without the user having to individually assign a weight to each field within the category.
The present invention is a system and method for assigning a user preference setting for fields in a category, particularly a media category, using groups. A category typically contains a plurality of fields. Instead of the user having to individually weight each field in the category to assign their preferences, the present invention establishes a plurality of groups and determines a group preference setting for the groups. The user then may assign the field to the particular group. The field will assume the group preference setting of the group to which the field is assigned. In this manner, the user can initially determine and/or change the preference setting of the field in a group by changing the group preference setting as desired and/or by assigning the field to a different group.
The group preference setting may be determined either prior to or after the field is assigned to the group. The user may establish the groups and/or determine the group preference setting. Alternatively, the group may be programmatically established and the group preference setting programmatically determined. The user may assign the field to the group, and/or the field may initially be programmatically assigned to the group based on a profile of the user. Additionally, one of the groups may be designated as a default group with a default group preference setting.
Those skilled in the art will appreciate the scope of the present invention and realize additional aspects thereof after reading the following detailed description of the preferred embodiments in association with the accompanying drawing figures.
The accompanying drawing figures incorporated in and forming a part of this specification illustrate several aspects of the invention, and together with the description serve to explain the principles of the invention.
The embodiments set forth below represent the necessary information to enable those skilled in the art to practice the invention and illustrate the best mode of practicing the invention. Upon reading the following description in light of the accompanying drawing figures, those skilled in the art will understand the concepts of the invention and will recognize applications of these concepts not particularly addressed herein. It should be understood that these concepts and applications fall within the scope of the disclosure and the accompanying claims.
The present invention is a system and method for assigning a user preference setting for fields in a category, particularly a media category, using groups. A category typically contains a plurality of fields. Instead of the user having to individually weight each field in the category to assign their preferences, the present invention establishes a plurality of groups and determines a group preference setting for the groups. The user then may assign the field to the particular group. The field will assume the group preference setting of the group to which the field is assigned. In this manner, the user can initially determine and/or change the preference setting of the field in a group by changing the group preference setting as desired and/or by assigning the field to a different group.
The group preference setting may be determined either prior to or after the field is assigned to the group. The user may establish the groups and/or determine the group preference setting. Alternatively, the group may be programmatically established and the group preference setting programmatically determined. The user may assign the field to the group, and/or the field may initially be programmatically assigned to the group based on a profile of the user. Additionally, one of the groups may be designated as a default group with a default group preference setting.
As background, a media category typically contains multiple fields. For example, WinAmp®, the proprietary media player written by Nullsoft, a subsidiary of Time Warner, Inc., currently identifies one hundred and forty-eight (148) different media fields in a music genre category as one example of a media category.
As further background for using media item preference settings to rate media item recommendations, in addition to U.S. patent application Ser. No. 11/484,130, entitled “P2P NETWORK FOR PROVIDING REAL TIME MEDIA RECOMMENDATIONS,” filed on Jul. 11, 2006, which is referenced above, another example of a media item preference setting and rating approach is described in U.S. patent application Ser. No. 11/696,475, entitled “SYSTEM AND METHOD FOR ASSIGNING USER PREFERENCE SETTINGS FOR A CATEGORY, AND IN PARTICULAR A MEDIA CATEGORY,” filed on Apr. 4, 2007, co-assigned to the assignee of the instant application, and is hereby incorporated herein by reference in its entirety. Please note that although the present invention is described with reference to media categories, it should be understood that the present invention applies to any type of category, and accordingly, the present invention is not limited to media categories.
The title 16A of group 14A is “Master” and may be considered a default group 14. Because the “Master” group 14A may be considered a default group 14, the group preference setting 20 of the “Master” group 14A may be set at “5,” or an equivalent mid range value, as shown by the preference selector 18A. In addition to the “Master” group 14A,
The user may assign the field 10 to the group 14 by using a basic drag and drop function of the user device. Alternatively, the user may manually input a field identifier, such as the name of the field 10 into the location of the group 14 on the GUI 12. The user may drag the field 10 from the group 14 that the field 10 is currently in, for example the “Master” group 14A, and drop the field 10 in the desired group 14, for example the “Rock” group 14B. Alternatively, the user may leave the field 10 in the “Master” group 14A, or any other group 14 to which the field 10 is currently assigned. Additionally, the user may add a group 14 using the “Add” selector 22 or delete a group 14 using the “Delete” selector 24.
For example,
In this regard,
The groups 14 are then established (step 202). The groups 14 are not limited to being any specific quantity. The user may establish the group 14 or the group 14 may be established programmatically by the media item client application. For example, from the review of the user profile information (step 200), the media item client application may determine that the user has a very consistent play history with the media items played associated with a very limited number of the fields 10, for example the “Rock” field 10 and the “Hard Rock” field 10. As such, the groups 14 that are established may be more focused on the different “Rock” related fields 10, with the non-“Rock” related fields 10 assumed to be in the default group 14, for example the “Master” group 14A. Alternatively, the non-“Rock” related fields 10 may be relegated to the group 14 with the very low group preference setting 20.
Once the groups 14 are established, the title 16 may be given to the group 14 (step 204). The title 16 may be any designation the user desires, as the user may provide manually, or as may be programmatically provided based on the user profile. Also, the title 16 may be a standard title 16. The title 16 provides a descriptive identification for the group 14 and a differentiation with the other groups 14. The differentiation may, for example, be based on degrees of preference, on a characteristic of the media item, such as genre, date, or release, or on any other factor or indicia.
The group preference setting 20 is determined for the group 14 (step 206). The group preference setting 20 may be determined manually by the user or programmatically based on the user's profile. In addition, the group preference setting 20 may be a pre-determined, standard group preference setting 20. The group preference setting 20 may be any type or range of designation to determine the user's degree of preference for the group 14. The group preference setting 20 may be determined prior to the field 10 being assigned to the group 14, or, alternatively, after the field 10 is assigned to the group 14.
The field 10 may be assigned to the group 14 (step 208). Although
The central/proxy server 28 may be comprised of a database of user accounts 30 and a preference engine 32. The user accounts 30 may contain a record of accounts for each user known to the central/proxy server 28 and information concerning the aspects of the user's activities on the user/server system 26. The preference engine 32 is a program, algorithm, or control mechanism that may be used to establish the group 14, establish the group preference setting 20, and/or assign the field 10 into the group 14. The central/proxy server 28 is also able to communicate with other devices and systems over a network 34. The network 34 may be any private network or distributed public network such as, but not limited to, the Internet.
The user/server system 26 also includes a number of user devices 36A-36N which are optionally connected to the central/proxy server 28 and each other via the network 34. The user devices 36 may be any type of computing device that is capable of performing communications over the network 34 to reach the central/proxy server 28 and other user devices 36. Examples of user devices 36 include, but are not limited to: home computers; computers at work; laptop computers; wireless portable media player (PMP) devices; hand-held computer devices, such as personal digital assistants (PDAs) with remote communication capabilities; and the like. A web browser (not shown) may be included within each user device 36 to provide the user an interface for Internet-based communications, including those with the central/proxy server 28. This allows the user device 36 to download a media item client application 38 onto the user device 36 from the central/proxy server 28 to provide a customized software interface to the central/proxy server 28. After the media item client application 38 is downloaded onto a user device 36 from the central/proxy server 28, the media item client application 38 executes on the user device 36. Note that while three user devices 36A, 36B, and 36N are illustrated, the present invention may be used with any number of user devices 36.
The user account 30 records the user's play history 40. The user's play history 40 is a time-stamped record of each media item played by the user. The user account 30 may also contain information regarding the user's particular preferences 42. The user's preferences 42 may relate to the different likes and dislikes of the user based on certain identified media categories. The media categories, for example, may be genre, artist, date of release of the media item, and other information. Additionally, the user account 30 may store a record of the groups 14, the group preference settings 20, and/or the fields 10 assigned to the groups 14. Also, the user account 30 may have a record of the user's media item collection 44, and profile 46 information provided by the user. The play history 40, preferences 42, media item collection 44, and other information provided by the user at the time of registering with the central/proxy server 28 may be included in and used to further develop and update the profile 46 of the user. Additionally, the profile 46 may include a statistical compilation of the aforementioned information.
Additionally, because the preference setting 20 is determined programmatically, the preference selector 18 was not used to determine the preference setting 20. The preference selector 18 is shown at “0” even though the preference setting 20 for the group 14 is shown at a different value. For example, group 14B has a preference setting 20B of “10” while the preference selector 18B is at “0.” In this manner, the user may easily and readily realize that the preference setting 20 was determined programmatically. Additionally or alternatively, the preference selector 18 and/or the preference setting 20 may have a different appearance, for example a different color or shading, to distinguish the preference setting 20 determined programmatically from the preference setting 20 determined by the user. Also, a textual message may be used to inform the user whether the preference setting 20 was determined programmatically or by the user.
The group 14 may be established and the preference setting 20 may be determined on a standard basis. For example, each of the five groups illustrated in
When the user opens the GUI 48, the field 10 may be in the group 14A with the title 16A “Average.” The user may then assign the field 10 to the group 14 that the user desires. The user may assign the field 10 to the group 14 by simply moving the field 10 to the group 14. The user may move the field 10 by dragging and dropping the field 10 from the group 14A to one of the other groups 14. Alternatively, the user may assign the field 10 to the group 14 by manually entering the field 10 designation. For example, the user may enter the “Rock” field 10 in the group 14B which will then automatically delete the “Rock” field 10 from the previous group 14A that the field 10 was in.
Once the user opens the GUI 48, the user may make any changes to the GUI 48 if desired. The user may add a group 14 using the “Add” selector 22 or delete a group 14 using the “Delete” selector 24. Additionally, the user may change the group preference setting 20 using the preference selector 18. Once the user uses the preference selector 18, the group preference setting 20, which was programmatically determined, is over-ridden and the group preference setting 20 for the group 14 will, thereafter, be determined by the preference selector 18.
From the user's profile 46, it is determined that the user highly prefers the “Rock” genre with the user preferring some “Rock” fields 10 slightly more than other “Rock” fields 10. The groups 14B and 14C are established based on the user's “Rock” preference. The titles 16B and 16C are programmatically provided to reflect and denote the user's preferences with the title 16B being “Highest” and the title 16C being “High.” Similarly, the group preference settings 20B and 20C are programmatically determined based on the user's profile 46, and, particularly, play history 40 and preferences 42 (
Based on the user's profile 46, the group 14D was established with the title 16D of “No,” and the group preference setting 20D was determined to be “0.” The user's profile 46 may be strongly negative about certain of the fields 10, and there may be no media items of the field 10 in the user's media item collection 44 (
Additionally, the user's profile 46 may indicate that although the user does not highly prefer the field 10, the user has some interest in the field 10. For example, the user's interest may be based on an infrequent play history 40 and/or a few media items in the user's media item collection 44 related to the field 10. The field 10 in which the user has some interest may be assigned to the group 14A with the title 16A of “Average.” Based on the user's profile 46, and particularly the user's play history 40 and/or media item collection 44, the field 10 in the group 14A may assume the group preference setting 20A of “5.” The group preference setting 20A, therefore, indicates some interest by the user but not necessarily a low preference or a high preference.
The GUI 50 may be especially helpful for the user upon the initialization of the media item client application 38 by the user. The GUI 50 may be developed and provided by the media item client application 38 based on the information provided by the user when the user registered with the central/proxy server 28 (
The user device receives and downloads the media item client application 38 from the central/proxy server 28 (step 306). When the user desires to run the media item client application 38, the user sends a log on notice to the central/proxy server 28 via the user device 36 (step 308). The central/proxy server 28, using the preference engine 32 (
The central/proxy server 28 sends information regarding the group 14, group preference setting 20, and/or field 10 assigning information, collectively referred to in
Additionally, the functionality of the present invention can be embodied in any computer-readable medium for use by or in connection with a computer-related system or method. A computer-readable medium is an electronic, magnetic, optical, semiconductor, or other physical device or means that can transmit, contain, or store a computer program, instructions or data for use by or in connection with a computer-related system or method.
Those skilled in the art will recognize improvements and modifications to the preferred embodiments of the present invention. All such improvements and modifications are considered within the scope of the concepts disclosed herein and the claims that follow.