IP Library Granted Patent US 10,405,040
Granted Patent B2
US 10,405,040 · App. 15/799,636 · Granted Sep 3, 2019

Clustering television programs based on viewing behavior

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,405,040
App. No.
15/799,636
Granted
Sep 3, 2019
Kind
B2
Abstract

Example program clustering methods disclosed herein include accessing person-level program viewing data representing lengths of time respective people in an audience have tuned to respective television programs to be clustered. Disclosed example methods also include determining adjusted person-level program viewing data for respective ones of the people having tuned to respective ones of the television programs. For example, first person-level program viewing data for a first person having tuned to a first program is adjusted based on a ratio characterizing a relationship between a first program rating associated with the first person having tuned to the first program and a first network rating associated with the first person having tuned to a first network associated with the first program. Disclosed example methods further include clustering the television programs into clusters based on distances between pairs of the television programs, the distances based on the adjusted person-level program viewing data.

Claims (69)

1. An apparatus comprising:

memory including computer readable instructions;

a processor to execute the computer readable instructions;

a program viewing adjuster implemented by the processor to:

access respective person-level program viewing data that is to represent lengths of time respective people in an audience have tuned to respective ones of a plurality of television programs to be clustered; and

determine adjusted person-level program viewing data for respective ones of the people having tuned to respective ones of the television programs, first person-level program viewing data for a first one of the people having tuned to a first one of the programs to be adjusted by the program viewing adjuster based on a first ratio that is to characterize a relationship between (i) a first program rating associated with the first one of the people having tuned to the first one of the programs and (ii) a first network rating associated with the first one of the people having tuned to a first network associated with the first one of the programs, wherein to determine the first ratio, the program viewing adjuster is to:

determine a numerator value based on a difference between the first program rating and the first network rating;

determine a denominator value based on the first network rating and a total duration of the first one of the programs; and

divide the numerator value by the denominator value to determine the first ratio; and

a program clusterer implemented by the processor to cluster the ones of the plurality of television programs into clusters based on distances between pairs of the television programs, the distances based on the adjusted person-level program viewing data.

2. The apparatus of claim 1 , wherein the first program rating corresponds to a fraction of time, relative to a total duration of the first one of the programs, during which the first one of the people tuned to the first one of the programs, and the first network rating corresponds to a fraction of time, relative to a monitoring interval, during which the first one of the people tuned to the first network.

3. The apparatus of claim 1 , wherein the program viewing adjuster is to adjust the first person-level program viewing data for the first one of the people having tuned to the first one of the programs by:

comparing the first ratio to a threshold;

setting the first person-level program viewing data equal to zero when the ratio does not satisfy the threshold; and

leaving the first person-level program viewing data unchanged when the ratio satisfies the threshold.

4. The apparatus of claim 3 , wherein the threshold is satisfied when the ratio exceeds the threshold, and the threshold is not satisfied when the ratio does not exceed the threshold.

5. An apparatus comprising:

memory including computer readable instructions;

a processor to execute the computer readable instructions;

a program viewing adjuster implemented by the processor to:

access respective person-level program viewing data that is to represent lengths of time respective people in an audience have tuned to respective ones of a plurality of television programs to be clustered; and

determine adjusted person-level program viewing data for respective ones of the people having tuned to respective ones of the television programs, first person-level program viewing data for a first one of the people having tuned to a first one of the programs to be adjusted by the program viewing adjuster based on a first ratio that is to characterize a relationship between (i) a first program rating associated with the first one of the people having tuned to the first one of the programs and (ii) a first network rating associated with the first one of the people having tuned to a first network associated with the first one of the programs;

a program clusterer implemented by the processor to cluster the ones of the plurality of television programs into clusters based on distances between pairs of the television programs, the distances to be based on the adjusted person-level program viewing data; and

a cluster number selector implemented by the processor to select a final number of clusters into which the plurality of television programs is to be clustered, the cluster number selector to select the final number of clusters based on average silhouette width values determined for clustering the plurality of television programs into different possible numbers of clusters.

