Viewing prediction device
The viewing prediction device predicts long-term viewing trends by calculating user scores and combining viewing histories of similar users, effectively forecasting future viewing times and genres.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- NIPPON HOSO KYOKAI
- Filing Date
- 2022-07-20
- Publication Date
- 2026-05-18
AI Technical Summary
Existing content recommendation systems struggle to predict long-term viewing trends of users, such as 5 or 10 years into the future, and cannot accurately forecast daily and monthly viewing times, viewing times by time of day, or genres of content that users will prefer in the future.
A viewing prediction device that calculates a score value for each user based on viewing tendencies, matches users with similar attributes, and generates a pseudo-viewing history by combining the viewing histories of these users to create a single time series, predicting future viewing trends.
Enables the prediction of future viewing times, viewing times by time zone, and preferred genres by utilizing the viewing histories of users with similar attributes, providing accurate long-term viewing trend forecasts.
Smart Images

Figure 0007860841000002 
Figure 0007860841000003 
Figure 0007860841000004
Abstract
Description
Technical Field
[0001] The present invention relates to a viewing prediction device that predicts the future viewing trends of viewing users who view broadcast or distributed content. Specifically, in the viewing prediction device, from the accumulated viewing history and the attribute data generated from the user attributes, a viewing user having attribute data close to the attribute data of the target viewing user is found, and the viewing history of the viewing user is connected to create a pseudo-viewing history data of one time series, thereby predicting and indicating viewing trends such as the future viewing time, viewing time zone, and genre of the viewing program of the target viewing user.
Background Art
[0002] Conventionally, in order to improve the viewing desire and convenience of users and to promote the discovery of content such as TV programs that users are not aware of, content providers have used a content recommendation system that presents content that the user is likely to be interested in from a large number of contents. As a method (filtering method) for extracting content to be recommended to the target user from a large number of contents, Non-Patent Document 1 discloses a filtering method based on content (content) and a collaborative filtering method.
[0003] Content-based filtering is a method of recommending content similar to the content that the target user has viewed in the past (or the content that the target user has highly evaluated). As a method for examining the similarity of content, attribute data of content such as actors, producers, and genres related to the content are regarded as documents, and feature vectors of each content are obtained from TF-IDF (Term Frequency-Inverse Document Frequency), etc., and the distance between the feature vectors is obtained.
[0004] Collaborative filtering is a method that extracts other users with similar tastes and preferences to the target user (for example, other users who have watched the same content as the target user in the past) and recommends content that the target user has not yet watched from among the content that those users have watched. Collaborative filtering has the advantage of being able to recommend content that the target user was unaware of by utilizing the viewing history of others with similar viewing tendencies. Therefore, it can be used in content recommendation systems that provide serendipity (the discovery of something unexpected; for example, accidentally finding something valuable other than what you were looking for). However, in reality, it is impossible to predict what content the target user will watch in the future.
[0005] As a method for predicting the content that a target user will watch in the future, there are methods disclosed in Patent Documents 1 to 3. Patent Document 1 discloses a recommendation method that enhances customer lifetime value (LTV) by estimating the probability of increased revenue after purchase based on the purchase interval and purchase status of the purchase history, and making recommendations to maximize this probability, thereby anticipating long-term revenue growth rather than short-term revenue growth. Patent Document 2 discloses a method for predicting a target user's next interests from an interest graph generated from the interests of multiple users and using that for recommendations. Patent Document 3 discloses a method for recommending novel content that users might not be aware of, by using popularity (a value that decreases as the number of users increases), precedence (indicating how far in advance the content was used), and importance (which decreases with the time elapsed since the action), among objects used by an innovator group with similar preferences to the target user. [Prior art documents] [Non-patent literature]
[0006] [Non-Patent Document 1] Toshihiro Kamishima: "Recommendation Systems - Surviving the Age of Information Overload," Information Science and Technology, Vol. 56, No. 10, pp. 452-457, 2006. [Patent Documents]
[0007] [Patent Document 1] Japanese Patent Publication No. 4847919 (Title of Invention: Recommendation Device, Recommendation Method, Recommendation Program, and Recording Medium Recording the Program)
[0008] [Patent Document 2] Japanese Patent Publication No. 5358024 (Title of Invention: Apparatus for Determining Potential Future Concerns to be Introduced into the User Profile of a Communication Device)
[0009] [Patent Document 3] Japanese Patent Publication No. 5481295 (Title of Invention: Object Recommendation Apparatus, Object Recommendation Method, Object Recommendation Program, and Object Recommendation System) [Overview of the Initiative] [Problems that the invention aims to solve]
[0010] Recommendation systems can be seen as systems that predict what kind of content a target user will watch in the future. From the perspective of content providers, knowing what kind of content users will be interested in in the future can be useful for future content provision and production.
[0011] However, filtering based on the content of Non-Patent Document 1 is a method that recommends content similar in style to content the subject has viewed in the past. While it can predict content similar to what the subject currently enjoys watching, it cannot predict content that the subject is not currently interested in but may become interested in in the future. Similarly, while collaborative filtering can potentially recommend serendipitous content by utilizing the viewing content of other users with similar tastes and preferences, it's impossible to know which content the user will actually be interested in from the recommendations until they select it.
[0012] Furthermore, while the methods described in Patent Documents 1 to 3 may be able to predict viewing content to some extent in the near future, they cannot predict the viewing trends of target users over long periods such as 5 or 10 years into the future. In particular, they cannot make long-term macro predictions such as viewing time by genre.
[0013] Therefore, the present invention aims to provide a viewing prediction device that can predict the viewing trends of a target user over a long period of time, such as 5 years or 10 years into the future, based on the target user's viewing trends up to the present. The viewing trends referred to here include daily and monthly viewing time, viewing time by time of day, and the genres of content viewed. [Means for solving the problem]
[0014] The viewing prediction device according to the present invention comprises: a score calculation unit that calculates a score value for each viewing user from attribute data indicating the viewing tendencies of each viewing user; a matching unit that extracts a predetermined number of viewing users having score values similar to the score value of the target user; and a pseudo-viewing history generation unit that connects the viewing histories of the predetermined number of viewing users extracted by the matching unit to generate a pseudo-viewing history in a single time series.
[0015] The viewing prediction device may further include a viewing history acquisition unit that collects viewing information from multiple viewing users and stores it as viewing history, and an attribute data generation unit that generates attribute data from the viewing history and user attributes of each of the multiple viewing users, and may update the viewing history while collecting viewing information and predict the future viewing trends of viewing users.
[0016] The viewing prediction device further includes a pseudo viewing history visualization unit that displays the predicted future viewing time predicted from the pseudo viewing history generated by connecting a plurality of viewing histories, and the pseudo viewing history visualization unit may show the predicted future viewing time in a graph.
Advantages of the Invention
[0017] According to the present invention, it is possible to create a pseudo viewing history using the viewing histories of other viewing users with similar attributes as a predicted value of the future viewing tendency of the target viewing user. By using this pseudo viewing history, it is possible to predict the future viewing time, the viewing time by time zone, and what genres will be preferred to view in the future.
Brief Description of the Drawings
[0018] [Figure 1] It is a block diagram showing an example of an embodiment of a viewing prediction device according to the present invention. [Figure 2] It is a diagram showing an example of user attribute C. [Figure 3] It is a diagram showing attribute data for score calculation. [Figure 4] It is a diagram showing an example of score data D. [Figure 5] It is a diagram showing the operation flow of the pseudo viewing history generation unit 3. [Figure 6] It is a diagram showing the operation flow of the matching unit 4. [Figure 7] It is a diagram showing an example of a pseudo viewing history. [Figure 8] It is a diagram showing an output example of viewing prediction by the pseudo viewing history visualization unit 5. [Figure 9] It is a diagram showing an output example of viewing prediction by genre of the pseudo viewing history visualization unit 5.
Embodiments for Carrying Out the Invention
[0019] Hereinafter, an example of an embodiment of the present invention will be described with reference to the accompanying drawings. In this embodiment, "viewing" is explained using television broadcast programs as an example, but is not limited to this. It may also refer to viewing content such as videos and music from on-demand services or other distribution services, or viewing content recorded on recording devices owned by individual viewers.
[0020] Figure 1 is a block diagram showing an example of an embodiment of the viewing prediction device according to the present invention. The viewing prediction device 100 comprises a viewing history acquisition unit 1, a score calculation unit 2, a pseudo-viewing history generation unit 3, a matching unit 4, and a pseudo-viewing history visualization unit 5. The viewing prediction device 100 also comprises a program information database 6 for storing program information A, a viewing history database 7 for storing viewing history B, a user attribute database 8 for storing user attributes C, and a score data database 9 for storing score data D.
[0021] The viewing prediction device 100 collects viewing information V of individual viewers on a daily basis. In one example of this embodiment, the viewing prediction device 100 collects viewing information V (V0, V1, ..., V) of n viewers. n-1 ) collects viewing user identifiers (ID0, ID1, ..., ID n-1 It is managed by [company name]. The viewing prediction device 100 then generates a simulated viewing history for the designated target user I, as detailed below, and outputs viewing prediction data E based on the generated simulated viewing history.
[0022] (Explanation of Viewing History Acquisition Unit 1) The viewing history acquisition unit 1 acquires viewing information V0 to V for each individual viewing user. n-1 This data is collected and stored in the viewing history database 7 as viewing history B.
[0023] (Explanation of Viewing Information V) In one example of this embodiment, viewing information V(V0~V n-1The viewing information V consists of viewing date and time information and broadcast channel information. The method for collecting the broadcast channel information being viewed in the viewing information V is not particularly limited in this invention, so a detailed explanation will be omitted, but for example, a method of reading information from a TV remote control, a method of using a dedicated remote control, a method of obtaining channel selection information from the TV, or a method of recognizing the broadcast channel being viewed from the TV's video and audio data can be used.
[0024] (Explanation of Program Information A) In one example of this embodiment, program information A is electronic program guide (EPG) data for a broadcast program that has been aired in the past. EPG information stores broadcast date and time, broadcast channel, program title, program genre, etc., but program information A is not limited to these. For example, it may also store video and audio feature data used to identify a television program from the video and audio of the television program.
[0025] (Explanation of viewing history B) In one example of this embodiment, viewing history B consists of viewing user identifier ID, viewing date and time, broadcast channel, program title, and program genre information. The granularity of the viewing date and time in the constituent data is not particularly limited, but in one example of this embodiment, it is set to data every minute. That is, the viewing history database 7 that stores viewing history B stores the date and time, broadcast channel, program title, and program genre for every minute watched by n viewing users. The viewing history acquisition unit 1 searches for program information A from the viewing user's viewing date and time and broadcast channel to obtain the program title and program genre, and creates viewing history B.
[0026] (Explanation of User Attribute C) User attribute C is attribute information of the viewing user. Figure 2 shows an example of user attribute C in an example of this embodiment. In this example of this embodiment, for each viewing user managed by a viewing user identifier ID, gender, age, marital status, number of family members, family structure, and preferred program genres are stored as user attribute C for each surveyed year. Note that the user attribute C of the present invention is not limited to these, and may include various user information such as address, family members' ages, occupations, household income, monthly allowance, and highest level of education.
[0027] (Explanation of Score Calculation Unit 2) The score calculation unit 2 calculates a score value representing the viewing trends of all users on a yearly basis from the viewing history B and user attributes C. In this embodiment, the process is described using a yearly basis, but the present invention is not limited to this period, and a shorter period of 6 months or a longer period of 2 years may be used as the processing unit period.
[0028] The score calculation unit 2 creates attribute data for score calculation, as shown in Figure 3, for each viewing user year by year, based on viewing history B and user attributes C. This attribute data includes, for each viewing user surveyed year, gender (No. 3), age (No. 4), marital status (No. 5), number of family members (No. 6), family structure (No. 7), preferred program genre (No. 8), average daily viewing time (No. 9), average daily viewing time on weekdays (No. 10), average daily viewing time on weekends and holidays (No. 11), average daily viewing time by genre (No. 12), and average daily viewing time by hourly time slots (No. 13). Gender (No. 3) to preferred genre (No. 8) in Figure 3 can be created from user attributes C, and the various average viewing times from No. 9 to No. 13 can be created from viewing history B.
[0029] Next, the score calculation unit 2 calculates the annual score value for each viewer from the attribute data shown in Figure 3. In one example of this embodiment, a vector whose elements are factor scores obtained by principal component analysis is used as the score value. The number of parameters that can represent each attribute data from No. 3 to No. 13 is shown in Figure 3. In this example, attribute data is represented by 64 parameters, which is the total number of parameters shown in Figure 3. That is, principal component analysis is performed using 64-dimensional parameters and the annual attribute data of all viewing users calculated from viewing history B and user attributes C. Then, a 64-dimensional vector is calculated for each year of the survey, with the principal component score of each viewing user's attribute data (the score value of each viewing user's attribute data) as its elements, to generate score data D.
[0030] Note that the method for calculating the score value is not limited to this. For example, a regression equation could be derived using logistic regression analysis, a generalized linear regression model, for each genre of the preferred program genre (No. 8) using other attribute data (No. 3 to No. 13, excluding No. 8), and this could be used as a score vector. Alternatively, a neural network could be used instead of logistic regression analysis.
[0031] (Explanation of score data D) Figure 4 shows an example of this embodiment, illustrating the score data D generated by the score calculation unit 2. Each row of the score data D in Figure 4 represents the surveyed year, and each column represents the viewer user identifier ID (ID0, ID1, ..., ID n-1 This shows the viewing users managed by ). The data in the table shows the age and score value of the viewing users at the time of the survey. For example, in the 2013 survey, viewing user ID0 was 34 years old and the score value calculated by score calculation unit 2 was 0.3. It also shows that in 2013, viewing users ID1, ID2, and ID3 had no viewing history. Note that in this example embodiment, the score output by score calculation unit 2 is a 64-dimensional vector, but in Figure 3 it is shown as a 1-dimensional score value for explanatory purposes. Similarly, for example, in the 2018 survey, viewing user ID0 was 39 years old and had a score value of 0.2, viewing user ID1 was 33 years old and had a score value of 0.6, viewing user ID2 had no viewing history, and viewing user ID3 was 38 years old and had a score value of 0.4.
[0032] (Explanation of the pseudo-viewing history generation unit 3) The simulated viewing history generation unit 3 creates a simulated viewing history, which is a prediction of the future viewing trends of the specified target user I, from the score data D.
[0033] (Explanation of simulated viewing history) Figure 7 shows an example of a simulated viewing history in one example of this embodiment. The simulated viewing history in one example of this embodiment is a viewing history created by combining the viewing histories of other viewing users with similar attribute data to the target user I. Figure 7 shows an example of the simulated viewing history of target user ID2. In this example, it is currently 2022, and the viewing user ID2 is 33 years old. The viewing user identifier ID2 has viewing history from 2020 to 2022, and from age 34 onwards, the viewing histories of other viewing users are combined. That is, the viewing history from age 34 to 39 is combined with the viewing history of viewing user ID0, and the viewing history from age 40 to 42 is combined with the viewing history of viewing user ID3. In this way, the present invention uses the viewing history of other viewing users with similar attribute data to predict future viewing trends.
[0034] Figure 5 shows the operation flow of the pseudo-viewing history generation unit 3. The pseudo-viewing history generation unit 3 generates M pseudo-viewing histories for the target user I up to a predetermined age Y. The pseudo-viewing history generation unit 3 searches for the maximum age of the specified target user I from the score data D of the viewer user identifier ID, and sets that age + 1 as the condition for the attribute data of the next target viewer (step S3-1). In addition, gender, marital status, number of family members, family structure, preferred program genres, etc. can also be set as conditions for the attribute data of the next target viewer (the person to connect to). Next, the simulated viewing history generation unit 3 uses the matching unit 4 to search for and select a viewing user at the destination that matches the set conditions (step S3-2).
[0035] (Explanation of Matching Section 4) Figure 6 shows the operation flow of the matching unit 4. The matching unit 4 selects the top K viewer users from among the viewer user candidates that match the specified attribute data conditions of the connection destination, and whose score is closest to that of the target user.
[0036] (Example 1 of matching means 4) In Example 1 of Matching Method 4, the distance between score vectors is introduced, and the id that minimizes the following evaluation function f(id,year) is found.
[0037]
number
[0038] In principal component analysis, the elements of vector g are factor scores, while in logistic regression analysis, the elements are regression coefficients obtained using an appropriate attribute (for example, survey results on preferred genres) as the dependent variable. The number of elements in vector g is 64 in the case of principal component analysis, and in the case of logistic regression analysis, it varies depending on what the dependent variable is; if preferred genres are used as the dependent variable, it will be 12, corresponding to the number of genres.
[0039] In the first embodiment of matching means 4, the K ids (ID numbers) that minimize the evaluation function f(id,year) are selected as the connection partners.
[0040] (Example 2 of matching means 4) In Example 2 of Matching Method 4, data with the same gender and age attributes are selected as primary candidates, and an evaluation function is applied to attribute data other than gender and age from among the primary candidates to select the final candidate, thus implementing the method with a condition that emphasizes gender and age. In the evaluation function, attribute scores for gender and age (a 3,id,year ,a 4,id,year After selecting candidates using the above method, the connection partner is selected by running an evaluation function using only attribute scores other than gender and age (reducing the dimensionality of g(id,year)). Below, we will simplify Example 2 and use the case where the primary candidate is selected based solely on age as an example to explain how to select a connection partner and generate a pseudo-viewing history.
[0041] The matching unit 4 first selects viewing users from the score data D who have a viewing history that matches the age (age condition) of the attribute data of the connection partner (step S4-1). For example, in the score data D of Figure 4, if the target user I is ID2, the age condition of the connection partner is 34 years old, so ID0 and ID1, which have a viewing history of 34 years old, are selected as candidate viewing users to connect to. Furthermore, if there are other conditions for the connection partner besides the age condition, the unit narrows down the viewing users that meet those conditions from the user attributes of ID0 and ID1.
[0042] Next, the matching unit 4 selects the top K candidates from the candidate viewing users extracted in S4-1 that are closest to the score value of target user I, using the score data D (step S4-2). For example, in the case of the score data D in Figure 4, the viewing users closest to the score value of 0.2 for target user ID2 (age 34 / 0.3) are ID0 (1st place) and ID1 (age 34 / 0.5) (2nd place).
[0043] In one example of this embodiment, since the score values are 64-dimensional vectors, the proximity of the score values is determined by the Euclidean distance between the score vectors. Note that the method for calculating the distance between score vectors is not limited to the Euclidean distance; other distance functions such as cosine distance (cosine similarity) or Mahalanobis distance can also be used.
[0044] (Explanation of the pseudo-viewing history generation unit 3 (continued)) The simulated viewing history generation unit 3 selects one connection partner from among the K viewing users selected by the matching unit 4 in order of closest scores (step S3-3). The method of selecting a connection partner is not limited to the above, but includes methods such as selecting the viewing user with the highest score, selecting randomly from the K users, selecting while excluding viewing users that have already been used, or selecting randomly with weighting based on score values. In one example of this embodiment, in order to avoid using the same viewing user when creating multiple simulated viewing histories, the simulated viewing history generation unit 3 uses a method of selecting the viewing user with the highest score value from among viewing users that have not yet been used in a series of processes. As a result, in the example of score data D in Figure 4, the viewing user with ID 0 (score value 0.3), who is 34 years old and has a score value close to 0.2, will be selected as the connection partner for the viewing user with ID 2.
[0045] Next, the simulated viewing history generation unit 3 checks the maximum age in the selected viewing user's continuous viewing history and determines whether that age has reached the maximum age Y of the simulated viewing history to be created (step S3-4). If the maximum age Y has not been reached ("No" in step S3-4), the unit returns to step S3-1, sets the selected viewing user as target user I, and selects the next connection partner. In the example of score data D in Figure 4, if the viewing user with ID 0 is selected as the connection partner, the maximum age in the viewing history of the viewing user with ID 0 is 39 years old, so the age condition for the next connection partner becomes 40 years old.
[0046] If the answer in step S3-4 is "Yes", the pseudo-viewing history generation unit 3 has completed creating one pseudo-viewing history for target user I. To determine whether to create the next pseudo-viewing history, it checks if the number of created pseudo-viewing history entries has reached a predetermined number M (step S3-5). If the number of created pseudo-viewing history entries is less than M ("No" in step S3-5), it returns to step S3-1 and starts creating the pseudo-viewing history for target user I again from the beginning. If the answer in step S3-5 is "Yes", the creation of M pseudo-viewing history entries for target user I is completed, and the operation of the pseudo-viewing history generation unit 3 ends.
[0047] As explained above, the pseudo-viewing history generation unit 3 outputs M pseudo-viewing histories for the specified target user I.
[0048] (Simulated viewing history visualization unit 5) The simulated viewing history visualization unit 5 creates and outputs viewing prediction data E, such as viewing time, from the simulated viewing history and viewing history B of the target user I, which are output from the simulated viewing history generation unit 3. Figure 8 shows an example of a graph of the viewing time (total viewing time for each genre) from the simulated viewing history in Figure 7. Similarly, Figure 9 is a graph of viewing time by genre, showing an example of a graph of viewing time for the genre "Anime" and the genre "News".
[0049] Furthermore, the pseudo-viewing history visualization unit 5 can use multiple different pseudo-viewing histories (M in total) output from the pseudo-viewing history generation unit 3 to determine the average viewing time for M of them, as well as the viewing time for each genre. Furthermore, keywords such as cast members and place names can be extracted from program information A and viewing history B, including program titles and summaries. By utilizing this, it is also possible to display what kinds of keywords might be received in the future based on the simulated viewing history.
[0050] According to one example of this embodiment, a pseudo-viewing history is created using the viewing history of other viewers with similar attributes as a prediction of the target viewer's future viewing trends. By using this pseudo-viewing history, it becomes possible to predict future viewing time, viewing time by time of day, and what genres the viewer will prefer to watch in the future, which is an excellent effect.
[0051] Although the above-described embodiment is a representative example, it will be apparent to those skilled in the art that many modifications and changes are possible within the spirit and scope of the present invention. Therefore, the present invention should not be interpreted as being limited to the above-described embodiment, and various modifications and changes are possible without departing from the scope of the claims, and some modifications have already been described in the descriptions of each part.
[0052] Furthermore, the effects described in the example of the above embodiment are merely a list of the most preferred effects resulting from the present invention, and the effects of the present invention are not limited to those described in the example of the embodiment.
[0053] Furthermore, a computer can be suitably used to function as the aforementioned viewing prediction device 100. A program describing the processing content for each part of the viewing prediction device 100 is stored in the computer's memory, and the viewing prediction device 100 can be realized by having the computer's CPU read and execute this program.
[0054] Furthermore, such programs may be recorded on a computer-readable medium. Using a computer-readable medium, it is possible to install the program on a computer. Here, the computer-readable medium on which the program is recorded may be a non-temporary recording medium. The non-temporary recording medium is not particularly limited, but may include, for example, CD-ROMs or DVD-ROMs. [Explanation of symbols]
[0055] 1. Viewing history acquisition unit 2. Score Calculation Unit 3. Pseudo-viewing history generation unit 4. Matching Section 5. Simulated Viewing History Visualization Unit 6. Program Information Database 7. Viewing History Database 8. User Attribute Database 9. Score Data Database
Claims
1. A viewing prediction device that predicts the future viewing trends of viewers who watch broadcast or distributed content, A score calculation unit calculates a score value for each individual viewer from attribute data that shows the viewing trends of each individual viewer, A matching unit that extracts a predetermined number of viewers whose score values are similar to the score value of the target user, A pseudo-viewing history generation unit that combines the viewing histories of a predetermined number of viewing users extracted by the matching unit to generate a pseudo-viewing history in a single time series, A viewing prediction device equipped with the following features.
2. A viewing history acquisition unit collects viewing information from multiple viewing users and stores it as the viewing history, An attribute data generation unit generates attribute data from the viewing history and user attributes of each of multiple viewing users, Furthermore, The viewing prediction device according to claim 1, which updates the viewing history while collecting the aforementioned viewing information and predicts the future viewing trends of the viewing user.
3. The system further includes a pseudo-viewing history visualization unit that displays predicted future viewing time from the pseudo-viewing history generated by combining multiple viewing histories, The viewing prediction device according to claim 1 or claim 2, wherein the simulated viewing history visualization unit displays the predicted future viewing time in a graph.