Method and apparatus for recommending television programming using decision trees
First Claim
1. A method for obtaining a recommendation for a television program for a user, said program having attributes, said method comprising the steps of:
- obtaining a user profile;
obtaining a viewing history for said user;
analyzing positive and negative examples of training programs that are liked by said user;
generating, using the user profile and viewing history, a new user profile containing a number of attributes for said positive and negative examples;
positioning said attributes in a hierarchical decision tree; and
determining a recommendation for said television program based on a location of said television program in said decision tree.
7 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus are disclosed for recommending television programming using decision trees. Inductive principles are utilized to identify a set of recommended programs that may be of interest to a particular viewer, based on past viewing behavior. A user'"'"'s viewing history is monitored and the shows that are actually watched by a user (positive examples) and the shows that are not watched by the user (negative examples) are analyzed. For each positive and negative program example (i.e., programs watched and not watched), a number of program attributes are classified in the user profile. The various attributes are then positioned in a hierarchical decision tree based on a ranking of the entropy of each attribute. Each node and sub-node in the decision tree corresponds to a given attribute from the user profile. Each leaf node in the decision tree corresponds to either a positive or negative recommendation for a program mounted at the corresponding leaf node. The decision tree is built using a decision tree process that implements a “top-down divide and conquer” approach. The decision tree can thereafter be applied to an electronic program guide to make program recommendations.
-
Citations
22 Claims
-
1. A method for obtaining a recommendation for a television program for a user, said program having attributes, said method comprising the steps of:
-
obtaining a user profile;
obtaining a viewing history for said user;
analyzing positive and negative examples of training programs that are liked by said user;
generating, using the user profile and viewing history, a new user profile containing a number of attributes for said positive and negative examples;
positioning said attributes in a hierarchical decision tree; and
determining a recommendation for said television program based on a location of said television program in said decision tree. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
8. The method of claim 1, wherein said positioning step further comprises the steps of selecting an attribute that minimizes an entropy function, H, categorizing said training data into subsets by this attribute;
- and repeating said method recursively until each subset contains instances of one kind or a predefined statistical criterion is satisfied.
-
9. The method of claim 1, further comprising the step of applying said decision tree to additional positive and negative examples to identify a misclassified example.
-
10. The method of claim 9, wherein said positioning step further comprises the step of inserting said misclassified example into said original positive and negative examples and repeating said positioning step until a predefined threshold is satisfied.
-
11. A method for obtaining a recommendation for a television program for a user, said program having attributes, said method comprising the steps of:
-
obtaining a user profile;
obtaining examples of programs that are liked and disliked by said user;
generating, using the user profile and the examples programs, a hierarchical decision tree having nodes comprised of said attributes, said hierarchy based on a ranking of the entropy of each of said attributes; and
recommending said television program based on a location of said television program in said decision tree. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
18. The method of claim 11, wherein said positioning step further comprises the steps of selecting an attribute that minimizes said entropy function, H, categorizing said training data into subsets by this attribute;
- and repeating said method recursively until each subset contains instances of one kind or a predefined statistical criterion is satisfied.
-
19. The method of claim 11, further comprising the step of applying said decision tree to additional positive and negative examples to identify a misclassified example.
-
20. The method of claim 19, wherein said positioning step further comprises the step of inserting said misclassified example into said original positive and negative examples and repeating said positioning step until a predefined threshold is satisfied.
-
21. A system for obtaining a recommendation for a television program for a user, said program having attributes, comprising:
-
a memory for storing computer readable code; and
a processor operatively coupled to said memory, said processor configured to;
obtain a user profile;
obtain a viewing history for said user;
analyze positive and negative examples of training programs that are liked by said user;
generate, using the user profile and the positive and negative examples, a new user profile containing a number of attributes for said positive and negative examples;
position said attributes in a hierarchical decision tree; and
determine a recommendation for said television program based on a location of said television program in said decision tree.
-
-
22. A system for obtaining a recommendation for a television program for a user, said program having attributes, comprising:
-
a memory for storing computer readable code; and
a processor operatively coupled to said memory, said processor configured to;
obtain a user profile;
obtain examples of programs that are liked and disliked by said user;
generate, using the user profile and examples of programs, a hierarchical decision tree having nodes comprised of said attributes, said hierarchy based on a ranking of the entropy of each of said attributes; and
recommend said television program based on a location of said television program in said decision tree.
-
Specification