6. The apparatus of claim 5 , wherein the cluster number selector is to determine an average silhouette width value for clustering the plurality of television programs into a first possible number of clusters by:

computing silhouette width values for respective ones of the plurality of television programs when the television programs are clustered into the first possible number of clusters, a silhouette width value for a first one of the television programs based on (1) an average distance of the first one of the television programs to other television programs in a same first cluster as the first one of the television programs, and (2) an average distance of the first one of the television programs to a neighboring cluster of the first cluster; and

averaging the silhouette width values for the respective ones of the plurality of television programs when the television programs are clustered into the first possible number of clusters to determine the average silhouette width value for clustering the plurality of television programs into the first possible number of clusters.

7. A non-transitory computer readable storage medium comprising computer readable instructions which, when executed, cause a processor to at least:

access respective person-level program viewing data that is to represent lengths of time respective people in an audience have tuned to respective ones of a plurality of television programs to be clustered;

determine adjusted person-level program viewing data for respective ones of the people having tuned to respective ones of the television programs, first person-level program viewing data for a first one of the people having tuned to a first one of the programs to be adjusted based on a first ratio that is to characterize a relationship between (i) a first program rating associated with the first one of the people having tuned to the first one of the programs and (ii) a first network rating associated with the first one of the people having tuned to a first network associated with the first one of the programs; and

cluster the ones of the plurality of television programs into clusters based on distances between pairs of the television programs, the distances being based on the adjusted person-level program viewing data, wherein to determine the first ratio, the instructions, when executed, cause the processor to:

determine a numerator value based on a difference between the first program rating and the first network rating;

determine a denominator value based on the first network rating and a total duration of the first one of the programs; and

divide the numerator value by the denominator value to determine the first ratio.

8. The storage medium of claim 7 , wherein the first program rating corresponds to a fraction of time, relative to a total duration of the first one of the programs, during which the first one of the people tuned to the first one of the programs, and the first network rating corresponds to a fraction of time, relative to a monitoring interval, during which the first one of the people tuned to the first network.

9. The storage medium of claim 7 , wherein the instructions, when executed, cause the processor to adjust the first person-level program viewing data for the first one of the people having tuned to the first one of the programs by:

comparing the first ratio to a threshold;

setting the first person-level program viewing data equal to zero when the ratio does not satisfy the threshold; and

leaving the first person-level program viewing data unchanged when the ratio satisfies the threshold.

10. A non-transitory computer readable storage medium comprising computer readable instructions which, when executed, cause a processor to at least:

access respective person-level program viewing data that is to represent lengths of time respective people in an audience have tuned to respective ones of a plurality of television programs to be clustered;

determine adjusted person-level program viewing data for respective ones of the people having tuned to respective ones of the television programs, first person-level program viewing data for a first one of the people having tuned to a first one of the programs to be adjusted based on a first ratio that is to characterize a relationship between (i) a first program rating associated with the first one of the people having tuned to the first one of the programs and (ii) a first network rating associated with the first one of the people having tuned to a first network associated with the first one of the programs;

cluster the ones of the plurality of television programs into clusters based on distances between pairs of the television programs, the distances being based on the adjusted person-level program viewing data; and

select a final number of clusters into which the plurality of television programs is to be clustered, the final number of clusters to be selected based on average silhouette width values determined for clustering the plurality of television programs into different possible numbers of clusters.

11. The storage medium of claim 10 , wherein the instructions, when executed, cause the processor to determine an average silhouette width value for clustering the plurality of television programs into a first possible number of clusters by:

computing silhouette width values for respective ones of the plurality of television programs when the television programs are clustered into the first possible number of clusters, a silhouette width value for a first one of the television programs based on (1) an average distance of the first one of the television programs to other television programs in a same first cluster as the first one of the television programs, and (2) an average distance of the first one of the television programs to a neighboring cluster of the first cluster; and

averaging the silhouette width values for the respective ones of the plurality of television programs when the television programs are clustered into the first possible number of clusters to determine the average silhouette width value for clustering the plurality of television programs into the first possible number of clusters.

