WO2008018550A1 - Système de recommandation de programme, terminal de consultation de programme, programme de consultation de programme, procédé de consultation de programme, serveur de recommandation de programme, programme de recommandation de programme, et procédé de recommandation de programme - Google Patents

Système de recommandation de programme, terminal de consultation de programme, programme de consultation de programme, procédé de consultation de programme, serveur de recommandation de programme, programme de recommandation de programme, et procédé de recommandation de programme Download PDF

Info

Publication number
WO2008018550A1
WO2008018550A1 PCT/JP2007/065632 JP2007065632W WO2008018550A1 WO 2008018550 A1 WO2008018550 A1 WO 2008018550A1 JP 2007065632 W JP2007065632 W JP 2007065632W WO 2008018550 A1 WO2008018550 A1 WO 2008018550A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
information
user
unit
recommendation
Prior art date
Application number
PCT/JP2007/065632
Other languages
English (en)
French (fr)
Inventor
Masaru Yamaoka
Tsutomu Mukai
Yoichi Ikeda
Takahiro Sato
Mitsuaki Oshima
Takuma Iwasa
Hiroshi Kutsumi
Original Assignee
Panasonic Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corporation filed Critical Panasonic Corporation
Priority to EP07792282.1A priority Critical patent/EP2051509B1/en
Priority to US12/377,089 priority patent/US8296803B2/en
Publication of WO2008018550A1 publication Critical patent/WO2008018550A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/252Processing of multiple end-users' preferences to derive collaborative data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4532Management of client data or end-user data involving end-user characteristics, e.g. viewer profile, preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4661Deriving a combined profile for a plurality of end-users of the same client, e.g. for family members within a home
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4667Processing of monitored end-user data, e.g. trend analysis based on the log file of viewer selections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • H04N21/4755End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data for defining user preferences, e.g. favourite actors or genre
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors

Definitions

  • Program recommendation system program viewing terminal, program viewing program, program viewing method, program recommendation server, program recommendation program, and program recommendation method
  • the present invention accumulates user operations such as viewing a program, recording a program, playing a recorded program, erasing a recorded program, and recording a program, and provides the user with a reference based on collaborative filtering processing.
  • the present invention relates to a program recommendation system for recommending a program, a program recommendation server, a program recommendation program, and a program recommendation method.
  • the present invention also relates to a program viewing terminal, a program viewing program, and a program viewing method for recording or reproducing a received program.
  • channels that can be selected by the user as television viewing forms are diversified, such as cable television broadcasting, satellite television broadcasting, digital television broadcasting, and IP (Internet Protocol) broadcasting that are not limited to conventional television broadcasting alone.
  • IP Internet Protocol
  • Deviation methods a vast amount of user viewing history information is collected, and users with the same preference are grouped by V, so-called collaborative filtering, and users within the group are identified. It is possible to extract recommended programs. Therefore, it is possible to provide a system that is advantageous to the user without the complicated operation of selecting a favorite program for the user.
  • the second point is that only specific news and specific scenes in a program cannot be recommended, such as a news program. As a result, even if a program is recommended, it cannot be determined which scene in the program is recommended by the user. Eventually, the user needs to view and judge all the programs by himself / herself, which leaves troublesome processing for the user.
  • Patent Document 1 Japanese Patent Laid-Open No. 2001-298677
  • Patent Document 2 Japanese Patent Laid-Open No. 2005-33600
  • the present invention has been made to solve the above problems, and generally has a high degree of preference.
  • a program recommendation system is connected to a program viewing terminal for viewing a received program and the program viewing terminal via a network so that they can communicate with each other, and a user operation on the program
  • a program recommendation system comprising: a program recommendation server that obtains operation information representing the information from the program viewing terminal and creates recommendation information related to a program that matches the user's preference according to the operation information.
  • the viewing terminal includes an operation receiving unit that receives input of the operation information, and an operation information transmitting unit that transmits the operation information received by the operation receiving unit to the program recommendation server, wherein the program recommendation server includes: The operation information receiving unit that receives the operation information transmitted by the operation information transmitting unit, and the operation information received by the operation information receiving unit Based on the operation information storage unit stored for each user, the operation information received by the operation information reception unit, and the operation information for each user stored in the operation information storage unit!
  • a first grouping unit that groups the users into a first group; a second grouping unit that groups the users into a second group that includes the first group grouped by the first grouping unit; Aggregation results of the operation information of users belonging to the first group grouped by the first grouping unit and the operation information of users belonging to the second group grouped by the second grouping unit
  • a recommendation information generating unit that generates the recommendation information specific to the first group based on
  • a recommendation information transmission unit that transmits the recommendation information generated by the recommendation information generation unit to the program viewing terminal, and the program viewing terminal receives the recommendation information transmitted by the recommendation information transmission unit.
  • a program control unit that performs at least one of selection, recording, reproduction, and deletion of a program based on the recommendation information received by the recommendation information receiving unit.
  • a program viewing terminal provides a program receiving unit that receives a program included in a broadcast wave or communication data, and the program received by the program receiving unit.
  • An operation receiving unit that receives an input of the operation information representing a user's operation, and the operation information received by the operation receiving unit are connected to be communicable via a network and relate to a program that matches the user's preference
  • An operation information transmitting unit that transmits recommendation information to a program recommendation server created according to the operation information, a recommendation information receiving unit that receives the recommendation information transmitted by the program recommendation server, and the recommendation information receiving unit
  • a program control unit that performs at least one of selection, recording, reproduction, and deletion of a program based on the recommendation information received by the user.
  • a program viewing program includes a program receiving unit that receives a program included in a broadcast wave or communication data, and a user operation on the program received by the program receiving unit.
  • the operation reception unit that receives the input of the operation information representing the information, and the operation information received by the operation reception unit are connected to be communicable via a network, and the recommended information regarding the program that matches the user's preference.
  • the operation information transmitting unit that transmits to the program recommendation server created according to the operation information, the recommendation information receiving unit that receives the recommendation information transmitted by the program recommendation server, and the recommendation information receiving unit. Based on the recommendation information, the computer is caused to function as a program control unit that performs at least one of program selection, recording, reproduction, and deletion.
  • a program viewing method includes a program receiving step for receiving a program included in a broadcast wave or communication data, and for the program received in the program receiving step! /
  • the operation accepting step for accepting input of the operation information representing the user's operation and the operation information accepted in the operation accepting step are communicably connected via a network and meet the user's preference.
  • An operation information transmission step for transmitting recommended information related to a program to a program recommendation server created according to the operation information, a recommendation information reception step for receiving the recommendation information transmitted by the program recommendation server, and the recommendation information reception Based on the recommendation information received in the step, the program system performs at least one of program selection, recording, reproduction, and deletion. Including steps.
  • a program recommendation server is connected to each other via a network so as to be communicable, and the program transmitted by a program viewing terminal for viewing the received program.
  • An operation information receiving unit that receives operation information representing a user's operation, an operation information storage unit that stores the operation information received by the operation information receiving unit for each user, and an operation information receiving unit.
  • a first grouping unit that groups the users into a first group based on the received operation information and the operation information for each user stored in the operation information storage unit;
  • a second grouping unit that groups the users into a second group that includes the first group grouped by the first grouping unit, and the first group that is grouped by the first grouping unit.
  • the recommendation information generation unit that generates the recommendation information specific to the first group based on the total result of the operation information of the user to which the user belongs, and the recommendation information generated by the recommendation information generation unit A recommendation information transmission unit for transmitting to the program viewing terminal.
  • a program recommendation program is an operation representing a user operation on the program transmitted by a program viewing terminal that is connected to be communicable with each other via a network and views a received program.
  • An operation information receiving unit that receives information; an operation information storage unit that stores the operation information received by the operation information receiving unit for each user; the operation information received by the operation information receiving unit; Based on the operation information for each user stored in the operation information storage unit, a first grouping unit for grouping the users into a first group, and the first grouped by the first grouping unit A second grouping unit for grouping the users into a second group including the first group, and the first grouping.
  • a recommendation information generation unit that generates the recommendation information specific to the first group, and a recommendation information transmission unit that transmits the recommendation information generated by the recommendation information generation unit to the program viewing terminal. Make your computer work.
  • the program recommendation method can communicate with each other via a network.
  • the operation information receiving step for receiving operation information representing the user's operation on the program transmitted by the program viewing terminal connected to the program viewing terminal for viewing the received program, and the operation information received in the operation information receiving step.
  • the operation information storage step stored in the operation information storage unit for each user, the operation information received in the operation information reception step, and the user stored in the operation information storage unit
  • a second grooving step for grouping the users into a second group and a first grouping step.
  • FIG. 1 is a conceptual diagram showing a recommended program extraction method according to the first embodiment.
  • FIG. 2 is a block diagram showing the overall configuration of the program recommendation system of the first embodiment.
  • FIG. 3 is a block diagram showing a configuration of a program viewing terminal of the first embodiment.
  • FIG. 4 is a diagram showing a configuration of a program recommendation server according to the first embodiment.
  • FIG. 5 is a flowchart showing a flow of processing up to transmission of reservation information in the program viewing terminal according to the first embodiment.
  • FIG. 6 is a flowchart showing the flow of processing in the program recommendation server according to the first embodiment.
  • FIG. 7 is a flowchart showing a flow of processing of power by receiving recommendation information in the program viewing terminal according to the first embodiment.
  • FIG. 8 shows an example of the data structure of information stored in the reservation information DB of the program recommendation server. It is a figure which shows an example, (B) is a figure which shows the result which grouped the user who has the reservation information of program A, (C) is the grouping which grouped all the users who reserved program A.
  • FIG. 5 is a diagram showing a reservation rate of programs other than program A in the program.
  • FIG. 9 is a timing chart for explaining the marking method and marking counting method of the second embodiment.
  • FIG. 10 is a graph showing the marking frequency of the second embodiment.
  • Sono 11 is a block diagram showing the configuration of the program listening terminal of the second embodiment.
  • Sono 12 is a block diagram showing the configuration of the program recommendation server of the second embodiment.
  • FIG. 16 is a diagram illustrating an example of a data structure of marking information according to the second embodiment.
  • FIG. 17 An example of the data structure of the marking DB of the second embodiment.
  • FIG. 18 A timing chart showing the marking information of the second embodiment on a time axis.
  • FIG. 19 An example of the data structure of the marking DB of the first application example of the second embodiment.
  • FIG. 20 It is a conceptual diagram for explaining a marking information aggregation method of the first application example of the second embodiment.
  • FIG. 21 A diagram showing an example of the data structure of the marking DB of the second application example of the second embodiment.
  • FIG. 22 is a conceptual diagram for explaining a marking information counting method according to a second application example of the second embodiment.
  • FIG. 26 is a flowchart showing a flow of processing until user cluster information is transmitted in the program viewing terminal according to the third embodiment.
  • FIG. 27 is a flowchart showing the flow of processing in the program recommendation server according to the third embodiment.
  • FIG. 28 is a first flowchart showing a flow of processing of power by receiving recommendation information in the program viewing terminal according to the third embodiment.
  • FIG. 29 is a second flowchart showing the flow of power processing by receiving recommendation information in the program viewing terminal according to the third embodiment.
  • FIG. 30 is a flowchart showing a process flow of a community reservation information statistics unit according to the fourth embodiment.
  • FIG. 31 is a flowchart showing the flow of processing of an all-user reservation information statistics unit according to the fourth embodiment.
  • FIG. 32 is a flowchart showing a process flow of the community specializing unit according to the fourth embodiment.
  • FIG. 33 is a diagram for explaining extraction of recommended programs using tf′idf values.
  • FIG. 34 shows the reservation status of users ⁇ to ⁇ belonging to community groups cl to c4 for program ⁇ .
  • FIG. 1 is a conceptual diagram showing a recommended program extraction method according to the first embodiment of the present invention.
  • a recording reservation operation will be described as a user's program operation.
  • Graph 100a in Fig. 1 shows the reservation rate ranking of programs for which all users belonging to group A who have made a reservation are grouped after the user who has reserved "Drama A" is grouped. It is. That is, other reservations for users who have booked "Drama A” It is a program ranking. Therefore, if “Drama A” is reserved in common, V, the matching of preference conditions, collaborative filtering of other users ’preferences, and other reservation rate rankings other than“ Drama A ” It is the power to provide high-ranking programs as recommended programs to users.
  • the group B including the users of the group A that is not only the group A of the users who reserved the “drama A” is extracted, and the reservation rate ranking of the group B is generated.
  • Group B can be any grouping that includes all users belonging to group A! /, But all users who use the program recommendation system are group B to reduce processing. Is grooved as
  • the reservation rate ranking of group A who reserved "Drama A" (graph 100a in Fig. 1) and the reservation rate ranking of group B consisting of all users (graph 100b in Fig. 1). ) are generated.
  • the reservation rate ranking specialized for group A is generated by subtracting the reservation rate ranking of group B from the reservation rate ranking of group A (graph 100c in Fig. 1).
  • each reservation rate ranking is determined by the reservation rate that is not the number of program reservations. Since the number of users belonging to Group A and Group B is different, the number of reservations is normalized by the number of users belonging to each group. This is because the processing is equivalent to the processing.
  • the reservation rate ranking specialized for group A is determined as a threshold by threshold 105, and threshold 10 A program exceeding 5 is recommended as a recommended program 103 to the user. Therefore, this recommended program 103 can be provided as a recommended program specialized for group A.
  • FIG. 2 is a block diagram showing the overall configuration of the program recommendation system according to the first embodiment.
  • the program recommendation system includes a plurality of program viewing terminals 2 such as a program recording device and a program recommendation server 3.
  • the plurality of program viewing terminals 2 and the program recommendation server 3 are communicably connected to each other via a general-purpose network 4 such as the Internet.
  • a general-purpose network 4 such as the Internet.
  • a plurality of program viewing terminals 2 are connected to the program recommendation server 3. 1S
  • one program viewing terminal 2 is connected to simplify the explanation. The case where this is done will be described.
  • the program viewing terminal 2 receives a program from a broadcast wave or an IP network, views the program, records the program, plays the recorded program, deletes the recorded program, Make a recording reservation.
  • the program recommendation server 3 is connected to the program viewing terminal 2 and the network 4 so as to communicate with each other.
  • the program recommendation server 3 acquires operation information representing the user's operation on the program from the program viewing terminal 2, and the program that matches the user's preference.
  • the recommendation information about is created according to the operation information.
  • FIG. 3 is a block diagram showing the configuration of the program viewing terminal of the first embodiment.
  • the program viewing terminal 2 includes an antenna 201, a tuner 202, a TS (transport 'stream) decoder 203, a CAS (Conditional Access System) 204, a signal number canceling unit 205, a demnoplexer 206, an MPEG video decoder 207, an MPEG Audio decoder 208, HDMI (High-Definition Multimedia Interface) terminal 209, recording encryption unit 213, recording control unit 214, recording medium 215, playback control unit 216, recording decryption unit 217, PSI (Program Specific Information) Yuuki
  • Tuner 202 receives a broadcast wave of a predetermined channel from broadcast waves such as terrestrial digital broadcast and BS digital broadcast, for example, and outputs the broadcast wave to TS decoder 203.
  • the TS decoder 203 demodulates the received general transport stream stream and outputs it to the descrambling unit 205.
  • CAS 204 is a general Conditional Access System, which reads out encryption key information from an IC card in which user registration information and program encryption keys are recorded, and outputs the information to descrambling unit 205.
  • the descrambling unit 205 decrypts the encrypted broadcast signal demodulated by the TS decoder 203 based on the encryption key from the CAS 204, decrypts the encrypted program information and decrypts it. Output to multiplexer 206.
  • the demultiplexer 206 separates information multiplexed as program information.
  • program information at least video information, audio information and program management information are multiplexed. After these are separated, video information is extracted to MPEG Video decoder 207, audio information is extracted to MPEG Audio decoder 208, and program management information is extracted to PSI. Output to part 218.
  • the MPEG Video decoder 207 demodulates the video information from the demultiplexer 206, converts it into video data, and outputs it to the HDMI terminal 209.
  • the MPEG Audio decoder 208 demodulates the audio information input from the demultiplexer 206, converts it into audio data, and outputs it to the HDMI terminal 209.
  • the HDMI terminal 209 is connected to an external HDMI terminal 210 via an HDMI cable, and the HDMI terminal 210 is connected to a monitor 211 and a speaker 212.
  • HDMI terminals 209 and 210 are general video information and audio information interfaces, and the program viewing terminal 2 and the monitor 211 and the speaker 212 mutually authenticate each other and share the encryption key. And encrypting video data and audio data with a common encryption key And output to the monitor 211 and the speaker 212.
  • the monitor 211 is a general program video information display device, which decrypts the encrypted video data received at the HDMI terminal 210 and outputs the video data of the program.
  • the speaker 212 is a general program audio information output device that decrypts encrypted audio data received at the HDMI terminal 210 and outputs program audio data.
  • the recording encryption unit 213 performs a signal processing for recording the received program information on a recording medium.
  • the recording encryption unit 213 encrypts the program information input from the demultiplexer 206 and outputs the encrypted program information to the recording control unit 214. Therefore, the recording encryption unit 213 performs encryption processing specific to the recording medium for recording the program information.
  • DVD-RAM uses CP RM (Content Protection for Rewritable Media) and Blu-ray ice cream HD-DVD uses AACS (Advanced Access Content System).
  • the recording control unit 214 controls the recording of the program information encrypted by the recording encryption unit 213 on the recording medium.
  • the recording control unit 214 records program information on the recording medium by performing modulation processing and error correction coding processing specific to the recording medium.
  • the recording medium 215 is a computer-readable recording medium for recording program information.
  • a magnetic recording disk such as a hard disk, an optical disk such as a DVD or a Blu-ray disk, or a semiconductor memory such as an SD card.
  • magneto-optical recording media such as MO / MD are used.
  • a program viewing program is recorded in the recording medium 215, and the program viewing program is read and executed by a CPU (Central Processing Unit) or the like.
  • the reproduction control unit 216 reads program information recorded on the recording medium 215.
  • the recording control unit 214, the recording medium 215, and the reproduction control unit 216 are generally configured as a drive system.
  • the recording decryption unit 217 performs decryption corresponding to the encryption of the recording encryption unit 213.
  • the recording decryption unit 217 decrypts the program information encrypted and recorded on the recording medium 215 and outputs the decrypted program information to the TS decoder 203. Note that the reproduction process of the program information output to the TS decoder 203 is the same as the reproduction process of the program received by the antenna 201 described above.
  • the PSI extraction unit 218 uses the program management information extracted by the demultiplexer 206 to generate PSI (Prog ram Specific Information) is extracted.
  • PSI Prog ram Specific Information
  • PMT Program
  • Map Table Map Table
  • EIT Event Information Table
  • TOT Time Offset Table
  • the PMT stores packet identification information such as images and sounds included in the program. Therefore, if packet identification information such as images and sounds can be obtained from the PMT, the program can be played by extracting the packets with the packet identification information.
  • the EIT includes information related to the program such as the program name, broadcast date and time, and broadcast content.
  • EPG Electronic Program Guide
  • the EPG storage unit 219 creates and stores EPG information using the EIT in the PSI extracted by the PSI extraction unit 218.
  • Key 220 accepts input from the user and is configured with a remote control or a front panel.
  • Reservation management unit 221 accepts a program to be reserved for recording in accordance with a command input with key 220, and creates reserved program information.
  • the reserved program information includes program identification information for identifying a program.
  • the reserved program information is created using the £ 0 information stored in the EPG storage unit 219.
  • the reserved memory 222 includes a memory that stores reserved program information created by the reservation management unit 221.
  • the reserved program information may include program broadcast date and time, channel information, and broadcast station identification information instead of program identification information. That is, the program can be identified by the broadcast date and time of the program, channel information, and broadcast station identification information.
  • the user identification unit 223 identifies a user who uses the program viewing terminal 2.
  • the user identifying unit 223 identifies a user who uses the program viewing terminal 2 based on user information input using the key 220.
  • the user information DB 224 is a database in which user information of all users who use the program viewing terminal 2 is registered.
  • the user identification unit 223 identifies a user based on user information input using the key 220 and user information stored in the user information DB 224 in advance. Further, when the user identification is successful, the user identification unit 223 outputs the user information of the user currently in use to the reservation information transmission unit 225.
  • the reservation information transmission unit 225 is a general network interface, and is a general-purpose network interface. After establishing a network with the program recommendation server 3 connected via the network 4, the program recommends the reservation information including the reserved program information stored in the reservation memory 222 and the user information input from the user identification unit 223. Send to server 3.
  • the reservation memory 222 stores the reserved user in association with the user identification unit 223 and stores the reserved program information that has been transmitted to the program recommendation server 3 by the reservation information transmission unit 225 and the untransmitted information. Manage reserved program information in an identifiable manner.
  • the recommendation receiving unit 226 receives recommendation information regarding a program recommended by the program recommendation server 3 via the general-purpose network 4.
  • the recommended program information extracting unit 227 extracts recommended program information from the recommended information received by the recommendation receiving unit 226.
  • Recommended program information is information that can uniquely identify a recommended program. For example, program identification information for identifying a program, or broadcast station identification for identifying a program's broadcast date and time, channel information, and a broadcast station. Contains information.
  • the extracted recommended program information is output to the program reservation determination unit 228.
  • the recommended information includes recommended program information and popular program information.
  • the recommended program information is information representing a program specialized in the preference of the user who uses the program viewing terminal 2
  • the popular program information is information representing a program popular with all users.
  • the program reservation determination unit 228 determines whether the recommended program indicated by the recommended program information is a program broadcast in the past. That is, the program reservation determination unit 228 determines that the program has been broadcast in the past if the broadcast date / time of the recommended program is earlier than the current date / time. When it is determined that the recommended program is not a program broadcasted in the past !, the program reservation determination unit 228 receives the reserved program information stored in the reservation memory 222 and the recommended program information extraction unit 227. Based on the recommended program information, whether or not the corresponding program is already reserved is determined.
  • the program reservation determination unit 228 outputs the recommended program information to the reservation management unit 221 to perform reservation processing corresponding to the recommended program information. . If it is determined that the program is reserved, the program reservation determination unit 228 notifies the user that the recommended program has already been reserved, and ends the process. Further, when it is determined that the recommended program indicated by the recommended program information is a program broadcast in the past, the program reservation determining unit 228 outputs the recommended program information to the recommended program extracting unit 229. The recommended program extracting unit 229 determines whether or not the program specified by the recommended program information is recorded on the recording medium 215.
  • the recommended program extraction unit 229 notifies the user that the recommended program is not recorded, and ends the process.
  • the recommended program extracting unit 229 notifies the user that the recommended program exists, and prompts the user to play it.
  • the playback control unit 216 calls the program information indicated in the recommended program information from the recording medium 215 and plays back the program.
  • the recommended program extraction unit 229 determines whether the program specified by the recommended program information is recorded in the recording medium 215! /, Or not, in the recommended program information from the program recommendation server 3 Judgment is based on the program identification information of the program, or the broadcast date and time of the recommended program, channel information, and broadcast station identification information.
  • FIG. 4 is a diagram illustrating a configuration of the program recommendation server according to the first embodiment.
  • the program recommendation server 3 includes a reservation information reception unit 230, a user management unit 231, a user attribute DB (database) 232, a reservation information registration unit 234, a reservation information DB (database) 235, a specialization generation unit 30, and a recommended program It consists of a creation unit 239 and a recommendation transmission unit 240.
  • the specialization generation unit 30 of the program recommendation server 3 includes a community reservation information statistics unit 236, an all-user reservation information statistics unit 237, and a community specialization unit 238.
  • the reservation information receiving unit 230 receives the reserved program information of the program reserved by each user from the reservation information transmitting unit 225 of the plurality of program viewing terminals 2 connected to the general-purpose network 4, and the user who made the reservation Reservation information including user information for identifying.
  • the reserved program information includes program identification information that can uniquely identify the reserved program, or program broadcast date and time, channel information, and broadcast station identification information of the reserved program.
  • the received reservation information is output to the user management unit 231.
  • the user attribute DB 232 includes the user information of the registered user, and, if necessary, the user name, gender, address / phone number, manufacturer / model of the program viewing terminal, the resolution of the monitor to be connected, and the network of the program viewing terminal.
  • User attribute information such as IDs is managed as a user registration list.
  • a user registers in advance with the program recommendation server 3 for user recommendation. Perform the recording process.
  • the program recommendation server 3 After user registration information such as user name setting and address / telephone number notification is given, the program recommendation server 3 generates user information and notifies the user on the program recommendation server 3 side.
  • the user management unit 231 determines whether or not the user is a registered user of the user power program recommendation server 3 specified by the received user information.
  • the user management unit 231 searches the user registration list stored in the user attribute DB 232 for user information that matches the received user information. If it is determined that the received user information is registered in the user attribute DB 232, it is determined that the user information is a registered user of the program recommendation server 3, and the processing is continued.
  • the registered user is registered in the program viewing terminal 2 used by the user as an unregistered user in the program recommendation server 3 Sends an error message to the effect and interrupts further processing.
  • the program viewing terminal 2 that has received the error message displays the error message on the monitor 211.
  • the reservation information registration unit 234 displays the reserved program information for each user received by the reservation information reception unit 230. It is stored in the reservation information DB 235 in association with the received user information.
  • the reserved information DB 235 is a database that stores reserved program information transmitted by the program viewing terminal 2 in association with user information.
  • the community reservation information statistics unit 236 groups all users having the same reserved program information as the reserved program information as a community group based on the reserved program information received by the reservation information receiving unit 230. To do. In addition, the community reservation information statistics unit 236 generates rankings by counting reservation program information other than the reserved program information of all users belonging to the community group for each program, and the total number of users belonging to the community group. Normalize the ranking and calculate the reservation rate ranking for each program in the community group. The community reservation information statistics unit 236 outputs the normalized ranking (reservation rate ranking) to the community specialization unit 238.
  • the all user reservation information statistics unit 237 converts all users having reservation program information received by the reservation information reception unit 230 into a community gnole. All registered users, that is, all registered users of the program recommendation server 3 are grouped as all user groups including community groups. In addition, the all-user reservation information statistics unit 237 performs a statistical process on the reservation program information of all users after grouping all users, and creates a reservation rate ranking for each program. In other words, the all-user reservation information statistics unit 237 generates the ranking by summing up the reserved program information of all registered users for each program, normalizes the ranking by the number of all registered users, and creates a ranking within the group formed by all registered users. The reservation rate ranking of each program is calculated. The created reservation rate ranking is output to the community specialization unit 238 and the recommended program creation unit 239.
  • the community specialization unit 238 subtracts the reservation rate ranking calculated by the all-user reservation information statistical unit 237 from the reservation rate ranking calculated by the community reservation information statistical unit 236 to obtain community reservation information.
  • the reservation rate ranking specialized for the community group grouped by the statistics unit 236 is created and output to the recommended program creation unit 239.
  • Ranking subtraction subtracts the reservation rate for each program for each program.
  • the recommended program creation unit 239 Based on the reservation rate ranking generated by the community specialization unit 238, the recommended program creation unit 239 extracts a program having a reservation rate higher than a preset threshold as a recommended program, and selects the recommended program.
  • Program identification information for identification, or recommended program information including broadcast date and time of the recommended program, channel information on which the recommended program is broadcast, and broadcast station identification information for identifying a broadcast station on which the recommended program is broadcast Create Accordingly, the recommended program creating unit 239 creates recommended program information specialized for the community group.
  • the reservation rate is higher than a preset threshold! /, And the ability to extract a program as a recommended program.
  • the present invention is not particularly limited to this, and the community specializing unit 238 Therefore, a predetermined number of programs that are higher in the reservation rate ranking generated may be extracted as recommended programs.
  • the recommended program creation unit 239 is generated by the all-user reservation information statistics unit 237. Based on the reservation rate ranking, the reservation rate is higher than a preset threshold! /, The program is extracted as a popular program, program identification information for identifying the popular program, or the broadcast date and time of the popular program, Popular program information including channel information for broadcasting a popular program and broadcasting station identification information for identifying a broadcasting station for broadcasting the popular program is created.
  • the reservation rate is higher than a preset threshold! /, The ability to extract programs as popular programs.
  • the present invention is not particularly limited to this, and the all-user reservation information statistics unit The predetermined number of programs with the highest reservation rate ranking generated by 237 may be extracted as popular programs.
  • the recommended transmission unit 240 transmits the recommended information including the recommended program information and popular program information created by the recommended program creating unit 239 to the program viewing terminal 2.
  • the program recommendation server 3 includes a reproduction control unit (not shown) that reads a program and data from a computer-readable recording medium.
  • a recording medium for example, a magnetic recording disk such as a hard disk, an optical disk such as a DVD or a Blu-ray disk, a semiconductor memory such as an SD card, and a magneto-optical recording medium such as MO / MD are used.
  • a program recommendation program is recorded on this recording medium, and is read and executed by a program recommendation program force SCPU (central processing unit) or the like.
  • the user A reserves the program A by the program viewing terminal 2 owned by the user A.
  • the program viewing terminal 2 transmits user information for identifying the user A and reserved program information for specifying the program A to the program recommendation server 3.
  • the reservation information receiving unit 230 of the program recommendation server 3 receives user information for identifying the user A and reserved program information for specifying the program A from the program viewing terminal 2 owned by the user A.
  • the user management unit 231 determines whether or not the received user information is stored in the user attribute DB 232, and if stored, determines that the user A is a registered user of the program recommendation server 3 and continues the process.
  • the reserved information registration unit 234 registers reserved program information for specifying the program A in the reserved information DB 235 in association with user information for identifying the user A.
  • the community reservation information statistics unit 236 is associated with reserved program information for identifying program A! /, All users are extracted from the reservation information DB 235 to form a community group.
  • the community reservation information statistics unit 236 statistically processes programs other than program A in the community group. Then, the community reservation information statistics unit 236 calculates the reservation ratio of programs other than program A in the community group, generates a reservation ratio ranking in which programs are arranged in descending order of the reservation ratio, and generates the generated reservation ratio ranking. Is output to Community Specialization Department 238.
  • the all-user reservation information statistics unit 237 includes the community groups formed by extracting all users registered in the user attribute DB 232 of the program recommendation server 3 from the reservation information DB 235 and forming the community reservation information statistics unit 236. Form all user groups.
  • the all-user reservation information statistics unit 237 extracts reserved program information associated with user information in all user groups from the reservation information DB 235, and statistically processes programs other than program A. Then, the all-user reservation information statistics unit 237 calculates the reservation ratio of programs other than program A in all user groups, generates a reservation ratio ranking in which the programs are arranged in descending order of the reservation ratio, and generates the generated reservation ratio. The ranking is output to the community specialization unit 238 and the recommended program creation unit 2 39.
  • the community specialization unit 238 subtracts the reservation rate ranking of the program created by the all-user reservation information statistics unit 237 from the program reservation rate ranking created by the community reservation information statistics unit 236. As a result, the community specializing unit 238 creates a program reservation rate ranking specialized for the community group of the user who has reserved the program A, and outputs it to the recommended program creating unit 239.
  • the recommended program creation unit 239 Based on the reservation rate ranking specialized for the community group created by the community specialization unit 238, the recommended program creation unit 239 has a reservation rate higher than the threshold! /, Program reservation program information or ranking.
  • the recommended program information is created by extracting the top reserved program information.
  • the recommended program creation unit 239 is based on the generalized reservation rate ranking of all registered users created by the all-user reservation information statistics unit 237, and the reserved program information or ranking of programs with a reservation rate higher than the threshold value. Top program information is extracted and popular program information is created.
  • the recommendation transmitting unit 240 outputs the recommended program information and popular program information created by the recommended program creating unit 239 to the program viewing terminal 2 of the user A. Next, the process flow of the program recommendation system will be further described. FIGS.
  • FIG. 5 to 7 are flowcharts showing the processing flow of the program recommendation system according to the first embodiment, and FIG. 5 shows the processing until the reservation information is transmitted in the program viewing terminal according to the first embodiment.
  • 6 is a flowchart showing a flow of processing in the program recommendation server according to the first embodiment, and FIG. 7 is recommended information in the program viewing terminal according to the first embodiment. It is a flowchart which shows the flow of processing after receiving
  • key 220 accepts input of user information by the user and accepts login to program viewing terminal 2 (step Sl).
  • the user identification unit 223 determines whether or not the user authentication is successful, that is, whether or not the input user information matches the user information registered in advance in the user information DB 224 (step S2 ).
  • the user identification unit 223 outputs an error notification to the monitor 211 and ends the processing (step S3 ).
  • tuner 202 receives a broadcast wave from antenna 201 (step S4).
  • TS decoder 203 demodulates the broadcast wave received by tuner 202.
  • the signature canceling unit 205 uses the decryption key from the CAS 204 to decrypt the program information contained in the broadcast wave.
  • the demultiplexer 206 separates the multiplexed program information into a video signal, an audio signal, and a program control signal.
  • the PSI extraction unit 218 extracts the PSI included in the separated program control signal (step S5).
  • PSI extraction section 218 creates EPGs of all receivable channels based on the extracted PSI and stores them in EPG storage section 219 (step S6).
  • the PSI extraction unit 218 displays the EPG created on the monitor 211 so that individual programs can be selected from the user (step S7).
  • the reservation management unit 221 determines whether or not there has been a reservation operation from the user (step S8).
  • Reservation management unit 221 can be selected by the user from the EPG that displays the program as selectable. Accept pre-reservation operations and accept them. .
  • pre-reservation The management management unit 222211 stands by while the pre-reservation operation by the user is being performed. .
  • Pre-reservation contract management management department 222211 is the program program identification identification information corresponding to the program group that has become the target of the pre-reservation operation.
  • the broadcast date of the program, or the program program broadcast date the information on the information on the channel information and the information on the broadcasting station identification information is extracted from the EEPPGG.
  • the pre-reservation memory 222222 the pre-reservation number program group information is recorded and stored. .
  • the pre-reservation contract management management unit 222211 sets the pre-reservation contract for the program group (step SS99). .
  • program program group AA the program program group that has been set for the advance reservation in step SS99 is called program program group AA. I will explain it. .
  • the pre-reservation agreement information information transmission / reception unit 222255 Distinguish between pre-reserved reservation program information information AA corresponding to program group AA and the user who made pre-reserved reservations for program group AA.
  • the user information information for suru-takuta is sent as a pre-reservation information information to the recommended program group recommended server 33 ((step SS 1100)). .
  • the pre-reservation reservation information report reception / reception unit 223300 of the program group recommendation recommendation server 33 is the program group viewing program. End of listening terminal
  • the pre-reservation information information sent and received in accordance with 22 is received and received ((Step SSll)). .
  • the user management administration department 223311 determines whether or not the user authentication certificate has succeeded, that is, the advance reservation received and received.
  • User information included in the contract information information is registered in advance in the DDBB223322 attribute of the user information attribute of the program group recommendation recommendation server 33 Judgment is made as to whether or not it agrees with the information (Step Step SS 1122). .
  • the user authentication certificate fails and fails, and it is judged that the user is not a registered user ((NNOO in step SS1122))
  • the user management department 223311 creates an error message to indicate the fact and displays the program program viewing / listening terminal.
  • An error message message is sent to the terminal end 22 to send and receive it, and the processing is terminated (step SS1133).
  • the terminal program viewing / listening terminal terminal 22 that received and received the error message message failed and failed in the user authentication certificate.
  • the pre-reservation contract information report registration / recording unit 223344 is the user information received / received by the pre-reservation contract information report reception / reception unit 223300.
  • the reserved reservation program information information AA in the reserved reservation information information DDBB223355 corresponds to the information information and registering the reserved reservation program information information AA in the reserved reservation information information DDBB223355 ((Step Step SS 1144)) . .
  • the pre-reservation contract information information registration / registration section 223344 is used by all the registered registration users stored in the pre-reservation contract information information information DDBB223355. Based on the scheduled reservation program information information, all the users who have the reserved program number information AA of the reserved program group AA are extracted, , Komi Muninitte
  • the communimunity pre-reservation contract information information statistics section 223366 is connected to the communimunity GN Relay
  • the reserved program information of programs other than the program A associated with the user information of the user of the group is totaled to generate a ranking of the number of reservations for each program (step S16).
  • the community reservation information statistics unit 236 normalizes the total number of reservations for each program by the number of grouped users, generates a reservation rate for each program, and creates a program with a high reservation rate.
  • the reservation rate rankings arranged in order are generated (step S17).
  • the all-user reservation information statistics unit 237 extracts users registered in the user attribute DB 232, that is, all registered users of the program recommendation server 3, and groups them as all user groups (step S). 18). Since all the user groups created in step S18 are composed of all registered users, the group including the user group having the reserved program information of program A created in step S15 is included. Become.
  • the all-user reservation information statistics unit 237 aggregates the reserved program information of all users of programs other than the program A in the grouped all user groups, and ranks the number of reservations for each program. Generate (step S19).
  • the all-user reservation information statistics unit 237 normalizes the total number of reservations for each program by the number of grouped users, that is, the total number of users registered in the program recommendation server 3. Then, the reservation rate for each program is generated, and the reservation rate ranking arranged in order from the program with the highest reservation rate is generated (step S20).
  • the community specializing unit 238 determines the total user reservation information statistics unit 237 from the reservation rate ranking of programs other than the program A of the user who has reserved the program A generated by the community reservation information statistics unit 236.
  • the reservation rate ranking specialized for the user who reserved the program A is generated by subtracting, for each program, the reservation rate ranking of programs other than the program A generated by all users.
  • the recommended program creation unit 239 creates recommended program information by extracting programs with a reservation rate higher than a predetermined threshold from the reservation rate rankings generated by the community specialization unit 238 (step S21). Note that the recommended program creation unit 239 may extract recommended programs by extracting a predetermined number of programs from the top programs in the reservation rate ranking generated by the community specialization unit 238.
  • the recommended program creation unit 239 selects a number having a reservation rate higher than a predetermined threshold from among the reservation rate rankings of all users generated by the all user reservation information statistics unit 237.
  • Popular program information is created by extracting sets (step S22). Note that the recommended program creation unit 239 may create popular program information by extracting a predetermined number of programs from the higher ranking program power among the reservation rate rankings generated by the community specialization unit 238.
  • the recommended transmission unit 240 transmits the recommended program information created by the recommended program creating unit 239 and recommended information including popular program information to the program viewing terminal 2 (step S23).
  • the recommendation receiving unit 226 of the program viewing terminal 2 receives the recommended information including the recommended program information and the popular program information transmitted by the recommended transmitting unit 240 of the program recommendation server 3 ( Step S31).
  • the recommended program information extraction unit 227 determines whether or not the recommended information received by the recommendation receiving unit 226 is also the recommended program information extracted (step S32).
  • the recommended program information extraction unit 227 prompts the user to select one of recommended program information and popular program information.
  • the recommended program information is extracted when the recommended program information is selected, and the popular program information is extracted when the popular program information is selected. It is also possible to provide a setting to extract both recommended program information and popular program information. This can provide more options to the user.
  • the program reservation determination unit 228 includes program identification information included in the recommended program information extracted by the recommended program information extraction unit 227, Alternatively, using the program broadcast date / time, channel information, and broadcast station identification information, it is determined whether or not the reservation has already been completed by the program viewing terminal 2 (step S33). For example, the program reservation determination unit 228 determines whether or not the program identification information included in the recommended program information matches the program identification information included in the reserved program information stored in the reservation memory 222.
  • the reservation management unit 221 performs reservation setting for the recommended program (step S34). After the recommended program reservation setting is completed, or when the recommended program reservation setting has been completed in advance (YES in step S33), the program reservation determination unit 228 reserves all recommended program information included in the recommended information. It is determined whether or not the setting is completed (step S35).
  • step S35 When it is determined that reservation of all recommended program information has been completed! /, NA! / (N in step S35) O) Return to step S33 and repeat the reservation setting process for the remaining recommended program information. If it is determined that the reservation of all recommended program information has been completed (YES in step S35), the process ends.
  • program reservation determination unit 228 extracts recommended program information. Using the program identification information included in the popular program information extracted by the section 227 or the program broadcast date / time, channel information, and broadcast station identification information, the program viewing terminal 2 determines whether or not the reservation has already been completed. (Step S36). For example, the program reservation determination unit 228 determines whether or not the program identification information included in the popular program information matches the program identification information included in the reserved program information stored in the reservation memory 222. .
  • the reservation management unit 221 makes a reservation setting for the popular program (step S37).
  • the program reservation determination unit 228 reserves all the popular program information included in the recommended information. It is determined whether or not the setting is completed (step S38).
  • step S38 If it is determined that reservation of all popular program information has been completed! /, NA! / (NO in step S38), the process returns to step S36 to perform reservation setting processing for the remaining popular program information. Execute repeatedly. If it is determined that all popular program information has been reserved (YES in step S38), the process is terminated.
  • the recommended program extraction unit 229 of the program viewing terminal 2 determines whether or not the recommended program has been recorded on the recording medium 215. If the program has been recorded, the recommended program extraction unit 229 may output a message to the monitor 211 prompting the user to play.
  • Digital recorders in recent years include those that automatically record programs by EPG keyword search and those that continue to record all channels for 24 hours. Therefore, it is easy to consider that the recommended program is recorded even if the user does not intentionally set the reservation or record. Therefore, a system that prompts the user to play back a program that has missed viewing can be provided by the same system.
  • the program recording reservation operation has been described as the user operation.
  • the present invention is not limited to this.
  • the user operation may be any operation as long as the user is an operation related to the preference for the program.
  • the user operation may be a program playback operation, a recording operation, or an erase operation.
  • the program viewing terminal 2 transmits the reproduced program identification information to the program recommendation server 3.
  • the reservation information registration unit 234 of the program recommendation server 3 manages the programs played back for each user, and the community reservation information statistics unit 236 groups the users who played the same program and plays them back by the users in the group. Generate a ranking for the playback rate of the program. Further, the all-user reservation information statistics unit 237 groups all registered users and generates a playback rate ranking for all registered users.
  • the community specialization unit 238 subtracts the reproduction rate ranking of the program created by the all-user reservation information statistics unit 237 from the reproduction rate ranking of the program created by the community reservation information statistics unit 236. Thus, the community specialization unit 238 generates a reproduction rate ranking specialized for the user who has played the specific program, and the recommended program creation unit 239 is based on the reproduction rate ranking generated by the community specialization unit 238. To generate recommended program information.
  • the program viewing terminal 2 transmits identification information of the recorded program to the program recommendation server 3.
  • the reservation information registration unit 234 of the program recommendation server 3 manages the programs recorded for each user, and the community reservation information statistics unit 236 groups the users who recorded the same program, and records the users in the group. Generate program recording rate ranking.
  • the All User Reservation Information Statistics Unit 237 groups all registered users. Then, the recording rate ranking of all registered users is generated.
  • the community specialization unit 238 subtracts the recording rate ranking of the program created by the all-user reservation information statistics unit 237 from the recording rate ranking of the program created by the community reservation information statistics unit 236.
  • the community specializing unit 238 generates a recording rate ranking specialized for the user who recorded the specific program, and the recommended program creating unit 239 is based on the recording rate ranking generated by the community specializing unit 238. Generate recommended program information.
  • the present invention can also be applied when the user operation is a program erasing operation.
  • the program viewing terminal 2 transmits the erased program identification information to the program recommendation server 3.
  • the reservation information registration unit 234 of the program recommendation server 3 manages the deleted programs for each user, and the community reservation information statistics unit 236 groups the users who deleted the same program and deletes the users in the group. Generate program erasure rate ranking.
  • the all-user reservation information statistics unit 237 creates a deletion rate ranking for all registered users by grooving all registered users.
  • the community specialization unit 238 subtracts the deletion rate ranking of programs created by the all-user reservation information statistics unit 237 from the deletion rate ranking of programs created by the community reservation information statistics unit 236.
  • the community specializing unit 238 generates a deletion rate ranking specialized for the user who deleted the specific program, and the recommended program creation unit 239 recommends based on the deletion rate ranking generated by the community specializing unit 238.
  • Program information is generated.
  • the program information that has been replayed can be aggregated to promote a reservation operation for programs to be broadcast in the future. At this time, it is possible to create recommended information for prompting playback by grouping users having the same reservation information and counting the programs played back in the group. Conversely, if the program information is grouped and the reservation information is aggregated within the group, it is based on the reservation information of users who have similar preferences playing the same program! It is also possible to automatically perform a program reservation operation that matches the preferences.
  • Different operations may be combined as user operations.
  • a ranking may be created by totaling together a program accompanied by a reproduction operation and a program accompanied by a recording operation.
  • the weighting for aggregation is based on different operations. It may be changed. For example, it is determined that the user's preference is higher for a reproduced program than for a program that has been recorded but not reproduced. Therefore, a ranking is created with weighting based on this. For example, 1 point is recorded when only a specific program is recorded, 2 points when it is being played, and 1 point when there is an erase operation. This makes it possible to generate a more accurate ranking for user preferences.
  • preference operation information for a program is aggregated by the program recommendation server 3 for each program viewing terminal 2 (for each user), and users with similar user preferences are grouped and duplicated.
  • the recommended filtering is recommended to the user by collaborative filtering, and the recommended program is automatically recorded, urged to be played, deleted, and deleted. Support program viewing.
  • a second group that includes the first group is created by grouping users based on the program to be operated. Subtract the ranking of the second group from the ranking of the first group, i.e.
  • FIG. 8 is a diagram illustrating a data structure of the reservation information DB 235 according to the first embodiment.
  • FIG. 8A shows an example of a data structure of information stored in the reservation information DB 235 of the program recommendation server 3.
  • reservation information indicating that user A has reserved program A is received by reservation information receiving section 230 of program recommendation server 3, and reservation information registration section 234 receives reservation information.
  • the data structure of the reservation information DB 235 when the reserved program information 402 of the program A is registered in the list 401 of the user A of the DB 235 is shown.
  • Reservation information DB235 is the user identification information for all registered users of program recommendation server 3 (user This is a data structure in which user identification information for managing (ID) is registered in the column direction, and reserved program information that the user has reserved for recording is registered in the row direction corresponding to each user identification information.
  • users B, C, and D are registered. Users B, C, and D indicate registered users other than User A, and reserved program information corresponding to the users B, C, and D is registered in the row direction of each user.
  • user B is associated with program A, program C, program D and program E, and reserved program information
  • user C is referred to as program X, program Y, program ⁇ and program S.
  • Reservation program information is associated
  • user D is associated with program ⁇ , program ⁇ , program C and program ⁇ and V, and reservation program information!
  • FIG. 8 ( ⁇ ) is a diagram showing a result of grouping users having reservation information of program ⁇ .
  • the result of grouping users having reservation information of program A by the community reservation information statistics unit 236 is shown.
  • all users other than user C have reservation information for program A! /, So users A, B, and D other than user C are grouped.
  • FIG. 8C is a diagram showing a reservation rate of programs other than program A in a group in which all users who have reserved program A are grouped.
  • the reservation frequency of programs other than program A is ranked by the community reservation information statistics unit 236 in a group composed of users who have reserved program A.
  • program C is most frequently reserved in addition to program A, and then program B, program D, and program E are reserved.
  • the program reservation rate ranking is normalized by the number of grouped users, that is, 3 people, and the program C reservation rate is calculated as 100%, and programs B, D, and E are calculated as 67%. .
  • normalization may be performed by the total frequency of ranking.
  • the total frequency is 9. Therefore, the probability of program C is normalized to 33%, and the probability of program B, program D, and program E is normalized to 22%.
  • the reservation probability for each program in the group is obtained, so that an accurate ranking can be generated.
  • a second embodiment of the present invention will be described.
  • user operation information for each program is collected in the program recommendation server, and users are grouped based on user operations for the same program, and the user's favorite programs in the group are ranked.
  • recommended programs specific to groups are extracted and recommended programs are provided to users.
  • the recommended scenes and recommended time zones in a program are provided by aggregating user operations for a part specified on the time axis in the program rather than collecting user operation information for each program. To do.
  • a user operation for marking a user's favorite scene in a program will be described as a user operation for a part specified on the time axis in the program.
  • Marking is the marking of a favorite scene while the user is watching a broadcast program or a recorded program. For example, the user keeps pressing a predetermined favorite scene button between favorite scenes. Marking by entering the start time and end time of the favorite scene, marking to specify the duration of the favorite scene by operating the button at the start time of the favorite scene, and at the end time of the favorite scene For example, you can mark the duration of favorite scenes by operating buttons.
  • the program viewing terminal for each user is marked with! /
  • the program is marked for each user, and the marking information and the program identification information are transmitted to the program recommendation server.
  • the program recommendation server groups users marking at the same time, users with similar temporal markings, or users with overlapping marking times, and aggregates marking information within the group.
  • the recommended scene specialized in is generated and the recommended scene is provided to the user.
  • FIG. 9 is a timing chart for explaining the marking method for the specific programs of user A and user B and the marking totaling method.
  • a program stream 500 shown in FIG. 9 shows the time course of a broadcast program that progresses in the right direction in the drawing.
  • the program stream 500 is composed of continuous program frames.
  • user A is marking the specific program.
  • User A marks a scene between time T1 and time ijT3 (first marking 501) and marks a scene between time T6 and time T8 (second time) in this specific program. Marking 502).
  • User B marks the scene from time T2 to time T4 (first marking 503) and marks the scene from time T5 to time T7 in the specific program (second marking). 504) and marking the scene between time T9 and time T10 (third marking 505).
  • the user A's program viewing terminal transmits the user A's user information, the program identification information of the specific program, and the user A's marking information to the program recommendation server.
  • the marking information represents the time marked in a specific program, and includes, for example, the time when marking is started and the time when marking is finished.
  • the marking start time T1 and marking end time IJT3 in the first marking 501 and the marking start time T6 and marking end time T8 in the second marking 502 are generated as marking information.
  • the user B's program viewing terminal sends the user B's user information, the program identification information of the specific program, and the user B's marking information to the program recommendation server.
  • marking start time ⁇ IJT2 and marking end time ⁇ ⁇ ⁇ ⁇ IJT4 in the first marking 503, marking start time T5 and marking end time T7 in the second marking 504, and the third marking 503 Marking 505 at the start of marking ⁇ IJT9 and marking end time T10 are generated as marking information.
  • user B views the specific program earlier than user A and transmits the marking information. Therefore, when user A transmits the marking information, the marking information of user B is not displayed.
  • the following explanation is given assuming that the program is already registered in the program recommendation server.
  • the user information is given to the user from the program recommendation server by registering the user information in the program recommendation server, and is managed in the program viewing terminal used by the user. It is done.
  • the program identification information is given for each program! /, The program identification information for identifying the program, and the identification indicated by the broadcast date / time of the program, channel information and broadcast station identification information. Information that can be misaligned.
  • the marking information includes a marking start time and a marking end time.
  • time T1 is included as the marking start time
  • time T3 is included as the marking end time. If the marking time is specified by the marking start time and marking width by the user, the marking time is changed to the marking start time and the marking end time and transmitted.
  • the program recommendation server When receiving the user A marking information from the user A program viewing terminal, the program recommendation server analyzes the received marking information and groups users having similar marking information. Note that users having similar marking information are users whose marking positions coincide in time and users who have overlapping marking positions. Also, when determining the overlap of marking positions, in order to accurately determine the identity of user preferences, it is determined whether there is an overlap of 50% or more over the entire marking time, and 50% or more Group users with overlapping.
  • a first overlap 506 and a second overlap 507 indicate the overlap between the user A marking information and the user B marking information.
  • the total time of the first overlap 506 and the second overlap 507 is 50 with respect to the total marking time of user A (the total time of user A's first marking 501 and second marking 502).
  • User A and User B are grouped as the same group because they are more than%. In this embodiment, it is assumed that a group is composed of only user A and user B. However, all users with overlapping marking times of 50% or more are grouped into the same group.
  • the users are grouped based on the user's marking operation on the program.
  • Fig. 10 is a graph showing the marking frequencies of programs B and C in which similar marking information exists in programs other than the specific program of the grouped user. It is.
  • the frequency distribution graph 600a in FIG. 10 groups users having marking information similar to the marking information of the specific program of user A, and displays similar marking information for programs other than the specific program.
  • Program B and program C are extracted, and the frequency distribution indicates the overlap of marking information of users in the groups in program B and program C.
  • the first peak 601 and the second peak 602 show high frequencies.
  • Program C the first peak 603 and the second peak 604 show high frequencies. This is because in a group of users with marking information similar to the marking information for user A's specific program, program B first peak 601, program B second peak 6 02, program C first Show that many markings have been made at peak 603 and the second peak 604 of program C! /.
  • the frequency distribution graph 600b in Fig. 10 shows programs of all registered users of the program recommendation server as groups including a group of users having marking information similar to the marking information of the specific program of user A. This is a frequency distribution showing the overlap of marking information in B and Program C.
  • the frequency distribution graph 600b of all users a relatively large number of markings are performed at the first peak 605 and the second peak 606 in the program B.
  • the marking frequency is low on the first peak 607 and the second peak 608 as a whole!
  • the frequency distribution graph 600c in Fig. 10 shows the frequency obtained by normalizing the marking frequency of a group consisting of users with marking information similar to the marking information of user A with the total marking time of all users in the group.
  • the distribution graph 600a shows the result of subtracting the frequency distribution graph 600b obtained by normalizing the marking frequency of all users by the total marking time of all users.
  • the first peak 601 in the group in program B and the first peak 605 of all users have a time lag, so the first difference peak 609 of program B is generated. .
  • the second peak 602 in the group of program B has a marking frequency almost equal to the second peak 606 of all users. 610 does not have a large marking power.
  • the frequency distribution within the group shows that the first peak 603 and the second peak 604 have a high marking frequency, but the frequency distribution of all users Neither peak 607 of 1 nor peak 608 of 2 has a high frequency. Therefore, in the program C, the first difference peak 611 and the second difference peak 612 have high frequencies.
  • the difference frequency distribution graph 600c in FIG. 10 performs threshold determination based on the marking frequency of the difference for each program and a predetermined threshold 620, and recommends scenes having a marking frequency higher than the threshold 620 as recommended scenes.
  • program B the scene from time T1 to time T2 of program B is generated as recommended scene 1
  • program C from time T3 to time T4 of program C is generated as recommended scene 2.
  • the recommended scene 3 is extracted from time T5 to time T6 of program C.
  • the recommendation degree for each program has priority over the program power having a large integrated value of the marking frequency on the time axis for each program of each recommended scene extracted in the frequency distribution of differences.
  • FIG. 11 is a block diagram showing the configuration of the program viewing terminal of the second embodiment
  • FIG. 12 is a block diagram showing the configuration of the program recommendation server of the second embodiment.
  • the program recommendation system of the second embodiment is a program recommendation system that is communicably connected to a program viewing terminal 5 such as a program recording device, and a plurality of program viewing terminals 5 via a general-purpose network 7 such as the Internet. Consists of Server 6
  • the configuration of the program recommendation system of the second embodiment is the same as the configuration of the program recommendation system shown in FIG. Originally, a configuration in which one program viewing terminal 5 is connected to the program recommendation server 6 will be described in order to simplify the explanation of the power to which a plurality of program viewing terminals 5 are connected.
  • the program viewing terminal 5 receives a program from a broadcast wave or an IP network, views the program, records the program, plays the recorded program, deletes the recorded program, Make a recording reservation.
  • the program viewing terminal 5 includes an antenna 701, a tuner 702, a TS decoder 703, CAS704, a signal number canceling unit 705, a demultiplexer 706, an MPEG Video decoder 707, an MPEG Audio decoder 708, an HDMI terminal 709, a recording encryption unit 713, a recording Control unit 714, recording medium 715, playback control unit 716, recording decoding unit 717, PSI extraction unit 718, EPG storage unit 719, key 720, infrared communication unit 721, marking management unit 722, marking storage unit 724, user identification unit 725, user information DB 726, marking transmission unit 727, recommended reception unit 728, recommended program information extraction unit 729 , A program record determination unit 730, a reservation management unit 731, a reservation memory 732, and a specific scene extraction
  • the program recommendation server 6 includes a marking receiving unit 750, a user management unit 751, a user attribute DB 752, a marking registration unit 754, a marking DB 755, a specialization generation unit 70, a recommended scene creation unit 759, and a recommendation transmission unit. Consists of 760.
  • the specialization generating unit 70 of the program recommendation server 6 includes a community marking statistical unit 756, an all-user marking statistical unit 757, and a community specializing unit 758.
  • the tuner 702 receives broadcast waves of a predetermined channel from broadcast waves such as terrestrial digital broadcast and BS digital broadcast, or IP broadcast transmitted by multicast, and sends the broadcast waves to the TS decoder 703. Output.
  • the TS decoder 703 demodulates the received broadcast wave in the general transport 'stream format and outputs it to the descrambling unit 705.
  • CAS 704 is a general Conditional Access System, and reads out the encryption key information from the IC card in which the user registration information and the program encryption key are recorded, and outputs them to the descrambling unit 705.
  • the descrambling unit 705 decrypts the encrypted broadcast signal demodulated by the TS decoder 703 based on the encryption key from the CAS 704, decrypts the encrypted program information and decrypts it. Output to multiplexer 706.
  • the demultiplexer 706 separates information multiplexed as program information. At least video information, audio information, and program management information are multiplexed in the program information. After separating these, the video information is extracted to the MPEG Video decoder 707, the audio information is extracted to the MPEG Audio decoder 708, and the program management information is extracted to PSI. Output to part 718.
  • the MPEG Video decoder 707 demodulates the video information from the demultiplexer 706, converts it into video data, and outputs it to the HDMI terminal 709.
  • the MPEG Audio decoder 708 demodulates the audio information from the demultiplexer 706, converts it into audio data, and outputs it to the HDMI terminal 709.
  • the HDMI terminal 709 is connected to an external HDMI terminal 710 via an HDMI cable.
  • the HDMI terminal 710 is connected to a monitor 711 and a speaker 7 Connected with 12.
  • HDMI terminals 709 and 710 are general video information and audio information interfaces.
  • the program viewing terminal 5, the monitor 711, and the speaker 712 mutually authenticate each other and share an encryption key.
  • the video data and audio data are encrypted with the shared encryption key and output to the monitor 711 and the speaker 712.
  • the monitor 711 is a general program video information display device, which decrypts the encrypted video data received at the HDMI terminal 710 and outputs the video data of the program.
  • the speaker 712 is a general program audio information output device that decrypts encrypted video data received at the HDMI terminal 710 and outputs program audio data.
  • the recording encryption unit 713 performs a signal processing for recording the received program information on the recording medium.
  • the recording encryption unit 713 encrypts the program information input from the demultiplexer 706 and outputs the encrypted program information to the recording control unit 714. Therefore, the recording encryption unit 713 performs encryption processing specific to the recording medium for recording the program information.
  • DVD-RAM uses CP RM (Content Protection for Rewritable Media) and Blu-ray ice cream HD-DVD uses AACS (Advanced Access Content System).
  • the recording control unit 714 controls the recording of the program information encrypted by the recording encryption unit 713 on the recording medium 715.
  • the recording control unit 714 records program information on the recording medium by performing modulation processing and error correction encoding processing specific to the recording medium.
  • Recording medium 715 is a computer-readable recording medium for recording program information.
  • a magnetic recording disk such as a hard disk, an optical disk such as a DVD or a Blu-ray disk, or a semiconductor memory such as an SD card.
  • magneto-optical recording media such as MO / MD are used.
  • the reproduction control unit 716 reads program information recorded on the recording medium 715.
  • the recording control unit 714, the recording medium 715, and the reproduction control unit 716 are generally configured as a drive system.
  • the recording decryption unit 717 performs decryption corresponding to the encryption of the recording encryption unit 713.
  • the recording decryption unit 717 decrypts the program information encrypted and recorded on the recording medium 715 and outputs the decrypted program information to the TS decoder 703.
  • the program information output to the TS decoder 703 is reproduced.
  • the live processing is the same as the playback processing of the program received by the antenna 701 described above.
  • PSI extraction section 718 extracts PSI (Program Specific Information) from the program management information extracted by demultiplexer 706.
  • PSI mainly contains information such as PMT (Program Map Table), EIT (Event Information Table), and TOT (Time Offset Table).
  • the PMT stores packet identification information such as images and sounds included in the program! Therefore, if packet identification information such as images and sounds can be obtained from the PMT, the program can be reproduced by extracting packets with the packet identification information.
  • the EIT includes information related to the program such as the program name, broadcast date and time, and broadcast content.
  • EPG Electronic Program Guide
  • the EPG storage unit 719 creates and stores EPG information using the EIT in the PSI extracted by the PSI extraction unit 718.
  • Key 720 accepts input from the user, and is composed of a remote control and a front panel.
  • the key 720 functions as a marking unit performed by the user for the program to be viewed.
  • the remote control is provided with a marking button, and the program is marked while the user presses the marking button.
  • the key 720 receives input of time information in a program to be marked from the user.
  • the infrared communication unit 721 is a light receiving unit for infrared signals from a general remote controller. While the marking button attached to the key 720 is being pressed, the infrared communication unit 721 generates a marking button pressing signal and outputs it to the marking management unit 722.
  • the marking management unit 722 receives the marking button press signal from the infrared communication unit 721 and determines that the marking button is pressed by the marking button press signal, the marking management unit 722 Time information is received from the PSI extraction unit 718 and output to the marking storage unit 724.
  • the PSI extracting unit 718 includes a time extracting unit 7181 and a PID extracting unit 7182 therein.
  • the time extraction unit 7181 extracts the playback time in the program by checking the time offset table (TOT) in the PSI.
  • the PID extraction unit 7182 extracts the PID that is the packet identification information of the packet of the video content that is currently being played back, and identifies the packet that is currently being played back.
  • the marking storage unit 724 stores V, time information marked in the program extracted by the marking management unit 722, or packet identification information group of the program being marked.
  • the marking storage unit 724 may store time information in association with the time in the program at the start of marking and the time in the program at the end of marking, or the packet of the program packet at the start of marking. Even if the identification information and the packet identification information of the packet of the program at the end of marking are associated with each other and stored as a packet identification information group, it is possible to register the packet.
  • the packet identification information of all packets being marked may be stored as one group.
  • These time information and packet information are stored in the marking storage unit 724 in association with the program identification information of the program being reproduced.
  • the program identification information is included in the PSI extracted by the PSI extraction unit 718.
  • the marking position time information and packet identification information corresponding to the program identification information are stored in the marking storage unit 724 as marking information.
  • the user identification unit 725 identifies a user who uses the program viewing terminal 5.
  • the user identification unit 725 identifies a user who uses the program viewing terminal 5 based on user information input using the key 720.
  • the user information DB 726 is a database in which user information of all users who use the program viewing terminal 5 is registered.
  • the user identification unit 725 identifies a user based on user information input using the key 720 and user information stored in the user information DB 726 in advance. Further, when the user identification unit 725 succeeds in user authentication, the user identification unit 725 outputs user information of the user currently in use to the marking transmission unit 727.
  • the marking transmission unit 727 is a general network interface, and after establishing a network with the program recommendation server 6 connected via the general-purpose network 7, the marking information stored in the marking storage unit 724 And the user information input from the user identification unit 725 are transmitted to the program recommendation server 6 together.
  • marking storage unit 724 associates and stores the user who has been marked in conjunction with the user identification unit 725, and the marking transmission unit 727 transmits the marking information that has been transmitted to the program recommendation server 6 and the untransmitted marking information. Marking information is managed so that it can be identified.
  • the recommendation receiving unit 728 recommends the program recommendation server 6 via the general-purpose network 7. Receive recommendation information about the program.
  • the recommended program information extraction unit 729 extracts recommended program information from the recommendation information received by the recommendation receiving unit 728.
  • the recommended program information is information that can uniquely identify a recommended program.
  • the recommended program information includes program identification information for identifying a program, broadcast date / time of a program, channel information, and broadcast station identification information for identifying a broadcast station. Includes information.
  • the recommended program information includes time information or packet identification information that can uniquely specify a recommended scene in the program.
  • the extracted recommended program information is output to the program record determination unit 730.
  • the program record determination unit 730 determines whether or not the program indicated by the program identification information is recorded in the recording medium 715 based on the program identification information indicated by the received recommended program information! Check. Further, when the program record determination unit 730 determines that the program indicated by the recommended program information is recorded, the recommended scene represented by the time information or the packet identification information in the program indicated by the recommended program information is recorded. Determine if! /. When determining that the recommended scene is recorded, the program recording determination unit 730 outputs the recommended program information to the specific scene extraction unit 733. Further, the program recording determination unit 730 determines that the program indicated by the recommended program information is recorded! /, NA! /, Or the recommended scene of the program is recorded! /, NA! /.
  • the program record determination unit 730 In the case of refusal, it is determined based on the program identification information of the program and the EPG information stored in the EPG storage unit 719 whether the program is the current program or later. When it is determined that the program record determination unit 730 is a program scheduled to be broadcast after the present time, the program record determination unit 730 outputs the program identification information to the reservation management unit 731.
  • the reservation management unit 731 performs recording reservation processing for the program indicated by the program identification information based on the program identification information from the program recording determination unit 730.
  • the reservation memory 732 stores the program identification information of the program reserved by the reservation management unit 731 in association with the user information input from the user identification unit 725.
  • the specific scene extraction unit 733 extracts the program indicated by the program identification information from the recording medium 715, and starts the recommended scene indicated by the recommended program information. Play the program from the time to the end time.
  • the marking receiving unit 750 is a multi-program connected to the general-purpose network 7. From the marking transmission unit 727 of the viewing terminal 5, the marking information of the program marked by each user and the user information of the user who performed the marking are received.
  • the marking information includes program identification information that can uniquely identify the marked program, or program broadcast date and time of the reserved program, channel information, and broadcast station identification information.
  • the marking information includes time information in the marked program! /, And includes packet identification information.
  • the received marking information and user information are output to the user management unit 751.
  • User attribute DB752 contains registered user information and, if necessary, user name, gender, address / phone number, manufacturer / model of program viewing terminal, resolution of connected monitor, and network of program viewing terminal.
  • User attribute information such as IDs is managed as a user registration list. The user performs user registration processing for program recommendation on the program recommendation server 6 in advance. In the user registration process, after user registration information such as user name setting and address / phone number notification is notified, the user information is generated and notified to the user on the program recommendation server 6 side. Store / manage user attribute information notified from the user in association with user information generated by DB752.
  • the user management unit 751 determines whether or not the user specified by the received user information is a registered user of the program recommendation server 6.
  • the user management unit 751 searches the user registration list stored in the user attribute DB 752 for user information that matches the received user information. When it is determined that the received user information is registered in the user attribute DB 752, it is determined that the user information is a registered user of the program recommendation server 6, and the processing is continued.
  • the marking registration unit 754 is received by the marking reception unit 750 when the user management unit 751 determines that the user is a registered user of the program recommendation server 6. Marking information for each user is associated with the received user information.
  • the community marking statistical unit 756 groups all users having marking information similar to the marking information as community groups.
  • the community marking statistics unit 756 aggregates marking information other than the target program of the marking information of all users belonging to the community group, normalizes the counting result by the total number of users belonging to the community group, and Calculate the marking rate for each program.
  • the community marking statistical unit 756 outputs the normalized marking rate to the community specializing unit 758.
  • the similar marking information described above refers to the marking position in the program indicated by the marking information received by the marking receiving unit 750 and the marking in the program indicated by the marking information stored in the marking DB 755.
  • the packet identification information in the program indicated by the received marking information and the packet identification information in the program indicated by the marking information stored in the marking DB 755 are overlapped. is there.
  • the overlap between the marking position in the program indicated by the received marking information and the marking position in the program indicated by the marking information stored in the marking DB 755 is 50% of the total marking time of the received marking information. % Or more is preferable.
  • the overlap between the packet identification information group in the program indicated by the received marking information and the packet identification information group in the program indicated by the marking information stored in the marking DB 755 is the total number of marking packets of the received marking information. Against 50% or more! / ,.
  • the All User Marking Statistics Unit 757 has a user attribute DB752. All registered users, that is, all registered users in the program recommendation server 6 are grouped as all user groups including community groups.
  • the all-user marking statistics unit 757 performs marking after grouping all users.
  • the marking information of all users is statistically processed to create a marking frequency for each program. This marking frequency is normalized by the total time of all markings of registered users or the total number of marking packets.
  • the created marking frequency is output to the community specialization unit 758 and the recommended scene creation unit 759.
  • the community specialization unit 758 subtracts the marking frequency calculated by the all-user marking statistical unit 757 from the marking frequency calculated by the community marking statistical unit 756, thereby grouping the communities grouped by the community marking statistical unit 756.
  • a marking frequency specialized for the group is created and output to the recommended scene creation unit 759.
  • the marking frequency for each program is subtracted for each program.
  • the recommended scene creation unit 759 Based on the marking frequency generated by the community specialization unit 758, the recommended scene creation unit 759 extracts a program having a marking frequency higher than a preset threshold as a recommended program. Also, the recommended scene creation unit 759 extracts, as recommended scene information, the start time and end time of the scene where the marking frequency exceeds the threshold value in each program, or packet identification information of the start packet and packet identification information of the end packet. .
  • the recommended scene creation unit 759 identifies program identification information for identifying a recommended program, or broadcast date and time of the recommended program, channel information on which the recommended program is broadcast, and a broadcasting station on which the recommended program is broadcast.
  • the recommended program information including broadcast station identification information and recommended scene information is created. Accordingly, the recommended scene creation unit 759 creates a recommended scene specialized for the community group.
  • the recommended scene creation unit 759 extracts a program having a marking frequency higher than a preset threshold! / As a popular program based on the marking frequency generated by the all-user marking statistics unit 757. To do. Also, the recommended scene creation unit 759 extracts the start time and end time of a scene whose marking frequency exceeds a threshold in each program, or packet identification information of the start packet and packet identification information of the end packet as popular scene information. To do. The recommended scene creation unit 759 broadcasts program identification information for identifying popular programs, broadcast date and time of popular programs, channel information for broadcasting popular programs, and popular programs. Popular program information including broadcast station identification information for identifying a broadcast station to be broadcast and popular scene information is created.
  • recommended program information including the start time and end time of the recommended scene specialized for the community group and including the program identification information of the program including the recommended scene is generated, and the popular scene starts.
  • the popular program information including the time and end time and including the program identification information of the program including the popular scene is generated and output to the recommended transmission unit 760.
  • the recommended transmission unit 760 transmits the recommended program information created by the recommended scene creation unit 759, including recommended program information including recommended scene information, and popular program information including popular scene information, to the program viewing terminal 5. .
  • the user A marks a part of the program A by the program viewing terminal 5 owned by the user A.
  • the program viewing terminal 5 provides the program recommendation server 6 with user information for identifying the user A, program identification information for identifying the program A, and marking information for identifying the marked position in the program. Send.
  • the marking receiving unit 750 of the program recommendation server 6 is a program viewing terminal owned by the user A.
  • the user management unit 751 determines whether or not the received user information is stored in the user attribute DB 752, and if it is stored, the processing is continued assuming that the user A is a registered user of the program recommendation server 6.
  • the marking registration unit 754 associates with the user information for identifying the user A, the program identification information for identifying the program A, the marking information for identifying the marked position in the program, Register the marking in DB755.
  • the Community Marking Statistics Department 756 extracts all users with marking information similar to the marking information of Program A from the marking DB 755 to form a community group.
  • the community marking statistics unit 756 statistically processes marking information of programs other than program A in the community group.
  • the community marking statistics unit 756 calculates the marking frequency of programs other than program A in the community group. , Output to Community Specialization Department 758.
  • the all-user marking statistical unit 757 extracts all users registered in the user attribute DB 752 of the program recommendation server 6 from the marking DB 755 and includes all user groups including the community group formed by the community marking statistical unit 756. Form.
  • the all-user marking statistics unit 757 extracts marking information associated with user information in all user groups from the marking DB 755, and statistically processes the marking information of programs other than program A. Then, the all-user marking statistical unit 757 calculates the marking frequency of programs other than the program A in all user groups, and outputs it to the community specializing unit 758 and the recommended scene creating unit 759.
  • the community specializing unit 758 subtracts the marking frequency of programs other than the program A created by the all-user marking statistical unit 757 from the marking frequency of programs other than the program A created by the community marking statistical unit 756. . As a result, the community specializing unit 758 creates a marking frequency of the program specialized for the community group to which the user who marked a predetermined position in the program A belongs, and outputs it to the recommended scene creating unit 759.
  • the recommended scene creation unit 759 has a marking frequency higher than the threshold value based on the marking frequency specialized for the community group created by the community specialization unit 758!
  • the recommended program information is created by extracting the recommended scene information indicating the higher marking frequency! / And the scene start time and end time.
  • the recommended scene creation unit 759 also includes program identification information of a program with a marking frequency higher than the threshold based on the generalized marking frequency of all registered users created by the all-user marking statistics unit 757, and the threshold value.
  • the popular program information is created by extracting the popular scene information indicating the start time and end time of the scene with higher marking frequency! /.
  • the recommendation transmission unit 760 transmits the recommended program information and popular program information created by the recommended scene creation unit 759 to the program viewing terminal 5 of the user A.
  • FIGS. 13 to 15 are flow charts showing the processing flow of the program recommendation system according to the second embodiment, and FIG. 13 is the marking information in the program viewing terminal according to the second embodiment.
  • FIG. 14 is a flowchart showing a flow of processing in the program recommendation server according to the second embodiment, and FIG. 15 is a program according to the second embodiment.
  • 6 is a flowchart showing a flow of processing after receiving recommendation information in the viewing terminal.
  • the user identification unit 725 displays a user authentication screen for user authentication for the user on the monitor 711, and the key 720 accepts input of user information by the user, and the program viewing terminal 5 The login to is accepted (step S41).
  • the user identification unit 725 determines whether or not the user authentication is successful, that is, whether or not the input user information matches the user information registered in the user information DB 726 in advance ( Step S42).
  • the user identification unit 725 outputs an error message to the monitor 711 and ends the subsequent processing (step S43).
  • step S42 if it is determined that the registered user of the program viewing terminal 5 has no error in the input user information (YES in step S42), the playback control unit 716 performs processing for the program recorded on the recording medium 715. It is determined whether or not a reproduction instruction operation has been performed (step S44). Here, when it is determined that there is no reproduction instruction operation (NO in step S44), reproduction control unit 716 waits until there is a reproduction instruction operation from the user.
  • playback control unit 716 plays back the program selected by the user from recording medium 715 and outputs it to monitor 711. Playback processing is executed (step S45).
  • the marking management unit 722 determines whether or not the marking operation by the user has been started (step S46).
  • the infrared communication unit 721 senses an infrared signal output when the marking button of the remote controller is pressed, it generates a marking button pressing signal and outputs it to the marking management unit 722.
  • the marking management unit 722 determines that the marking operation has been started when the marking button pressing signal is input.
  • the time extraction unit 7181 extracts the playback time in the program from the PSI multiplexed in the program broadcast, and performs the marking operation.
  • step S47 Is temporarily stored in the marking storage unit 724 as the marking start time when the operation is started (step S47). On the other hand, if it is determined that the marking operation has not started (NO in step S46), the process proceeds to a determination process for determining whether or not the program being played has ended (step S50).
  • the marking management unit 722 determines whether or not the marking operation by the user is completed (step S48).
  • the infrared communication unit 721 ends the generation of the marking button pressing signal.
  • the marking management unit 722 determines that the marking operation is finished when the marking button pressing signal is not input.
  • step S48 If it is determined that the marking operation has been completed (YES in step S48), the time extraction unit 7181 reads the program from the PSI multiplexed in the program in the same manner as when the marking start time is extracted. The reproduction time is extracted and temporarily stored in the marking storage unit 724 as the marking end time when the marking operation is completed (step S49). On the other hand, when it is determined that the marking operation has not been completed (NO in step S48), the marking management unit 722 waits until the marking operation is completed.
  • the marking transmission unit 727 determines whether or not the program being reproduced has ended (step S 50). If it is determined that the program is finished (YES in step S 50), the marking transmission unit 727 reads the marking start time, marking end time, and playback performed in the marking storage unit 724. The program identification information of the program and the user information of the user identified by the user identification unit 725 are transmitted to the program recommendation server 6 as marking information (step S51). On the other hand, if it is determined that the program being played has not ended (NO in step S50), the playback process in step S45 is continued.
  • the marking receiving unit 750 of the program recommendation server 6 receives the marking information transmitted by the marking transmitting unit 727 of the program viewing terminal 5 (step S61).
  • the user management unit 751 determines whether or not the user authentication has succeeded, that is, marking. It is determined whether or not the user information included in the marking information received by the receiving unit 750 matches the user information registered in advance in the user attribute DB 752 of the program recommendation server 6 (step S62).
  • the user management unit 751 creates an error message to that effect and causes the program viewing terminal 5 to receive an error. A message is transmitted, and the subsequent processing is terminated (step S63).
  • the program viewing terminal 5 that has received the error message outputs to the monitor 711 an error notification indicating that the user authentication has failed.
  • the marking registration unit 754 uses the marking information received by the marking reception unit 750 as the user's user.
  • the marking is associated with the information and registered in the marking DB755 (step S64).
  • the community marking statistics unit 756 extracts all the users with marking information similar to the marking information received by the marking receiving unit 750, and groups them as community groups.
  • the similar marking information is the same program identification information as the program identification information indicated by the marking information received by the marking receiving unit 750, and overlaps with the marked time in the program and the packet identification information of the marked program. This is marking information.
  • marking information that overlaps 50% or more of the marked time and marked packet identification information for each user in the same program is determined as similar marking information.
  • the community marking statistics unit 756 includes the marking received by the marking receiving unit 750 among the marking information registered for all users in the community group composed of users having similar marking information. Marking information other than the program indicated by the information is aggregated for each program (step S66).
  • the community marking statistics unit 756 counts, if there is a user marking for each unit time in each program, and calculates the frequency distribution on the time axis for each program.
  • the community marking statistic unit 756, if there is a user who performed marking for each packet in each program calculates the frequency distribution in units of packets for each program.
  • the community marking statistics unit 756 normalizes the aggregated results by the total marking time or the total number of marking packets of all users grouped in the community group (step S67).
  • the community marking statistics unit 756 outputs the normalized result to the community specialization unit 758.
  • the all-user marking statistics unit 757 extracts users registered in the user attribute DB 752, that is, all users registered in the program recommendation server 6, and has similar marking information. Grouping is performed as all user groups including community groups composed of users (step S68).
  • the all-user marking statistics unit 757 extracts the marking information of all users from the marking DB 755, and totals the marking information of programs other than the program indicated by the marking information received by the marking receiving unit 750. (Step S69).
  • the total user marking statistics unit 757 counts, if there is a user marking every unit time in each program, and calculates the frequency distribution on the time axis for each program.
  • the total user marking statistics unit 757 counts, if there is a user who marked each packet in each program, and calculates the frequency distribution in units of packets for each program.
  • the total user marking statistical unit 757 normalizes the aggregated result with the total marking time of all registered users! /, Based on the total number of marking packets (step S 7 0). ).
  • the normalized result is output to the community specializing unit 758 and the recommended scene creating unit 759.
  • the community specializing unit 758 performs normalized normalization within all user groups based on the normalized marking aggregation result (marking frequency) within the community group composed of users having similar marking information. Subtract the marking result (marking frequency). Then, the recommended scene creation unit 759 determines the threshold value of the subtraction result, and indicates the marking frequency higher than the threshold! /, The program identification information of the program, and the recommended start time and end time of the scene with the marking frequency higher than the threshold value.
  • the recommended program information is created by extracting the scene information (step S71).
  • the start time is the time position where the marking frequency is above the threshold
  • the end time is the time position where the marking frequency is below the threshold.
  • the start time and end time of all the extracted recommended scenes correspond to the corresponding program identification information.
  • it is output to the recommended transmitter 760 as recommended program information.
  • the recommended scene creation unit 759 determines the threshold value of the normalized marking count result in all user groups created by the all user marking statistics unit 757, and the marking frequency is higher than the threshold value! /
  • the popular program information is created by extracting the program identification information of the program and the popular scene information indicating the start time and end time of the scene having the marking frequency higher than the threshold (step S72).
  • the extracted start time and end time of all popular scenes are output to the recommended transmission unit 760 as popular program information in association with corresponding program identification information.
  • the recommendation transmitting unit 760 transmits the recommended program information and popular program information created by the recommended scene creating unit 759 as recommended information to the program viewing terminal 5 (step S73).
  • the recommendation receiving unit 728 of the program viewing terminal 5 receives the recommended information including the recommended program information and the popular program information transmitted by the program recommendation server 6 (step S81). .
  • the recommended program information extraction unit 729 determines whether or not the recommended information received by the recommendation receiving unit 728 and the recommended program information have been extracted (step S82).
  • the recommended program information extraction unit 729 prompts the user to select between the recommended program information and the popular program information! /.
  • the recommended program information extraction unit 729 extracts the recommended program information
  • the popular program information is selected, the recommended program information extraction unit 729 extracts the popular program information. To do. It should be noted that setting for extracting both recommended program information and popular program information does not matter. As a result, it is possible to provide the user with more options.
  • the program record determination unit 730 uses the recommended scene information included in the recommended program information extracted by the recommended program information extraction unit 729. Based on the program identification information corresponding to the accompanying recommended scene, it is determined whether or not the program including the recommended scene has been recorded on the recording medium 715 (step S83). In step S83, it is preferable to determine whether or not the recommended scene itself is recorded on the recording medium 715 based on the start time and end time of the recommended scene as well as the program recording. Here, the program including the recommended scene, or the recommended scene If it is determined that no object is recorded on the recording medium 715 (NO in step S83), the process proceeds to step S88.
  • the specific scene extraction unit 733 displays the recommended program on the monitor 711. Display (step S84). At this time, the specific scene extraction unit 733 may display the start time and end time of the recommended scene, the time length of the recommended scene, and the captured image or video in the recommended scene, in addition to the program name.
  • the program recommendation server 6 according to the frequency distribution of each recommended scene created by the recommended scene creation unit 759, based on the value obtained by integrating the frequency distribution for each recommended scene or the peak frequency of the frequency distribution.
  • a priority may be assigned to each recommended scene and transmitted to the program viewing terminal 5.
  • the specific scene extracting unit 733 may display the recommended scene with the size of the text in proportion to the priority or the size of the gap. This allows the user to determine the priority of the program scene at a glance.
  • the specific scene extraction unit 733 determines whether or not a user has issued a recommended scene selection and playback instruction (step S85). If it is determined that the recommended scene playback instruction has not been issued (NO in step S85), the process proceeds to step S88. On the other hand, if it is determined that the recommended scene playback instruction has been issued (YES in step S85), the specific scene extraction unit 733 determines the program identification information and recommended scene of the program selected by the user from the recommended program information. And the start time of.
  • the playback control unit 716 reads program information corresponding to the program identification information extracted by the specific scene extraction unit 733 from the recording medium 715, and recommends the recommended scene from the start time extracted by the specific scene extraction unit 733. Is played (step S86).
  • the specific scene extraction unit 733 determines whether or not the recommended scene reproduction processing has ended (step S87). If it is determined that the recommended scene playback process has been completed! /, NA! / (NO in step S87), the specific scene extraction unit 733 waits until the recommended scene playback process ends. [0227] On the other hand, if it is determined that the recommended scene playback process has been completed (YES in step S87), the specific scene extraction unit 733 displays all recommended scenes included in the recommended program information transmitted by the program recommendation server 6. It is determined whether or not the information reproduction process is completed (step S 88). When it is determined that all the recommended scene information has been reproduced! /, NA!
  • step S88 the process returns to step S83, and the remaining recommended scene information is processed. .
  • step S88 the process returns to step S83, and the remaining recommended scene information is processed.
  • program record determination unit 730 extracts recommended program information. Whether or not the program including the popular scene has been recorded on the recording medium 715 based on the program identification information corresponding to the popular scene associated with the popular scene information included in the popular program information extracted by the section 729. (Step S89). In step S89, it is preferable to determine whether or not the popular scene itself is recorded on the recording medium 715 based on the start time and end time of the popular scene as well as the program recording. If it is determined that the program including the popular scene or the popular scene itself has not been recorded in the recording medium 715 (NO in step S89), the process proceeds to step S94.
  • the specific scene extraction unit 733 displays the popular program on the monitor 711. Display (step S90). At this time, the specific scene extraction unit 733 may display the start time and end time of the popular scene, the time length of the popular scene, and a captured image or video in the popular scene, simultaneously with the program name.
  • the frequency distribution for each popular scene is integrated or based on the peak frequency of the frequency distribution. Priorities may be assigned to each popular scene and transmitted to the program viewing terminal 5.
  • the specific scene extraction unit 733 may display the popular scene with the size of text proportional to the priority or the size of the captcha. This allows the user to determine the priority of the program scene at a glance.
  • the specific scene extraction unit 733 determines whether or not the user has issued a selection and playback instruction for the popular scene (step S91).
  • step S91 If it is determined that the popular scene playback instruction has not been issued (NO in step S91), the process proceeds to step S94.
  • the specific scene extraction unit 733 determines the program identification information and popular scene of the program selected by the user from the popular program information. And the start time of. Then, the playback control unit 716 reads program information corresponding to the program identification information extracted by the specific scene extraction unit 733 from the recording medium 715, and starts the popular scene from the start time extracted by the specific scene extraction unit 733. Is played (step S 92).
  • the specific scene extraction unit 733 determines whether or not the popular scene reproduction processing has ended (step S93). If it is determined that the popular scene playback process has ended! /, NA! / (NO in step S93), the specific scene extraction unit 733 waits until the popular scene playback process ends.
  • step S93 when it is determined that the popular scene playback process has ended (YES in step S93), the specific scene extraction unit 733 displays all popular scenes included in the popular program information transmitted by the program recommendation server 6. It is determined whether or not the information reproduction process has been completed (step S 94). If it is determined that all popular scene information playback processing has been completed! /, NA! / (NO in step S94), the process returns to step S89, and the remaining popular scene information is processed. . On the other hand, if it is determined that all popular scene information playback processing has ended (YES in step S94), all processing ends.
  • step S83 in addition to determining whether a program including a recommended scene has been recorded! /, The program record determination unit 730 has a program including a recommended scene! / If it is determined that the user has played back, the recommended scene may not be played back, and the next recommended scene may be played back. To this end, a replay flag is assigned to the portion reproduced for the program recorded on the recording medium 715 together with the user information of the replayed user in association with the time axis. This allows each user in the program to If the recommended scene has already been reproduced! /, It is not necessary to display the recommended scene in step S84.
  • the user directly marks the program preference scene, the preference scene for each user is managed by the program recommendation server 6, and similar marking information is obtained. Grouping users, generating a marking frequency within the group, and recommending other scenes relating to other preferences to the user based on the marking frequency. Therefore, the user can efficiently view only the minimum necessary scenes than when the program itself is introduced. Also, even if there are programs that are marked by almost all users, such as popular programs, when the recommended program information in the group is generated, the viewing tendency of the entire user is deleted, and It is possible to recommend scenes in the program specialized for The.
  • FIG. 16 is a diagram illustrating an example of a data structure of marking information transmitted / received between the marking transmission unit 727 and the marking reception unit 750.
  • the marking information shown in FIG. 16 is the data structure when the program specified by the user power S specified by the user information “A” and the program ID “T” is marked for 7 minutes from the start of the program.
  • the program viewing terminal 5 transmits to the program recommendation server 6 marking information including user information “A”, program ID “1”, and time information indicating that the program has been marked for 7 minutes from the start.
  • FIG. 17 is a diagram showing an example of a data structure of marking information for each registered user of the program recommendation server 6 stored in the marking DB 755. Since the marking information including the user ID “A” and the program ID “T” has been sent now, it is confirmed by the user management unit 751 whether or not the user ID “A” is registered in the user attribute D B752. . When the user ID “A” is registered, the received marking information shown in FIG. 16 is registered in the marking DB 755. As a result, as shown in FIG. 16, marking information 1001 relating to the user ID “A” is added to the marking DB 755.
  • the marking information 1002 includes a user ID “B”, a program ID 'T', and time information indicating that the program has been marked for 2 to 8 minutes.
  • 03 includes user ID “C”, program ID “1”, and time information indicating that the program has been marked for 5 to 12 minutes.
  • Marking information 1004 includes user ID “C” and program ID. Includes 'T' and time information indicating that the program was marked twice from 1 to 8 minutes and from 16 to 25 minutes
  • the community marking statistical unit 756 extracts users who have the same thread and marking as the received marking information, and determines the similarity of the marking information for grouping.
  • FIG. 18 is a timing chart showing the marking information shown in FIG. 17 on the time axis.
  • the marking time 1101 in the program “1” of the user “A” is 7 minutes from the start position of the program to 7 minutes later.
  • Marking The marking time 1102 for the user “B” program “1” stored in the DB 755 is 7 minutes from 2 minutes to 9 minutes after the program start position. Therefore, the marking time 1101 for user “A” and the marking time 1102 for user “B” overlap each other by 50% or more, and user “A” and user “B” are grouped into the same group.
  • the marking time 1101 in the program “1” of the user “A” is 7 minutes from the start position of the program to 7 minutes later.
  • Marking The marking time 1102 for the user “B” program “1” stored in the DB 755 is 7 minutes from 2 minutes to 9 minutes after the program start position. Therefore, the marking time 1101 for user “A” and the marking time 1102 for user “B” overlap each other by 50% or more,
  • the marking time 1103 in the program “1" of the user “C” stored in the marking DB 755 is 7 minutes from 5 minutes to 12 minutes after the program start position. Therefore, the marking time 1101 for user “A” and the marking time 1103 for user “C” do not overlap each other by 50% or more, and user “C” is not grouped into user “A” group. Yes.
  • the marking time 1104 in the program “1" of the user “D” stored in the marking DB755 is 7 minutes from 1 minute to 8 minutes after the program start position, and the marking time 1105 is , 7 minutes from 16 minutes to 25 minutes after the start of the program. Therefore, the marking time 1101 for user “A” and the marking time 1104 for user “D” have an overlap of 50% or more, and user “D” is grouped into the group of user “A”.
  • FIG. 19 is a diagram illustrating an example of a data structure of the marking DB 755 in which marking information including program IDs other than the program ID 'T' is stored.
  • the data structure of the marking DB 755 shown in Fig. 19 has the marking information similar to the marking information of the user "A” as described above, and the marking information of the user "B” and the user “D” grouped together.
  • marking information of the user “Z” is stored, and marking information including a program ID other than the program ID “1” is stored.
  • program ID "2" and program ID "4" are associated with user ID "A”.
  • the marking information 1201 includes a user ID “A”, a program ID “2”, and time information indicating that the program has been marked from 0 to 40 minutes.
  • the marking information 1202 includes a user ID “A”, It includes program ID “4” and time information indicating that the program has been marked for 30-70 minutes and 90-; 110 minutes.
  • the marking information 1203 includes user ID “B”, program ID “2”, and time information indicating that the program has been marked for 10 to 50 minutes.
  • Marking information 1204 includes user ID “B”. , Including program ID “3” and time information indicating that the program has been marked for 10 to 50 minutes.
  • Marking information 1205 includes user ID “B”, program ID “4”, and program number 30. And time information indicating marking up to 70 minutes.
  • Marking information 1206 includes user ID “Z”, program ID “3”, and time information indicating that the program has been marked for 10 to 50 minutes, and marking information 1207 includes user ID “Z”.
  • Marking information 1208 includes user ID “D”, program ID “2”, and time information indicating that the program has been marked for 20 to 40 minutes.
  • Marking information 1209 includes user ID “D”, program ID It includes ID “3” and time information indicating that the program has been marked for 20 to 30 minutes.
  • the marking information 1210 includes user ID “D”, program ID “4”, program 40 to 50 minutes and Including time information indicating marking from 100 to 120 minutes. Mu
  • FIG. 20 is a conceptual diagram for explaining a method of counting marking information in the drape in the community marking statistical unit 756 of the program recommendation server 6 of the present program recommendation system.
  • the first 0 to 60 minutes is the program ID "2" playback time
  • 0 to 60 minutes is the program ID "3" playback time
  • 0 to 120 minutes is the program ID. It represents the playback time of “4”.
  • Marking times 1301, 1302, and 1303 shown in FIG. 20 indicate the marking times of the user “A”.
  • the marking time 1301 is 40 minutes from the start of the program “2” shown by the marking information 1201 in FIG. 19 to 40 minutes later.
  • the marking time 1302 is 40 minutes from 30 minutes to 70 minutes after the program start position of the program “4” indicated by the marking information 1202 in FIG.
  • the marking time 1303 is 20 minutes from 90 minutes to 110 minutes after the program start position of the program “4” indicated by the marking information 1202 in FIG.
  • Marking times 1304, 1305, and 1306 shown in FIG. 20 indicate the marking times of the user “B”.
  • the marking time 1304 is 40 minutes from 10 minutes to 50 minutes after the program start position of the program “2” indicated by the marking information 1203 in FIG.
  • the marking time 1305 is 40 minutes until 50 minutes after 10 minutes after the program start position of the program “3” indicated by the marking information 1204 in FIG.
  • the marking time 1306 is 40 minutes from 30 minutes to 70 minutes after the program start position of the program “4” indicated by the marking information 1205 in FIG.
  • Marking times 1307 and 1308 shown in FIG. 20 indicate the marking times of the user “Z”.
  • the marking time 1307 is 40 minutes from 10 minutes to 50 minutes after the program start position of the program “3” indicated by the marking information 1206 in FIG.
  • the marking time 1308 is 40 minutes from 20 minutes to 60 minutes after the program start position of the program “4” indicated by the marking information 1207 in FIG.
  • Marking time 1309 is indicated by marking information 1208 in Fig. 19. It is 20 minutes from 20 minutes to 40 minutes after the program start position of program “2.”
  • Marking time 1310 is 20 of the program start position of program “3” shown by marking information 1209 in FIG. 10 minutes from 30 minutes to 30 minutes.
  • the marking time 1311 is 10 minutes from 40 minutes to 50 minutes after the program start position of the program “4” indicated by the marking information 1210 in FIG.
  • the marking time 1312 is 20 minutes from 100 minutes to 120 minutes after the program start position of the program “4” indicated by the marking information 1210 in FIG.
  • the marking frequency distribution of FIG. 20 shows the statistical results of the marking information of the programs “2”, “3” and “4” of the community group.
  • the statistical processing in this embodiment is totaled so as to form a frequency distribution by counting the number of markings for each user in unit time (10 minutes in this example).
  • This frequency distribution is normalized by the total marking time of users in the community group, and then the normalized marking statistics for all user groups are subtracted to generate a marking frequency distribution specialized for the community group. Is done.
  • the normalized statistical results for programs “2”, “3”, and “4” are calculated as a distribution that is close to 0 at any unit time. Subtracting the result is almost the same as the marking frequency distribution within the community group.
  • the recommended scene is generated by the recommended scene creation unit 759 by performing threshold determination using a predetermined threshold 1316 based on the normalized marking frequency distribution in the community group.
  • program scene 1313 for program "2" that exceeds threshold 1316 for 20 to 40 minutes, program scene 1314 for program "3" for 20 to 30 minutes, and program "4" for 30 to 50 minutes A program scene is created as a recommended scene. Then, recommended information including time information for specifying a recommended scene and program identification information for identifying a program including the recommended scene is transmitted to the program viewing terminal 5. Also, priorities are given in the order of program scene 1315, program scene 1313, and program scene 1314 having the highest integrated value of the frequency distribution of each program scene.
  • the recommendation receiving unit 728 of the program viewing terminal 5 receives this recommendation information, and the program recording determination unit 730 determines whether each recommended scene has been recorded in the recording medium 715, and the recording medium 71 5 Those not recorded in are deleted from the recommendation information. Further, the recording medium 715 also deletes the recommended scene that has already been reproduced by the user and does not display the recommended scene. In this example, the recommended scene 1313 and the recommended scene 1315 have already been reproduced by the user “ ⁇ ”, and therefore the recommended scene 1313 and the recommended scene 1315 are recommended for the user “ ⁇ ”. Not recommended.
  • FIG. 21 is a diagram illustrating an example of the data structure of the marking DB of the second application example of the second embodiment.
  • a user having marking information similar to the marking information for the user program “1” received by the marking receiving unit 750 is grouped to display a program for all users in the group. Indicates marking information for programs other than “1”.
  • the data structure shown in FIG. 21 is different from the data structure shown in FIG. 19 in that a flag 1400 indicating the type of user operation is provided.
  • the data structure of DB755 has the flag 1400 as described above.
  • the marking information transmitted from the program viewing terminal 5 to the program recommendation server 6 is given a flag indicating the type of operation for the program. For example, when marking 10 to 50 minutes of program “A”, program identification information indicating program “A”, marking time information or packet identification information indicating 10 to 50 minutes, and marking operation are performed. Marking information consisting of identification information is sent. In this case, the user operation is not limited to the marking operation. Identification information for identifying operation information such as reproduction, deletion, or fast-forwarding may be added.
  • the data structure of FIG. 21 is the user “B” with marking information similar to the marking information representing the marking to the user “A” program “1” received by the marking receiver 750, This is a result of grouping “C” and “D” and extracting marking information other than program “1” from the marking DB 755 within the group.
  • User ID "A” is associated with program ID "2" in addition to program ID 'T'. Marking information 1401 is fast-forwarded for 0 to 5 minutes, 15 to 35 minutes, and 50 to 80 minutes of program “2”, and 5 to; 15 minutes, 35 to 50 minutes, and 80 to 95 minutes are played back. Marking time and flag.
  • “F” represents a fast forward operation
  • “P” represents a reproduction operation
  • “M” represents a marking operation
  • “D” represents an erasing operation.
  • User ID "B” is associated with program ID "2” in addition to program ID 'T'. Marking information 1402 is a mark indicating that the program “2” is operated for 30-35 minutes, 45-65 minutes and 70-95 minutes, 35-45 minutes are marked, and 65-70 minutes are fast-forwarded. Time and flag.
  • program ID "2" is associated with user ID "C”.
  • Marking information 1403 is the program "2" 0 ⁇ ; 10 minutes, 20 ⁇ 35 minutes, 40 ⁇ 85 minutes and 90 ⁇ ; 125 minutes are played back, 10 ⁇ 20 minutes, 35 ⁇ 40 minutes and 85 ⁇ 90 The minute has been marked and has V, the marking time and flag.
  • User ID "D" is associated with program ID "2" in addition to program ID 'T'.
  • Marking information 1404 is the program "2" 0-25 minutes, 30-65 minutes, 70-85 minutes and 90-; 125 minutes are played back, 25-30 minutes and 65-70 minutes are deleted, Has a marking time and flag that 85-95 minutes have been marked.
  • FIG. 22 is a conceptual diagram for explaining a method of counting marking information grouped as shown in FIG.
  • the stream shown in FIG. 22 virtually shows a stream on the time axis of program “2”.
  • CM Common Message
  • a marking time 1504 shown in FIG. 22 indicates a marking time in program “2” which is a program other than program “1” of user “A” shown in marking information 1401 in FIG.
  • fast-forward operation is performed for 0 to 5 minutes, 15 to 35 minutes and 50 to 80 minutes, 5 to; playback operations are performed for 15 minutes, 35 to 50 minutes and 80 to 95 minutes. Yes.
  • the marking time 1505 shown in FIG. 22 is the user shown in the marking information 1402 of FIG.
  • Program "B” is a program other than "B" program "1"
  • the marking time is shown. At the marking time 1505, 30 to 35 minutes, 45 to 65 minutes and 70 to 95 minutes are played back, 35 to 45 minutes are marked, and 65 to 70 minutes are fast forwarded.
  • the marking time 1506 shown in FIG. 22 is a program “2” that is a program other than the program “1” of the user “C” shown in the marking information 1403 of FIG.
  • the marking time is shown. Marking time 1506, 0-10 minutes, 20-35 minutes, 40-85 minutes and 90-; 125 minutes (regeneration operation drowning, 10-20 minutes, 35-40 minutes and 85-90 minutes A marking operation is being performed.
  • the marking time 1507 shown in FIG. 22 is a program “2” that is a program other than the program “1” of the user “D” shown in the marking information 1404 of FIG.
  • the marking time is shown. At marking time 1507, 0 to 25 minutes, 3 0 to 65 minutes, 70 to 85 minutes and 90 to 85; 125 minutes for playback operations, 25 to 30 minutes and 65 to 70 minutes for deletion operations, 85 Marking operation is performed for ⁇ 95 minutes.
  • the marking frequency distribution of Fig. 22 shows the result of counting the marking information of the community group.
  • the tabulation processing in this embodiment is tabulated by adding different points for each piece of operation information indicated by the marking information in the unit time of the program.
  • points for each piece of operation information indicated by the marking information in the unit time of the program For example, "2" points for the erase flag "D", "1" for the fast-forward flag "F"
  • the marking information of programs other than program "1" is also aggregated in the same manner for all user groups configured by all registered users of the program recommendation server 6 including community groups.
  • the operation flag of all users is given! /, And the total marking time is normalized. Then, by subtracting the normalized aggregated results of all user groups from the normalized aggregated results of community groups, aggregated results specific to the community group are created.
  • the normalized statistical results for all user groups are The unit time is almost “0”, and the subtraction result and the subtraction result are almost the same.
  • a recommended scene is generated by performing a threshold determination on the subtracted count result using a predetermined threshold.
  • program scene viewing recommendation information and program scene deletion recommendation information are created using two threshold values.
  • the recommended scene creation unit 759 extracts the marking time information whose normalized and subtracted tabulation results exceed the upper first threshold value 15 08 to view the program scene viewing recommended scenes 1510, 15 11 and 1512. Generate recommendation information. Also, the recommended scene creation unit 759 extracts the marking time information for which the normalized and subtracted counting result is lower than the second threshold value 1509 on the lower side, and generates deletion recommendation information for the program scene deletion recommended scenes 1513 and 1514. To do.
  • the viewing recommendation information and the deletion recommendation information created as described above are recommended information including the program identification information of each program and the start time and end time of each program scene, by the recommended transmission unit 760. Sent to the program viewing terminal 5.
  • the transmitted recommendation information is received by the recommendation receiving unit 728 of the program viewing terminal 5, and based on the program identification information included in the recommendation information, whether or not the program is recorded on the recording medium 715 is determined. A determination is made. If it is determined that the program scene is recorded, the program recording determination unit 730 further determines whether or not the program scene of each program is recorded based on the start time and end time of each program scene. Also, the program recording determination unit 730 automatically deletes the program scene when it is determined that the program scene has been recorded and the program scene is a deletion recommended scene. Further, when it is determined that the program scene has been recorded and the program scene is a viewing recommendation scene, the program recording determination unit 730 extracts program information based on the start time of the program scene. Then, a thumbnail is created and displayed on the monitor 711 to prompt the user to view it.
  • the program viewing terminal 5 when the program viewing terminal 5 receives the program scene deletion recommendation information and deletes the program scene, the program viewing terminal 5 deletes the time position in the program where the deletion has started and the program within the program where the deletion has ended. It is desirable to connect the time position.
  • FIG. 23 is a conceptual diagram showing a schematic configuration of the program recommendation system of the third embodiment.
  • one screen 1600 in the program is divided into a plurality of clusters 160;!
  • Each of the clusters 1601 to 1604 is broadcasted selectably by a pointing device 1605 such as a laser pointer or a mouse.
  • the clusters 1602 to 1604 are broadcast in a form including one object such as an actor or a product in the program.
  • the coordinate information of each cluster is multiplexed with the program information.
  • the coordinate information can be delivered to the program viewing terminal 8 using the network 10 from the cluster information providing server that provides the coordinate information of the cluster in synchronization with the broadcast of the program.
  • the program viewing terminal 8 transmits the program identification information of the broadcast being received to a cluster information providing server (not shown), and receives the cluster information corresponding to the transmitted program identification information.
  • the user uses the pointing device 1605 to select a favorite object from among the objects displayed on the screen.
  • a laser pointer is used as a pointing device
  • a photosensitive film is attached to the surface of the monitor screen connected to the program viewing terminal 8, and coordinate information irradiated with the laser is extracted.
  • a marker such as an arrow is displayed on the screen, and the coordinate information of the place where the user clicked is extracted.
  • Cluster information multiplexed in the program is recorded in the cluster ID storage unit 1606.
  • the program viewing terminal 8 determines which cluster the coordinate information belongs to based on the coordinate information selected by the pointing device 1605, and obtains cluster identification information based on the multiplexed cluster information.
  • the cluster identification information is acquired and transmitted to the program recommendation server 9 connected by the general-purpose network 10.
  • the program recommendation server 9 extracts users having the same cluster identification information from the received cluster identification information from its own cluster DB and groups them.
  • the program recommendation server 9 aggregates all the selected cluster identification information associated with the grouped users with respect to all users in the group, forms a ranking, and performs ranking. Based on the above, a recommended cluster is generated. Then, the program recommendation server 9 transmits the recommended cluster to the program viewing terminal 8.
  • the cluster search unit 1608 of the program viewing terminal 8 searches the recording medium (recording means) 1607 for a program including the cluster, and selects it as a recommended cluster screen 1609. To prompt the user to select.
  • the program is played from the specified playback time position of the program that includes the recommended cluster.
  • the recommended cluster may be displayed in a display form based on the recommended priority, for example, by changing the size of the thumbnail or the color. In FIG. 23, the thumbnail size is changed according to the number of users who have selected recommended clusters.
  • FIG. 25 is a block diagram showing a configuration of a program viewing terminal according to the third embodiment
  • FIG. 25 is a block diagram showing a configuration of a program recommendation server according to the third embodiment
  • the program recommendation system according to the third embodiment includes a program recommendation server that is communicably connected to each other via a program viewing terminal 8 such as a program recording device, and a plurality of program viewing terminals 8 and a general-purpose network 10 such as the Internet. It consists of nine.
  • the configuration of the program recommendation system of the third embodiment is the same as the configuration of the program recommendation system shown in FIG. Originally, a form in which one program viewing terminal 8 is connected to the program recommendation server 9 will be described in order to simplify the explanation of the power to which a plurality of program viewing terminals 8 are connected.
  • the program viewing terminal 8 receives a program from a broadcast wave or an IP network, views the program, records the program, plays the recorded program, deletes the recorded program, Make a recording reservation.
  • Program viewing terminal 8 includes antenna 1701, tuner 1702, TS decoder 17 03, CAS 1704, signal cancel unit 1705, demultiplexer 1706, MPEG video decoder 1707, MPEG Audio decoder 1708, HDMI terminal 1709, recording encryption unit 1 713, recording control unit 1714, recording medium 1715, playback control unit 1716, recording decoding unit 171 7, PSI extraction unit 1718, EPG storage unit 1719, pointer light receiving unit 1720, coordinate extraction unit 1721, cluster identification information extraction unit 1722, cluster storage unit 1723, key 1724, user identification unit 1 725, user information DB 1726, cluster transmission unit 1727, a recommendation receiving unit 1728, a recommended program information extraction unit 1729, a cluster search unit 1730, a recommended reproduction control unit 1732 and an enlargement control unit 1733.
  • the program recommendation server 9 includes a cluster reception unit 1750, a user management unit 1751, a user attribute DB1752, a cluster registration unit 1754, a cluster playback time management unit 1755, a cluster DB175 6, a community cluster statistics unit 1757, all users It consists of a cluster statistics unit 1758, a community specialization unit 1759, a recommended cluster creation unit 1760, and a recommendation transmission unit 1761.
  • Tuner 1702 receives a broadcast wave of a predetermined channel from a broadcast wave such as terrestrial digital broadcast or BS digital broadcast, and outputs the broadcast wave to TS decoder 1703.
  • the TS decoder 1703 demodulates the received general transport 'stream format broadcast wave and outputs it to the descrambling unit 1705.
  • CAS 1704 is a general Conditional Access System, reads encryption key information from an IC card in which user registration information and program encryption key are recorded, and outputs the read information to descrambling unit 1705.
  • the sign release unit 1705 decrypts the signified transmission / reception signal demodulated by the TS decoder 1703 based on the encryption key from the CAS1704, and decrypts the encrypted program information. And output to the demultiplexer 1706.
  • the demultiplexer 1706 separates information multiplexed as program information.
  • the program information at least video information, audio information, and program management information are multiplexed. After these are separated, the video information is sent to the MPEG Video decoder 1707, the audio information is sent to the MPEG Audio decoder 1708, and the program management information is sent to the program information.
  • the video information is sent to the MPEG Video decoder 1707
  • the audio information is sent to the MPEG Audio decoder 1708
  • the program management information is sent to the program information.
  • the MPEG Video decoder 1707 decodes the video information from the demultiplexer 1706, converts it into video data, and outputs it to the HDMI terminal 1709.
  • the MPEG Audio decoder 1708 demodulates the audio information from the demultiplexer 1706, converts it into audio data, and outputs it to the HDMI terminal 1709.
  • HDMI terminal 1709 is an HDMI cape
  • the HDMI terminal 1710 is connected to the monitor 1711 and the speaker 1712.
  • HDMI terminals 1709 and 1710 are HDMI interfaces for general video information and audio information, and mutually authenticate the program viewing terminal 8, the monitor 1711, and the speaker 1712, and share a common encryption key.
  • the video data and audio data are encrypted with a common encryption key and output to the monitor 1711 and the speaker 1712.
  • the monitor 1711 is a general program video information display device, which decrypts the encrypted video data received at the HDMI terminal 17010 and outputs the video data of the program.
  • the SPICE 1712 is a general program audio information output device that decrypts encrypted video data received at the HDMI terminal 1710 and outputs program audio data.
  • the recording encryption unit 1713 performs a signal processing for recording the received program information on the recording medium.
  • the recording encryption unit 1713 encrypts the program information input from the demultiplexer 1706 and outputs the encrypted program information to the recording control unit 1714. Therefore, the recording encryption unit 1713 performs encryption processing specific to the recording medium for recording the program information.
  • DVD-RAM or CPRM (Content Protection for Rewritable Media), Blu-ray Icesk or HD-DVD uses AACS (Advanced Access Content System).
  • the recording control unit 1714 controls the recording of the program information encrypted by the recording encryption unit 1713 on the recording medium 1715.
  • the recording control unit 1714 records program information on the recording medium by performing modulation processing and error correction coding processing specific to the recording medium.
  • Recording medium 1715 is a computer-readable recording medium for recording program information.
  • a magnetic recording disk such as a hard disk, an optical disk such as a DVD or Blu-ray disk, or a semiconductor memory such as an SD card.
  • magneto-optical recording media such as MO / MD are used.
  • the playback control unit 1716 reads the program information recorded on the recording medium 1715 from the recording medium 1715.
  • the recording control unit 1714, the recording medium 1715, and the reproduction control unit 1716 are generally configured as a drive system.
  • the recording decryption unit 1717 performs decryption corresponding to the encryption of the recording encryption unit 1713. .
  • the recording decryption unit 1717 decrypts the encrypted program information signal recorded on the recording medium 1715 and outputs the decrypted signal to the TS decoder 1703. Note that the process of reproducing the program information output to the TS decoder 1703 is the same as the process of reproducing the program received by the antenna 1701 described above.
  • the PSI extraction unit 1718 extracts PSI (Program Specific Information) from the program management information extracted by the demultiplexer 1706.
  • PSI mainly includes information such as PMT (Program Map Table) and EIT (Event Information Table) TOT (Time Offset Table).
  • the PMT stores packet identification information such as images and sounds included in the program! Therefore, if packet identification information such as images and sounds can be obtained from the PMT, the program can be reproduced by extracting packets with the packet identification information.
  • the EIT includes information related to the program such as the program name, broadcast date and time, and broadcast content.
  • EPG Electronic Program Guide
  • the EPG storage unit 1719 creates and stores EPG information using the EIT in the PSI extracted by the PSI extraction unit 1718.
  • the pointer light receiving unit 1720 extracts a position indicated by the laser pointer.
  • the pointer light receiving unit 1720 is not necessary.
  • the coordinate extraction unit 1721 converts the position information irradiated with the laser pointer by the pointer light receiving unit 1720 into coordinate information in the screen.
  • the coordinate extraction unit 1721 obtains two-dimensional coordinate information in which the horizontal direction in the screen of the monitor 1711 is the X axis and the vertical direction is the y axis.
  • the cluster identification information extraction unit 1722 extracts cluster information from the program management information multiplexed in the program data separated by the demultiplexer 1706.
  • the cluster information includes cluster identification information of clusters defined in the program and coordinate information for each cluster.
  • a cluster is partial information of a program divided by a user so that it can be selected by two-dimensional coordinates in a video frame.
  • a cluster that includes objects such as cast actors in a frame is defined. The same object that appears in consecutive frames on the time axis is given the same cluster identification information.
  • it is defined by changing the coordinates in synchronism with the location of the object for each program frame.
  • the cluster in this embodiment is rectangular.
  • the cluster coordinate information includes coordinates corresponding to the pixel at the upper left corner of the cluster and coordinates corresponding to the pixel at the lower right corner.
  • the cluster identification information extraction unit 1722 extracts the coordinate information of the program selected by the user with the pointing device, and compares the coordinate information with the cluster information multiplexed in the program. The cluster selected by the user is identified, and the cluster identification information is extracted and output to the cluster storage unit 1723.
  • the cluster information has been described as being multiplexed in the program, the present invention is not limited to this.
  • the cluster information may be obtained from a cluster information providing server connected to the general-purpose network 10.
  • the program viewing terminal 8 transmits the program identification information of the program viewed and selected by the user to the cluster information providing server, and obtains cluster information corresponding to the program viewed and selected by the user.
  • the program identification information of the target program, the time information of the program, and the coordinate information of the selected cluster are transmitted to the cluster information providing server, and the cluster corresponding to the selected cluster is sent. You can get the information.
  • the cluster storage unit 1723 includes cluster identification information for identifying a cluster selected by the user using the pointing device extracted by the cluster identification information extraction unit 1722, and the cluster extracted by the PSI extraction unit 1718.
  • the time information of the program at the time of selection and the coordinate information of the cluster for each frame are stored in association with the program identification information of the program. Even when the user selects a plurality of clusters, the cluster storage unit 1723 stores a plurality of pieces of cluster identification information.
  • a key 1724 is a part that receives input from the user, and includes a remote control and a front panel.
  • the user information DB 1726 is a database in which user information of all users who use the program viewing terminal 8 is registered.
  • the user identification unit 1725 identifies the user who uses the program viewing terminal 8 based on the user information input using the key 1724 and the user information stored in the user information DB 1726. In addition, when the user identification unit 1725 succeeds in authenticating the user, the user information of the user currently in use is clustered. Output to transmitter 1727.
  • the cluster transmission unit 1727 establishes a connection with the program recommendation server 9 connected by the general-purpose network 10, and stores the cluster identification information of the cluster selected by the user stored in the cluster storage unit 1723,
  • the user cluster information is obtained by associating the time information of the program at the time of cluster selection, the program identification information for identifying the program, and the coordinate information of the cluster for each frame with the user identification information from the user identification unit 1725 To the program recommendation server 9.
  • the recommendation receiving unit 1728 receives recommendation information related to a program recommended by the program recommendation server 9 via the general-purpose network 10.
  • the recommended program information extracting unit 1729 extracts recommended program information from the recommended information received by the recommended receiving unit 1728.
  • the recommended program information is information that can uniquely identify a recommended program, and is, for example, program identification information, program broadcast date and time, and channel information.
  • the recommended program information extraction unit 1729 also includes cluster identification information of a recommended cluster in the recommended program given to the recommended program information, cluster time information indicating the time in the program of the recommended cluster, and coordinates of the recommended cluster. Extract information.
  • the cluster search unit 1730 searches the recording medium 1715 based on the program identification information of the recommended program extracted by the recommended program information extraction unit 1729, and the program is recorded! Determine whether or not. If it is determined that the program is recorded, the cluster search unit 173 0 uses the cluster identification information of the recommended cluster recommended by the program recommendation server 9 or the start time information of the recommended cluster on the recording medium 1715. Determine if it is recorded. When it is determined that the recommended cluster is recorded on the recording medium 1715, the cluster search unit 1730 outputs the recommended cluster information to the recommended reproduction control unit 1732.
  • the recommended playback control unit 1732 Based on the recommended cluster information input from the cluster search unit 1730, the recommended playback control unit 1732 also plays back the recommended program with the playback start position of the recommended cluster. In addition, the recommended playback control unit 1732 calls the first frame screen of the recommended cluster from the recording medium 1715 and displays thumbnails to prompt the user to play before playback. In this case, the recommended playback control unit 1732 calls a recommended cluster from a plurality of recommended cluster information, creates a thumbnail image, and performs list display. When a thumbnail image is selected by the user, the recommended playback control unit 1732 replays the recommended cluster corresponding to the thumbnail image. Play the program from the live start position.
  • the enlargement control unit 1733 enlarges and displays the recommended clusters in the program in accordance with the setting operation from the user.
  • the cluster coordinate information is added to the recommended cluster information from the program recommendation server 9, and the recommended cluster of the program is enlarged and displayed based on this coordinate information.
  • the enlargement control unit 1733 enlarges and displays the coordinate range indicated by the recommended cluster information with respect to the output from the MPEG Video decoder 1707.
  • the enlargement control unit 1733 enlarges the recommended cluster so that it is maximized within the screen.
  • the cluster receiving unit 1750 includes a plurality of program viewing terminals connected to the general-purpose network 10.
  • the program identification information is program identification information that can uniquely identify the selected program, or program broadcast date and time, channel information, and broadcast station identification information of the selected program.
  • the received user cluster information is output to the user management unit 1751.
  • User attribute DB1752 includes registered user identification information and, if necessary, user name, gender, address / phone number, manufacturer / model of program viewing terminal, resolution of connected monitor and program viewing terminal. It manages user attribute information such as network IDs as a user registration list. The user performs user registration processing for program recommendation on the program recommendation server 9 in advance. In the user registration process, after user registration information such as user name setting and address / phone number notification is given, the user information is generated and notified to the user on the program recommendation server 9 side. Attribute Stores / manages user attribute information notified by the user in association with user information generated by DB1752.
  • the user management unit 1751 determines whether or not the user is a registered user of the user program recommendation server 9 specified by the received user information.
  • the user management unit 1751 Search the user registration list stored in DB1752 for user information that matches the received user information. If it is determined that the received user information is registered in the user attribute DB1752, it is determined that the user information is a registered user of the program recommendation server 9, and the processing is continued.
  • the cluster registration unit 1754 receives the user cluster information for each user received by the cluster reception unit 1750.
  • the cluster DB17
  • the cluster registration unit 1754 identifies the cluster identification information of the selected cluster included in the user cluster information, the time position information in the program of the cluster, and the program that includes the cluster.
  • the program identification information is extracted and stored in the cluster reproduction time management unit 1755.
  • the cluster playback time management unit 1755 stores / manages cluster identification information, time position information, and program identification information in association with each other. Note that if the user cluster information includes the coordinate information on the screen of the cluster in each frame associated with the time position information, the cluster playback time management unit 1755 stores the cluster identification information, the time position information, and The coordinate information is stored.
  • the community cluster statistics unit 1757 selects users having the same cluster identification information as the cluster identification information included in the user cluster information received by the cluster reception unit 1750 from the cluster DB 1756 and groups them. Users with the same cluster identification information are grouped based on the cluster identification information managed in the cluster DB 1756 in association with user information. In addition, the community cluster statistics unit 1757 aggregates all clusters other than the cluster indicated by the cluster identification information received by the cluster reception unit 1 750 based on the cluster identification information of all users belonging to the grouped group. The result is normalized by the total number of clusters selected by the users in the group.
  • the all-user cluster statistics unit 1758 is registered in the user attribute DB1752 unlike the community cluster statistics unit 1757, which converts all users with cluster identification information received by the cluster reception unit 1750 into a community gnole. All users, that is, all registered users in the program recommendation server 9 are grouped as all user groups including community groups.
  • the all-user cluster statistics unit 1758 after grouping all users, selects all clusters other than the cluster indicated by the cluster identification information received by the cluster reception unit 1750 based on the cluster identification information of all users. Aggregate, and normalize the aggregation result with the total number of clusters selected by the registered user of the program recommendation server 9.
  • the community specialization unit 1759 subtracts the aggregated results normalized by the all-user cluster statistical unit 1758 from the aggregated results normalized by the community cluster statistical unit 1757, and then creates a cluster specialized for the community group. Create aggregate rankings within community groups. The total ranking within the created community group is output to the recommended cluster creation unit 1760.
  • the recommended cluster creation unit 1760 determines the upper cluster of the aggregate ranking in the community group from the community specialization unit 1759, or the frequency of the aggregate ranking as a threshold value, and extracts the cluster having the frequency equal to or higher than the threshold as the recommended cluster . Based on the cluster identification information corresponding to the recommended cluster, the recommended cluster creation unit 1760 receives from the cluster playback time management unit 1755 time information indicating the appearance time (playback time) of the recommended cluster in the program and the time information. Corresponding to the coordinate information of the recommended cluster for each frame. The recommended cluster creation unit 1760 includes cluster identification information for identifying recommended clusters, time information of recommended clusters, coordinate information of recommended clusters, and program identification information for identifying programs including recommended clusters. As a set, recommended program information is created.
  • the recommended cluster creation unit 1760 inputs the normalized aggregation results of all user clusters from the all-user cluster statistics unit 1758, ranks the aggregation results in descending order of the number of clusters, and ranks high in the ranking.
  • a cluster having the number of clusters equal to or greater than the threshold is extracted as a popular cluster by judging the threshold of the cluster or the aggregation result.
  • Recommended cluster generator 176 0 is based on the cluster identification information corresponding to the popular cluster, and from the cluster playback time management unit 1755, the time information indicating the appearance time (playback time) of the popular cluster in the program and one frame corresponding to the time information. Call the coordinate information of each popular cluster.
  • the recommended cluster creation unit 1760 includes cluster identification information for identifying popular clusters, time information in programs of popular clusters, coordinate information of popular clusters, and program identification information for identifying programs including popular clusters. As a set, popular program information is created. The recommended program information and popular program information created by the recommended cluster creation unit 1760 are output to the recommendation transmission unit 1761 as recommendation information.
  • the recommendation transmission unit 1761 establishes a connection with the program viewing terminal 8 connected via the general-purpose network 10, and displays recommended information including the recommended program information and popular program information created by the recommended cluster creation unit 1760. Send to viewing terminal 8.
  • the user A selects a cluster in the program A by the program viewing terminal 8 owned by the user A.
  • the program viewing terminal 8 includes user information for identifying user A, cluster identification information for identifying clusters multiplexed in program A, cluster appearance time information, and cluster coordinate information for each frame.
  • program identification information for identifying a program including a cluster is transmitted to the program recommendation server 9 as user cluster information.
  • the cluster receiving unit 1750 of the program recommendation server 9 receives from the program viewing terminal 8 owned by the user A a user cluster including user information, cluster identification information, time information, coordinate information, and program identification information. Receive information.
  • the user management unit 1751 determines whether or not the received user information is stored in the user attribute DB 1752. If the user information is stored, the user management unit 1751 determines that user A is a registered user of the program recommendation server 9, and continues the process. .
  • Cluster registration unit 1754 registers cluster identification information, time information, coordinate information, and program identification information in cluster DB 1756 in association with user information for identifying user A.
  • the community cluster statistics unit 1757 extracts all users having the same cluster identification information as the cluster identification information included in the received user cluster information from the cluster DB 1756 to form a community group.
  • the community cluster statistics unit 1757 statistically processes clusters included in programs other than program A in the community group. To do.
  • the community cluster statistics unit 1757 forms ranks in the order of the number of clusters selected from the clusters included in the program other than program A in the community group, and the formed ranking is used as the community specialization unit. Output to 1759.
  • the all user cluster statistics unit 1758 forms all users registered in the user attribute DB 1752 of the program recommendation server 9 as an all user group including the community loop formed by the community cluster statistics unit 1757.
  • the all-user cluster statistics unit 1758 extracts cluster identification information associated with user information in all user groups from the cluster DB 1756, and statistically processes clusters included in programs other than program A. Then, the all-user cluster statistics unit 1758 forms a ranking in the order of the number of selected clusters among the clusters included in the program other than program A in all user groups, and the formed ranking is Output to the specialization unit 1759 and the recommended cluster creation unit 1760.
  • the community specializing unit 1759 subtracts the cluster ranking created by the all-user cluster statistical unit 1758 from the cluster ranking created by the community cluster statistical unit 1757. As a result, the community specializing unit 1759 creates ranking information specialized for the community group of the user who has selected a predetermined cluster in the program A, and outputs it to the recommended cluster creating unit 1760.
  • the recommended cluster creation unit 1760 has more clusters than the threshold! /, Clusters, or ranking based on the ranking information of the selected cluster specialized for the community group created by the community specialization unit 1759. A predetermined number of upper clusters are extracted as recommended clusters. Then, the recommended cluster creation unit 1760 creates recommended program information including cluster identification information, program identification information, time information, and coordinate information corresponding to the recommended cluster.
  • the recommended cluster creation unit 1760 based on the ranking information of the selected clusters of all registered users created by the all-user cluster statistics unit 1758, is a cluster having a cluster number higher than the threshold or a predetermined higher ranking ranking. A number of clusters are extracted as popular clusters. Then, the recommended cluster creation unit 1760 creates popular program information including cluster identification information, program identification information, time information, and coordinate information corresponding to the popular cluster.
  • the recommendation transmission unit 1761 includes recommended program information and people created by the recommendation cluster creation unit 1760. The program information is transmitted to user A's program viewing terminal 8.
  • FIGS. 26 to 29 are flowcharts showing the processing flow of the program recommendation system according to the third embodiment, and FIG. 26 transmits user cluster information in the program viewing terminal according to the third embodiment.
  • FIG. 27 is a flowchart showing the flow of processing in the program recommendation server according to the third embodiment, and FIG. 28 and FIG. 29 are the programs according to the third embodiment.
  • 5 is a flowchart showing a flow of processing after receiving recommendation information in a viewing terminal.
  • the user identification unit 1725 displays a user authentication screen for user authentication for the user on the monitor 1711, and the key 1724 accepts input of user information by the user and sends it to the program viewing terminal 8. Is accepted (step S101).
  • the user identification unit 1725 determines whether or not the user authentication is successful, that is, whether or not the entered user information matches the user information registered in advance in the user information DB 1726 (Step S1). S 102).
  • step S102 If the user authentication fails as a result of the user authentication (NO in step S102), the user identification unit 1725 displays an error message on the monitor 1711 and ends the subsequent processing (step S103). .
  • step S104 playback control unit 1716 determines whether or not a playback instruction operation has been performed on a program already recorded on recording medium 1715 (step S104).
  • the playback control unit 1716 waits until there is a playback instruction operation of the recorded program from the user.
  • step S104 If it is determined that a playback instruction operation has been performed by the user (YES in step S104), the playback control unit 1716 plays the program selected by the user from the recording medium 1715 and outputs the program to the monitor 1711. Playback processing is executed (step S105).
  • the demultiplexer 1706 separates the program management information multiplexed in the program
  • the PSI extraction unit 1718 extracts the PSI from the program management information
  • the cluster identification information extraction unit 1722 The cluster information is extracted from the program management information.
  • Cluster information is a single video frame of a program. Includes the cluster identification information of the clusters in the frame and their coordinate information.
  • the coordinate extraction unit 1721 determines whether the user has selected a cluster in the program using the pointing device for the program being played back (step S106). That is, when the pointer light receiving unit 1720 receives light from the laser pointer, the coordinate extraction unit 1721 determines that a cluster in the program has been selected. If it is determined that the cluster is selected by the pointing device (YES in step S106), the coordinate extracting unit 1721 extracts the coordinate information in the screen selected by the pointing device (step S107).
  • the cluster identification information extraction unit 1722 extracts the cluster identification information of the cluster corresponding to the coordinate information extracted by the coordinate extraction unit 1721 (step
  • the extracted cluster identification information is stored in the cluster storage unit 1723 in association with the program identification information of the program together with time information and coordinate information in the program multiplexed in the program of the cluster.
  • step S106 After the cluster identification information is extracted and stored in the cluster storage unit 1723, or when it is determined that the cluster is not selected (NO in step S106), the playback control unit 1716 plays the program. Continue processing to determine whether the program being played has ended (step S106).
  • step S109 If it is determined that the program being played has not ended (NO in step S109), the process returns to step S105, and playback control unit 1716 continues to execute the program playback process.
  • cluster transmission unit 1727 identifies the cluster selected by the user stored in cluster storage unit 1723. Cluster identification information to be recorded, program time information at the time of cluster selection extracted by the PSI extraction unit 1718, cluster coordinate information for each frame, program identification information of a program including a cluster, and user identification unit 1725 The user information of the identified user is transmitted to the program recommendation server 9 as user cluster information (step S110).
  • the cluster receiving unit 1750 of the program recommendation server 9 is a program viewing terminal.
  • the user cluster information transmitted by 8 is received (step S111).
  • the user management unit 1751 receives the user class received by the cluster reception unit 1750. It is determined whether the user information included in the star information matches the user information registered in advance in the user attribute DB 1752 of the program recommendation server 9 (step S112). As a result of user authentication, if it is determined that the user is not a registered user (NO in step S112), the user management unit 1751 creates an error message to that effect and sends the error message to the program viewing terminal 8. Thereafter, the subsequent processing is terminated (step S113).
  • the cluster registration unit 1754 receives the cluster identification included in the user cluster information received by the cluster reception unit 1750.
  • the information is registered in the cluster DB 1756 in association with the user information included in the user cluster information (step S114).
  • the cluster registration unit 1754 registers the cluster identification information included in the received user cluster information, the time information in the program of the cluster, and the coordinate information of the cluster for each video frame in the cluster playback time management unit 1755. To do.
  • the community cluster statistics unit 1757 selects all the users having the currently registered cluster identification information from the cluster DB 1756. And the extracted users are grouped into community groups (step S115).
  • the community cluster statistical unit 1757 stores the programs other than the program indicated by the user cluster information received by the cluster receiving unit 1750, stored in correspondence with the user information of all the grouped users.
  • the cluster identification information in is collected (step S116).
  • the community cluster statistics unit 1757 counts the cluster identification information stored for each user.
  • the community cluster statistics unit 1757 normalizes the tabulated results totaled in the community group with the total number of clusters of all users in the community group (step S117). As a result, the probability of whether or not the user has selected for each cluster can be calculated, and ranking information indicating the selection probability for the cluster is generated.
  • the all-user cluster statistics unit 1758 extracts the users registered in the user attribute DB1752, that is, all users registered in the program recommendation server 9, and is the same as the received cluster identification information.
  • Community group consisting of users with cluster identification information Are grouped as all user groups including the group (step S 118).
  • the all-user cluster statistics unit 1758 stores a cluster in a program other than the program indicated by the user cluster information received by the cluster receiving unit 1750, stored in correspondence with the user information of all registered users.
  • the identification information is totaled (step S119).
  • the all-user cluster statistics unit 1758 normalizes the aggregated result of the aggregated cluster identification information of all registered users with the total number of clusters of all registered users (step S 120). As a result, it is possible to generate a ranking in which the selection rate of the cluster of users in all user groups is calculated for each cluster.
  • the community specializing unit 1759 subtracts the aggregated cluster identification information in all user groups from the aggregated cluster identification information in the community group. Aggregate clusters specialized for community groups. Then, the recommended cluster creation unit 1760 ranks the subtraction results in descending order of the number of clusters, sets a predetermined number of clusters higher in the ranking as recommended clusters, cluster identification information for identifying the recommended clusters, and the recommended cluster. Recommended program information including time information in the program, coordinate information of the recommended cluster for each moving image frame of the program, and program identification information for identifying the program is created (step S 121).
  • the recommended cluster creation unit 1760 extracts time information and coordinate information corresponding to the cluster identification information of the recommended cluster from the cluster playback time management unit 1755, and creates recommended program information. Also, the recommended cluster creation unit 1760 may determine a threshold value for the subtraction result, and a cluster that exceeds the threshold value may be a recommended cluster! /.
  • the recommended cluster creation unit 1760 ranks the clustering result of normalized cluster identification information in all user groups created by the all user cluster statistics unit 1758 in descending order of the number of clusters! A predetermined number of clusters at the top of the ranking are regarded as popular clusters, cluster identification information for identifying popular clusters, time information within programs of popular clusters, and coordinate information of popular clusters for each video frame of the program, Popular program information including program identification information for identifying a program is created (step S122).
  • the recommended cluster creation unit 1760 determines the threshold value of the result of aggregation by the all-user cluster statistics unit 1758, and a cluster exceeding the threshold value may be regarded as a popular cluster! /.
  • the recommendation transmitting unit 1761 transmits the recommended program information and popular program information created by the recommended cluster creating unit 1760 as recommended information to the program viewing terminal 8 (step S 1 23).
  • the recommendation receiving unit 1728 of the program viewing terminal 8 receives the recommended information including the recommended program information and the popular program information transmitted by the recommendation transmitting unit 1761 of the program recommendation server 9 ( Step S131).
  • the recommended program information extracting unit 1729 determines whether or not recommended program information has been extracted from the recommended information received by the recommended receiving unit 1728 (step S 132).
  • the recommended program information extraction unit 1729 prompts the user to select either recommended program information or popular program information.
  • recommended program information is selected using the key 1724
  • the recommended program information extraction unit 1729 extracts recommended program information.
  • popular program information is selected
  • the recommended program information extraction unit 1729 extracts popular program information. To do. It should be noted that setting for extracting both recommended program information and popular program information is not a problem. This can provide more options for the user.
  • step S132 If it is determined that the recommended program information has been extracted (YES in step S132), the cluster search unit 1730 is based on the program identification information included in the recommended program information extracted by the recommended program information extraction unit 1729. Then, it is determined whether or not a program having the same program identification information as the program identification information is recorded on the recording medium 1715 (step S 133). If it is determined that the program including the recommended cluster is not recorded on the recording medium 1715 (NO in step S133), the process proceeds to step S140.
  • cluster search unit 1730 calls program information corresponding to the program identification information from recording medium 1715. Then, the time information and the coordinate information in the program of the recommended cluster included in the received recommended program information are extracted and output to the recommended reproduction control unit 1732.
  • the recommended playback control unit 1732 displays a thumbnail image of the recommended cluster on the monitor 1711 based on the time information and the coordinate information extracted by the cluster search unit 1730 (step S134).
  • the recommended playback control unit 1732 determines whether or not the user has issued a thumbnail image selection and playback instruction (step S 135).
  • playback of thumbnail images If it is determined that an instruction has not been issued (NO in step SI 35), the process proceeds to step S140.
  • playback control unit 1716 reads a program corresponding to the program identification information extracted by cluster search unit 1730 from recording medium 1715. Then, the program is played back from the playback start time of the recommended cluster included in the time information extracted by the cluster search unit 1730 (step S136).
  • the expansion control unit 1733 determines whether or not an expansion instruction for expanding the recommended cluster by the user has been issued (step S 137).
  • the enlargement instruction is issued when the input is accepted by the key 1724. If it is determined that an enlargement instruction has been issued (YES in step S137), the enlargement control unit 1733 receives the recommended cluster enlargement instruction from the user and extracts the video of the recommended cluster extracted by the cluster search unit 1730. Based on the coordinate information in units of frames, a recommended cluster is cut out from the display image of the program and enlarged (step S138).
  • step S137 After the recommended cluster is displayed in an enlarged manner, or when it is determined that an enlargement instruction has not been issued (NO in step S137), the playback control unit 1716 plays back the program including the selected recommended cluster. It is determined whether or not is completed (step S139). Note that the playback control unit 1 716 automatically ends the program playback processing when the playback end time of the recommended cluster included in the time information extracted by the cluster search unit 1730 is reached. If it is determined that the program playback process has not ended (NO in step S139), playback control unit 1716 continues the playback process.
  • step S139 cluster search unit 1730 displays all recommended clusters included in the recommended program information transmitted by the program recommendation server 9. It is determined whether or not the reproduction process has been completed (step S140). In step S140, cluster search unit 1730 determines whether or not the processing in steps S133 to S139 has been completed for all the recommended clusters included in the received recommended program information.
  • step S140 if it is determined that the playback processing of all the recommended clusters has not been completed (NO in step S140), the processing returns to step S133, and the processing for the remaining recommended clusters is performed. Done. On the other hand, if it is determined that the playback process for all the recommended clusters has been completed (YES in step S140), all the processes are terminated.
  • the cluster search unit 1730 extracts the recommended program information. Based on the program identification information included in the popular program information extracted by the section 1729, it is determined whether or not a program having the same program identification information as the program identification information is recorded on the recording medium 1715 (step S141). ). If a program including a popular cluster is recorded on the recording medium 1715 and it is determined that it is! /, NA! / (NO in step S141), the process proceeds to step S148.
  • cluster search unit 1730 calls program information corresponding to the program identification information from recording medium 1715.
  • the time information and the coordinate information in the program of the popular cluster included in the received popular program information are extracted and output to the recommended playback control unit 1732.
  • the recommended playback control unit 1732 displays the thumbnail images of popular clusters on the monitor 1711 based on the time information and the coordinate information extracted by the cluster search unit 1730 (step S 142).
  • the recommended playback control unit 1732 determines whether or not the user has issued a thumbnail image selection and playback instruction (step S143). If it is determined that a thumbnail image playback instruction has not been issued (NO in step S143), the process proceeds to step S148. On the other hand, if it is determined that a playback instruction has been issued (YES in step S143), playback control unit 1716 reads a program corresponding to the program identification information extracted by cluster search unit 1730 from recording medium 1715. Then, the program is played from the playback start time of the popular cluster included in the time information extracted by the cluster search unit 1730 (step S 144).
  • the expansion control unit 1733 determines whether or not an expansion instruction for expanding the popular cluster by the user has been issued (step S145).
  • the enlargement instruction is issued when the input is accepted by the key 1724. If it is determined that an enlargement instruction has been issued (YES in step S145), the enlargement control unit 1733 receives the popular cluster enlargement instruction from the user, and receives the popular cluster extracted by the cluster search unit 1730. Based on the coordinate information in units of moving picture frames, a popular cluster is cut out from the display image of the program and enlarged (step S146).
  • the playback control unit 1716 plays the program including the selected popular cluster. It is determined whether or not is completed (step S147). Note that the playback control unit 1 716 automatically ends the program playback processing when the playback end time of the popular cluster included in the time information extracted by the cluster search unit 1730 is reached. If it is determined that the program playback process has not ended (NO in step S147), playback control unit 1716 continues the playback process.
  • step S147 the cluster search unit 1730 displays all popular clusters included in the popular program information transmitted by the program recommendation server 9. It is determined whether or not the reproduction process has been completed (step S148). In step S148, cluster search unit 1730 determines whether or not the processes in steps S141 to S147 have been completed for all popular clusters included in the received popular program information.
  • step S148 if it is determined that the reproduction processing of all popular clusters has not been completed (NO in step S148), the processing returns to step S141, and the processing for the remaining popular clusters is performed. On the other hand, if it is determined that all popular clusters have been replayed (YES in step S148), all processes are terminated.
  • the program viewing terminal 8 receives a broadcast program in which the program is spatially divided into clusters, and is selected by the user using a pointing device.
  • the cluster is transmitted to the program recommendation server 9.
  • the program recommendation server 9 can manage selected clusters for each user, group users according to the selected clusters, and provide recommended programs to the users by collaborative filtering within the groups.
  • a group including a community group for example, so that a specific program can be recommended in a community group composed of users who have selected the same cluster, for example, Create a group consisting of all users,
  • a group consisting of all users By removing the influence of popular popular programs that are preferred by the users from programs recommended within the community group, it becomes possible to recommend programs that are unique within the community group.
  • popular programs can be easily known by users without using such a recommendation system, so it is useful to recommend programs specialized for community groups.
  • a method for recommending a generally popular program can be realized by using a known method.
  • the power describing a method of transmitting one cluster selected by the user is not limited to this.
  • a plurality of user cluster information may be transmitted to the program recommendation server 9 as a cluster selection history from the user.
  • users are grouped according to the degree of coincidence between the cluster selection history for each user and the selection history of other users. For example, users having all the clusters included in the transmitted cluster selection history as a selection history are grouped.
  • the selection history in this case may be determined based on the similarity of the cluster selection history within one specific program, or may be transmitted when, for example, several histories are stored. In this way, grouping based on the cluster selection history makes it possible to make a group with more consistent preferences, leading to improved accuracy of recommended programs and clusters.
  • the above-described form of transmitting the cluster selection history is also applicable to the first and second embodiments described above.
  • the program viewing terminal 2 transmits a history of program reservation information
  • the program recommendation server 3 transmits a reservation information history similar to the reservation information history of the transmitted program. Group users with Even in this case, similar reservation information may be a complete history match, or users who match more than half of the history information to be sent may be grouped.
  • the program viewing terminal 5 transmits a plurality of marked program scene histories to the program recommendation server 6, and the program recommendation server 6 transmits the history of the marked program history. Group users by similarity.
  • users can be grouped by comparing history information, so that users with more matched preferences can be grouped. Therefore, it leads to the improvement of the precision of the recommendation information produced
  • the method of grouping all users as a group that includes all grouped users in the program recommendation server has been described, but the present invention is not limited to this.
  • User attribute information such as gender, age, and residence is managed as user information.
  • all user gnoles (second gnole) including community groups (first group) It is also possible to generate recommendation information by subtracting the aggregated results of all user groups from the aggregated results in the community gnole. In this way, even if popular programs are biased due to, for example, gender, age, or address, it is possible to eliminate this effect and create more specialized recommendation information within the community group. Become.
  • the reservation rate is normalized by the number of users who have made reservations. For example, for broadcasts of a genre with high broadcast frequency such as a news program, Normalization may be performed by broadcast time.
  • the marking weight may be reduced, You can change the marking weight according to the frequency of marking.
  • the aggregation when the aggregation within the group is performed, the aggregation may be performed by weighting a specific user whose reliability of the recommendation information is considered to be high. Users whose reliability of recommendation information is considered to be high may be automatically extracted based on the degree of coincidence between the user's reserved program and the recommendation information in the group, or manage other users or program recommendation systems It may be chosen artificially by an administrator. [0386] For example, a specific day such as New Year's Eve or a sports tournament held once every several years may be excluded from the target of counting the reservation rate, or the weight may be changed.
  • marking by button press time marking by inputting the start time and end time of the program scene, and the start time and duration of the program scene are designated.
  • Marking powers marking powers that specify the end time and duration of a scene, but are not limited to these. For example, you can mark a program scene as a favorite scene start time when you return from a user's favorite scene button press time as a favorite scene start time. You can also use fifty yarn and scene markings!
  • the scene change immediately before and after the user presses the favorite scene button is automatically detected, and the scene change is marked as the favorite scene start time and end time respectively. Also good. In this way, the burden on the user marking the favorite scene can be reduced.
  • the scene change is determined based on a video-based scene change that determines whether the scene has changed from the change in the histogram extracted for each frame of the program, or determines the change in the performer projected by image recognition. And voice-based scene change judgments that use voice recognition to detect changes in sound tone, volume, or changes in performers using voice recognition.
  • weighted addition may be performed.
  • the weight may be changed according to the designation of the recording image quality such as the high image quality mode or the long time mode.
  • the user A himself / herself selects a community duplication to participate from among a plurality of community groups prepared in advance, and this community group As a whole set, statistics with programs reserved by user A may be calculated. This makes it possible to match the user needs.
  • the user A can select a group to which the user A belongs in the community reservation information statistics unit 236 in the first embodiment.
  • the program recommendation server can recommend a program having high similarity to the preference of the group selected by the user A and the program reserved by the user A for recording.
  • the user can select to join / unsubscribe from the community group. This makes it possible to recommend programs that change according to the user's preferences or that match the user's mood.
  • the user may be able to search for community groups. This allows the user to search for a community group that the user wants from a number of community groups.
  • the search query in this search is preferably based on the user's search keyword input.
  • other search queries such as selection from a category, image information, video information, music information, and voice are used as search queries. Even if the user's gesture is used, the same effect can be obtained.
  • a history of community group groups that the user has selected in the past may be displayed. This allows users to easily select community groups that they have selected in the past.
  • the ranking of community groups selected by other users may be displayed. Preferably a large number selected by other users! /, It is desirable to display the ranking of community groups! /. This allows the user to select more popular! / Community groups. As another example, the ranking of community groups that have rapidly increased the selectivity of other users may be displayed. As a result, the momentary popularity is increasing. A community group can be selected.
  • the user may be able to specify the threshold determination criterion in the recommended program creation unit 239. For example, when the user raises the threshold judgment criterion, it is possible to recommend only programs with a higher reservation rate in the gnolepe. On the other hand, it is possible to recommend more programs by lowering the threshold criteria.
  • the program selected by the user may be weighted when the aggregation within the group is performed.
  • a mechanism may be considered in which the date and time of a program recorded by the user is stored and the weight decreases as time passes.
  • the program viewed by the user without recording but only the programs recorded by the user in the past is used for the aggregation of the group. Also good. As a result, it is possible to increase the number of samples of the program selected by the user, and it is possible to recommend a program that more matches the user's preference.
  • the program recommendation server 3 shown in FIG. 4 described in the first embodiment is used.
  • the specialization generation unit 30 in FIG. 4 a method for creating a recommended program specialized for a community group to which the user belongs, which is calculated from a user's reserved program information group by calculating a tf ′ idf (term frequency inverse document frequency) value. Will be described.
  • tf 'idf value is a method of weighting from the appearance frequency of the reserved program information of the program, tf represents the appearance frequency of specific reserved program information in the target community group, id f is all users
  • the reserved program information of a specific program is included in the reserved program information of! /, Indicating the reciprocal of the number of users. If certain reserved program information appears frequently in one community group and the number of users in which the reserved program information appears is small, it is a characteristic of community groups with high tf .idf values. It can be said that it is reserved program information. Therefore, this characteristic reserved program information is generated as a recommended program specialized for the community group.
  • the configuration of the fourth embodiment for generating a recommended program using the tf 'idf value is the same as that of the specialization generating unit 30 of the program recommendation server 3 in FIG. Section 236, All User Reservation Information Statistics Section 237, and Community Specialization Section 238.
  • the community reservation information statistical unit 236 calculates tf of the tf'idf value, and extracts reserved program information having a high appearance frequency within the community group. Actually, the community reservation information statistics section 236 counts up the reservation program information group held for each user belonging to the community group for each reservation program information one by one in the community group, and the appearance frequency The reserved program information with a high value is extracted, and the appearance frequency is calculated as tf.
  • FIG. 30 is a flowchart showing a process flow of the community reservation information statistics unit 236 according to the fourth embodiment.
  • the community reservation information statistics unit 236 acquires the reservation program information of all users in the community group to which the user (authenticated user) authenticated by the user management unit 231 belongs from the reservation information DB 235 (step S 161 ).
  • the reserved program information acquired here is reserved program information transmitted by a user belonging to the same community group as the user whose user information is authenticated by the user management unit 231, that is, a program reserved in the community group of the authenticated user. Is reserved program information.
  • the community reservation information statistics unit 236 displays the community group to which the authenticated user belongs. The total number of all reserved program information in the program is acquired (step S162). Next, the community reservation information statistic section 236 provides information for each reserved program within the community group.
  • the community reservation information statistical unit 236 calculates the appearance frequency tf of each reserved program information in the community group to which the authenticated user belongs (step S164). Specifically, the community reservation information statistics unit 236 calculates the appearance frequency tf of reserved program information by dividing the number of reserved program information in the community group by the total number of all reserved program information in the community group. .
  • the community reservation information statistics unit 236 determines whether or not the appearance frequency tf of all reservation program information within the community group has been calculated (step S165).
  • the appearance frequency tf of all the reserved program information is calculated and determined to be! /, NA! / (NO in step S165)
  • the community reservation information statistics unit 236 proceeds to the process of step S163. Return, and count the number of reservations for other reserved program information in the community group.
  • the community reservation information statistics unit 236 displays the information on all community groups to which the authenticated user belongs. It is determined whether or not the appearance frequency tf of the reserved program information has been calculated (step S166). That is, if the authenticated user belongs to multiple community groups, the appearance frequency tf of the reserved program information is calculated for all community groups to which the authenticated user belongs.
  • step S166 if it is determined that the appearance frequency tf of the reservation program information of all community groups has not been calculated (NO in step S166), the community reservation information statistics unit 236 performs the processing of step S161. Return to the reservation information DB 235 for the reserved program information of all users in other community groups to which the authenticated user belongs. On the other hand, if it is determined that the appearance frequency tf of the reserved program information of all community groups has been calculated (YES in step S166), the process ends.
  • All user reservation information statistics section 237 calculates the idf of tf 'idf value, and among all the reserved program information registered in the reservation information DB 235, all reservation program information in the community group Calculate the appearance frequency of each one. Reservation program information in the community group When the appearance frequency is high in the reserved program information of all users, idf becomes small and it is determined that the reserved program information is not represented by the community group. On the other hand, if the frequency of appearance is low in the reserved program information capability S in the community gnope and the reserved program information of all users! /, The idf will increase and the reserved program information represented by the community group will be increased. It is determined to be information.
  • the all-user reservation information statistics unit 237 adds a certain reserved program information k! /, Log ((total number of users) ⁇ (number of users having reserved program information k)) + Calculate idf by 1.
  • FIG. 31 is a flowchart showing a process flow of the all-user reservation information statistics unit 237 according to the fourth embodiment.
  • all users reservation information statistics unit 237 acquires the total number of users registered in the user attribute DB232 through the user management unit 231 and the reservation information registration section 2 34 (step S 171) 0 then The all-user reservation information statistics unit 237 counts the number of users who have made reservations for each reserved program information in the community group of the authenticated user (step S 1 72).
  • the all-user reservation information statistics unit 237 calculates the idf of each reserved program information in the community group to which the authenticated user belongs (step S173). Specifically, the all user reservation information statistics unit 237 calculates idf of each reserved program information based on the following equation (1).
  • idf log ((total number of users) ⁇ (number of users with each reserved program information)) + 1 ⁇ ⁇ ⁇ (1)
  • the all-user reservation information statistics unit 237 determines whether or not idf has been calculated for all reservation program information in the community group (step S174). Here, if it is determined that the idf of all the reserved program information has not been calculated (NO in step S174), the all user reserved information statistics unit 237 returns to the process of step S172, and others in the community group. For the reserved program information, the number of users who have made reservations is counted. On the other hand, if it is determined that the idf of all the reserved program information has been calculated (YES in step S174), the process ends.
  • idf is calculated using the total number of users and the number of users having each reserved program information.
  • the present invention is not particularly limited to this, and all community groups The idf may be calculated using the number and the number of community groups having each reserved program information.
  • the community specialization unit 238 determines all users in the community group.
  • the tf ⁇ idf value is calculated for each reserved program information and output to the recommended program creating unit 239.
  • the tf 'idf value is calculated by tf X idf.
  • the recommended program creating unit 239 extracts, as recommended programs, programs to be recommended that have a high tf'idf value and are not yet reserved by the user who makes the recommendation. Therefore, all users who have a high appearance frequency in the community group are recommended programs that do not have a high appearance frequency, that is, have a large idf, and have not yet been reserved by the recommending user. As a result, the user is recommended a program that is specialized for the community group, that is, that matches the user's preferences! /.
  • FIG. 32 is a flowchart showing a process flow of the community specializing unit 238 according to the fourth embodiment.
  • the community specialization unit 238, for the reserved program information in the community group to which the authenticated user belongs, the tf acquired by the community reservation information statistics unit 236 and the idf acquired by the all user reservation information statistics unit 237. are used to calculate the tf ⁇ idf value (step S 181).
  • the community specializing unit 238 determines whether or not the tf'idf values of all the reserved program information in the community group to which the authenticated user belongs have been calculated (step S182). Here, if the tf ⁇ idf values of all the reserved program information are calculated and determined as! /, NA! / (NO in step S182), the community specializing unit 238 performs the process of step S181. Return to, and calculate the tf.idf value of other reserved program information in the community group to which the authenticated user belongs.
  • the community specializing unit 238 determines the recommendation threshold for determining the program to be recommended. Find the value.
  • the recommendation threshold is preferably a value that can be easily calculated, such as an average value of tf′idf values in the reserved program information in the community group. Therefore, the community specializing unit 238 calculates an average value of tf • idf values of all the reserved program information in the community group (step S183).
  • the community specializing unit 238 extracts reservation program information having a tf'idf value equal to or greater than the recommendation threshold (average value) as recommendation target reserved program information.
  • the community specializing unit 238 determines whether or not the recommended user reserved program information is reserved by the authenticated user! /, Nana! /, And reserved program information (step S185). If it is determined that there is no reserved program information that is not reserved by the authenticated user (NO in step S185), the process ends.
  • the community specializing unit 238 makes a reservation for which the authenticated user has not reserved. From the program information, a predetermined number of reserved program information is extracted as a recommended program in descending order of tf'idf value, and recommended program information including program identification information for identifying the recommended program is created (step S 186).
  • FIG. 33 is a diagram for explaining extraction of a recommended program using the tf′idf value.
  • the horizontal axis in the table 301 shown in FIG. 33 represents program Arufa ⁇ zeta reserved, the vertical axis represents the community two Tigunorepu C L ⁇ c4, the user A ⁇ P belonging to each community group .
  • Circles in Table 301 indicate which programs the user has reserved.
  • the user A is an authenticated user whose user information has been authenticated by the user management unit 231.
  • the community specializing unit 238 obtains a tf 'idf value, and recommends a recommended program based on the tf' idf value. Extract.
  • the tf 'idf value is calculated for each reserved program information of the community groups cl and c2.
  • the community special 238 calculates the tf'idf value in the same manner for the other warps. Then, the community specializing unit 238 calculates an average value of the calculated 10 tf ⁇ idf values, and sets reserved program information having a tf.idf value equal to or greater than the average value as recommended target reserved program information.
  • program ⁇ and program ⁇ in community group cl are recommended reserved programs
  • program ⁇ , program ⁇ , and program ⁇ in community group c2 are recommended target reserved programs.
  • the program ⁇ and the program ⁇ have a higher tf ′ idf value than the average value, but since the program is already reserved by the user A, the program / 3 and the program ⁇ among the remaining programs are It is extracted as a recommended target reserved program.
  • the program tf ′ idf value of the program / 3 is larger than the tf ′ idf value of the program ⁇ , it is recommended for the program / 3 power and is recommended for the program ⁇ power third.
  • the reserved program information characteristic of the community group to which the authenticated user belongs is extracted for all users registered in the user attribute DB 232 and is not all users.
  • the reserved program information may be extracted for users who belong to a predetermined plural community gnole.
  • the predetermined plural community groups can be set by the following method, for example.
  • the idf value is obtained using the total number of users as described in the present embodiment.
  • a community group whose community reservation rate (recommended number of recommended programs in the community group ⁇ number of users in the community group) of the program recommended in the first process is equal to or higher than a predetermined threshold (for example, 0.5) is selected. Neighboring community gnole.
  • a community group with a high program reservation rate recommended to an authenticated user can be said to be a community group (neighboring community group) whose program reservation tendency is similar to the community group to which the authenticated user belongs.
  • the idf value is obtained using the total number of users in the neighborhood community gnole and the community gnole to which the authenticated user belongs. That is, the idf value of the reserved program information k is given by the following equation (2) Is calculated based on
  • idf log ((Number of users in the neighborhood community group + Number of users in the community group to which the authenticated user belongs) ⁇ Number of users in which the reserved program information k appears) + 1 ⁇ ⁇ ⁇ (2)
  • program ⁇ is recommended (first place) to authenticated user A! /.
  • the community reservation rates of the recommended program / 3 in the community groups c3 and c4 to which the authenticated user ⁇ does not belong are 0.5 and 0.3, respectively.
  • Community gnole c3 greater than or equal to the threshold (0.5) is the neighborhood community gnole.
  • the neighborhood community group may be updated by periodically performing the same process as the first program recommendation. In this way, even if the program reservation tendency of the community group changes with the passage of time, program recommendation specialized for the community group can be performed.
  • this neighborhood community gnole can be judged as a community gnole with relatively close preference. For this reason, it is possible to provide a mechanism for recommending the user to join a nearby community group. As a result, it can be expected that the user can easily find a community group close to his / her preference.
  • the force S using the average value of tf'idf values as a program recommendation threshold is not limited to this.
  • the synergistic average or median value is used as the recommendation threshold value, so that the program recommendation that the user can convince can be performed with high accuracy S.
  • the community specialization unit 238 compares the recommended reserved program information with the reserved program information reserved by the authenticated user! /, Ruru community reservation information statistics unit 236 and The all-user reservation information statistics unit 237 may compare the reserved program information to be processed with the reserved program information of the authenticated user and exclude the reserved program information of the authenticated user from the processing target. With this configuration, the processing target reserved program information in the community reservation information statistics unit 236 and the all user reservation information statistics unit 237 is reduced, and the calculation processing amount can be reduced.
  • the tf'idf value may be calculated using information other than the reserved program information of the program.
  • the tf 'idf value is calculated from the title of the content created by the user, such as a blog or diary, or a word that appears in the content. You can recommend a program whose word is included in the title or detailed information of the program information (information obtained from EPG, tags associated with the program, etc.).
  • program information and words represented by a community group may be associated as detailed information of the community group. By doing so, it can be used as tag information when searching for community groups, or when a community group name is displayed, a list is output at the same time, so that when a user selects a community group, The effect is to make it easier to select community groups that match user preferences.
  • a program recommendation system is connected to a program viewing terminal for viewing a received program, and the program viewing terminal so as to be communicable with each other via a network, and a user operation on the program
  • a program recommendation system comprising: a program recommendation server that obtains operation information representing the information from the program viewing terminal and creates recommendation information related to a program that matches the user's preference according to the operation information.
  • the viewing terminal includes an operation receiving unit that receives an input of the operation information, and an operation information transmitting unit that transmits the operation information received by the operation receiving unit to the program recommendation server.
  • the recommendation server includes an operation information receiving unit that receives the operation information transmitted by the operation information transmitting unit, an operation information storage unit that stores the operation information received by the operation information receiving unit for each user, A first grouping the users into a first group based on the operation information received by the operation information receiving unit and the operation information for each user stored in the operation information storage unit! A grouping unit; a second grouping unit that groups the users into a second group that includes the first group grouped by the first grouping unit; and the grouping unit configured by the first grouping unit. The grouping result of the operation information of the users belonging to the first group and the second grouping unit.
  • a recommendation information generation unit that generates the recommendation information unique to the first group based on the totaled result of the operation information of the users belonging to the second group, and the recommendation information generation unit
  • a recommendation information transmission unit that transmits the recommendation information generated by the program viewing terminal to the program viewing terminal, and the program viewing terminal receives a recommendation information transmission unit that receives the recommendation information transmitted by the recommendation information transmission unit.
  • a program control unit that performs at least one of selection, recording, reproduction, and deletion of a program based on the recommendation information received by the recommendation information receiving unit.
  • the program viewing terminal accepts input of operation information indicating the user's operation on the program, and the received operation information is transmitted to the program recommendation server. Then, in the program recommendation server, the operation information transmitted by the program viewing terminal is received, and the received operation information is stored for each user in the operation information storage unit. Next, based on the received operation information and the operation information for each user stored in the operation information storage unit, the users are grouped into the first group and the second group including the first group. Users are grouped into groups. Based on the totaled result of operation information of users belonging to the first group and the totaled result of operation information of users belonging to the second group, recommendation information specific to the first group is generated and generated. The recommended information is sent to the program viewing terminal.
  • the recommendation information transmitted by the program recommendation server is received, and at least one of program selection, recording, reproduction, and deletion is performed based on the received recommendation information.
  • a program operated by another user having the same preference as that of the first user is extracted based on the total result of the operation information of the users belonging to the first group, and the first group including the first group is extracted.
  • the programs that are generally preferred are extracted, and the programs extracted based on the first group are extracted based on the second group. Since the influence of the selected program is eliminated, it is possible to eliminate programs with a high degree of preference in general, and to recommend programs that are specific to specific user preferences.
  • the program viewing terminal further includes a marking receiving unit that receives a marking of a reproduction position in the program by the user, and the operation information includes the marking receiving unit. It is preferable to include marking time information indicating a time corresponding to a reproduction position in the program marked by.
  • the marking of the reproduction position in the program by the user is accepted, and the operation information includes the marking time information indicating the time corresponding to the reproduction position in the marked program. Therefore, the user's preference can be determined based on the reproduction position in the marked program.
  • the program is broadcast in a state in which a display screen is divided into a plurality of areas, and the program viewing terminal has the plurality of programs on the display screen.
  • An in-screen selection receiving unit for receiving selection by the user of at least one of the regions, and the operation information includes time information in the program at the time when the selection is received by the in-screen selection receiving unit. It is preferable.
  • the program is broadcast in a state where the display screen is divided into a plurality of regions, and at the program viewing terminal, at least one of the plurality of regions on the display screen is selected by the user. Accepted.
  • the operation information includes time information in the program at the time when the selection is accepted. Therefore, the user's preference can be determined based on at least one area selected by the user among the plurality of areas on the display screen.
  • the program recommended by the program recommendation server can be automatically reproduced from the reproduction position corresponding to the time information.
  • the program is broadcast in a state in which a display screen is divided into a plurality of areas, and the program viewing terminal has the plurality of programs on the display screen.
  • An in-screen selection receiving unit that accepts selection by the user of at least one of the regions is further included, and the operation information includes position information on the display screen from which selection has been accepted by the in-screen selection receiving unit. It is preferable.
  • the program is broadcast in a state where the display screen is divided into a plurality of regions, and at the program viewing terminal, at least one of the plurality of regions on the display screen is selected by the user. Accepted.
  • the operation information includes position information on the display screen where the selection is accepted. Therefore, the user's preference can be determined based on at least one area selected by the user from among the plurality of areas on the display screen. Further, only a predetermined area in the program recommended by the program recommendation server can be enlarged and reproduced.
  • the recommendation information includes area identification information for identifying the area selected by the user from among the plurality of areas. That's right. According to this configuration, since the recommendation information includes the area identification information for identifying the area selected by the user from among the plurality of areas, the area in the program is specified based on the area identification information. The specified area can be reproduced.
  • the recommendation information includes reproduction start time information related to the reproduction start position of the recommended program.
  • the recommended information includes the reproduction start time information related to the reproduction start position of the recommended program. Therefore, even in the program in which the program recommended by the program recommendation server is not reproduced from the beginning. Can be reproduced from the reproduction start position according to the user's preference.
  • the recommendation information preferably includes packet identification information for identifying a specific packet among a plurality of packets constituting a recommended program. .
  • the recommendation information includes packet identification information for identifying a specific packet among a plurality of packets constituting the recommended program, a program recommended by the program recommendation server is displayed. Even in programs that do not play from the beginning, user preferences It is possible to reproduce from a specific packet according to the preference.
  • the first grouping unit extracts a user group having operation information equivalent to the operation information received by the operation information receiving unit from the operation information storage unit.
  • the user group is preferably dubbed as the first group.
  • the user group having the operation information equivalent to the received operation information is extracted from the operation information storage unit, and the extracted user group is grouped as the first group. Therefore, users with similar operation information can be grouped as the first group to group users with similar preferences.
  • the operation information includes program identification information for identifying a program that is a user's operation target
  • the first grouping unit includes: A user group having the same program identification information as the program identification information included in the operation information received by the operation information receiving unit is extracted from the operation information storage unit, and the user group is extracted from the first group. It is preferable to group them as follows.
  • the operation information includes the program identification information for identifying the program that is the operation target of the user, and the same program as the program identification information included in the received operation information
  • a group of users having identification information is extracted from the operation information storage unit, and the extracted user group is grouped as a first group. Therefore, by grouping a group of users having the same program identification information, users with similar preferences can be grooved.
  • the first grouping unit has a time overlap with the marking time information included in the operation information received by the operation information receiving unit. It is preferable to extract a group of users having marking time information from the operation information storage unit and group the group of users as the first group.
  • a group of users having marking time information that overlaps with the marking time information included in the received operation information is extracted from the operation information storage unit.
  • the extracted user group is grouped as a first group. Therefore, it is possible to group users who have similar preferences by grouping a group of users who have marked overlapping portions in the program.
  • the first grouping unit includes a group of users having the same region identification information as the region identification information included in the operation information received by the operation information receiving unit. Are extracted from the operation information storage unit, and the user group is preferably grouped as the first group.
  • the user group having the same area identification information as the area identification information included in the received operation information is extracted from the operation information storage unit, and the extracted user group is the first Grouped as a group. Therefore, by grouping a group of users having the same region identification information, it is possible to group users having similar preferences with the force S.
  • the second grouping unit groups all users registered in advance in the program recommendation server as the second group.
  • the second grouping unit is pre-registered in the attribute information input in advance by a user registered in advance in the program recommendation server or in the program recommendation server. It is preferable to group a plurality of users having attribute information equivalent to attribute information extracted from existing users as the second group.
  • the attribute information equivalent to the attribute information input in advance by the user registered in advance in the program recommendation server or the attribute information extracted from the user registered in advance in the program recommendation server A number of users with a group are grouped as the second group. Therefore, multiple users with equivalent attribute information Therefore, the number of users belonging to the second group can be reduced, and the time required for the process of generating the recommended program can be reduced.
  • the recommendation information generation unit normalizes the totaled result of the operation information included in the first group by the number of users in the first group, and The operation results included in group 2 are normalized by the number of users in the second loop, and the results of the second group are normalized from the normalized results of the first group. It is preferable that the recommendation information peculiar to the first gnole is generated based on the subtraction result.
  • the operation information aggregation result included in the first group is normalized by the number of users in the first group, and the operation information aggregation result included in the second group is the first result. Normalized by the number of users in the two groups, the normalized result of the second group is subtracted from the normalized result of the first group, and a recommendation specific to the first group based on the subtraction result Information is generated.
  • the recommendation information generation unit calculates tf (Term Frequency) of the operation information included in the first group, and is included in the second group.
  • An idf (Inverse Document Frequency) of the operation information is calculated, a tf ′ idf value for each operation information is calculated based on the tf and the idf, and based on a tf ′ idf value for each operation information,
  • the recommendation information specific to the first group is generated.
  • tf Term Frequency
  • idf Inverse Document Frequency
  • tf And tf 'idf value for each operation information is calculated based on and idf.
  • recommendation information specific to the first group is generated based on the tf′idf value for each operation information.
  • the recommendation information specific to the first group is set. Since the information is generated, it is possible to eliminate programs that are generally highly preferred and recommend programs that are specific to specific user preferences.
  • a program viewing terminal represents a program receiving unit that receives a program included in a broadcast wave or communication data, and a user operation on the program received by the program receiving unit.
  • the operation accepting unit that accepts input of the operation information and the operation information accepted by the operation accepting unit are communicably connected via a network, and the recommended information regarding the program that matches the user's preference is the operation.
  • An operation information transmitting unit that transmits to a program recommendation server created according to information, a recommendation information receiving unit that receives the recommendation information transmitted by the program recommendation server, and the recommendation information receiving unit that receives the recommendation information
  • a program control unit that performs at least one of program selection, recording, reproduction, and deletion based on the recommendation information.
  • a program viewing program includes a program receiving unit that receives a program included in a broadcast wave or communication data, and a user operation on the program received by the program receiving unit.
  • the operation reception unit that receives the input of the operation information representing the information, and the operation information received by the operation reception unit are connected to be communicable via a network, and the recommended information regarding the program that matches the user's preference.
  • the operation information transmitting unit that transmits to the program recommendation server created according to the operation information, the recommendation information receiving unit that receives the recommendation information transmitted by the program recommendation server, and the recommendation information receiving unit. Based on the recommendation information, the computer is caused to function as a program control unit that performs at least one of program selection, recording, reproduction, and deletion.
  • a program viewing method includes a program receiving step of receiving a program included in a broadcast wave or communication data, and the program received in the program receiving step!
  • the operation accepting step for accepting input of the operation information representing the user's operation and the operation information accepted in the operation accepting step are communicably connected via a network and meet the user's preference.
  • An operation information transmission step for transmitting recommended information related to a program to a program recommendation server created according to the operation information, a recommendation information reception step for receiving the recommendation information transmitted by the program recommendation server, and the recommendation information reception Based on the recommendation information received in the step.
  • a program control step for performing at least one of program selection, recording, playback, and erasure.
  • a program included in broadcast waves or communication data is received, and input of operation information representing a user operation on the received program is accepted.
  • the received operation information is communicably connected via a network, and is transmitted to a program recommendation server that creates recommendation information related to a program that meets the user's preference according to the operation information. Thereafter, the recommendation information transmitted by the program recommendation server is received, and at least one of program selection, recording, reproduction, and deletion is determined based on the received recommendation information.
  • the program recommendation server is connected to be communicable with each other via a network, and represents an operation representing a user operation on the program transmitted by the program viewing terminal for viewing the received program.
  • An operation information receiving unit for receiving information
  • an operation information storing unit for storing the operation information received by the operation information receiving unit for each user, and the operation information received by the operation information receiving unit.
  • the first grouping unit for grouping the users into a first group and the first grouping unit are grouped by the first grouping unit.
  • a recommendation information generation unit that generates the recommendation information specific to the first group, and a recommendation information transmission unit that transmits the recommendation information generated by the recommendation information generation unit to the program viewing terminal.
  • the program recommendation program is connected to each other via a network so that they can communicate with each other, and the number transmitted by the program viewing terminal for viewing the received program.
  • An operation information receiving unit that receives operation information representing a user's operation on the set, an operation information storage unit that stores the operation information received by the operation information receiving unit for each user, and received by the operation information receiving unit
  • a first grouping unit for grouping the users into a first group based on the operated operation information and the operation information for each user stored in the operation information storage unit; and the first grouping.
  • a second grouping unit that groups the users into a second group that includes the first group grouped by a unit, and a user that belongs to the first group grouped by the first grouping unit And the second group grouped by the second grouping unit.
  • a recommendation information generation unit that generates the recommendation information that is specific to the first group based on a result of the operation information of users belonging to the group, and the recommendation information that is generated by the recommendation information generation unit.
  • a computer is caused to function as a recommendation information transmission unit that transmits to the program viewing terminal.
  • a program recommendation method receives operation information representing a user operation on the program transmitted by a program viewing terminal that is connected to be communicable with each other via a network and views the received program.
  • the users are grouped into the first group and include the second loop. Users are grouped into groups. Based on the totaled result of operation information of users belonging to the first group and the totaled result of operation information of users belonging to the second group, recommendation information specific to the first group was generated and generated Recommendation information is transmitted to the program viewing terminal.
  • a program operated by another user having the same preference as that of the first user is extracted based on the total result of the operation information of the users belonging to the first group, and the first group including the first group is extracted. Based on the results of the operation information of users belonging to group 2, the programs that are generally preferred are extracted, and the programs extracted based on the first group are extracted based on the second group. Since the influence of the selected program is eliminated, it is possible to eliminate programs with a high degree of preference in general, and to recommend programs that are specific to specific user preferences.
  • a program operated by another user having the same preference as that of the first user is extracted based on the total result of the operation information of the users belonging to the first group, and the first group is extracted.
  • the programs that are generally preferred are extracted, and the programs extracted based on the first group are changed to the second group. Since the influence of the program extracted based on this is eliminated, it is possible to eliminate the program having a high degree of preference in general, and to recommend a program specialized for the taste of a specific user.
  • the program recommendation system, the program viewing terminal, the program viewing program, the program viewing method, the program recommendation server, the program recommendation program, and the program recommendation method according to the present invention generally excludes programs with high preference! / A program specialized in specific user preferences, a program viewing terminal for viewing the received program, a program viewing program and a program viewing method, Useful as a program recommendation server, a program recommendation program and a program recommendation method for creating recommended information related to a user's preference according to operation information, and a program recommendation system including a program viewing terminal and a program recommendation server .

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Computer Graphics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

明 細 書
番組推薦システム、番組視聴端末、番組視聴プログラム、番組視聴方法 、番組推薦サーバ、番組推薦プログラム及び番組推薦方法
技術分野
[0001] 本発明は、番組の視聴、番組の録画、録画した番組の再生、録画した番組の消去 及び番組の録画予約などのユーザ操作を蓄積し、協調フィルタリング処理に基づレ、 てユーザに番組を推薦する番組推薦システム、番組推薦サーバ、番組推薦プロダラ ム及び番組推薦方法に関するものである。また、本発明は、受信した番組を録画また は再生する番組視聴端末、番組視聴プログラム及び番組視聴方法に関するものであ 背景技術
[0002] 近年、テレビ視聴形態として従来のテレビ放送だけではなぐケーブルテレビ放送、 衛星テレビ放送、これらのデジタルテレビ放送及び IP (Internet Protocol)放送な ど多様化されるに従って、ユーザが選択しうるチャンネル数が激増している。よって、 ユーザは、従来のようにザッビングによって自身に最適な番組を選択することが困難 となっている。
[0003] この問題を解決するために、従来、ユーザの選択した番組情報を収集してランキン グすることによって、一般的に嗜好度の高い番組を自動的に判別可能とし、これをュ 一ザに推薦する方法が知られている。
[0004] しかしながら、この方法では、一般的に嗜好度の高い番組の抽出には貢献できるが 、すべてのユーザが一般的な嗜好を有しているわけではない。そのため、各ユーザ に個別に最適な番組を推薦することは不可能であり、結局は、ユーザ自身で自身の 嗜好番組を検索するという煩雑な処理が必要となる。
[0005] そこで、ユーザの過去の番組選択状況を蓄積して、これをサーバ側で管理し、蓄積 されて!/、るユーザ毎の番組選択状況を比較して、類似した選択状況であるユーザを グルーピングして、このグループ内の選択状況に基づ!/、てユーザにお勧め番組を紹 介する方法が開示されている(例えば、特許文献 1参照)。 [0006] また、番組の視聴履歴情報、コンテンツ記録再生に関連する機器操作履歴情報、 ユーザ属性情報を含んだユーザ情報を複数のユーザ力 取得、集計し、集計したュ 一ザを複数のグルーピング方法に従いユーザ'グループに仕分け、特定のユーザ' グループにおける統計情報を作成することでユーザにお勧め番組を紹介する方法が 開示されてレ、る (例えば、特許文献 2参照)。
[0007] これら!/、ずれの方法でも、膨大なユーザの視聴履歴情報を収集し、 V、わゆる協調フ ィルタリングによって、同一嗜好を持ったユーザをグルーピングして、グループ内でュ 一ザに対する推薦番組を抽出することが可能となる。したがって、ユーザにとって嗜 好番組を選択するという煩雑な操作を無くして、ユーザにとってメリットのあるシステム を提供することが可能である。
[0008] しかしながら、上記、いずれの方法でも、下記に示す場合には、これらの推薦する 番組情報は、まったく意味を成さない。
[0009] まず、 1点目として、数年に一度のスポーツ番組や年に一度の音楽番組など、個々 のユーザの内面的な嗜好に関係なぐ圧倒的に視聴される番組がある場合には、ュ 一ザを嗜好パターンでグルーピングしたとしても、いずれのグループでもほぼ同一の 推薦番組しか抽出されない。そのため、ユーザの嗜好パターンでのグルーピングそ のものが意味を成さない。そもそも圧倒的に視聴され得る番組は、このような推薦番 組を抽出するシステムを使用することなぐユーザ自身で選択できることは容易に想 像できるので、システムの意味が無い。
[0010] 2点目に、例えばニュース番組などのように、番組内の特定ニュース、特定シーンの みを推薦できない点である。これによつて、番組を推薦されたとしても、ユーザがその 番組内のどのシーンを推薦されているのかが判断できない。結局、ユーザは、その番 組を全て自身で視聴して判断する必要があり、ユーザにとって煩雑な処理が残って しまう。
特許文献 1 :特開 2001— 298677号公報
特許文献 2:特開 2005— 33600号公報
発明の開示
[0011] 本発明は、上記の問題を解決するためになされたもので、一般的に嗜好度の高い 番組を排除し、特定のユーザの嗜好に特化した番組を推薦することができる番組推 薦システム、番組視聴端末、番組視聴プログラム、番組視聴方法、番組推薦サーバ 、番組推薦プログラム及び番組推薦方法を提供することを目的とするものである。
[0012] 本発明の一局面に係る番組推薦システムは、受信した番組を視聴する番組視聴端 末と、前記番組視聴端末とネットワークを介して互いに通信可能に接続され、前記番 組に対するユーザの操作を表す操作情報を前記番組視聴端末から取得し、前記ュ 一ザの嗜好に合った番組に関する推薦情報を前記操作情報に応じて作成する番組 推薦サーバとを備える番組推薦システムであって、前記番組視聴端末は、前記操作 情報の入力を受け付ける操作受付部と、前記操作受付部によって受け付けられた前 記操作情報を前記番組推薦サーバに送信する操作情報送信部とを備え、前記番組 推薦サーバは、前記操作情報送信部によって送信された前記操作情報を受信する 操作情報受信部と、前記操作情報受信部によって受信された前記操作情報を前記 ユーザ毎に記憶する操作情報記憶部と、前記操作情報受信部によって受信された 前記操作情報と、前記操作情報記憶部に記憶されて!、るユーザ毎の前記操作情報 とに基づいて、前記ユーザを第 1のグループにグルーピングする第 1のグルーピング 部と、前記第 1のグルーピング部によってグルーピングされた前記第 1のグループを 包含する第 2のグループに前記ユーザをグルーピングする第 2のグルーピング部と、 前記第 1のグルーピング部によってグルーピングされた前記第 1のグループに属する ユーザの前記操作情報の集計結果と、前記第 2のグルーピング部によってグルーピ ングされた前記第 2のグループに属するユーザの前記操作情報の集計結果とに基づ いて、前記第 1のグループに特有の前記推薦情報を生成する推薦情報生成部と、前 記推薦情報生成部によって生成された前記推薦情報を前記番組視聴端末に送信す る推薦情報送信部とを備え、前記番組視聴端末は、前記推薦情報送信部によって 送信された前記推薦情報を受信する推薦情報受信部と、前記推薦情報受信部によ つて受信された前記推薦情報に基づいて、番組の選択、記録、再生及び消去のうち の少なくとも 1つを行う番組制御部とをさらに備える。
[0013] 本発明の他の局面に係る番組視聴端末は、放送波又は通信データに含まれる番 組を受信する番組受信部と、前記番組受信部によって受信された前記番組に対する ユーザの操作を表す前記操作情報の入力を受け付ける操作受付部と、前記操作受 付部によって受け付けられた前記操作情報を、ネットワークを介して通信可能に接続 され、前記ユーザの嗜好に合った番組に関する推薦情報を前記操作情報に応じて 作成する番組推薦サーバに送信する操作情報送信部と、前記番組推薦サーバによ つて送信された前記推薦情報を受信する推薦情報受信部と、前記推薦情報受信部 によって受信された前記推薦情報に基づいて、番組の選択、記録、再生及び消去の うちの少なくとも 1つを行う番組制御部とを備える。
[0014] 本発明の他の局面に係る番組視聴プログラムは、放送波又は通信データに含まれ る番組を受信する番組受信部と、前記番組受信部によって受信された前記番組に対 するユーザの操作を表す前記操作情報の入力を受け付ける操作受付部と、前記操 作受付部によって受け付けられた前記操作情報を、ネットワークを介して通信可能に 接続され、前記ユーザの嗜好に合った番組に関する推薦情報を前記操作情報に応 じて作成する番組推薦サーバに送信する操作情報送信部と、前記番組推薦サーバ によって送信された前記推薦情報を受信する推薦情報受信部と、前記推薦情報受 信部によって受信された前記推薦情報に基づいて、番組の選択、記録、再生及び消 去のうちの少なくとも 1つを行う番組制御部としてコンピュータを機能させる。
[0015] 本発明の他の局面に係る番組視聴方法は、放送波又は通信データに含まれる番 組を受信する番組受信ステップと、前記番組受信ステップにお!/、て受信された前記 番組に対するユーザの操作を表す前記操作情報の入力を受け付ける操作受付ステ ップと、前記操作受付ステップにおいて受け付けられた前記操作情報を、ネットヮー クを介して通信可能に接続され、前記ユーザの嗜好に合った番組に関する推薦情報 を前記操作情報に応じて作成する番組推薦サーバに送信する操作情報送信ステツ プと、前記番組推薦サーバによって送信された前記推薦情報を受信する推薦情報 受信ステップと、前記推薦情報受信ステップにおいて受信された前記推薦情報に基 づいて、番組の選択、記録、再生及び消去のうちの少なくとも 1つを行う番組制御ス テツプとを含む。
[0016] 本発明の他の局面に係る番組推薦サーバは、ネットワークを介して互いに通信可 能に接続され、受信した番組を視聴する番組視聴端末によって送信された前記番組 に対するユーザの操作を表す操作情報を受信する操作情報受信部と、前記操作情 報受信部によって受信された前記操作情報を前記ユーザ毎に記憶する操作情報記 憶部と、前記操作情報受信部によって受信された前記操作情報と、前記操作情報記 憶部に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1の グループにグルーピングする第 1のグルーピング部と、前記第 1のグルーピング部に よってグルーピングされた前記第 1のグループを包含する第 2のグループに前記ユー ザをグルーピングする第 2のグルーピング部と、前記第 1のグルーピング部によってグ ルービングされた前記第 1のグループに属するユーザの前記操作情報の集計結果と 、前記第 2のグルーピング部によってグルーピングされた前記第 2のグループに属す るユーザの前記操作情報の集計結果とに基づいて、前記第 1のグループに特有の 前記推薦情報を生成する推薦情報生成部と、前記推薦情報生成部によって生成さ れた前記推薦情報を前記番組視聴端末に送信する推薦情報送信部とを備える。
[0017] 本発明の他の局面に係る番組推薦プログラムは、ネットワークを介して互いに通信 可能に接続され、受信した番組を視聴する番組視聴端末によって送信された前記番 組に対するユーザの操作を表す操作情報を受信する操作情報受信部と、前記操作 情報受信部によって受信された前記操作情報を前記ユーザ毎に記憶する操作情報 記憶部と、前記操作情報受信部によって受信された前記操作情報と、前記操作情報 記憶部に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1 のグループにグルーピングする第 1のグルーピング部と、前記第 1のグルーピング部 によってグルーピングされた前記第 1のグループを包含する第 2のグループに前記ュ 一ザをグルーピングする第 2のグルーピング部と、前記第 1のグルーピング部によって グルーピングされた前記第 1のグループに属するユーザの前記操作情報の集計結 果と、前記第 2のグルーピング部によってグルーピングされた前記第 2のグループに 属するユーザの前記操作情報の集計結果とに基づいて、前記第 1のグループに特 有の前記推薦情報を生成する推薦情報生成部と、前記推薦情報生成部によって生 成された前記推薦情報を前記番組視聴端末に送信する推薦情報送信部としてコン ピュータを機能させる。
[0018] 本発明の他の局面に係る番組推薦方法は、ネットワークを介して互いに通信可能 に接続され、受信した番組を視聴する番組視聴端末によって送信された前記番組に 対するユーザの操作を表す操作情報を受信する操作情報受信ステップと、前記操作 情報受信ステップにおいて受信された前記操作情報を前記ユーザ毎に操作情報記 憶部に記憶する操作情報記憶ステップと、前記操作情報受信ステップにお!/、て受信 された前記操作情報と、前記操作情報記憶部に記憶されてレ、るユーザ毎の前記操 作情報とに基づいて、前記ユーザを第 1のグループにグルーピングする第 1のグルー ビングステップと、前記第 1のグルーピングステップにおレ、てグルーピングされた前記 第 1のグループを包含する第 2のグループに前記ユーザをグルーピングする第 2のグ ルービングステップと、前記第 1のグルーピングステップにおレ、てグルーピングされた 前記第 1のグループに属するユーザの前記操作情報の集計結果と、前記第 2のグノレ 一ビング部によってグルーピングされた前記第 2のグループに属するユーザの前記 操作情報の集計結果とに基づいて、前記第 1のグループに特有の前記推薦情報を 生成する推薦情報生成ステップと、前記推薦情報生成部によって生成された前記推 薦情報を前記番組視聴端末に送信する推薦情報送信ステップとを含む。
[0019] 本発明の目的、特徴及び利点は、以下の詳細な説明と添付図面とによって、より明 白となる。
図面の簡単な説明
[0020] [図 1]第 1の実施形態の推薦番組の抽出方法を表した概念図である。
[図 2]第 1の実施形態の番組推薦システムの全体構成を示すブロック図である。
[図 3]第 1の実施形態の番組視聴端末の構成を示すブロック図である。
[図 4]第 1の実施形態の番組推薦サーバの構成を示す図である。
[図 5]第 1の実施形態に係る番組視聴端末における予約情報を送信するまでの処理 の流れを示すフローチャートである。
[図 6]第 1の実施形態に係る番組推薦サーバにおける処理の流れを示すフローチヤ ートである。
[図 7]第 1の実施形態に係る番組視聴端末における推薦情報を受信して力 の処理 の流れを示すフローチャートである。
[図 8] (A)は、番組推薦サーバの予約情報 DBに記憶される情報のデータ構造の一 例を示す図であり、(B)は、番組 Aの予約情報を持ったユーザをグルーピングした結 果を示す図であり、(C)は、番組 Aを予約した全てのユーザをグルーピングしたグノレ ープ内において、番組 A以外の番組の予約率を示す図である。
園 9]第 2の実施形態のマーキング方法とマーキングの集計方法とについて説明する ためのタイミングチャートである。
[図 10]第 2の実施形態のマーキング度数を示したグラフである。
園 11]第 2の実施形態の番組聴端末の構成を示すブロック図である。
園 12]第 2の実施形態の番組推薦サーバの構成を示すブロック図である。
園 13]第 2の実施形態に係る番組視聴端末におけるマーキング情報を送信するまで の処理の流れを示すフローチャートである。
園 14]第 2の実施形態に係る番組推薦サーバにおける処理の流れを示すフローチヤ ートである。
園 15]第 2の実施形態に係る番組視聴端末における推薦情報を受信して力もの処理 の流れを示すフローチャートである。
園 16]第 2の実施形態のマーキング情報のデータ構造の一例を示す図である。 園 17]第 2の実施形態のマーキング DBのデータ構造の一例を示す図である。
園 18]第 2の実施形態のマーキング情報を時間軸で示したタイミングチャートである。 園 19]第 2の実施形態の第 1の応用例のマーキング DBのデータ構造の一例を示す 図である。
園 20]第 2の実施形態の第 1の応用例のマーキング情報の集計方法を説明するため の概念図である。
園 21]第 2の実施形態の第 2の応用例のマーキング DBのデータ構造の一例を示す 図である。
園 22]第 2の実施形態の第 2の応用例のマーキング情報の集計方法を説明するため の概念図である。
園 23]第 3の実施形態の番組推薦システムの概略構成を示す概念図である。
園 24]第 3の実施形態の番組視聴端末の構成を示すブロック図である。
園 25]第 3の実施形態の番組推薦サーバの構成を示すブロック図である。 [図 26]第 3の実施形態に係る番組視聴端末におけるユーザクラスタ情報を送信する までの処理の流れを示すフローチャートである。
[図 27]第 3の実施形態に係る番組推薦サーバにおける処理の流れを示すフローチヤ ートである。
[図 28]第 3の実施形態に係る番組視聴端末における推薦情報を受信して力 の処理 の流れを示す第 1のフローチャートである。
[図 29]第 3の実施形態に係る番組視聴端末における推薦情報を受信して力 の処理 の流れを示す第 2のフローチャートである。
[図 30]第 4の実施形態に係るコミュニティ予約情報統計部の処理の流れを示すフロ 一チャートである。
[図 31]第 4の実施形態に係る全ユーザ予約情報統計部の処理の流れを示すフロー チャートである。
[図 32]第 4の実施形態に係るコミュニティ特化部の処理の流れを示すフローチャート である。
[図 33]tf 'idf値を用いた推薦番組の抽出について説明するための図である。
[図 34]番組 βに対するコミュニティグループ cl〜c4に属するユーザ Α〜Ρの予約状 況を示す図である。
発明を実施するための最良の形態
[0021] 以下、本発明の一実施の形態に係る番組推薦システムについて図面を参照しなが ら説明する。なお、以下の実施の形態は、本発明を具体化した一例であって、本発 明の技術的範囲を限定する性格のものではなレ、。
[0022] (第 1の実施形態)
図 1は、本発明の第 1の実施形態の推薦番組の抽出方法を表した概念図である。 本実施形態では、説明の簡略化のためにユーザの番組操作として、録画予約操作 を用いて説明する。
[0023] 図 1のグラフ 100aは、 "ドラマ A"を予約したユーザをグルーピングした後、グルーピ ングしたグループ Aに属する全ユーザのその他の予約を行っている番組の予約率ラ ンキングを示したものである。すなわち、 "ドラマ A"を予約したユーザのその他の予約 番組のランキングである。従って、本来であれば、 "ドラマ A"を共通に予約していると V、う嗜好条件の一致によって、その他のユーザの嗜好の協調フィルタリングによって 、 "ドラマ A"以外のその他の予約率ランキングの上位番組をユーザに推薦番組として 提供すること力でさる。
[0024] しかしながら、本実施形態では、例えばワールドカップサッカーの日本戦のように、 多数のユーザが、本来のユーザの趣味嗜好と関係の無い特定番組へ一時的に予約 が集中している場合を示している。このような場合においては、 "ドラマ A"を予約した ユーザも、その他のニュースや音楽番組に対して嗜好を持っているユーザであつたと しても、一時的にこのような特定番組に予約が集中している。そのため、その番組を 視聴しているユーザにも、予約した番組でグルーピングしているにもかかわらず同じ 特定番組しか推薦できない事態となる。グラフ 100aでは、推薦番組を生成するため の予約率の閾値 104を超えたワールドカップ 2試合のみが推薦番組 101として生成 されてしまう。
[0025] よって、本実施形態では、 "ドラマ A"を予約したユーザのグループ Aだけではなぐ グループ Aのユーザを包含する、グループ Bを抽出して、このグループ Bの予約率ラ ンキングを生成する(図 1のグラフ 100b)。グループ Bは、グループ Aに属する全ユー ザを全て包含するグループであればどのようなグルーピングでもかまわな!/、が、処理 の軽減のために、番組推薦システムを利用する全てのユーザがグループ Bとしてグ ルービングされる。
[0026] よって、番組推薦システムでは、 "ドラマ A"を予約したグループ Aの予約率ランキン グ(図 1のグラフ 100a)と、全ユーザからなるグループ Bの予約率ランキング(図 1のグ ラフ 100b)とがともに生成される。そして、グループ Aの予約率ランキングからグルー プ Bの予約率ランキングが減算処理されることによって、グループ Aに特化した予約 率ランキングが生成される(図 1のグラフ 100c)。ここで、各予約率ランキングを番組 の予約数ではなぐ予約率としたのは、グループ A及びグループ Bで互いに所属する ユーザ数が異なるため、それぞれのグループに属するユーザ数で予約数を正規化し ていることと同等の処理とするためである。また、グラフ 100cに示すように、減算後、 グループ Aに特化した予約率ランキングを閾値 105によって、閾値判定して、閾値 10 5を上回った番組を推薦番組 103としてユーザに推薦する。従って、この推薦番組 1 03は、グループ Aに特化した推薦番組として提供可能である。
[0027] この減算処理を用いることによって、グループ Aの各番組の予約率を、ユーザ全体 が一般的に予約している番組の予約率に基づいて低下させて、一般的に視聴され ている番組ではなぐグループ Aに属するユーザが特に嗜好している番組を抽出す ること力 S可倉 となる。
[0028] なお、上記、グループ Aが特許請求の範囲の第 1のグループに相当し、グループ B が特許請求の範囲の第 2のグループに相当する。
[0029] 図 2は、第 1の実施形態に係る番組推薦システムの全体構成を示すブロック図であ る。番組推薦システムは、例えば番組録画装置などの複数の番組視聴端末 2と、番 組推薦サーバ 3とを備える。複数の番組視聴端末 2と番組推薦サーバ 3とは、インタ 一ネットなどの汎用のネットワーク 4を介して互いに通信可能に接続される。なお、図 2に示すように、本来、番組推薦サーバ 3には、複数の番組視聴端末 2が接続される 1S 本実施形態では、説明の簡易化のために 1台の番組視聴端末 2が接続されてい る場合について説明する。
[0030] 番組視聴端末 2は、放送波又は IP網から番組を受信して、番組を視聴したり、番組 を録画したり、録画した番組を再生したり、録画した番組を消去したり、番組の録画予 約をしたりする。番組推薦サーバ 3は、番組視聴端末 2とネットワーク 4を介して互い に通信可能に接続され、番組に対するユーザの操作を表す操作情報を番組視聴端 末 2から取得し、ユーザの嗜好に合った番組に関する推薦情報を操作情報に応じて 作成する。
[0031] まず、本実施形態の番組推薦システムにおける番組視聴端末 2の構成について説 明する。図 3は、第 1の実施形態の番組視聴端末の構成を示すブロック図である。
[0032] 番組視聴端末 2は、アンテナ 201、チューナ 202、 TS (トランスポート 'ストリーム)デ コーダ 203、 CAS (Conditional Access System) 204、喑号解除部 205、デマ ノレチプレクサ 206、 MPEG Videoデコーダ 207、 MPEG Audioデコーダ 208、 H DMI (High - Definition Multimedia Interface)端子 209、記録用暗号化部 2 13、記録制御部 214、記録媒体 215、再生制御部 216、記録用復号化部 217、 PSI (Program Specific Information) 由出き |5218、 EPG (Electronic Program Guide)記憶部 219、キー 220、予約管理部 221、予約メモリ 222、ユーザ識別部 22 3、ユーザ情報 DB (データベース) 224、予約情報送信部 225、推薦受信部 226、推 薦番組情報抽出部 227、番組予約判定部 228及び推薦番組抽出部 229から構成さ れる。
[0033] チューナ 202は、例えば地上波デジタル放送や BSデジタル放送などの放送波から 所定チャンネルの放送波を受信して、放送波を TSデコーダ 203に出力する。 TSデ コーダ 203は、受信した一般的なトランスポート 'ストリーム形式の放送波を復調して 暗号解除部 205に出力する。
[0034] CAS204は、一般的な Conditional Access Systemであり、ユーザの登録情 報及び番組の暗号鍵の記録された ICカードから暗号鍵情報を読み出し、暗号解除 部 205に出力する。
[0035] 暗号解除部 205は、 TSデコーダ 203によって復調された、暗号化された放送信号 を、 CAS204からの暗号鍵をもとに復号化し、暗号化された番組情報の暗号を解除 してデマルチプレクサ 206に出力する。
[0036] デマルチプレクサ 206は、番組情報として多重化されている情報を分離する。番組 情報には、少なくともビデオ情報、オーディオ情報及び番組管理情報が多重化され、 これらを分離後、ビデオ情報を MPEG Videoデコーダ 207へ、オーディオ情報を M PEG Audioデコーダ 208へ、番組管理情報を PSI抽出部 218へ出力する。
[0037] MPEG Videoデコーダ 207は、デマルチプレクサ 206からのビデオ情報を復調し て映像データに変換し、 HDMI端子 209に出力する。 MPEG Audioデコーダ 208 は、デマルチプレクサ 206から入力されたオーディオ情報を復調してオーディオデー タに変換し、 HDMI端子 209に出力する。 HDMI端子 209は、 HDMIケーブルを介 して外部の HDMI端子 210と接続されており、 HDMI端子 210は、モニタ 211及び スピーカ 212と接続されて!/、る。
[0038] HDMI端子 209, 210は、一般的な映像情報用及び音声情報用のインタフェース であり、番組視聴端末 2とモニタ 211及びスピーカ 212とを互いに相互認証するととも に、暗号鍵の共通化を行い、共通化した暗号鍵で、映像データや音声データを暗号 化して、モニタ 211やスピーカ 212に出力する。
[0039] モニタ 211は、一般的な番組の映像情報の表示装置であって、 HDMI端子 210で 受信した暗号化された映像データを復号して番組の映像データを出力する。スピー 力 212は、一般的な番組の音声情報の出力装置であって、 HDMI端子 210で受信 した暗号化された音声データを復号して番組の音声データを出力する。
[0040] 記録用暗号化部 213は、受信した番組情報を記録媒体に記録するための喑号処 理を施す。記録用暗号化部 213は、デマルチプレクサ 206から入力された番組情報 を暗号化して記録制御部 214に出力する。従って、記録用暗号化部 213は、番組情 報を記録する記録媒体に特有の暗号化処理を行う。例えば、 DVD— RAMでは CP RM (Content Protection for Rewritable Media)、 Blu— rayアイスクゃ HD — DVDでは、 AACS ( Advanced Access Content System)が用いられる。
[0041] 記録制御部 214は、記録用暗号化部 213によって暗号化された番組情報の記録 媒体への記録を制御する。記録制御部 214は、記録媒体特有の変調処理や誤り訂 正符号化処理を行うことによって記録媒体に番組情報を記録する。
[0042] 記録媒体 215は、番組情報を記録するコンピュータ読み取り可能な記録媒体であ つて、例えば、ハードディスクのような磁気記録ディスクや DVD、 Blu— rayディスクな どの光ディスク、 SDカードのような半導体メモリ、及び MO/MDのような光磁気記録 媒体が用いられる。なお、記録媒体 215には、番組視聴プログラムが記録されており 、番組視聴プログラムが CPU (中央演算処理装置)等によって読み出されて実行さ れる。
[0043] 再生制御部 216は、記録媒体 215に記録されている番組情報を読み出す。なお、 記録制御部 214、記録媒体 215及び再生制御部 216は、ドライブシステムとして構成 されるのが一般的である。
[0044] 記録用復号化部 217は、記録用暗号化部 213の暗号化に対応する復号を行う。記 録用復号化部 217は、暗号化して記録媒体 215に記録された番組情報を復号化し て TSデコーダ 203に出力する。なお、 TSデコーダ 203に出力された番組情報の再 生処理は、上述のアンテナ 201で受信した番組の再生処理と同様である。
[0045] PSI抽出部 218は、デマルチプレクサ 206で抽出した番組管理情報から PSI (Prog ram Specific Information)を抽出する。 PSIの中には、主に、 PMT (Program
Map Table)、 EIT (Event Information Table)及び TOT (Time Offset Ta ble)などの情報が含まれる。
[0046] PMTは、番組に含まれる画像や音声などの各パケット識別情報を格納して!/、る。よ つて、 PMTから画像や音声などのパケット識別情報を得ることが出来れば、それらパ ケット識別情報のついたパケットを抽出することで番組を再生できる。
[0047] EITは、番組の名称、放送日時及び放送内容などの番組に関連する情報が含まれ る。 EPG (Electronic Program Guide)は主にこの情報を用いて作成される。
[0048] EPG記憶部 219は、 PSI抽出部 218で抽出した PSI中の EITを用いて EPG情報を 作成して、記憶する。キー 220は、ユーザからの入力を受け付け、リモコンやフロント パネルで構成される。
[0049] 予約管理部 221は、キー 220で入力されるコマンドに従って録画予約する番組を 受け付け、予約番組情報を作成する。予約番組情報には、番組を識別するための番 組識別情報が含まれる。予約番組情報は、 EPG記憶部 219に記憶した£?0情報を 用いて作成される。予約メモリ 222は、予約管理部 221によって作成された予約番組 情報を蓄積するメモリで構成される。なお、予約番組情報は、番組識別情報ではなく 、番組の放送日時、チャンネル情報及び放送局識別情報を含んでもよい。すなわち 、番組の放送日時、チャンネル情報及び放送局識別情報により、番組を識別すること が可能となる。
[0050] ユーザ識別部 223は、番組視聴端末 2を使用するユーザを識別する。ユーザ識別 部 223は、キー 220を用いて入力されるユーザ情報に基づいて、番組視聴端末 2を 使用するユーザを識別する。
[0051] ユーザ情報 DB224は、番組視聴端末 2を使用する全ユーザのユーザ情報が登録 されているデータベースである。ユーザ識別部 223は、キー 220を用いて入力される ユーザ情報と、ユーザ情報 DB224に予め記憶されているユーザ情報とに基づいて ユーザを識別する。また、ユーザ識別部 223は、ユーザの認証に成功すると現在使 用中のユーザのユーザ情報を予約情報送信部 225に出力する。
[0052] 予約情報送信部 225は、一般的なネットワークインタフェースであり、汎用のネットヮ ーク 4を介して接続される番組推薦サーバ 3とのネットワークを確立した後、予約メモリ 222に記憶した予約番組情報とユーザ識別部 223から入力されたユーザ情報とを含 む予約情報を番組推薦サーバ 3に送信する。
[0053] なお、予約メモリ 222は、ユーザ識別部 223と連動して予約したユーザを対応付け て記憶するとともに、予約情報送信部 225によって番組推薦サーバ 3に送信済みの 予約番組情報と未送信の予約番組情報とを識別可能に管理する。
[0054] 推薦受信部 226は、汎用のネットワーク 4を介して、番組推薦サーバ 3の推薦する 番組に関する推薦情報を受信する。推薦番組情報抽出部 227は、推薦受信部 226 によって受信された推薦情報から、推薦番組情報を抽出する。推薦番組情報は、推 薦する番組を一意に識別できる情報であり、例えば、番組を識別するための番組識 別情報、又は番組の放送日時、チャンネル情報及び放送局を識別するための放送 局識別情報を含む。抽出した推薦番組情報は、番組予約判定部 228に出力される。
[0055] なお、推薦情報は、推薦番組情報と人気番組情報とを含む。推薦番組情報は、番 組視聴端末 2を使用するユーザの嗜好に特化した番組を表す情報であり、人気番組 情報は、全てのユーザに人気のある番組を表す情報である。
[0056] 番組予約判定部 228は、推薦番組情報で示された推薦番組が、過去に放送された 番組であるか否かを判定する。すなわち、番組予約判定部 228は、推薦番組の放送 日時が現在の日時よりも前である場合、過去に放送された番組であると判定する。推 薦番組が過去に放送された番組ではな!/、と判定された場合、番組予約判定部 228 は、予約メモリ 222に記憶している予約番組情報と、推薦番組情報抽出部 227から 入力された推薦番組情報とに基づいて、該当する番組が既に予約されているかどう 力、を判定する。
[0057] 予約されて!/、な!/、と判定された場合、番組予約判定部 228は、推薦番組情報を予 約管理部 221に出力して、推薦番組情報に該当する予約処理を行う。予約されてい ると判定された場合、番組予約判定部 228は、推薦番組が既に予約されている旨を ユーザに通知し、処理を終了する。また、番組予約判定部 228は、推薦番組情報で 示された推薦番組が、過去に放送された番組であると判定された場合、推薦番組抽 出部 229に推薦番組情報を出力する。 [0058] 推薦番組抽出部 229は、推薦番組情報で指定された番組が、記録媒体 215に記 録されているかどうかを判定する。記録されていない場合、推薦番組抽出部 229は、 推薦番組が記録されていない旨をユーザに通知し、処理を終了する。記録されてい ると判定された場合、推薦番組抽出部 229は、推薦番組が存在することをユーザに 通知し、ユーザからの再生を促す。キー 220を用いてユーザが再生を選択した場合 、再生制御部 216は、推薦番組情報に示された番組情報を記録媒体 215から呼び 出して、番組の再生を行う。
[0059] なお、推薦番組抽出部 229は、推薦番組情報で指定された番組が、記録媒体 215 に記録されて!/、るかどうかを、番組推薦サーバ 3からの推薦番組情報に含まれる推薦 番組の番組識別情報、又は推薦番組の放送日時、チャンネル情報及び放送局識別 情報を基に判定する。
[0060] 次に、本実施形態の番組推薦システムにおける番組推薦サーバ 3の構成について 説明する。図 4は、第 1の実施形態の番組推薦サーバの構成を示す図である。
[0061] 番組推薦サーバ 3は、予約情報受信部 230、ユーザ管理部 231、ユーザ属性 DB ( データベース) 232、予約情報登録部 234、予約情報 DB (データベース) 235、特化 生成部 30、推薦番組作成部 239及び推薦送信部 240から構成される。また、番組推 薦サーバ 3の特化生成部 30は、コミュニティ予約情報統計部 236、全ユーザ予約情 報統計部 237及びコミュニティ特化部 238で構成される。
[0062] 予約情報受信部 230は、汎用のネットワーク 4に接続された複数の番組視聴端末 2 の予約情報送信部 225から、各ユーザによって予約された番組の予約番組情報と、 予約を行ったユーザを識別するためのユーザ情報とを含む予約情報を受信する。な お、予約番組情報は、予約を行った番組を一意に識別可能な番組識別情報、又は 予約された番組の番組放送日時、チャンネル情報及び放送局識別情報を含む。受 信した予約情報は、ユーザ管理部 231に出力される。
[0063] ユーザ属性 DB232は、登録ユーザのユーザ情報と、必要であれば、ユーザ氏名、 性別、住所/電話番号、番組視聴端末のメーカ/機種、接続するモニタの解像度お よび番組視聴端末のネットワーク IDなどのユーザ属性情報とをユーザ登録リストとし て管理する。ユーザは、予め番組推薦サーバ 3に、番組推薦を行うためのユーザ登 録処理を行う。ユーザ登録処理には、ユーザ名の設定、住所/電話番号の通知など ユーザ登録情報の通知を行った後、番組推薦サーバ 3側で、該ユーザにユーザ情 報を生成して通知し、ユーザ属性 DB232で生成したユーザ情報に対応付けて、ュ 一ザから通知されたユーザ属性情報を記憶/管理する。
[0064] ユーザ管理部 231は、受信したユーザ情報により特定されるユーザ力 番組推薦 サーバ 3の登録ユーザであるか否かを判定する。ユーザ管理部 231は、ユーザ属性 DB232に記憶されているユーザ登録リストの中から、受信したユーザ情報に一致す るユーザ情報を検索する。受信したユーザ情報がユーザ属性 DB232に登録されて いると判断された場合、番組推薦サーバ 3の登録ユーザであると判断して、処理を継 ¾ る。
[0065] 一方、受信したユーザ情報がユーザ属性 DB232に登録されていないと判断された 場合、番組推薦サーバ 3への未登録ユーザであるとして、当該ユーザの使用する番 組視聴端末 2に登録ユーザでなレ、旨のエラーメッセージを送信して以後の処理を中 断する。エラーメッセージを受信した番組視聴端末 2は、当該エラーメッセージをモニ タ 211に表示する。
[0066] 予約情報登録部 234は、ユーザ管理部 231によってユーザが番組推薦サーバ 3の 登録ユーザであると判定された場合、予約情報受信部 230によって受信されたユー ザ毎の予約番組情報を、受信したユーザ情報に対応付けて、予約情報 DB235に記 憶する。予約情報 DB235は、番組視聴端末 2によって送信された予約番組情報を ユーザ情報に対応付けて記憶するデータベースである。
[0067] コミュニティ予約情報統計部 236は、予約情報受信部 230によって受信された予約 番組情報に基づレ、て、当該予約番組情報と同じ予約番組情報を持った全ユーザを コミュニティグループとしてグループ化する。また、コミュニティ予約情報統計部 236 は、当該コミュニティグループに属する全ユーザの当該予約番組情報以外の予約番 組情報を番組毎に集計してランキングを生成するとともに、コミュニティグループに所 属する全ユーザ数でランキングを正規化し、コミュニティグループ内の各番組の予約 率ランキングを算出する。コミュニティ予約情報統計部 236は、正規化したランキング (予約率ランキング)をコミュニティ特化部 238に出力する。 [0068] 全ユーザ予約情報統計部 237は、予約情報受信部 230によって受信された予約 番組情報を持った全ユーザをコミュニティグノレープとしてグノレープ化するコミュニティ 予約情報統計部 236とは異なり、ユーザ属性 DB232に登録されている全ユーザ、す なわち番組推薦サーバ 3の全登録ユーザを、コミュニティグループを包含する全ユー ザグループとしてグルーピングする。また、全ユーザ予約情報統計部 237は、全ユー ザのグルーピング後、全ユーザの予約番組情報を統計処理して、番組毎の予約率ラ ンキングを作成する。すなわち、全ユーザ予約情報統計部 237は、全登録ユーザの 予約番組情報を番組毎に集計してランキングを生成するとともに、全登録ユーザ数 でランキングを正規化し、全登録ユーザで形成されるグループ内の各番組の予約率 ランキングを算出する。作成した予約率ランキングは、コミュニティ特化部 238と推薦 番組作成部 239とに出力される。
[0069] コミュニティ特化部 238は、コミュニティ予約情報統計部 236によって算出された予 約率ランキングから、全ユーザ予約情報統計部 237によって算出された予約率ラン キングを減算することによって、コミュニティ予約情報統計部 236でグルーピングした コミュニティグループに特化した予約率ランキングを作成して、推薦番組作成部 239 に出力する。なお、ランキングの減算は、番組毎の予約率を、同一番組ごとに減算す
[0070] 推薦番組作成部 239は、コミュニティ特化部 238によって生成された予約率ランキ ングを基に、予め設定された閾値よりも予約率の高い番組を推薦番組として抽出し、 当該推薦番組を識別するための番組識別情報、又は当該推薦番組の放送日時、当 該推薦番組が放送されるチャンネル情報及び当該推薦番組が放送される放送局を 識別するための放送局識別情報を含む推薦番組情報を作成する。これによつて、推 薦番組作成部 239は、コミュニティグループに特化した推薦番組情報を作成する。
[0071] なお、本実施形態では、予め設定された閾値よりも予約率の高!/、番組を推薦番組 として抽出している力 本発明は特にこれに限定されず、コミュニティ特化部 238によ つて生成された予約率ランキングの上位所定数の番組を推薦番組として抽出しても よい。
[0072] また、推薦番組作成部 239は、全ユーザ予約情報統計部 237によって生成された 予約率ランキングを基に、予め設定された閾値よりも予約率の高!/、番組を人気番組 として抽出し、当該人気番組を識別するための番組識別情報、又は当該人気番組の 放送日時、当該人気番組が放送されるチャンネル情報及び当該人気番組が放送さ れる放送局を識別するための放送局識別情報を含む人気番組情報を作成する。
[0073] なお、本実施形態では、予め設定された閾値よりも予約率の高!/、番組を人気番組 として抽出している力 本発明は特にこれに限定されず、全ユーザ予約情報統計部 2 37によって生成された予約率ランキングの上位所定数の番組を人気番組として抽出 してもよい。
[0074] 推薦送信部 240は、推薦番組作成部 239によって作成された推薦番組情報と人気 番組情報とを含む推薦情報を番組視聴端末 2に送信する。
[0075] 番組推薦サーバ 3は、コンピュータ読み取り可能な記録媒体からプログラム及びデ ータを読み出す再生制御部(不図示)を備えている。記録媒体としては、例えば、ハ ードディスクのような磁気記録ディスクや DVD、 Blu— rayディスクなどの光ディスク、 SDカードのような半導体メモリ、及び MO/MDのような光磁気記録媒体が用いられ る。この記録媒体には、番組推薦プログラムが記録されており、番組推薦プログラム 力 SCPU (中央演算処理装置)等によって読み出されて実行される。
[0076] 以下、本実施形態における番組推薦システムの動作について説明する。例えば、 ユーザ Aが、ユーザ Aの所有する番組視聴端末 2によって、番組 Aを予約する。番組 視聴端末 2は、ユーザ Aを識別するためのユーザ情報と、番組 Aを特定するための予 約番組情報を番組推薦サーバ 3に送信する。番組推薦サーバ 3の予約情報受信部 2 30は、ユーザ Aの所有する番組視聴端末 2から、ユーザ Aを識別するためのユーザ 情報と番組 Aを特定するための予約番組情報とを受信する。ユーザ管理部 231は、 受信したユーザ情報がユーザ属性 DB232に記憶されているか否かを判定し、記憶 されていれば、ユーザ Aが番組推薦サーバ 3の登録ユーザであるとして、処理を継続 する。
[0077] 予約情報登録部 234は、ユーザ Aを識別するためのユーザ情報に対応付けて、番 組 Aを特定するための予約番組情報を予約情報 DB235に登録する。コミュニティ予 約情報統計部 236は、番組 Aを特定するための予約番組情報が対応付けられて!/、 る全ユーザを予約情報 DB235から抽出してコミュニティグループを形成する。コミュ 二ティ予約情報統計部 236は、コミュニティグループ内における番組 A以外の番組を 統計的に処理する。そして、コミュニティ予約情報統計部 236は、コミュニティグルー プ内において番組 A以外の番組の予約率を算出して、予約率の高い順に番組を並 ベた予約率ランキングを生成し、生成した予約率ランキングをコミュニティ特化部 238 に出力する。
[0078] 全ユーザ予約情報統計部 237は、番組推薦サーバ 3のユーザ属性 DB232に登録 されている全ユーザを予約情報 DB235から抽出してコミュニティ予約情報統計部 23 6で形成したコミュニティグループを包含する全ユーザグループを形成する。全ユー ザ予約情報統計部 237は、全ユーザグループ内のユーザ情報に対応付けられてい る予約番組情報を、予約情報 DB235から抽出して、番組 A以外の番組を統計処理 する。そして、全ユーザ予約情報統計部 237は、全ユーザグループ内において番組 A以外の番組の予約率を算出して、予約率の高い順に番組を並べた予約率ランキン グを生成し、生成した予約率ランキングをコミュニティ特化部 238と推薦番組作成部 2 39とに出力する。
[0079] コミュニティ特化部 238は、コミュニティ予約情報統計部 236によって作成された番 組の予約率ランキングから、全ユーザ予約情報統計部 237によって作成された番組 の予約率ランキングを減算する。これにより、コミュニティ特化部 238は、番組 Aを予 約したユーザのコミュニティグループに特化した番組の予約率ランキングを作成して 推薦番組作成部 239に出力する。
[0080] 推薦番組作成部 239は、コミュニティ特化部 238によって作成された、コミュニティ グループに特化した予約率ランキングに基づき、閾値よりも予約率の高!/、番組の予 約番組情報又はランキング上位の予約番組情報を抽出して推薦番組情報を作成す る。また、推薦番組作成部 239は、全ユーザ予約情報統計部 237によって作成され た、全登録ユーザの一般化された予約率ランキングに基づき、閾値よりも予約率の高 い番組の予約番組情報又はランキング上位の予約番組情報を抽出して人気番組情 報を作成する。推薦送信部 240は、推薦番組作成部 239によって作成された推薦番 組情報及び人気番組情報をユーザ Aの番組視聴端末 2に出力する。 [0081] 次に、番組推薦システムの処理の流れについてさらに説明する。図 5〜7は、第 1の 実施形態に係る番組推薦システムの処理の流れを示したフローチャートであり、図 5 は、第 1の実施形態に係る番組視聴端末における予約情報を送信するまでの処理の 流れを示すフローチャートであり、図 6は、第 1の実施形態に係る番組推薦サーバに おける処理の流れを示すフローチャートであり、図 7は、第 1の実施形態に係る番組 視聴端末における推薦情報を受信してからの処理の流れを示すフローチャートであ
[0082] 図 5において、まず、キー 220は、ユーザによるユーザ情報の入力を受け付け、番 組視聴端末 2へのログインを受け付ける(ステップ Sl)。次に、ユーザ識別部 223は、 ユーザ認証が成功したか否か、すなわち、入力されたユーザ情報がユーザ情報 DB 224に予め登録されているユーザ情報と一致するか否かを判断する (ステップ S2)。 ここで、入力されたユーザ情報が誤っており、登録ユーザでないと判断された場合( ステップ S2で NO)、ユーザ識別部 223は、エラー通知をモニタ 211に出力して処理 を終了する(ステップ S3)。
[0083] 一方、入力されたユーザ情報に誤りがなぐ登録ユーザであると判断された場合 (ス テツプ S2で YES)、チューナ 202は、アンテナ 201から放送波を受信する(ステップ S 4)。
[0084] 次に、 TSデコーダ 203は、チューナ 202によって受信された放送波を復調する。次 に、喑号解除部 205は、 CAS204からの復号鍵を利用して、放送波に含まれる番組 情報の暗号化を解除する。次に、デマルチプレクサ 206は、多重化されている番組 情報を、ビデオ信号、オーディオ信号および番組制御信号に分離する。次に、 PSI 抽出部 218は、分離された番組制御信号に含まれる PSIを抽出する (ステップ S 5)。
[0085] 次に、 PSI抽出部 218は、抽出した PSIを基に、受信可能な全チャンネルの EPGを 作成し、 EPG記憶部 219に記憶する(ステップ S6)。次に、 PSI抽出部 218は、モニ タ 211に作成した EPGをユーザから個々の番組を選択可能に表示する(ステップ S7 )。
[0086] 次に、予約管理部 221は、ユーザからの予約操作が有ったか否かを判断する(ステ ップ S8)。予約管理部 221は、番組を選択可能に表示した EPGから、ユーザによる 予予約約操操作作をを受受けけ付付けけるる。。ここここでで、、ユユーーザザにによよるる予予約約操操作作ががなないいとと判判断断さされれたた場場合合 ((スス テテツツププ SS88でで NNOO))、、予予約約管管理理部部 222211はは、、ユユーーザザにによよるる予予約約操操作作がが行行わわれれるるままでで待待機機 すするる。。
[0087] 一一方方、、ユユーーザザかかららのの予予約約操操作作ががああるるとと判判断断さされれたた場場合合 ((スステテッッププ SS88でで YYEESS))、、予予約約 管管理理部部 222211はは、、予予約約操操作作のの対対象象ととななっったた番番組組にに対対応応ししたた番番組組識識別別情情報報、、又又はは番番組組 放放送送日日時時、、チチャャンンネネルル情情報報及及びび放放送送局局識識別別情情報報をを EEPPGGかからら抽抽出出しし、、予予約約メメモモリリ 222222 にに予予約約番番組組情情報報ととししてて記記憶憶すするる。。ここれれにによよりり、、予予約約管管理理部部 222211はは、、番番組組のの予予約約のの設設定定 をを行行うう((スステテッッププ SS99))。。以以後後、、本本実実施施形形態態でではは、、スステテッッププ SS99ににおおいいてて予予約約のの設設定定をを行行 つつたた番番組組をを番番組組 AAととししてて説説明明すするる。。
[0088] スステテッッププ SS99ににおおいいてて番番組組 AAのの予予約約のの設設定定がが完完了了すするるとと、、予予約約情情報報送送信信部部 222255はは、、 番番組組 AAにに対対応応ししたた予予約約番番組組情情報報 AAとと、、番番組組 AAのの予予約約をを行行っったたユユーーザザをを識識別別すするるたためめ ののユユーーザザ情情報報ととをを予予約約情情報報ととししてて番番組組推推薦薦ササーーババ 33にに送送信信すするる ((スステテッッププ SS 1100))。。
[0089] 図図 66ににおおいいてて、、次次にに、、番番組組推推薦薦ササーーババ 33のの予予約約情情報報受受信信部部 223300はは、、番番組組視視聴聴端端末末
22にによよっってて送送信信さされれたた予予約約情情報報をを受受信信すするる((スステテッッププ SSll ll))。。次次にに、、ユユーーザザ管管理理部部 223311 はは、、ユユーーザザ認認証証がが成成功功ししたたかか否否かか、、すすななわわちち、、受受信信ししたた予予約約情情報報にに含含ままれれるるユユーーザザ 情情報報がが番番組組推推薦薦ササーーババ 33ののユユーーザザ属属性性 DDBB223322にに予予めめ登登録録さされれてていいるるユユーーザザ情情報報とと 一一致致すするるかか否否かかをを判判断断すするる((スステテッッププ SS 1122))。。ここここでで、、ユユーーザザ認認証証にに失失敗敗しし、、登登録録ユユーー ザザででなないいとと判判断断さされれたた場場合合 ((スステテッッププ SS1122でで NNOO))、、ユユーーザザ管管理理部部 223311はは、、そそのの旨旨をを示示 すすエエララーーメメッッセセーージジをを作作成成ししてて、、番番組組視視聴聴端端末末 22ににエエララーーメメッッセセーージジをを送送信信しし、、処処理理をを 終終了了すするる((スステテッッププ SS1133))。。ななおお、、エエララーーメメッッセセーージジをを受受信信ししたた番番組組視視聴聴端端末末 22はは、、ュュ 一一ザザ認認証証にに失失敗敗ししたた旨旨をを表表すすエエララーー通通知知ををモモニニタタ 221111へへ出出力力すするる。。
[0090] 一一方方、、ユユーーザザ認認証証にに成成功功しし、、登登録録ユユーーザザででああるるとと判判断断さされれたた場場合合 ((スステテッッププ SS 1122でで YYEESS))、、予予約約情情報報登登録録部部 223344はは、、予予約約情情報報受受信信部部 223300にによよっってて受受信信さされれたたユユーーザザ情情 報報にに対対応応付付けけてて、、予予約約番番組組情情報報 AAをを予予約約情情報報 DDBB223355にに登登録録すするる((スステテッッププ SS 1144))。。
[0091] 次次にに、、予予約約情情報報登登録録部部 223344はは、、予予約約情情報報 DDBB223355にに記記憶憶さされれたた全全登登録録ユユーーザザのの予予 約約番番組組情情報報をを基基にに、、番番組組 AAのの予予約約番番組組情情報報 AAをを有有すするる全全ユユーーザザをを抽抽出出しし、、ココミミュュニニテテ
Figure imgf000023_0001
[0092] 次次にに、、ココミミュュニニテティィ予予約約情情報報統統計計部部 223366はは、、ググノノレレーーピピンンググさされれたたココミミュュニニテティィググノノレレーー プのユーザのユーザ情報に対応付けられている番組 A以外の番組の予約番組情報 を集計して、番組毎の予約数のランキングを生成する(ステップ S 16)。
[0093] 次に、コミュニティ予約情報統計部 236は、集計された番組毎の予約数を、グルー ビングされたユーザ数によって正規化して、番組毎の予約率を生成して、予約率の 高い番組から順に並べた予約率ランキングを生成する(ステップ S 17)。
[0094] 次に、全ユーザ予約情報統計部 237は、ユーザ属性 DB232に登録されているュ 一ザ、すなわち番組推薦サーバ 3の全登録ユーザを抽出し、全ユーザグループとし てグルーピングする(ステップ S 18)。なお、ステップ S 18において作成される全ユー ザグループは、全ての登録ユーザで構成されるので、ステップ S 15において作成さ れた番組 Aの予約番組情報を持ったユーザのグループを包含したグループとなる。
[0095] 次に、全ユーザ予約情報統計部 237は、グルーピングされた全ユーザグループに おいて、番組 A以外の番組の全ユーザの予約番組情報を集計して、番組毎の予約 数のランキングを生成する (ステップ S 19)。
[0096] 次に、全ユーザ予約情報統計部 237は、集計された番組毎の予約数を、グルーピ ングされたユーザ数、すなわち番組推薦サーバ 3に登録されている全ユーザ数で正 規化して、番組毎の予約率を生成して、予約率の高い番組から順に並べた予約率ラ ンキングを生成する(ステップ S20)。
[0097] 次に、コミュニティ特化部 238は、コミュニティ予約情報統計部 236によって生成さ れた番組 Aを予約したユーザの番組 A以外の番組の予約率ランキングから、全ユー ザ予約情報統計部 237によって生成された全ユーザの番組 A以外の番組の予約率 ランキングを、番組ごとに減算することによって、番組 Aを予約したユーザに特化した 予約率ランキングを生成する。そして、推薦番組作成部 239は、コミュニティ特化部 2 38によって生成された予約率ランキングの中から、予め定められた閾値よりも予約率 の高い番組を抽出して推薦番組情報を作成する(ステップ S21)。なお、推薦番組作 成部 239は、コミュニティ特化部 238によって生成された予約率ランキングのうちの上 位の番組から所定数の番組を抽出して推薦番組情報を作成してもよい。
[0098] 次に、推薦番組作成部 239は、全ユーザ予約情報統計部 237によって生成された 全ユーザの予約率ランキングの中から、予め定められた閾値よりも予約率の高い番 組を抽出して人気番組情報を作成する (ステップ S22)。なお、推薦番組作成部 239 は、コミュニティ特化部 238によって生成された予約率ランキングのうちの上位の番組 力、ら所定数の番組を抽出して人気番組情報を作成してもよい。
[0099] 次に、推薦送信部 240は、推薦番組作成部 239によって作成された推薦番組情報 及び人気番組情報を含む推薦情報を番組視聴端末 2に送信する (ステップ S23)。
[0100] 図 7において、次に、番組視聴端末 2の推薦受信部 226は、番組推薦サーバ 3の推 薦送信部 240によって送信された推薦番組情報及び人気番組情報を含む推薦情報 を受信する(ステップ S31)。
[0101] 次に、推薦番組情報抽出部 227は、推薦受信部 226によって受信された推薦情報 力も推薦番組情報が抽出されたか否力、を判断する (ステップ S32)。推薦番組情報抽 出部 227は、ユーザに推薦番組情報及び人気番組情報のうちのいずれかの選択を 促す。キー 220を用いて、推薦番組情報が選択された場合には推薦番組情報を抽 出し、人気番組情報が選択された場合には人気番組情報を抽出する。なお、推薦番 組情報及び人気番組情報の両方を抽出する設定を設けても力、まわなレ、。これによつ て、ユーザに対してより多くの選択肢を提供することができる。
[0102] 推薦番組情報が抽出されたと判断された場合 (ステップ S32で YES)、番組予約判 定部 228は、推薦番組情報抽出部 227によって抽出された推薦番組情報に含まれ る番組識別情報、又は番組放送日時、チャンネル情報及び放送局識別情報を利用 して、番組視聴端末 2によって既に予約が完了しているか否かを判断する (ステップ S 33)。例えば、番組予約判定部 228は、推薦番組情報に含まれる番組識別情報と、 予約メモリ 222に記憶されている予約番組情報に含まれる番組識別情報とがー致す るか否かを判断する。
[0103] 推薦番組の予約が完了していないと判断された場合 (ステップ S33で NO)、予約 管理部 221は、推薦番組の予約設定を行う(ステップ S34)。推薦番組の予約設定が 完了した後、又は推薦番組の予約設定が予め完了していた場合 (ステップ S33で Y ES)、番組予約判定部 228は、推薦情報に含まれる全ての推薦番組情報について 予約設定が完了してレ、るか否かを判断する(ステップ S35)。
[0104] 全ての推薦番組情報の予約が完了して!/、な!/、と判断された場合 (ステップ S35で N O)、ステップ S33の処理へ戻り、残りの推薦番組情報における予約設定処理を繰り 返し実行する。全ての推薦番組情報の予約が完了したと判断された場合 (ステップ S 35で YES)、処理を終了する。
[0105] 一方、推薦番組情報が抽出されていないと判断された場合、すなわち、人気番組 情報が抽出されたと判断された場合 (ステップ S32で NO)、番組予約判定部 228は 、推薦番組情報抽出部 227によって抽出された人気番組情報に含まれる番組識別 情報、又は番組放送日時、チャンネル情報及び放送局識別情報を利用して、番組 視聴端末 2によって、既に予約が完了しているか否かを判断する (ステップ S36)。例 えば、番組予約判定部 228は、人気番組情報に含まれる番組識別情報と、予約メモ リ 222に記憶されている予約番組情報に含まれる番組識別情報とがー致するか否か を判断する。
[0106] 人気番組の予約が完了していないと判断された場合 (ステップ S36で NO)、予約 管理部 221は、人気番組の予約設定を行う(ステップ S37)。人気番組の予約設定が 完了した後、又は人気番組の予約設定が予め完了していた場合 (ステップ S36で Y ES)、番組予約判定部 228は、推薦情報に含まれる全ての人気番組情報について 予約設定が完了してレ、るか否かを判断する(ステップ S38)。
[0107] 全ての人気番組情報の予約が完了して!/、な!/、と判断された場合 (ステップ S38で N O)、ステップ S36の処理へ戻り、残りの人気番組情報における予約設定処理を繰り 返し実行する。全ての人気番組情報の予約が完了したと判断された場合 (ステップ S 38で YES)、処理を終了する。
[0108] なお、本実施形態では、番組推薦サーバ 3によって送信された推薦番組を全て予 約して!/、るがこれに限定されな!/、。推薦番組が既に放送された後であると判断された 場合には、番組視聴端末 2の推薦番組抽出部 229は、推薦番組が記録媒体 215に 記録済みか否力、を判定する。記録済みである場合、推薦番組抽出部 229は、ユーザ に再生を促すメッセージをモニタ 211に出力すればよい。近年のデジタルレコーダは 、 EPGのキーワード検索により自動的に番組を録画するものや、 24時間全チャンネ ルを録画し続けているものまで存在する。よって、ユーザが意図的に予約設定を行わ なかったり、録画を行わなかったりしても、推薦番組が録画されていることは容易に考 えられるので、これによつてユーザに視聴を見逃した番組の再生を促すシステムを同 様のシステムで提供しうる。
[0109] また、ユーザが視聴済みである番組につ!/、ては、番組の視聴を促す必要はな!/、の で、記録媒体 215に記録されている番組に視聴か未視聴かを示すフラグを設け、推 薦番組が視聴済みである場合には、番組の再生を促す処理を実施しないようにして あよい。
[0110] また、本実施形態では、ユーザ操作として番組の録画予約操作を用いて説明した
1S 本発明はこれに限られない。ユーザ操作は、ユーザが番組に対する嗜好に関す る動作であればどんな操作でもかまわない。例えば、ユーザ操作は、番組の再生操 作、録画操作及び消去操作などでもかまわなレ、。
[0111] ユーザ操作が番組の再生操作である場合、番組視聴端末 2は、再生した番組の識 別情報を番組推薦サーバ 3に送信する。番組推薦サーバ 3の予約情報登録部 234 は、ユーザ毎に再生した番組を管理しており、コミュニティ予約情報統計部 236は、 同一番組を再生したユーザをグルーピングして、グループ内のユーザの再生した番 組の再生率ランキングを生成する。また、全ユーザ予約情報統計部 237は、全ての 登録ユーザをグルーピングして、全ての登録ユーザの再生率ランキングを生成する。 コミュニティ特化部 238は、コミュニティ予約情報統計部 236によって作成された番組 の再生率ランキングから全ユーザ予約情報統計部 237によって作成された番組の再 生率ランキングを減算する。これにより、コミュニティ特化部 238は、特定番組を再生 したユーザに特化した再生率ランキングを生成し、推薦番組作成部 239は、コミュ二 ティ特化部 238によって生成された再生率ランキングに基づいて推薦番組情報を生 成する。
[0112] また、ユーザ操作が録画操作である場合も同様である。ユーザ操作が番組の録画 操作である場合、番組視聴端末 2は、録画した番組の識別情報を番組推薦サーバ 3 に送信する。番組推薦サーバ 3の予約情報登録部 234は、ユーザ毎に録画した番組 を管理しており、コミュニティ予約情報統計部 236は、同一番組を録画したユーザを グルーピングして、グループ内のユーザの録画した番組の録画率ランキングを生成 する。また、全ユーザ予約情報統計部 237は、全ての登録ユーザをグルーピングし て、全ての登録ユーザの録画率ランキングを生成する。コミュニティ特化部 238は、コ ミュニティ予約情報統計部 236によって作成された番組の録画率ランキングから全ュ 一ザ予約情報統計部 237によって作成された番組の録画率ランキングを減算する。 これにより、コミュニティ特化部 238は、特定番組を録画したユーザに特化した録画 率ランキングを生成し、推薦番組作成部 239は、コミュニティ特化部 238によって生 成された録画率ランキングに基づいて推薦番組情報を生成する。
[0113] また、ユーザ操作が番組の消去操作である場合も応用可能である。ユーザ操作が 番組の消去操作である場合、番組視聴端末 2は、消去した番組の識別情報を番組 推薦サーバ 3に送信する。番組推薦サーバ 3の予約情報登録部 234は、ユーザ毎に 消去した番組を管理しており、コミュニティ予約情報統計部 236は、同一番組を消去 したユーザをグルーピングして、グループ内のユーザの消去した番組の消去率ラン キングを生成する。また、全ユーザ予約情報統計部 237は、全ての登録ユーザをグ ルービングして、全ての登録ユーザの消去率ランキングを生成する。コミュニティ特化 部 238は、コミュニティ予約情報統計部 236によって作成された番組の消去率ランキ ングから全ユーザ予約情報統計部 237によって作成された番組の消去率ランキング を減算する。これにより、コミュニティ特化部 238は、特定番組を消去したユーザに特 化した消去率ランキングを生成し、推薦番組作成部 239は、コミュニティ特化部 238 によって生成された消去率ランキングに基づいて推薦番組情報を生成する。
[0114] また、これらの操作の組み合わせも同様に可能である。例えば、再生した番組情報 を集計して、将来放送される番組の予約動作を促すこともできる。このときは、同一の 予約情報を持つユーザをグルーピングして、グループ内で再生された番組を集計す ることで再生を促すための推薦情報を作成することが可能となる。逆に、ユーザの再 生した番組情報でグループ化を行い、グループ内で予約情報を集計すれば、同じ番 組を再生した類似嗜好を持つユーザの予約情報に基づ!/、て、ユーザの嗜好に合致 する番組の予約動作を自動で行うことも可能となる。
[0115] また、ユーザ操作として、異なる操作を組み合わせてもよい。例えば、ユーザ操作と して、再生操作を伴った番組と、録画操作を伴った番組とをともに集計してランキング を作成してもよい。このときには、異なる操作に基づいて、集計するときの重み付けを 変更しても良い。例えば、録画されたけれども、再生されなかった番組よりも、再生さ れた番組のほうがユーザの嗜好度は高いと判断される。そこで、これに基づいた重み 付けでランキングを作成する。例えば、特定番組に対して録画のみされている場合に は、 1ポイント、再生されている場合には 2ポイント、消去動作を伴っているものは 1 ポイントとして集計する。これにより、ユーザの嗜好に対してより精度の高いランキング を生成することが可能となる。
[0116] 本実施形態では、番組視聴端末 2毎 (ユーザ毎)に番組への嗜好操作情報を、番 組推薦サーバ 3で集計して、ユーザ嗜好の類似したユーザをグルーピングして、ダル ープ内の協調フィルタリングによってユーザに対して嗜好度の高いと思われる番組を 推薦して、この推薦された番組を自動的に録画したり、再生を促したり、消去を促した りして、ユーザの番組視聴を支援する。ただし、これだけでは、本明細書の発明が解 決しようとする課題に示した課題が解決できない。そこで、圧倒的な人気番組が存在 したとしても、操作対象となった番組に基づいてユーザをグループ化して第 1のダル ープを作成し、この第 1のグループを包含するような第 2のグループをさらに作成し、 第 1のグループ特有の推薦番組情報を生成できるように、第 1のグループのランキン グから第 2のグループのランキングを減算、すなわち圧倒的に人気のある番組を雑音 として抹消することによって、第 1のグループに特化した推薦番組を生成することがで き、ユーザの嗜好番組の検索動作等の煩雑な操作を回避し、嗜好度の高い番組視 聴を支援する。
[0117] 次に、番組推薦システムの予約情報 DB235のデータ構造と、コミュニティ予約情報 統計部 236による統計処理とについて説明する。図 8は、第 1の実施形態の予約情 報 DB235のデータ構造を示す図である。
[0118] まず、図 8 (A)は、番組推薦サーバ 3の予約情報 DB235に記憶される情報のデー タ構造の一例を示す図である。なお、図 8 (A)には、番組推薦サーバ 3の予約情報受 信部 230によって、ユーザ Aが番組 Aを予約したことを示す予約情報が受信されて、 予約情報登録部 234によって、予約情報 DB235のユーザ Aのリスト 401に番組 Aの 予約番組情報 402が登録されたときの予約情報 DB235のデータ構造を示している 。予約情報 DB235は、番組推薦サーバ 3の全登録ユーザのユーザ識別情報 (ユー ザ ID)を管理するユーザ識別情報が列方向に登録され、個々のユーザ識別情報に 対応して、ユーザが録画予約している予約番組情報が行方向に登録されたデータ構 造である。リスト 403には、ユーザ B, C, Dが登録されている。ユーザ B, C, Dは、ュ 一ザ A以外の登録ユーザを示し、このユーザ B, C, Dに対応した予約番組情報が、 個々のユーザの行方向に登録されている。
[0119] 例えば、ユーザ Bには、番組 A、番組 C、番組 D及び番組 E 、う予約番組情報が 対応付けられており、ユーザ Cには、番組 X、番組 Y、番組 Ζ及び番組 Sという予約番 組情報が対応付けられており、ユーザ Dには、番組 Α、番組 Β、番組 C及び番組 Εと V、う予約番組情報が対応付けられて!/、る。
[0120] 図 8 (Β)は、番組 Αの予約情報を持ったユーザをグルーピングした結果を示す図で ある。図 8 (B)の例では、コミュニティ予約情報統計部 236によって、番組 Aの予約情 報を持ったユーザがグルーピングされた結果を示している。図 8 (B)に示すように、ュ 一ザ C以外のユーザ全てが番組 Aの予約情報を持って!/、るので、ユーザ C以外の、 ユーザ A、 B、 Dがグルーピングされる。
[0121] 図 8 (C)は、番組 Aを予約した全てのユーザをグルーピングしたグループ内におい て、番組 A以外の番組の予約率を示す図である。図 8 (C)では、コミュニティ予約情 報統計部 236によって、番組 Aを予約したユーザで構成されるグループにおいて、 番組 A以外の番組の予約頻度がランキングされる。図 8 (C)において、番組 Aを予約 したユーザのグループでは、番組 Aの他に番組 Cが一番多く予約されており、ついで 番組 B、番組 D及び番組 Eが予約されている。
[0122] 以降、番組の予約率ランキングは、グルーピングされたユーザ数、すなわち 3人で 正規化され、番組 Cの予約率は 100%、番組 B、番組 D及び番組 Eは 67%と算出さ れる。
[0123] なお、正規化方法としては、ランキングの全度数で正規化してもよい。本例では、各 ユーザ A, B, Dが番組 A以外の 3つの予約番組情報を有しているので全度数は 9と なる。よって、番組 Cの確率は 33%、番組 B、番組 D及び番組 Eの確率は 22%と正規 化される。この正規化方法は、ユーザの予約番組情報が異なったとしても、グループ 内の番組毎の予約確率を求めることになるので正確なランキングが生成可能である。 [0124] (第 2の実施形態)
続いて、本発明における第 2の実施形態について説明する。第 1の実施形態では、 番組毎に対するユーザ操作情報を、番組推薦サーバにおいて収集するとともに、同 一の番組に対するユーザ操作をもとにユーザをグルーピングして、グループ内での ユーザの嗜好番組をランキングして、グループに特化した推薦番組を抽出してユー ザに推薦番組を提供している。第 2の実施形態では、番組ごとに対するユーザ操作 情報を収集するのではなぐ番組内の時間軸で指定される一部分に対するユーザ操 作を集計することによって、番組内の推薦シーンや推薦時間帯を提供する。
[0125] 本実施形態では、番組内の時間軸で指定される一部分に対するユーザ操作として 、番組中にユーザの嗜好シーンをマーキングするユーザ操作を用いて説明する。マ 一キングとは、ユーザが放送番組の視聴中、あるいは録画番組の視聴中に、お気に 入りのシーンをマーキングすることであり、例えば、お気に入りシーンの間で所定のお 気に入りシーンボタンを押し続けることによるマーキング、お気に入りシーンの開始時 間と終了時間とを入力することによるマーキング、お気に入りシーンの開始時間でボ タン操作を行いお気に入りシーンの継続時間を指定するマーキング、お気に入りシ ーンの終了時間でボタン操作を行いお気に入りシーンの継続時間を指定するマーキ ングなどが挙げられる。
[0126] 本実施形態では、ユーザ毎の番組視聴端末にお!/、て、ユーザ毎に番組にマーキ ングを行い、マーキング情報と番組の識別情報とを番組推薦サーバに送信する。番 組推薦サーバは、同一時間にマーキングしたユーザ、マーキングの時間的な類似性 を持ったユーザ、又はマーキング時間に重なりを有するユーザをグループ化して、グ ループ内でマーキング情報を集計し、グループ内で特化したお勧めシーンを生成し て、ユーザにお勧めシーンを提供する。
[0127] 図 9は、ユーザ A及びユーザ Bの特定番組に対するマーキング方法と、マーキング の集計方法とについて説明するためのタイミングチャートである。
[0128] 図 9に示す番組ストリーム 500は、図面の右方向に向力、つて進行する放送番組の時 間経過を示している。また、番組ストリーム 500は、連続した番組のフレームで構成さ れる。 [0129] 図 9において、ユーザ Aは、本特定番組に対してマーキングを行っている。ユーザ Aは、本特定番組内で、時刻 T1〜時亥 ijT3までの間のシーンをマーキング(第 1のマ 一キング 501)し、時刻 T6〜時刻 T8までの間のシーンをマーキング(第 2のマーキン グ 502)している。
[0130] 同様に、図 9において、ユーザ Bは、本特定番糸且に対してマーキングを fiつている。
ユーザ Bは、本特定番組内で、時刻 T2〜時刻 T4までの間のシーンをマーキング(第 1のマーキング 503)し、時刻 T5〜時刻 T7までの間のシーンをマーキング(第 2のマ 一キング 504)し、時刻 T9〜時刻 T10までの間のシーンをマーキング(第 3のマーキ ング 505)している。
[0131] 特定番組の再生が終了した後、ユーザ Aの番組視聴端末は、番組推薦サーバに 対して、ユーザ Aのユーザ情報、特定番組の番組識別情報及びユーザ Aのマーキン グ情報を送信する。なお、マーキング情報は、特定番組においてマーキングされた時 間を表し、例えばマーキングが開始された時刻とマーキングが終了された時刻とを含 む。図 9のユーザ Aの場合、第 1のマーキング 501におけるマーキング開始時刻 T1 及びマーキング終了時亥 IJT3と、第 2のマーキング 502におけるマーキング開始時刻 T6及びマーキング終了時刻 T8とがマーキング情報として生成される。
[0132] また、特定番組の再生が終了した後、ユーザ Bの番組視聴端末は、番組推薦サー バに対して、ユーザ Bのユーザ情報、特定番組の番組識別情報及びユーザ Bのマー キング情報を送信する。図 9のユーザ Bの場合、第 1のマーキング 503におけるマー キング開始時亥 IJT2及びマーキング終了時亥 IJT4と、第 2のマーキング 504におけるマ 一キング開始時刻 T5及びマーキング終了時刻 T7と、第 3のマーキング 505における マーキング開始時亥 IJT9及びマーキング終了時刻 T10とがマーキング情報として生 成される。なお、ユーザ Bは、ユーザ Aよりも時間的に早く本特定番組を視聴し、マー キング情報を送信しているので、ユーザ Aがマーキング情報を送信する時点では、ュ 一ザ Bのマーキング情報が番組推薦サーバ内に既に登録されているとして、以後の 説明を行う。
[0133] なお、ユーザ情報は、番組推薦サーバにユーザ情報を登録することによって番組 推薦サーバからユーザに対して付与され、ユーザの使用する番組視聴端末内で管 理される。
[0134] また、番組識別情報は、番組ごとに付与されて!/、る番組を識別するための番組識 別情報、及び、番組の放送日時、チャンネル情報及び放送局識別情報で示される識 別情報のレ、ずれであってもかまわなレ、。
[0135] また、マーキング情報は、マーキングの開始時刻とマーキングの終了時刻とが含ま れる。例えば、ユーザ Aの第 1のマーキング 501の場合は、マーキング開始時刻とし て時刻 T1が含まれ、マーキング終了時刻として時刻 T3が含まれる。また、ユーザに よってマーキング時間が、マーキング開始時刻とマーキング幅とで指定される場合は 、マーキング開始時刻とマーキング終了時刻とに変更して送信する。
[0136] 番組推薦サーバは、ユーザ Aの番組視聴端末から、ユーザ Aのマーキング情報を 受信すると受信したマーキング情報を解析し、類似のマーキング情報を有するユー ザをグループ化する。なお、類似のマーキング情報を有するユーザとは、マーキング 位置が時間的に一致しているユーザ、及びマーキング位置に重なりを持つユーザで ある。また、マーキング位置の重なりを判定する場合には、ユーザの嗜好の同一性の 判定を精度良く行うため、全マーキング時間に対して 50%以上の重なりを持つか否 かを判定し、 50%以上の重なりを持つユーザをグルーピングする。
[0137] 図 9において、第 1の重なり 506及び第 2の重なり 507は、ユーザ Aのマーキング情 報とユーザ Bのマーキング情報との重なりを示している。この場合、第 1の重なり 506 と第 2の重なり 507との合計時間は、ユーザ Aの総マーキング時間(ユーザ Aの第 1の マーキング 501と第 2のマーキング 502との合計時間)に対して 50%以上なので、ュ 一ザ A及びユーザ Bは同一のグループとしてグループ化される。なお、本実施形態 では、ユーザ A及びユーザ Bのみでグループが構成されるとして説明するが、マーキ ング時間の重なりが 50%以上あるユーザはすべて同一グループにグループ化され
[0138] このように、本実施形態では、ユーザの番組へのマーキング操作に基づいてユー ザをグループ化する。
[0139] 図 10は、グループ化したユーザの特定番組以外の番組において、類似するマーキ ング情報が存在した番組 B及び番組 Cのそれぞれのマーキング度数を示したグラフ である。
[0140] 図 10の度数分布グラフ 600aは、ユーザ Aの特定番組のマーキング情報と類似の マーキング情報を持ったユーザをグループ化して、特定番組以外の番組でマーキン グ情報が類似してレ、る番組 B及び番組 Cが抽出され、番組 B及び番組 C内のグルー プ内のユーザのマーキング情報の重なりを示した度数分布である。この例では、番組
Bに対して、第 1のピーク 601と第 2のピーク 602において高い度数を示している。ま た、番組 Cでは、第 1のピーク 603、第 2のピーク 604において高い度数を示している 。これは、ユーザ Aの特定番組へのマーキング情報と類似するマーキング情報を持 つたユーザのグループにおいて、番組 Bの第 1のピーク 601、番組 Bの第 2のピーク 6 02、番組 Cの第 1のピーク 603及び番組 Cの第 2のピーク 604で多くのマーキングが 行われてレ、ることを示して!/、る。
[0141] また、図 10の度数分布グラフ 600bは、ユーザ Aの特定番組のマーキング情報と類 似のマーキング情報を持ったユーザのグループを包含するグループとして、番組推 薦サーバの全登録ユーザの番組 B及び番組 Cにおけるマーキング情報の重なりを示 した度数分布である。全ユーザの度数分布グラフ 600bでは、番組 Bにおける第 1の ピーク 605及び第 2のピーク 606で、比較的多くのマーキングが行われている。しかし ながら、番組 Cでは、全体的にマーキング度数は低ぐ第 1のピーク 607及び第 2のピ ーク 608にお!/、てもそれほどマーキングが fiわれて!/、な!/、。
[0142] 図 10の度数分布グラフ 600cは、ユーザ Aのマーキング情報に類似するマーキング 情報を持ったユーザで構成されるグループのマーキング度数をグループ内の全ユー ザの総マーキング時間で正規化した度数分布グラフ 600aから、全ユーザのマーキン グ度数を全ユーザの総マーキング時間で正規化した度数分布グラフ 600bを減算し た結果を示す。この結果、番組 Bにおけるグループ内の第 1のピーク 601と全ユーザ の第 1のピーク 605とに時間的なずれが生じているため、番組 Bの第 1の差分のピー ク 609が生成される。
[0143] また、番組 Bのグループ内の第 2のピーク 602は、全ユーザの第 2のピーク 606とほ ぼ同等のマーキング度数を有しているので、差分の結果、第 2の差分のピーク 610は 、大きなマーキング度数を有していない。 [0144] 番組 Cにおいては、グループ内の度数分布では、第 1のピーク 603及び第 2のピー ク 604が高いマーキング度数を有しているにもかかわらず、全ユーザの度数分布で は、第 1のピーク 607及び第 2のピーク 608とも高い度数を有していない。従って、番 組 Cでは、第 1の差分のピーク 611及び第 2の差分のピーク 612とも高い度数を有し ている。
[0145] 図 10の差分の度数分布グラフ 600cは、番組毎の差分のマーキング度数と予め定 められた閾値 620とに基づいて閾値判定を行い、閾値 620より高いマーキング度数 を有するシーンを推薦シーンとして生成する。本例では、番組 Bにおいては、番組 B の時刻 T1〜時刻 T2までのシーンを推薦シーン 1として生成し、番組 Cにおいては、 番組 Cの時刻 T3〜時刻 T4までを推薦シーン 2として生成するとともに、番組 Cの時 刻 T5〜時刻 T6までを推薦シーン 3として抽出する。
[0146] なお、番組毎の推薦度は、差分の度数分布において抽出した各推薦シーンの番 組毎の時間軸でのマーキング度数の積分値の大きい番組力 優先することが望まし い。
[0147] 図 11は、第 2の実施形態の番組視聴端末の構成を示すブロック図であり、図 12は 、第 2の実施形態の番組推薦サーバの構成を示すブロック図である。第 2の実施形 態の番組推薦システムは、例えば番組録画装置などの番組視聴端末 5と、複数の番 組視聴端末 5とインターネットなどの汎用のネットワーク 7を介して通信可能に接続さ れる番組推薦サーバ 6とで構成される。なお、第 2の実施形態の番組推薦システムの 構成は、図 2に示す番組推薦システムの構成と同じである。本来、番組推薦サーバ 6 には、複数の番組視聴端末 5が接続される力 説明の簡易化のために 1台の番組視 聴端末 5が接続された形態について説明する。
[0148] 番組視聴端末 5は、放送波又は IP網から番組を受信して、番組を視聴したり、番組 を録画したり、録画した番組を再生したり、録画した番組を消去したり、番組の録画予 約をしたりする。番組視聴端末 5は、アンテナ 701、チューナ 702、 TSデコーダ 703、 CAS704、喑号解除部 705、デマルチプレクサ 706、 MPEG Videoデコーダ 707 、 MPEG Audioデコーダ 708、 HDMI端子 709、記録用暗号化部 713、記録制御 部 714、記録媒体 715、再生制御部 716、記録用復号化部 717、 PSI抽出部 718、 EPG記憶部 719、キー 720、赤外線通信部 721、マーキング管理部 722、マーキン グ記憶部 724、ユーザ識別部 725、ユーザ情報 DB726、マーキング送信部 727、推 薦受信部 728、推薦番組情報抽出部 729、番組記録判定部 730、予約管理部 731 、予約メモリ 732及び特定シーン抽出部 733から構成される。
[0149] また、番組推薦サーバ 6は、マーキング受信部 750、ユーザ管理部 751、ユーザ属 性 DB752、マーキング登録部 754、マーキング DB755、特化生成部 70、推薦シー ン作成部 759及び推薦送信部 760から構成される。
[0150] また、番組推薦サーバ 6の特化生成部 70は、コミュニティマーキング統計部 756、 全ユーザマーキング統計部 757及びコミュニティ特化部 758で構成される。
[0151] チューナ 702は、例えば地上波デジタル放送や BSデジタル放送などの放送波、あ るいはマルチキャストで送信される IP放送から、所定チャンネルの放送波を受信して 、放送波を TSデコーダ 703に出力する。 TSデコーダ 703は、受信した一般的なトラ ンスポート'ストリーム形式の放送波を復調して暗号解除部 705に出力する。
[0152] CAS704は、一般的な Conditional Access Systemであり、ユーザの登録情 報及び番組の暗号鍵の記録された ICカードから暗号鍵情報を読み出し、暗号解除 部 705に出力する。
[0153] 暗号解除部 705は、 TSデコーダ 703によって復調された、暗号化された放送信号 を、 CAS704からの暗号鍵をもとに復号化し、暗号化された番組情報の暗号を解除 してデマルチプレクサ 706に出力する。
[0154] デマルチプレクサ 706は、番組情報として多重化されている情報を分離する。番組 情報には、少なくともビデオ情報、オーディオ情報及び番組管理情報が多重化され、 これらを分離後、ビデオ情報を MPEG Videoデコーダ 707へ、オーディオ情報を M PEG Audioデコーダ 708へ、番組管理情報を PSI抽出部 718へ出力する。
[0155] MPEG Videoデコーダ 707は、デマルチプレクサ 706からのビデオ情報を復調し て映像データに変換し、 HDMI端子 709に出力する。 MPEG Audioデコーダ 708 は、デマルチプレクサ 706からのオーディオ情報を復調してオーディオデータに変換 し、 HDMI端子 709に出力する。 HDMI端子 709は、 HDMIケーブルを介して外部 の HDMI端子 710と接続されており、 HDMI端子 710は、モニタ 711及びスピーカ 7 12と接続されている。
[0156] HDMI端子 709, 710は、一般的な映像情報用及び音声情報用のインタフェース であり、番組視聴端末 5とモニタ 711及びスピーカ 712とを互いに相互認証するととも に、暗号鍵の共通化を行い、共通化した暗号鍵で、映像データや音声データを暗号 化して、モニタ 711やスピーカ 712に出力する。
[0157] モニタ 711は、一般的な番組の映像情報の表示装置であって、 HDMI端子 710で 受信した暗号化された映像データを復号して番組の映像データを出力する。スピー 力 712は、一般的な番組の音声情報の出力装置であって、 HDMI端子 710で受信 した暗号化された映像データを復号して番組の音声データを出力する。
[0158] 記録用暗号化部 713は、受信した番組情報を記録媒体に記録するための喑号処 理を施す。記録用暗号化部 713は、デマルチプレクサ 706から入力された番組情報 を暗号化して記録制御部 714に出力する。従って、記録用暗号化部 713は、番組情 報を記録する記録媒体に特有の暗号化処理を行う。例えば、 DVD— RAMでは CP RM (Content Protection for Rewritable Media)、 Blu— rayアイスクゃ HD — DVDでは、 AACS ( Advanced Access Content System)が用いられる。
[0159] 記録制御部 714は、記録用暗号化部 713によって暗号化された番組情報の記録 媒体 715への記録を制御する。記録制御部 714は、記録媒体特有の変調処理や誤 り訂正符号化処理を行うことによって記録媒体に番組情報を記録する。
[0160] 記録媒体 715は、番組情報を記録するコンピュータ読み取り可能な記録媒体であ つて、例えば、ハードディスクのような磁気記録ディスクや DVD、 Blu— rayディスクな どの光ディスク、 SDカードのような半導体メモリ、及び MO/MDのような光磁気記録 媒体が用いられる。
[0161] 再生制御部 716は、記録媒体 715に記録されている番組情報を読み出す。なお、 記録制御部 714、記録媒体 715及び再生制御部 716は、ドライブシステムとして構成 されるのが一般的である。
[0162] 記録用復号化部 717は、記録用暗号化部 713の暗号化に対応する復号を行う。記 録用復号化部 717は、暗号化して記録媒体 715に記録された番組情報を復号化し て TSデコーダ 703に出力する。なお、 TSデコーダ 703に出力された番組情報の再 生処理は、上述のアンテナ 701で受信した番組の再生処理と同様である。
[0163] PSI抽出部 718は、デマルチプレクサ 706で抽出した番組管理情報から PSI (Prog ram Specific Information)を抽出する。 PSIの中には、主に、 PMT (Program Map Table)、 EIT (Event Information Table)及び TOT (Time Offset Ta ble)などの情報が含まれる。
[0164] PMTは、番組に含まれる画像や音声などの各パケット識別情報を格納して!/、る。よ つて、 PMTから画像や音声などのパケット識別情報を得ることが出来れば、それらパ ケット識別情報のついたパケットを抽出することでプログラムを再生できる。
[0165] EITは、番組の名称、放送日時及び放送内容などの番組に関連する情報が含まれ る。 EPG (Electronic Program Guide)は主にこの情報を用いて作成される。
[0166] EPG記憶部 719は、 PSI抽出部 718で抽出した PSI中の EITを用いて EPG情報を 作成して、記憶する。キー 720は、ユーザからの入力を受け付け、リモコンやフロント パネルで構成される。また、キー 720は、視聴する番組に対して、ユーザが行うマー キング部として機能する。実際には、リモコンに、マーキングボタンが設けられ、ユー ザがマーキングボタンを押している間、番組に対してマーキングが行われる。または、 キー 720は、ユーザからマーキングを行う番組内の時間情報の入力を受け付ける。
[0167] 赤外線通信部 721は、一般的なリモートコントローラからの赤外線信号の受光部で ある。赤外線通信部 721は、キー 720に付随したマーキングボタンの押下中、マーキ ングボタン押下信号を生成して、マーキング管理部 722に出力する。
[0168] マーキング管理部 722は、赤外線通信部 721からマーキングボタン押下信号を受 け取り、マーキングボタン押下信号によってマーキングボタンが押されていると判断し たときには、現在再生中の番組の番組内の時間情報を PSI抽出部 718から受け取り 、マーキング記憶部 724に出力する。
[0169] PSI抽出部 718は、内部に時間抽出部 7181と PID抽出部 7182とを備える。時間 抽出部 7181は、 PSI内のタイムオフセットテーブル (TOT)を確認することによって、 番組内の再生時間を抽出する。また、 PID抽出部 7182は、現在再生中の映像コン テンッのパケットのパケット識別情報である PIDを抽出して、現在再生中のパケットを 特定する。 [0170] マーキング記憶部 724は、マーキング管理部 722によって抽出された番組内にお V、てマーキングされた時間情報、あるいはマーキング中の番組のパケット識別情報群 を記憶する。マーキング記憶部 724は、マーキング開始時の番組内の時刻及びマー キング終了時の番組内の時刻の 2つを対応させて時間情報として記憶しても良いし、 マーキング開始時の番組のパケットのパケット識別情報とマーキング終了時の番組の パケットのパケット識別情報とを対応付けてパケット識別情報群として記憶してもレ、レ、 。また、マーキング中の全パケットのパケット識別情報を 1つの群として記憶してもかま わない。また、これらの時間情報やパケット情報は、再生している番組の番組識別情 報に対応付けてマーキング記憶部 724に記憶される。番組識別情報は、 PSI抽出部 718で抽出した PSI内に含まれる。これらの番組識別情報に対応したマーキング位 置の時間情報やパケット識別情報は、マーキング情報としてマーキング記憶部 724 に記 fe、される。
[0171] ユーザ識別部 725は、番組視聴端末 5を使用するユーザを識別する。ユーザ識別 部 725は、キー 720を用いて入力されるユーザ情報に基づいて、番組視聴端末 5を 使用するユーザを識別する。
[0172] ユーザ情報 DB726は、番組視聴端末 5を使用する全ユーザのユーザ情報が登録 されているデータベースである。ユーザ識別部 725は、キー 720を用いて入力される ユーザ情報と、ユーザ情報 DB726に予め記憶されているユーザ情報とに基づいて ユーザを識別する。また、ユーザ識別部 725は、ユーザの認証に成功すると現在使 用中のユーザのユーザ情報をマーキング送信部 727に出力する。
[0173] マーキング送信部 727は、一般的なネットワークインタフェースであり、汎用のネット ワーク 7を介して接続される番組推薦サーバ 6とのネットワークを確立した後、マーキ ング記憶部 724に記憶したマーキング情報とユーザ識別部 725から入力されたユー ザ情報とをともに番組推薦サーバ 6に送信する。
[0174] なお、マーキング記憶部 724は、ユーザ識別部 725と連動してマーキングしたユー ザを対応付けて記憶するとともに、マーキング送信部 727によって番組推薦サーバ 6 に送信済みのマーキング情報と未送信のマーキング情報とを識別可能に管理する。
[0175] 推薦受信部 728は、汎用のネットワーク 7を介して、番組推薦サーバ 6の推薦する 番組に関する推薦情報を受信する。推薦番組情報抽出部 729は、推薦受信部 728 で受信した推薦情報から、推薦番組情報を抽出する。推薦番組情報は、推薦する番 組を一意に識別できる情報であり、例えば、番組を識別するための番組識別情報、 又は番組の放送日時、チャンネル情報及び放送局を識別するための放送局識別情 報を含む。さらに、推薦番組情報は、番組内の推薦シーンを一意に指定可能な時間 情報又はパケット識別情報を含んでいる。抽出した推薦番組情報は、番組記録判定 部 730に出力される。
[0176] 番組記録判定部 730は、受信した推薦番組情報で示される番組識別情報に基づ V、て、番組識別情報が示す番組が記録媒体 715に記録されて!/、るか否かを確認す る。また、番組記録判定部 730は、推薦番組情報で示される番組が記録されていると 判断した場合、推薦番組情報の示す番組内の時間情報あるいはパケット識別情報 で表された推薦シーンが記録されて!/、るか否かを判定する。番組記録判定部 730は 、推薦シーンが記録されていると判断した場合、特定シーン抽出部 733に推薦番組 情報を出力する。さらに、番組記録判定部 730は、推薦番組情報で示される番組が 記録されて!/、な!/、と判断した場合、又は番組の推薦シーンが記録されて!/、な!/、と判 断した場合、番組の番組識別情報と EPG記憶部 719に記憶されて!/、る EPG情報と に基づいて、現在以降の番組であるか否かを判断する。番組記録判定部 730は、現 在以降に放送予定の番組であると判断された場合、予約管理部 731に番組識別情 報を出力する。
[0177] 予約管理部 731は、番組記録判定部 730からの番組識別情報に基づいて、番組 識別情報の示す番組の録画予約処理を行う。予約メモリ 732は、予約管理部 731で 予約を行う番組の番組識別情報をユーザ識別部 725から入力されるユーザ情報に 対応付けて記憶する。
[0178] 特定シーン抽出部 733は、番組記録判定部 730から推薦番組情報が入力されると 、番組識別情報の示す番組を記録媒体 715から抽出して、推薦番組情報の示す推 薦シーンの開始時刻から終了時刻までの番組の再生を行う。
[0179] 次に、本実施形態の番組推薦システムにおける番組推薦サーバ 6の構成について 説明する。マーキング受信部 750は、汎用のネットワーク 7に接続された複数の番組 視聴端末 5のマーキング送信部 727から、各ユーザによってマーキングされた番組の マーキング情報とマーキングを行ったユーザのユーザ情報とを受信する。なお、マー キング情報は、マーキングを行った番組を一意に識別可能な番組識別情報、又は予 約された番組の番組放送日時、チャンネル情報及び放送局識別情報を含む。また、 マーキング情報は、マーキングの行われた番組内の時間情報ある!/、はパケット識別 情報を含む。受信したマーキング情報及びユーザ情報は、ユーザ管理部 751に出 力される。
[0180] ユーザ属性 DB752は、登録ユーザのユーザ情報と、必要であれば、ユーザ氏名、 性別、住所/電話番号、番組視聴端末のメーカ/機種、接続するモニタの解像度お よび番組視聴端末のネットワーク IDなどのユーザ属性情報とをユーザ登録リストとし て管理する。ユーザは、予め番組推薦サーバ 6に、番組推薦を行うためのユーザ登 録処理を行う。ユーザ登録処理には、ユーザ名の設定、住所/電話番号の通知など ユーザ登録情報の通知を行った後、番組推薦サーバ 6側で、該ユーザにユーザ情 報を生成して通知し、ユーザ属性 DB752で生成したユーザ情報に対応付けて、ュ 一ザから通知されたユーザ属性情報を記憶/管理する。
[0181] ユーザ管理部 751は、受信したユーザ情報により特定されるユーザが、番組推薦 サーバ 6の登録ユーザであるか否かを判定する。ユーザ管理部 751は、ユーザ属性 DB752に記憶されているユーザ登録リストの中から、受信したユーザ情報に一致す るユーザ情報を検索する。受信したユーザ情報がユーザ属性 DB752に登録されて いると判断された場合、番組推薦サーバ 6の登録ユーザであると判断して、処理を継 ¾ る。
[0182] 一方、受信したユーザ情報がユーザ属性 DB752に登録されていないと判断された 場合、番組推薦サーバ 6の未登録ユーザであるとして、当該ユーザの使用する番組 視聴端末 5に登録ユーザでない旨のエラーメッセージを送信して以後の処理を中断 する。エラーメッセージを受信した番組視聴端末 5は、当該エラーメッセージをモニタ 711に表示する。
[0183] マーキング登録部 754は、ユーザ管理部 751によってユーザが番組推薦サーバ 6 の登録ユーザであると判断された場合、マーキング受信部 750によって受信された ユーザ毎のマーキング情報を、受信したユーザ情報に対応付けて、マーキング DB7
55に する。
[0184] コミュニティマーキング統計部 756は、マーキング受信部 750によって受信されたマ 一キング情報に基づレ、て、当該マーキング情報と類似したマーキング情報を持った 全ユーザをコミュニティグループとしてグループ化する。また、コミュニティマーキング 統計部 756は、当該コミュニティグループに属する全ユーザの当該マーキング情報 の対象番組以外のマーキング情報を集計するとともに、コミュニティグループに所属 する全ユーザ数で集計結果を正規化し、コミュニティグループ内の各番組のマーキ ング率を算出する。コミュニティマーキング統計部 756は、正規化したマーキング率を コミュニティ特化部 758に出力する。
[0185] なお、前述の類似したマーキング情報とは、マーキング受信部 750によって受信さ れたマーキング情報の示す番組内のマーキング位置と、マーキング DB755に記憶さ れているマーキング情報の示す番組内のマーキング位置とに重なりを有すること、あ るいは受信したマーキング情報の示す番組内のパケット識別情報と、マーキング DB 755に記憶されているマーキング情報の示す番組内のパケット識別情報とに重なりを 有することである。望ましくは、受信したマーキング情報の示す番組内のマーキング 位置と、マーキング DB755に記憶されているマーキング情報の示す番組内のマーキ ング位置との重なりが、受信したマーキング情報の総マーキング時間に対して 50% 以上であることが好ましい。また、受信したマーキング情報の示す番組内のパケット識 別情報群と、マーキング DB755に記憶されているマーキング情報の示す番組内の パケット識別情報群との重なりが、受信したマーキング情報の総マーキングパケット数 に対して 50%以上であることが好まし!/、。
[0186] 全ユーザマーキング統計部 757は、マーキング受信部 750によって受信されたマ 一キング情報の類似した全ユーザをコミュニティグループとしてグループ化するコミュ 二ティマーキング統計部 756とは異なり、ユーザ属性 DB752に登録されている全ュ 一ザ、すなわち番組推薦サーバ 6への全登録ユーザを、コミュニティグループを包含 する全ユーザグループとしてグルーピングする。
[0187] また、全ユーザマーキング統計部 757は、全ユーザのグルーピング後、マーキング 受信部 750で受信したマーキング情報が示す番組以外の番組で、全ユーザのマー キング情報を統計処理して、番組毎のマーキング度数を作成する。また、このマーキ ング度数は、登録ユーザの全マーキング総時間、あるいはマーキングパケット総数で 正規化される。作成したマーキング度数は、コミュニティ特化部 758と推薦シーン作 成部 759とに出力される。
[0188] コミュニティ特化部 758は、コミュニティマーキング統計部 756によって算出された マーキング度数から、全ユーザマーキング統計部 757によって算出されたマーキング 度数を減算することによって、コミュニティマーキング統計部 756でグルーピングした コミュニティグループに特化したマーキング度数を作成して、推薦シーン作成部 759 に出力する。なお、マーキング度数の減算は、番組毎のマーキング度数を、同一番 組ごとに減算する。
[0189] 推薦シーン作成部 759は、コミュニティ特化部 758によって生成されたマーキング 度数を基に、予め設定された閾値よりも高!/、マーキング度数を有する番組を推薦番 組として抽出する。また、推薦シーン作成部 759は、各番組内でマーキング度数が閾 値を上回ったシーンの開始時刻及び終了時刻、あるいは開始パケットのパケット識別 情報及び終了パケットのパケット識別情報を推薦シーン情報として抽出する。推薦シ ーン作成部 759は、推薦番組を識別するための番組識別情報、又は推薦番組の放 送日時、推薦番組が放送されるチャンネル情報及び推薦番組が放送される放送局 を識別するための放送局識別情報と、推薦シーン情報とを含む推薦番組情報を作 成する。これによつて、推薦シーン作成部 759は、コミュニティグループに特化した推 薦シーンを作成する。
[0190] また、推薦シーン作成部 759は、全ユーザマーキング統計部 757によって生成され たマーキング度数を基に、予め設定された閾値よりも高!/、マーキング度数を有する番 組を人気番組として抽出する。また、推薦シーン作成部 759は、各番組内でマーキ ング度数が閾値を上回ったシーンの開始時刻及び終了時刻、あるいは開始パケット のパケット識別情報及び終了パケットのパケット識別情報を人気シーン情報として抽 出する。推薦シーン作成部 759は、人気番組を識別するための番組識別情報、又は 人気番組の放送日時、人気番組が放送されるチャンネル情報及び人気番組が放送 される放送局を識別するための放送局識別情報と、人気シーン情報とを含む人気番 組情報を作成する。これによつて、コミュニティグループに特化した推薦シーンの開 始時刻と終了時刻とを含み、かつ推薦シーンを含む番組の番組識別情報を含んだ 推薦番組情報が生成されるとともに、人気シーンの開始時刻と終了時刻とを含み、か つ人気シーンを含む番組の番組識別情報を含んだ人気番組情報が生成されて、推 薦送信部 760に出力される。
[0191] 推薦送信部 760は、推薦シーン作成部 759によって作成された、推薦シーン情報 を含む推薦番組情報と、人気シーン情報を含む人気番組情報とを含む推薦情報を 番組視聴端末 5に送信する。
[0192] 以下、本実施形態における番組推薦システムの動作について説明する。例えば、 ユーザ Aが、ユーザ Aの所有する番組視聴端末 5によって、番組 Aの一部をマーキン グする。番組視聴端末 5は、ユーザ Aを識別するためのユーザ情報と、番組 Aを識別 するための番組識別情報と、番組内におけるマーキングされた位置を特定するため のマーキング情報とを番組推薦サーバ 6に送信する。
[0193] 番組推薦サーバ 6のマーキング受信部 750は、ユーザ Aの所有する番組視聴端末
5から、ユーザ Aを識別するためのユーザ識別情報と、番組 Aを識別するための番組 識別情報と、番組内におけるマーキングされた位置を特定するためのマーキング情 報とを受信する。ユーザ管理部 751は、受信したユーザ情報がユーザ属性 DB752 に記憶されているか否かを判定し、記憶されていれば、ユーザ Aが番組推薦サーバ 6の登録ユーザであるとして、処理を継続する。
[0194] マーキング登録部 754は、ユーザ Aを識別するためのユーザ情報に対応付けて、 番組 Aを識別するための番組識別情報と、番組内におけるマーキングされた位置を 特定するためのマーキング情報とをマーキング DB755に登録する。コミュニティマー キング統計部 756は、番組 Aのマーキング情報と類似したマーキング情報を持った 全ユーザをマーキング DB755から抽出してコミュニティグループを形成する。コミュ 二ティマーキング統計部 756は、コミュニティグループ内における番組 A以外の番組 のマーキング情報を統計的に処理する。そして、コミュニティマーキング統計部 756 は、コミュニティグループ内における番組 A以外の番組のマーキング度数を算出して 、コミュニティ特化部 758に出力する。
[0195] 全ユーザマーキング統計部 757は、番組推薦サーバ 6のユーザ属性 DB752に登 録されている全ユーザをマーキング DB755から抽出してコミュニティマーキング統計 部 756で形成したコミュニティグループを包含する全ユーザグループを形成する。全 ユーザマーキング統計部 757は、全ユーザグループ内のユーザ情報に対応付けら れているマーキング情報をマーキング DB755から抽出して、番組 A以外の番組のマ 一キング情報を統計処理する。そして、全ユーザマーキング統計部 757は、全ユー ザグループ内において番組 A以外の番組のマーキング度数を算出して、コミュニティ 特化部 758と推薦シーン作成部 759とに出力する。
[0196] コミュニティ特化部 758は、コミュニティマーキング統計部 756によって作成された 番組 A以外の番組のマーキング度数から、全ユーザマーキング統計部 757によって 作成された番組 A以外の番組のマーキング度数を減算する。これにより、コミュニティ 特化部 758は、番組 Aにおける所定の位置をマーキングしたユーザの属するコミュ二 ティグループに特化した番組のマーキング度数を作成して推薦シーン作成部 759に 出力する。
[0197] 推薦シーン作成部 759は、コミュニティ特化部 758によって作成された、コミュニティ グループに特化したマーキング度数に基づき、閾値よりもマーキング度数の高!/、番 組の番組識別情報と、閾値よりもマーキング度数の高!/、シーンの開始時刻及び終了 時刻を表す推薦シーン情報とを抽出して推薦番組情報を作成する。また、推薦シー ン作成部 759は、全ユーザマーキング統計部 757によって作成された、全登録ユー ザの一般化されたマーキング度数に基づき、閾値よりもマーキング度数の高い番組 の番組識別情報と、閾値よりもマーキング度数の高!/、シーンの開始時刻及び終了時 刻を表す人気シーン情報とを抽出して人気番組情報を作成する。推薦送信部 760 は、推薦シーン作成部 759によって作成された推薦番組情報及び人気番組情報を ユーザ Aの番組視聴端末 5に送信する。
[0198] 次に、本実施形態の番組推薦システムの処理の流れについてさらに説明する。図 1 3〜; 15は、第 2の実施形態に係る番組推薦システムの処理の流れを示したフローチ ヤートであり、図 13は、第 2の実施形態に係る番組視聴端末におけるマーキング情報 を送信するまでの処理の流れを示すフローチャートであり、図 14は、第 2の実施形態 に係る番組推薦サーバにおける処理の流れを示すフローチャートであり、図 15は、 第 2の実施形態に係る番組視聴端末における推薦情報を受信してからの処理の流 れを示すフローチャートである。
[0199] 図 13において、まず、ユーザ識別部 725は、ユーザに対するユーザ認証のための ユーザ認証画面をモニタ 711に表示し、キー 720は、ユーザによるユーザ情報の入 力を受け付け、番組視聴端末 5へのログインを受け付ける(ステップ S41)。次に、ュ 一ザ識別部 725は、ユーザ認証が成功したか否か、すなわち、入力されたユーザ情 報がユーザ情報 DB726に予め登録されているユーザ情報と一致するか否かを判断 する(ステップ S42)。
[0200] ここで、入力されたユーザ情報がユーザ情報 DB726に登録されていない、すなわ ち番組視聴端末 5の登録ユーザでな!/、と判断された場合、又は入力されたユーザ情 報に誤りがある場合(ステップ S42で NO)、ユーザ識別部 725は、モニタ 711にエラ 一メッセージを出力して以後の処理を終了する(ステップ S43)。
[0201] 一方、入力されたユーザ情報に誤りがなぐ番組視聴端末 5の登録ユーザであると 判断された場合 (ステップ S42で YES)、再生制御部 716は、記録媒体 715に記録 済みの番組に対する再生指示操作があつたか否かを判断する (ステップ S44)。ここ で、再生指示操作がないと判断された場合 (ステップ S44で NO)、再生制御部 716 は、ユーザからの再生指示操作があるまで待機する。
[0202] ユーザからの再生指示操作があつたと判断された場合 (ステップ S44で YES)、再 生制御部 716は、ユーザによって選択された番組を記録媒体 715から再生してモニ タ 711に出力する再生処理を実行する(ステップ S45)。
[0203] 次に、番組の再生中、マーキング管理部 722は、ユーザによるマーキング操作が開 始されたか否かを判断する(ステップ S46)。なお、赤外線通信部 721は、リモートコ ントローラのマーキングボタンを押下された際に出力される赤外線信号を感知したと き、マーキングボタン押下信号を生成して、マーキング管理部 722に出力する。マー キング管理部 722は、マーキングボタン押下信号が入力されるとマーキング操作が開 始されたと判断する。 [0204] マーキング操作が開始されたと判断された場合 (ステップ S46で YES)、時間抽出 部 7181は、番組放送に多重化されている PSIから番組内の再生時間を抽出して、マ 一キング操作が開始されたマーキング開始時刻としてマーキング記憶部 724に一時 記憶する(ステップ S47)。一方、マーキング操作が開始されていないと判断された場 合(ステップ S46で NO)、再生している番組が終了したか否かの判定処理に移る(ス テツプ S 50)。
[0205] 次に、マーキング管理部 722は、ユーザによるマーキング操作が終了したか否かを 判断する(ステップ S48)。赤外線通信部 721は、リモートコントローラのマーキングボ タンの押下が解除されると、マーキングボタン押下信号の生成を終了する。マーキン グ管理部 722は、マーキングボタン押下信号が入力されなくなるとマーキング操作が 終了したと判断する。
[0206] マーキング操作が終了したと判断された場合 (ステップ S48で YES)、時間抽出部 7 181は、マーキング開始時刻を抽出した時と同様に、番組に多重化されている PSIか ら番組内の再生時間を抽出して、マーキング操作が終了したマーキング終了時刻と してマーキング記憶部 724に一時記憶する(ステップ S49)。一方、マーキング操作 が終了していないと判断された場合(ステップ S48で NO)、マーキング管理部 722は 、マーキング操作が終了されるまで待機する。
[0207] 次に、マーキング送信部 727は、再生している番組が終了したか否かを判断する( ステップ S 50)。再生して!/、る番組が終了したと判断された場合(ステップ S 50で YES )、マーキング送信部 727は、マーキング記憶部 724に記憶されているマーキング開 始時刻、マーキング終了時刻及び再生した番組の番組識別情報と、ユーザ識別部 7 25によって識別されたユーザのユーザ情報とをマーキング情報として番組推薦サー ノ 6に送信する (ステップ S51)。一方、再生している番組が終了していないと判断さ れた場合(ステップ S50で NO)、ステップ S45の再生処理を継続する。
[0208] 図 14において、次に、番組推薦サーバ 6のマーキング受信部 750は、番組視聴端 末 5のマーキング送信部 727によって送信されたマーキング情報を受信する (ステツ プ S61)。
[0209] 次に、ユーザ管理部 751は、ユーザ認証が成功したか否か、すなわち、マーキング 受信部 750によって受信されたマーキング情報に含まれるユーザ情報が番組推薦サ ーバ 6のユーザ属性 DB752に予め登録されているユーザ情報と一致するか否かを 判断する(ステップ S62)。ここで、ユーザ認証に失敗し、登録ユーザでないと判断さ れた場合(ステップ S62で NO)、ユーザ管理部 751は、その旨を示すエラーメッセ一 ジを作成して、番組視聴端末 5にエラーメッセージを送信し、以後の処理を終了する (ステップ S63)。なお、エラーメッセージを受信した番組視聴端末 5は、ユーザ認証 に失敗した旨を表すエラー通知をモニタ 711へ出力する。
[0210] 一方、ユーザ認証に成功し、登録ユーザであると判断された場合 (ステップ S62で YES)、マーキング登録部 754は、マーキング受信部 750によって受信されたマーキ ング情報を、当該ユーザのユーザ情報に対応付けてマーキング DB755に登録する (ステップ S 64)。
[0211] 次に、コミュニティマーキング統計部 756は、マーキング受信部 750によって受信さ れたマーキング情報に類似するマーキング情報を持った全ユーザを、マーキング DB 755力、ら抽出し、コミュニティグループとしてグループ化する(ステップ S65)。なお、 類似するマーキング情報とは、マーキング受信部 750で受信したマーキング情報の 示す番組識別情報と同一の番組識別情報であり、番組内のマーキングされた時間や マーキングされた番組のパケット識別情報に重なりがあるマーキング情報のことであ る。望ましくは、同じ番組内でユーザ毎のマーキングされた時間やマーキングされた パケット識別情報のうち 50%以上の重なりのあるマーキング情報を類似のマーキング 情報として判定する。
[0212] 次に、コミュニティマーキング統計部 756は、類似したマーキング情報を有するユー ザで構成されるコミュニティグループ内の全ユーザに登録されているマーキング情報 のうち、マーキング受信部 750によって受信されたマーキング情報の示す番組以外 のマーキング情報を番組ごとに集計する (ステップ S66)。コミュニティマーキング統計 部 756は、各番組において、単位時間毎にマーキングしているユーザがいればカウ ントし、番組毎に時間軸での度数分布を算出する。あるいは、コミュニティマーキング 統計部 756は、各番組において、パケット毎にマーキングを行ったユーザがいれば力 ゥントし、番組毎にパケット単位で度数分布を算出する。 [0213] 次に、コミュニティマーキング統計部 756は、集計された結果を、コミュニティグルー プ内におけるグループ化された全ユーザの総マーキング時間、あるいは総マーキン グパケット数で正規化する(ステップ S67)。コミュニティマーキング統計部 756は、正 規化した結果をコミュニティ特化部 758に出力する。
[0214] 次に、全ユーザマーキング統計部 757は、ユーザ属性 DB752に登録されているュ 一ザ、すなわち番組推薦サーバ 6に登録されている全ユーザを抽出し、類似したマ 一キング情報を有するユーザで構成されるコミュニティグループを包含する全ユーザ グループとしてグルーピングする(ステップ S68)。
[0215] 次に、全ユーザマーキング統計部 757は、全ユーザのマーキング情報をマーキン グ DB755から抽出して、マーキング受信部 750によって受信されたマーキング情報 の示す番組以外の番組のマーキング情報を集計する(ステップ S69)。全ユーザマー キング統計部 757は、各番組において、単位時間毎にマーキングしているユーザが いればカウントし、番組毎に時間軸での度数分布を算出する。あるいは、全ユーザマ 一キング統計部 757は、各番組において、パケット毎にマーキングを行ったユーザが いればカウントし、番組毎にパケット単位で度数分布を算出する。
[0216] 次に、全ユーザマーキング統計部 757は、集計された結果を、登録されている全ュ 一ザの総マーキング時間ある!/、は総マーキングパケット数で正規化する(ステップ S 7 0)。正規化した結果は、コミュニティ特化部 758および推薦シーン作成部 759に出 力される。
[0217] 次に、コミュニティ特化部 758は、類似したマーキング情報を有するユーザで構成さ れるコミュニティグループ内における正規化されたマーキング集計結果(マーキング 度数)から、全ユーザグループ内における正規化されたマーキング集計結果(マーキ ング度数)を減算する。そして、推薦シーン作成部 759は、減算結果を閾値判定し、 閾値よりもマーキング度数の高!/、番組の番組識別情報と、閾値よりもマーキング度数 の高いシーンの開始時刻及び終了時刻を表す推薦シーン情報とを抽出して推薦番 組情報を作成する(ステップ S71)。開始時刻は、マーキング度数が閾値を上回った 時間位置であり、終了時刻は、マーキング度数が閾値を下回った時間位置である。 抽出された全推薦シーンの開始時刻及び終了時刻は、対応する番組識別情報と対 応付けられて、推薦番組情報として推薦送信部 760に出力される。
[0218] 次に、推薦シーン作成部 759は、全ユーザマーキング統計部 757によって作成さ れた全ユーザグループ内における正規化されたマーキング集計結果を閾値判定し、 閾値よりもマーキング度数の高!/、番組の番組識別情報と、閾値よりもマーキング度数 の高いシーンの開始時刻及び終了時刻を表す人気シーン情報とを抽出して人気番 組情報を作成する(ステップ S72)。抽出された全人気シーンの開始時刻及び終了 時刻は、対応する番組識別情報と対応付けられて、人気番組情報として推薦送信部 760に出力される。
[0219] 次に、推薦送信部 760は、推薦シーン作成部 759によって作成された推薦番組情 報と人気番組情報とを推薦情報として、番組視聴端末 5に送信する (ステップ S73)。
[0220] 図 15において、次に、番組視聴端末 5の推薦受信部 728は、番組推薦サーバ 6に よって送信された推薦番組情報及び人気番組情報を含む推薦情報を受信する (ステ ップ S81)。
[0221] 次に、推薦番組情報抽出部 729は、推薦受信部 728によって受信された推薦情報 力も推薦番組情報が抽出されたか否力、を判断する (ステップ S82)。推薦番組情報抽 出部 729は、ユーザに推薦番組情報及び人気番組情報のうちの!/、ずれかの選択を 促す。キー 720を用いて推薦番組情報が選択された場合、推薦番組情報抽出部 72 9は推薦番組情報を抽出し、人気番組情報が選択された場合、推薦番組情報抽出 部 729は人気番組情報を抽出する。なお、推薦番組情報及び人気番組情報の両方 を抽出する設定を設けても力、まわない。これによつて、ユーザに対してより多くの選択 肢を提供すること力 Sできる。
[0222] 推薦番組情報が抽出されたと判断された場合 (ステップ S82で YES)、番組記録判 定部 730は、推薦番組情報抽出部 729によって抽出された推薦番組情報に含まれ る推薦シーン情報に付随する推薦シーンに対応した番組識別情報に基づいて、推 薦シーンを含む番組が記録媒体 715に記録済みであるか否かを判断する(ステップ S83)。なお、ステップ S83では、番組の記録だけではなぐ推薦シーンの開始時刻 及び終了時刻に基づいて推薦シーン自体が記録媒体 715に記録されるか否力、を判 断するほうが好適である。ここで、推薦シーンを含む番組、あるいは推薦シーンその ものが記録媒体 715に記録されていないと判断された場合 (ステップ S83で NO)、ス テツプ S88の処理に移行する。
[0223] 一方、推薦シーンを含む番組、あるいは推薦シーンそのものが記録媒体 715に記 録済みであると判断された場合 (ステップ S83で YES)、特定シーン抽出部 733は、 推薦番組をモニタ 711に表示する(ステップ S84)。このとき、特定シーン抽出部 733 は、番組の名称と同時に、推薦シーンの開始時刻及び終了時刻、推薦シーンの時 間的長さ、及び推薦シーン内のキヤプチャ画像又は映像を表示するとよい。
[0224] また、番組推薦サーバ 6において、推薦シーン作成部 759によって作成された各推 薦シーンの度数分布に従って、推薦シーン毎の度数分布を積分した値、あるいは度 数分布のピーク度数に基づいて推薦シーン毎に優先度を付与して番組視聴端末 5 に送信してもよい。この場合、特定シーン抽出部 733は、推薦シーンの表示を行う場 合、優先度に比例したテキストの大きさ、又はキヤプチヤの大きさで推薦シーンを表 示するとなお良い。これによつて、ユーザは一目で番組シーンの優先度を判断できる
[0225] ステップ S84において推薦シーンをモニタ 711に表示したら、特定シーン抽出部 7 33は、ユーザによる推薦シーンの選択及び再生指示が発行されたか否かを判断す る(ステップ S85)。ここで、推薦シーンの再生指示が発行されていないと判断された 場合(ステップ S85で NO)、ステップ S88の処理へ移行する。一方、推薦シーンの再 生指示が発行されたと判断された場合 (ステップ S85で YES)、特定シーン抽出部 7 33は、推薦番組情報から、ユーザにより選択された番組の番組識別情報と推薦シー ンの開始時刻とを抽出する。そして、再生制御部 716は、記録媒体 715から、特定シ ーン抽出部 733によって抽出された番組識別情報に対応した番組情報を読み出し て、特定シーン抽出部 733によって抽出された開始時刻から推薦シーンの再生を行 う(ステップ S86)。
[0226] 次に、特定シーン抽出部 733は、推薦シーンの再生処理が終了したか否かを判断 する(ステップ S87)。推薦シーンの再生処理が終了して!/、な!/、と判断された場合 (ス テツプ S87で NO)、特定シーン抽出部 733は、推薦シーンの再生処理が終了するま で待機する。 [0227] 一方、推薦シーンの再生処理が終了したと判断された場合 (ステップ S87で YES) 、特定シーン抽出部 733は、番組推薦サーバ 6によって送信された推薦番組情報に 含まれる全ての推薦シーン情報の再生処理が終了したか否力、を判断する (ステップ S 88)。全ての推薦シーン情報の再生処理が終了して!/、な!/、と判断された場合 (ステツ プ S88で NO)、ステップ S83の処理に戻り、残りの推薦シーン情報についての処理 が行われる。一方、全ての推薦シーン情報の再生処理が終了したと判断された場合 (ステップ S88で YES)、全ての処理を終了する。
[0228] 一方、推薦番組情報が抽出されていないと判断された場合、すなわち、人気番組 情報が抽出されたと判断された場合 (ステップ S82で NO)、番組記録判定部 730は 、推薦番組情報抽出部 729によって抽出された人気番組情報に含まれる人気シー ン情報に付随する人気シーンに対応した番組識別情報に基づレ、て、人気シーンを 含む番組が記録媒体 715に記録済みであるか否かを判断する(ステップ S89)。なお 、ステップ S89では、番組の記録だけではなぐ人気シーンの開始時刻及び終了時 刻に基づいて人気シーン自体が記録媒体 715に記録されるか否かを判断するほうが 好適である。ここで、人気シーンを含む番組、あるいは人気シーンそのものが記録媒 体 715に記録済みでないと判断された場合(ステップ S89で NO)、ステップ S94の処 理に移行する。
[0229] 一方、人気シーンを含む番組、あるいは人気シーンそのものが記録媒体 715に記 録済みであると判断された場合 (ステップ S89で YES)、特定シーン抽出部 733は、 人気番組をモニタ 711に表示する(ステップ S90)。このとき、特定シーン抽出部 733 は、番組の名称と同時に、人気シーンの開始時刻及び終了時刻、人気シーンの時 間的長さ、及び人気シーン内のキヤプチャ画像又は映像を表示するとよい。
[0230] また、番組推薦サーバ 6において、推薦シーン作成部 759によって作成された各人 気シーンの度数分布に従って、人気シーン毎の度数分布を積分した値、あるいは度 数分布のピーク度数に基づいて人気シーン毎に優先度を付与して番組視聴端末 5 に送信してもよい。この場合、特定シーン抽出部 733は、人気シーンの表示を行う場 合、優先度に比例したテキストの大きさ、又はキヤプチヤの大きさで人気シーンを表 示するとなお良い。これによつて、ユーザは一目で番組シーンの優先度を判断できる [0231] ステップ S90において人気シーンをモニタ 711に表示したら、特定シーン抽出部 7 33は、ユーザによる人気シーンの選択及び再生指示が発行されたか否かを判断す る(ステップ S91)。ここで、人気シーンの再生指示が発行されていないと判断された 場合(ステップ S91で NO)、ステップ S94の処理へ移行する。一方、人気シーンの再 生指示が発行されたと判断された場合 (ステップ S91で YES)、特定シーン抽出部 7 33は、人気番組情報から、ユーザにより選択された番組の番組識別情報と人気シー ンの開始時刻とを抽出する。そして、再生制御部 716は、記録媒体 715から、特定シ ーン抽出部 733によって抽出された番組識別情報に対応した番組情報を読み出し て、特定シーン抽出部 733によって抽出された開始時刻から人気シーンの再生を行 う(ステップ S 92)。
[0232] 次に、特定シーン抽出部 733は、人気シーンの再生処理が終了したか否かを判断 する(ステップ S93)。人気シーンの再生処理が終了して!/、な!/、と判断された場合 (ス テツプ S93で NO)、特定シーン抽出部 733は、人気シーンの再生処理が終了するま で待機する。
[0233] 一方、人気シーンの再生処理が終了したと判断された場合(ステップ S93で YES) 、特定シーン抽出部 733は、番組推薦サーバ 6によって送信された人気番組情報に 含まれる全ての人気シーン情報の再生処理が終了したか否かを判断する (ステップ S 94)。全ての人気シーン情報の再生処理が終了して!/、な!/、と判断された場合 (ステツ プ S94で NO)、ステップ S89の処理に戻り、残りの人気シーン情報についての処理 が行われる。一方、全ての人気シーン情報の再生処理が終了したと判断された場合 (ステップ S 94で YES)、全ての処理を終了する。
[0234] なお、ステップ S83において、番組記録判定部 730は、推薦シーンを含む番組が 記録されて!/、るかの判断に加え、推薦シーンを含む番組ある!/、は推薦シーンが既に 当該ユーザによって再生されたと判断した場合には、その推薦シーンの再生を行わ ず、次の推薦シーンの再生へと移行してもよい。これには、記録媒体 715に記録され ている番組に対して再生された部分には、再生したユーザのユーザ情報とともに既 再生フラグを時間軸に対応させて付与する。これにより、ユーザ毎に番組内のどのシ ーンを閲覧したかの判定が可能となるので、推薦シーンが既に再生されて!/、る場合 は、ステップ S84で推薦シーンを表示させなくしても良い。
[0235] 以上、説明したように本番組推薦システムを利用すれば、ユーザが番組の嗜好シ ーンに直接マーキングを施し、ユーザ毎の嗜好シーンを番組推薦サーバ 6で管理し 、類似したマーキング情報を持ったユーザをグルーピングし、当該グループの中でマ 一キング度数を生成して、このマーキング度数を基にして、ユーザにその他の嗜好に 関するシーンを推薦できる。よって、ユーザは、番組自体を紹介されるときよりも、必 要最低限のシーンのみを効率的に視聴することが可能となる。また、人気番組などの ほぼ全てのユーザがマーキングしてしまう番組があつたとしても、グループ内の推薦 番組情報を生成するときにユーザ全体の視聴傾向を削除して、真にグループ内のュ 一ザに特化した番組内のシーンの推薦を可能とする。
[0236] 次に、第 2の実施形態における番組推薦システムの応用例について説明する。図 1 6は、マーキング送信部 727とマーキング受信部 750との間で送受信されるマーキン グ情報のデータ構造の一例を示す図である。図 16に示すマーキング情報は、ユー ザ情報 "A "で特定されるユーザ力 S、番組 ID'T'で特定される番組を、番組開始から 7 分間マーキングしたときのデータ構造である。番組視聴端末 5は、ユーザ情報" A"と 、番組 ID"1 "と、番組を開始から 7分間マーキングしたことを表す時間情報とを含む マーキング情報を番組推薦サーバ 6に送信する。
[0237] 図 17は、マーキング DB755に記憶されている番組推薦サーバ 6の登録ユーザごと のマーキング情報のデータ構造の一例を示す図である。今、ユーザ ID"A "及び番組 ID'T'を含むマーキング情報が送付されてきたので、ユーザ ID"A"がユーザ属性 D B752に登録されているか否かがユーザ管理部 751によって確認される。ユーザ ID" A"が登録されている場合、受信した図 16に示すマーキング情報がマーキング DB7 55に登録される。これにより、図 16に示すように、ユーザ ID"A"に関するマーキング 情報 1001がマーキング DB755に追加される。
[0238] 本例では、ユーザ ID"A"以外に予めユーザ ID"B"、 "C"、 "D"が番組 ID"1"に対 して対応付けられている。マーキング情報 1002は、ユーザ ID"B"と、番組 ID'T'と、 番組を 2〜8分までマーキングしたことを表す時間情報とを含み、マーキング情報 10 03は、ユーザ ID"C"と、番組 ID"1 "と、番組を 5〜12分までマーキングしたことを表 す時間情報とを含み、マーキング情報 1004は、ユーザ ID"C"と、番組 ID'T'と、番 組を 1〜8分までと 16〜25分までの 2回マーキングしたことを表す時間情報とを含む
[0239] コミュニティマーキング統計部 756は、このように受信したマーキング情報と同じ番 糸且へマーキングを^^つているユーザを抽出し、グルーピングのための各マーキング情 報の類似度の判定を行う。
[0240] 図 18は、図 17で示したマーキング情報を時間軸で示したタイミングチャートである 。ユーザ" A"の番組" 1 "におけるマーキング時間 1101は、番組の開始位置から 7分 後までの 7分間である。マーキング DB755に記憶されているユーザ "B"の番組" 1" におけるマーキング時間 1102は、番組開始位置の 2分後から 9分後までの 7分間で ある。よって、ユーザ "A"のマーキング時間 1101と、ユーザ" B"のマーキング時間 1 102とは互いに 50%以上の重なりを有し、ユーザ "A"とユーザ" B"とは同じグループ にグループ化される。
[0241] また、マーキング DB755に記憶されているユーザ" C"の番組 "1 "におけるマーキン グ時間 1103は、番組開始位置の 5分後から 12分後までの 7分間である。よって、ュ 一ザ "A"のマーキング時間 1101と、ユーザ" C"のマーキング時間 1103とは互いに 50%以上の重なりを有さず、ユーザ "A"のグループにユーザ" C"をグループ化しな い。
[0242] さらに、マーキング DB755に記憶されているユーザ" D"の番組 "1 "におけるマーキ ング時間 1104は、番組開始位置の 1分後から 8分後までの 7分間であり、マーキング 時間 1105は、番組開始位置の 16分後から 25分後までの 7分間である。よって、ュ 一ザ "A"のマーキング時間 1101と、ユーザ" D"のマーキング時間 1104とは 50%以 上の重なりを有し、ユーザ "A"のグループにユーザ" D"をグループ化する。
[0243] 以上のように、コミュニティマーキング統計部 756は、マーキング受信部 750によつ て受信されたマーキング情報を基準として、当該マーキング情報に類似するマーキ ング情報を有するユーザを、マーキング DB755に登録されているマーキング情報の 中から抽出してグループ化する。 [0244] 図 19は、番組 ID'T'以外の番組 IDを含むマーキング情報が記憶されるマーキング DB755のデータ構造の一例を示す図である。図 19に示すマーキング DB755のデ ータ構造は、上述のようにユーザ "A "のマーキング情報と類似のマーキング情報を 持っていてグループ化されたユーザ "B"及びユーザ" D"のマーキング情報に加え、 ユーザ" Z"のマーキング情報を記憶しており、番組 ID" 1"以外の番組 IDを含むマー キング情報を記憶している。
[0245] ユーザ ID"A"には、番組 ID'T'以外に、番組 ID"2"及び番組 ID"4"が対応付けら れている。マーキング情報 1201は、ユーザ ID"A "と、番組 ID"2"と、番組を 0〜40 分までマーキングしたことを表す時間情報とを含み、マーキング情報 1202は、ユー ザ ID"A"と、番組 ID"4"と、番組を 30〜70分及び 90〜; 110分までマーキングしたこ とを表す時間情報とを含む。
[0246] ユーザ ID"B"には、番組 ID"1 "以外に、番組 ID"2"、番組 ID"3"及び番組 ID"4" が対応付けられている。マーキング情報 1203は、ユーザ ID"B"と、番組 ID"2"と、番 組を 10〜50分までマーキングしたことを表す時間情報とを含み、マーキング情報 12 04は、ユーザ ID"B"と、番組 ID"3"と、番組を 10〜50分までマーキングしたことを表 す時間情報とを含み、マーキング情報 1205は、ユーザ ID"B"と、番組 ID"4"と、番 組を 30〜70分までマーキングしたことを表す時間情報とを含む。
[0247] ユーザ ID"Z"
には、番組 ID'T'以外に、番組 ID"3"及び番組 ID"4"が対応付けられている。マー キング情報 1206は、ユーザ ID"Z"と、番組 ID"3"と、番組を 10〜50分までマーキン グしたことを表す時間情報とを含み、マーキング情報 1207は、ユーザ ID"Z "と、番組 ID"4"と、番組を 20〜60分までマーキングしたことを表す時間情報とを含む。
[0248] ユーザ ID"D"には、番組 ID"1"以外に、番組 ID"2"、番組 ID"3"及び番組 ID"4" が対応付けられている。マーキング情報 1208は、ユーザ ID"D"と、番組 ID"2"と、 番組を 20〜40分までマーキングしたことを表す時間情報とを含み、マーキング情報 1209は、ユーザ ID"D"と、番組 ID"3"と、番組を 20〜30分までマーキングしたこと を表す時間情報とを含み、マーキング情報 1210は、ユーザ ID"D"と、番組 ID"4"と 、番組を 40〜 50分及び 100〜 120分までマーキングしたことを表す時間情報とを含 む。
[0249] 次に、本グループ内のマーキング情報の集計方法について説明する。図 20は、本 番組推薦システムの番組推薦サーバ 6のコミュニティマーキング統計部 756でのダル ープ内のマーキング情報の集計方法を説明するための概念図である。図 20の横軸 方向において、先頭の 0〜60分までが番組 ID"2"の再生時間、ついで 0〜60分まで が番組 ID"3"の再生時間、ついで 0〜120分までが番組 ID"4"の再生時間を表して いる。
[0250] 図 20に示すマーキング時間 1301 , 1302, 1303は、ユーザ "A"のマーキング時 間を示している。マーキング時間 1301は、図 19のマーキング情報 1201で示す番組 "2"の番組開始から 40分後までの 40分間である。マーキング時間 1302は、図 19の マーキング情報 1202で示す番組" 4"の番組開始位置の 30分後から 70分後までの 40分間である。マーキング時間 1303は、図 19のマーキング情報 1202で示す番組" 4"の番組開始位置の 90分後から 110分後までの 20分間である。
[0251] 図 20に示すマーキング時間 1304, 1305, 1306は、ユーザ" B"のマーキング時間 を示している。マーキング時間 1304は、図 19のマーキング情報 1203で示す番組" 2 "の番組開始位置の 10分後から 50分後までの 40分間である。マーキング時間 1305 は、図 19のマーキング情報 1204で示す番組" 3"の番組開始位置の 10分後力も 50 分後までの 40分間である。マーキング時間 1306は、図 19のマーキング情報 1205 で示す番組" 4"の番組開始位置の 30分後から 70分後までの 40分間である。
[0252] 図 20に示すマーキング時間 1307, 1308は、ユーザ "Z"のマーキング時間を示し ている。マーキング時間 1307は、図 19のマーキング情報 1206で示す番組" 3"の番 組開始位置の 10分後から 50分後までの 40分間である。マーキング時間 1308は、 図 19のマーキング情報 1207で示す番組" 4"の番組開始位置の 20分後から 60分後 までの 40分間である。
[0253] 図 20ίこ示すマーキング日寺 f^l309, 1310, 1311 , 1312 (ま、ユーザ" D,,のマーキ ング時間を示している。マーキング時間 1309は、図 19のマーキング情報 1208で示 す番組" 2"の番組開始位置の 20分後から 40分後までの 20分間である。マーキング 時間 1310は、図 19のマーキング情報 1209で示す番組" 3"の番組開始位置の 20 分後から 30分後までの 10分間である。マーキング時間 1311は、図 19のマーキング 情報 1210で示す番組" 4"の番組開始位置の 40分後から 50分後までの 10分間であ る。マーキング時間 1312は、図 19のマーキング情報 1210で示す番組" 4"の番組開 始位置の 100分後から 120分後までの 20分間である。
[0254] 図 20のマーキング度数分布は、コミュニティグループの番組" 2"、 "3"および" 4"の マーキング情報の統計結果を示している。本実施形態における統計処理は、単位時 間(本例では 10分)で、ユーザ毎のマーキング数をカウントして度数分布を形成する ように集計される。また、この度数分布は、コミュニティグループ内のユーザの総マー キング時間で正規化された後、全ユーザグループの正規化したマーキング統計結果 を減算して、コミュニティグループに特化したマーキング度数分布が生成される。本 例では、番組" 2"、 "3"および" 4"での正規化統計結果は、どの単位時間でも限りな ぐ 0"に近い分布として算出された例であるので、全ユーザグループの統計結果を減 算しても、コミュニティグループ内のマーキング度数分布とほぼ変わらない。
[0255] 次に、推薦シーン作成部 759によって、コミュニティグループ内の正規化されたマ 一キング度数分布に基づいて、予め定められた閾値 1316を用いて閾値判定するこ とにより推薦シーンが作成される。
[0256] 本例では、閾値 1316を上回った番組" 2"の 20〜40分の番組シーン 1313、番組" 3"の 20〜30分の番組シーン 1314および番組" 4"の 30〜50分の番組シーンが推 薦シーンとして作成される。そして、推薦シーンを特定するための時間情報と、推薦 シーンを含む番組を識別するための番組識別情報とを含む推薦情報が番組視聴端 末 5に送信される。また、各番組シーンの度数分布の積分値の高い、番組シーン 13 15、番組シーン 1313及び番組シーン 1314の順で、優先度が付与される。
[0257] 番組視聴端末 5の推薦受信部 728は、この推薦情報を受け取り、番組記録判定部 730は、各推薦シーンが記録媒体 715に記録済みか否力、を判定して、記録媒体 71 5に記録されていないものは推薦情報から削除する。また、記録媒体 715は、既に該 当ユーザによって再生された推薦シーンも同じように削除して推薦シーンを表示しな い。本例では、推薦シーン 1313及び推薦シーン 1315は、既にユーザ "Α' 'によって 再生済みであるので、推薦シーン 1313及び推薦シーン 1315はユーザ "Α"には推 薦されない。
[0258] 本応用例により、番組推薦システムによって、ユーザ "A"が未視聴であって、かつ 他のユーザの視聴結果からユーザ "A"の嗜好度の高いと想定される番組シーン 131 4をユーザ" A"に推薦することができる。
[0259] 次に、本実施形態の番組推薦システムの第 2の応用例について説明する。図 21は 、第 2の実施形態の第 2の応用例のマーキング DBのデータ構造の一例を示す図で ある。図 21では、図 19と同様に、マーキング受信部 750によって受信したユーザの 番組" 1 "に対するマーキング情報と類似したマーキング情報を持ったユーザをグノレ ープ化して、グループ内の全ユーザの番組" 1 "以外の番組のマーキング情報を示し ている。ただし、図 21に示すデータ構造は、図 19のデータ構造と比べて、ユーザ操 作の種類を示したフラグ 1400を備えるところが異なる。
[0260] マーキング DB755のデータ構造は、前述のようにフラグ 1400を有している。すな わち、番組視聴端末 5から番組推薦サーバ 6に送信されるマーキング情報には、番 組への操作の種別を表したフラグが付与される。例えば、番組 "A"の 10〜50分をマ 一キングした場合には、番組" A"を示す番組識別情報と、 10〜50分を示すマーキン グ時間情報あるいはパケット識別情報と、マーキング操作を示す識別情報とで構成さ れたマーキング情報が送信される。また、この場合、ユーザ操作は、マーキング操作 だけに限られない。再生、消去又は早送りなどの操作情報を識別するための識別情 報が付加されてもよい。
[0261] 図 21のデータ構造は、マーキング受信部 750によって受信されたユーザ "A"の番 組" 1 "へのマーキングを表すマーキング情報と類似したマーキング情報を持ったュ 一ザ" B"、 "C"及び" D"をグループ化して、グループ内で番組 "1 "以外のマーキング 情報をマーキング DB755から抽出した結果である。
[0262] ユーザ ID"A"には、番組 ID'T'以外に、番組 ID"2"が対応付けられている。マー キング情報 1401は、番組" 2"の 0〜5分、 15〜35分及び 50〜80分が早送り操作さ れ、 5〜; 15分、 35〜50分及び 80〜95分が再生操作されたというマーキング時間及 びフラグを有する。なお、図 21のフラグ 1400において、 "F"は早送り操作を表し、 "P "は再生操作を表し、 "M"はマーキング操作を表し、 "D"は消去操作を表している。 [0263] ユーザ ID"B"には、番組 ID'T'以外に、番組 ID"2"が対応付けられている。マー キング情報 1402は、番組" 2"の 30〜35分、 45〜65分及び 70〜95分が再生操作 され、 35〜45分がマーキング操作され、 65〜70分が早送り操作されたというマーキ ング時間及びフラグを有する。
[0264] ユーザ ID"C"には、番組 ID'T'以外に、番組 ID"2"が対応付けられている。マー キング情報 1403は、番組" 2"の 0〜; 10分、 20〜35分、 40〜85分及び 90〜; 125分 が再生操作され、 10〜20分、 35〜40分及び 85〜90分がマーキング操作されたと V、うマーキング時間及びフラグを有する。
[0265] ユーザ ID"D"には、番組 ID'T'以外に、番組 ID"2"が対応付けられている。マー キング情報 1404は、番組" 2"の 0〜25分、 30〜65分、 70〜85分及び 90〜; 125分 が再生操作され、 25〜30分及び 65〜70分が削除操作され、 85〜95分がマーキン グ操作されたというマーキング時間及びフラグを有する。
[0266] なお、マーキング受信部 750によって受信されたユーザ "A"のマーキング情報に類 似するマーキング情報を抽出してグループを形成する際に、マーキングの時間軸上 の重なりあるいはパケットの重なりだけで類似を判断するのではなぐ番組に対する 操作が一致しているか否かをさらに判断しても良い。すなわち、同じ番組の同一シー ンで同じ操作を行ったユーザは、ほぼ同一の嗜好を持っていると判断して、グループ 化を行っても良い。
[0267] 図 22は、図 21のようにグループ化されたマーキング情報の集計方法を説明するた めの概念図である。
[0268] 図 22に示すストリームは、番組" 2"の時間軸でのストリームを仮想的に示している。
番組開始位置 1501力、ら 25〜30分、及び 65〜70分に CM (コマーシャルメッセージ )が揷入されて放送されて!/、る。
[0269] 図 22に示すマーキング時間 1504は、図 21のマーキング情報 1401に示すユーザ "A"の番組 "1 "以外の番組である番組" 2"におけるマーキング時間を示している。マ 一キング時間 1504において、 0〜5分、 15〜35分及び 50〜80分は早送り操作が 行われ、 5〜; 15分、 35〜50分及び 80〜95分は再生操作が行われている。
[0270] 図 22に示すマーキング時間 1505は、図 21のマーキング情報 1402に示すユーザ "B"の番組" 1 "以外の番組である番組" 2"
におけるマーキング時間を示している。マーキング時間 1505において、 30〜35分、 45〜65分及び 70〜95分は再生操作が行われ、 35〜45分はマーキング操作が行 われ、 65〜70分は早送り操作が行われている。
[0271] 図 22に示すマーキング時間 1506は、図 21のマーキング情報 1403に示すユーザ "C"の番組" 1 "以外の番組である番組" 2"
におけるマーキング時間を示している。マーキング時間 1506において、 0〜10分、 2 0〜35分、 40〜85分及び 90〜; 125分 (ま再生操作力 亍ゎれ、 10〜20分、 35—40 分及び 85〜90分はマーキング操作が行われている。
[0272] 図 22に示すマーキング時間 1507は、図 21のマーキング情報 1404に示すユーザ "D"の番組" 1 "以外の番組である番組" 2"
におけるマーキング時間を示している。マーキング時間 1507において、 0〜25分、 3 0〜65分、 70〜85分及び 90〜; 125分は再生操作が行われ、 25〜30分及び 65〜 70分は削除操作が行われ、 85〜95分はマーキング操作が行われている。
[0273] 図 22のマーキング度数分布は、コミュニティグループのマーキング情報の集計結 果を示している。本実施形態における集計処理は、番組の単位時間でのマーキング 情報の示す操作情報ごとに異なるポイントを加算することによって集計する。ここでは 、例えば、消去フラグ" D"には" 2"ポイント、早送りフラグ" F"には " 1 "
ポイント、再生フラグ "P"には" + 1 "ポイント、マーキングフラグ" M"には" + 2"ポィ ントが、単位時間ごとに重み付け加算される。また、集計結果は、コミュニティグルー プ内の全ユーザの操作フラグの付与されているマーキング時間の総時間で正規化さ れる。
[0274] また、コミュニティグループを包含する番組推薦サーバ 6の全登録ユーザで構成さ れる全ユーザグループでも同様に番組" 1 "以外の番組のマーキング情報が集計され
、全ユーザの操作フラグの付与されて!/、るマーキング時間の総時間で正規化される 。そして、コミュニティグループの正規化された集計結果から全ユーザグループの正 規化された集計結果を減算することによって、コミュニティグループに特化した集計 結果が作成される。本例では、全ユーザグループでの正規化統計結果は、いずれの 単位時間でもほぼ" 0"付近となり、減算結果も減算結果前もほぼ同じ集計結果となつ ている。
[0275] また、減算された集計結果は、予め定められた閾値を用いて閾値判定することによ つて推薦シーンが生成される。本例では、 2つの閾値を用いて、番組シーンの視聴推 薦情報と、番組シーンの削除推薦情報を作成する。
[0276] 推薦シーン作成部 759は、正規化して減算された集計結果が上側の第 1の閾値 15 08を上回るマーキング時間情報を抽出して番組シーンの視聴推薦シーン 1510, 15 11 , 1512の視聴推薦情報を生成する。また、推薦シーン作成部 759は、正規化し て減算された集計結果が下側の第 2の閾値 1509を下回るマーキング時間情報を抽 出して番組シーンの削除推薦シーン 1513, 1514の削除推薦情報を生成する。
[0277] このように作成した視聴推薦情報と削除推薦情報とは、それぞれの番組の番組識 別情報と各番組シーンの開始時刻及び終了時刻とを含めて推薦情報として、推薦送 信部 760によって番組視聴端末 5に送信される。
[0278] 送信された推薦情報は、番組視聴端末 5の推薦受信部 728によって受信され、推 薦情報に含まれる番組識別情報に基づいて、番組が記録媒体 715に記録されてい るか否かの判定が行われる。記録されていると判定された場合、さらに各番組の番組 シーンが記録されているか否かの判定が各番組シーンの開始時刻及び終了時刻に 基づいて、番組記録判定部 730によって行われる。また、番組記録判定部 730は、 番組シーンが記録済みであると判定され、且つその番組シーンが削除推薦シーンで あった場合には、 自動的に当該番組シーンを削除する。また、番組記録判定部 730 は、番組シーンが記録済みであると判定され、且つその番組シーンが視聴推薦シー ンであった場合には、その番組シーンの開始時刻に基づいて番組情報を抽出し、サ ムネイルを作成してモニタ 711に表示し、ユーザへの視聴を促す。
[0279] よって本例においては、番組" 2"が CMであるときに、 CM位置で各ユーザが早送り したり、削除したりするので、削除推薦シーンとして番組内における CM部分が選択さ れることとなる。
[0280] なお、番組視聴端末 5は、番組シーンの削除推薦情報を受信して、当該番組シー ンを削除した場合、削除が開始された番組内の時間位置と削除が終了した番組内の 時間位置とをつなぎ合わせることが望ましレ、。
[0281] 以上のように、本応用例では、ユーザ操作の種類に応じた重み付け加算によって 各ユーザのマーキング情報を集計することによって、番組シーンの視聴推薦だけで はなぐ番組シーンの削除推薦や早送り推薦などが可能となるとともに、応用例を適 用しない本実施形態よりも精度の高い番組推薦を行うことができる。
[0282] (第 3の実施形態)
次に、本発明の第 3の実施形態について説明する。図 23は、第 3の実施形態の番 組推薦システムの概略構成を示す概念図である。
[0283] 第 3の実施形態において、放送波あるいは IP網を利用して配信される番組は、番 組内の 1画面 1600が複数のクラスタ 160;!〜 1604に分割されている。そして、各クラ スタ 1601〜; 1604は、レーザポインタやマウスなどのポインティングデバイス 1605に よって選択可能に放送される。また、クラスタ 1602〜; 1604は、番組内の例えば俳優 や商品など 1つのオブジェクトを包含する形で放送されている。また、これらの各クラ スタの座標情報は、番組情報に多重化されている。なお、座標情報は、番組の放送 と同期して、クラスタの座標情報を提供するクラスタ情報提供サーバからネットワーク 1 0を利用して番組視聴端末 8に配信される形態でも力、まわない。このときは、番組視 聴端末 8が、受信中の放送の番組識別情報を、図示しないクラスタ情報提供サーバ に送信して、送信した番組識別情報に対応したクラスタ情報を受信する。
[0284] ユーザは、ポインティングデバイス 1605を用いて、画面に表示されるオブジェクトの 中から嗜好のオブジェクトを選択する。例えばポインティングデバイスとしてレーザポ インタを用いる場合は、番組視聴端末 8に接続されたモニタの画面の表面に感光フィ ルムを付着させて、レーザの照射された座標情報を抽出する。マウスの場合は、画面 上に矢印などのマーカーを表示して、ユーザがクリックした場所の座標情報を抽出す る。番組に多重化されたクラスタ情報は、クラスタ ID記憶部 1606に記録されている。 番組視聴端末 8は、ポインティングデバイス 1605で選択された座標情報に基づ!/、て 、その座標情報がどのクラスタに属するかを判定して、多重化されたクラスタ情報に 基づいてクラスタ識別情報を獲得して、クラスタ識別情報を、汎用のネットワーク 10に よって接続される番組推薦サーバ 9に送信する。 [0285] 番組推薦サーバ 9は、受信したクラスタ識別情報から、同一のクラスタ識別情報をも つたユーザを自身のもつクラスタ DBから抽出して、グループ化する。また、番組推薦 サーバ 9は、グループ化したユーザに対応付けられて!/、るその他の選択されたクラス タ識別情報を、グループ内の全ユーザに対して集計してランキングを形成し、ランキ ングに基づいて、推薦クラスタを生成する。そして、番組推薦サーバ 9は、推薦クラス タを番組視聴端末 8に送信する。
[0286] 番組視聴端末 8のクラスタ検索部 1608は、推薦されたクラスタ識別情報に基づい て、そのクラスタを含む番組を記録媒体 (録画手段) 1607から検索して、お勧めクラ スタとして選択画面 1609に表示して、ユーザからの選択を促す。お勧めクラスタが選 択されるとお勧めクラスタを含む番組の所定の再生時間位置から番組の再生が行わ れる。また、お勧めクラスタは、お勧めの優先度に基づいた表示形態、例えば、サム ネイルの大きさを変える、色を変える等して表示してもよい。図 23では、お勧めクラス タを選択したユーザの数に応じてサムネイルの大きさが変化されて表示されている。
[0287] 次に、第 3の実施形態の番組推薦システムの構成について説明する。図 24は、第
3の実施形態の番組視聴端末の構成を示すブロック図であり、図 25は、第 3の実施 形態の番組推薦サーバの構成を示すブロック図である。第 3の実施形態の番組推薦 システムは、例えば番組録画装置などの番組視聴端末 8と、複数の番組視聴端末 8 とインターネットなどの汎用のネットワーク 10を介して互いに通信可能に接続される 番組推薦サーバ 9とで構成される。なお、第 3の実施形態の番組推薦システムの構成 は、図 2に示す番組推薦システムの構成と同じである。本来、番組推薦サーバ 9には 、複数の番組視聴端末 8が接続される力 説明の簡易化のために 1台の番組視聴端 末 8が接続された形態について説明する。
[0288] 番組視聴端末 8は、放送波又は IP網から番組を受信して、番組を視聴したり、番組 を録画したり、録画した番組を再生したり、録画した番組を消去したり、番組の録画予 約をしたりする。番組視聴端末 8は、アンテナ 1701、チューナ 1702、 TSデコーダ 17 03、 CAS1704,喑号解除部 1705、デマルチプレクサ 1706、 MPEG Videoデコ ーダ 1707、 MPEG Audioデコーダ 1708、 HDMI端子 1709、記録用暗号化部 1 713、記録制御部 1714、記録媒体 1715、再生制御部 1716、記録用復号化部 171 7、 PSI抽出部 1718、 EPG記憶部 1719、ポインタ受光部 1720、座標抽出部 1721 、クラスタ識別情報抽出部 1722、クラスタ記憶部 1723、キー 1724、ユーザ識別部 1 725、ユーザ情報 DB1726、クラスタ送信部 1727、推薦受信部 1728、推薦番組情 報抽出部 1729、クラスタ検索部 1730、推薦再生制御部 1732及び拡大制御部 173 3から構成される。
[0289] また、番組推薦サーバ 9は、クラスタ受信部 1750、ユーザ管理部 1751、ユーザ属 性 DB1752、クラスタ登録部 1754、クラスタ再生時間管理部 1755、クラスタ DB175 6、コミュニティクラスタ統計部 1757、全ユーザクラスタ統計部 1758、コミュニティ特 化部 1759、推薦クラスタ作成部 1760及び推薦送信部 1761から構成される。
[0290] チューナ 1702は、例えば地上波デジタル放送や BSデジタル放送などの放送波か ら所定チャンネルの放送波を受信して、放送波を TSデコーダ 1703に出力する。 TS デコーダ 1703は、受信した一般的なトランスポート 'ストリーム形式の放送波を復調し て暗号解除部 1705に出力する。
[0291] CAS 1704は、一般的な Conditional Access Systemで、ユーザの登録情報 及び番組の暗号鍵の記録された ICカードから暗号鍵情報を読み出し、暗号解除部 1 705に出力する。
[0292] 喑号解除部 1705は、 TSデコーダ 1703によって復調された、喑号化された放送信 号を、 CAS1704からの暗号鍵をもとに復号化し、暗号化された番組情報の暗号を 解除してデマルチプレクサ 1706に出力する。
[0293] デマルチプレクサ 1706は、番組情報として多重化されている情報を分離する。番 組情報には、少なくともビデオ情報、オーディオ情報及び番組管理情報が多重化さ れ、これらを分離後、ビデオ情報を MPEG Videoデコーダ 1707へ、オーディオ情 報を MPEG Audioデコーダ 1708へ、番組管理情報を PSI抽出部 1718へ出力す
[0294] MPEG Videoデコーダ 1707は、デマルチプレクサ 1706からのビデオ情報を復 調して映像データに変換し、 HDMI端子 1709に出力する。 MPEG Audioデコー ダ 1708は、デマルチプレクサ 1706からのオーディオ情報を復調してオーディオデ ータに変換し、 HDMI端子 1709に出力する。 HDMI端子 1709は、 HDMIケープ ルを介して外部の HDMI端子 1710と接続されており、 HDMI端子 1710は、モニタ 1711及びスピーカ 1712と接続されて!/、る。
[0295] HDMI端子 1709, 1710は、一般的な映像情報、音声情報用の HDMIインタフエ ースであり、番組視聴端末 8とモニタ 1711及びスピーカ 1712とを互いに相互認証す るとともに、暗号鍵の共通化を行い、共通化した暗号鍵で、映像データや音声データ を暗号化して、モニタ 1711やスピーカ 1712に出力する。
[0296] モニタ 1711は、一般的な番組の映像情報の表示装置であって、 HDMI端子 171 0で受信した暗号化された映像データを復号して番組の映像データを出力する。スピ 一力 1712は、一般的な番組の音声情報の出力装置であって、 HDMI端子 1710で 受信した暗号化された映像データを復号して番組の音声データを出力する。
[0297] 記録用暗号化部 1713は、受信した番組情報を記録媒体に記録するための喑号処 理を施す。記録用暗号化部 1713は、デマルチプレクサ 1706から入力された番組情 報を暗号化して記録制御部 1714に出力する。従って、記録用暗号化部 1713は、番 組情報を記録する記録媒体に特有の暗号化処理を行う。例えば、 DVD— RAMで (ま CPRM (Content Protection for Rewritable Media)、 Blu— rayアイスク や HD— DVDでは、 AACS (Advanced Access Content System)が用いられ
[0298] 記録制御部 1714は、記録用暗号化部 1713によって暗号化された番組情報を記 録媒体 1715への記録を制御する。記録制御部 1714は、記録媒体特有の変調処理 や誤り訂正符号化処理を行うことによって記録媒体に番組情報を記録する。
[0299] 記録媒体 1715は、番組情報を記録するコンピュータ読み取り可能な記録媒体であ つて、例えば、ハードディスクのような磁気記録ディスクや DVD、 Blu— rayディスクな どの光ディスク、 SDカードのような半導体メモリ、及び MO/MDのような光磁気記録 媒体が用いられる。
[0300] 再生制御部 1716は、記録媒体 1715から記録媒体に記録されて!/、る番組情報を 読み出す。なお、記録制御部 1714、記録媒体 1715及び再生制御部 1716は、ドラ イブシステムとして構成されるのが一般的である。
[0301] 記録用復号化部 1717は、記録用暗号化部 1713の暗号化に対応する復号を行う 。記録用復号化部 1717は、暗号化して記録媒体 1715に記録された番組情報の喑 号を復号化して TSデコーダ 1703に出力する。なお、 TSデコーダ 1703に出力され た番組情報の再生処理は、上述のアンテナ 1701で受信した番組の再生処理と同様 である。
[0302] PSI抽出部 1718は、デマルチプレクサ 1706で抽出した番組管理情報から PSI (P rogram Specific Information)を抽出する。 PSIの中には、主に、 PMT (Progra m Map Table)、 EIT (Event Information Tableノゃ TOT (Time Offset T able)などの情報が含まれる。
[0303] PMTは、番組に含まれる画像や音声などの各パケット識別情報を格納して!/、る。よ つて、 PMTから画像や音声などのパケット識別情報を得ることが出来れば、それらパ ケット識別情報のついたパケットを抽出することでプログラムを再生できる。
[0304] EITは、番組の名称、放送日時及び放送内容などの番組に関連する情報が含まれ る。 EPG (Electronic Program Guide)は主にこの情報を用いて作成される。
[0305] EPG記憶部 1719は、 PSI抽出部 1718で抽出した PSI中の EITを用いて EPG情 報を作成して、記憶する。ポインタ受光部 1720は、例えばポインティングデバイスが レーザポインタで構成される場合に、レーザポインタで指示された位置を抽出する。 なお、ポインティングデバイスがマウスで構成されるときには、このポインタ受光部 17 20は必要ない。
[0306] 座標抽出部 1721は、ポインタ受光部 1720でレーザポインタの照射された位置情 報を画面内の座標情報に変換する。座標抽出部 1721は、モニタ 1711の画面内の 横方向を X軸、縦方向を y軸とした 2次元座標情報を獲得する。
[0307] クラスタ識別情報抽出部 1722は、デマルチプレクサ 1706によって分離された、番 組データに多重化されていた番組管理情報からクラスタ情報を抽出する。クラスタ情 報は、番組内に定義されているクラスタのクラスタ識別情報と、クラスタ毎の座標情報 とが示されている。クラスタは、動画フレーム内の 2次元座標で指定された、ユーザに よって選択可能に分割された番組の部分情報である。例えば、フレーム内の出演俳 優などのオブジェクトを包含するようなクラスタが定義される。また、時間軸で連続した フレームに出現する同一オブジェクトは、同一のクラスタ識別情報が付与されるととも に、番組フレーム単位にオブジェクトの存在位置に同期して座標を変化させて定義さ れる。また、本実施形態におけるクラスタは、矩形状である。クラスタの座標情報は、ク ラスタの左上端部の画素に対応する座標と、右下端部の画素に対応する座標とを含 む。
[0308] また、クラスタ識別情報抽出部 1722は、ユーザによってポインティングデバイスで 選択された番組の座標情報を抽出して、座標情報と、番組に多重化されているクラス タ情報とを比較することによって、ユーザが選択したクラスタを識別して、そのクラスタ 識別情報を抽出してクラスタ記憶部 1723に出力する。
[0309] なお、クラスタ情報は、番組内に多重化されている形態について説明したがこれに 限られない。クラスタ情報は、汎用のネットワーク 10に接続されたクラスタ情報提供サ ーバなどから入手してもよい。この場合、番組視聴端末 8は、ユーザが視聴及び選択 された番組の番組識別情報をクラスタ情報提供サーバに送信して、ユーザに視聴及 び選択された番組に対応したクラスタ情報を入手する。また、ユーザによってクラスタ が選択されると、対象の番組の番組識別情報および番組の時間情報、選択されたク ラスタの座標情報をクラスタ情報提供サーバに送信して、選択されたクラスタに対応 するクラスタ情報を入手してもかまわなレ、。
[0310] クラスタ記憶部 1723は、クラスタ識別情報抽出部 1722によって抽出されたユーザ によりポインティングデバイスを用いて選択されたクラスタを識別するためのクラスタ識 別情報と、 PSI抽出部 1718によって抽出されたクラスタ選択時の番組の時間情報と 、フレームごとのクラスタの座標情報とを、当該番組の番組識別情報に対応付けて記 憶する。ユーザが複数のクラスタを選択した場合でも、クラスタ記憶部 1723は、複数 のクラスタ識別情報を記憶する。
[0311] キー 1724は、ユーザからの入力を受け付ける部分であり、リモコンやフロントパネ ルで構成される。ユーザ情報 DB1726は、番組視聴端末 8を使用する全ユーザのュ 一ザ情報の登録されているデータベースである。ユーザ識別部 1725は、キー 1724 を用いて入力されるユーザ情報と、ユーザ情報 DB1726に記憶されているユーザ情 報とに基づいて、番組視聴端末 8を使用するユーザを識別する。また、ユーザ識別部 1725は、ユーザの認証に成功すると現在使用中のユーザのユーザ情報をクラスタ 送信部 1727に出力する。
[0312] クラスタ送信部 1727は、汎用のネットワーク 10によって接続される番組推薦サーバ 9との接続を確立して、クラスタ記憶部 1723に記憶されているユーザが選択したクラ スタのクラスタ識別情報と、クラスタ選択時における番組の時間情報と、当該番組を 識別するための番組識別情報と、フレームごとのクラスタの座標情報とを、ユーザ識 別部 1725からのユーザ識別情報と対応付けて、ユーザクラスタ情報として番組推薦 サーバ 9に送信する。
[0313] 推薦受信部 1728は、汎用のネットワーク 10を介して、番組推薦サーバ 9の推薦す る番組に関する推薦情報を受信する。推薦番組情報抽出部 1729は、推薦受信部 1 728で受信した推薦情報から、推薦番組情報を抽出する。推薦番組情報は、推薦す る番組を一意に識別できる情報であり、例えば、番組識別情報や、番組の放送日時 及びチャンネル情報である。また、推薦番組情報抽出部 1729は、推薦番組情報に 付与されている推薦番組内の推薦クラスタのクラスタ識別情報と、当該推薦クラスタの 番組内の時間を示したクラスタ時間情報と、推薦クラスタの座標情報とを抽出する。
[0314] クラスタ検索部 1730は、推薦番組情報抽出部 1729によって抽出された推薦番組 の番組識別情報に基づ!/、て記録媒体 1715を検索し、当該番組が記録されて!/、るか 否かを判定する。当該番組が記録されていると判定された場合、クラスタ検索部 173 0は、番組推薦サーバ 9によって推薦された推薦クラスタのクラスタ識別情報あるいは 推薦クラスタの開始時間情報から、推薦クラスタが記録媒体 1715に記録されている か否かを判定する。推薦クラスタが記録媒体 1715記録されていると判定された場合 、クラスタ検索部 1730は、推薦再生制御部 1732に推薦クラスタ情報を出力する。
[0315] 推薦再生制御部 1732は、クラスタ検索部 1730から入力される推薦クラスタ情報に 基づいて、推薦される番組を、推薦クラスタの再生開始位置力も再生する。また、推 薦再生制御部 1732は、再生する前に、推薦クラスタの最初のフレーム画面を記録媒 体 1715から呼び出して、サムネイル表示を行い、ユーザに再生を促す。この場合、 推薦再生制御部 1732は、複数の推薦クラスタ情報から、推薦クラスタを呼び出して サムネイル画像を作成してリスト表示を行う。ユーザによってサムネイル画像が選択さ れた場合、推薦再生制御部 1732は、サムネイル画像に対応する推薦クラスタの再 生開始位置から番組を再生する。
[0316] 拡大制御部 1733は、ユーザからの設定操作に従って、番組内の推薦クラスタを拡 大して表示する。この場合、番組推薦サーバ 9からの推薦クラスタ情報に、クラスタの 座標情報が付加されており、この座標情報をもとに番組の推薦クラスタを拡大して表 示する。これによつて、ユーザは、嗜好のクラスタを拡大して再生することができる。ま た、拡大制御部 1733は、 MPEG Videoデコーダ 1707からの出力に対して、推薦 クラスタ情報が示す座標範囲を拡大して表示する。拡大制御部 1733は、推薦クラス タが画面内に最大となるように拡大する。
[0317] 次に、本実施形態の番組推薦システムにおける番組推薦サーバ 9の構成について 説明する。
[0318] クラスタ受信部 1750は、汎用のネットワーク 10に接続された複数の番組視聴端末
8のクラスタ送信部 1727から、各ユーザによって選択された番組を識別するための 番組識別情報と、番組内において選択されたクラスタを識別するためのクラスタ識別 情報と、選択を行ったユーザのユーザ情報と、クラスタ選択時における番組の時間情 報と、フレームごとのクラスタの座標情報とを含むユーザクラスタ情報を受信する。番 組識別情報は、選択を行った番組を一意に識別可能な番組識別情報、あるいは選 択された番組の番組放送日時、チャンネル情報及び放送局識別情報である。受信し たユーザクラスタ情報は、ユーザ管理部 1751に出力される。
[0319] ユーザ属性 DB1752は、登録ユーザのユーザ識別情報と、必要であれば、ユーザ 氏名、性別、住所/電話番号、番組視聴端末のメーカ/機種、接続するモニタの解 像度および番組視聴端末のネットワーク IDなどのユーザ属性情報とをユーザ登録リ ストとして管理する。ユーザは、予め番組推薦サーバ 9に、番組推薦を行うためのュ 一ザ登録処理を行う。ユーザ登録処理には、ユーザ名の設定、住所/電話番号の 通知などユーザ登録情報の通知を行った後、番組推薦サーバ 9側で、該ユーザにュ 一ザ情報を生成して通知し、ユーザ属性 DB1752で生成したユーザ情報に対応付 けて、ユーザから通知されたユーザ属性情報を記憶/管理する。
[0320] ユーザ管理部 1751は、受信したユーザ情報により特定されるユーザ力 番組推薦 サーバ 9の登録ユーザであるか否かを判定する。ユーザ管理部 1751は、ユーザ属 性 DB1752に記憶されているユーザ登録リストの中から、受信したユーザ情報に一 致するユーザ情報を検索する。受信したユーザ情報がユーザ属性 DB1752に登録 されていると判断された場合、番組推薦サーバ 9の登録ユーザであると判断して、処 理を継続する。
[0321] 一方、受信したユーザ情報がユーザ属性 DB1752に登録されていないと判断され た場合、番組推薦サーバ 9の未登録ユーザであるとして、当該ユーザの使用する番 組視聴端末 8に登録ユーザでない旨のエラーメッセージを送信して以後の処理を中 断する。エラーメッセージを受信した番組視聴端末 8は、当該エラーメッセージをモニ タ 1711に表示する。
[0322] クラスタ登録部 1754は、ユーザ管理部 1751によってユーザが番組推薦サーバ 9 の登録ユーザであると判断された場合、クラスタ受信部 1750によって受信されたュ 一ザ毎のユーザクラスタ情報を、受信したユーザ情報に対応付けて、クラスタ DB17
56に する。
[0323] また、クラスタ登録部 1754は、ユーザクラスタ情報内に含まれる選択されたクラスタ のクラスタ識別情報と、当該クラスタの番組内の時間位置情報と、当該クラスタが含ま れる番組を識別するための番組識別情報とを抽出して、クラスタ再生時間管理部 17 55に記憶する。クラスタ再生時間管理部 1755は、クラスタ識別情報と、時間位置情 報と、番組識別情報とを対応付けて記憶/管理する。なお、時間位置情報に対応付 けられた各フレーム内の当該クラスタの画面内の座標情報がユーザクラスタ情報に 含まれる場合、クラスタ再生時間管理部 1755は、クラスタ識別情報と、時間位置情 報と、座標情報とを記憶する。
[0324] コミュニティクラスタ統計部 1757は、クラスタ受信部 1750によって受信されたユー ザクラスタ情報に含まれるクラスタ識別情報と同じクラスタ識別情報を持ったユーザを 、クラスタ DB1756から選択してグループ化する。同一クラスタ識別情報を持ったュ 一ザは、クラスタ DB1756にユーザ情報に対応付けて管理されているクラスタ識別情 報をもとにグループ化される。また、コミュニティクラスタ統計部 1757は、グループ化 されたグループに属する全ユーザのクラスタ識別情報に基づいて、クラスタ受信部 1 750で受信したクラスタ識別情報の示すクラスタ以外の全てのクラスタを集計し、集計 結果を、グループ内のユーザの選択した全クラスタ数で正規化する。
[0325] 全ユーザクラスタ統計部 1758は、クラスタ受信部 1750によって受信されたクラスタ 識別情報を持った全ユーザをコミュニティグノレープとしてグノレープ化するコミュニティ クラスタ統計部 1757とは異なり、ユーザ属性 DB1752に登録されている全ユーザ、 すなわち番組推薦サーバ 9への全登録ユーザを、コミュニティグループを包含する全 ユーザグループとしてグルーピングする。
[0326] また、全ユーザクラスタ統計部 1758は、全ユーザのグルーピング後、全ユーザのク ラスタ識別情報に基づいて、クラスタ受信部 1750で受信したクラスタ識別情報の示 すクラスタ以外の全てのクラスタを集計し、集計結果を番組推薦サーバ 9の登録ユー ザの選択した全クラスタ数で正規化する。
[0327] コミュニティ特化部 1759は、コミュニティクラスタ統計部 1757によって正規化された 集計結果から、全ユーザクラスタ統計部 1758によって正規化された集計結果を減算 して、当該コミュニティグループに特化したクラスタのコミュニティグループ内の集計ラ ンキングを作成する。作成したコミュニティグループ内の集計ランキングは、推薦クラ スタ作成部 1760に出力される。
[0328] 推薦クラスタ作成部 1760は、コミュニティ特化部 1759からのコミュニティグループ 内の集計ランキングの上位クラスタ、あるいは集計ランキングの度数を閾値判定して 閾値以上の度数のあるクラスタを推薦クラスタとして抽出する。推薦クラスタ作成部 17 60は、推薦クラスタに対応するクラスタ識別情報に基づいて、クラスタ再生時間管理 部 1755から、番組内の推薦クラスタの出現時間(再生時間)を表す時間情報と、そ の時間情報に対応して 1フレーム毎の推薦クラスタの座標情報とを呼び出す。推薦ク ラスタ作成部 1760は、推薦クラスタを識別するためのクラスタ識別情報と、推薦クラス タの時間情報と、推薦クラスタの座標情報と、推薦クラスタを含む番組を識別するた めの番組識別情報とをセットとして、推薦番組情報を作成する。
[0329] また、推薦クラスタ作成部 1760は、全ユーザクラスタ統計部 1758からの全ユーザ のクラスタの正規化された集計結果を入力し、集計結果をクラスタ数の多い順番にラ ンキングしてランキング上位のクラスタ、あるいは集計結果を閾値判定して閾値以上 のクラスタ数を有するクラスタを人気クラスタとして抽出する。推薦クラスタ作成部 176 0は、人気クラスタに対応するクラスタ識別情報に基づいて、クラスタ再生時間管理部 1755から、番組内の人気クラスタの出現時間(再生時間)を表す時間情報と、その 時間情報に対応して 1フレーム毎の人気クラスタの座標情報とを呼び出す。推薦クラ スタ作成部 1760は、人気クラスタを識別するためのクラスタ識別情報と、人気クラスタ の番組内の時間情報と、人気クラスタの座標情報と、人気クラスタを含む番組を識別 するための番組識別情報とをセットとして、人気番組情報を作成する。推薦クラスタ作 成部 1760によって作成された推薦番組情報と人気番組情報とは、推薦情報として 推薦送信部 1761に出力される。
[0330] 推薦送信部 1761は、汎用のネットワーク 10で接続された番組視聴端末 8との接続 を確立して、推薦クラスタ作成部 1760で作成した推薦番組情報及び人気番組情報 を含む推薦情報を番組視聴端末 8に送信する。
[0331] 以下、本実施形態における番組推薦システムの動作について説明する。例えば、 ユーザ Aが、ユーザ Aの所有する番組視聴端末 8によって、番組 A内のクラスタを選 択する。番組視聴端末 8は、ユーザ Aを識別するためのユーザ情報と、番組 Aに多重 化されているクラスタを識別するためのクラスタ識別情報と、クラスタの出現時間情報 と、フレームごとのクラスタの座標情報と、クラスタを含む番組を識別するための番組 識別情報とをユーザクラスタ情報として番組推薦サーバ 9に送信する。
[0332] 番組推薦サーバ 9のクラスタ受信部 1750は、ユーザ Aの所有する番組視聴端末 8 から、ユーザ情報と、クラスタ識別情報と、時間情報と、座標情報と、番組識別情報と を含むユーザクラスタ情報を受信する。ユーザ管理部 1751は、受信したユーザ情報 がユーザ属性 DB1752に記憶されているか否かを判定し、記憶されていれば、ユー ザ Aが番組推薦サーバ 9の登録ユーザであるとして、処理を継続する。
[0333] クラスタ登録部 1754は、ユーザ Aを識別するためのユーザ情報に対応付けて、クラ スタ識別情報と、時間情報と、座標情報と、番組識別情報とをクラスタ DB1756に登 録する。コミュニティクラスタ統計部 1757は、受信したユーザクラスタ情報に含まれる クラスタ識別情報と同じクラスタ識別情報を持った全ユーザをクラスタ DB1756から抽 出してコミュニティグループを形成する。また、コミュニティクラスタ統計部 1757は、コ ミュニティグループ内における番組 A以外の番組に含まれるクラスタを統計的に処理 する。そして、コミュニティクラスタ統計部 1757は、コミュニティグループ内における番 組 A以外の番組に含まれるクラスタのうち、選択されたクラスタの数が多い順番にラン キングを形成し、形成したランキングをコミュニティ特化部 1759に出力する。
[0334] 全ユーザクラスタ統計部 1758は、番組推薦サーバ 9のユーザ属性 DB1752に登 録されている全ユーザをコミュニティクラスタ統計部 1757で形成したコミュニティダル ープを包含する全ユーザグループとして形成する。全ユーザクラスタ統計部 1758は 、全ユーザグループ内のユーザ情報に対応付けられてレ、るクラスタ識別情報をクラス タ DB1756から抽出して、番組 A以外の番組に含まれるクラスタを統計処理する。そ して、全ユーザクラスタ統計部 1758は、全ユーザグループ内における番組 A以外の 番組に含まれるクラスタのうち、選択されたクラスタの数が多い順番にランキングを形 成し、形成したランキングをコミュニティ特化部 1759と推薦クラスタ作成部 1760とに 出力する。
[0335] コミュニティ特化部 1759は、コミュニティクラスタ統計部 1757によって作成されたク ラスタのランキングから、全ユーザクラスタ統計部 1758によって作成されたクラスタの ランキングを減算する。これにより、コミュニティ特化部 1759は、番組 A内における所 定のクラスタを選択したユーザのコミュニティグループに特化したランキング情報を作 成して推薦クラスタ作成部 1760に出力する。
[0336] 推薦クラスタ作成部 1760は、コミュニティ特化部 1759によって作成された、コミュ二 ティグループに特化した選択クラスタのランキング情報に基づき、閾値よりもクラスタ 数の多!/、クラスタ、あるいはランキング上位の所定数のクラスタを推薦クラスタとして抽 出する。そして、推薦クラスタ作成部 1760は、推薦クラスタに対応する、クラスタ識別 情報、番組識別情報、時間情報及び座標情報を含む推薦番組情報を作成する。
[0337] また、推薦クラスタ作成部 1760は、全ユーザクラスタ統計部 1758によって作成さ れた、全登録ユーザの選択クラスタのランキング情報に基づき、閾値よりもクラスタ数 の多いクラスタ、あるいはランキング上位の所定数のクラスタを人気クラスタとして抽出 する。そして、推薦クラスタ作成部 1760は、人気クラスタに対応する、クラスタ識別情 報、番組識別情報、時間情報及び座標情報を含む人気番組情報を作成する。推薦 送信部 1761は、推薦クラスタ作成部 1760によって作成された推薦番組情報及び人 気番組情報をユーザ Aの番組視聴端末 8に送信する。
[0338] 次に、本実施形態の番組推薦システムの処理の流れについてさらに説明する。図 2 6〜29は、第 3の実施形態に係る番組推薦システムの処理の流れを示したフローチ ヤートであり、図 26は、第 3の実施形態に係る番組視聴端末におけるユーザクラスタ 情報を送信するまでの処理の流れを示すフローチャートであり、図 27は、第 3の実施 形態に係る番組推薦サーバにおける処理の流れを示すフローチャートであり、図 28 及び図 29は、第 3の実施形態に係る番組視聴端末における推薦情報を受信してか らの処理の流れを示すフローチャートである。
[0339] 図 26において、まず、ユーザ識別部 1725は、ユーザに対するユーザ認証のため のユーザ認証画面をモニタ 1711に表示し、キー 1724は、ユーザによるユーザ情報 の入力を受け付け、番組視聴端末 8へのログインを受け付ける(ステップ S101)。次 に、ユーザ識別部 1725は、ユーザ認証が成功したか否か、すなわち、入力されたュ 一ザ情報がユーザ情報 DB1726に予め登録されているユーザ情報と一致するか否 かを判断する(ステップ S 102)。
[0340] ユーザ認証の結果、ユーザ認証に失敗した場合(ステップ S 102で NO)、ユーザ識 別部 1725は、モニタ 1711にエラーメッセージを表示して以降の処理を終了する(ス テツプ S 103)。
[0341] 一方、ユーザ認証に成功した場合 (ステップ S102で YES)、再生制御部 1716は、 記録媒体 1715に記録済みの番組に対する再生指示操作があつたか否かを判断す る(ステップ S104)。ここで、再生指示操作がないと判断された場合 (ステップ S104 で NO)、再生制御部 1716は、ユーザからの録画番組の再生指示操作があるまで待 機する。
[0342] ユーザからの再生指示操作があつたと判断された場合 (ステップ S104で YES)、再 生制御部 1716は、ユーザによって選択された番組を記録媒体 1715から再生してモ ユタ 1711に出力する再生処理を実行する(ステップ S105)。再生処理中にお!/、て、 デマルチプレクサ 1706は、番組に多重化された番組管理情報を分離し、 PSI抽出 部 1718は、番組管理情報から PSIを抽出し、クラスタ識別情報抽出部 1722は、番 組管理情報からクラスタ情報を抽出する。クラスタ情報は、番組の動画フレームの単 位で、フレーム内のクラスタのクラスタ識別情報およびその座標情報を含む。
[0343] 次に、座標抽出部 1721は、再生中の番組に対してユーザがポインティングデバイ スを用いて、番組内のクラスタを選択したかを判断する(ステップ S106)。すなわち、 ポインタ受光部 1720によってレーザポインタによる光が受光された場合、座標抽出 部 1721は、番組内のクラスタが選択されたと判断する。ここで、ポインティングデバイ スによってクラスタが選択されたと判断された場合 (ステップ S106で YES)、座標抽 出部 1721は、ポインティングデバイスで選択された画面内の座標情報を抽出する( ステップ S 107)。
[0344] 座標情報を抽出した後、クラスタ識別情報抽出部 1722は、座標抽出部 1721によ つて抽出された座標情報に対応したクラスタのクラスタ識別情報を抽出する (ステップ
5108)。抽出したクラスタ識別情報は、当該クラスタの番組に多重化されている番組 内の時間情報及び座標情報とともに、当該番組の番組識別情報に対応付けてクラス タ記憶部 1723に記憶される。
[0345] クラスタ識別情報が抽出されてクラスタ記憶部 1723に記憶された後、又は、クラス タが選択されていないと判断された場合 (ステップ S106で NO)、再生制御部 1716 は、番組の再生処理を継続し、再生中の番組が終了したか否かを判断する(ステップ
5109)。ここで、再生中の番組が終了していないと判断された場合(ステップ S 109で NO)、ステップ S105の処理に戻り、再生制御部 1716は、番組の再生処理を継続し て実行する。
[0346] 一方、再生中の番組が終了したと判断された場合 (ステップ S 109で YES)、クラス タ送信部 1727は、クラスタ記憶部 1723に記憶されている、ユーザにより選択された クラスタを識別するためのクラスタ識別情報と、 PSI抽出部 1718によって抽出された クラスタ選択時の番組の時間情報と、フレームごとのクラスタの座標情報と、クラスタを 含む番組の番組識別情報と、ユーザ識別部 1725によって識別されたユーザのユー ザ情報とをユーザクラスタ情報として番組推薦サーバ 9に送信する(ステップ S110)。
[0347] 図 27において、次に、番組推薦サーバ 9のクラスタ受信部 1750は、番組視聴端末
8によって送信されたユーザクラスタ情報を受信する (ステップ S 111)。
[0348] 次に、ユーザ管理部 1751は、クラスタ受信部 1750によって受信されたユーザクラ スタ情報に含まれるユーザ情報が番組推薦サーバ 9のユーザ属性 DB1752に予め 登録されて!/、るユーザ情報と一致するか否かを判断する (ステップ S 112)。ユーザ認 証の結果、登録ユーザでないと判断された場合 (ステップ S 112で NO)、ユーザ管理 部 1751は、その旨を示すエラーメッセージを作成して、番組視聴端末 8にエラーメッ セージを送信して、以後の処理を終了する(ステップ S 113)。
[0349] 一方、ユーザ認証の結果、登録ユーザであると判断された場合 (ステップ S112で Y ES)、クラスタ登録部 1754は、クラスタ受信部 1750によって受信されたユーザクラス タ情報に含まれるクラスタ識別情報を、同じくユーザクラスタ情報に含まれるユーザ情 報に対応付けてクラスタ DB1756に登録する(ステップ S114)。また、クラスタ登録部 1754は、受信したユーザクラスタ情報に含まれるクラスタ識別情報と、そのクラスタの 番組内の時間情報と、動画フレーム毎のクラスタの座標情報とをクラスタ再生時間管 理部 1755に登録する。
[0350] ステップ S114でユーザクラスタ情報をクラスタ DB1756及びクラスタ再生時間管理 部 1755に登録した後、コミュュテイクラスタ統計部 1757は、クラスタ DB1756の中か ら、現在登録したクラスタ識別情報を持つ全ユーザを抽出して、抽出したユーザをコ ミュニティグループとしてグループ化する(ステップ S 115)。
[0351] ユーザをグループ化すると、コミュニティクラスタ統計部 1757は、グループ化した全 ユーザのユーザ情報に対応して記憶されている、クラスタ受信部 1750によって受信 されたユーザクラスタ情報の示す番組以外の番組におけるクラスタ識別情報を集計 する(ステップ S116)。なお、コミュニティクラスタ統計部 1757は、ユーザごとに記憶 されたクラスタ識別情報をカウントする。
[0352] 次に、コミュニティクラスタ統計部 1757は、コミュニティグループ内で集計した集計 結果を、コミュニティグループ内の全ユーザの全クラスタ数で正規化する(ステップ S1 17)。これによつて、クラスタごとにユーザが選択したかどうかの確率を算出することが でき、クラスタへの選択確率を示したランキング情報が生成される。
[0353] 次に、全ユーザクラスタ統計部 1758は、ユーザ属性 DB1752に登録されているュ 一ザ、すなわち番組推薦サーバ 9に登録されている全ユーザを抽出し、受信したクラ スタ識別情報と同じクラスタ識別情報を有するユーザで構成されるコミュニティグルー プを包含する全ユーザグループとしてグルーピングする(ステップ S 118)。
[0354] 次に、全ユーザクラスタ統計部 1758は、全登録ユーザのユーザ情報に対応して記 憶されている、クラスタ受信部 1750によって受信されたユーザクラスタ情報の示す番 組以外の番組におけるクラスタ識別情報を集計する(ステップ S 119)。
[0355] 次に、全ユーザクラスタ統計部 1758は、集計した全登録ユーザのクラスタ識別情 報の集計結果を、全登録ユーザの全クラスタ数で正規化する(ステップ S 120)。これ によって、全ユーザグループ内のユーザのクラスタの選択率をクラスタごとに算出した ランキングを生成することができる。
[0356] 次に、コミュニティ特化部 1759は、コミュニティグループ内における正規化されたク ラスタ識別情報の集計結果から、全ユーザグループ内における正規化されたクラスタ 識別情報の集計結果を減算して、コミュニティグループに特化したクラスタを集計す る。そして、推薦クラスタ作成部 1760は、減算結果をクラスタ数の多い順にランキン グし、ランキングの上位の所定数のクラスタを推薦クラスタとし、推薦クラスタを識別す るためのクラスタ識別情報と、推薦クラスタの番組内の時間情報と、番組の動画フレ ーム毎の推薦クラスタの座標情報と、番組を識別するための番組識別情報とを含む 推薦番組情報を作成する (ステップ S 121 )。
[0357] なお、推薦クラスタ作成部 1760は、推薦クラスタのクラスタ識別情報に対応する時 間情報及び座標情報をクラスタ再生時間管理部 1755から抽出し、推薦番組情報を 作成する。また、推薦クラスタ作成部 1760は、減算結果を閾値判定し、閾値を上回 つたクラスタを推薦クラスタとしてもよ!/、。
[0358] 次に、推薦クラスタ作成部 1760は、全ユーザクラスタ統計部 1758によって作成さ れた全ユーザグループ内における正規化されたクラスタ識別情報の集計結果をクラ スタ数の多!/、順にランキングし、ランキングの上位の所定数のクラスタを人気クラスタ とし、人気クラスタを識別するためのクラスタ識別情報と、人気クラスタの番組内の時 間情報と、番組の動画フレーム毎の人気クラスタの座標情報と、番組を識別するため の番組識別情報とを含む人気番組情報を作成する (ステップ S 122)。なお、推薦クラ スタ作成部 1760は、全ユーザクラスタ統計部 1758による集計結果を閾値判定し、 閾値を上回ったクラスタを人気クラスタとしてもよ!/、。 [0359] 次に、推薦送信部 1761は、推薦クラスタ作成部 1760によって作成された推薦番 組情報及び人気番組情報を推薦情報として番組視聴端末 8に送信する (ステップ S 1 23)。
[0360] 図 28において、次に、番組視聴端末 8の推薦受信部 1728は、番組推薦サーバ 9 の推薦送信部 1761によって送信された推薦番組情報及び人気番組情報を含む推 薦情報を受信する (ステップ S 131)。
[0361] 次に、推薦番組情報抽出部 1729は、推薦受信部 1728によって受信された推薦 情報から推薦番組情報が抽出されたか否力、を判断する (ステップ S 132)。推薦番組 情報抽出部 1729は、ユーザに推薦番組情報及び人気番組情報のうちのいずれか の選択を促す。キー 1724を用いて推薦番組情報が選択された場合、推薦番組情報 抽出部 1729は推薦番組情報を抽出し、人気番組情報が選択された場合、推薦番 組情報抽出部 1729は人気番組情報を抽出する。なお、推薦番組情報及び人気番 組情報の両方を抽出する設定を設けても力、まわない。これによつて、ユーザに対して より多くの選択肢を提供することができる。
[0362] 推薦番組情報が抽出されたと判断された場合 (ステップ S132で YES)、クラスタ検 索部 1730は、推薦番組情報抽出部 1729によって抽出された推薦番組情報に含ま れる番組識別情報に基づ!/、て、記録媒体 1715に当該番組識別情報と同じ番組識 別情報を有する番組が記録されているか否かを判断する (ステップ S 133)。ここで、 推薦クラスタを含む番組が記録媒体 1715に記録されていないと判断された場合 (ス テツプ S 133で NO)、ステップ S 140の処理に移行する。
[0363] 一方、推薦クラスタを含む番組が記録されていると判断された場合 (ステップ S 133 で YES)、クラスタ検索部 1730は、記録媒体 1715から番組識別情報に対応する番 組情報を呼び出すとともに、受信した推薦番組情報に含まれる推薦クラスタの番組内 の時間情報と座標情報とを抽出し、推薦再生制御部 1732に出力する。推薦再生制 御部 1732は、クラスタ検索部 1730によって抽出された時間情報と座標情報とに基 づレ、て推薦クラスタのサムネイル画像をモニタ 1711に表示させる(ステップ S 134)。
[0364] 次に、推薦再生制御部 1732は、ユーザによるサムネイル画像の選択及び再生指 示が発行されたか否かを判断する(ステップ S 135)。ここで、サムネイル画像の再生 指示が発行されていないと判断された場合(ステップ SI 35で NO)、ステップ S 140の 処理へ移行する。一方、再生指示が発行されたと判断された場合 (ステップ S 135で YES)、再生制御部 1716は、記録媒体 1715から、クラスタ検索部 1730によって抽 出された番組識別情報に対応した番組を読み出して、クラスタ検索部 1730によって 抽出された時間情報に含まれる推薦クラスタの再生開始時刻から番組を再生する (ス テツプ S 136)。
[0365] 次に、拡大制御部 1733は、ユーザによる推薦クラスタを拡大するための拡大指示 が発行されたか否かを判断する(ステップ S 137)。なお、拡大指示は、キー 1724に より入力が受け付けられるとともに発行される。ここで、拡大指示が発行されたと判断 された場合 (ステップ S137で YES)、拡大制御部 1733は、ユーザから推薦クラスタ の拡大指示を受けて、クラスタ検索部 1730によって抽出された当該推薦クラスタの 動画フレーム単位の座標情報に基づ!/、て、番組の表示画像上から推薦クラスタを切 り出して拡大表示を行う(ステップ S 138)。
[0366] 推薦クラスタが拡大表示された後、又は、拡大指示が発行されていないと判断され た場合 (ステップ S137で NO)、再生制御部 1716は、選択された推薦クラスタを含む 番組の再生処理が終了したか否かを判断する(ステップ S 139)。なお、再生制御部 1 716は、クラスタ検索部 1730によって抽出された時間情報に含まれる推薦クラスタの 再生終了時刻に達すると、自動的に番組の再生処理を終了する。ここで、番組の再 生処理が終了していないと判断された場合 (ステップ S139で NO)、再生制御部 171 6は、再生処理を継続する。
[0367] 一方、番組の再生処理が終了したと判断された場合 (ステップ S 139で YES)、クラ スタ検索部 1730は、番組推薦サーバ 9によって送信された推薦番組情報に含まれる 全ての推薦クラスタの再生処理が終了したか否かを判断する(ステップ S140)。なお 、ステップ S140において、クラスタ検索部 1730は、受信した推薦番組情報に含まれ る推薦クラスタの全てにぉレ、てステップ S 133〜S 139の処理が完了したか否かを判 断する。
[0368] ここで、全ての推薦クラスタの再生処理が終了していないと判断された場合 (ステツ プ S140で NO)、ステップ S133の処理に戻り、残りの推薦クラスタについての処理が 行われる。一方、全ての推薦クラスタの再生処理が終了したと判断された場合 (ステツ プ S140で YES)、全ての処理を終了する。
[0369] 一方、推薦番組情報が抽出されていないと判断された場合、すなわち、人気番組 情報が抽出されたと判断された場合 (ステップ S 132で NO)、クラスタ検索部 1730は 、推薦番組情報抽出部 1729によって抽出された人気番組情報に含まれる番組識別 情報に基づいて、記録媒体 1715に当該番組識別情報と同じ番組識別情報を有す る番組が記録されているか否かを判断する(ステップ S141)。ここで、人気クラスタを 含む番組が記録媒体 1715に記録されて!/、な!/、と判断された場合 (ステップ S 141で NO)、ステップ S148の処理に移行する。
[0370] 一方、人気クラスタを含む番組が記録されていると判断された場合 (ステップ S 141 で YES)、クラスタ検索部 1730は、記録媒体 1715から番組識別情報に対応する番 組情報を呼び出すとともに、受信した人気番組情報に含まれる人気クラスタの番組内 の時間情報と座標情報とを抽出し、推薦再生制御部 1732に出力する。推薦再生制 御部 1732は、クラスタ検索部 1730によって抽出された時間情報と座標情報とに基 づレ、て人気クラスタのサムネイル画像をモニタ 1711に表示させる(ステップ S 142)。
[0371] 次に、推薦再生制御部 1732は、ユーザによるサムネイル画像の選択及び再生指 示が発行されたか否かを判断する(ステップ S143)。ここで、サムネイル画像の再生 指示が発行されていないと判断された場合(ステップ S 143で NO)、ステップ S 148の 処理へ移行する。一方、再生指示が発行されたと判断された場合 (ステップ S 143で YES)、再生制御部 1716は、記録媒体 1715から、クラスタ検索部 1730によって抽 出された番組識別情報に対応した番組を読み出して、クラスタ検索部 1730によって 抽出された時間情報に含まれる人気クラスタの再生開始時刻から番組を再生する (ス テツプ S 144)。
[0372] 次に、拡大制御部 1733は、ユーザによる人気クラスタを拡大するための拡大指示 が発行されたか否かを判断する(ステップ S145)。なお、拡大指示は、キー 1724に より入力が受け付けられるとともに発行される。ここで、拡大指示が発行されたと判断 された場合 (ステップ S145で YES)、拡大制御部 1733は、ユーザから人気クラスタ の拡大指示を受けて、クラスタ検索部 1730によって抽出された当該人気クラスタの 動画フレーム単位の座標情報に基づ!/、て、番組の表示画像上から人気クラスタを切 り出して拡大表示を行う(ステップ S 146)。
[0373] 人気クラスタが拡大表示された後、又は、拡大指示が発行されていないと判断され た場合 (ステップ S145で NO)、再生制御部 1716は、選択された人気クラスタを含む 番組の再生処理が終了したか否かを判断する(ステップ S 147)。なお、再生制御部 1 716は、クラスタ検索部 1730によって抽出された時間情報に含まれる人気クラスタの 再生終了時刻に達すると、自動的に番組の再生処理を終了する。ここで、番組の再 生処理が終了していないと判断された場合 (ステップ S147で NO)、再生制御部 171 6は、再生処理を継続する。
[0374] 一方、番組の再生処理が終了したと判断された場合 (ステップ S 147で YES)、クラ スタ検索部 1730は、番組推薦サーバ 9によって送信された人気番組情報に含まれる 全ての人気クラスタの再生処理が終了したか否かを判断する(ステップ S148)。なお 、ステップ S148において、クラスタ検索部 1730は、受信した人気番組情報に含まれ る人気クラスタの全てにおいてステップ S141〜S147の処理が完了したか否かを判 断する。
[0375] ここで、全ての人気クラスタの再生処理が終了していないと判断された場合 (ステツ プ S148で NO)、ステップ S141の処理に戻り、残りの人気クラスタについての処理が 行われる。一方、全ての人気クラスタの再生処理が終了したと判断された場合 (ステツ プ S148で YES)、全ての処理を終了する。
[0376] 以上のように、本実施形態の番組推薦システムを利用すれば、番組視聴端末 8は、 番組を空間的にクラスタに分割された放送番組を受信し、ユーザがポインティングデ バイスによって選択したクラスタを番組推薦サーバ 9に送信する。番組推薦サーバ 9 では、選択されたクラスタをユーザ毎に管理するとともに、選択されたクラスタに従つ てユーザをグルーピングし、グループ内の協調フィルタリングによって、ユーザに推薦 番組を提供することができる。
[0377] また、本実施形態の番組推薦システムでは、同一のクラスタを選択したユーザで構 成されるコミュニティグループ内で特有の番組を推薦可能とするように、コミュニティグ ループを包含するグループ、例えば全ユーザからなるグループを作成して、全ユー ザから嗜好されて!/、る一般的な人気番組の影響を、コミュニティグループ内で推薦さ れる番組から削除することによってコミュニティグループ内で特有の番組の推薦が可 能となる。一般的に人気のある番組は、このような推薦システムを利用することなくュ 一ザは容易に知りえるので、コミュニティグループに特化した番組の推薦は有用であ る。また、一般的に人気のある番組の推薦方法は、公知の方法を用いて実現すること ができる。
[0378] なお、本実施形態では、ユーザによって選択されたクラスタを 1つ送信する方法を 説明している力 本発明はこれに限られない。ユーザからのクラスタの選択履歴とし て複数のユーザクラスタ情報を番組推薦サーバ 9に送信しても良い。この場合は、ュ 一ザ毎のクラスタの選択履歴と、その他のユーザの選択履歴の一致度を見てユーザ をグループ化する。例えば、送信されてきたクラスタの選択履歴に含まれる全クラスタ を、選択履歴として有するユーザをグループ化する。また、この場合の選択履歴は、 1つの特定番組内でのクラスタの選択履歴の類似度を判定してもよいし、例えば履歴 が数個保持されたときに送信するようにしてもよい。このようにクラスタの選択履歴によ るグルーピングによって、より嗜好の一致したグループ化が可能となるので、推薦する 番組やクラスタの精度向上に繋がる。
[0379] なお、上記のクラスタの選択履歴を送信する形態は、前述の第 1の実施形態及び 第 2の実施形態においても適用可能である。第 1の実施形態であれば、番組視聴端 末 2は、番組の予約情報の履歴を送信して、番組推薦サーバ 3は、送信されてきた番 組の予約情報の履歴と類似する予約情報履歴を持ったユーザをグループ化する。こ の場合でも類似する予約情報は、履歴の完全一致でもいいし、送信される履歴情報 の半数以上が合致したユーザをグループ化してもいい。また、第 2の実施形態でも同 様であり、番組視聴端末 5は、マーキングされた番組シーンの履歴を複数、番組推薦 サーバ 6に送信し、番組推薦サーバ 6は、マーキングされた番組の履歴の類似度によ つてユーザをグループ化する。
[0380] これら第 1の実施形態や第 2の実施形態の適用例においても、履歴情報の比較で ユーザをグループ化できるため、より嗜好の一致したユーザのグループ化が可能とな る。よって、グループ内で生成する推薦情報の精度の向上に繋がる。 [0381] また、全ての実施形態において、グループ内のユーザの番組への操作情報の集計 を行って、グループ内における推薦番組を生成する力 送信されてくる履歴情報の 類似度 (履歴情報の重複度など)に応じた集計を行ってもよい。例えば、番組推薦サ ーバ 6は、 5つの履歴情報を受信して、 5つとも履歴が合致するユーザに対して、 3つ の履歴しか合致しなレ、ユーザは、全て合致するユーザに対して 5分の 3の重み付け で集計を行う。このようにすれば、類似度に応じた重み付けによって集計が行われる ので、より精度の高い推薦番組を抽出することが可能となる。
[0382] また、全ての実施形態で、番組推薦サーバにおいて、グループ化したユーザを全 て包含するグループとして、全ユーザをグループ化する方法で説明したがこれに限ら れない。ユーザ情報として、性別や、年齢、住まいなどのユーザ属性情報を管理して 、これらのユーザ属性情報に基づいて、コミュニティグループ(第 1のグループ)を包 含する全ユーザグノレープ(第 2のグノレープ)を形成して、コミュニティグノレープ内の集 計結果から、この全ユーザグループの集計結果を減算して推薦情報を生成してもよ い。このようにすれば、例えば性別、年代、又は住所によって人気番組に偏りが生じ ている場合にでも、この影響を排除して、よりコミュニティグループ内に特化した推薦 情報を作成することが可能となる。
[0383] なお、第 1の実施形態では、予約を行ったユーザ数で予約率の正規化を行うとして いたが、例えば、ニュース番組のように放送頻度が高いジャンルの放送に関しては、 放送頻度や放送時間で正規化を行ってもよい。
[0384] また、第 2の実施形態で述べたマーキングに関して、例えば、スポーツ番組などの マーキングをつけられる頻度の高いジャンルの番組に対しては、マーキングの重み 付けを軽くしてもよいし、ユーザによるマーキングをつける頻度の高さに応じて、マー キングの重み付けを変更してもょレ、。
[0385] また、全ての実施形態で、グループ内の集計を行う際に、推薦情報の信頼度が高 いとされる特定のユーザの重み付けを重くして、集計を行っても良い。推薦情報の信 頼度が高いとされるユーザは、ユーザの予約番組と、グループ内の推薦情報の一致 度によって自動的に抽出されても良いし、他のユーザまたは番組推薦システムを管 理する管理者等から人為的に選ばれても良い。 [0386] また、例えば大晦日などの特定の日や数年に 1度のスポーツ大会の開催期間など は、予約率の集計対象から除外したり、重み付けの変更を行っても良い。
[0387] なお、第 2の実施形態において、番組シーンのマーキング方法として、ボタン押下 時間によるマーキング、番組シーンの開始時刻及び終了時刻の入力によるマーキン グ、番組シーンの開始時刻と継続時間とを指定するマーキング、シーンの終了時刻と 継続時間とを指定するマーキングを挙げた力 これらに限定されるものではない。例 えば、ユーザによるお気に入りシーンボタン押下時刻から所定時間戻った時間をお 気に入りシーン開始時刻として番組シーンのマーキングを行ってもよぐお気に入り シーンボタン押下時刻から所定時間進んだ時間をお気に入りシーン終了時刻として 番糸且シーンのマーキングを fiつてもよ!/、。
[0388] また、ユーザによるお気に入りシーンボタン押下時刻の直前および直後のシーンチ ェンジを自動的に検出し、これらのシーンチェンジをそれぞれお気に入りシーン開始 時刻および終了時刻として、番,袓シーンのマーキングを行ってもよい。このようにすれ ば、お気に入りシーンをマーキングするユーザの負担を軽減することができる。なお、 シーンチェンジの判定は、番組のフレームごとに抽出するヒストグラムの変化からシー ンが変わったことを判定したり、画像認識により映し出される出演者の変化を判定し たりする、映像ベースのシーンチェンジの判定や、音声のトーン変化、音量の変化、 又は音声認識を利用した出演者の変化を判定する音声ベースのシーンチェンジの 判定を用いる。
[0389] また、第 2の実施形態において、ユーザ操作の種類に応じた重み付け加算によりマ 一キング情報を集計する方法につ!/、て述べたが、操作の種類だけでなく操作の内容 に応じて重み付け加算を行ってもよい。例えば、番組の録画予約操作に対しては、 高画質モードや長時間モードといった録画画質の指定に応じて重み付けを変えても よい。
[0390] なお、第 1の実施形態におけるコミュニティ予約情報統計部 236において、ユーザ Aが予め用意された複数のコミュニティグループの中から、参加するコミュニティダル ープをユーザ自身が選択し、このコミュニティグループを全体集合として、ユーザ Aが 予約した番組との統計を計算してもよい。これによつて、ユーザニーズにマッチしたコ ミュニティグループおよびユーザ Aが録画予約した番組と類似性が高いグループを 生成すること力 Sでさる。
[0391] なお、第 1の実施形態におけるコミュニティ予約情報統計部 236において、ユーザ Aが所属するグループをユーザ Aが選択することもできる。これによつて、番組推薦サ ーバは、ユーザ A自身が選択したグループの嗜好およびユーザ Aが録画予約した番 組と類似性が高い番組を推薦することが可能となる。
[0392] なお、ユーザはコミュニティグループの入会/脱会を選択することが可能となる。こ れによって、ユーザの嗜好が変わった場合や、その場のユーザの気分に合わせた番 組推薦が可能となる。
[0393] なお、このコミュニティグループの選択においては、ユーザが選択可能なコミュニテ イグループの一覧を表示させることが望ましい。これによつて、ユーザは簡易な手続き でコミュニティグノレープへの参加が可能となる。
[0394] なお、ユーザはコミュニティグループを検索できるようにしてもよい。これによつてュ 一ザは多数のコミュニティグループからユーザが望むコミュニティグループを捜し出 すこと力 Sできる。この検索における検索クエリはユーザの検索キーワードの入力による 方法が望ましいが、その他の検索クエリ、例えば、カテゴリからの選択、画像情報、映 像情報、音楽情報、及び音声などを検索クエリとする方法や、ユーザのジエスチヤな どを利用しても同等の効果を得ることができる。
[0395] なお、ユーザのコミュニティグループ選択時において、過去にユーザが選択したこ とのある、コミュニティグループグループの履歴を表示しても良い。これによつて、ュ 一ザは過去に選択したことのあるコミュニティグループを容易に選択することができる
[0396] なお、ユーザのコミュニティグループ選択時において、他のユーザが選択している コミュニティグループのランキングを表示させてもよい。好ましくは他のユーザによって 選択された数の多!/、コミュニティグループのランキングを表示させることが望まし!/、。 これによつて、より人気度の高!/、コミュニティグループをユーザは選択することができ る。また、その他の例としては、他のユーザの選択度が急増したコミュニティグループ のランキングを表示させても良い。これによつて、瞬間的に人気が上がってきているコ ミュニティグループを選択することが可能となる。
[0397] なお、推薦番組作成部 239における閾値判定基準を、ユーザが指定することがきる ようにしてもよい。例えばユーザが閾値判定基準をあげることによって、よりグノレープ 内での予約率が高い番組のみを推薦させることができる。反対に、閾値判定基準を 下げることによってより多くの番組を推薦させることができる。
[0398] なお、全ての実施形態で、グループ内の集計を行う際に、ユーザの選択した番組 に重み付けを行っても良い。例えば、ユーザが録画した番組の日時を保存しておき、 時間が経過するにつれて重みが減少するような仕組みが考えられる。これによつて、 例えば、ある一定時期に特定の番組を多く録画予約していたユーザの嗜好が変わり 、以前予約していた番組と嗜好が異なる番組を録画予約したときに、過去のユーザ の録画した番組の嗜好の影響が小さくなり、より最近のユーザの嗜好にあった番組を 推薦することが可能となる。
[0399] なお、全ての実施形態で、グループ内の集計を行う際に、ユーザが過去に録画し た番組だけでなぐユーザが録画せずに生で見た番組をグループの集計に利用して も良い。これによつて、ユーザが選択した番組のサンプル数を増やすことが可能とな るため、よりユーザの嗜好にマッチした番組を推薦することが可能となる。
[0400] なお、全ての実施形態における、録画方式において、ユーザの録画予約した番組 と類似度の高い番組の一覧を表示し、その中からユーザが録画したい番組を選択す るようにしても良い。これによつて、例えば番組を記憶する記録媒体の容量に上限が ある場合に、記録媒体の容量を節約することができる。
[0401] なお、この予約番組の選択において、他のユーザ全体の予約率や視聴率が高い、 一般的な人気番組と、本発明で開示されたユーザの録画予約番組との嗜好度が近 い推薦番組を同じ画面に表示させてもよいし、ユーザが一般的な人気番組と、嗜好 度の高!/、推薦番組とのうちの!/、ずれを表示する力、を選択できる仕組みを取り入れて も良い。これによつて、ユーザは自身の嗜好に合致した番組だけでなぐ所謂人気番 組も容易に録画予約することが可能となる。
[0402] (第 4の実施形態)
第 4の本実施形態では、第 1の実施形態で説明した図 4に示す番組推薦サーバ 3 における特化生成部 30において、 tf ' idf (term frequency inverse document frequency)値を算出して、ユーザの予約番組情報群から推定されるユーザの属 するコミュニティグループに特化した推薦番組を作成する方法について説明する。
[0403] tf ' idf値は、番組の予約番組情報の出現頻度から重み付けする手法であり、 tfは、 対象となるコミュニティグループにおける特定の予約番組情報の出現頻度を表し、 id fは、全ユーザの予約番組情報の中で特定番組の予約番組情報が含まれて!/、るュ 一ザの数の逆数を表す。もし、ある予約番組情報が一つのコミュニティグループ内に 頻出するものであり、その予約番組情報が出現するユーザ数がわずかな場合であれ ば、それは tf . idf値が高ぐコミュニティグループの特徴的な予約番組情報と言える。 そこで、この特徴的な予約番組情報をコミュニティグループに特化した推薦番組とし て生成する。
[0404] tf ' idf値を利用して推薦番組を生成する第 4の実施形態の構成は、図 4の番組推 薦サーバ 3の特化生成部 30と同様の構成であり、コミュニティ予約情報統計部 236、 全ユーザ予約情報統計部 237およびコミュニティ特化部 238で構成される。
[0405] コミュニティ予約情報統計部 236は、 tf ' idf値の tfを算出し、コミュニティグループ内 で出現頻度の高い予約番組情報を抽出する。実際には、コミュニティ予約情報統計 部 236は、コミュニティグループに属するユーザ毎に保持している予約番組情報群か ら、 1つ 1つの予約番組情報ごとに、コミュニティグループ内でカウントアップし、出現 頻度の高い予約番組情報を抽出し、出現頻度を tfとして算出する。
[0406] 図 30は、第 4の実施形態に係るコミュニティ予約情報統計部 236の処理の流れを 示すフローチャートである。
[0407] まず、コミュニティ予約情報統計部 236は、ユーザ管理部 231によって認証された ユーザ(認証ユーザ)が属するコミュニティグループにおける全てのユーザの予約番 組情報を予約情報 DB235から取得する(ステップ S 161)。ここで取得する予約番組 情報は、ユーザ管理部 231でユーザ情報が認証されたユーザと同じコミュニティグノレ ープに属するユーザが送信した予約番組情報、すなわち認証ユーザのコミュニティ グループ内で予約された番組の予約番組情報である。
[0408] 次に、コミュニティ予約情報統計部 236は、認証ユーザの属するコミュニティグルー プ内の全ての予約番組情報の総数を取得する(ステップ S162)。次に、コミュニティ 予約情報統計部 236は、 1つ 1つの予約番組情報ごとに、コミュニティグループ内で
Figure imgf000089_0001
[0409] 次に、コミュニティ予約情報統計部 236は、認証ユーザの属するコミュニティグルー プにおける各予約番組情報の出現頻度 tfを算出する(ステップ S164)。具体的に、 コミュニティ予約情報統計部 236は、コミュニティグループにおける予約番組情報の 数を、コミュニティグループにおける全ての予約番組情報の総数で除算することによ り、予約番組情報の出現頻度 tfを算出する。
[0410] 次に、コミュニティ予約情報統計部 236は、コミュニティグループ内の全ての予約番 組情報の出現頻度 tfを算出したか否かを判断する(ステップ S165)。ここで、全ての 予約番組情報の出現頻度 tfを算出して!/、な!/、と判断された場合 (ステップ S 165で N 〇)、コミュニティ予約情報統計部 236は、ステップ S163の処理へ戻り、コミュニティグ ループ内の他の予約番組情報の予約数をカウントする。
[0411] —方、全ての予約番組情報の出現頻度 tfを算出したと判断された場合 (ステップ S 165で YES)、コミュニティ予約情報統計部 236は、認証ユーザが属する全てのコミ ュニティグループの予約番組情報の出現頻度 tfを算出したか否かを判断する (ステツ プ S166)。すなわち、認証ユーザが複数のコミュニティグループに所属している場合 は、認証ユーザが所属する全てのコミュニティグループについて、予約番組情報の 出現頻度 tfを算出する。
[0412] ここで、全てのコミュニティグループの予約番組情報の出現頻度 tfを算出していな いと判断された場合 (ステップ S 166で NO)、コミュニティ予約情報統計部 236は、ス テツプ S 161の処理へ戻り、認証ユーザが属する他のコミュニティグループにおける 全てのユーザの予約番組情報を予約情報 DB235から取得する。一方、全てのコミュ 二ティグループの予約番組情報の出現頻度 tfを算出したと判断された場合 (ステップ S 166で YES)、処理を終了する。
[0413] 全ユーザ予約情報統計部 237は、 tf 'idf値の idfを算出し、予約情報 DB235に登 録されている全ユーザの予約番組情報の中で、コミュニティグループ内の全予約番 組情報の 1つ 1つの出現頻度を算出する。コミュニティグループ内の予約番組情報が 、全ユーザの予約番組情報においても出現頻度が高い場合には、 idfは小さくなり、 コミュニティグループに代表される予約番組情報ではないと判定される。一方、コミュ 二ティグノレープ内の予約番組情報力 S、全ユーザの予約番組情報にお!/、ても出現頻 度が低い場合には、 idfは大きくなり、コミュニティグループに代表される予約番組情 報であると判定される。
[0414] 実際には、全ユーザ予約情報統計部 237は、ある特定の予約番組情報 kにつ!/、て 、 log ( (全ユーザ数) ÷ (予約番組情報 kを有するユーザ数) ) + 1によって idfを算出 する。
[0415] 図 31は、第 4の実施形態に係る全ユーザ予約情報統計部 237の処理の流れを示 すフローチャートである。
[0416] まず、全ユーザ予約情報統計部 237は、ユーザ管理部 231及び予約情報登録部 2 34を介してユーザ属性 DB232に登録されているユーザの総数を取得する(ステップ S 171) 0次に、全ユーザ予約情報統計部 237は、認証ユーザのコミュニティグルー プ内の各予約番組情報について、予約を行ったユーザ数をカウントする(ステップ S 1 72)。
[0417] 次に、全ユーザ予約情報統計部 237は、認証ユーザの属するコミュニティグループ における各予約番組情報の idfを算出する(ステップ S173)。具体的に、全ユーザ予 約情報統計部 237は、下記の(1)式に基づいて各予約番組情報の idfを算出する。
[0418] idf = log ( (全ユーザ数) ÷ (各予約番組情報を有するユーザ数)) + 1 · · · (1)
[0419] 次に、全ユーザ予約情報統計部 237は、コミュニティグループ内の全ての予約番組 情報について idfを算出したか否かを判断する(ステップ S174)。ここで、全ての予約 番組情報の idfを算出していないと判断された場合 (ステップ S174で NO)、全ユー ザ予約情報統計部 237は、ステップ S 172の処理へ戻り、コミュニティグループ内の 他の予約番組情報について、予約を行ったユーザ数をカウントする。一方、全ての予 約番組情報の idfを算出したと判断された場合 (ステップ S174で YES)、処理を終了 する。
[0420] なお、本実施形態では、全ユーザ数と、各予約番組情報を有するユーザ数とを用 いて idfを算出しているが、本発明は特にこれに限定されず、全コミュニティグループ 数と、各予約番組情報を有するコミュニティグループ数とを用いて idfを算出してもよ い。
[0421] コミュニティ特化部 238は、コミュニティ予約情報統計部 236によって算出された出 現頻度 tfと、全ユーザ予約情報統計部 237によって算出された idfとに基づき、コミュ 二ティグループ内の全ユーザの予約番組情報ごとに tf · idf値を算出して、推薦番組 作成部 239に出力する。なお、 tf 'idf値は、 tf X idfで算出される。
[0422] 推薦番組作成部 239は、 tf 'idf値が高ぐかつ、推薦を行うユーザが未だ予約して いない推薦対象の番組を、推薦番組として抽出する。したがって、コミュニティグルー プ内で出現頻度が高ぐ全ユーザで出現頻度の高くない、すなわち idfが大きい番組 で、かつ、推薦を行うユーザが未だ予約を行っていない番組が推薦される。これによ つて、ユーザには、コミュニティグループに特化した、すなわち、ユーザの嗜好にマツ チして!/、ると考えられる番組が推薦される。
[0423] 図 32は、第 4の実施形態に係るコミュニティ特化部 238の処理の流れを示すフロー チャートである。
[0424] まず、コミュニティ特化部 238は、認証ユーザが属するコミュニティグループ内の予 約番組情報について、コミュニティ予約情報統計部 236で取得した tfと、全ユーザ予 約情報統計部 237で取得した idfとを用いて、 tf · idf値を算出する(ステップ S 181 )。
[0425] 次に、コミュニティ特化部 238は、認証ユーザが属するコミュニティグループ内の全 ての予約番組情報の tf 'idf値を算出したか否かを判断する(ステップ S182)。ここで 、全ての予約番組情報の tf · idf値を算出して!/、な!/、と判断された場合 (ステップ S 18 2で NO)、コミュニティ特化部 238は、ステップ S 181の処理へ戻り、認証ユーザが属 するコミュニティグループ内の他の予約番組情報の tf . idf値を算出する。
[0426] 一方、全ての予約番組情報の tf 'idf値を算出したと判断された場合 (ステップ S18 2で YES)、コミュニティ特化部 238は、推薦対象となる番組を判定するための推薦閾 値を求める。この推薦閾値としては、例えば、コミュニティグループ内の予約番組情 報における tf 'idf値の平均値といった、容易に計算可能な値が好ましい。そのため、 コミュニティ特化部 238は、コミュニティグループ内における全ての予約番組情報の tf • idf値の平均値を算出する(ステップ S 183)。 [0427] 次に、コミュニティ特化部 238は、推薦閾値(平均値)以上の tf 'idf値を持つ予約番 組情報を推薦対象予約番組情報として抽出する。次に、コミュニティ特化部 238は、 推薦対象予約番組情報の中に認証ユーザが予約して!/、な!/、予約番組情報があるか 否かを判断する(ステップ S 185)。ここで、認証ユーザが予約していない予約番組情 報はないと判断された場合 (ステップ S185で NO)、処理を終了する。
[0428] 一方、認証ユーザが予約して!/、な!/、予約番組情報があると判断された場合 (ステツ プ S185で YES)、コミュニティ特化部 238は、認証ユーザが未予約の予約番組情報 の中から、 tf 'idf値が高いものから順に所定数の予約番組情報を推薦番組として抽 出し、当該推薦番組を識別するための番組識別情報を含む推薦番組情報を作成す る(ステップ S 186)。
[0429] ここで、 tf 'idf値を用いた推薦番組の抽出の一例を、図 33を用いてさらに具体的に 説明する。図 33は、 tf 'idf値を用いた推薦番組の抽出について説明するための図で ある。図 33に示す表 301中の横軸は、予約された番組 α〜 ζを表し、縦軸は、コミュ 二ティグノレープ Cl〜c4と、各コミュニティグループに所属するユーザ A〜Pを表して いる。表 301中の丸印は、ユーザがどの番組を予約したか示すものである。ここで、 ユーザ Aは、ユーザ管理部 231でユーザ情報を認証された認証ユーザである。
[0430] まず、コミュニティ予約情報統計部 236は、ユーザ Aが所属するコミュニティグルー プ cl及び c2において、各予約番組情報の tfを算出する。例えば、コミュニティグルー プ cl内の予約番組情報の総数は 11件であり、番組 αはユーザ A及び Cによって 2件 の予約が行われているので、コミュニティグループ clにおける番組 αの tfは 2/11 = 0. 18となる。同様にして、コミュニティ予約情報統計部 236は、コミュニティグノレープ cl及び c2内の全ての予約番組情報の tfを算出する。
[0431] 次に、全ユーザ予約情報統計部 237は、コミュニティグループ cl及び c2において、 各予約番組情報 (番組 α〜 ζ )の idfを算出する。例えば、番組 αは、ユーザ Α〜Ρ の全 15名のユーザの内、 11名のユーザによって予約が行われているので、番組 α の idfは、 log (15/l l) + l = l . 13となる。同様にして、全ユーザ予約情報統計部 2 37は、他の予約番組情報についても idfを算出する。
[0432] さらに、コミュニティ特化部 238は、 tf 'idf値を求め、この tf 'idf値を基に推薦番組を 抽出する。 tf ' idf値は、コミュニティグループ c l及び c2のそれぞれの予約番組情報 について算出する。例えば、コミュニティグループ c lの番組 αの tf ' idf値は、 2 ÷ 1 1 X (log ( 15/l l ) + l ) = 0. 20となる。コミュニティ特ィ匕き 238は、他の番糸且につい ても同様に tf ' idf値を算出する。そして、コミュニティ特化部 238は、算出した 10個の tf · idf値の平均値を算出し、この平均値以上の tf . idf値を持つ予約番組情報を推薦 対象予約番組情報とする。
[0433] 図 33の一例では、コミュニティグループ c lにおける番組 β及び番組 δが推薦対象 予約番組となり、コミュニティグループ c2における番組 α、番組 δ及び番組 εが推薦 対象予約番組となる。ここで、番組 α及び番組 δは、 tf ' idf値が平均値よりも高いが 、ユーザ Aがすでに予約を行っている番組であるので、残りの番組の内の番組 /3及 び番組 εが推薦対象予約番組として抽出される。このとき、番組 /3の tf ' idf値は番組 εの tf ' idf値よりも大きいので、番組 /3力 番に推薦され、番組 ε力 ¾番目に推薦さ れる。
[0434] なお、本実施形態では、認証ユーザが属するコミュニティグループに特徴的な予約 番組情報を、ユーザ属性 DB232に登録されている全てのユーザに対して抽出して V、る力 全ユーザではなく所定の複数コミュニティグノレープに所属するユーザに対し て予約番組情報を抽出してもよい。この所定の複数コミュニティグループは、例えば 以下のような方法により設定することができる。
[0435] まず、認証ユーザに最初の番組推薦を行う際は、本実施形態で説明したとおり全 ユーザ数を用いて idf値を求める。次に、初回の処理で推薦された番組のコミュニティ 予約率(コミュニティグループ内の推薦番組の予約数 ÷そのコミュニティグループ内 のユーザ数)が所定の閾値 (例えば 0. 5)以上であるコミュニティグループを近傍コミ ュニティグノレープとする。
[0436] 認証ユーザに推薦した番組の予約率が高いコミュニティグループは、認証ユーザ の所属するコミュニティグループに番組予約傾向が類似しているコミュニティグルー プ(近傍コミュニティグループ)と言える。二回目以降の番組推薦を行う際には、この 近傍コミュニティグノレープおよび認証ユーザが所属するコミュニティグノレープのユー ザ総数を用いて idf値を求める。すなわち、予約番組情報 kの idf値は、下記の(2)式 に基づいて算出される。
[0437] idf = log ( (近傍コミュニティグループのユーザ数 +認証ユーザが所属するコミュ二 ティグループのユーザ数) ÷予約番組情報 kが出現するユーザ数) + 1 · · · (2)
[0438] 図 33で説明した一例では、認証ユーザ Aに番組 βが(1位で)推薦されて!/、る。ここ で、図 34に示すように、認証ユーザ Αが所属していないコミュニティグループ c3と c4 とにおける推薦番組 /3のコミュニティ予約率は、それぞれ 0. 5と 0. 3となり、コミュニテ ィ予約率の閾値(0. 5)以上であるコミュニティグノレープ c3が近傍コミュニティグノレー プとなる。
[0439] したがって、二回目以降の番組推薦処理においては、認証ユーザ Aが所属するコミ ュニティグループ c l , C2及び近傍コミュニティグループ c3の 3つのコミュニティグルー プのユーザ総数 12名を用いて、予約番組情報 kの idf値を log (12 ÷予約番組情報 k が出現するユーザ数) + 1と算出する。
[0440] このように、全ユーザではなく近傍コミュニティグループに所属するユーザに限定し て idfを求めて番組推薦を行うことで、よりコミュニティグループに特化した番組を推薦 すること力 Sできる。また、二回目以降の番組推薦処理にかかる計算負荷を、初回の計 算負荷よりあ/ J、さくすることカでさる。
[0441] さらに、番組推薦処理を繰り返し行っていく際に、定期的に初回の番組推薦と同様 の処理を行うことで、近傍コミュニティグループを更新する構成としてもよい。このよう にすれば、コミュニティグループの番組予約傾向が時間経過とともに変化する場合で も、コミュニティグループに特化した番組推薦を行うことができる。
[0442] なお、この近傍コミュニティグノレープは、比較的嗜好が近いコミュニティグノレープと 判断すること力 Sできる。このため、ユーザに近傍コミュニティグループへの加入を推薦 する仕組みを持たせることも可能である。これによつて、ユーザは自分の嗜好に近い コミュニティグループを発見しやすくなるという効果が期待できる。
[0443] なお、本実施形態では、番組の推薦閾値として tf ' idf値の平均値を用いた力 S、これ に限定されない。例えば、 tf ' idf値のばらつきが大きい傾向がある場合には、相乗平 均や中央値を推薦閾値として用いることで、ユーザが納得する番組推薦を高精度に fiうこと力 Sでさる。 [0444] また、本実施形態では、コミュニティ特化部 238は、推薦対象予約番組情報と認証 ユーザの予約済みの予約番組情報との比較を行って!/、る力 コミュニティ予約情報 統計部 236及び全ユーザ予約情報統計部 237で、処理の対象となる予約番組情報 と認証ユーザの予約番組情報との比較を行い、認証ユーザの予約番組情報を処理 の対象から除外する構成としてもよい。このような構成にすることで、コミュニティ予約 情報統計部 236及び全ユーザ予約情報統計部 237における処理対象予約番組情 報が少なくなり、計算処理量を減らすことが可能となる。
[0445] なお、本実施形態では、番組の予約番組情報から tf 'idf値を算出する例に関して 述べたが、番組の予約番組情報以外の情報を用いて tf 'idf値を算出してもよい。例 えば、ユーザの作成したブログや日記などのコンテンツのタイトルやコンテンツ内に 出現する単語などから tf 'idf値を算出し、 tf 'idf値が高い単語をコミュニティグループ に代表される単語として、その単語が番組情報のタイトルや詳細情報(EPGから得ら れる情報や番組に関連付けられたタグなど)に含まれる番組を推薦しても良レ、。
[0446] また、コミュニティグループに代表される番組情報や単語をコミュニティグループの 詳細情報として関連付けを行なっても良い。そうすることにより、コミュニティグループ を検索する際のタグ情報として使用することが可能になったり、コミュニティグループ 名を表示する際に同時に一覧を出力することで、ユーザがコミュニティグループを選 択する際によりユーザの嗜好に合ったコミュニティグループを選択しやすくするという 効果が得られる。
[0447] なお、上述した具体的実施形態には以下の構成を有する発明が主に含まれている
[0448] 本発明の一局面に係る番組推薦システムは、受信した番組を視聴する番組視聴端 末と、前記番組視聴端末とネットワークを介して互いに通信可能に接続され、前記番 組に対するユーザの操作を表す操作情報を前記番組視聴端末から取得し、前記ュ 一ザの嗜好に合った番組に関する推薦情報を前記操作情報に応じて作成する番組 推薦サーバとを備える番組推薦システムであって、前記番組視聴端末は、前記操作 情報の入力を受け付ける操作受付部と、前記操作受付部によって受け付けられた前 記操作情報を前記番組推薦サーバに送信する操作情報送信部とを備え、前記番組 推薦サーバは、前記操作情報送信部によって送信された前記操作情報を受信する 操作情報受信部と、前記操作情報受信部によって受信された前記操作情報を前記 ユーザ毎に記憶する操作情報記憶部と、前記操作情報受信部によって受信された 前記操作情報と、前記操作情報記憶部に記憶されて!、るユーザ毎の前記操作情報 とに基づいて、前記ユーザを第 1のグループにグルーピングする第 1のグルーピング 部と、前記第 1のグルーピング部によってグルーピングされた前記第 1のグループを 包含する第 2のグループに前記ユーザをグルーピングする第 2のグルーピング部と、 前記第 1のグルーピング部によってグルーピングされた前記第 1のグループに属する ユーザの前記操作情報の集計結果と、前記第 2のグルーピング部によってグルーピ ングされた前記第 2のグループに属するユーザの前記操作情報の集計結果とに基づ いて、前記第 1のグループに特有の前記推薦情報を生成する推薦情報生成部と、前 記推薦情報生成部によって生成された前記推薦情報を前記番組視聴端末に送信す る推薦情報送信部とを備え、前記番組視聴端末は、前記推薦情報送信部によって 送信された前記推薦情報を受信する推薦情報受信部と、前記推薦情報受信部によ つて受信された前記推薦情報に基づいて、番組の選択、記録、再生及び消去のうち の少なくとも 1つを行う番組制御部とをさらに備える。
この構成によれば、番組視聴端末にお!/、て、番組に対するユーザの操作を表す操 作情報の入力が受け付けられ、受け付けられた操作情報が番組推薦サーバに送信 される。そして、番組推薦サーバにおいて、番組視聴端末によって送信された操作 情報が受信され、受信された操作情報が操作情報記憶部にユーザ毎に記憶される。 次に、受信された操作情報と、操作情報記憶部に記憶されているユーザ毎の操作情 報とに基づいて、ユーザが第 1のグループにグルーピングされ、第 1のグループを包 含する第 2のグループにユーザがグルーピングされる。第 1のグループに属するユー ザの操作情報の集計結果と、第 2のグループに属するユーザの操作情報の集計結 果とに基づいて、第 1のグループに特有の推薦情報が生成され、生成された推薦情 報が番組視聴端末に送信される。続いて、番組視聴端末において、番組推薦サー バによって送信された推薦情報が受信され、受信された推薦情報に基づいて、番組 の選択、記録、再生及び消去のうちの少なくとも 1つが行われる。 [0450] したがって、第 1のグループに属するユーザの操作情報の集計結果に基づいて、 1 のユーザと同一嗜好の他のユーザによって操作されている番組が抽出され、第 1の グループを包含する第 2のグループに属するユーザの操作情報の集計結果に基づ いて、全体的に嗜好されている番組が抽出され、第 1のグループに基づいて抽出さ れた番組から第 2のグループに基づいて抽出された番組の影響が排除されるので、 一般的に嗜好度の高い番組を排除し、特定のユーザの嗜好に特化した番組を推薦 すること力 Sでさる。
[0451] また、上記の番組推薦システムにおいて、前記番組視聴端末は、前記ユーザによ る前記番組内における再生位置のマーキングを受け付けるマーキング受付部をさら に備え、前記操作情報は、前記マーキング受付部によってマーキングされた前記番 組内における再生位置に対応する時間を示すマーキング時間情報を含むことが好ま しい。
[0452] この構成によれば、ユーザによる番組内における再生位置のマーキングが受け付 けられ、操作情報には、マーキングされた番組内における再生位置に対応する時間 を示すマーキング時間情報が含まれる。したがって、マーキングされた番組内におけ る再生位置に基づいてユーザの嗜好を判定することができる。
[0453] また、上記の番組推薦システムにお!/、て、前記番組は、表示画面を複数の領域に 分割した状態で放送され、前記番組視聴端末は、前記表示画面上における前記複 数の領域のうちの少なくとも 1つの領域の前記ユーザによる選択を受け付ける画面内 選択受付部をさらに備え、前記操作情報は、前記画面内選択受付部によって選択が 受け付けられた時点の番組内の時間情報を含むことが好ましい。
[0454] この構成によれば、番組は、表示画面を複数の領域に分割した状態で放送され、 番組視聴端末において、表示画面上における複数の領域のうちの少なくとも 1つの 領域のユーザによる選択が受け付けられる。そして、操作情報には、選択が受け付 けられた時点の番組内の時間情報が含まれる。したがって、表示画面上における複 数の領域のうちのユーザにより選択された少なくとも 1つの領域に基づいてユーザの 嗜好を判定することができる。また、番組推薦サーバにより推薦される番組を時間情 報に応じた再生位置から自動的に再生することができる。 [0455] また、上記の番組推薦システムにお!/、て、前記番組は、表示画面を複数の領域に 分割した状態で放送され、前記番組視聴端末は、前記表示画面上における前記複 数の領域のうちの少なくとも 1つの領域の前記ユーザによる選択を受け付ける画面内 選択受付部をさらに備え、前記操作情報は、前記画面内選択受付部によって選択が 受け付けられた前記表示画面上における位置情報を含むことが好ましい。
[0456] この構成によれば、番組は、表示画面を複数の領域に分割した状態で放送され、 番組視聴端末において、表示画面上における複数の領域のうちの少なくとも 1つの 領域のユーザによる選択が受け付けられる。そして、操作情報には、選択が受け付 けられた表示画面上における位置情報が含まれる。したがって、表示画面上におけ る複数の領域のうちのユーザにより選択された少なくとも 1つの領域に基づいてユー ザの嗜好を判定することができる。また、番組推薦サーバにより推薦される番組内に おける所定の領域のみを拡大して再生することができる。
[0457] また、上記の番組推薦システムにお!/、て、前記推薦情報は、前記複数の領域のう ち、ユーザに選択された前記領域を識別するための領域識別情報を含むことが好ま しい。この構成によれば、推薦情報には、複数の領域のうち、ユーザに選択された領 域を識別するための領域識別情報が含まれるので、領域識別情報に基づいて番組 内における領域を特定し、特定した領域を再生することができる。
[0458] また、上記の番組推薦システムにお!/、て、前記推薦情報は、推薦する番組の再生 開始位置に関する再生開始時間情報を含むことが好ましい。この構成によれば、推 薦情報には、推薦する番組の再生開始位置に関する再生開始時間情報が含まれる ので、番組推薦サーバによって推薦された番組を最初から再生するのではなぐ番 組の中でもユーザの嗜好に応じた再生開始位置から再生することができる。
[0459] また、上記の番組推薦システムにお!/、て、前記推薦情報は、推薦する番組を構成 する複数のパケットのうちの特定パケットを識別するためのパケット識別情報を含むこ とが好ましい。
[0460] この構成によれば、推薦情報には、推薦する番組を構成する複数のパケットのうち の特定パケットを識別するためのパケット識別情報が含まれるので、番組推薦サーバ によって推薦された番組を最初から再生するのではなぐ番組の中でもユーザの嗜 好に応じた特定パケットから再生することができる。
[0461] また、上記の番組推薦システムにおいて、前記第 1のグルーピング部は、前記操作 情報受信部によって受信された前記操作情報と同等の操作情報を持ったユーザ群 を前記操作情報記憶部から抽出し、前記ユーザ群を前記第 1のグループとしてダル 一ビングすることが好ましい。
[0462] この構成によれば、受信された操作情報と同等の操作情報を持ったユーザ群が操 作情報記憶部から抽出され、抽出されたユーザ群が第 1のグループとしてグルーピン グされる。したがって、同等の操作情報を持ったユーザ群を第 1のグループとしてグ ルービングすることにより、嗜好の類似しているユーザをグルーピングすることができ
[0463] また、上記の番組推薦システムにお!/、て、前記操作情報は、ユーザの操作対象と なった番組を識別するための番組識別情報を含み、前記第 1のグルーピング部は、 前記操作情報受信部によって受信された前記操作情報に含まれる前記番組識別情 報と同一の番組識別情報を持ったユーザ群を前記操作情報記憶部から抽出し、前 記ユーザ群を前記第 1のグループとしてグルーピングすることが好ましい。
[0464] この構成によれば、操作情報には、ユーザの操作対象となった番組を識別するた めの番組識別情報が含まれ、受信された操作情報に含まれる番組識別情報と同一 の番組識別情報を持ったユーザ群が操作情報記憶部から抽出され、抽出されたュ 一ザ群が第 1のグループとしてグルーピングされる。したがって、同一の番組識別情 報を持ったユーザ群をグルーピングすることにより、嗜好の類似しているユーザをグ ルービングすることができる。
[0465] また、上記の番組推薦システムにお!/、て、前記第 1のグルーピング部は、前記操作 情報受信部によって受信された前記操作情報に含まれる前記マーキング時間情報と 時間的重なりのあるマーキング時間情報を持ったユーザ群を前記操作情報記憶部 力、ら抽出し、前記ユーザ群を前記第 1のグループとしてグルーピングすることが好まし い。
[0466] この構成によれば、受信された操作情報に含まれるマーキング時間情報と時間的 重なりのあるマーキング時間情報を持ったユーザ群が操作情報記憶部から抽出され 、抽出されたユーザ群が第 1のグループとしてグルーピングされる。したがって、番組 において時間的に重なる部分をマーキングしたユーザ群をグルーピングすることによ り、嗜好の類似しているユーザをグルーピングすることができる。
[0467] また、上記の番組推薦システムにおいて、前記第 1のグルーピング部は、前記操作 情報受信部によって受信された前記操作情報に含まれる前記領域識別情報と同一 の領域識別情報を持ったユーザ群を前記操作情報記憶部から抽出し、前記ユーザ 群を前記第 1のグループとしてグルーピングすることが好ましい。
[0468] この構成によれば、受信された操作情報に含まれる領域識別情報と同一の領域識 別情報を持ったユーザ群が操作情報記憶部から抽出され、抽出されたユーザ群が 第 1のグループとしてグルーピングされる。したがって、同一の領域識別情報を持つ たユーザ群をグルーピングすることにより、嗜好の類似しているユーザをグルーピン グすること力 Sでさる。
[0469] また、上記の番組推薦システムにおいて、前記第 2のグルーピング部は、前記番組 推薦サーバに予め登録されている全てのユーザを前記第 2のグループとしてグルー ビングすることが好ましい。
[0470] この構成によれば、番組推薦サーバに予め登録されている全てのユーザが第 2の グループとしてグルーピングされるので、全体的に嗜好されて!/、る番組を抽出するこ とができ、第 1のグループに基づいて抽出された番組から第 2のグループに基づいて 抽出された番組の影響を排除することができる。
[0471] また、上記の番組推薦システムにおいて、前記第 2のグルーピング部は、前記番組 推薦サーバに予め登録されているユーザによって予め入力された属性情報、又は前 記番組推薦サーバに予め登録されているユーザから抽出された属性情報と同等の 属性情報を持った複数のユーザを前記第 2のグループとしてグルーピングすることが 好ましい。
[0472] この構成によれば、番組推薦サーバに予め登録されているユーザによって予め入 力された属性情報、又は番組推薦サーバに予め登録されているユーザから抽出され た属性情報と同等の属性情報を持った複数のユーザが第 2のグループとしてグルー ビングされる。したがって、同等の属性情報を持った複数のユーザが第 2のグループ としてグルーピングされるので、第 2のグループに属するユーザの数を減らすことがで き、推薦番組を生成する処理に要する時間を短縮することができる。
[0473] また、上記の番組推薦システムにおいて、前記推薦情報生成部は、前記第 1のグ ループに含まれる前記操作情報の集計結果を前記第 1のグループのユーザ数で正 規化し、前記第 2のグループに含まれる前記操作情報の集計結果を前記第 2のダル ープのユーザ数で正規化し、正規化した前記第 1のグループの集計結果から正規化 した前記第 2のグループの集計結果を減算し、減算結果に基づレ、て前記第 1のグノレ ープに特有の前記推薦情報を生成することが好ましい。
[0474] この構成によれば、第 1のグループに含まれる操作情報の集計結果が第 1のグノレ ープのユーザ数で正規化され、第 2のグループに含まれる操作情報の集計結果が 第 2のグループのユーザ数で正規化され、正規化された第 1のグループの集計結果 から正規化した第 2のグループの集計結果が減算され、減算結果に基づいて第 1の グループに特有の推薦情報が生成される。
[0475] したがって、正規化された第 1のグループの集計結果から正規化した第 2のグルー プの集計結果が減算されるので、一般的に嗜好度の高い番組を排除し、特定のュ 一ザの嗜好に特化した推薦情報を生成することができる。
[0476] また、上記の番組推薦システムにおいて、前記推薦情報生成部は、前記第 1のグ ループに含まれる前記操作情報の tf (Term Frequency)を算出し、前記第 2のグ ノレープに含まれる前記操作情報の idf (Inverse Document Frequency)を算出 し、前記 tfと前記 idfとに基づいて前記操作情報毎の tf ' idf値を算出し、前記操作情 報毎の tf ' idf値に基づいて、前記第 1のグループに特有の前記推薦情報を生成する ことが好ましい。
[0477] この構成によれば、第 1のグループに含まれる操作情報の tf (Term Frequency) が算出され、第 2のグループに含まれる操作情報の idf (Inverse Document Fre quency)が算出され、 tfと idfとに基づいて操作情報毎の tf ' idf値が算出される。そし て、操作情報毎の tf ' idf値に基づいて、第 1のグループに特有の推薦情報が生成さ れる。
[0478] したがって、操作情報毎の tf ' idf値に基づいて、第 1のグループに特有の推薦情 報が生成されるので、一般的に嗜好度の高い番組を排除し、特定のユーザの嗜好に 特化した番組を推薦することができる。
[0479] 本発明の他の局面に係る番組視聴端末は、放送波又は通信データに含まれる番 組を受信する番組受信部と、前記番組受信部によって受信された前記番組に対する ユーザの操作を表す前記操作情報の入力を受け付ける操作受付部と、前記操作受 付部によって受け付けられた前記操作情報を、ネットワークを介して通信可能に接続 され、前記ユーザの嗜好に合った番組に関する推薦情報を前記操作情報に応じて 作成する番組推薦サーバに送信する操作情報送信部と、前記番組推薦サーバによ つて送信された前記推薦情報を受信する推薦情報受信部と、前記推薦情報受信部 によって受信された前記推薦情報に基づいて、番組の選択、記録、再生及び消去の うちの少なくとも 1つを行う番組制御部とを備える。
[0480] 本発明の他の局面に係る番組視聴プログラムは、放送波又は通信データに含まれ る番組を受信する番組受信部と、前記番組受信部によって受信された前記番組に対 するユーザの操作を表す前記操作情報の入力を受け付ける操作受付部と、前記操 作受付部によって受け付けられた前記操作情報を、ネットワークを介して通信可能に 接続され、前記ユーザの嗜好に合った番組に関する推薦情報を前記操作情報に応 じて作成する番組推薦サーバに送信する操作情報送信部と、前記番組推薦サーバ によって送信された前記推薦情報を受信する推薦情報受信部と、前記推薦情報受 信部によって受信された前記推薦情報に基づいて、番組の選択、記録、再生及び消 去のうちの少なくとも 1つを行う番組制御部としてコンピュータを機能させる。
[0481] 本発明の他の局面に係る番組視聴方法は、放送波又は通信データに含まれる番 組を受信する番組受信ステップと、前記番組受信ステップにお!/、て受信された前記 番組に対するユーザの操作を表す前記操作情報の入力を受け付ける操作受付ステ ップと、前記操作受付ステップにおいて受け付けられた前記操作情報を、ネットヮー クを介して通信可能に接続され、前記ユーザの嗜好に合った番組に関する推薦情報 を前記操作情報に応じて作成する番組推薦サーバに送信する操作情報送信ステツ プと、前記番組推薦サーバによって送信された前記推薦情報を受信する推薦情報 受信ステップと、前記推薦情報受信ステップにおいて受信された前記推薦情報に基 づいて、番組の選択、記録、再生及び消去のうちの少なくとも 1つを行う番組制御ス テツプとを含む。
[0482] これらの構成によれば、放送波又は通信データに含まれる番組が受信され、受信さ れた番組に対するユーザの操作を表す操作情報の入力が受け付けられる。そして、 受け付けられた操作情報が、ネットワークを介して通信可能に接続され、ユーザの嗜 好に合った番組に関する推薦情報を操作情報に応じて作成する番組推薦サーバに 送信される。その後、番組推薦サーバによって送信された推薦情報が受信され、受 信された推薦情報に基づいて、番組の選択、記録、再生及び消去のうちの少なくとも 1つが fiわれる。
[0483] したがって、ユーザの嗜好に応じた番組が番組推薦サーバにより推薦されるので、 ユーザの嗜好に応じた番組の選択、記録、再生及び消去のうちの少なくとも 1つを行 うこと力 Sでさる。
[0484] 本発明の他の局面に係る番組推薦サーバは、ネットワークを介して互いに通信可 能に接続され、受信した番組を視聴する番組視聴端末によって送信された前記番組 に対するユーザの操作を表す操作情報を受信する操作情報受信部と、前記操作情 報受信部によって受信された前記操作情報を前記ユーザ毎に記憶する操作情報記 憶部と、前記操作情報受信部によって受信された前記操作情報と、前記操作情報記 憶部に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1の グループにグルーピングする第 1のグルーピング部と、前記第 1のグルーピング部に よってグルーピングされた前記第 1のグループを包含する第 2のグループに前記ユー ザをグルーピングする第 2のグルーピング部と、前記第 1のグルーピング部によってグ ルービングされた前記第 1のグループに属するユーザの前記操作情報の集計結果と 、前記第 2のグルーピング部によってグルーピングされた前記第 2のグループに属す るユーザの前記操作情報の集計結果とに基づいて、前記第 1のグループに特有の 前記推薦情報を生成する推薦情報生成部と、前記推薦情報生成部によって生成さ れた前記推薦情報を前記番組視聴端末に送信する推薦情報送信部とを備える。
[0485] 本発明の他の局面に係る番組推薦プログラムは、ネットワークを介して互いに通信 可能に接続され、受信した番組を視聴する番組視聴端末によって送信された前記番 組に対するユーザの操作を表す操作情報を受信する操作情報受信部と、前記操作 情報受信部によって受信された前記操作情報を前記ユーザ毎に記憶する操作情報 記憶部と、前記操作情報受信部によって受信された前記操作情報と、前記操作情報 記憶部に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1 のグループにグルーピングする第 1のグルーピング部と、前記第 1のグルーピング部 によってグルーピングされた前記第 1のグループを包含する第 2のグループに前記ュ 一ザをグルーピングする第 2のグルーピング部と、前記第 1のグルーピング部によって グルーピングされた前記第 1のグループに属するユーザの前記操作情報の集計結 果と、前記第 2のグルーピング部によってグルーピングされた前記第 2のグループに 属するユーザの前記操作情報の集計結果とに基づいて、前記第 1のグループに特 有の前記推薦情報を生成する推薦情報生成部と、前記推薦情報生成部によって生 成された前記推薦情報を前記番組視聴端末に送信する推薦情報送信部としてコン ピュータを機能させる。
本発明の他の局面に係る番組推薦方法は、ネットワークを介して互いに通信可能 に接続され、受信した番組を視聴する番組視聴端末によって送信された前記番組に 対するユーザの操作を表す操作情報を受信する操作情報受信ステップと、前記操作 情報受信ステップにおいて受信された前記操作情報を前記ユーザ毎に操作情報記 憶部に記憶する操作情報記憶ステップと、前記操作情報受信ステップにお!/、て受信 された前記操作情報と、前記操作情報記憶部に記憶されてレ、るユーザ毎の前記操 作情報とに基づいて、前記ユーザを第 1のグループにグルーピングする第 1のグルー ビングステップと、前記第 1のグルーピングステップにおレ、てグルーピングされた前記 第 1のグループを包含する第 2のグループに前記ユーザをグルーピングする第 2のグ ルービングステップと、前記第 1のグルーピングステップにおレ、てグルーピングされた 前記第 1のグループに属するユーザの前記操作情報の集計結果と、前記第 2のグノレ 一ビング部によってグルーピングされた前記第 2のグループに属するユーザの前記 操作情報の集計結果とに基づいて、前記第 1のグループに特有の前記推薦情報を 生成する推薦情報生成ステップと、前記推薦情報生成部によって生成された前記推 薦情報を前記番組視聴端末に送信する推薦情報送信ステップとを含む。 [0487] これらの構成によれば、ネットワークを介して互いに通信可能に接続され、受信した 番組を視聴する番組視聴端末によって送信された番組に対するユーザの操作を表 す操作情報が受信され、受信された操作情報が操作情報記憶部にユーザ毎に記憶 される。そして、受信された操作情報と、操作情報記憶部に記憶されているユーザ毎 の操作情報とに基づいて、ユーザが第 1のグループにグルーピングされ、第 1のダル ープを包含する第 2のグループにユーザがグルーピングされる。第 1のグループに属 するユーザの操作情報の集計結果と、第 2のグループに属するユーザの操作情報の 集計結果とに基づいて、第 1のグループに特有の推薦情報が生成され、生成された 推薦情報が番組視聴端末に送信される。
[0488] したがって、第 1のグループに属するユーザの操作情報の集計結果に基づいて、 1 のユーザと同一嗜好の他のユーザによって操作されている番組が抽出され、第 1の グループを包含する第 2のグループに属するユーザの操作情報の集計結果に基づ いて、全体的に嗜好されている番組が抽出され、第 1のグループに基づいて抽出さ れた番組から第 2のグループに基づいて抽出された番組の影響が排除されるので、 一般的に嗜好度の高い番組を排除し、特定のユーザの嗜好に特化した番組を推薦 すること力 Sでさる。
[0489] 本発明によれば、第 1のグループに属するユーザの操作情報の集計結果に基づい て、 1のユーザと同一嗜好の他のユーザによって操作されている番組が抽出され、第 1のグループを包含する第 2のグループに属するユーザの操作情報の集計結果に基 づいて、全体的に嗜好されている番組が抽出され、第 1のグループに基づいて抽出 された番組から第 2のグループに基づいて抽出された番組の影響が排除されるので 、一般的に嗜好度の高い番組を排除し、特定のユーザの嗜好に特化した番組を推 薦すること力 Sでさる。
産業上の利用可能性
[0490] 本発明に係る番組推薦システム、番組視聴端末、番組視聴プログラム、番組視聴 方法、番組推薦サーバ、番組推薦プログラム及び番組推薦方法は、一般的に嗜好 度の高!/、番組を排除し、特定のユーザの嗜好に特化した番組を推薦することができ 、受信した番組を視聴する番組視聴端末、番組視聴プログラム及び番組視聴方法、 ユーザの嗜好に合った番組に関する推薦情報を操作情報に応じて作成する番組推 薦サーバ、番組推薦プログラム及び番組推薦方法、並びに番組視聴端末と番組推 薦サーバとを備える番組推薦システムとして有用である。

Claims

請求の範囲
受信した番組を視聴する番組視聴端末と、
前記番組視聴端末とネットワークを介して互いに通信可能に接続され、前記番組に 対するユーザの操作を表す操作情報を前記番組視聴端末から取得し、前記ユーザ の嗜好に合った番組に関する推薦情報を前記操作情報に応じて作成する番組推薦 サーバとを備える番組推薦システムであって、
前記番組視聴端末は、
前記操作情報の入力を受け付ける操作受付部と、
前記操作受付部によって受け付けられた前記操作情報を前記番組推薦サーバに 送信する操作情報送信部とを備え、
前記番組推薦サーバは、
前記操作情報送信部によって送信された前記操作情報を受信する操作情報受信 部と、
前記操作情報受信部によって受信された前記操作情報を前記ユーザ毎に記憶す る操作情報記憶部と、
前記操作情報受信部によって受信された前記操作情報と、前記操作情報記憶部 に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1のダル ープにグルーピングする第 1のグルーピング部と、
前記第 1のグルーピング部によってグルーピングされた前記第 1のグループを包含 する第 2のグループに前記ユーザをグルーピングする第 2のグルーピング部と、 前記第 1のグルーピング部によってグルーピングされた前記第 1のグループに属す るユーザの前記操作情報の集計結果と、前記第 2のグルーピング部によってグルー ビングされた前記第 2のグループに属するユーザの前記操作情報の集計結果とに基 づいて、前記第 1のグループに特有の前記推薦情報を生成する推薦情報生成部と、 前記推薦情報生成部によって生成された前記推薦情報を前記番組視聴端末に送 信する推薦情報送信部とを備え、
前記番組視聴端末は、
前記推薦情報送信部によって送信された前記推薦情報を受信する推薦情報受信 部と、
前記推薦情報受信部によって受信された前記推薦情報に基づいて、番組の選択、 記録、再生及び消去のうちの少なくとも 1つを行う番組制御部とをさらに備えることを 特徴とする番組推薦システム。
[2] 前記番組視聴端末は、前記ユーザによる前記番組内における再生位置のマーキ ングを受け付けるマーキング受付部をさらに備え、
前記操作情報は、前記マーキング受付部によってマーキングされた前記番組内に おける再生位置に対応する時間を示すマーキング時間情報を含むことを特徴とする 請求項 1記載の番組推薦システム。
[3] 前記番組は、表示画面を複数の領域に分割した状態で放送され、
前記番組視聴端末は、前記表示画面上における前記複数の領域のうちの少なくと も 1つの領域の前記ユーザによる選択を受け付ける画面内選択受付部をさらに備え 前記操作情報は、前記画面内選択受付部によって選択が受け付けられた時点の 番組内の時間情報を含むことを特徴とする請求項 1記載の番組推薦システム。
[4] 前記番組は、表示画面を複数の領域に分割した状態で放送され、
前記番組視聴端末は、前記表示画面上における前記複数の領域のうちの少なくと も 1つの領域の前記ユーザによる選択を受け付ける画面内選択受付部をさらに備え 前記操作情報は、前記画面内選択受付部によって選択が受け付けられた前記表 示画面上における位置情報を含むことを特徴とする請求項 1記載の番組推薦システ ム。
[5] 前記推薦情報は、前記複数の領域のうち、ユーザに選択された前記領域を識別す るための領域識別情報を含むことを特徴とする請求項 3記載の番組推薦システム。
[6] 前記推薦情報は、推薦する番組の再生開始位置に関する再生開始時間情報を含 むことを特徴とする請求項 1記載の番組推薦システム。
[7] 前記推薦情報は、推薦する番組を構成する複数のパケットのうちの特定パケットを 識別するためのパケット識別情報を含むことを特徴とする請求項 1記載の番組推薦シ ステム。
[8] 前記第 1のグルーピング部は、前記操作情報受信部によって受信された前記操作 情報と同等の操作情報を持ったユーザ群を前記操作情報記憶部から抽出し、前記 ユーザ群を前記第 1のグループとしてグルーピングすることを特徴とする請求項 1記 載の番組推薦システム。
[9] 前記操作情報は、ユーザの操作対象となった番組を識別するための番組識別情 報を含み、
前記第 1のグルーピング部は、前記操作情報受信部によって受信された前記操作 情報に含まれる前記番組識別情報と同一の番組識別情報を持ったユーザ群を前記 操作情報記憶部から抽出し、前記ユーザ群を前記第 1のグループとしてグルーピン グすることを特徴とする請求項 1記載の番組推薦システム。
[10] 前記第 1のグルーピング部は、前記操作情報受信部によって受信された前記操作 情報に含まれる前記マーキング時間情報と時間的重なりのあるマーキング時間情報 を持ったユーザ群を前記操作情報記憶部から抽出し、前記ユーザ群を前記第 1のグ ループとしてグルーピングすることを特徴とする請求項 2記載の番組推薦システム。
[11] 前記第 1のグルーピング部は、前記操作情報受信部によって受信された前記操作 情報に含まれる前記領域識別情報と同一の領域識別情報を持ったユーザ群を前記 操作情報記憶部から抽出し、前記ユーザ群を前記第 1のグループとしてグルーピン グすることを特徴とする請求項 5記載の番組推薦システム。
[12] 前記第 2のグルーピング部は、前記番組推薦サーバに予め登録されている全ての ユーザを前記第 2のグループとしてグルーピングすることを特徴とする請求項 1記載 の番組推薦システム。
[13] 前記第 2のグルーピング部は、前記番組推薦サーバに予め登録されているユーザ によって予め入力された属性情報、又は前記番組推薦サーバに予め登録されている ユーザから抽出された属性情報と同等の属性情報を持った複数のユーザを前記第 2 のグループとしてグルーピングすることを特徴とする請求項 1記載の番組推薦システ ム。
[14] 前記推薦情報生成部は、前記第 1のグループに含まれる前記操作情報の集計結 果を前記第 1のグループのユーザ数で正規化し、前記第 2のグループに含まれる前 記操作情報の集計結果を前記第 2のグループのユーザ数で正規化し、正規化した 前記第 1のグループの集計結果から正規化した前記第 2のグループの集計結果を減 算し、減算結果に基づいて前記第 1のグループに特有の前記推薦情報を生成するこ とを特徴とする請求項 1記載の番組推薦システム。
[15] 前記推薦情報生成部は、前記第 1のグループに含まれる前記操作情報の tf (Ter m Frequency)を算出し、前記第 2のグループに含まれる前記操作情報の idf (Inv erse Document Frequencyj ¾r算出し、冃 ij citfと冃 ij ciidfと(こ っレヽて冃 ij記操作 情報毎の tf ' idf値を算出し、前記操作情報毎の tf ' idf値に基づいて、前記第 1のグ ループに特有の前記推薦情報を生成することを特徴とする請求項 1記載の番組推薦 システム。
[16] 放送波又は通信データに含まれる番組を受信する番組受信部と、
前記番組受信部によって受信された前記番組に対するユーザの操作を表す前記 操作情報の入力を受け付ける操作受付部と、
前記操作受付部によって受け付けられた前記操作情報を、ネットワークを介して通 信可能に接続され、前記ユーザの嗜好に合った番組に関する推薦情報を前記操作 情報に応じて作成する番組推薦サーバに送信する操作情報送信部と、
前記番組推薦サーバによって送信された前記推薦情報を受信する推薦情報受信 部と、
前記推薦情報受信部によって受信された前記推薦情報に基づいて、番組の選択、 記録、再生及び消去のうちの少なくとも 1つを行う番組制御部とを備えることを特徴と する番組視聴端末。
[17] 放送波又は通信データに含まれる番組を受信する番組受信部と、
前記番組受信部によって受信された前記番組に対するユーザの操作を表す前記 操作情報の入力を受け付ける操作受付部と、
前記操作受付部によって受け付けられた前記操作情報を、ネットワークを介して通 信可能に接続され、前記ユーザの嗜好に合った番組に関する推薦情報を前記操作 情報に応じて作成する番組推薦サーバに送信する操作情報送信部と、 前記番組推薦サーバによって送信された前記推薦情報を受信する推薦情報受信 部と、
前記推薦情報受信部によって受信された前記推薦情報に基づいて、番組の選択、 記録、再生及び消去のうちの少なくとも 1つを行う番組制御部としてコンピュータを機 能させることを特徴とする番組視聴プログラム。
[18] 放送波又は通信データに含まれる番組を受信する番組受信ステップと、
前記番組受信ステップにおいて受信された前記番組に対するユーザの操作を表す 前記操作情報の入力を受け付ける操作受付ステップと、
前記操作受付ステップにおレ、て受け付けられた前記操作情報を、ネットワークを介 して通信可能に接続され、前記ユーザの嗜好に合った番組に関する推薦情報を前 記操作情報に応じて作成する番組推薦サーバに送信する操作情報送信ステップと、 前記番組推薦サーバによって送信された前記推薦情報を受信する推薦情報受信 前記推薦情報受信ステップにおいて受信された前記推薦情報に基づいて、番組の 選択、記録、再生及び消去のうちの少なくとも 1つを行う番組制御ステップとを含むこ とを特徴とする番組視聴方法。
[19] ネットワークを介して互いに通信可能に接続され、受信した番組を視聴する番組視 聴端末によって送信された前記番組に対するユーザの操作を表す操作情報を受信 する操作情報受信部と、
前記操作情報受信部によって受信された前記操作情報を前記ユーザ毎に記憶す る操作情報記憶部と、
前記操作情報受信部によって受信された前記操作情報と、前記操作情報記憶部 に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1のダル ープにグルーピングする第 1のグルーピング部と、
前記第 1のグルーピング部によってグルーピングされた前記第 1のグループを包含 する第 2のグループに前記ユーザをグルーピングする第 2のグルーピング部と、 前記第 1のグルーピング部によってグルーピングされた前記第 1のグループに属す るユーザの前記操作情報の集計結果と、前記第 2のグルーピング部によってグルー ビングされた前記第 2のグループに属するユーザの前記操作情報の集計結果とに基 づいて、前記第 1のグループに特有の前記推薦情報を生成する推薦情報生成部と、 前記推薦情報生成部によって生成された前記推薦情報を前記番組視聴端末に送 信する推薦情報送信部とを備えることを特徴とする番組推薦サーバ。
[20] ネットワークを介して互いに通信可能に接続され、受信した番組を視聴する番組視 聴端末によって送信された前記番組に対するユーザの操作を表す操作情報を受信 する操作情報受信部と、
前記操作情報受信部によって受信された前記操作情報を前記ユーザ毎に記憶す る操作情報記憶部と、
前記操作情報受信部によって受信された前記操作情報と、前記操作情報記憶部 に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1のダル ープにグルーピングする第 1のグルーピング部と、
前記第 1のグルーピング部によってグルーピングされた前記第 1のグループを包含 する第 2のグループに前記ユーザをグルーピングする第 2のグルーピング部と、 前記第 1のグルーピング部によってグルーピングされた前記第 1のグループに属す るユーザの前記操作情報の集計結果と、前記第 2のグルーピング部によってグルー ビングされた前記第 2のグループに属するユーザの前記操作情報の集計結果とに基 づいて、前記第 1のグループに特有の前記推薦情報を生成する推薦情報生成部と、 前記推薦情報生成部によって生成された前記推薦情報を前記番組視聴端末に送 信する推薦情報送信部としてコンピュータを機能させることを特徴とする番組推薦プ ログラム。
[21] ネットワークを介して互いに通信可能に接続され、受信した番組を視聴する番組視 聴端末によって送信された前記番組に対するユーザの操作を表す操作情報を受信 する操作情報受信ステップと、
前記操作情報受信ステップにおいて受信された前記操作情報を前記ユーザ毎に 操作情報記憶部に記憶する操作情報記憶ステップと、
前記操作情報受信ステップにおレ、て受信された前記操作情報と、前記操作情報記 憶部に記憶されているユーザ毎の前記操作情報とに基づいて、前記ユーザを第 1の グノレープにグノレーピングする第 1のグノレーピングステップと、
前記第 1のグルーピングステップにおいてグルーピングされた前記第 1のグループ を包含する第 2のグループに前記ユーザをグルーピングする第 2のグルーピングステ 前記第 1のグルーピングステップにおいてグルーピングされた前記第 1のグループ に属するユーザの前記操作情報の集計結果と、前記第 2のグルーピング部によって グルーピングされた前記第 2のグループに属するユーザの前記操作情報の集計結 果とに基づいて、前記第 1のグループに特有の前記推薦情報を生成する推薦情報 生成ステップと、
前記推薦情報生成部によって生成された前記推薦情報を前記番組視聴端末に送 信する推薦情報送信ステップとを含むことを特徴とする番組推薦方法。
PCT/JP2007/065632 2006-08-10 2007-08-09 Système de recommandation de programme, terminal de consultation de programme, programme de consultation de programme, procédé de consultation de programme, serveur de recommandation de programme, programme de recommandation de programme, et procédé de recommandation de programme WO2008018550A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP07792282.1A EP2051509B1 (en) 2006-08-10 2007-08-09 Program recommendation system, program view terminal, program view program, program view method, program recommendation server, program recommendation program, and program recommendation method
US12/377,089 US8296803B2 (en) 2006-08-10 2007-08-09 Program recommendation system, program view terminal, program view program, program view method, program recommendation server, program recommendation program, and program recommendation method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006-219017 2006-08-10
JP2006219017 2006-08-10

Publications (1)

Publication Number Publication Date
WO2008018550A1 true WO2008018550A1 (fr) 2008-02-14

Family

ID=39033079

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/065632 WO2008018550A1 (fr) 2006-08-10 2007-08-09 Système de recommandation de programme, terminal de consultation de programme, programme de consultation de programme, procédé de consultation de programme, serveur de recommandation de programme, programme de recommandation de programme, et procédé de recommandation de programme

Country Status (4)

Country Link
US (1) US8296803B2 (ja)
EP (1) EP2051509B1 (ja)
JP (1) JP5236700B2 (ja)
WO (1) WO2008018550A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2197203A2 (en) 2008-12-10 2010-06-16 Samsung Electronics Co., Ltd. Broadcast receiving apparatus and control method thereof
JP2013508878A (ja) * 2009-10-27 2013-03-07 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 共起セレンディピティレコメンダ
JP2020064662A (ja) * 2019-12-27 2020-04-23 Kddi株式会社 番組推薦装置、番組推薦方法及び番組推薦プログラム

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7559017B2 (en) 2006-12-22 2009-07-07 Google Inc. Annotation framework for video
US9071729B2 (en) 2007-01-09 2015-06-30 Cox Communications, Inc. Providing user communication
US9135334B2 (en) 2007-01-23 2015-09-15 Cox Communications, Inc. Providing a social network
US20090063994A1 (en) * 2007-01-23 2009-03-05 Cox Communications, Inc. Providing a Content Mark
JP2009043156A (ja) * 2007-08-10 2009-02-26 Toshiba Corp 番組検索装置および番組検索方法
US8181197B2 (en) * 2008-02-06 2012-05-15 Google Inc. System and method for voting on popular video intervals
US8112702B2 (en) * 2008-02-19 2012-02-07 Google Inc. Annotating video intervals
US8566353B2 (en) * 2008-06-03 2013-10-22 Google Inc. Web-based system for collaborative generation of interactive videos
US20100011020A1 (en) * 2008-07-11 2010-01-14 Motorola, Inc. Recommender system
US8826117B1 (en) 2009-03-25 2014-09-02 Google Inc. Web-based system for video editing
US8132200B1 (en) * 2009-03-30 2012-03-06 Google Inc. Intra-video ratings
US8707363B2 (en) * 2009-12-22 2014-04-22 Eloy Technology, Llc Synchronization guides for group video watching
US20110289075A1 (en) * 2010-05-24 2011-11-24 Nelson Erik T Music Recommender
WO2011151817A1 (en) * 2010-05-30 2011-12-08 Honeybee Tv Israel Ltd. Methods and system for providing time based media content suggestions
US9167302B2 (en) 2010-08-26 2015-10-20 Cox Communications, Inc. Playlist bookmarking
US20120159329A1 (en) * 2010-12-16 2012-06-21 Yahoo! Inc. System for creating anchors for media content
JP2012137991A (ja) * 2010-12-27 2012-07-19 Jvc Kenwood Corp 操作制御装置、操作制御プログラム、及び操作制御方法
US9420320B2 (en) 2011-04-01 2016-08-16 The Nielsen Company (Us), Llc Methods, apparatus and articles of manufacture to estimate local market audiences of media content
KR20140006063A (ko) * 2011-04-25 2014-01-15 알까뗄 루슨트 추천 서비스들에서 사생활 보호
WO2013133879A1 (en) * 2012-03-08 2013-09-12 Thomson Licensing A method of recommending items to a group of users
US20130283330A1 (en) * 2012-04-18 2013-10-24 Harris Corporation Architecture and system for group video distribution
JP5420023B2 (ja) * 2012-06-08 2014-02-19 株式会社Tbsテレビ 映像関連情報送信システム及び方法、これらに用いられる関連情報送信装置
US8843951B1 (en) * 2012-08-27 2014-09-23 Google Inc. User behavior indicator
KR20140094125A (ko) * 2013-01-21 2014-07-30 삼성전자주식회사 디스플레이 장치 및 이를 이용한 사용자 맞춤형 정보 제공방법
GB2510424A (en) * 2013-02-05 2014-08-06 British Broadcasting Corp Processing audio-video (AV) metadata relating to general and individual user parameters
US9319724B2 (en) * 2013-02-28 2016-04-19 Verizon and Redbox Digital Entertainment Services, LLC Favorite media program scenes systems and methods
JPWO2014136273A1 (ja) * 2013-03-08 2017-02-09 株式会社東芝 情報配信システムおよび情報配信方法
WO2014142301A1 (ja) * 2013-03-15 2014-09-18 日本電気株式会社 情報提供システム、サーバ装置、動画表示装置、情報提供方法、およびプログラム
US9326026B2 (en) 2013-10-31 2016-04-26 At&T Intellectual Property I, Lp Method and apparatus for content distribution over a network
JP5920848B2 (ja) * 2014-02-14 2016-05-18 Necパーソナルコンピュータ株式会社 情報処理装置、情報処理方法、及びプログラム
US9807436B2 (en) * 2014-07-23 2017-10-31 Rovi Guides, Inc. Systems and methods for providing media asset recommendations for a group
JP6711275B2 (ja) * 2014-09-22 2020-06-17 ソニー株式会社 画像表示制御装置、送信装置、および画像表示制御方法、並びにプログラム
US10140379B2 (en) 2014-10-27 2018-11-27 Chegg, Inc. Automated lecture deconstruction
US10356458B2 (en) * 2017-03-06 2019-07-16 The Directv Group, Inc. Controlling content presentation and display of program information in an electronic program guide
US11601715B2 (en) 2017-07-06 2023-03-07 DISH Technologies L.L.C. System and method for dynamically adjusting content playback based on viewer emotions
JP6627042B2 (ja) * 2017-09-28 2020-01-08 有限会社NetA 情報処理装置、情報処理方法およびプログラム
US10171877B1 (en) * 2017-10-30 2019-01-01 Dish Network L.L.C. System and method for dynamically selecting supplemental content based on viewer emotions
JP7137825B2 (ja) * 2018-06-04 2022-09-15 Jcc株式会社 映像情報提供システム
US11847503B2 (en) * 2020-01-28 2023-12-19 Hewlett Packard Enterprise Development Lp Execution of functions by clusters of computing nodes
CN113382310B (zh) * 2021-06-02 2023-01-03 北京百度网讯科技有限公司 信息推荐方法及装置、电子设备和介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005039749A (ja) * 2003-07-18 2005-02-10 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2005057713A (ja) * 2003-08-07 2005-03-03 Sony Corp 情報処理装置および方法、プログラム、並びに記録媒体

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6005597A (en) * 1997-10-27 1999-12-21 Disney Enterprises, Inc. Method and apparatus for program selection
JP2000250944A (ja) * 1998-12-28 2000-09-14 Toshiba Corp 情報提供方法、情報提供装置、情報受信装置、並びに情報記述方法
AU2001247245A1 (en) * 2000-03-01 2001-09-12 Expanse Networks, Inc. Advertisment monitoring and feedback system
JP2001298677A (ja) 2000-04-14 2001-10-26 Hirofumi Naito 番組選択支援システム
US20020174428A1 (en) * 2001-03-28 2002-11-21 Philips Electronics North America Corp. Method and apparatus for generating recommendations for a plurality of users
US20030084450A1 (en) 2001-10-25 2003-05-01 Thurston Nathaniel J. Method and system for presenting personalized television program recommendation to viewers
JP4009940B2 (ja) * 2001-12-21 2007-11-21 日本電信電話株式会社 番組選択支援情報提供サービスシステムとサーバ装置および端末装置ならびに番組選択支援情報提供方法とプログラムおよび記録媒体
JP2003199084A (ja) 2001-12-27 2003-07-11 Seiko Epson Corp 番組編集システム、番組情報検索システム、番組情報取得システム及び番組編集プログラム、並びに番組編集方法
US20060085818A1 (en) 2002-11-15 2006-04-20 Bodlaender Maarten P Introducing new content items in a community-based recommendation system
JP4329436B2 (ja) 2003-07-08 2009-09-09 ソニー株式会社 コンテンツ視聴支援システム及びコンテンツ視聴支援方法、並びにコンピュータ・プログラム
US7594245B2 (en) * 2004-03-04 2009-09-22 Sharp Laboratories Of America, Inc. Networked video devices
JP2005260647A (ja) 2004-03-12 2005-09-22 Matsushita Electric Ind Co Ltd コンテンツ案内サービスシステム、コンテンツ案内装置、コンテンツ案内方法及びコンテンツ案内プログラム
JP4586446B2 (ja) * 2004-07-21 2010-11-24 ソニー株式会社 コンテンツ記録再生装置、コンテンツ記録再生方法及びそのプログラム
US8943537B2 (en) * 2004-07-21 2015-01-27 Cox Communications, Inc. Method and system for presenting personalized television program recommendation to viewers
US8181201B2 (en) * 2005-08-30 2012-05-15 Nds Limited Enhanced electronic program guides
US8141114B2 (en) * 2006-02-28 2012-03-20 Microsoft Corporation Content ratings and recommendations

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005039749A (ja) * 2003-07-18 2005-02-10 Sony Corp 情報処理装置および方法、記録媒体、並びにプログラム
JP2005057713A (ja) * 2003-08-07 2005-03-03 Sony Corp 情報処理装置および方法、プログラム、並びに記録媒体

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2051509A4 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2197203A2 (en) 2008-12-10 2010-06-16 Samsung Electronics Co., Ltd. Broadcast receiving apparatus and control method thereof
EP2197203A3 (en) * 2008-12-10 2010-07-14 Samsung Electronics Co., Ltd. Broadcast receiving apparatus and control method thereof
US9094639B2 (en) 2008-12-10 2015-07-28 Samsung Electronics Co., Ltd. Broadcasting receiving apparatus and control method thereof
US9674477B2 (en) 2008-12-10 2017-06-06 Samsung Electronics Co., Ltd. Broadcasting receiving apparatus and control method thereof
US10021460B2 (en) 2008-12-10 2018-07-10 Samsung Electronics Co., Ltd. Broadcasting receiving apparatus and control method thereof
US10397660B2 (en) 2008-12-10 2019-08-27 Samsung Electronics Co., Ltd. Broadcasting receiving apparatus and control method thereof
JP2013508878A (ja) * 2009-10-27 2013-03-07 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 共起セレンディピティレコメンダ
JP2020064662A (ja) * 2019-12-27 2020-04-23 Kddi株式会社 番組推薦装置、番組推薦方法及び番組推薦プログラム
JP6998933B2 (ja) 2019-12-27 2022-01-18 Kddi株式会社 番組推薦装置、番組推薦方法及び番組推薦プログラム

Also Published As

Publication number Publication date
EP2051509A4 (en) 2011-04-13
EP2051509A1 (en) 2009-04-22
JP5236700B2 (ja) 2013-07-17
US20100169927A1 (en) 2010-07-01
US8296803B2 (en) 2012-10-23
JP2010259105A (ja) 2010-11-11
EP2051509B1 (en) 2016-07-27

Similar Documents

Publication Publication Date Title
JP5236700B2 (ja) 番組視聴端末、番組視聴プログラム、番組視聴方法及び番組推薦サーバ
JP4593603B2 (ja) 番組推薦システム、番組視聴端末、番組視聴プログラム、番組視聴方法、番組推薦サーバ、番組推薦プログラム及び番組推薦方法
US9924228B2 (en) System and method for providing program recommendations through multimedia searching based on established viewer preferences
JP4783283B2 (ja) 番組選択システム
US8713606B2 (en) Systems and methods for generating a user profile based customized media guide with user-generated content and non-user-generated content
US9143830B2 (en) Information processing apparatus, information processing method, computer program, and information sharing system
TWI306228B (en) Information processor, informatino processing method, and recording media
US8793729B2 (en) Preferential program guide
US8453169B2 (en) Video output device and video output method
JP4458832B2 (ja) 番組抽出装置およびその制御方法
US20030237093A1 (en) Electronic program guide systems and methods for handling multiple users
US9396761B2 (en) Methods and systems for generating automatic replays in a media asset
KR20160132809A (ko) 컨텐츠의 재생 제어 방법 및 이를 수행하기 위한 컨텐츠 재생 장치
WO2005071951A1 (ja) 番組推薦装置、被番組推薦装置、および番組推薦システム
US20140114919A1 (en) Systems and methods for providing synchronized media content
KR20100069395A (ko) 얼굴 인식 기술을 이용하여 사용자에 따라 특화된 아이피티브이 콘텐츠를 추천하는 시스템 및 방법
US11974014B2 (en) Systems and methods for dynamically educating users on sports terminology
US20130177288A1 (en) Electronic device and audio output method
WO2011118249A1 (ja) コンテンツ推薦サーバ、コンテンツ表示端末、およびコンテンツ推薦システム
KR20180049639A (ko) 전자 장치 및 이의 제어 방법
EP2884758A1 (en) Electronic apparatus, scene list processing method and information storage medium
JP5198643B1 (ja) 映像解析情報アップロード装置及び映像視聴システム及び方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07792282

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12377089

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2007792282

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2007792282

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: RU