Computing similarity between media programs
First Claim
1. A method for recommending media programs, the method comprising:
- determining, using a hardware processor, that a requested media program has been received on a media device;
in response to determining that the requested media program has been received on the media device, obtaining metadata corresponding to the requested media program;
obtaining metadata corresponding to a plurality of media programs, wherein the metadata corresponding to each media program and the metadata corresponding to the requested media program comprises a plurality of metadata fields corresponding to a plurality of field types, and wherein the plurality of metadata fields each comprise a plurality of terms;
applying a probabilistic topic model to determine, for each of the plurality of metadata fields, at least one token by comparing the plurality of terms to a list of known terms and a probabilistic relationship between the known terms contained in the probabilistic topic model, wherein the at least one token comprises at least one of the plurality of terms;
generating a first group of components based on a first metadata field for each of the plurality of media programs and a second group of components based on a second metadata field for the requested media program, wherein the components in the first group of components represent at least a portion of the tokens determined from the first metadata field for the media program and the components in the second group of components represent at least a portion of the tokens determined from the second metadata field, and wherein the first metadata field corresponds to a first field type from the plurality of field types and the second metadata field corresponds to a second field type from the plurality of field types;
determining a plurality of weights that includes a weight for each field type from the plurality of field types in combination with another field type from the plurality of field types, including a weight for a combination of the first field type with the second field type;
comparing the first group of components for each of the plurality of media programs to the second group of components for the requested media program to identify a subset of the plurality of media programs for which the first metadata field includes at least one common token with the first second metadata field of the requested media program;
determining a similarity score between the requested media program and each of the identified subset of the plurality of media programs based at least in part on the comparison and the determined weight for the combination of the first field type and the second field type;
selecting a portion of the plurality of media programs based on the similarity score; and
responsive to the request for the media program, causing a recommendation interface to be presented on the media device that recommends one or more of the selected portion of the plurality of media programs for consumption.
1 Assignment
0 Petitions
Accused Products
Abstract
System and method are provided to associate or compare media programs. A method includes: obtaining, using at least one processing circuit, first metadata for a first media program and second metadata for a second media program, wherein the first metadata are organized into a plurality of first fields, and the second metadata are organized into a plurality of second fields; extracting, using at least one processing circuit, a plurality of first tokens from one of the plurality of the first fields and a plurality of second tokens from one of the plurality of second fields; assigning a weight factor to each of the first and second tokens; cross-correlating the first and second tokens between the plurality of first fields and the plurality of second fields; and calculating a similarity score between the first and second media programs based on the cross-correlating.
-
Citations
20 Claims
-
1. A method for recommending media programs, the method comprising:
-
determining, using a hardware processor, that a requested media program has been received on a media device; in response to determining that the requested media program has been received on the media device, obtaining metadata corresponding to the requested media program; obtaining metadata corresponding to a plurality of media programs, wherein the metadata corresponding to each media program and the metadata corresponding to the requested media program comprises a plurality of metadata fields corresponding to a plurality of field types, and wherein the plurality of metadata fields each comprise a plurality of terms; applying a probabilistic topic model to determine, for each of the plurality of metadata fields, at least one token by comparing the plurality of terms to a list of known terms and a probabilistic relationship between the known terms contained in the probabilistic topic model, wherein the at least one token comprises at least one of the plurality of terms; generating a first group of components based on a first metadata field for each of the plurality of media programs and a second group of components based on a second metadata field for the requested media program, wherein the components in the first group of components represent at least a portion of the tokens determined from the first metadata field for the media program and the components in the second group of components represent at least a portion of the tokens determined from the second metadata field, and wherein the first metadata field corresponds to a first field type from the plurality of field types and the second metadata field corresponds to a second field type from the plurality of field types; determining a plurality of weights that includes a weight for each field type from the plurality of field types in combination with another field type from the plurality of field types, including a weight for a combination of the first field type with the second field type; comparing the first group of components for each of the plurality of media programs to the second group of components for the requested media program to identify a subset of the plurality of media programs for which the first metadata field includes at least one common token with the first second metadata field of the requested media program; determining a similarity score between the requested media program and each of the identified subset of the plurality of media programs based at least in part on the comparison and the determined weight for the combination of the first field type and the second field type; selecting a portion of the plurality of media programs based on the similarity score; and responsive to the request for the media program, causing a recommendation interface to be presented on the media device that recommends one or more of the selected portion of the plurality of media programs for consumption. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for recommending media programs, the system comprising:
-
a memory; and a hardware processor that, when executing computer executable instructions stored in the memory, is programmed to; determine that a requested media program has been received on a media device; in response to determining that the requested media program has been received on the media device, obtain metadata corresponding to the requested media program; obtain metadata corresponding to a plurality of media programs, wherein the metadata corresponding to each media program and the metadata corresponding to the requested media program comprises a plurality of metadata fields corresponding to a plurality of field types, and wherein the plurality of metadata fields each comprise a plurality of terms; apply a probabilistic topic model to determine, for each of the plurality of metadata fields, at least one token by comparing the plurality of terms to a list of known terms and a probabilistic relationship between the known terms contained in the probabilistic topic model, wherein the at least one token comprises at least one of the plurality of terms; generate a first group of components based on a first metadata field for each of the plurality of media programs and a second group of components based on a second metadata field for the requested media program, wherein the components in the first group of components represent at least a portion of the tokens determined from the first metadata field and the components in the second group of components represent at least a portion of the tokens determined from the second metadata field, and wherein the first metadata field corresponds to a first field type from the plurality of field types and the second metadata field corresponds to a second field type from the plurality of field types; determine a plurality of weights that includes a weight for each field type from the plurality of field types in combination with another field type from the plurality of field types, including a weight for a combination of the first field type with the second field type; compare the first group of components for each of the plurality of media programs to the second group of components for the requested media program to identify a subset of the plurality of media programs for which the first metadata field includes at least one common token with the second metadata field of the requested media program; determine a similarity score between the requested media program and each of the identified subset of the plurality of media programs based at least in part on the comparison and the determined weight for the combination of the first field type and the second field type; select a portion of the plurality of media programs based on the similarity score; and responsive to the request for the media program, cause a recommendation interface to be presented on the media device that recommends one or more of the selected portion of the plurality of media programs for consumption. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable medium containing computer executable instructions that, when executed by a processor, cause the processor to perform a method of recommending media programs, the method comprising:
-
determining that a requested media program has been received on a media device; in response to determining that the requested media program has been received on the media device, obtaining metadata corresponding to the requested media program; obtaining metadata corresponding to a plurality of media programs, wherein the metadata corresponding to each media program and the metadata corresponding to the requested media program comprises a plurality of metadata fields corresponding to a plurality of field types, and wherein the plurality of metadata fields each comprise a plurality of terms; applying a probabilistic topic model to determine, for each of the plurality of metadata fields, at least one token by comparing the plurality of terms to a list of known terms and a probabilistic relationship between the known terms contained in the probabilistic topic model, wherein the at least one token comprises at least one of the plurality of terms; generating a first group of components based on a first metadata field for each of the plurality of media programs and a second group of components based on a second metadata field for the requested media program, wherein the components in the first group of components represent at least a portion of the tokens determined from the first metadata field and the components in the second group of components represent at least a portion of the tokens determined from the second metadata field, and wherein the first metadata field corresponds to a first field type from the plurality of field types and the second metadata field corresponds to a second field type from the plurality of field types; determining a plurality of weights that includes a weight for each field type from the plurality of field types in combination with another field type from the plurality of field types, including a weight for a combination of the first field type with the second field type; comparing the first group of components for each of the plurality of media programs to the second group of components for the requested media program to identify a subset of the plurality of media programs for which the first metadata field includes at least one common token with the second metadata field of the requested media program; determining a similarity score between the requested media program and each of the identified subset of the plurality of media programs based at least in part on the comparison and the determined weight for the combination of the first field type and the second field type; selecting a portion of the plurality of media programs based on the similarity score; and responsive to the request for the media program, causing a recommendation interface to be presented on the media device that recommends one or more of the selected portion of the plurality of media programs for consumption. - View Dependent Claims (20)
-
Specification