12. A program clustering method comprising:

accessing, by executing an instruction with a processor, respective person-level program viewing data representing lengths of time respective people in an audience have tuned to respective ones of a plurality of television programs to be clustered;

determining, by executing an instruction with the processor, adjusted person-level program viewing data for respective ones of the people having tuned to respective ones of the television programs, first person-level program viewing data for a first one of the people having tuned to a first one of the programs being adjusted based on a first ratio characterizing a relationship between (i) a first program rating associated with the first one of the people having tuned to the first one of the programs and (ii) a first network rating associated with the first one of the people having tuned to a first network associated with the first one of the programs;

determining, by executing an instruction with the processor, the first ratio by:

determining a numerator value based on a difference between the first program rating and the first network rating;

determining a denominator value based on the first network rating and a total duration of the first one of the programs; and

dividing the numerator value by the denominator value to determine the first ratio; and

clustering, by executing an instruction with the processor, the ones of the plurality of television programs into clusters based on distances between pairs of the television programs, the distances being based on the adjusted person-level program viewing data.

13. The method of claim 12 , wherein the first program rating corresponds to a fraction of time, relative to a total duration of the first one of the programs, during which the first one of the people tuned to the first one of the programs, and the first network rating corresponds to a fraction of time, relative to a monitoring interval, during which the first one of the people tuned to the first network.

14. The method of claim 12 , wherein the determining of the adjusted person-level program viewing data includes adjusting the first person-level program viewing data for the first one of the people having tuned to the first one of the programs by:

comparing the first ratio to a threshold;

setting the first person-level program viewing data equal to zero when the ratio does not satisfy the threshold; and

leaving the first person-level program viewing data unchanged when the ratio satisfies the threshold.

15. The method of claim 14 , wherein the threshold is satisfied when the ratio exceeds the threshold, and the threshold is not satisfied when the ratio does not exceed the threshold.

16. A program clustering method comprising:

accessing, by executing an instruction with a processor, respective person-level program viewing data representing lengths of time respective people in an audience have tuned to respective ones of a plurality of television programs to be clustered;

determining, by executing an instruction with the processor, adjusted person-level program viewing data for respective ones of the people having tuned to respective ones of the television programs, first person-level program viewing data for a first one of the people having tuned to a first one of the programs being adjusted based on a first ratio characterizing a relationship between (i) a first program rating associated with the first one of the people having tuned to the first one of the programs and (ii) a first network rating associated with the first one of the people having tuned to a first network associated with the first one of the programs;

clustering, by executing an instruction with the processor, the ones of the plurality of television programs into clusters based on distances between pairs of the television programs, the distances being based on the adjusted person-level program viewing data; and

selecting, by executing an instruction with the processor, a final number of clusters into which the plurality of television programs is to be clustered, the selecting based on determining average silhouette width values for clustering the plurality of television programs into different possible numbers of clusters.

17. The method of claim 16 , wherein an average silhouette width value is determined for clustering the plurality of television programs into a first possible number of clusters by:

computing silhouette width values for respective ones of the plurality of television programs when the television programs are clustered into the first possible number of clusters, a silhouette width value for a first one of the television programs being based on (1) an average distance of the first one of the television programs to other television programs in a same first cluster as the first one of the television programs, and (2) an average distance of the first one of the television programs to a neighboring cluster of the first cluster; and

averaging the silhouette width values for the respective ones of the plurality of television programs when the television programs are clustered into the first possible number of clusters to determine the average silhouette width value for clustering the plurality of television programs into the first possible number of clusters.

Assignments (8)
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
SECURITY INTEREST Recorded May 8, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: ARES CAPITAL CORPORATION
Reel/Frame 063574/0632 →
SECURITY INTEREST Recorded Apr 28, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 063561/0381 →
SECURITY AGREEMENT Recorded Jan 31, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 063560/0547 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2018
From: CUI, JINGSONG; SEREDAY, SCOTT JOHN; LIANG, XIAOTING
To: THE NIELSEN COMPANY (US), LLC
Reel/Frame 044601/0937 →