Adaptive TV program recommender
AssigneeKoninklijke Philips Electronics N.V.
InventorJ. David Schaffer
Life of this patent
Estimating the term…
Abstract
A system for recommending television programs makes use of probabilistic calculations and a viewer profile to create a recommendation. The probabilistic calculations preferably are in the form of Bayesian classifier theory. Modifications to classical Bayesian classifier theory are proposed.
Claims36
A data processing device comprising:
- at least one input for receiving data including
- viewer profile data;
- and
- data regarding a television program;
- a medium readable by the data processing device coupled to the input, said medium storing said viewer profile data;
- and
- a processor, the processor being adapted to perform the following:
- calculating a probability that the television program is a desired one;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein the processor maintains the viewer profile in accordance with a data structure comprising:
- a list of feature values;
- and
- for each element of the list, a respective number of times programs having that feature value were watched, and a respective number of times programs having that feature value were not watched,
- and wherein the processor is further arranged to perform the following, each time a user watches a new program,
- first adding, to the list, feature values or counts of such feature values, associated with that new program;
- selecting at least one companion program to the new program, the companion program being selected at random from a program schedule, which companion program has not been watched;
- and
- second adding, to the list, feature values of the companion program, or counts of such feature values.
A data processing device comprising:
- at least one input for receiving data including
- viewer profile data;
- and
- data regarding a television program;
- and
- a processor, the processor being adapted to perform the following:
- calculating, using a Bayesian classifier, a probability that the television program is a desired one;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein the processor is further adapted to subject the viewer profile to a noise threshold calculation prior to using the Bayesian classifier,
- and wherein
- the viewer profile data comprises
- a list of feature values;
- a respective negative count for each element of the list, the negative count indicating a number of times programs having that feature value have not been watched;
- a respective positive count for each element of the list, the positive count indicating a number of times programs having that feature value have been watched;
- the noise threshold calculation comprises
- selecting a sub-list comprising at least feature values having at least one specific type of feature;
- choosing the highest negative count in the sub-list as the noise threshold;
- the recommendation comprises a program selected from a group having at least one feature value having a positive or negative count in the viewer profile, which count exceeds the noise threshold.
A data processing device comprising:
- at least one input for receiving data including
- viewer profile data;
- and
- data regarding a television program;
- and
- a processor, the processor being adapted to perform the following:
- calculating, using a Bayesian classifier, a probability that the television program is a desired one;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein the processor is further adapted to subject the viewer profile to a noise threshold calculation prior to using the Bayesian classifier,
- and wherein subjecting the viewer profile to the noise threshold further comprises using observations gathered by a known random process to estimate a reasonable noise threshold.
A data processing device comprising:
- at least one input for receiving data including
- viewer profile data;
- and
- data regarding a television program;
- and
- a processor, the processor being adapted to perform the following:
- calculating a probability that the television program is a desired one;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein calculating the probability comprises:
- computing a prior possibility, of whether a program is desired or not;
- computing a conditional probability of whether a feature fi will be present if a show is desired or not;
- and
- computing a posterior probability of whether program is desired or not, based on the conditional probability and the prior probability.
A data processing device comprising:
- at least one input for receiving data including
- viewer profile data;
- and
- data regarding a television program;
- and
- a processor, the processor being adapted to perform the following:
- calculating a probability that the television program is a desired one;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein
- the viewer profile comprises a list of features types and values for such feature types;
- the feature types are selected from at least two sets, including
- a first set of feature types whose values are deemed non-independent;
- and
- a second set of feature types whose values are deemed independent;
- and
- calculating a probability comprises
- applying a Bayesian classifier calculation corresponding to feature types from the second set;
- and
- applying a modified Bayesian classifier calculation corresponding to feature types from the first set.
A computer readable medium having computer-executable instructions stored thereon for performing the method comprising:
- calculating a probability that a television program is a desired one, based on a viewer profile and data regarding the television program;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein the computer readable medium further embodies the viewer profile, the viewer profile being embodied as a data structure comprising:
- a list of feature values;
- and
- for each element of the list, a respective number of times programs having that feature value were watched,
- and wherein the software is further arranged to perform the following, each time a user watches a new program,
- first adding, to the list, feature values or counts of such feature values, associated with that new program;
- selecting at least one companion program to the new program, the companion program being selected at random from a program schedule, which companion program has not been watched;
- and
- second adding, to the list, feature values of the companion program, or counts of such feature values.
A computer readable medium having computer-executable instructions stored thereon for performing the method comprising:
- calculating, using a Bayesian classifier, a probability that a television program is a desired one, based on a viewer profile and data regarding the television program;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein the computer-executable instructions is further adapted to subject the viewer profile to a noise threshold calculation prior to using the Bayesian classifier,
- and wherein
- the viewer profile data comprises
- a list of feature values;
- a respective negative count for each element of the list, the negative count indicating a number of times programs having that feature value have not been watched;
- a respective positive count for each element of the list, the positive count indicating a number of times programs having that feature value have been watched;
- the noise threshold calculation comprises
- selecting a sub-list comprising at least feature values having at least one specific type of feature;
- choosing the highest negative count in the sub-list as the noise threshold;
- the recommendation comprises a program selected from a group having at least one feature value having a positive or negative count in the viewer profile exceeding the noise threshold.
A computer readable medium having computer-executable instructions stored thereon for performing the method comprising:
- calculating, using a Bayesian classifier, a probability that a television program is a desired one, based on a viewer profile and data regarding the television program;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein the computer-executable instructions is further adapted to subject the viewer profile to a noise threshold calculation prior to using the Bayesian classifier,
- and wherein subjecting the viewer profile to the noise threshold further comprises using observations gathered by a known random process to estimate a reasonable noise threshold.
A computer readable medium having computer-executable instructions stored thereon for performing the method comprising:
- calculating a probability that a television program is a desired one, based on a viewer profile and data regarding the television program;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein calculating the probability comprises:
- computing a prior possibility, of whether a program is desired or not;
- computing a conditional probability of whether a feature fi will be present if a show is desired;
- and
- computing a posterior probability of whether program is desired or not, based on the conditional probability and the prior probability.
A computer readable medium having computer-executable instructions stored thereon for performing the method comprising:
- calculating a probability that a television program is a desired one, based on a viewer profile and data regarding the television program;
- and
- supplying a recommendation regarding the television program based on the probability,
- wherein
- the viewer profile comprises a list of features types and values for such feature types;
- the feature types are selected from at least two sets, including
- a first set of feature types whose values are deemed non-independent;
- and
- a second set of feature types whose values are deemed independent;
- and
- calculating a probability comprises
- applying a Bayesian classifier calculation corresponding to feature types from the second set;
- and
- applying a modified Bayesian classifier calculation corresponding to feature types from the first set.
A data processing method comprising performing the following operations in a data processing device:
- first receiving data reflecting physical observations, which data includes a list of feature values and observations about feature values, some of which feature values are independent and some of which are not;
- second receiving data about an item to be classified, the data about the item to be classified including feature values;
- maintaining a division of the data reflecting physical observations into at least two sets, including
- a first set including those feature values which are deemed not independent;
- and
- a second set including those feature values which are deemed independent;
- performing a probabilistic calculation on the data reflecting physical observations and the data regarding an item to be classified including:
- applying a Bayesian classifier calculation with respect to feature values relating to the second set;
- and
- applying a modified Bayesian classifier calculation with respect to feature values relating to the first set
- presenting a conclusion regarding the item to be classified to a user based on the probabilistic calculation.
Dependencies are inferred from the claim text.