JP5591638B2 - Method and apparatus for delivery of targeted video programming - Google Patents

Method and apparatus for delivery of targeted video programming Download PDF

Info

Publication number
JP5591638B2
JP5591638B2 JP2010208382A JP2010208382A JP5591638B2 JP 5591638 B2 JP5591638 B2 JP 5591638B2 JP 2010208382 A JP2010208382 A JP 2010208382A JP 2010208382 A JP2010208382 A JP 2010208382A JP 5591638 B2 JP5591638 B2 JP 5591638B2
Authority
JP
Japan
Prior art keywords
program
viewer
preference
user
video
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
JP2010208382A
Other languages
Japanese (ja)
Other versions
JP2011035917A (en
Inventor
イスマイル,ラビーブ・ケイ
ゴゴイ,アマール・エヌ
メータ,マヌ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of JP2011035917A publication Critical patent/JP2011035917A/en
Application granted granted Critical
Publication of JP5591638B2 publication Critical patent/JP5591638B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44222Analytics of user selections, e.g. selection of programs or purchase activity
    • H04N21/44224Monitoring of user activity on external systems, e.g. Internet browsing
    • 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/25883Management of end-user data being end-user demographical data, e.g. age, family status or address
    • 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/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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4147PVR [Personal Video Recorder]
    • 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/454Content or additional data filtering, e.g. blocking advertisements
    • 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/4668Learning process for intelligent management, e.g. learning user preferences for recommending movies for recommending content, e.g. movies
    • 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/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only

Description

この発明は、ターゲット決めされたビデオ番組編成の、視聴者への配送に一般的に関し、より特定的には、視聴者の特徴にターゲット決めされて、ターゲット決めされたかまたはカスタマイズされた、見掛け上は線形のテレビ番組をもたらすビデオ番組編成(video programming)の線形配送(linear delivery)のための、さまざまな視聴者特徴の決定に関する。 The present invention relates generally to the delivery of targeted video programming to viewers, and more specifically, targeted or customized, apparently targeted to viewer characteristics. Relates to the determination of various viewer characteristics for linear delivery of video programming resulting in a linear television program.

現在では、後で見るために個人がテレビ番組を録画することが、市販のビデオカセットレコーダ(VCR)を用いて一般的に行なわれている。典型的に、VCRは、マニュアルで録画モードにされてもよくまたは、選択された番組を後で録画するようにプログラムされてもよい。VCRをプログラムするため、ユーザは、録画を望む番組の日付、時間およびチャンネルを入力するかまたは、所望の番組の識別コードを入力する。
テレビ番組の視聴者は、どの番組を見るかについて、より多くの選択肢を有することが増えている。たとえば、ケーブルテレビは、従来のテレビアンテナを介して利用可能なチャンネルと比べて、視聴者が利用可能なチャンネル数を劇的に増加させている。デジタル衛星システムはさらに多くの視聴選択肢を与えている。ケーブルテレビシステムを介した番組のデジタル放送は、視聴者が利用可能なチャンネル数をさらに増加させることが予期される。
視聴選択肢の数の増加の1つの影響は、どの番組を見るかを決める難しさが増していることである。人々、特にスケジュールが忙しい人は、番組を選択しかつ視聴してどの番組を好むかまたは好まないかを決定する時間を有しないことがある。そうでなくても、視聴者にとって望ましいかもしれない番組は、その番組が視聴者にとって都合の悪い時間に放送されれば、視聴されることがないであろう。ユーザは視聴するある番組を選択し、その番組を好むかどうかを決定し得る。しかしながら、毎週数百もの番組選択がある状態では、これを行なうにはかなりの時間がかかる可能性があり、ある望ましい番組を見逃してしまう可能性が高い。
TV視聴者の非常に小さな集合が見る番組をモニタすることによって母集団のテレビ視聴習慣をサンプリングする企業が存在する。これらの企業は、サンプルの生成のために彼らがモニタする人々について他の人口統計情報も集める。これらのサンプルは、サンプルがカバーする母集団のテレビ視聴習慣についての貴重な情報を与える。これらのサンプルを定期的に分析することにより、テレビ視聴における母集団の挙動パターンを説明する一般的数学モデルを形成することができる。各個人視聴者は、テレビ番組に対して非常に個人的な好みを有するが、これは、一般的母集団のサンプル挙動から導出されるモデルとはかなり異なり得る。同時に、単一のユーザの挙動をモニタすることによって導出される数学モデルは、短期間の間に単一のユーザしか見ないことによって集められる限られた情報量のために、不正確であり得る。サンプル母集団の挙動パターンのサンプル全体をすべての視聴者装置に送って数学モデルの計算を支援することは、この情報を各装置に伝送するのに必要な帯域幅の高コストと、視聴者装置がこの情報を処理するための処理電力およびメモリ必要量とのために、逆効果である。すべてのユーザの個人的視聴習慣をサーバに送って、個々のユーザについて数学モデルを計算することは、視聴者のプライバシーに関する懸念を生じさせるとともに、視聴者装置からサーバへの戻りチャンネルも必要になる。
正確に視聴者の個人的嗜好を自動決定するメカニズムがあれば、非常に個人的なTV視聴環境を視聴者に提供することができる。多数のメンバーがいる世帯の場合、個々のメンバーおよび彼らの嗜好を正しく識別することにより、装置は、個々の視聴者にとって最も満足感のある娯楽経験を与えることができる。
テキストデータを視聴者に提供するための方法が開発されてきた。クローズドキャプションエンコード法は、クローズドキャプションテキストデータをビデオ信号の垂直帰線消去間隔に挿入することにより、テキストデータを、その関連のビデオデータと同期して伝送する。しかしながら、クローズドキャプションテキストデータは、ビデオ番組編成の作成者によってビデオ信号の垂直帰線消去間隔に挿入されなければならない。その結果、ヘッドエンドオペレータがビデオ信号の垂直帰線消去間隔を使って、スポーツ、天気、株式市場、ニュース、広告およびその他のデータなどの、他のテキストデータを挿入することができない。
電子番組ガイド(以下“EPG”)は、視聴者に、ケーブルテレビチャンネルの今後のテレビ番組の画面上リストを与える。EPGデータサービスがEPGを提供する。EPGデータはケーブルヘッドでビデオ信号に変換される。EPGデータはケーブルヘッドでビデオ信号に変換され、専用ケーブルテレビチャンネルによって視聴者のテレビに伝送される。専用ケーブルテレビチャンネルにチューニングした後、視聴者は、所望の期間の間番組が表示されるのを待つ。EPGデータを用いるとき、ケーブルヘッドエンドオペレータは別個のケーブルテレビチャンネルをEPGデータ専用にしかつ、EPGサービスプロバイダが提供するEPGデータからビデオ信号を発生しなければならないことがしばしばある。
この問題を解決する1つの方法は、FM搬送波へのEPGデータの変調と、ケーブルテレビチャンネルの1つの上にビデオ信号を有するFM搬送波を伝送することとである。FM搬送波からEPGデータを復調する専用周辺装置を視聴者のテレビチューナに設ける。次に、視聴者のテレビ上にEPGデータを提示することを視聴者が要求するまでEPGデータを保存する。選択されると、このときにEPGデータが他のビデオ番組編成の代わりに視聴者のテレビに表示される。
テキストデータおよび電子EPGデータの流れを管理するデータコントローラが米国特許第5,579,055号に開示されている。
さらに、テレビ番組の嗜好エージェントはベイズ法を用いてきた。たとえば、米国特許第5,704,017号(以下“’017特許”)を参照されたい。しかしながら、’017特許では、コラボラティブフィルタリングシステムを用いて、視聴者の属性に基づいてテレビ視聴者の所望の嗜好を予測する。’017を実現するシステムは2方向通信ネットワークを介して信念ネットワークと通信する必要があり、視聴者の個人情報をネットワークに開示してしまう。’017は、視聴者の選択に寄与するさまざまな特色を識別するのに使用可能な、テレビ番組について利用可能な豊富なEPG情報を活用しない。
Currently, it is common for individuals to record television programs for later viewing using commercially available video cassette recorders (VCRs). Typically, the VCR may be manually placed into a recording mode or programmed to record the selected program later. To program a VCR, the user enters the date, time and channel of the program he wishes to record, or enters the identification code of the desired program.
Increasingly, viewers of television programs have more choices about which programs to watch. For example, cable television has dramatically increased the number of channels available to viewers compared to channels available via conventional television antennas. Digital satellite systems offer more viewing options. Digital broadcasting of programs via cable television systems is expected to further increase the number of channels available to viewers.
One effect of the increased number of viewing options is the increased difficulty of deciding which program to watch. People, particularly those who are busy with schedules, may not have time to select and watch programs to decide which programs they like or dislike. Otherwise, a program that may be desirable for the viewer will not be viewed if the program is broadcast at a time that is inconvenient for the viewer. The user can select a program to watch and decide whether to like the program. However, in the situation where there are hundreds of program selections each week, this can take a significant amount of time and it is likely that some desired program will be missed.
There are companies that sample a population's television viewing habits by monitoring programs that a very small set of TV viewers watch. These companies also collect other demographic information about the people they monitor for sample generation. These samples provide valuable information about the population's television viewing habits that the samples cover. By regularly analyzing these samples, a general mathematical model can be formed that describes the behavioral patterns of the population during television viewing. Each individual viewer has a very personal preference for television programs, which can be quite different from the model derived from the general population sample behavior. At the same time, mathematical models derived by monitoring the behavior of a single user can be inaccurate due to the limited amount of information gathered by seeing only a single user in a short period of time. . Supporting the calculation of the mathematical model by sending the entire sample of the behavior pattern of the sample population to all viewer devices, the high bandwidth required to transmit this information to each device, and the viewer device Is counterproductive because of the processing power and memory requirements to process this information. Sending all users' personal viewing habits to the server and calculating a mathematical model for each user raises concerns about the viewer's privacy and also requires a return channel from the viewer device to the server .
With a mechanism that automatically determines the viewer's personal preferences accurately, a very personal TV viewing environment can be provided to the viewer. For households with a large number of members, by correctly identifying individual members and their preferences, the device can provide the most satisfying entertainment experience for individual viewers.
Methods have been developed for providing text data to viewers. The closed caption encoding method inserts closed caption text data into the vertical blanking interval of the video signal, thereby transmitting the text data in synchronization with the associated video data. However, closed caption text data must be inserted by the video program creator in the vertical blanking interval of the video signal. As a result, the headend operator cannot use the vertical blanking interval of the video signal to insert other text data such as sports, weather, stock market, news, advertisements and other data.
An electronic program guide (hereinafter “EPG”) gives viewers an on-screen list of upcoming TV programs on cable TV channels. An EPG data service provides EPG. The EPG data is converted into a video signal by the cable head. The EPG data is converted into a video signal by a cable head and transmitted to a viewer's television through a dedicated cable television channel. After tuning to a dedicated cable television channel, the viewer waits for the program to be displayed for a desired period of time. When using EPG data, cable head end operators often have to dedicate a separate cable television channel to EPG data and generate a video signal from EPG data provided by an EPG service provider.
One way to solve this problem is to modulate the EPG data into an FM carrier and transmit an FM carrier with a video signal on one of the cable television channels. A dedicated peripheral device for demodulating EPG data from the FM carrier is provided in the viewer's television tuner. The EPG data is then stored until the viewer requests that the EPG data be presented on the viewer's television. Once selected, the EPG data is then displayed on the viewer's television instead of other video programming.
A data controller for managing the flow of text data and electronic EPG data is disclosed in US Pat. No. 5,579,055.
Furthermore, preference agents for television programs have used the Bayesian method. See, for example, US Pat. No. 5,704,017 (hereinafter “the '017 patent”). However, in the '017 patent, a collaborative filtering system is used to predict a television viewer's desired preferences based on viewer attributes. A system that implements' 017 needs to communicate with a belief network via a two-way communication network, and the personal information of the viewer is disclosed to the network. '017 does not take advantage of the rich EPG information available for television programs that can be used to identify various features that contribute to viewer choice.

この発明の目的は、特定の視聴者、典型的にはテレビの視聴者にターゲット決めされたビデオデータを選択しかつ配送する方法および装置を提供することである。ビデオデータは、視聴特徴、人口統計特徴、買い物特徴およびその他を含む、視聴者のさまざまな特徴に従ってターゲット決めされ得る。 It is an object of the present invention to provide a method and apparatus for selecting and delivering targeted video data to a particular viewer, typically a television viewer. Video data may be targeted according to various viewer characteristics, including viewing characteristics, demographic characteristics, shopping characteristics, and others.

したがって、この発明の目的は、テレビ視聴者のユーザ嗜好を決定するための方法および装置を提供することである。この発明は、サンプル視聴習慣とともに一般的母集団の関連の人口統計的およびその他の特徴を分析して、母集団の視聴パターンと関連の特徴との間の関係を説明しかつ放送ネットワークなどの1方向通信チャネルを用いて視聴者装置と通信可能な数学モデルのパラメータを生成する方法を規定する。この発明は、視聴者装置によってこれらのパラメータを用いて、視聴習慣についての個人情報を外部に漏らすことなく個々の視聴者のユーザ嗜好を計算するための方法も規定する。
この発明は、計算された視聴者嗜好に頼って、ビデオデータを見るのに同じ装置を利用する1人またはそれ以上の個々の視聴者にとって関心があるであろう放送コンテンツを記憶しかつ提示する装置も詳細に説明する。したがって、この発明は、たとえば、単一のテレビ受像機を有する多数視聴者世帯などの、同じ視聴装置にアクセスする多数の視聴者の嗜好を計算する方法も開示する。
別の局面では、この発明は、ユーザが視聴する番組をモニタすることによりユーザの視聴嗜好を決定しかつ、ユーザの嗜好に対応する番組の録画をさせる。この発明の原則に従うと、テレビ番組の録画をさせるための装置は、装置のユーザが見る各テレビ番組に対応する属性情報の検索をさせるための嗜好エージェントを含む。嗜好エージェントは、属性情報の関数としてユーザの視聴嗜好を示す分類情報を生成する。録画マネージャは、分類情報に一致する属性情報を有するテレビ番組の記憶装置への録画および記憶を引き起こす。
さらなる局面では、この発明は、ユーザが視聴する番組と関連の属性情報を処理することおよび視聴者を記述する特徴のプロファイルを作成することにより、ユーザの視聴嗜好を決定する。特徴は、視聴嗜好、人口統計情報(たとえば、年齢、性別、学歴、職業、収入、政治的および宗教的傾向、配偶者の有無、性的嗜好、人種的背景、家庭および職場の地理的場所)、読書嗜好、買い物嗜好、音楽嗜好を含んでもよいが、それらに限られるものではない。
この発明の原則を用いる実施例は、有利には、視聴者のある視聴習慣に一致する番組の録画を引き起こす。したがってそのような実施例は、視聴者が自由に見ることができる、ユーザのある視聴嗜好に一致する記憶済み番組を視聴者に提供する。したがって視聴者は、数百もの可能な番組の中からどの番組を見るかを決める負担から解放される。
この発明のさらなる局面に従うと、番組は、記憶装置の利用可能な容量に従って記憶のために録画され得る。さらに、ユーザによる選択に応答してまたはユーザの視聴嗜好が示す優先順位に基づいて、番組を削除してもよい。ここでは、最も低い優先順位を有する番組が最初に削除されて、新たに録画される番組のための空きを作る。番組の優先順位はここでも時間の関数であり得る。すなわち、より最近録画された番組がより高い優先順位を与えられる。
この発明のさらなる局面に従うと、どの番組を録画するかを決めることは優先順位の関数でもあり得る。すなわち、録画を指定される番組に最も高い優先順位が与えられ、その後に、1つまたはそれ以上のユーザ特定基準に対応する属性情報を有する番組が続き、その後に、記録嗜好情報に対応する属性情報を有する番組が続く。
この発明のさらなる局面に従うと、ユーザ特定要求は、特定の番組を示す情報を含む第1のタイプの要求およびユーザの特定化に対応する属性情報を有する1つまたはそれ以上の番組を示す仕様を含む第2のタイプの要求の形であり得る。
この発明のさらなる局面に従うと、ユーザは、一時停止入力を生成することにより、ユーザが見ている現在放送中の番組の録画をさせてもよい。これは有利には、その後の視聴のために番組の残余を録画することによりユーザが現在放送中の番組の視聴を中断できるようにする。番組視聴オプションは、番組の選択ならびに、再生、一時停止、削除、早送り、巻戻しなどを含む視聴およびその他オプション用の、使いやすいインターフェイスを提供するメニューの形でユーザに与えられるであろう。
好ましくは、嗜好エージェントは、カテゴリ化パラメータに従って整理されたデータベースの形で記録嗜好情報を整理する。アナログまたはデジタルフォーマットのいずれかで番組を受信してもよい。デジタルフォーマットで記憶された番組は、追加のチャンネルの形でユーザに提示されるのが有利である。これは、単にチャンネルを切換えることによって、(録画されたかまたは放送された)番組間をユーザが容易に切換えるのを可能にする。
Accordingly, it is an object of the present invention to provide a method and apparatus for determining user preferences of television viewers. The present invention analyzes the demographic and other characteristics of the general population as well as sample viewing habits to explain the relationship between the audience viewing pattern of the general population and related characteristics, and for broadcast networks and the like. A method for generating parameters of a mathematical model that can communicate with a viewer device using a directional communication channel is defined. The present invention also defines a method for calculating user preferences of individual viewers using these parameters by the viewer device without leaking personal information about viewing habits to the outside.
The present invention relies on calculated viewer preferences to store and present broadcast content that may be of interest to one or more individual viewers who utilize the same device to view video data. The apparatus is also described in detail. Accordingly, the present invention also discloses a method for calculating the preferences of multiple viewers accessing the same viewing device, such as a multiple viewer household with a single television receiver, for example.
In another aspect, the present invention determines a user's viewing preference by monitoring a program viewed by the user and records a program corresponding to the user's preference. In accordance with the principles of the present invention, an apparatus for recording television programs includes a preference agent for retrieving attribute information corresponding to each television program viewed by a user of the apparatus. The preference agent generates classification information indicating the user's viewing preference as a function of the attribute information. The recording manager causes recording and storage of the television program having attribute information matching the classification information to the storage device.
In a further aspect, the present invention determines a user's viewing preferences by processing attribute information associated with the program that the user views and creating a profile of features that describe the viewer. Features include viewing preferences, demographic information (eg, age, gender, educational background, occupation, income, political and religious trends, marital status, sexual preference, racial background, home and work geographic location ), May include reading preferences, shopping preferences, music preferences, but is not limited thereto.
Embodiments using the principles of the present invention advantageously cause recording of programs that match a viewer's viewing habits. Thus, such an embodiment provides the viewer with a stored program that matches the user's viewing preferences that the viewer can view freely. Thus, the viewer is freed from the burden of deciding which program to watch from among hundreds of possible programs.
According to a further aspect of the invention, the program can be recorded for storage according to the available capacity of the storage device. Further, the program may be deleted in response to the selection by the user or based on the priority order indicated by the viewing preference of the user. Here, the program with the lowest priority is deleted first to make room for the newly recorded program. Program priority can again be a function of time. That is, more recently recorded programs are given higher priority.
According to a further aspect of the invention, determining which programs to record can also be a function of priority. That is, a program designated for recording is given the highest priority, followed by a program having attribute information corresponding to one or more user-specified criteria, followed by an attribute corresponding to recording preference information A program with information follows.
According to a further aspect of the invention, the user specification request has a first type request including information indicating a specific program and a specification indicating one or more programs having attribute information corresponding to the user specification. It may be in the form of a second type of request involving.
According to a further aspect of the invention, the user may record a currently broadcast program that the user is watching by generating a pause input. This advantageously allows the user to interrupt viewing of the currently broadcast program by recording the remainder of the program for subsequent viewing. Program viewing options will be given to the user in the form of menus that provide an easy-to-use interface for program selection and viewing and other options including play, pause, delete, fast forward, rewind, etc.
Preferably, the preference agent organizes the recording preference information in the form of a database organized according to the categorization parameters. Programs may be received in either analog or digital format. Programs stored in digital format are advantageously presented to the user in the form of additional channels. This allows the user to easily switch between programs (recorded or broadcast) simply by switching channels.

この発明の原則を用いる番組選択装置の高レベルブロック図である。1 is a high level block diagram of a program selection device using the principles of the present invention. この発明の原則を用いるシステムの高レベルブロック図である。1 is a high level block diagram of a system that employs the principles of the present invention. 番組情報の2つの例を示す図である。It is a figure which shows two examples of program information. 特色および好み値の例を示す図である。It is a figure which shows the example of a spot color and a preference value. 代表的標本上で行なわれるデータ分析を示すフローチャートの図である。FIG. 6 is a flow chart illustrating data analysis performed on a representative sample. 代表的標本上で行なわれるデータ分析を示すフローチャートの図である。FIG. 6 is a flow chart illustrating data analysis performed on a representative sample. ユーザ選択の予測のエラーを計算するプロセスを示す図である。FIG. 5 is a diagram illustrating a process for calculating a user selection prediction error. 回帰分析のプロセス中のステップを示す図である。It is a figure which shows the step in the process of regression analysis. 2つの相関する特色の間の関係を示す図である。FIG. 4 is a diagram illustrating the relationship between two correlated features. 番組中の特色の特色性を定めるプロセスを示す図である。It is a figure which shows the process which determines the spot color characteristic of the spot color in a program. 番組中の特色の特色性を定めるプロセスを示す図である。It is a figure which shows the process which determines the spot color characteristic of the spot color in a program. 番組中の特色の特色性を定めるプロセスを示す図である。It is a figure which shows the process which determines the spot color characteristic of the spot color in a program. 好み分布記録フォーマットの例を示すブロック図である。It is a block diagram which shows the example of a preference distribution recording format. 図10に記載された異なるフィールドの、いくつかのサンプル値をリストにする図である。FIG. 11 lists several sample values for the different fields described in FIG. 特色性記録フォーマットの例を示すブロック図である。It is a block diagram which shows the example of a special color recording format. EPGデータの一部として特色性を放送するための例を示す図である。It is a figure which shows the example for broadcasting special color as a part of EPG data. ユーザ選択記録フォーマットの例を示す図である。It is a figure which shows the example of a user selection recording format. ユーザ選択履歴の生成のための入力および出力を示すブロック図である。It is a block diagram which shows the input and output for the production | generation of a user selection log | history. 番組選択装置上で行なわれる、好み値を学習するプロセスを図示するフローチャートの図である。FIG. 6 is a flowchart illustrating a process of learning preference values performed on a program selection device. 選択履歴記録の関連性値の計算のための入力および出力を示すブロック図である。It is a block diagram which shows the input and calculation for calculation of the relevance value of selection history recording. 年齢に関する関連性を表わすグラフの図である。It is a figure of the graph showing the relationship regarding age. 関連性に関する反復率を表わすグラフの図である。It is a figure of the graph showing the repetition rate regarding a relationship. 過去の選択履歴の更新のプロセスのための入力および出力を示すブロック図である。FIG. 6 is a block diagram illustrating inputs and outputs for a process of updating past selection history. 過去の選択履歴の更新のプロセスを図示するフローチャートの図である。FIG. 6 is a flowchart illustrating a process of updating a past selection history. 番組選択装置上で行なわれる、好み値を計算するプロセスを図示するフローチャートの図である。FIG. 4 is a flowchart illustrating a process for calculating a preference value performed on a program selection device. 番組に対する好み計算のための入力および出力を示すブロック図である。It is a block diagram which shows the input and output for preference calculation with respect to a program. 異なる番組に対する、収入の分布を示す図である。It is a figure which shows distribution of income with respect to a different program. 異なる番組に対する、性別の分布を示す図である。It is a figure which shows distribution of sex with respect to a different program. ターゲット決めされた広告を提供するためのシステムアーキテクチャの図である。1 is a diagram of a system architecture for providing targeted advertisements. FIG. 特定の人口統計特色値に属するユーザについて、信念関数と確率との間の関係を示すグラフの図である。FIG. 7 is a graph showing the relationship between belief functions and probabilities for users belonging to a specific demographic feature value. 人口統計特色記録フォーマットのフローチャートの図である。It is a figure of the flowchart of a demographic feature recording format. 広告ターゲット決め記録フォーマットのフローチャートの図である。It is a figure of the flowchart of advertisement target determination recording format. 図1のテレビ録画システムが行なう、ある機能の動作を示すブロック図である。It is a block diagram which shows operation | movement of a certain function which the television recording system of FIG. 1 performs. 図1のテレビ録画システムが行なう、ある機能の動作を示すブロック図である。It is a block diagram which shows operation | movement of a certain function which the television recording system of FIG. 1 performs. この発明の原則を実現するシステムの代替的なハードウェア構成を示す図である。FIG. 2 is a diagram illustrating an alternative hardware configuration of a system that implements the principles of the present invention. この発明の原則を実現するシステムの代替的なハードウェア構成を示す図である。FIG. 2 is a diagram illustrating an alternative hardware configuration of a system that implements the principles of the present invention. 図1のテレビ録画システムの動作のさらなる局面を図示するフローチャートの図である。FIG. 2 is a flow chart illustrating a further aspect of the operation of the television recording system of FIG. 視聴者にEPGデータおよびテキストデータを与えるためのシステムの1つの実施例のブロック図である。1 is a block diagram of one embodiment of a system for providing EPG data and text data to a viewer. FIG. データプロバイダからEPGデータおよびテキストを受取り、表示のためにデータをフォーマットしかつ、ケーブルテレビチャンネルの垂直帰線消去間隔にデータを挿入するためのデータコントローラの1つの実施例を図示するブロック図である。FIG. 3 is a block diagram illustrating one embodiment of a data controller for receiving EPG data and text from a data provider, formatting the data for display, and inserting the data into a cable television channel vertical blanking interval. . 図29のEPGデータベースから読出されるEPGデータの情報フィールドの1つの実施例を示す図である。FIG. 30 is a diagram illustrating one example of an information field of EPG data read from the EPG database of FIG. 29. 割当てられたケーブルテレビチャンネルへの挿入のためにデータベースから読出されるデータのデータフォーマットを示す図である。FIG. 4 is a diagram illustrating a data format of data read from a database for insertion into an assigned cable television channel. 図29のEPGトランザクションフォーマッタの動作を示すフローチャートの図である。FIG. 30 is a flowchart showing an operation of the EPG transaction formatter of FIG. 29. 図29のテキストトランザクションフォーマッタの動作の1つの実施例を示すフローチャートの図である。FIG. 30 is a flow chart illustrating one embodiment of the operation of the text transaction formatter of FIG. 29. テキストデータおよびEPGデータを受ける際に用いるためのセットトップボックスの1つの実施例を示す図である。FIG. 6 is a diagram illustrating one embodiment of a set top box for use in receiving text data and EPG data. この発明に従う多数の視聴者プロファイルを作成しかつ用いるプロセスのさまざまな局面を示す図である。FIG. 6 illustrates various aspects of a process for creating and using multiple viewer profiles in accordance with the present invention. この発明に従う多数の視聴者プロファイルを作成しかつ用いるプロセスのさまざまな局面を示す図である。FIG. 6 illustrates various aspects of a process for creating and using multiple viewer profiles in accordance with the present invention. この発明に従う多数の視聴者プロファイルを作成しかつ用いるプロセスのさまざまな局面を示す図である。FIG. 6 illustrates various aspects of a process for creating and using multiple viewer profiles in accordance with the present invention. この発明に従う多数の視聴者プロファイルを作成しかつ用いるプロセスのさまざまな局面を示す図である。FIG. 6 illustrates various aspects of a process for creating and using multiple viewer profiles in accordance with the present invention. この発明に従う多数の視聴者プロファイルを作成しかつ用いるプロセスのさまざまな局面を示す図である。FIG. 6 illustrates various aspects of a process for creating and using multiple viewer profiles in accordance with the present invention. この発明に従う多数の視聴者プロファイルを作成しかつ用いるプロセスのさまざまな局面を示す図である。FIG. 6 illustrates various aspects of a process for creating and using multiple viewer profiles in accordance with the present invention. この発明に従う多数の視聴者プロファイルを作成しかつ用いるプロセスのさまざまな局面を示す図である。FIG. 6 illustrates various aspects of a process for creating and using multiple viewer profiles in accordance with the present invention. ユーザのプライバシーを損なうことなく、ターゲット決めされた電子コンテンツを配信するための方法を示す図である。FIG. 6 illustrates a method for delivering targeted electronic content without compromising user privacy. この発明に従うシステムの実施例を示す図である。1 is a diagram showing an embodiment of a system according to the present invention. この発明に従うカスタム線形計画法を示す図である。FIG. 4 is a diagram illustrating custom linear programming according to the present invention.

図1では、テレビコントロールシステム100はこの発明の原則に従って動作して、ユーザ入力102およびテレビ信号104に応答してテレビ番組の録画をさせる。テレビコントロールシステム100は、ユーザの視聴のため、テレビモニタ108に信号を伝送する。好ましくは、デジタルの実施例では、システム100が録画する番組は、追加のチャンネルの形でユーザに提示される。したがって、ユーザは、チャンネルを変えることにより、視聴に利用可能な記憶済み番組をすばやく決定することができる。ユーザは、記憶済み番組間でまたは記憶済み番組と現在放送中の番組との間でチャンネルを変更することもできる。録画済み番組から別の番組にユーザがチャンネルを変更すれば、録画済み番組の再生が好ましくは一時停止される。これに代えて、録画済み番組の再生が一時停止されるかまたは継続されるかは、ユーザが選択可能なオプションである。本明細書中にさらに記載されるように、ユーザは、特定の番組の指定またはコメディ/ドラマ、俳優などの、番組の特定の属性の指定により、録画用の番組を特定してもよい。録画用の番組をマニュアルで指定するとき、ユーザは、放送されるときに、一度または毎週など繰返して番組を録画すべきであることを指定してもよい。
信号104は、テレビモニタ108上にテレビ番組のビデオおよびオーディオ成分を表示するのに必要な情報を含む第1の成分105を含む。信号104は好ましくは、本明細書中で“属性情報”と呼ばれる第2の成分107も含む。そのような属性情報107の例は、DVB−SIおよびATSC−SIフォーマットと、カリフォルニア州フレモントのスターサイト・テレキャスト・インク(StarSight Telecast, Inc.)およびニューヨーク州グレンフォールズのTVデータ(TVData)からそれぞれ入手可能な、スターサイトEPGデータおよびTVDataなどの各種独自フォーマットとを介して利用可能な情報である。
任意の特定の番組についての属性情報107は番組タイプに依存して異なるが、典型的には、番組の開始時間、番組の持続時間、番組の題名および番組の他の属性(カテゴリ)などの複数のカテゴリとともに、カテゴリの各々に対応する関連の値を含む。嗜好エージェント110は属性情報107を処理し、“カテゴリ−値”の対115を生成する。たとえば、番組の属性が持続時間ならば、カテゴリは持続時間であってもよく、そのカテゴリの値が120分であってもよい。番組の属性が題名ならば、カテゴリは題名であってもよく、値が“スターウォーズ”であってもよい。映画の他のカテゴリ−値の対は、映画の短い説明を有する説明カテゴリが値であること、映画の主演スターの名前を有する主演俳優カテゴリが値であること、監督の名前を有する監督カテゴリが値であること、アドベンチャー、コメディなどのテーマを有するテーマカテゴリが値であることおよび特定の評論家による評価を有する評価カテゴリが値であることを含んでもよい。フットボールの試合などのスポーツの試合のカテゴリ−値の対は、プレイしているチーム名、試合の場所およびプレイオフまたはスーパーボウルなどの特定のトーナメントを含んでもよい。
カテゴリ−値の対115(嗜好情報)はユーザの視聴嗜好を示す。カテゴリ−値の対115と関連するものとして図1に示されるデータは、関連のカテゴリ値のための重み付け情報だけでなく、以下にさらに例示のために示される他の情報を含む。嗜好エージェント110は、嗜好データベース116の形で嗜好情報115を維持する。システム100が録画するテレビ番組105は好ましくは、関連の属性情報107とともに別個に記憶される。代替的な実施例では、(関連値を有するまたは有しない)カテゴリ値の対115はテレビ番組105とともに記憶され、生の属性情報107はシステム100によっては維持されない。
ユーザ視聴習慣に応答して、嗜好エージェント110は、嗜好データベース116に記憶された各カテゴリごとにおよび各カテゴリの各値ごとにデータを生成する。各カテゴリおよび値ごとに嗜好エージェント110が生成したデータは、好ましくは、見るために特定のカテゴリおよび/または値が利用可能な時間の合計量に対する、ユーザが特定のカテゴリおよび/または値を見る時間の量を示す。ユーザが番組を見る相対的な時間の量は、ユーザの相対的視聴嗜好の好都合な指標である。しかしながら、ユーザ視聴嗜好の他の指標も用いてもよい。番組ソーススイッチ114はユーザ入力102に応答して動作し、テレビ信号104を介して現在放送中の番組または記憶装置106からの記憶済み番組のいずれかを選択する。
録画マネージャ112は、嗜好エージェント110が生成し、嗜好データベース116に記憶された情報に従って、テレビ番組105および属性情報107の録画および記憶を引き起こすように動作する。録画マネージャ112は、特定の番組を録画するユーザ要求および指定されたカテゴリ−値の対を有する番組を録画するユーザ要求にも応答する。
モニタ108に伝送される信号は好ましくは従来のアナログの形態をとる。これに代えて、モニタ108に伝送される信号をデジタルにエンコードしてもよい。モニタに伝送される信号の正確な形態は重要ではなく、特定のモニタが必要とするような形態をとってもよい。テレビコントロールシステム100が受信するテレビ信号104は、周知のNTSCまたはPAL規格に従ってエンコードされるアナログエンコード信号を含むさまざまな信号フォーマットのうち1つをとってもよい。これに代えて、信号104は、市場で入手可能なデジタル衛星システム(DSS)が伝送するようなまたはMPEG−2(Motion Picture Expert Group−2)標準に従う態様でデジタルにエンコードされてもよい。テレビコントロールシステム100のいずれの所与の実施例においても、信号104は前述のさまざまな形態をとり得る。たとえば、テレビコントロールシステム100は、デジタル衛星システムから入力を受けるように結合されてもよく、入力はデジタルにエンコードされる。また、テレビコントロールシステム100は、アナログまたはデジタルの形のいずれかで信号をエンコードする、共同アンテナテレビシステム(CATV)から入力を受けるように結合されてもよい。また、テレビコントロールシステム100は、従来の家庭用アンテナからアナログまたはデジタル信号を受けるように結合されてもよい。
属性情報107は、欧州電気通信標準協会(European Telecommunication Standards Institute)(ETS)が規定するようなDVB−SI(デジタルビデオ放送サービス情報)または高度テレビシステム委員会(Advanced Television System Committee)(ATSC)が規定するようなATSCデジタルテレビ規格などの業界標準を含むさまざまな態様で、テレビ番組105と同時にテレビコントロールシステム100に伝送され得る。例示のため、DVB−SIプロトコルでは、次の6時間の間の番組編成は、各チャンネルごとに8秒ごとに伝送される。さらなる例として、次の7日間の番組情報はスターサイト・テレキャスト・インクから入手可能な対話型画面上TV番組ガイドから入手可能である。次の7日間などのさらに先の番組編成情報は他の方法でも入手され得る。たとえば、特定のチャンネルで、時分割多重化された態様で情報を受取ることによってである。そのような情報は、ユーザが画面上にコントロールメニューを表示しているときなど、ユーザが画面上で動画イメージを必要としない作業を行なうときに、容易に伝送することができる。
これに代えて、テレビコントロールシステム100は、モデムまたはテレビ信号に含まれる垂直帰線消去間隔(VBI)を介した別個の通信セッションによりテレビ番組105から別個に属性情報107をダウンロードすることができる。そのような別個の通信セッションは、MPEG−2、DVB−SIおよびDSSプロトコルがサポートするデータダウンロードメカニズムを含む。
属性情報107は、以下に示されるようなDVB−SIプロトコル下の形態をとることができる。
event_id (イベント_id)
start_time,(開始時間)
duration(持続時間)
DESCRIPTOR1(記述子1)
DESCRIPTOR2(記述子2)

DESCRIPTORn(記述子n)
event−idフィールドは、番組に割当てられた一意なアルファニューメリックコードである。記述子は、以下の情報を含む“短いイベント記述子”(Short Event Descriptors)、“延長されたイベント記述子”(Extended Event Descriptors)または“コンテンツ記述子”(Content Descriptors)であり得る。
Short Event Descriptor(短いイベント記述子):

event_name−length(イベント名−長さ)
event_name(イベント名)
event_description−length(イベント記述長さ)
event_description(イベント記述)

Extended−even(均等に延長された)

ITEM1(項目1)
ITEM2(項目2)


ITEMn(項目n).

content descriptor(コンテンツ記述子):

CONTENT1(コンテンツ1)
CONTENT2(コンテンツ2)


CONTENTn(コンテンツn).

ITEM(項目)は以下の情報を含む。

item_description_length(項目記述長さ)
item_description(項目記述)
item_value_length(項目値長さ)
item_value(項目値)

項目記述の例は“監督”であり得、項目値は“マーチン・スコセッシ”(Martin Scorsese)であり得る。CONTENT(コンテンツ)は以下の情報を含む。

DVB−SI defined theme(DVB−SI規定テーマ)
DVB−SI defined sub−theme, programmer defined theme, programmer defined subtheme(DVB−SI規定サブテーマ、プログラマ規定テーマ、プログラマ規定サブテーマ)

テーマおよびサブテーマの例はそれぞれ映画およびコメディである。プログラマ規定テーマおよびサブテーマは、EPGデータプロバイダが提供し得る値である。
カテゴリ−値の対115は上記タイプの情報から生成される。カテゴリ−値の対115は以下のフォーマットをとる。すなわち、カテゴリ名−カテゴリ値であり、ここでカテゴリ名は、“題名”、“監督”、“テーマ”、“番組タイプ”などであり、カテゴリ値は、“隣のサインフェルド”(Seinfeld)、“マーチン・スコセッシ”、“コメディ”、“シットコム”などであり得る。属性情報107からのカテゴリ−値の対115の生成は、属性情報107中に明確に存在しないカテゴリの嗜好エージェント110による生成を可能にする。たとえば、カテゴリ−値パッド115は、題名−フォーティナイナーズ、記述−フットボールおよび記述探索ルール−フットボール(および)サンフランシスコであり得る。したがって、嗜好エージェント110は、作成されたカテゴリ−値の対に対応する属性情報中にフィールドが存在しない場合ですら、属性情報107からカテゴリ−値の対115を生成することができる。
嗜好データベース116は好ましくは、スターサイト・テレキャスト・インクなどのサードパーティソースからカテゴリ−値の対をまずダウンロードすることによって生成される。有利には、そのようなソースは、特定の地理的区域および日付についてカスタマイズされた情報を提供し得る。たとえば、データベースは、地元のチームを含むスポーツイベントに、他のスポーツイベントよりも高い評価を与えるデータを含み得る。さらに、季節的なまたは休暇向けの番組を、特定の季節または休暇の間に好まれるものとして示してもよい。たとえば、夏季の活動を含む番組は、1年の他の時期よりも夏の間により高い重み付けを有するものとして示される。嗜好データベースは、ユーザの視聴習慣に従って、本明細書中に記載のように変更される。さらに、嗜好データベースは、サードパーティソースから周期的に更新されて、前述の季節的なまたは休暇向けの更新を反映することができる。
サードパーティソースから受けるものなどの、嗜好データベース116中のカテゴリは、予め規定されるかまたは、番組105について受ける属性情報107から動的に作成されるかのいずれかである。動的に作成されるカテゴリおよび関連の値は好ましくは、嗜好データベース116によってデフォルト評価を与えられる。嗜好エージェント110が作成するまたは嗜好エージェント110にダウンロードされる嗜好情報の例が以下に示される。以下の例では、カテゴリ統計および値統計部分の3列の数字は、(秒単位の)(0から1000の範囲の)視聴された重み付け持続時間および、その特定のカテゴリまたは値に一致する番組が利用可能であった(秒単位の)時間の量を示す。情報は好ましくはデータベース記録の形で記憶される。
カテゴリ:
チャンネル 1000
題名 1001
題名−サブストリング 1002
ジャンル情報 1003
記述 1004
記述サブストリング 1005
エピソード名 1007
タイプ 1008
スター 1009
監督 1010
製作年 1011
MPAA評価 1012
評論家評価 1013
値:
タイタニック 2000
アミ(Ami) 2001
サードロックフロムザサン(3rd Rock From the Sun) 2002
ザゴッズマストビークレイジー(The Gods Must Be Crazy) 2003
隣のサインフェルド(Seinfeld) 2004
へッドラインニュース 2005
バッグスアンドダフィー(Bugs and Duffy) 2006
ニュース 2007
004 2008
005 2009
063 2010
フォーティナイナーズ 2011
シットコム 2012
コメディ 2013
映画 2014
ニュース 2015
サンフランシスコ・フォーティナイナーズ 2016
ブッシュマン(A Coke bottle raises havoc for a tribe of African bushmen)2017
ジョン・マイヤーズ(John Mayers) 2018
ルーシー・バーネット(Lousie Barnett) 2019
マリウス・ワイヤーズ(Marius Weyers) 2020
サンドラ・プリンスルー(Sandra Prinsloo) 2021
ジェフ・ブリッジズ(Jeff Bridges) 2022
バレリー・ペリン(Valerie Perrine) 2023
フィル・ハートマン(Phil Hartman) 2024
ジェイミー・ユイス(Jamie Uys) 2025
レイモン・ジョンソン(Lamont Johnson) 2026
1981 2027
1973 2028
1996 2029
三つ星 2030
二つ星 2031
ヌード 2032
バイオレンス 2033
アダルト物 2034
アダルトランゲージ 2035
カテゴリー値対:
1001 2001
1001 2002
1001 2003
1001 2004
1001 2005
1001 2008
1000 2009
1000 2010
1002 2011
1003 2012
1003 2013
1003 2014
カテゴリ統計:
1001 1000 31104 4022280
1002 1000 31104 4022280
1003 1000 31104 2613384
1004 1000 20304 1996596
1005 1000 20304 1996596
1006 1000 5238 1259028
1007 1000 3438 369450
1008 1000 13266 812970
値統計
2001 1000 1638 88074
2002 1000 6714 178560
2003 1000 6552 387054
2004 1000 5400 165600
2005 1000 1600 9000
2006 1000 3600 28800
2011 500 1800 10800
上記例では、14のカテゴリが与えられ(1000−1013)、その後に36の値が続く。次に、カテゴリと値との間の対応(カテゴリ−値の対)が示される。次に、カテゴリおよび次に値のデータが示される。このデータは、上述のように3列に編成される。
図1に示される、上述の実施例においては、カテゴリおよび値の評価は、嗜好データベース116に記憶される代わりに嗜好エージェント110によって動的に生成される。代替的な実施例では、評価は、カテゴリ−値の対とともに嗜好データベースに記憶されてもよい。
ここで図2を参照して、嗜好決定を用いて、TV番組の選択の際のユーザの嗜好を予測する。この予測は、(i)個々のユーザの視聴習慣の分析、(ii)ユーザの代表的標本の視聴習慣の分析および(iii)集められたサンプルの期間の間利用可能なテレビ番組のEPGデータに基づく。
ユーザの視聴習慣は、ユーザが見る実際の番組の文脈において以下に記述される。しかしながら、他の情報がこの発明の目的のためにちょうど有用であることがあり、これは、ユーザが見ることのないまたは別のチャンネルに変える前にごく簡単にしか見ない番組、録画することをユーザがスケジュールに入れる番組、ユーザが録画するが見ないまたは簡単にしか見ない番組および、(たとえば画面上EPGメニューなどの)番組ガイドからユーザが情報を要求したまたはユーザが情報を要求することがないまたはユーザが情報を要求するが見る選択をしない番組に関する情報を含む。
嗜好決定を作成するための1つの方法は、ユーザ挙動を予測するのに用いられるベイズネットワークの使用、したがって嗜好エージェントの使用によるものであり、これは知識ベースの方策である。この方法では、知識技術者は、エキスパートの専門分野についてエキスパートにインタビューする。エキスパートおよび知識技術者は、エキスパートの分野での決定に重要な世界の区別を決定する。知識技術者およびエキスパートは次に、変数間の依存性と依存性の強さを定量化する確率分布とを定める。
第2の方法は、データに基づく方策であるベイズネットワークである。この第2の方法において、知識技術者およびエキスパートはまずドメインの変数を決定する。次にそれらの変数に対してデータが累積され、アルゴリズムが適用されて信念ネットワークを作成し、このデータからユーザ挙動を予測する。この累積されたデータは、ドメインの実世界の例から生じる。この第2の方策は、離散変数しか含まないドメインのために存在する。
ベイズ法は、“EM”アルゴリズムとして公知のアルゴリズムを用いて行なうことができ、これは、当業者には認められるように、モデルのパラメータの最大事後確率値(MAP値)を計算してユーザ挙動を予測する。EMアルゴリズムは、デンプスター(Dempster)の、「EMアルゴリズムを介した不完全データからの最大尤度」(“Maximum Likelihood From Incomplete Data Via The EM Algorithm”, Journal of the Royal Statistical Society B, Volume 39 (1977))に記載され、ここに引用により援用されている。
各変数ごとに確率を計算した後、信念ネットワーク内の各変数は次に、サブスコアを与えることにより、ユーザの嗜好を予測するように適合させるために得点(scored for goodness)される。当業者には認められるように、サブスコアは、最大事後確率値において、予期されるデータの周辺尤度を用いることによって生成される。
当業者は、ここに引用により援用される、ジェンセン、ローリッツェンおよびオレセン(Jensen, Lauritzen and Olesen)の、「ローカル計算による帰納的グラフィックモデルにおけるベイズ更新」(“Bayesian Updating in Recursive Graphical Models by Local Computations”, Technical Report R−89−15, Institute of Electronic Systems, Aalborg University, Denmark)に記載のものなどの、ユーザ挙動推定アルゴリズムを予測するいずれの標準モデルを用いてもこのステップを行なうことができることを認めるであろう。
母集団のテレビ視聴習慣はサンプリングされて、視聴者の挙動の代表的標本を生成する 117。このタスクは、ユーザ挙動サンプルを集めてマーケットリサーチを行なうニールセン・メディア・リサーチ(Nielsen Media Research)などの企業によって典型的に行なわれる。サンプリングの結果は視聴者挙動データベースに記憶される。視聴者挙動データベースのフォーマットは、サンプリングを行なう企業に所有権がある。視聴者挙動データベースは、サンプリングに参加する世帯の人についての人口統計情報を含む。この情報は、人種、年齢、年収および性別を含むが、それらに限られるものではない。視聴者挙動データベースは、サンプリングの期間の間に各視聴者が見たすべてのテレビ番組についての情報も含む。
番組情報およびテレビ番組のスケジュールはEPGデータベースで利用可能である 104。テレビ番組の番組情報は、題名、番組タイプおよびテレビ番組の番組カテゴリおよびテレビ番組に出演する俳優も含むが、それらに限られない、番組のさまざまな属性についての情報を含む。
図3は番組情報の2つの例をリストにする。例1、124は、オーディオビジュアルテレビ番組のための番組情報を記載し、例2、125は、グラフィックテキストに基づくテレビ番組のための番組情報を記載する。
視聴者挙動データベースを分析して 118、TV番組の特色を識別しかつそのような識別された特色がどのようにユーザの代表的標本中の視聴習慣に影響を及ぼすかを決定する。次に、これらの特色および視聴母集団の中でのそれらの影響を、個々のユーザのTV番組選択を予測するプロセスを支援する際に用いる。図4、126はそのような特色のいくつかの例をリストにする。これらの特色のいくつかは番組情報104から導出される。これらの特色のいくつかは、時間、曜日、休日、勤務日および天気、季節を含むがそれらに限られない他の視聴パラメータとの特色の関連または多数の特色の関連に対するユーザの好みを探すことによって導出される。これらの特色のいくつかは、視聴者挙動データベースのデータ分析によって導出される。いずれの所与の番組も、異なる度合いの上記識別された特色を示す。これは、番組中の特色の特色性(trait−ness)として表わされる。たとえば、Seinfeldにおけるコメディの特色性は1.2であり得、Mad About Youにおけるコメディの特色性は.79であり得る。番組中の特色の特色性は、データ分析の一部として計算される 118。
この発明は、視聴者嗜好を決定するための方法も提供する。1つの実施例では、個々の視聴者は、各番組ごとに確率好み関数を評価することおよび最も高いスコアを有する番組を選択することにより、利用可能な番組の集合から見るべき1つのショーを選ぶ。好み関数は、特定の特色に対する好みの集合体としておよびその番組がその特色を示す度合いとしてモデリングされる。好み関数は以下のように計算することができる。
l(p)=Σλ(tn)tn
式中、l(p)は、番組pに対する好みを表わし、
λ(tn)は、特定の特色tnに対する好みを表わし、
tnは、pが示す特色tnの度合いを表わす。
視聴者がテレビを見るとき、視聴者は値l(p)が最も高い番組を選ぶと仮定される。いずれの所与の視聴者についても、λ(tn)の値がその実際の好みをよりよく表わすにつれ、TV番組に対するその嗜好を決定する精度もより高くなる。したがって、いずれの所与のユーザについても、すべての関連の特色が、それらの特色の各々の正確な好みとともに知られれば、上記好み関数はいずれの所与の番組の好みも常に正確に予測するであろう。
しかしながら、すべての関連の特色の識別および各視聴者の正確な好みの決定は非自明なタスクであり、回帰分析のプロセスによって繰返し到達される。
特定のユーザに関連する特色の大部分はEPG情報自体から直接に導出され得るが、いくつかの特色は、ある時間にわたってユーザの視聴習慣を分析することによって見出される。回帰分析のプロセスによる発見に好適な特色は一般的に、隠れているかまたは関連の特色である。
隠れ特色は、ユーザの視聴習慣に影響を及ぼすが、EPG情報からは導出不可能なものである。たとえば、特定の人種的背景を強調するシットコムは、その人種的背景の視聴者に、より共鳴する。隠れ特色の影響の別の例は、シットコム“チアーズ”(Cheers)に対して強い好みを有するユーザの集合の間での、シットコム“フレージャー”(Frasier)の強い好みであろう。シットコムに出演する俳優の名前をEPGデータで入手可能でないと仮定すると、同じ集合の人々による両方のシットコムに対するこの親近感は、両方のシットコムが共通して示すいくつかの特色の存在、すなわち両方のシットコム中の中心キャラクタの1人の存在によって説明され得る。そのような隠れ嗜好基準は、好み関数の計算において隠れ特色を加えることによって捕捉する必要がある。
関連の特色とは、他の特色と組合わさるとユーザの視聴習慣に異なる影響を有する特徴である。たとえば、ユーザは、いずれの所与のSeinfeldのエピソードに対してもある好みを有しかつ、初めて放送されるいずれの初回のシットコムに対してもある好みを有するであろう。しかしながら、Seinfeldの初回エピソードに対するその好みはさらなる特色、すなわち“新Seinfeld”を必要とするほど十分に大きいため、Seinfeldの初回のエピソードに対するその好みを十分に説明するであろう。
所与のユーザの各特色の好みは、回帰分析により初期近似から同様に洗練されなければならない。サンプルユーザの特色および関連の好みの例は、図4にリストにされたものを含むがそれらに限られるものではない。特色“NBC<=>ニュース”は、関連づけられる特色が“チャンネルNBC”および“番組タイプニュース”である関連特色の例である。ニュース番組に対するユーザの好みが1であり、“NBCチャンネル”に対する嗜好が2であり得る一方、NBCのニュースに対するその嗜好は13であろう。すなわち、このユーザは、NBCチャンネルでニュース番組または一般に番組を常に見ているわけではないが、その人はNBCチャンネルのニュース番組に強い嗜好を有する。“チャンネルNBC”および“番組タイプニュース”に対するその好みだけを考慮すれば、“NBCのニュース”に対するその好みは説明不可能である。
特色を識別するこの手順は、代表的標本の視聴習慣とともに代表的標本内の各特色の好みの分布の決定を用いて最初に行なわれる。
代表的標本の視聴習慣の分析102の出力のいくつかが、1組の嗜好決定パラメータである。すなわち、(i)繰返す番組が示す特色およびそのような特色を示す度合いと、(ii)上記特色の各々の、視聴母集団中での好みの分布リストとである。
これらのパラメータを導出する1つの方法が図5(a)および図5(b)に概略的に示される。フローチャートの異なる段階が以下のセクションにさらに説明される。好み値の初期集合が各ユーザごとに計算される 129。さまざまな態様でこの初期好み値に到達してもよい。態様の1つは、それを、ユーザの視聴期間の間に利用可能であった時間の量に対する、所与の特色を見た時間量に基づかせることであろう。
特色のこれらの初期好み値を用いて、ユーザが所与の番組を見た時間の間利用可能であったすべての番組に対して好み関数l(p)が計算される。次にこれらの番組は、視聴者が番組を視聴した期間141に対する好み値の降順140に配置される。ユーザが所与の時間に見た実際の番組は強調される 143。図6中のすべての強調された番組が最も高いスコアを有すれば、好み関数はユーザの嗜好を正しく識別した。ユーザが見た番組が、そのときに利用可能な何らかの他の競合番組よりも下にランクすれば、用いられる好み値はユーザ嗜好を正しく反映しない。限定の目的でなく例示のために、実際に見られた番組よりも上にランクされたN個の番組が存在すれば、この番組に対する好み関数のエラーはN 142と呼ばれるであろう。そのようなNの値は、それを他の競合番組の好み関数と比較することにより、ユーザが見た各番組ごとに定められる。図6に図示された例では、Nの値は、ユーザが10:00−10:30、10:30−11:00、11:00−11:30の時間の間にTVを見た時間に対して計算される。回帰分析を用いると、特色の各々の好み値はインクリメンタルに調節されて、Nの平均値を減じる。Nの平均の最も低い値を生じる好み値の集合が、そのユーザについての好み値の最良の集合と考えられる。
回帰プロセスの1つの方法が図7に図示される。プロセスの始めには、特色a、b、cの好み値はλa1、λb1、λc1…(144,145)である。λa1は特色“a”の好みを表わし、λb1は特色“b”の好みを表わし、以下同じである。すべての関連の番組の好み関数は、好み値のこの初期集合を用いて計算される。第1の特色“a”の好み値λa1はインクリメンタルに変更されて、Nの平均値を定める。最も低いNの平均値を生じる値λa2、147は、特色“a”の新たな好み値としてとられる。この新たな好み値λa2、148はここで古い値を置換え、残余のλ値を定めるのに用いられる。計算された好み値の上記集合は、好み関数において考慮される特色の集合が、ユーザに関連のあるすべての特色を含むならば、高い精度をもってユーザ嗜好を予測するであろう。(0または何らかの他の受入れ可能な値に)収束しないNの平均値は、ユーザに関連するすべての特色が好み関数の計算において考慮されてきたのではないことを示す。関連のまたは隠れたさらなる特色の導入を用いてユーザ嗜好の決定を改良する。
関連の特色の決定はさまざまな異なる方法によって達成される。
1つの方法は、多数の特色の関連値が、EPGから得られた番組情報に反映されるのではなく、人の視聴習慣についての発見方法的経験則の適用によるというものである。たとえば、Seinfeldに対する好みを有するユーザが、Seinfeldの初回または新しいエピソードに対するはるかに高い嗜好を有する見込みは非常に高い。多数の特色の関連値に関するそのような発見方法的経験則は、ヘッドエンドを介して各セットトップボックスに伝えられ得る。関連の特色を定める別の方法は、番組中に共通の特色を探しかつ、新たな関連の特色を導入してユーザの好み関数を改良しようとするアルゴリズム的探索を用いることである。
異なる番組中の隠れ特色の決定は、多数の方法で達成可能である。これらの方法の1つが図8に図示される。隠れ特色の存在の可能性は、異なる番組中に存在する任意の2つの特色の間に強い相関が存在するときは常に存在する。y軸は、yのより高い値について、増大する好み値を表わす。図8のx軸上のあらゆる点は、特色“tn”の好み値がxのより高い値とともに増すように配置されたユーザを表わす。x軸上の同じ値について、強く相関する特色“tm”の好み値もプロットされれば、それは、特色“tn”の好みグラフに対する関係を示すであろう。いずれの2つの特色の間の相関も、共通の隠れ特色の存在によって説明し得る。したがって、特色“tm”および“tn”を数学的に以下のように表わし得る。
tm=tx+tm′
tn=Ctx+tn′
式中、Cは、特色“tm”と“tn”との間の相関の量を示すある定数である。
隠れ特色は、経験則または何らかの他の適切な態様を適用することによっても識別可能である。
特定のジャンルのすべての番組がいくつかの共通の特色を示す一方、これらの特色を示す度合いは番組によって異なる。繰返しの番組に対する特色性のこの度合いは定量化可能であり、それにより、代表的標本中でその番組を見るまたは見ないという視聴選択を最もうまくそれが説明する。たとえば、コメディに対してある好みを有するユーザを考察する。コメディ番組を見るというユーザの決定は、その番組が示すコメディらしさの量が、コメディに対するその好みが定めるコメディらしさのあるしきい値に交差するか否かによって影響を受ける。
所与の番組N中の特色Tの特色性を定める1つの方法が図9(a)−(c)に図示される。強調された番組はユーザが実際に見た番組156を表わす。すべての利用可能な番組は、好み関数が計算するように、ランクの降順154に配置される。ユーザ1 155の場合、その人が見た番組N 156はランクの3番目に現われるが、好み関数は実際には、番組Nをトップにランクづけるべきであった。この場合、特色Tの特色性におけるエラーマージン157は3である。ユーザ4の場合、ユーザが見た番組Nは最も高くランクづけられた。特色Tの特色性におけるエラーマージンは0である。番組Nを見なかったユーザ2の場合、それが最も高くランクされた。この場合のエラーマージンは定数Kであると考えることができる。提案されるKの値は、そのときユーザに利用可能な番組の数であり得る。同様にユーザ3については、エラーマージンはK−1と考え得る。番組Nを見たすべてのユーザについてそのようなエラーマージンが計算され、平均のエラーマージンが計算される。
回帰分析を用いて、特色Tの特色性値がインクリメンタルに調節され、エラーマージンの平均値を減じる。エラーマージンの平均の最も低い値を生じる特色性の値が、番組Nが示す特色Tの特色性の最良の値と考えられる。
特色性値を、経験則または何らかの他の適切な態様によって割当ててもよい。
代表的標本の視聴習慣の分析の出力の1つは、各特色の視聴母集団の間の好みの分布リストである。この情報は図10に概略的に示され、放送されるTV番組および番組情報とともにあらゆる個々のユーザセットトップボックスが利用可能にされる。“特色の数”164は、代表的標本の視聴習慣を分析した後に識別された特色の総数を表わす。各々の特色の好みの分布は“特色記録”165に与えられる。特色記録に含まれる情報は、特色名167、特色のタイプ168(隠れているか、関連など)、特色の好み分布170および特色の分布パラメータ172を含む。特色記録中のさまざまな可能な値の例が図11に与えられる。
図12は、繰返す番組中に存在する特色の1つの概略的表示を示す。この情報は特色の上記好み分布とともに伝えられる。“番組の数”173は、特色情報が送られる番組の数を表わす。関連のある特色およびそれらを示す度合いは“番組記録”174に含まれる。“番組識別”177情報を用いて、この記録が属するTV番組を識別する。Seinfeldのエピソードに対する番組記録の例が図13に与えられる。例に与えられるように、“番組名−Seinfeld”、“チャンネル−NBC”、“番組タイプ−シットコム”などのある特色を、EPGから直接に導出することができ、これは静的特色と呼ばれる。Seinfeld番組と関連づけられるコメディらしさの度合いを記憶する、“コメディ”などのさらなる特色もEPGデータの一部として伝えられ得る。
再び図2を参照して、(EPGの形の)番組情報および番組コンテンツは、嗜好決定パラメータ119とともに放送ヘッドエンドから伝送される。嗜好決定パラメータの例は、(i)各番組が示す特色およびそのような特色を示す度合いと、(ii)各特色の視聴母集団の間の好み値の分布リストとを含むが、それらに限られるものではない。
この情報は、嗜好決定モジュール、個人嗜好データベース116、記憶装置およびディスプレイ装置108を含む番組選択装置100により、各世帯で受けられる。個人嗜好データベース116を用いて、個々のユーザの視聴習慣の分析の結果を記憶する。記憶装置は、嗜好決定モジュールが推奨する番組またはユーザの特定の要求に従って番組を記憶する。
番組選択装置100は、見られるTV番組の選択および各ユーザの視聴行動をモニタする。これは、選択履歴データ189(図15を参照)の形で記憶装置またはメモリに記憶される。選択履歴データの概略的表示が図14に与えられる。“選択記録の数”180は、選択履歴データに記憶されたユーザ選択チョイスの数を表わす。各々の選択記録181は、見られた実際の番組上の情報185とともに、そのときに利用可能な競合番組上の情報186を含む。EPGが過去の番組に関する情報を提供することができないことがあるため、番組情報を記憶することが必要である。これらの番組に関する情報は、番組がまだ現行のものである間に情報が得られるときに、EPGデータから直接に入手してもよい。番組を見た時間183および持続時間182も選択記録の一部を形成する。図15に図示されるように、ユーザ選択履歴189は、EPG104からの番組情報とともに、ユーザが行なった各選択187から導出される。
特定の個人のユーザ嗜好を学習する1つのプロセスが図16に示される。データ分析118が識別する特色に対する、代表的標本中の好み分布を好み関数が用いて、個人の、識別された特色の好みの計算における十分なサンプリング不足のために導かれたエラーの影響を最小化する。設定質問190に対する個々のユーザの応答も、その個人192の好みの初期値を決定する要因として考慮され得る。
ユーザ選択履歴189は固定された数の時間の間維持される。ユーザ選択履歴が維持される時間の数は好ましくは、装置を用いる新たなユーザの最初の数日の間、増加した学習速度を有するように変更可能である。平均エラーは、図6に以前記載されたのと同じ態様で、代表的標本中のユーザに対してN 194と計算される。平均エラーが許容可能な限界195よりも大きければ、新たな好み値が計算される 198。ユーザ選択履歴中のエントリは過去の選択履歴に移動される。平均エラーが許容可能な限界よりも下にとどまれば、好み値は、予め規定された数の時間の後にのみ計算される 196。
選択記録の別の実施例は番組情報全体の代わりに番組IDを記憶する。この実施例では、実際の番組情報は、選択履歴に記憶された同じ番組IDで各番組を識別するヘッドエンドから、予め定められた時間に放送される。この実施例では、特色に対する好み値の計算198は、この予め定められた時間にしか行なわれない。
ここで図17(a)を参照して、好み値の各計算の後、ユーザ選択履歴中のエントリは過去の選択履歴に移動される。選択履歴はユーザ選択履歴189および過去の選択履歴216として区分され、セクション履歴記録を最適に記憶する。選択履歴は、好み値の2つの計算の間でユーザが行なうすべての選択についての情報を含む。過去の選択履歴は、ユーザが過去に行なった最も関連性の高い選択についての最も関連性の高い情報を維持する。過去の選択履歴中の記録の数は有利には、そのような記録の記憶のために利用可能なメモリに適するように構成可能である。この文脈での関連性とは、好み値を計算する際の記録の重要性であり、これは、記録の古さ200、選択記録中の番組204に含まれる特色の反復率203を含むがそれらに限られない多くのパラメータに依存する。記録の関連性と古さ205との間の関係が図17(b)に示される。最も関連性の高い記録が最も最近の記録である。セクション記録中の番組に含まれる特色の反復率と関連性との間の関係が図17(c)に示される。反復率が減少するにつれ、ある限界まで関連性が増加し 206、その後関連性は減少する 207。この関係の背後にある理由付けを示す良い例は、毎週の番組であるSeinfeldが利用可能であるときにユーザ選択上に記録を保つ関連性と、4年ごとの番組であるオリンピックが利用可能であるときにユーザ選択上に記録を保つ関連性とであろう。Seinfeldについての記録を保ってSeinfeldに含まれるさまざまな特色の好みを計算することが重要である一方、前回のオリンピックに対する視聴者の好みについての記録を保つことは無意味である。金曜日を除いて映画に対する好みを有しないユーザを考察する。映画の“金曜夜”の特色のユーザの好みを正確に決定するには、金曜日のその視聴行動に属する選択記録を、少なくとも数週にわたって維持しなければならない。しかしながら、反復の性質が時間の中であまりに掛け離れていれば、関連性は大きく下がる。図17(b)中の“特色の反復率対関連性”のグラフは、y軸上のより高い値に対する、増加する関連性値を測る。x軸は、番組中の特色の減少する反復性率を測る。図17(a)に示されるように、反復率のあるしきい値を超えると、関連性は大きく下がる。
過去の履歴の更新のプロセスが図18(a)および図18(b)に示される。プロセスは、ユーザ選択履歴中のすべての記録に対して行なわれる。過去の選択履歴218中に新たな記録を記憶する十分なメモリが存在すれば、記録はユーザ選択履歴から取除かれ、過去の選択履歴222に加えられる。過去の選択履歴218中に十分なスペースがなければ、過去の選択履歴中の記録は関連性220に基づいてソートされ、最も関連性の低い記録が削除され 221、新たなエントリを加えるためのスペースを作る 222。
この発明の別の実施例では、過去の選択履歴に記憶された利用可能な番組186の数は、利用可能なメモリを最大限に利用するように最適な数に限定可能である(図18参照)。この実施例では、意義のある好み値を有する特色を表わす、より高い好み値を有する番組のみが過去の選択履歴記録に記憶される。
番組選択装置100が行なう、異なる特色に対する好み値の計算が図19に示される。このプロセスは、図16に説明されるように、学習プロセスの間に行なわれる 198。現在の好み値を始点として用いることにより、ユーザ選択履歴および過去の選択履歴に記憶された視聴者挙動の予測のエラーを最小化するように、回帰分析が行なわれる。回帰分析プロセス223は、代表的標本131中で行なわれるものと同じである。予め規定されたしきい値224よりもエラーが大きい何らかの選択記録が存在する場合、選択記録は、可能な関連の特色225の存在について調べられる。可能な関連の特色の存在を規定するルールは経験則であってもよい。特色の可能な関連は、代表的標本から見出された関連の特色のリストをルックアップすることによって見出すこともできる。可能な関連の特色に対する好みは回帰分析226によって計算される。計算された好みが意義のある値231ならば、特色に対する好みが嗜好データベース116に入力される 230。特色に対する反復率のような他のパラメータもデータベース230に入力される。反復率は、ユーザ履歴および過去の履歴の中の特色の反復率を見ることによって計算される。この特色を有する過去の選択記録が存在しなければ、反復率は予め規定された値と仮定される。新たな選択記録が作成されると、反復率が更新される。好み値を計算する(図9に図示された)プロセスの終わりに、現時の好み値および古い好み値の重み付け平均が計算される。これが好み値の新たな集合を形成する。現時の好み値の重みを変更することにより、学習の速度を増加させたりまたは減少させたりすることができる。
将来予測のために番組に対するスコアを計算するフローチャートが図20に図示される。前述のように、番組232に対する好み236は、関数l(p)=Σλ(tn)tnを評価することによって計算される。λ(tn)は、ユーザ234についての特色tnに対する好みと、一般的母集団235についての特色tnに対する好みとの重み付け平均として計算される。
多数のユーザを有する世帯で動作する番組選択装置上で機能するように適合されるこの発明の別の実施例では、視聴者は、初期設定プロセスの間に世帯中の視聴者の数を入力するように依頼される。各視聴者は、代表的特色に対する彼らの好みを捕捉する1組の設定質問に答えることができる。可能な好み値の初期集合は各視聴者ごとに作成される。各視聴者のセッションを正しく識別した後に、学習プロセスは各視聴者の嗜好データベースを別個に更新する。視聴者識別は、視聴者を識別する、視聴者からの明確な入力によってまたは、視聴者のテレビ視聴挙動をモニタすることによる視聴者の自動識別によってのいずれかで行なわれる。視聴者を自動的に識別するため、予測されたものと実際のものとの間のエラー値がすべての視聴者に対して計算される。最も小さいエラー値を生じる好み値を有する視聴者が可能な視聴者として選択される。この決定の確かさは、この世帯中の異なる視聴者に対するエラー値の間の差の関数として計算される確率として表わされる。
この発明の目的は、ユーザの視聴習慣と、並行して人口統計特徴が知られているユーザの代表的標本の視聴習慣とを分析することによって、ユーザの人口統計特徴を決定することである。ユーザのこれらの人口統計特徴が人口統計プロファイルをまとめて構成する。ユーザの正確な人口統計プロファイルをうまく作成すると、この発明は、可能な広告の集合を受取りかつ、個々のユーザに、一致するプロファイルにターゲット決めされたものだけを見せることができる。
人口統計特徴のいくつかの例は、ユーザの性別、人種、年齢および収入を含むが、それらに限られるものではない。代表的標本の視聴習慣の分析の出力は、個々のユーザの人口統計特徴を決定するための根拠を与える。
代表的標本の、視聴習慣の分析において選ばれたTV番組視聴嗜好情報は、人口統計特徴の決定に重要な役割を果たす。人口統計特徴を決定するには異なるTV番組が必要であろう。典型的に、視聴者の大部分が、一般的母集団で観察されるものとは異なる比率で共通の人口統計特徴を共有するTV番組が、人口統計特徴の発見に最も適している。たとえば、“収入”人口統計特徴を定めるため、図21aのグラフ(i)を考察する。x軸はxの増加する順に年収を表わす。x軸のいずれの点についても、y軸は(一般的母集団中で同じである)代表的標本中のxの年収を見つける確率を表わす。ここでグラフ(ii)を考察するが、ここでは点線曲線がグラフ(i)に表わされたのと同じ収入分布をプロットし、第1の実線曲線(一番左の曲線)が、代表的標本中の番組P1の視聴者の収入確率分布を示し、第2の実線曲線が代表的標本中の番組P2の視聴者の収入確率分布を表わす。上記番組P1およびP2の個々のユーザの視聴習慣の分析を用いて、その最も確率の高い年収を決定することができる。ベイズの推論を用いると、この確率を以下の数学式で表わし得る。
P(Ixy|Wp1)=P(Wp1|Ixy)P(Ixy)/P(Wp1)
式中、Ixyは、x−yの年収範囲を表わし
Wp1は、番組p1を見ることを表わし
P(Ixy|Wp1)は、番組p1を見たとした場合の、Ixyの収入の確率を表わし
P(Wp1|Ixy)は、年収がIxyであるとした場合の、番組p1を見ることの確率を表わし
P(Ixy)は、代表的標本中のIxyの収入の確率を表わし
P(Wp1)は、代表的標本中で番組p1を見ることの確率を表わす。
したがって、番組P1を見るユーザに対して、彼の収入がある範囲内にある確率を決定することができる。
その視聴者が、(一般母集団においてと同じである)代表的標本において観察されるのと同じ割合で人口統計特徴を示す番組は、人口統計特徴を決定するのに大きくは寄与しない。図21bのグラフを検討する。グラフ(i)は、代表的標本中の人が男性または女性である確率を表わす棒グラフを示す。グラフ(ii)は、一般母集団に観察されるものと非常に類似している番組P3の視聴者の中で人が男性または女性である確率を示す。ベイズの推論を用いて番組P3を見た人の性別を決定するならば、その人が男性または女性である確率は、一般母集団において人が男性または女性である確率(これは既に既知の値である)に非常に近いものであろう。番組P3に対する個人の視聴習慣を分析することにより有意のものは得られない。他方でグラフ(iii)に基づいて、番組P4に対する視聴習慣を分析することは、一般母集団における性別分布について既に知られているものよりも、人の性別を決定するのにさらなる確実性を生むであろう。
どの番組がユーザの人口統計特徴を決定するのに高い確率値を生むかについての決定は、どれだけその視聴者の人口統計特色が何らかの他の手段によって一般母集団に観察されるものと異なるかに基づいて番組を選ぶアルゴリズムにより経験則を適用することによって、なされ得る。
番組コンテンツおよびその視聴者の人口統計特徴に依存して、同じテレビ番組を用いて1つ以上の特色を決定してもよい。番組の全く異なった集合が異なった人口統計特徴を研究するために必要とされる可能性もある。
さらに、本発明は、ユーザのテレビ視聴嗜好に加えてまたはその代わりにユーザの他の嗜好を分析することを企図する。そのような情報は、これに限られるものではないが、音楽の嗜好、読書の嗜好、買い物の嗜好(とりわけ、服、家具、宝飾類、装飾物、器具、電気機器における嗜好を含む非常に大きいカテゴリである)、政治的および宗教的性向などを含み得る。そのような情報は、いかなるソースから得られてもよいが、ある好ましい実施例では、それは、音楽クラブ、本クラブ、他の特定の関心事のサイト(たとえば、特定のスポーツまたは趣味に向けられたサイト)、ニュースサイトなどの、ユーザがメンバーであるか頻繁に訪れるオンラインのソース(典型的にはワールドワイドウェブサイトとしてアクセス可能である)から得られる。ユーザの嗜好を表わす他の情報は、新聞、雑誌、ニュースレター、ショッピングカタログ、および他の特定の関心事の刊行物などのユーザの定期購読を含む。
ベイズの推論から、ユーザ人口統計特徴に基づいて特定の番組のためのある嗜好を帰することが可能であるが、それは、特定の番組のユーザの選択を説明する唯一の要因であるわけではない。たとえば、図21aのグラフ(ii)を検討する。不明な理由のために番組P2に対する強い嗜好を有する、x1より少ない収入を有するユーザU1についてそれは可能かもしれない。ゆえに、ベイズの推論を用いて、単一の番組P2のみの彼の視聴習慣に基づいてU1の最も確からしい年収に達するだけでは、最も意味のある結果を生じないであろう。ベイズの推論の信念を強化するために、ユーザ視聴習慣は、その集合からの各番組の視聴者が同様の人口統計特徴を示す、番組の集合について分析されなければならない。その集合の番組は、集合中の番組によって示される特色の相関の度合いが最小であるように選択される。番組のこの集合からユーザが見る各番組は、ユーザがその人口統計特徴を持つベイズの確率の信念を強化することを高める。
最小の相関の必要性を説明するために、先の例を検討する。内容においてP2と非常に類似しており、かつP2がユーザU1に対して利用可能であるのと同じその視聴者の人口統計特色を有する別の番組P3の場合には、彼はP2に対してP3と同様の好みを有するであろう。このシナリオでは、番組P3を見るユーザU1によってベイズの確率の信念を強化することは、決定的な寄与とはならない。しかしながら、番組P3が、それが示す内容および特色において非常に異なっているのであるならば、P3を選択するU1の確率は大きく減じられ、ベイズの確率の信念が間違って上昇するのを防ぐ。この状況において、番組P2およびP3の両方を見る人口統計特徴を実際に持つユーザの確率は、かなり高く、信念の強化は決定的な寄与となるであろう。
したがって、人口統計特徴dc1についてのベイズの確率の信念関数は、以下に限られるものでないがこれを含む多くの態様で計算され得る。
BF(dc1)=MAX(bp(w1),bp(w2)..,bp(wm))cr1+MAX(bp(wk),bp(wk+1)..,bp(wk+m))cr2+...+MAX(bp(wn),bp(wn+1)..,bp(wn+m))cm
ただし、
−bp(wn)は、彼が番組wnを見たという事実を仮定したその人口統計特徴を有するユーザのベイズの確率であり、
−(w1,w2,…wm),(wk,wk+1,…,wk+m),(wn,wn+1,…,wn+m)は、番組の集合であり、集合の任意の要素は同じ集合の別の要素との高い程度の相関を有するが、別の集合の要素と非常に低い程度の相関を有し、
−MAX(bp(wn),bp(wn+1)…,bp(wn+m))は、その集合内のすべての可能な値のうち最大のベイズの確率値を表わし、
−cr1は集合(w1,w2,…wm)の相関係数を表わし、cr2は集合(wk,wk+1,…,wk+m)の相関係数を表わす、などである。同じ集合の要素は相関係数を有する。
いかなる人口統計特徴の信念関数も、図23aのS曲線によって表わされる。x軸は、xの増大する値に対して人口統計特徴の信念関数の増大する値を表わす。y軸は、yの増大する値に対してその人口統計特徴を示すユーザの確率の増大する値を表わす。図に示すように、確率は、信念関数の値がより高くなるにつれさらには増大しない。
代表的標本の視聴習慣の分析の出力のいくつかは、図23bに概略的に表わされる。
この発明に従う番組選択装置による広告の表示は、ユーザ計算の人工統計的プロファイルが広告のターゲットプロファイルと一致するときなされる。広告に含まれる要素のいくつかは、広告コンテンツ(ビデオクリップ、オーディオクリップおよび/またはグラフィックもしくはテキスト情報からなってもよい)、および、この広告がターゲットとされる人口統計プロファイルに対する情報を含むメタデータである。
広告に含まれるメタデータは、図23cに概略的に表わされる。ここで「ターゲットレコードの数」はこの「ターゲット広告メタデータ」に含まれる「ターゲットレコード」の数のことをいう。各「ターゲットレコード」は、この広告がターゲット決めされる人口統計特徴のことをいう。「ターゲット関係規則」は、関係規則を決定するために使用される。たとえば、広告は、以下の基準の任意の1つを満たすユーザに向けてターゲット決めされ得る:
−収入レベルがIxとIyとの間であり
−民族的背景がeb1である。
「ターゲット関係規則」は上記関係を指定するために使用されるであろう。
既知の人口統計特徴を有する代表的標本の視聴習慣の分析によって決定される「人口統計特色データ」と「ターゲット広告メタデータ」とは、番組コンテンツおよびEPGデータとともに放送ヘッドエンドから番組選択装置に放送される。これは図22に示される。これは、各番組選択装置において各ユーザによって受信され、ユーザ人口統計プロファイルを決定する。広告コンテンツとともに「人口統計特色データ」および「ターゲット広告メタデータ」の放送は、周期的ベースで行なわれてもよく、または放送ネットワークもしくは必要に応じて何らかの他の通信メカニズムにより常に利用可能とされてもよい。
番組選択装置では、「人口統計特色データ」および「ターゲット広告メタデータ」は、これに限られるものでないが、ハードディスク、フラッシュROMまたは主メモリなどの記憶装置に集められ記憶される。このデータの収集は、固定の時間期間で、または選択される実施例に依存して好適なときいつでも行なわれてよい。「人口統計特色データ」における各特色レコードごとに、番組選択装置は過去の選択履歴を通過する。過去選択履歴において利用可能である「特色値レコード」上の各番組は、信念関数の計算に使用される。「特色値レコード」中の信念関数分布グラフを次に用いて、その人口統計特徴を有するユーザの確率を決定する。この人口統計特徴についての先の確率が利用可能であるならば、古い確率および新しく決定された確率の重み付き平均がとられ記憶される。「ターゲットレコード」の「確率満足基準」がユーザの人口統計プロファイルによって満たされるターゲット決めされた広告の各々が選択され適切な時間に表示される。
この開示のいたるところに論じられるように、別の好ましい実施例では、この発明は、広告に加えてユーザに対して他のターゲット決めされたコンテンツを提供することを可能にする。
図1を再び参照し、テレビ制御システム100は、好ましくは、汎用のデジタルコンピュータと、ブロック100内に示される機能を実現するために記憶されたプログラムを実行する関連付けられたハードウェアとによって実現される。テレビ制御システム100が実現される正確なハードウェアおよびソフトウェアプラットフォームは、重要でなくさまざまな形をとり得る。たとえば、テレビ制御システム100は、CATV信号を受信するために家庭において個人によって典型的には使用され得るようなセットトップボックスにおいて実現されてもよい。テレビ制御システム100の別の実現化例は、テレビ信号を受信し表示するために必須のハードウェアおよびソフトウェアで構成されるパーソナルコンピュータの形である。ここに記載される原理に従ってプログラムされ得るセットトップボックスの一例は、IBMマイクロエレクトロニクス(IBM Microelectronics)によって以下の書類に記載される:“Set−Top Box Solutions”, Product # G522−0300−00 (1997年11月19日);“Set−Top Box Reference Design Kit”, GK10−3098−00 (1998年4月15日);“Set−Top Box Peripheral Chip”,GK10−3098−00, (1998年4月15日);“Set−Top Box Solutions: Helping Customers Meet the Challenges of Convergence”, G522−0300−00 (1997年11月19日); および“The challenges of convergence for Set−Top Box manufacturers”, G599−0302−00 (1997年11月19日)。ここに記載される実施例に対するプラットフォームとしての役割を果たすことのできる、セットトップボックスについて利用可能であるアプリケーションプログラミングインターフェイス(API)の一例は、オープンケーブル(OpenCable)によって刊行された「最新セットトップボックスのAPI要件」(“API Requirements for the Advanced Set−Top Box”)(1997年10月21日)に記載される。ここに記載される実施例をサポートする機能を組込むオペレーティングシステムの一例は、オープンTV社(OpenTV, Inc.)から入手可能であり、オープンTV社による以下の技術白書刊行物に記載される:“OpenTVTM Operating Environment”および“Application Development for OpenTVTM”。そのようなオペレーティングシステムの利点は、信号104から属性情報107を獲得するためのファンクションコールの形で提供されるサポートである。代替的に、マイクロソフト社(Microsoft Corporation)のウィンドウズ(R)NTオペレーティングシステムなどの汎用のオペレーティングシステムが、属性情報107から必要な情報を抽出し、かつ受信された信号104および記憶された情報105の他の操作を行なうために必要とされる機能を提供するさらなるソフトウェアと関連付けて使用されてもよい。
記憶装置106は、種々の異なったタイプの記憶装置を含み得る。たとえば、嗜好データベース116は、不揮発性ランダムアクセス半導体メモリに記憶されてもよい。テレビ番組105および属性情報107は、従来の磁気ハードディスクドライブなどの、より大きい容量を有する記憶装置上に記憶されてもよい。一般的に、記憶装置106は、種々の記憶装置を含むものと理解される。記憶装置が必要な情報を記憶するための容量および速度を有する限り、記憶装置106の正確な形は重大でない。記憶装置106は、システム100の制御下でテレビ番組105および属性情報107を従来の磁気テープ上に記憶するように動作する従来のビデオカセットレコーダ(VCR)を含んでもよい。
この説明の目的のために、テレビ制御システム100は、テレビ信号を受信しかつテレビ信号から属性情報107を抽出するのに必要なチューナおよび他の機能を含むシステムと統合されるかまたはこれに結合され、典型的にはテレビ信号の受信および視聴と関連付けられる他の機能を行なうものと仮定される。ある実施例においては、テレビ制御システム100は、最適な態様でデータベースとの情報の記憶および検索をさせることにより嗜好データベース116との対話を促進するデータベースエージェントと関連付けて動作し得る。嗜好データベース116は、上述したデータベースエージェントを実現するための機能をも組込む、オラクル社(Oracle Corporation)から入手可能であるオラクルライト(Oracle Light)データベースプロダクトなどの商業的に入手可能なデータベースプロダクトによって実現されてもよい。
録画マネージャ112は、図24に示すステップのシーケンスを周期的に開始することにより番組105の録画を行なう。201で、録画マネージャ112は、特定の時間(X)のすべての番組の評価、または代替的に、特定の時間期間(X)内のすべての番組の評価について嗜好エージェント110に要求を送信する。例として、図2に示すステップは、6時間ごとに行なわれてもよい。ある実施例においては、図24のステップが行なわれる頻度はユーザによって変更可能であってもよい。嗜好エージェント110は、録画マネージャ112から受信される番組の各々について、嗜好データベース116から、評価を与えることによりステップ202で応答する。次に、録画マネージャ112は、嗜好エージェント110から受取られる評価に従って、時間Xでまたは時間期間X内で、番組の録画を行なう。具体的には、最高の評価を有する番組には録画のための最も高い嗜好が与えられ、最低の評価を有する番組には、録画のための最も低い嗜好が与えられる。録画は記憶容量の制約を受ける。たとえば、最高と評価された番組が1時間の長さであれば、30分のみの録画空間が記憶装置106上で利用可能であり、1時間の番組はスキップされ、最高と評価された30分の番組が録画される。
番組の録画のための最も高い優先権は、具体的にはユーザによって要求される番組に与えられる。たとえば、ユーザが、日付、時間およびチャンネルを指定することにより、または番組のための識別コードを指定することなどにより、録画のために特定の番組を特定すると、嗜好エージェントによって評価された番組よりもその番組の録画に優先権が与えられる。次に最も高い優先権は、ユーザによって指定された特定のカテゴリ値対と一致する番組に与えられる。たとえば、ユーザが特定の番組を特定しないが、旅行に関する1時間のドキュメンタリが録画されるべきであると指定するならば、嗜好エージェント110によって評価された番組よりもそのようなカテゴリ値対と一致する番組の録画に優先権が与えられる。代替の実施例では、ユーザ指定の番組とユーザ指定のカテゴリ値対と嗜好エージェント110によって評価された番組との間の相対的優先権は、ユーザによって変更可能である。
録画マネージャ112は、嗜好エージェント110によって生成されるそのような番組の評価に従ってテレビ番組105の削除を行なうことにより、記憶装置106上の記憶容量を管理する。これは、どの番組を録画すべきかを決定することについて上に説明されたものと同様の態様で行なわれる。どの番組を削除すべきかを決定するために録画マネージャ112によってとられるステップを示す図25は、図24と同様である。ステップ301で、録画マネージャ301は、記憶装置106上に記憶されるすべての番組について嗜好エージェント110から評価を要求する。ステップ302で、嗜好エージェント110は、要求された削除評価を与えることにより応答する。ステップ303で、録画マネージャ112は、嗜好エージェント110から受取られる削除評価に従って、必要に応じて番組の削除を行なうことにより応答する。具体的には、記憶装置106上のさらなる空間が、1つ以上のさらなる番組を録画するために必要とされるとき、録画マネージャ112は、最低の評価を有する番組の削除または上書きをまず行なう。ゆえに、他の記憶されたテレビ番組と関連して、最も好ましくないと嗜好エージェント110によって決定される記憶されたテレビ番組がまず削除または置換され、最も好ましいと決定されたものが最後に削除または置換される。番組の削除は必要なときのみ起こる。有利には、この結果として、記憶装置106は典型的には最大の容量まで一杯にされ、そのためユーザに可能な限り広範な種類の番組を提供する。ユーザは、記憶装置106に残るべき番組を指定することができる。そのような番組は、図25に示すステップにおいて録画システム100によって削除されない。さらに、ユーザは、削除されるべき番組を指定することができ、したがって図25に示すステップを無視することができる。
ある実施例においては、嗜好データベースは、現在放映の番組についての情報がユーザに提示される態様を変更するためにシステム100によって使用される。たとえば、そのような実施例では、嗜好データベースは、現在放映番組が提示される順番を再配置することにより、嗜好データベース116により最高と評価された属性情報107を有する番組がまず提示されるために使用される。代替的に、嗜好データベース116は、嗜好データベースに記憶されるさまざまな特色の好みに従って現在放映番組に関する情報を編成するために使用可能である。
図26aおよび図26bは、本発明の原理を採用するシステムの代替のハードウェア構成を示す。図26aは、デジタルで符号化されたオーディオおよびビデオの記憶および取出をサポートするハードウェア構成を示す。インターフェイス902は、標準のデジタルケーブルまたはデジタル衛星入力インターフェイスである。インターフェイス906は、記憶装置106に対するハードウェアインターフェイスであるが、好ましくは、IDEもしくはSCSIインターフェイスの形または提案されるIEEE−1394インターフェイスの形をとる。インターフェイス906は、NTSCまたはPAL符号化ビデオインターフェイスである。テレビ信号104が、現行のテレビ放送信号の場合においてのようにアナログ信号、およびCATV信号の形をとるならば、信号104は、図26aに示すものなどのデジタル記憶媒体への記憶の前に、デジタル化され一般的には圧縮(たとえばMPEG−II基準による)されなければならない。
図26bは、従来のVCRなどのアナログ記憶装置106を用いる実施例を示す。テレビ信号104がアナログであるならば、インターフェイス910は、従来のNTSCまたはPALインターフェイスの形をとる。テレビ信号104がデジタルであるならば、インターフェイス910は、図26aに示すインターフェイス902としての形をとり、デジタル−アナログ変換器が、記憶装置106への記憶の前に、受信された信号をアナログの形に変換するために必要とされる。
図27は、好ましい実施例の自動録画一時停止特徴の動作を示す。ユーザが現在放映番組を見ており、番組の視聴を止めるか一時的に停止したいならば、録画システム100は、有利には番組が録画されることを可能にし、そのためユーザはその後に番組を視聴することを再開することができる。図27に示すように、1002で、ユーザは現在放映番組を見ている。録画システム100に結合されたリモートコントロール上の適切なボタンを押すことなどにより、ユーザによって1004で一時停止入力の生成により、システム100は、1006で、ユーザによって視聴されている番組の録画を行なう。そして、ユーザは自由に別の番組を見たりまたはテレビ108を全く見ることをやめることができる。その後の時点で、前述のリモートコントロール上の適切なボタンの押下などにより、視聴再開入力が受信されるならば、1010で、録画システム100は、ステップ1006で録画された番組が、録画がステップ1006で開始された点から取り出されテレビ108上で見られるようにする。ステップ1010が開始されたとき番組がなおも放送されているならば、番組の録画がシステム100によって続行する。そのためユーザは、容易に現在放映番組の視聴を中断しその後の視聴を再開することができる。
好ましくは、録画システム100は、録画された番組の早送り、巻戻しおよび視覚的スキャンなどの種々の機能、ならびに記憶媒体106によってサポートされる他の機能をサポートする。たとえば、記憶媒体106がVCRの形をとるのであれば、番組視聴および操作機能は、早送り、巻戻し、順方向または逆方向の視覚的スキャンといった標準のVCR機能に制限される。記憶装置106がデジタル記憶媒体の形をとるのであれば、より高等な番組検索および取出機能がサポート可能である。
嗜好エージェント110および録画マネージャ112によって行なわれる機能は特定の実施例の例示であることが認められる。しかしながら、2つのモジュール110と112との間のタスクの分割は変更されてもよい。さらに、データフォーマット115、116、105および107は種々の形をとってもよい。
図28は、本発明のある実施例に従うEPGおよびテキスト情報サービスを示す。図示 のとおり、ローカルケーブルテレビ会社のビリングベンダー10は、ケーブルヘッドエンドに位置するシステムマネージャ112のRS−232ポートにビリングリンクを介して交信する。ビリングベンダー10は加入者データベースを含み、サービスのレベルおよびいずれかのペイパービュー方式の購入に基づいてシステムの加入者のために月間の請求書を作成する。システムマネージャ12は、ビリングベンダー10から視聴者権限付与トランザクションを受け、かつ分配装置または加入者への配送のためにトランザクションを生成するパーソナルコンピュータまたは他の処理装置であり得る。そのようなトランザクションは、加入者のセットトップボックスに、チャンネルのどのグループをそれが受信する資格があるのか、特定のテキストデータチャンネルに対してどの周波数を同調するか、そのテキストチャンネルのオーディオの音を消すべきかどうか、ページ間のページネーション遅延、などを指示するテキストチャンネル定義トランザクションを含む。
システムマネージャ12はまた、加入者へのテレビ番組編成の伝送を制御するヘッドエンドコントローラ(HEC)14のRS−232ポートにヘッドエンドリンクを介して交信する。図29に関してより詳細に記載されるように、HEC14は、この発明に従ってEPGおよびテキストデータのフローを管理する情報サービスプロセッサ(またはデータコントローラ)16のRS−232ポートに制御リンクを介して交信する。図28の破線によって示されるように、情報サービスプロセッサ(ISP)16は、好ましくは、システムマネージャ12、HEC14および信号スクランブラとともにケーブルヘッドエンドに位置する。しかしながら、当業者は、ヘッドエンド機器のすべてが1箇所に位置する必要がないことを認めるであろう。
EPGデータは、1つ以上のローカルまたは遠隔EPG供給者18から衛星リンク、モデムリンクまたは他の通信リンクを介してISP16のRS−232ポートに供給される。同様に、1つ以上のテキストチャンネル供給者20からのテキストデータは、衛星リンク、モデムリンクまたは他の通信リンクを介してISP16の別のRS−232ポートに与えられる。好ましい実施例では、ISP16は、複数個のEPG供給者18およびテキストチャンネル供給者20からデータを受入れるための複数個の同一のRS−232ポートを有する。
また、図示のとおり、これらのRS−232ポートの1つは、HEC14への制御リンクのために使用されることもできる。ISP16は、EPGデータおよび/またはテキストチャンネルデータを選択された視聴者に与えるためにHEC14からの制御信号に応答してEPGソースデータベースおよびテキストソースデータベースを管理する。
HEC14はまた、RS−485出力ポートを介して視聴者のセットトップボックスに直接制御データを与える。好ましくは、HEC14からの制御データは、EPGデータなどに対してどの周波数で同調すべきかをセットトップボックスに指示するために、テキストチャンネル定義トランザクションおよびEPG定義トランザクションを含み得る。制御データは、必要に応じて視聴者のセットトップボックスを再プログラムするために視聴者のセットトップボックスにダウンロードするためのソフトウェアを含んでもよい。、HEC14からの制御データは、公知の帯域内技術を用いてデージーチェーン接続されたスクランブラ22、24および26により、選択されたケーブルテレビ信号の垂直帰線消去間隔に挿入されることができるが、HEC14からの制御データは、伝送のために帯域外搬送波または帯域内オーディオ搬送波で変調されてもよい。好ましくは、スクランブラ22〜26は、スクランブラが個別にまたはグローバルにアドレスされ得るように、デージーチェーン接続される。
同様に、ISP16からのEPGデータおよびテキストチャンネルデータは、ISP16のRS−485出力ポートを介して視聴者のテレビセットトップボックスに与えられる。EPGデータおよびテキストチャンネルデータは、EPGスクランブラ28ならびにテキストチャンネルスクランブラ30および32によってそれぞれ、選択されたケーブルテレビ信号の垂直帰線消去間隔に同様に挿入される。スクランブラ22〜32は、制御データ、EPGデータおよびテキストチャンネルデータを水平帰線消去間隔などのビデオ信号の他の部分に挿入するか、またはビデオを完全に置換してもよい。典型的には、スクランブラの数は、スクランブリングが使用されるプレミアムチャンネルの数に依存する。好ましくは、EPGスクランブラ28ならびにテキストチャンネルスクランブラ30および32は、制御データスクランブラ22〜26と同一であり、個別またはグローバルアドレシングのために同様にディジーチェーン接続される。図28に示すように、スクランブラ28〜32は、使用されるすべてのデータストリームについて、図29についてより詳細に記載されるように、組合されたEPGデータおよびテキストデータならびに表示制御トランザクションを搬送する単一の直列データチャンネルを受信する。各スクランブラには、データベースアクセスの数を最小にするために、内部メモリに予め定められた量のこのデータを記憶するためのメモリが装備されてもよい。好ましくは、スクランブラ28〜32は、かなりの数のトランザクションを記憶するのに十分な内部メモリを有する。たとえば、スクランブラ30は、スポーツテキストチャンネル上での表示のために1日のスポーツのスコアを得点するために十分な内部メモリを有してもよい。スクランブラ28〜32において受信され記憶されたデータは、好ましくはRS−485フォーマットであり、好ましい実施例のプロトコルはSDLCである。スクランブラ28〜32へのすべてのデータトランザクションは、ターゲットスクランブラ(SDLCプロトコルでのステーションアドレスを指定する個別のデータストリームで送信され、制御データは、データストリームがISP16からのトランザクションによって構成可能となるようにスクランブラのアドレスに基づいてスクランブラ28〜32においてフィルタリングされるグローバルデータストリームで送信される。個々のEPGデータおよびテキストデータストリームは、好ましくは、それらが所望に応じて割当て可能であるようにスクランブラにおいて汎用である。好ましくは、スクランブラ28〜32は、少なくとも9600のボーレートを有する。
好ましくは、加入者のセットトップボックスは、ISP16からEPGデータを記憶するためのEPGメモリ36を含むセットトップボックス34である。たとえば、EPGメモリ36は、セットトップボックス34のメニューを介する視聴者による選択的アクセスのために1週間または2週間分のEPGデータを記憶し得る。このメニューは、好ましくは、視聴者が、視聴者のテレビリモートコントロール装置のキーパッドを用いて、EPGメモリ36に記憶されたEPGデータをスクロールすることを可能にする。セットトップボックス34はまた、EPGデータが視聴者のテレビ40上での視聴者への表示のために挿入されるべきテンプレートを記憶するための不揮発性テンプレートメモリ38を含んでもよい。この態様では、テンプレート表示データを含むビデオ信号は、セットトップボックス34に連続的に再伝送される必要がなく、それによりさらなる帯域幅を節約する。代わりに、EPGデータは、30分ごとにまたは番組変更がある場合に更新されるだけでよい。もちろん、異なったセットトップボックス34が、セットトップボックス34の製造の際の許容メモリコストに従ってそのような目的のためにさまざまな量のメモリ能力および処理能力を有してもよい。
図28に示すように、セットトップボックス34は、画面への提示のためにテキストデータのページを記憶するためのテキストデータメモリ42を含んでもよい。したがって、テキストデータのあるページが加入者に表示されている間に、テキストデータの次のページがテキストデータメモリ42にロードされ得る。
ISP16は、データサービスプロバイダから視聴者のセットトップボックス34へのテキストデータおよびEPGデータの流れを管理する。ISP16は、1つ以上の権限付与されたテキストデータソースおよび/またはEPGデータソースからのみのデータを受入れ、テキストデータおよびEPGデータをその内部データベースマネージャにおいて処理し、処理されたデータを共通データトランザクションフォーマットにフォーマットして、セットトップボックス34への伝送のためにスクランブラに出力することにより、このデータを管理する。加入者へのEPGデータおよびテキストデータの提供は、制御リンクを介してヘッドエンドコントローラ14により制御される。
好適なISP16の一例は、EPGデータ入力および/またはテキストデータ入力のための複数個のRS−232シリアル入力ポートと、HEC14によって使用されるタイプのその出力に少なくとも1つのRS−485HDLCシリアルリンクとを有するIBM PSモデル7546パーソナルコンピュータである。図28に示すように、制御リンクは単一のRS−232シリアルポートであり得る。ISP16のハードウェアコンポーネントおよびソフトウェアコンポーネントは図29に示されるように構成される。
ISP16のある実施例は、EPG供給者18およびテキストチャンネル供給者20によって非同期に与えられるEPGデータおよびテキストチャンネルデータの共通インターフェイスを提供する複数個のRS−232ポートとして図29に示される。EPGデータおよびテキストチャンネルデータは、衛星リンク(インターフェイスが単信モードで動作するとき)を介して、またはモデム(インターフェイスが半二重モードで動作するとき)によりISP16に伝送される。好ましくは、データは少なくとも1200のボーレートで伝送される。
ISP16は、権限付与されたデータソースによるアクセスのみを可能とする「ゲートキーパー」として機能する。したがって、ISP16がEPG供給者18またはテキストチャンネル供給者20からメッセージを受信すると、それはまず権限についてデータを検査する。その供給者が権限付与されていなければ、データは無視される。供給者にISP16へアクセスする権限が付与されているとき、ISP16は要求された動作を行ないコマンド応答メッセージを戻す。通信リンクが単信であるならば、応答は無視される。この態様では、ISP16へのアクセスは、権限コードによって制限され得るが、以下に記載されるように、アクセスは、データプロバイダがEPGデータまたはテキストデータをISP16によって予想される伝送プロトコルで与えるかによっても制限される。
EPG供給者18またはテキストチャンネル供給者20とISP16との間で送信されるメッセージは、テキストバイトの開始、ASCII文字のデータブロック、チェックサムバイトおよびASCII復帰を含むようにフォーマット可能である。このフォーマットは、データ供給者からISP16に送信されるコマンドおよびデータ供給者に送信される応答において使用される。チェックサムは、テキスト文字の開始に続いて第1の文字で始まり、これを含まないが最大チェックサムフィールドまでのメッセージフィールド中のすべてのバイトの2バイトCRCであり得る。チェックサムは、CRC計算の16進ASCII表現(4バイト)としてメッセージ中に伝送される。データブロックは、入力データがEPGデータであるかまたはテキストデータであるかに依存して異なったように構成可能である。
EPG供給者18からのEPGデータは、たとえば、単一の番組に関連するすべてのデータを特定するために使用される番組定義コマンド、異なったタイプの番組を特定するためのカテゴリを確立するために使用されるカテゴリ定義コマンド、および、新番組編成カテゴリのためにISP16のデータベースに余地を作るために使用されていないカテゴリを削除するために使用されるカテゴリ削除コマンドを含むEPGコマンドセットに従ってフォーマット可能である。EPGデータは、これらのコマンドにより1番組あたりベースでフォーマットされ得る。
デリミタ文字は、フィールドの長さを特定するためにタイトルおよび番組記述ブロックなどの可変長のフィールドについて使用可能である。たとえば、NUL(16進で0)はフィールドがヌルであることを意味し、SOH(16進で1)はフィールドが有効であることを意味し、ETX(16進で31)は現在レコードの終わりを意味する。
番組定義コマンドとともに伝送されるデータがISP16のEPGデータベースに記憶されると、EPGデータは、セットトップボックス34への伝送のためにトランザクションにフォーマットされる。このコマンドは、ISP16のEPGデータベース中の対応するエントリを上書きするので、番組定義を更新するためにも使用されてよい。
ISP16は、エラーなし(正常な応答)、サービスプロバイダ見付からず(権限付与されていない)、サービスのタイプ見付からず(権限付与されていない)、カテゴリID奔出(riot)発見、認識されていないコマンド、チェックサムエラー、不十分なディスクスペース、などの適切な応答を送信することにより、EPG供給者18からのそのようなコマンドに応答し得る。他のEPGコマンドおよびコマンド応答が所望に応じて与えられてもよい。
テキストチャンネルデータは、多くの異なったテキストチャンネル供給者20から発生し、衛星、ダイアルアップモデル、ダイレクトコネクトモデムなどの異なった通信リンクを介してまたはシステムマネージャ12への直接接続でISP16に到達することができる。
ISP16は、複数個のデータベースおよびデータベースマネージャを含み得る。図29に示すように、ISP16中に維持される2つのタイプのデータベースがあり得り、一方のタイプはEPGデータのためで、一方はテキストチャンネルデータのためのものである。EPGデータベースは、各EPG供給者からデータを集め、かつチャンネルおよび日時によって各EPG番組レコードをソートするように設計される。別個のデータベースが、関連付けられるテキストチャンネル供給者20からテキストデータを集め、かつ以下に記載されるような技術を用いて個々のテキストチャンネルでの伝送のために、受信されたテキストデータをフォーマットするために、各テキストチャンネルごとに生成される。生成される各データベースは、HEC14からISP16に与えられる制御リンクコマンドにおいて使用される番組定義コマンドに列挙されるサービスコードのタイプおよびサービスプロバイダによって特定される。
図29に示すように、受信されたコマンドは、ルータおよびフォーマッタ43によって、適切なように、そのコマンドコード、サービスプロバイダ、サービスおよび権限コードのタイプについて検査される。コマンドが権限付与されていないデータソースからのものであれば、その後のデータは無視される。しかしながら、受信されたデータが権限付与された供給者からのものであれば、ルータおよびフォーマッタ43は、データをISP16内の適切なデータベースに経路付ける。たとえば、EPGデータが受信されるならば、それはEPGデータベースマネージャ44を介してEPGデータベース46に経路付けされる。
ある実施例では、EPGデータベースマネージャ44は、受信されたEPGデータをチャンネルおよび日時によってソートし、後の再現のために、受信されたEPGデータをEPGデータベース46中の適切な場所に記憶する。EPGデータベースマネージャ44は、レコードが削除されるときEPGデータベース46に対してガーベージコレクションも行なってもよい。EPGデータベースマネージャ44は、当業者には公知であるように、より頻繁に使用される文字を通常のASCIIに使用される通常の8ビットよりも少ないビットに対応付け、一方でそれほど頻繁に使用されない文字により多くのビットを与えるハフマン圧縮アルゴリズム(Huffman Compression Algorithm)などのデータ圧縮ソフトウェアルーチンを呼出し得る。文字に使用されるビットの数は、データストリームに現れるその確率に基づく。ハフマン符号化は、バイト(Byte)、1991年3月、第309〜314頁の、「ロスのないデータ圧縮」(“Lossless Data Compression”)と題する記事に詳細に記載され、ここに引用により援用される。そのようなルーチンは、EPGデータベース46での記憶効率を最大にするために所望される。同様に、各テキストデータベースマネージャは、関連付けられるテキストデータベースにテキスト情報を記憶することができ、データ圧縮を行なう。
ルータおよびフォーマッタ43ならびにデータベースマネージャ44、48および52はすべて、HEC14からの制御データに応答するコンフィガレータ56によって制御される。コンフィガレータ56は、HEC14からの制御コマンドに応答して、入来データとの比較のために、かつ、EPG供給者18およびテキストチャンネル供給者20がシステムに加えられたり減じられたりする際にデータベースマネージャおよびデータベースなどを加え/減じるために、ルータおよびフォーマッタ43に更新された権限情報を与える。
ISP16へのアクセスは、権限コードの使用により注意深く制御され得る。さらに、ISP16は、EPGデータおよびテキストデータを特定のフォーマットでISP16中の適切なデータベースに記憶することにより視聴者に与えられる情報サービスに対する制御を維持し得る。
図30をここで参照し、EPGデータベースキーは、EPGデータからのデータおよび時間フィールドならびにチャンネル数の組合せであり得る。これらのフィールドの後に、持続期間フィールド、反復フィールド、番組評価フィールド、番組カテゴリフィールド、批評フィールド、属性フラグフィールド、番組特色フラグフィールド、テキストデータ圧縮フラグおよび最後にテキストデータが続く。テキストデータフィールドはさらに、各フィールド間にデリミタを備えるいくつかのオプションのサブフィールドからなってもよい。
EPGデータベースマネージャ44は、レコードを追加する、レコードを削除する、レコードを読出す、などの共有ライブラリルーチンによりEPGデータベース46にアクセス可能である。EPGデータベース46が使用されるとき、レコードが追加され削除される際にそれは断片化可能であり、その結果としてEPGデータベースマネージャ44はさらに、EPGデータベース46に対してガーベージコレクションルーチンを含み得る。テキストデータベースは同様に構成されるが、ただしガーベージコレクションは必要でない。
ある実施例では、EPGトランザクションフォーマッタ58は、EPGデータベース46のデータベースレコードを読出し、それらをEPGスクランブラ28に伝送される予め定められた数のバイトを有するプログラムベースのトランザクションにフォーマットし、ビデオ信号の垂直帰線消去間隔へ挿入しセットトップボックス34へ伝送する。これらのトランザクションは次に、適切なビデオチャンネルへの挿入のために、図28に示すEPGスクランブラ28へトランザクションアービトレータ64を介して送信される。
トランザクションアービトレータ64からのトランザクションは、プレミアムケーブルチャンネルをスクランブルするために使用されるタイプの複数のスクランブラに接続されるISP16の単一RS−485出力ポートに出力され得る。トランザクションは、EPGスクランブラ28へ(トランザクションがEPGデータを含む場合)またはテキストチャンネルスクランブラ30および32へ(トランザクションがテキストデータを含む場合)の伝送のために、EPGデータストリームおよびテキストデータストリームにセグメント化される。
ある実施例では、EPGトランザクションフォーマッタ58によって生成されるEPGトランザクションは、上述のようにSDLCフレームにフォーマットされる。EPGトランザクションデータについてのサンプルSDLCフォーマットは図31に示される。図31において、開始フラグは、SDLCフレームの開始を輪郭付け、ステーションアドレスはアドレスされるべきスクランブラを表し、制御バイトは何が処理されるべきかを定義するコマンドコードであり、情報フィールドは図30においてのようにフォーマットされるEPGデータを含み、フレームチェックは、開始フラグと終了フラグとの間のすべてのデータについてのCRCを含み、終了フラグはSDLCフレームの終わりを輪郭付ける。EPGトランザクションフォーマッタ58からの伝送は、特定のデータストリームをアドレスし、EPGスクランブラ28からの応答は、ステーションアドレス場所中にそのデータストリームを特定する。上述したように、そのような伝送はEPGスクランブラ28からの応答を必要としても必要としなくてもよい。
EPGトランザクションは、典型的には、後続のデータがEPGデータストリームからであることを指定するバイトと、たとえば、スクランブラからの応答が予想されるかどうかを指定する制御コードバイトと、EPGデータブロック数を述べる2バイトと、EPGデータが短期または長期データであるかを述べるフラグと、EPGデータブロックを構成するトランザクションの数と、実際のトランザクションとを含むEPGブロック追加コマンドを含む。EPGトランザクションフォーマッタ58はまた、データがEPGデータストリームから削除されるべきであること、制御コードバイト、および削除されるべきEPGブロック数を指定するEPGブロック削除コマンドを生成し得る。
図32は、EPGトランザクションフォーマッタ58に使用され具現化され得るソフトウェアのある実施例のフローチャートを示す。図示のとおり、ソフトウェアは、ステップ500で始まり、ステップ502でISPシステムクロック63からシステム時間および日付を得る。次に、ステップ504で満期EPGデータブロックがEPGスクランブラ28のメモリから削除される。満期EPGデータブロックは、現在システム時間の前に完全に放送されてしまった番組、または、EPGについて使用される時間窓の前に放送された番組を表わすデータブロックとして定義される。ステップ506で、EPG時間窓内に時間および日付を有する現在EPGデータブロックがEPGデータベース46から読出される。次に、現在EPGデータブロックは、ステップ508で、EPGブロック追加コマンドおよび関連付けられるトランザクションにフォーマットされる。次に、EPGトランザクションフォーマッタ58のブロック/時間マップがステップ510で更新される。ブロック/時間マップは、好ましくは、各EPGデータブロックがEPGスクランブラ28に送信された時間を記憶する。次に、ステップ512で、EPGデータを表わすトランザクションがEPGスクランブラ28に伝送される。次に、ステップ514で、EPGトランザクションフォーマッタ58は、次のEPG更新(システム時間が新たな30分に入るとき起こるべきものである)または次のEPG変更(任意のときに起こり得るものである)を待つ。そのような更新または変更の受信により、制御はステップ502に戻る。テキストトランザクションフォーマッタ60および62は同様に、上述したように1画面あたりベースで(番組当りではなく)定義されるテキストデータについてのテキストトランザクションを生成する。したがって、テキスト画面追加コマンドはEPGブロック追加コマンドと同様であるが、ただしテキストチャンネル数および画面数がEPGブロック数および短期/長期データバイトの代わりに与えられる。テキストトランザクションフォーマッタ60および62は、適切なページネーションが維持され得るように、スクランブラに時間を要求してもよい。
図33は、テキストチャンネルトランザクションフォーマッタ60,62に使用され具現化され得るソフトウェアのある実施例のフローチャートを示す。図示のとおり、ソフトウェアは、ステップ600で始まり、ステップ602でテキストデータベース50または54からテキスト画面レコードを読出す。テキスト画面は、ステップ604でテキスト画面追加トランザクションにフォーマットされ、ステップ606でテキストチャンネルスクランブラ30,32へ伝送される。好ましくは、そのようなトランザクションは、表示文字がテキスト表示画面のディスプレイ座標ごとに別個の文字としてではなく表示コマンドとして送られるようにフォーマットされる。次に、ステップ608で、テキストトランザクションフォーマッタ60,62は、システムマネージャ12によって指定される時間期間分待ち(自動ページネーションが使用される場合)、その後に次のテキストページがフォーマットされテキストチャンネルスクランブラ30,32に伝送される。この時間期間の終わりに、制御はステップ604に戻り、テキストデータベース50,54中の次のテキスト画面レコードがフォーマットされ、特定のビデオ信号の垂直帰線消去間隔への挿入のためにテキストスクランブラ30,32に伝送される。
テキストデータは、ページの各表示場所ごとに別個の文字を送信することにより画面に送られ得る。言い換えれば、テキスト画面が16線と1線当り4文字とを含むならば、テキスト画面は、1つがその表示画面の各表示場所に対するものである、384(24X16)文字を送信することにより表わされる。ブランクスペース文字が、文字が特定のテキスト画面場所中に存在しないことを示すために送信される。
ある実施例においては、テキストデータは、テキストデータの表示を制御するための適切なコマンドとともに画面に伝送される。たとえば、シーケンス中の第1の表示コマンドが、テキストデータとして後続のデータを特定し、セットトップボックス34に、青背景またはテキストが表示される何らかの他の背景もしくはテンプレートでテレビ画面を満たすように指示する。次に、テキストデータは、共にテキストの別個の画面を特定する一連のコマンドに変換される。上述したように、テキストデータは1画面あたりベースでグループ化されるが、これは、適切な遅延メカニズムが表示コマンドに組込まれることを可能にし、それぞれのテキスト画面の提示の間に必要な遅延を設ける。
この目的のために、トランザクションフォーマッタ60および62は、実際の文字についてテキストデータを走査し、テキストデータ中の余剰のスペースをスキップし、実際のテキストをグループ化して、ビデオ信号のフィールドの垂直帰線消去間隔に適合する指定されたサイズのトランザクションで伝送するためのソフトウェアを含み得る。スペースが除かれるので、表示コマンドは、画面上に第1の表示文字の行および列アドレスを指定する座標を含み、トランザクションが一杯になるかまたは複数の連続スペースに遭遇するまで、複数の隣接した文字が同じトランザクション中にその文字に続く。
文字と関連付けられる下線、明滅または輝度反転などの属性情報も、これらの表示コマンドを用いて伝送され得る。これらの表示コマンドは、適切なデータベースからテキスト画面についてのテキストデータを読出すために使用され、テキスト画面についてのテキストデータの終わりに、表示コマンドが伝送され、そのテキスト画面についてのすべてのデータが伝送されてしまったことを示す。トランザクションフォーマッタ60,62は伝送の終わりに待ちループまたは「タイムアウト」コマンドも含むが、これは、次のテキスト画面についてのテキストデータが表示される前にテキスト画面を見るための十分な時間を視聴者に与える遅延(7秒のオーダである)に組込み、それによりテキスト画面の自動ページネーションを与える。
自動ページネーションは、視聴者が、視聴者によるいかなる介入もなしにあるテキスト画面から次のものへと自動的に進むことを可能にする。この発明の自動ページネーション方式に従えば、ケーブルオペレータは、画面間の持続時間を指定し、この情報をトランザクションフォーマッタ60,62に転送することができる。次に、動作中に、視聴者がテキストチャンネルを選択すると、選択されたテキストチャンネルデータをそれが挿入されるビデオ信号の垂直帰線消去間隔から抽出し、そのテキストデータを、そのテキストチャンネルの表示のために指定される視聴者のテレビのチャンネルに対応付けることにより、テキストデータの現在ページが表示される。テキストデータの次の画面は、現在画面の表示されるテキストデータを読むための十分な時間を視聴者に与える予め定められた遅延(約7秒)の後に表示される。この技術は、コンピュータを用いてテキストデータを生成し、次にこれがケーブルテレビシステムにより完全なビデオチャンネルとして伝送される、通常使用される「バーカー」チャンネルと置き換わり得る。
コンフィガレータ56は、HEC14からの制御コマンドに応答して、更新された権限情報をルータおよびフォーマッタ43に与えて入来データと比較させ、かつ、EPG供給者18およびテキストチャンネル供給者20が加えられシステムから減じられるときデータベースマネージャおよびデータベースなどを加え/減じることができる。HEC14とコンフィガレータ56との間の制御リンクは、ISP16のステータスをシステムマネージャ12に報告するために使用可能である。さらに、制御リンクは、システムメッセージなどを表示するためにシステムマネージャ12からテキストデータを受入れ得る。
ある実施例においては、コンフィガレータ56とHEC14との間のインターフェイスは、たとえば9600ボーで固定されたデータフォーマットを有するRS−232ポートである。すべての制御データは、好ましくは、ASCII文字として伝送される。HEC14からのメッセージの受信で、コンフィガレータ56は、データを検査し要求された動作を行ない、ルータおよびフォーマッタ43とEPG供給者およびテキストチャンネル供給者との間の通信のための上述したタイプのメッセージフォーマットでコマンド応答メッセージを戻す。制御リンクによりHEC14からコンフィガレータ56に送信されたサンプルコマンドは、日付時間設定コマンド(同期目的のために)、構成要求コマンド、ステータス要求コマンド、ゲットカテゴリレコードコマンド、スクランブラ制御コマンドおよびデータベース制御コマンドを含む。
ある実施例においては、動作中、ISP16は、EPGおよびテキストデータサービスプロバイダからのすべての入力ポートデータをモニタし、すべての利用可能なEPGおよびテキストデータサービスのリストを構築する。このリストは、構成要求コマンドを用いてシステムマネージャ12に送信される。このコマンドは、利用可能なサービスプロバイダ、各プロバイダからのサービスのタイプ(EPGまたはテキストデータ)、各サービスと関連付けられる通信ポート、各サービスについてのスクランブラアドレスまたはデータストリーム(EPGまたはテキストデータ)、各サービスごとの供給者からの権限コード、サービスプロバイダからの最後の更新の時間および日付、スクランブラへの最後の更新の時間および日付、EPGデータベース中の最新のEPGデータの時間および日付、などを指定する。このコマンドが与えられるとき、そのような情報は各サービスプロバイダごとにシステムマネージャ12に与えられる。
ステータス要求コマンドは、エラーログ中に存在するエラーがあるかどうか、および、最後のステータス要求コマンドが受信されてからカテゴリリストが変更したかどうかを示すフラグを含み得る。次に、ゲットエラーレコードコマンドおよびゲットカテゴリレコードコマンドを用いてエラーおよびカテゴリ情報を抽出し得る。
ある実施例においては、構成コマンドは、EPGサービス構成コマンドとテキストサービス構成コマンドとに分離される。EPGサービス構成コマンドは、サービスプロバイダ、サービスのタイプ、サービスが可能化されるかまたは不能化されるか、EPG供給者18からの権限コード、短期データのためのスクランブラデータストリーム、長期データのためのスクランブラデータストリーム、時間の短期データの長さ(1〜255)、および、時間の長期データの長さ(1〜4096)を指定する。テキストサービス構成コマンドは、サービスプロバイダ、サービスのタイプ(天気、スポーツなど)、このサービスが可能化されるべきか不能化されるべきか、テキストチャンネル供給者20からの権限コード、テキストデータについてのデータストリームまたはスクランブラアドレス、チャンネル数、および、自動ページネーションについてテキストデータの次のページがテキストデータの現在ページと置換わる前の、秒のページネーション遅延時間を指定する。
スクランブラ制御コマンドは、たとえば、スクランブラが置換されそのメモリに再ロードされるべきデータを必要とするときに使用されるスクランブラメモリ再構築コマンド、および、スクランブラメモリの量をキロバイトで指定するためのスクランブラ構成コマンドを含み得る。
ある実施例においては、データベース制御コマンドは、たとえば、特定のサービスと関連付けられるデータベースをクリアするために使用されるデータベースクリアコマンド、および、特定のサービスと関連付けられるデータベースを削除するために使用されるデータベース削除コマンドを含む。カテゴリマップダウンロードコマンドなどの他のデータベース制御コマンドが、EPGデータ中の番組データの指定されたカテゴリのリストを確立するために与えられてもよい。
図34は、本発明で使用可能であるセットトップボックス34のある実施例を示す。図示のとおり、セットトップボックス34は、EPGメモリ36と、テンプレートメモリ38と、テキストページメモリ42と、セットトップボックス700と、入来するビデオ信号の垂直帰線消去間隔からコマンドを読出し適切な動作を行なうセットトッププロセッサ702とを含む。たとえば、入来コマンドがHEC14からのテキストチャンネル定義またはEPG定義コマンドであるならば、ビットマップ704の適切な更新が行なわれる。同様に、入来コマンドがEPGデータを含む表示コマンドであるならば、そのデータは、EPGメモリ36に記憶され、ユーザがEPGデータの表示を要求するテレビリモートコントロールユニット706およびリモート受信機708によるメニュー選択を行なうとき、テンプレートメモリ38に記憶されるテンプレートとともに表示される。テンプレートメモリが設けられていないならば、テンプレートデータはEPG表示コマンドの部分として送信されてもよい。他方で、入来コマンドがテキストデータを含む表示コマンドであるならば、そのデータのページは、ディスプレイに1度に1ページを提示するためにテキストページメモリ42に記憶される。自動ページネーションが可能化されるならば、テキストページメモリは、テキストフォーマッタ60,62から表示コマンドに組込まれる遅延のために数秒ごとに自動的に更新されることが可能である。代替的に、ユーザが、メモリ中のテキストデータに手動でアクセスすることが可能とされてもよい。手動のアクセスが提供されるのであれば、テキストページメモリは、ユーザにテキストデータをスクロールする能力を与えるために、少なくとも現在表示されているテキストページ、先行のテキストページおよび後続のテキストページを保持することが好ましい。いずれの場合でも、セットトッププロセッサ702は好ましくは、現在ページが表示されている間に次のテキストページを要求する能力を有し、そのため次のテキストページは、画面遅延時間の終りに表示のためにすでにロードされている。次に、選択されたテキスト、EPGまたはビデオ信号は、変調器710で変調されビットマップ704に指定されるチャンネルでテレビ画面40上に表示される。
セットトップボックス34のセットトッププロセッサ702のビットマップ704は、所望のテキストデータを受信するためにボックス700によって同調されなければならない周波数を指定することにより、表示のために、受信されたテキスト情報を指定されたケーブルチャンネルに対応付ける。この情報は、HEC14から前述のテキストチャンネル定義トランザクションにおいて受信される。たとえば、視聴者は、セットトップボックス34をチャンネル181に同調させることにより番組ガイドが利用可能であると示すスポーツテキストデータチャンネルを見たいということをテレビリモート706により指定するかもしれない。そして、セットトッププロセッサ702は、チャンネル181に対してビットマップ704を検査して、チャンネル29の垂直帰線消去間隔から視聴者のチャンネル181についてのスポーツテキストデータを抽出するために、チャンネル29のための周波数を同調させなければならないことを決定し、セットトッププロセッサ702は、チャンネル29を同調するようにセットトップボックス100を設定するが、チャンネル29のビデオ信号は表示されない。代わりに、ビデオ画面はセットトッププロセッサ702によって消され、セットトッププロセッサ702によって垂直帰線消去間隔から抽出されたテキストデータが表示される。受信されたビデオの必要なデスクランブリングは、セットトッププロセッサ702によって行なわれる。それにより、別個のビデオチャンネルがテキストデータを伝送するために使用されなくても、視聴者は多くのより「バーチャルな」チャンネルが利用可能であることを知覚する。
図42に例示される本発明のある実施例においては、電子的コンテンツがタグ付けされサーバに集合され、ターゲット決めされた情報を備える電子的コンテンツとなる。好適な電子的コンテンツは、これに限られるものでないが、広告、ニュースセグメント、ビデオ番組、オーディオ番組、WEBページなどを含む。ターゲット決めされた情報を備える電子的コンテンツは、放送サーバに送信され広く放送される。セットトップボックス34は、世帯中の異なった人々を表わすプロファイルを生成している。セットトップボックス34は、生成されたプロファイルと放送ストリーム中のタグを一致させ、タグ付けされたコンテンツのうちどれがダウンロードされるべきかを決定する。放送されるコンテンツのうち、世帯中の個人と関連するすべてのサブセットがダウンロードされユーザに表示される。
たとえば、セットトップボックス34を用いて、放送ストリーム中のタグを先に生成された視聴者の人口統計プロファイルと一致させ、タグ付けされたコンテンツのうちどれがダウンロードされるべきかを決定することができる。個々の視聴者は、セットトップボックス34のみから受信する。セットトップボックス34は、放送ストリーム中のタグを生成された視聴者の人口統計プロファイルと一致させ、タグ付けされたコンテンツのうちどれがダウンロードされるべきかを決定する。
人口統計特徴のいくつかの例は、これに限られるものでないが、ユーザの性別、人種、年齢および収入を含む。代表的標本の視聴習慣の分析の出力は、個々のユーザの人口統計特徴を決定するための基礎となる。
図示のとおり、セットトップボックス34は、入来するタグ付けされ集合された電子的コンテンツのコマンドを読出し、適切な動作を行なう。たとえば、入来するコマンドが、HEC14からのテキストチャンネル定義またはEPG定義コマンドであれば、ビットマップ704の適切な更新が行なわれる。同様に、入来コマンドがEPGデータを含む表示コマンドであれば、そのデータはEPGメモリ36に記憶され、ユーザがEPGデータの表示を要求するテレビリモートコントロールユニット706およびリモート受信機708によるメニュー選択を行なうとき、テンプレートメモリ38に記憶されたテンプレートとともに表示される。テンプレートメモリが設けられていないならば、テンプレートデータはEPG表示コマンドの部分として送信されてもよい。入来コマンドがテキストデータを含む表示コマンドであれば、そのデータのページは、1度で1ページをディスプレイに提示するためにテキストページメモリ42に記憶される。自動ページネーションが可能化されるならば、テキストページメモリは、テキストフォーマッタ60,62からの表示コマンドに組込まれる遅延のために自動的に数秒ごとに更新され得る。代替的に、ユーザはメモリ中のテキストデータに手動でアクセスすることが可能とされてもよい。手動のアクセスが提供されるならば、テキストページメモリは、ユーザにテキストデータをスクロールする能力を与えるために、少なくとも現在表示されているテキストページ、先行のテキストページおよび後続のテキストページを保持することが好ましい。いずれの場合でも、セットトッププロセッサ702は好ましくは、現在ページが表示されている間に次のテキストページを要求する能力を有し、そのため次のテキストページは、画面表示時間の終りでの表示のために既にロードされている。次に、タグ付けされ集合された電子的コンテンツは、変調器710で変調され、ビットマップ704に指定されるチャンネルでテレビ画面40上に表示される。
セットトップボックス34のビットマップ704は、表示のために、受信されたタグ付けされ集合された電子的コンテンツを指定されたケーブルチャンネルに対応付ける。次に、セットトッププロセッサ702は、チャンネル181についてビットマップ704を検査して、抽出するためにそれがチャンネル29のための周波数を同調しなければならないことを決定する。受信されたタグ付けされ集合された電子的コンテンツの必要なデスクランブリングは、セットトッププロセッサ702によって行なわれる。
本発明は、ユーザによって明示的に提供される彼ら自身についての情報とともにまたはそれなしに複数のユーザに対応する複数のプロファイルを自動的に生成するメカニズムも提供する。図35は、それらが装置上で活性であるとき複数のプロファイルの自動生成およびプロファイルの自動識別をもたらすこの発明の実施例を示す。
ある実施例では、生成されるべきプロファイルの数は始めに決定される。いくつかの方法を用いてプロファイルの数を決定し得る。この発明のある実施例では、プロファイルの数は任意には、最小メッセージ長(MML)基準を適用することにより決定される。クラスタの最適な数を決定するためにMML基準を適用するプロセスは参照(ref.)に記述される。この発明のある実施例では、装置のユーザは明示的に、生成されるべきプロファイルの数を指定する。
システムは、装置とのユーザの対話をモニタする。ユーザ対話は、これに限られるものでないが、チャンネル変更要求、より多くの情報を見る要求、装置パラメータの構成、記憶装置からの番組の削除または録画を行なう要求を含み得る。ユーザ対話によるすべての動作は、視聴者の行動の履歴を記憶する履歴データベースに記録される。視聴者の行動を記述する履歴データベース中のデータレコードは、異なったフォーマットであり得る。図37aは、データレコードについての可能なフォーマットの1つを示す。データレコードは、行動についての情報、行動が起こったときの時間、行動をさらに記述するいくつかのパラメータを含み得る。この発明のある実施例では、ある基準に一致する行動のみが履歴データベースに記録される。たとえば、チャンネルを見ることに関するすべてのユーザの行動は、見ている持続時間が構成可能しきい値よりも小さければ無視されることができ、予告チャンネルなどの特定のチャンネルを見ることについてのすべてのユーザの行動は無視されることができる。装置のデフォルトの利用においては、ユーザは各利用セッション中に身元を明らかにしない。この文脈における利用セッションは、無活動の2つの期間の間にユーザの活動がある期間、または、装置が使用されていない2つの期間の間に装置が使用される期間であり得る。ユーザに対して非常に個人化された環境を与えるために、実際のユーザが誰であるかを決定することは装置に任せられる。そのようなシナリオでは、ユーザ行動レコードは、ユーザが誰であるかについての情報を含まない。この発明のある実施例では、ユーザは、システムによって設けられる何らかのメカニズムを用いることにより、利用セッションのすべてまたは一部について明示的に身元を明らかにすることができる。これらのメカニズムは、一連のキーを押すか、または、メニューからユーザ名を選択しそのユーザとしてログインすることを含み得る。この発明のこの実施例では、ユーザは、ある種のセッション中に身元を明らかにすることができ、何らかの他のセッション中に身元を明らかにしないことを選択してもよい。ユーザが身元を明らかにする場合には、ある種のユーザ行動レコードは、ユーザ行動レコードが生成されたセッションの間にユーザがログインされたことを指定するパラメータとしてユーザの名前または何らかの他の識別データを有し得る。
ある時間期間の間に生成されたユーザ行動履歴データベースを分析することにより、この発明は、複数のプロファイルを自動的に生成するメカニズムを提供する。これらのプロファイルの各々は、単一のユーザの全嗜好、単一のユーザの関連した嗜好のグループ、ユーザのグループの関連した嗜好のグループ、またはユーザのグループの全集合嗜好に対応し得る。複数のプロファイルを生成するためのメカニズムは図36に表わされる。
連続したユーザ行動レコードの集合は互いにグループ化され、利用パターンレコードを形成する。利用パターンレコードは、ユーザ行動レコードの配列の形であり得る。連続的に生じるユーザ行動のみが単一の利用パターンレコードにグループ化される。利用パターンレコードは、多くの方法を用いて形成可能であるが、そのいくつかは以下を含む:
1.単一の利用セッションにおけるすべてのユーザ行動レコードを単一の利用パターンレコードにグループ化する。これは、図38aに図表で表わされる。
2.各利用パターンレコードが予め定められた数のユーザ行動レコードを有するように、単一の利用セッションにおけるすべてのユーザ行動レコードを1つ以上の利用パターンレコードにグループ化する。これは、図38bに図表で表わされる。
3.各利用パターンレコードが、隣接した利用パターンレコード中のユーザ行動レコードのいくつかとオーバーラップする複数のユーザ行動レコードを有するように、利用セッション中の予め定められた数の連続したユーザ行動レコードを1つ以上の利用パターンレコードにグループ化する。これは、図39に図表で表わされる。
各利用パターンレコードは、N次元の空間における点に対応付けられ、このN次元空間の各軸が、複数のプロファイルを特定する際に重要であるパラメータを表わす。この空間のN次元はクラスタ次元と呼ばれる。このN次元空間のパラメータは、複数のプロファイルを特定する際に最も意味のあるパラメータを特定する当業者によって手動で、または、プロファイル間で大きく異なるプロファイルの局面を自動的に特定することによりのいずれかで選択される。この発明のある実施例では、装置が初期化中に構成される際に1組のこれらのパラメータが特定され構成され、装置に記憶される複数のプロファイルにおいて異なる局面を見ることにより、新しい集合が周期的に加えられる。初期パラメータのさまざまな組合せが使用されてもよい。ある実施例では、これらの初期パラメータは、チャンネルラインナップにおけるチャンネル名および視聴回数である。この実施例では、これらの初期パラメータは、テレビ番組の番組記述フィールドの可能な値である。ある実施例では、チャンネル変更の率もパラメータの1つである。クラスタ次元によって定義される空間中の点に対する利用パターンレコードの対応付けは、多くの方法によって行なうことができる。ある方法は、利用パターンレコードに示されるクラスタリングパラメータによって定義される特定の特徴の量、たとえば利用パターンにおけるチャンネル変更の数を決定し、これを対応する次元の軸の値として使用する。ある方法は、利用パターンレコード中の特定の特徴の消費の率を決定する、たとえば、利用パターンレコード中の「NBC」についての消費の率は5であり、これは「NBC」上の番組がこの利用パターンレコードの期間中に50%の回数で見られたことを示す。
クラスタ次元によって定義される空間中のすべての点は、標準のクラスタリングアルゴリズムを用いて複数のクラスタにクラスタ化される。いずれのクラスタリングアルゴリズムを用いても、クラスタ化を行なうことができる。ある実施例では、EMクラスタリングを適用して、クラスタ次元空間中の点を予め定められた数のクラスタにグループ化する。生成されるプロファイルの数が形成されるクラスタの数を決定する。人工知能およびクラスタ化、特にEMクラスタリングの当業者であればこれらのクラスタ化技術に精通しているであろう。クラスタ化の結果として形成されたクラスタの各々は単一のプロファイルを表わす。クラスタ化プロセスは、出力の1つとしてクラスタの各々に対する混合重みを与える。クラスタについての混合重みを用いて、装置が使用された時間の総量のうち、プロファイルが活性であった時間の割合を計算することができる。
この発明のある実施例では、クラスタ化は、履歴データベースに蓄積されるユーザ行動レコードを用いて周期的に行なわれる。ある実施例では、ユーザ行動レコードは、レコードの古さ、レコードのサイズ、レコードの関連性などのある種の基準に基づいて履歴データベースから周期的に除去される。
この発明は、任意の所与の時間において活性であるプロファイルを予測するメカニズムも提供する。図40は、装置上で現在活性であるプロファイルを特定するための方法を示す。現在のユーザの行動はモニタされ、ユーザ行動レコードが生成される。最新のユーザ行動レコードを用いて利用パターンレコードを生成する。利用パターンレコードは、クラスタ次元中の点に対応付けられる。複数のプロファイルを表わすクラスタについての情報を用いて、与えられた利用パターンに対してクラスタの各々が活性である確率が計算される。これは、事前確率および混合重みを用いて事後確率を計算するために使用可能であるベイズの確率理論を用いて計算される。クラスタが活性である確率は、与えられたプロファイルに対して利用パターンレコードの確率(P/利用_パターンプロファイル)、プロファイルが活性である確率、利用レコードが生じる確率を用いて計算される。この文脈においてベイズの確率理論についての数学的表現は以下のとおりである。
P(プロファイル/利用_パターン)=(P(利用_パターン,プロファイル)*P(プロファイル))P(利用_パターン)
この方程式において、与えられたプロファイルに対して利用パターンレコードが生じる確率(P(利用パターン,プロファイル))は、クラスタを支配する確率分布を知ることにより計算可能である。ある実施例では、クラスタ確率分布は、ガウスの確率分布であるものと想定することができ、そのためP(利用_パターンプロファイル)は、クラスタ中心およびクラスタ変動を用いて計算可能である。クラスタ中心およびクラスタ変動は、複数のプロファイルを生成するために行なわれるクラスタ化プロセスにより生成される出力である。
ある実施例では、装置をオンに切換えることは、記録されるユーザ行動の1つであり得、「利用の時間」はクラスタ次元の1つである。この実施例では、ユーザが装置をオンに切換えるや否や、任意のクラスタが活性である確率が、さらなるユーザの行動がなくても決定可能である。ユーザがより多くのユーザ行動を行なうと、現在の利用パターンレコードは、より多くのユーザ行動レコードを含むように洗練され、活性であり得るプロファイルの確率は、新しいユーザ行動レコードの各々を加えることで洗練される。より多くのユーザ行動レコードが現在の利用パターンに追加されると、最も古いユーザ行動レコードの組は現在の利用パターンレコードから除去され得る。このプロセスにより、活性プロファイルの特定における個々のユーザ行動の影響は時間が経つにつれ確実に減る。
この発明のある実施例では、クラスタ化手続によって生成されるクラスタは、図41に表わされる方法を用いて複数のプロファイルを生成するために使用される。この実施例では、クラスタは、各利用パターンレコードの期間中に活性である各クラスタの確率を計算するために使用される。各プロファイルごとのユーザ嗜好は、活性である対応するクラスタの確率によって重み付けされたユーザ行動を用いて上述したプロセスを用いて生成される。
本発明のさらに別の実施例では、複数のプロファイルが各ユーザごとに生成されてもよい。そのような複数のプロファイルの各々は、平日もしくは週末または朝もしくは夕方などのさまざまな時間期間でのユーザの視聴嗜好を表わすために使用され得る。プロファイルはまた、フットボールのシーズン中により多くのスポーツを見せたり、春により多くのガーデニングの番組を見せたり、4年ごとに予備選挙中により多くの政治評論を見せたりするなどの、他の変数に従ってさまざまであってもよい。したがって、この発明のシステムが活性化され、システムを活性化したユーザが認識されると、システムはさらに、日時および/または週を決定し、ユーザについての適切なプロファイルにアクセスし得る。
図43を参照し、個々の視聴者プロファイルに基づいて特定的にターゲット決めされた視聴者に広告コンテンツを配送するために用いられる本発明の別の好ましい実施例では、放送ネットワークは、多くの異なったコンテンツプロバイダからコンテンツを寄せ集め、それをネットワーク放送ヘッドエンド29で組合せて、本発明のテレビ制御システム2に伝送され受信される放送信号にする。制御システム2は、特定の世帯の異なった視聴者のプロファイルに基づいて放送ネットワークから受信されたコンテンツをソートし、各ユーザに利用可能な好ましい番組のリストを編集し、関心のある番組を録画し記憶し、必要とされるとき見れる番組を作る。等しく重要なことには、制御システム2は、さまざまな広告コンテンツを受信しソートし、人口統計プロファイルおよび広告コンテンツのターゲット視聴者に基づいて世帯の視聴者に最も関連するコンテンツを記憶する。
さらにより特定的には、図43に示すように、コンテンツプロバイダは、EPG供給者18、テキストチャンネル供給者20、従来の番組編成供給者23、代替のコンテンツ供給者25を含む。以下に記載するように、代替のコンテンツは、ここに記載される制御システム2の使用により配送され得る高度にターゲット決めされた番組編成のことをいう。従来の番組編成は、これに限られるものでないが、映画、ニュース、スポーツイベント、教育番組、ペーパービュー方式の番組、買物チャンネルを含む現在利用可能なすべてのタイプの番組編成を含む。広告コンテンツ供給者19は、世界中のTV視聴者になじみある態様で、彼らの従来の番組編成コンテンツに含めるために、ショートビデオクリップまたはグラフィックおよびテキスト情報などの販売促進材料を番組編成供給者23に提供する。しかしながら、この発明の使用により独特に利用可能である広告コンテンツを配送する新規な方法においては、広告コンテンツは、代替コンテンツ供給者(以下の記述を参照)に供給され得、個人の広告メッセージの各々を記述するメタデータを開発するためにプロファイラ21によりプロファイルされてもよい。この明細書中の至るところで論じられるように、メタデータは、各広告が特定的にターゲット決めされる視聴者を記述する人口統計特徴のことをいう。
プロファイラ21は、ソフトウェアベースのシステムであってもよく、または、各広告メッセージを見て分析して広告を記述するメタデータを開発するために人の介在に依拠してもよい。代替的に、広告コンテンツ供給者19は、広告とともにこの情報を提供してもよい。メタデータは、広告が開発されるクライアントにとって関心のあるパラメータに基づいて開発され、典型的には、年齢、性別、民族的背景、教育、職業、および視聴者に関連する他の人口統計情報を含む。したがって、メタデータは、先に述べたパラメータによって定義される視聴者の人口統計情報について各広告メッセージがターゲット決めされる視聴者を記述するであろう。このように生成されたメタデータは、各広告に付加され、このようにタグ付けされた広告は、放送ネットワークに与えられ放送信号に含められる。
タグ付広告は複数のチャンネルに与えられることが好ましく、ここで各チャンネルはターゲット視聴者に関する特定のタイプの広告を有してもよい。よって各チャンネルは、1つの人口統計パラメータまたはしばしば繰返す組合せに従って定められてもよい。たとえば、男性向けの広告を有するチャンネル、女性向けの広告を有するチャンネル、男性のスポーツファン向けの広告を有するチャンネルなどである。代替的には、各チャンネルはすべてのタイプの広告の流れを有してもよく、ここで各タイプの広告は、それがターゲット決めされる人口統計パラメータに依存する比で存在する。よって、週末の午後においては男性のスポーツファンにターゲット決めされた広告が小さい子供にターゲット決めされた広告よりも多数になる。なぜならそのような時間には多数のスポーツイベントが放送され、かつ小さい子供はそのような時間には屋内でTVを見ているよりも外で遊んでいる可能性が高いためである。複数のチャンネルを介してタグ付広告コンテンツを提供することはこの発明の要求ではないが、利用可能な広告コンテンツの純然たる量は実際問題として複数のチャンネルを必要とすると考えられる。さらに、予め分類された態様でチャンネルを提供することは、制御システム2によって行なわれる分類の量および複雑さを減少し得る(以下により詳細に説明する)。
また図43に示されるとおり、このネットワークによる信号放送は、たとえばこの出願の譲受人であるメタバイト社など、この発明によって提供されるサービスの管理者によって提供される情報をさらに含んでもよい。この出願の他の場所により詳細に説明されるとおり、この情報は制御システム2のソフトウェアの更新を含んでもよい。
引続き図43を参照すると、ネットワーク放送信号は制御システム2に伝達され、かつそこに受取られる。放送信号はアナログまたはデジタルで符号化されてもよく、ケーブル、衛星、電話線、またはあらゆるその他の実行可能な態様を介して伝達されてもよい。典型的に利用可能な多数のチャンネルおよび前提技術から、実際的な考慮はネットワーク信号をデジタル形式で放送することを指示するであろう。この場合にはネットワークヘッドエンド29および制御システム2の両方が当業者に周知の態様でADCおよびDAC回路を組入れることが必要となる。さらに制御システム2は、図には示さないが、放送信号において多重化された多数の信号を分離しかつ必要に応じてこれらの信号のあらゆる1つ(すなわちチャンネル)を選択するために必要となるチャンネル調整回路を組入れる必要があることが理解される。
放送信号は制御システム2に受取られると、システムのさまざまな構成要素に供給される。番組スイッチ114は、所望のチャンネルを選択するためのリモートコントロールまたは類似のユニットを介して与えられる視聴者入力に応答して、チャンネル信号をTVモニタ108に向ける。前述のとおり、嗜好エージェント110は制御システム2を用いるさまざまな視聴者の視聴選択をモニタし、嗜好データベース116に記憶される各視聴者の視聴プロファイルを生成する。これらのプロファイルに基いて、嗜好エージェント110はEPG情報に記述されるような入来番組編成コンテンツを分類し、各視聴者に対するあらゆる所与の時間に利用可能な視聴選択の「トップ10」リストなどのリストを編集し、録画マネージャ112に、あらゆる所与の時間に放送される上位にランクされた番組(録画のために視聴者によって選択されたあらゆる番組を含む)を録画してそれを記憶番組メモリ装置35に記憶するよう指示する。
嗜好エージェントは、視聴者の視聴プロファイルおよび特定のアルゴリズムまたは関連規則に基いて各視聴者に対する人口統計プロファイルを生成することを可能にするソフトウェアをさらに含む。これらのアルゴリズムは、システム管理者27が用いるモデルが向上しその正確さが改善するにしたがって時間とともに調整されてもよい。この目的に対し、放送信号に含まれるシステム更新情報チャンネルは、広告供給者19の要求によって含まれる必要があり得る新たな嗜好データベースパラメータを含む周期的なソフトウェア更新を含んでもよい。よって実施例の1つにおいて、この発明の制御システム2は、広告コンテンツプロバイダがこのシステムおよび狭く焦点合せしたターゲット決めされた広告をカスタマイズするプロセスに精通するにつれて生じ得るあらゆる新たな要求を満たすために、遠隔的に改良されてもよい。各視聴者に対して生成される人口統計プロファイルは人口統計データベース31に記憶され、これは制御システム2中に位置するために視聴者のプライバシーを確実にする。
嗜好エージェント110はまた、放送信号内に含まれる複数の広告チャンネルを流れる広告コンテンツを分類し、視聴者の人口統計プロファイルおよび特定の広告に対するターゲット視聴者を記述するために各広告に含まれるメタデータに基いて、特定の広告を記憶および/または表示させる。後述するとおり、制御システム2はさまざまな方法のうちのいずれかを用いて広告コンテンツを操作してもよい。
この発明の実施例の1つにおいて、広告チャンネルの各々は同じタイプの広告を有する。嗜好エージェントはあらゆる所与の時間にどの視聴者がTVを見ているかを定め、その特定の視聴者にターゲット決めされたタグ付広告を記憶広告メモリ装置33に記憶する。視聴者が見ている番組中の適切な時間、たとえばほとんどのTV番組に典型的に挿入されるコマーシャルブレイク中などに、嗜好エージェントは番組ソーススイッチ114に、記憶された広告にアクセスして選択された広告をTVモニタ108に再生するよう指示する。視聴者が見ている番組がコマーシャルブレイクの長さに関する情報を含むとき、嗜好エージェントは割当てられた時間枠に挿入するために適切な長さの記憶広告を選択してもよい。嗜好エージェントはさらに、先に再生した広告を憶えていることによってすべての記憶広告が均等に表示されることを確実にしてもよい。代替的には、タグ付広告は、広告プロバイダがあらゆる所与の日にその広告が放送されることを望む所望の回数、またはときにはその広告を見せるべき特定の時間を含んでもよい。よって、たとえば24時間に対して十分な数などのいくつかの広告が記憶された後、嗜好エージェントはすべての記憶広告メタデータを見直して、これらの広告を視聴者に見せるための、いつおよび何回見せるかを含む戦略を発展させてもよい。
代替的には、嗜好エージェントは特定の数の広告を表示させて、表示された記憶広告がコマーシャルブレイクに対して割当てられた時間枠よりも長くなるときには選択された番組を録画するように録画マネージャ112に指示してもよい。したがってこの発明の制御システム2は、視聴者が受ける広告コンテンツの量を変更することによって番組の放送スケジュールをある程度操作できる。
別の実施例において、広告チャンネルは1日の中の制限された時間帯、典型的にはオフピーク時間(たとえば午前2時など)にのみ動作してもよく、その間に翌日のためのすべての広告がダウンロードされて記憶されてもよい。すなわち、広告チャンネルは特定の時間にオンにされ、1時間または2時間の間に制御システムにすべての広告を流してもよい。代替的には、通常の番組編成チャンネルは都合のよい時に1時間または2時間番組編成を休止し、次の日のための広告を供給してもよい。さらに別の代替形においては、広告の周期的なダウンロードのために電話線またはインターネット接続などの専用の接続が用いられてもよい。
代替的な実施例において、複数の広告チャンネルが広告の混合を有することによって、あらゆる所与の時間に嗜好エージェントがこれらのチャンネルのうちの1つから視聴者にターゲット決めされた少なくとも1つの広告を選択するオプションを有するようにしてもよい。この実施例において、制御システムはあらゆる所与の時間にただ1つの広告を記憶するだけで、見られている番組と広告との間の連続性を確実にできる。たとえば、番組のコマーシャルブレイクがいずれの広告チャンネルの広告の始まりにも対応しない時間に始まることがあり得る。この場合には、制御システムに記憶される広告が番組ソーススイッチを通ってTVモニタに向けられ、一方で別のターゲット決めされた広告が続く表示のために同時に記憶される。コマーシャルブレイクがいずれかの広告チャンネルのターゲット決めされた広告の開始に偶然一致するときには、嗜好エージェントは単に番組ソーススイッチが特定のチャンネルをTVモニタに向けさせるようにしてもよく、一方で別の広告チャンネルからの別の広告が記憶される。
別の実施例において、各々の通常の番組編成チャンネルがある広告の複数の多重化されたバージョンを有してもよい。コマーシャルブレイクが始まるとき、嗜好エージェントはその広告の最も適切なバージョンを選択してそれを番組ソーススイッチに向ける。この実施例は、各広告のさまざまなバージョンを多重分離し、かつ嗜好エージェントによって選択された特定のバージョンを番組ソーススイッチに適用するための付加的な回路を必要とする。
この発明によって提供されるターゲット決めされた広告を配送する新たな方法は、広告業界にとって特に有利である。1つの局面において、この発明は広告制作におけるより大きな自由度を可能にする。なぜなら広告はもはや広範囲の多様な視聴者にアピールする必要がないためである。さらに、代替的な広告がリアルタイムで配送されるため、すべての視聴者に個別化された広告が同時に届き、5つの異なる広告を放送するために5つの異なる時間枠を必要とする先行技術に比べて顕著な時間の節約を提供する。それによってコストの節約が実現され、それは特にスーパーボウルなどの非常に人気のあるイベントの際に顕著になり得る。
前述のとおり、嗜好エージェント110は利用可能なチャンネルを分類して、視聴者の視聴プロファイルに最も近く適合する10個(またはその他のあらゆる数)の現在再生中の番組を選択してもよい。加えて、嗜好エージェントは、視聴者のプロファイルおよびユーザによって特定されるあらゆる付加的な基準に基いて将来の番組のカスタマイズされたリストを構築してもよい。好ましい実施例において、ユーザは、彼または彼女の視聴プロファイルを作り上げる異なるパラメータに割当てられる値を含む彼の視聴プロファイルを完全にカスタマイズすることができる。代替的な実施例において、ユーザは自分が好む広告の種類を特定することさえできてもよい。このような構成は代替的なビリング装置を生成することができ、それによってユーザは、彼が受けたいと望む広告のタイプを特定できることおよび場合によってはある種の報奨金と引換えに、広告を見ることに同意する。
この発明によって生じ得る別の新たな可能性は、あらゆる所与の時間に放送される最も興味深い番組、および/または以前に録画され記憶された視聴者のプロファイルに非常に近く適合する番組を常に見せる「個人チャンネル」の作成である。したがって個人チャンネルをオンにすることにより、視聴者には、視聴者が特定化し得る特定の先行期間中に放送された番組に基いて利用可能な最も個別化されて興味深い視聴経験が常に保証される。よって個人チャンネルは、過去24時間の間に放送され、かつ特定化された程度まで視聴者のプロファイルに適合した、映画、ニュースセグメント、スポーツイベント、およびあらゆるその他の番組編成コンテンツの集まりを見せてもよい。
選択された制御システムにのみ組入れられてもよい制御システム2の付加的な構成要素は、人口統計データベースからあらゆる個人情報を削除し、この匿名の情報を人口統計データベースを生成するために用いられるモデルを維持および更新する目的のためにシステム管理者27に伝達するプライバシーフィルタ37である。このような制御システムのモデルは人口統計情報をシステム管理者に伝達するためのフィードバック線を必要とし、好ましい実施例においてそれは電話線またはDSL、ケーブルなどの専用インターネット線である。システム管理者は、この種の情報を供給することをユーザに納得させるために、ユーザに報奨金またはその他の報奨を申し出てもよい。広範囲の人口統計断面からユーザを注意深く選択することによって、システム管理者はこのように集められた情報を用い、これらのユーザの実際の人口統計データと嗜好エージェントによって発展された人口統計プロファイルとを比較することによって、彼または彼女の視聴者プロファイルに基く視聴者の人口統計プロファイルを発展させるために用いられるモデルを向上させることができる。
この発明によって配送される広告の狭く焦点合せされた性質により、この発明の制御システムによる配送のために発展されたターゲット決めされた広告は、クーポンまたは高度にターゲット決めされた説明などの新たな構成要素を含んでもよい。よって、この発明を介する分配のために発展されたターゲット決めされた広告は、ターゲット視聴者に特にアピールすることが意図された、特定の言語で言い表わされた特定の情報を含んでもよい。
この発明はさらに、非常に特定の視聴者にのみ配送できる、広告以外の高度にターゲット決めされたコンテンツの作成を可能にする。したがって、映画、ショー、宗教番組、ビデオマガジン、インフォマーシャルなどを、その番組が非常に広範囲の視聴者に届くかまたは少なくともアクセス可能であるときにはそのコンテンツ開発者に典型的に課せられる制限なしに、非常に特定化された視聴者に届くように開発し得る。この実施例は、このような特定のコンテンツが従来のTVチューナによって直接合わせられない専門チャンネルを介して供給され、制御システム2を通じてのみアクセス可能となることを必要とする。このような高度にターゲット決めされたコンテンツは代替コンテンツ供給者25によって提供されてもよく、または従来の番組編成供給者23によって代替的分配のために開発されてもよい。この発明を用いることによって、コンテンツプロバイダが非常に特定の視聴者にのみ達するだけでなく視聴者の特定の部分をこの材料にアクセスしないよう遠隔的に自動的に除外することを可能にする、新たな分配媒体を作成できる。このような代替コンテンツは、前述のように視聴者の個人チャンネルに排他的に放送されてもよい。
よってこの発明は、広告だけでなくその他の番組編成およびコンテンツを含む高度にターゲット決めされたコンテンツを視聴者に配送することを可能にする。図44を参照すると、典型的なテレビ番組850の進行を追跡するタイムライン800が示される。TV視聴者が放送およびケーブル/DSSステーションから現在入手可能な従来の線形番組編成において、番組850はシーン1、シーン2などのシーンと、Ad1、Ad2などの広告とから構成される。従来の線形番組編成に従うと、シーンは番組の制作者によって予め定められたとおりに順番に示され、そこにヘッドエンドオペレータによって定められたとおりに広告の表示が散在する。この発明に従うと、各ユーザに対する人口統計および/または視聴者嗜好プロファイルの発展によって、カスタマイズされた線形番組編成が可能になる。カスタマイズされた線形番組860も広告が散在するシーンを含んでいてもよいが、そのシーンおよび広告の一部またはすべてがユーザのさまざまな人口統計または視聴特色にターゲット決めされていてもよい。シーン2は実際にはテレビ番組の制作者によって2つの異なるバージョン、シーン2およびシーン2aが撮影されていてもよく、そのシーンの各バージョンは特定のターゲット視聴者にとってより適切であるか、またはより興味深いか、またはより不愉快でないものである。したがって可能な実施例の1つにおいては、シーン2aはシーン2よりも暴力的でないかまたはより露骨でないバージョンであってもよい。この発明のシステムは両方のシーンを有するTV信号を受取り、現在視聴しているユーザのプロファイルおよび代替シーンのターゲットデータに基いて利用可能な代替形の中から選択する。よって図44に示される番組860は、シーン1と、代替シーン2aと、代替シーン3bと、代替Ad1aと、代替Ad2cと、シーン4と、Ad3と、代替Ad4bとを含むものとして、線形的で継ぎ目のない態様でユーザに示される。
シーン3、3aおよび3b、ならびに広告に対しても同じ適合および選択プロセスが起こる。Ad1は4つの変形が提供されてもよく、その各々はユーザの性別、収入、地理的な場所、またはあらゆるその他の所望の特徴などの異なる人口統計特徴をターゲット決めする。前述のとおり、このようにターゲット決めされた広告を提供することはユーザにより興味深く楽しめる視聴経験を与え、したがってユーザがチャンネルを変えるかまたは立ち去ってしまうことなく広告を見る可能性を高める。
この発明によって可能となるターゲット決めされた広告の方法は、番組編成ガイドによる広告メッセージの提供とは異なることを指摘することが重要である。この発明は見掛け上従来の線形の態様で広告を見せることを可能にし、テレビ番組の放送は広告を放送するためにヘッドエンドによって周期的に休止される。示される広告は特定のTVセットを見ている個別のユーザにターゲット決めされるが、ユーザはいかなる態様でも代替的な広告を選択するよう促されることはなく、あらゆるその他の態様でセットトップボックスが代替的な広告を受取っているという事実を知らされることはない。これは番組編成ガイドによってターゲット決めされた広告を提供するのとは異なる、ターゲット決めされた広告を提供する手法である。なぜなら従来の番組編成ガイド状況においては、TV画面は典型的に少なくとも2つの異なる領域に分割され、一方の領域が番組リストを見せる一方で他方の領域は広告を表示する。よって番組ガイドの状況においては、ユーザは番組編成を受取ることは全くなく、番組リストおよび広告のみを受取る。
図44に示されるとおり、代替シーンおよび広告は同じ長さであることによって番組タイムライン内の同じ時間枠を占めることが好ましい。しかし、テレビ番組870に含まれるものなど、異なる長さの代替広告およびシーンを提供することも可能である。この実施例において、セットトップボックスは、各シーンおよび広告の長さを計算し、シーンおよび広告をスケジューリングすることによって付加的にスケジューラの役割を果たすことにより、ユーザに中断またはオーバーラップのない継ぎ目のない見掛け上線形の番組を見せる。この実施例において、シーンおよび広告は両方とも、放送および過去に録画された記憶されたシーンおよび広告のあらゆる組合せを含んでいてもよい。たとえば、番組870において代替シーン2aは代替シーン2よりも短くてもよく、そのためシーン3bおよびAd1aをより早い時間に見せることが必要になる。この場合に、付加的なAdAをAd1aとAd2cとの間に示してもよく、ここでAdAは、そのターゲットプロファイルがユーザの人口統計プロファイルに適合しかつそれが適切な長さの時間であることから、セットトップボックスによって選択される。
カスタマイズされた番組を提供することはまた、一般的な視聴母集団の特定の特色および特徴に対してより個別的に提供することによって、より幅広い視聴者に到達することを可能にする。さらに、このようにカスタマイズしたコンテンツを提供することにより、番組編成の制作者は同じ構想〔ストーリーライン〕の異なる変形を探究してさまざまな視聴者に対するさまざまなシーンを編集できるため、彼らに対するより大きい芸術的および表現的自由が可能となり得る。この発明によって可能となるカスタマイズされた線形番組編成の別の可能な用法は、ニュース、天気、株式市場相場、買物イベント、説明ビデオなどの高度に個別化されたサービスを提供することである。
この発明のシステムの人気および受入れは、エンドユーザすなわち視聴者に対するコストに大きく依存する。したがって好ましい金融上の配置の1つにおいて、ユーザは制御システムすなわちハードウェアに対してセット料金を支払い、その制御システムを彼のTVおよび入来ケーブルまたは衛星放送用アンテナ線に接続し、それ以上のコストを支払うことなく制御システムによって提供される個人化されたサービスを楽しむ。システム管理者は放送ネットワークによる放送のためのタグ付広告を提供し、広告クライアントに料金を請求する。実際の広告は広告コンテンツ供給者または広告クライアント自身(たとえばトラック製造者など)によって提供されてもよく、それにシステム管理者がメタデータをタグ付けする。料金は、インストールされた制御システムおよび/または広告クライアントが到達を望むターゲット視聴者の総数に基いてもよい。したがって、あるクライアントがこの発明の制御システムを購入しおそらくインストールした視聴者のうち比較的広範囲の視聴者に届くようタグ付された広告を放送することを望むとき、請求される料金はより狭く焦点合せされた広告に対して請求される料金よりも比較的高くなる。
特許法の要求に従ってこの発明を説明したが、当業者は彼らの特定の要求または条件を満たすためにこの発明を修正および変更する方法を理解するであろう。このような修正および変更は、添付の請求項に示されるこの発明の範囲および主旨から逸脱することなく行なわれ得る。
In FIG. 1, television control system 100 operates in accordance with the principles of the present invention to record a television program in response to user input 102 and television signal 104. The television control system 100 transmits a signal to the television monitor 108 for viewing by the user. Preferably, in the digital embodiment, programs that the system 100 records are presented to the user in the form of additional channels. Therefore, the user can quickly determine the stored programs available for viewing by changing the channel. The user can also change channels between stored programs or between a stored program and a program that is currently being broadcast. If the user changes the channel from a recorded program to another program, playback of the recorded program is preferably paused. Instead, whether the playback of the recorded program is paused or continued is an option that the user can select. As described further herein, a user may identify a program for recording by designation of a particular program or by designation of particular attributes of the program, such as a comedy / drama, actor. When manually specifying a program for recording, the user may specify that the program should be recorded once or repeatedly, such as weekly, when broadcast.
Signal 104 includes a first component 105 that includes information necessary to display the video and audio components of the television program on television monitor 108. The signal 104 preferably also includes a second component 107, referred to herein as “attribute information”. Examples of such attribute information 107 are from DVB-SI and ATSC-SI formats, StarSight Telecast, Inc. (Fremont, Calif.) And TV data (TVData) of Glenfold, NY. This is information that can be used through various unique formats such as Star Site EPG data and TVData.
The attribute information 107 for any particular program varies depending on the program type, but typically includes multiple such as program start time, program duration, program title, and other attributes (categories) of the program As well as associated values corresponding to each of the categories. The preference agent 110 processes the attribute information 107 and generates a “category-value” pair 115. For example, if the program attribute is duration, the category may be duration and the value of the category may be 120 minutes. If the attribute of the program is a title, the category may be a title and the value may be “Star Wars”. The other category-value pairs of a movie are: a description category with a short description of the movie is a value, a leading actor category with the name of the starring star of the movie is a value, a director category with the director's name It may include being a value, a theme category having a theme such as adventure, comedy, etc. being a value and an evaluation category having a rating by a particular critic being a value. A category-value pair of a sports game such as a football game may include the name of the team that is playing, the location of the game, and a specific tournament such as a playoff or super bowl.
The category-value pair 115 (preference information) indicates the viewing preference of the user. The data shown in FIG. 1 as associated with the category-value pair 115 includes not only weighting information for the associated category value, but also other information shown below for illustrative purposes. The preference agent 110 maintains preference information 115 in the form of a preference database 116. Television programs 105 recorded by system 100 are preferably stored separately with associated attribute information 107. In an alternative embodiment, category value pairs 115 (with or without associated values) are stored with television program 105, and raw attribute information 107 is not maintained by system 100.
In response to the user viewing habits, the preference agent 110 generates data for each category stored in the preference database 116 and for each value of each category. The data generated by the preference agent 110 for each category and value is preferably the time that the user views a particular category and / or value relative to the total amount of time that the particular category and / or value is available for viewing. The amount of The relative amount of time a user views a program is a convenient indicator of the user's relative viewing preferences. However, other indicators of user viewing preferences may be used. Program source switch 114 operates in response to user input 102 and selects either a currently broadcast program or a stored program from storage device 106 via television signal 104.
The recording manager 112 operates to cause recording and storage of the television program 105 and the attribute information 107 according to the information generated by the preference agent 110 and stored in the preference database 116. The recording manager 112 also responds to user requests to record specific programs and user requests to record programs with specified category-value pairs.
The signal transmitted to the monitor 108 preferably takes the form of a conventional analog. Alternatively, the signal transmitted to the monitor 108 may be digitally encoded. The exact form of the signal transmitted to the monitor is not critical and may take the form that a particular monitor requires. The television signal 104 received by the television control system 100 may take one of a variety of signal formats including analog encoded signals encoded according to well-known NTSC or PAL standards. Alternatively, the signal 104 may be digitally encoded as transmitted by a commercially available digital satellite system (DSS) or in accordance with the MPEG-2 (Motion Picture Expert Group-2) standard. In any given embodiment of television control system 100, signal 104 may take various forms as described above. For example, the television control system 100 may be coupled to receive input from a digital satellite system, and the input is digitally encoded. Television control system 100 may also be coupled to receive input from a joint antenna television system (CATV) that encodes signals in either analog or digital form. The television control system 100 may also be coupled to receive analog or digital signals from a conventional home antenna.
The attribute information 107 may be DVB-SI (Digital Video Broadcasting Service Information) or Advanced Television System Committee (ATSC) as defined by the European Telecommunications Standards Institute (ETS). It can be transmitted to the television control system 100 simultaneously with the television program 105 in various ways, including industry standards such as the ATSC digital television standard as defined. For illustration purposes, in the DVB-SI protocol, programming for the next 6 hours is transmitted every 8 seconds for each channel. As a further example, program information for the next seven days is available from an interactive on-screen TV program guide available from Starsight Telecast, Inc. Further programming information such as the next seven days may be obtained in other ways. For example, by receiving information in a time division multiplexed manner on a particular channel. Such information can be easily transmitted when the user performs an operation that does not require a moving image on the screen, such as when the user is displaying a control menu on the screen.
Alternatively, the television control system 100 can download the attribute information 107 separately from the television program 105 through a separate communication session via a modem or vertical blanking interval (VBI) included in the television signal. Such separate communication sessions include data download mechanisms supported by MPEG-2, DVB-SI and DSS protocols.
The attribute information 107 can take the form under the DVB-SI protocol as shown below.
event_id (event_id)
start_time, (start time)
duration (duration)
DESCRIPTOR1 (descriptor 1)
DESCRIPTOR2 (descriptor 2)
...
DESCRIPTORn (descriptor n)
The event-id field is a unique alphanumeric code assigned to the program. The descriptor may be a “Short Event Descriptors”, “Extended Event Descriptors” or “Content Descriptors” that includes the following information:
Short Event Descriptor (short event descriptor):
[
event_name-length (event name-length)
event_name (event name)
event_description-length (event description length)
event_description (event description)
]
Extended-even (equally extended)
[
ITEM1 (Item 1)
ITEM2 (Item 2)
...
...
ITEMn (item n).
]
content descriptor:
[
CONTENT1 (content 1)
CONTENT2 (content 2)
...
...
CONTENTn (content n).
]
The ITEM (item) includes the following information.
[
item_description_length (item description length)
item_description (item description)
item_value_length (item value length)
item_value (item value)
]
An example item description may be “director” and the item value may be “Martin Scorsese”. CONTENT (content) includes the following information.
[
DVB-SI defined theme (DVB-SI prescribed theme)
DVB-SI defined sub-theme, programmer defined theme, programmer defined subtheme (DVB-SI defined sub theme, programmer defined theme, programmer defined sub theme)
]
Examples of themes and sub-themes are movies and comedies, respectively. Programmer defined themes and sub-themes are values that an EPG data provider can provide.
The category-value pair 115 is generated from the above type of information. The category-value pair 115 takes the following format: That is, category name-category value, where the category name is "title", "director", "theme", "program type", etc., and the category value is "next sign" (Seinfeld), It can be “Martin Scorsese”, “Comedy”, “Sitcom”, etc. Generation of the category-value pair 115 from the attribute information 107 enables the preference agent 110 to generate a category that does not clearly exist in the attribute information 107. For example, the category-value pad 115 may be title-fortainers, description-football and description search rules-football (and) San Francisco. Therefore, the preference agent 110 can generate the category-value pair 115 from the attribute information 107 even when there is no field in the attribute information corresponding to the created category-value pair.
The preference database 116 is preferably generated by first downloading category-value pairs from a third party source such as Starsite, Telecast, Inc. Advantageously, such a source may provide customized information for a particular geographic area and date. For example, the database may include data that gives sports events that include local teams a higher rating than other sports events. In addition, seasonal or vacation programs may be indicated as being preferred during a particular season or vacation. For example, a program that includes summer activities is shown as having a higher weight during the summer than at other times of the year. The preference database is changed as described in this specification according to the viewing habits of the user. Furthermore, the preference database can be periodically updated from third party sources to reflect the aforementioned seasonal or holiday updates.
Categories in the preference database 116, such as those received from third party sources, are either pre-defined or dynamically created from attribute information 107 received for the program 105. Dynamically created categories and associated values are preferably given a default rating by the preference database 116. Examples of preference information created by the preference agent 110 or downloaded to the preference agent 110 are shown below. In the following example, the numbers in the three columns of the category statistics and value statistics portion are the weighted duration watched (in seconds) (ranging from 0 to 1000) and the programs that match that particular category or value. Indicates the amount of time (in seconds) that was available. Information is preferably stored in the form of database records.
category:
Channel 1000
Title 1001
Title-Substring 1002
Genre information 1003
Description 1004
Description substring 1005
Episode name 1007
Type 1008
Star 1009
Director 1010
Production year 1011
MPAA rating 1012
Critic Evaluation 1013
value:
Titanic 2000
Ami 2001
3rd Rock From the Sun 2002
The Gods Must Be Crazy 2003
Next Seinfeld 2004
Headline News 2005
Bugs and Duffy 2006
News 2007
004 2008
005 2009
063 2010
49ers 2011
Sitcom 2012
Comedy 2013
Movie 2014
News 2015
San Francisco 49ers 2016
Bushman (A Coke bottle raises havoc for a tribe of African bushmen) 2017
John Mayers 2018
Lucy Barnett 2019
Marius Weyers 2020
Sandra Prinsloo 2021
Jeff Bridges 2022
Valerie Perrine 2023
Phil Hartman 2024
Jamie Uys 2025
Lamont Johnson 2026
1981 2027
1973 2028
1996 2029
Three Star 2030
Two Stars 2031
Nude 2032
Violence 2033
Adult thing 2034
Adult language 2035
Category value pair:
1001 2001
1001 2002
1001 2003
1001 2004
1001 2005
1001 2008
1000 2009
1000 2010
1002 2011
1003 2012
1003 2013
1003 2014
Category statistics:
1001 1000 31104 4022280
1002 1000 31104 4022280
1003 1000 31104 2613384
1004 1000 20304 1996596
1005 1000 20304 1996596
1006 1000 5238 1259028
1007 1000 3438 369450
1008 1000 13266 812970
Value statistics
2001 1000 1638 88074
2002 1000 6714 178560
2003 1000 6552 387054
2004 1000 5400 165600
2005 1000 1600 9000
2006 1000 3600 28800
2011 500 1800 10800
In the above example, 14 categories are given (1000-1013), followed by 36 values. Next, the correspondence (category-value pairs) between categories and values is shown. Next, the category and then value data are shown. This data is organized in three columns as described above.
In the above-described embodiment shown in FIG. 1, category and value ratings are dynamically generated by preference agent 110 instead of being stored in preference database 116. In an alternative embodiment, the ratings may be stored in a preference database along with category-value pairs.
Here, referring to FIG. 2, preference determination is used to predict a user's preference when selecting a TV program. This prediction is based on (i) analysis of individual user viewing habits, (ii) analysis of viewing habits of representative samples of users and (iii) television program EPG data available for the duration of the collected samples. Based.
The user's viewing habits are described below in the context of the actual program viewed by the user. However, other information may be just useful for the purposes of the present invention, which means that the user will not be able to watch or record a program that they will only watch before switching to another channel. The program that the user schedules, the program that the user records but does not see or only sees, and that the user requests information from the program guide (such as an on-screen EPG menu) or that the user requests information Contains information about programs that are not or that the user requests information but does not choose to watch.
One method for creating preference decisions is through the use of Bayesian networks used to predict user behavior, and hence the use of preference agents, which is a knowledge-based strategy. In this method, a knowledge engineer interviews an expert about his / her expertise. Experts and knowledge engineers determine world distinctions that are important for decisions in the field of experts. Knowledge engineers and experts then define dependencies between variables and probability distributions that quantify the strength of the dependencies.
The second method is a Bayesian network, which is a data-based policy. In this second method, knowledge engineers and experts first determine domain variables. Data is then accumulated for those variables and an algorithm is applied to create a belief network and predict user behavior from this data. This accumulated data comes from real-world examples of domains. This second strategy exists for domains that contain only discrete variables.
The Bayesian method can be performed using an algorithm known as the “EM” algorithm, which, as will be appreciated by those skilled in the art, calculates the maximum posterior probability value (MAP value) of a model parameter to determine user behavior. Predict. The EM algorithm is based on Dempster's “Maximum Likelihood From Incomplete Data Through the EM Algorithm” (“Maximum Likelihood From Complete Data The EM Alloy 39 )) And incorporated herein by reference.
After computing the probabilities for each variable, each variable in the belief network is then scored for goodness to adapt to predict user preferences by giving a subscore. As will be appreciated by those skilled in the art, the subscore is generated by using the marginal likelihood of the expected data at the maximum posterior probability value.
Those of ordinary skill in the art will recognize, “Bayesian Updating in Recursive Graphical Cosb” by Jensen, Lauritzen and Olesen, “Bayesian Updating in Recursive Graphical Co.” , Technical Report R-89-15, Institute of Electronic Systems, Aalburg University, Denmark), this step can be performed using any standard model that predicts user behavior estimation algorithms. Will.
The television viewing habits of the population are sampled to generate a representative sample of viewer behavior 117. This task is typically performed by companies such as Nielsen Media Research, which collects user behavior samples and conducts market research. The sampling result is stored in the viewer behavior database. The format of the viewer behavior database is owned by the sampling company. The viewer behavior database includes demographic information about people in the household participating in the sampling. This information includes, but is not limited to, race, age, annual income and gender. The viewer behavior database also includes information about all television programs that each viewer watched during the sampling period.
Program information and television program schedules are available 104 in the EPG database. Program information for a television program includes information about various attributes of the program, including but not limited to title, program type and program category of the television program and actors appearing on the television program.
FIG. 3 lists two examples of program information. Examples 1 and 124 describe program information for an audiovisual television program, and Examples 2 and 125 describe program information for a television program based on graphic text.
The viewer behavior database is analyzed 118 to identify TV program features and how such identified features affect viewing habits in the user's representative sample. These features and their impact on the viewing population are then used in supporting the process of predicting individual user TV program selection. Figures 4 and 126 list some examples of such features. Some of these features are derived from program information 104. Some of these traits look for user preferences for traits associations or other traits associations with other viewing parameters including but not limited to time, day of week, holidays, work days and weather, season Is derived by Some of these features are derived by data analysis of the viewer behavior database. Any given program exhibits a different degree of the identified feature. This is expressed as the trait-ness of the spot color in the program. For example, the comedy trait in Seinfeld can be 1.2, and the comedy trait in Mad About You. 79. The spot color of the spot color in the program is calculated 118 as part of the data analysis.
The present invention also provides a method for determining viewer preferences. In one embodiment, an individual viewer selects one show to view from the set of available programs by evaluating the probability preference function for each program and selecting the program with the highest score. . The preference function is modeled as a collection of preferences for a particular spot color and the degree to which the program exhibits that spot color. The preference function can be calculated as follows:
l (p) = Σλ (tn) * tn
Where l (p) represents the preference for program p,
λ (tn) represents the preference for a particular spot color tn
tn represents the degree of the spot color tn indicated by p.
When a viewer watches television, it is assumed that the viewer selects the program with the highest value l (p). For any given viewer, as the value of λ (tn) better represents its actual preference, the accuracy of determining that preference for a TV program becomes higher. Thus, for any given user, if all relevant features are known along with the exact preference of each of those features, the preference function will always accurately predict the preference of any given program. Will.
However, identifying all relevant features and determining the exact preference of each viewer is a non-trivial task and is repeatedly reached by the process of regression analysis.
Although most of the traits associated with a particular user can be derived directly from the EPG information itself, some traits are found by analyzing the user's viewing habits over time. Features that are suitable for discovery by the process of regression analysis are typically hidden or related features.
Hidden features affect the user's viewing habits, but cannot be derived from EPG information. For example, sitcoms that emphasize a particular racial background resonate more with viewers of that racial background. Another example of the influence of hidden features would be the strong preference of Sitcom “Frasier” among a set of users who have a strong preference for Sitcom “Cheers”. Assuming that the names of actors appearing in Sitcom are not available in the EPG data, this familiarity to both Sitcoms by the same set of people is due to the presence of several features that both Sitcoms share in common: It can be explained by the presence of one of the central characters in sitcom. Such hidden preference criteria need to be captured by adding hidden features in the preference function calculation.
A related feature is a feature that, when combined with other features, has a different impact on the user's viewing habits. For example, a user will have a preference for any given Seinfeld episode and a preference for any first sitcom broadcast for the first time. However, its preference for the first episode of Seinfeld will be large enough to require an additional feature, namely "New Seinfeld", and will fully explain its preference for the first episode of Seinfeld.
The preference of each trait for a given user must be refined as well from the initial approximation by regression analysis. Examples of sample user features and related preferences include, but are not limited to, those listed in FIG. The spot color “NBC <=> News” is an example of a related spot whose associated spot colors are “Channel NBC” and “Program Type News”. The user's preference for news programs may be 1, and the preference for “NBC channel” may be 2, while that preference for NBC news would be 13. That is, the user does not always watch a news program or generally a program on the NBC channel, but the person has a strong preference for the news program on the NBC channel. Considering only its preference for “Channel NBC” and “Program Type News”, its preference for “NBC News” cannot be explained.
This procedure of identifying a spot color is first performed using a determination of the favorite distribution of each spot color within the representative sample along with the viewing habits of the representative sample.
Some of the outputs of the representative sample viewing habit analysis 102 are a set of preference determination parameters. That is, (i) a spot color indicated by a repeated program and a degree indicating such a spot color, and (ii) a favorite distribution list of each of the spot colors in the viewing population.
One method for deriving these parameters is shown schematically in FIGS. 5 (a) and 5 (b). The different stages of the flowchart are further described in the following sections. An initial set of preference values is calculated 129 for each user. This initial preference value may be reached in various ways. One aspect would be to base it on the amount of time that saw a given feature versus the amount of time that was available during the user's viewing period.
Using these initial preference values for the traits, a preference function l (p) is calculated for all programs that were available for the time the user viewed a given program. Next, these programs are arranged in descending order 140 of preference values for the period 141 during which the viewer views the program. The actual program that the user watched at a given time is highlighted 143. If all highlighted programs in FIG. 6 had the highest score, the preference function correctly identified the user's preference. If the program viewed by the user ranks below any other competing program available at that time, the preference value used does not correctly reflect the user preference. For purposes of illustration and not limitation, if there are N programs ranked above the actually viewed program, the preference function error for this program will be referred to as N 142. Such a value of N is determined for each program viewed by the user by comparing it to the preference functions of other competing programs. In the example illustrated in FIG. 6, the value of N is the time when the user watches the TV during the time of 10: 00-10: 30, 10: 30-11: 0, 11: 00-11: 30. Is calculated against. Using regression analysis, each preference value for a spot color is adjusted incrementally to reduce the average value of N. The set of preference values that yields the lowest average value of N is considered the best set of preference values for that user.
One method of the regression process is illustrated in FIG. At the beginning of the process, the preference values for the special colors a, b, c are λa1, λb1, λc1,... (144, 145). λa1 represents the preference for the spot color “a”, λb1 represents the preference for the spot color “b”, and so on. The preference function for all related programs is calculated using this initial set of preference values. The preference value λa1 of the first spot color “a” is changed incrementally to determine the average value of N. The values λa2, 147 that yield the lowest average value of N are taken as new preference values for the spot color “a”. This new preference value λa2, 148 is used here to replace the old value and determine the remaining λ value. The above set of computed preference values will predict user preferences with high accuracy if the set of traits considered in the preference function includes all the traits that are relevant to the user. An average value of N that does not converge (to 0 or some other acceptable value) indicates that not all features associated with the user have been considered in the calculation of the preference function. Improve user preference determination with the introduction of related or hidden additional features.
The determination of relevant features can be accomplished in a variety of different ways.
One method is that the related values of a number of features are not reflected in the program information obtained from the EPG, but by application of a heuristic heuristic about human viewing habits. For example, a user with a preference for Seinfeld is very likely to have a much higher preference for the first or new episode of Seinfeld. Such heuristic heuristics regarding the associated values of multiple features can be communicated to each set top box via the headend. Another way to determine related features is to use an algorithmic search that seeks common features in the program and introduces new related features to improve the user preference function.
The determination of hidden features in different programs can be accomplished in a number of ways. One of these methods is illustrated in FIG. The possibility of the presence of a hidden feature is always present when there is a strong correlation between any two features that exist in different programs. The y-axis represents increasing preference values for higher values of y. Every point on the x-axis of FIG. 8 represents a user arranged such that the preference value for the spot color “tn” increases with higher values of x. If the preference value of the strongly correlated spot color “tm” is also plotted for the same value on the x-axis, it will show the relationship of the spot color “tn” to the preference graph. The correlation between any two features can be explained by the presence of a common hidden feature. Thus, the traits “tm” and “tn” can be expressed mathematically as follows:
tm = tx + tm ′
tn = Ctx + tn ′
Where C is a constant indicating the amount of correlation between the spot colors “tm” and “tn”.
Hidden features can also be identified by applying heuristics or some other suitable aspect.
While all programs of a particular genre show some common features, the degree to which these features show varies from program to program. This degree of trait for a repetitive program can be quantified, which best explains the viewing choice of viewing or not viewing the program in a representative sample. For example, consider a user who has a preference for comedy. The user's decision to watch a comedy program is influenced by whether the amount of comedy likeness that the program exhibits crosses a comedy-like threshold set by its preference for comedy.
One method for determining the spot color of spot color T in a given program N is illustrated in FIGS. 9 (a)-(c). The highlighted program represents the program 156 that the user has actually seen. All available programs are arranged in descending order of rank 154 as computed by the preference function. In the case of user 1 155, the program N 156 that the person has seen appears in the third rank, but the preference function should actually rank program N at the top. In this case, the error margin 157 in the spot color characteristic of the spot color T is 3. In the case of the user 4, the program N that the user watched was ranked highest. The error margin in the spot color characteristic of the spot color T is zero. For user 2 who did not watch program N, it ranked highest. The error margin in this case can be considered to be a constant K. The proposed value of K may then be the number of programs available to the user. Similarly, for user 3, the error margin can be considered as K-1. Such an error margin is calculated for all users who watched program N, and an average error margin is calculated.
Using the regression analysis, the spot color value of spot color T is adjusted incrementally to reduce the average value of the error margin. The spot color value that produces the lowest average error margin is considered to be the best spot color value of spot color T shown by program N.
The feature value may be assigned by a rule of thumb or some other suitable manner.
One output of a representative sample viewing habit analysis is a list of preference distributions among the viewing populations of each feature. This information is shown schematically in FIG. 10, where every individual user set-top box is made available with the broadcast TV program and program information. “Number of spot colors” 164 represents the total number of spot colors identified after analyzing the viewing habits of a representative specimen. The distribution of preference for each spot color is given in the “spot color record” 165. Information included in the spot color record includes a spot color name 167, a spot color type 168 (hidden or related, etc.), a spot color preference distribution 170, and a spot color distribution parameter 172. Examples of various possible values during spot color recording are given in FIG.
FIG. 12 shows a schematic representation of one of the traits present in a repeating program. This information is conveyed along with the preference distribution of the spot color. “Number of programs” 173 represents the number of programs to which the spot color information is sent. Related features and the degree to which they are shown are included in “Program Record” 174. The “program identification” 177 information is used to identify the TV program to which this recording belongs. An example of a program recording for the Seinfeld episode is given in FIG. As given in the example, certain traits such as “program name-Seinfeld”, “channel-NBC”, “program type-sitcom” can be derived directly from the EPG, which is called a static trait. Additional features such as “comedy” that store the degree of comedy likeness associated with the Seinfeld program may also be conveyed as part of the EPG data.
Referring again to FIG. 2, program information and program content (in the form of an EPG) are transmitted from the broadcast headend along with preference determination parameters 119. Examples of preference determination parameters include (i) a spot color indicated by each program and a degree indicating such a spot color, and (ii) a distribution list of preference values among the viewing population of each spot color. It is not something that can be done.
This information is received in each household by the program selection device 100 including the preference determination module, the personal preference database 116, the storage device, and the display device 108. The personal preference database 116 is used to store the results of analyzing the viewing habits of individual users. The storage device stores the program according to the program recommended by the preference determination module or according to the user's specific request.
The program selection device 100 monitors the selection of TV programs to be watched and the viewing behavior of each user. This is stored in the storage device or memory in the form of selection history data 189 (see FIG. 15). A schematic display of the selection history data is given in FIG. “Number of selection records” 180 represents the number of user selection choices stored in the selection history data. Each selection record 181 includes information 186 on the competing program available at that time, along with information 185 on the actual program viewed. Since the EPG may not be able to provide information about past programs, it is necessary to store program information. Information about these programs may be obtained directly from the EPG data when information is obtained while the program is still current. The time 183 and duration 182 of watching the program also form part of the selection record. As shown in FIG. 15, the user selection history 189 is derived from each selection 187 made by the user together with program information from the EPG 104.
One process for learning a particular individual's user preferences is shown in FIG. The preference function uses the preference distribution in the representative sample for the spot color identified by the data analysis 118 to minimize the impact of errors introduced due to insufficient sampling in the calculation of the individual spot color preference preference. Turn into. An individual user's response to the configuration question 190 may also be considered as a factor in determining an initial preference value for that individual 192.
User selection history 189 is maintained for a fixed number of hours. The number of times that the user selection history is maintained can preferably be varied to have an increased learning rate during the first few days of a new user using the device. The average error is calculated as N 194 for the users in the representative sample in the same manner as previously described in FIG. If the average error is greater than the acceptable limit 195, a new preference value is calculated 198. The entry in the user selection history is moved to the past selection history. If the average error stays below an acceptable limit, the preference value is calculated 196 only after a pre-defined number of hours.
Another embodiment of the selection record stores the program ID instead of the entire program information. In this embodiment, actual program information is broadcast at a predetermined time from a head end that identifies each program with the same program ID stored in the selection history. In this embodiment, the preference value calculation 198 for the spot color is performed only at this predetermined time.
Here, referring to FIG. 17A, after each calculation of the preference value, the entry in the user selection history is moved to the past selection history. The selection history is divided into a user selection history 189 and a past selection history 216 and optimally stores the section history record. The selection history contains information about all selections made by the user between the two calculations of preference values. The past selection history maintains the most relevant information about the most relevant choices the user has made in the past. The number of records in the past selection history is advantageously configurable to suit the memory available for storing such records. Relevance in this context is the importance of the record in calculating the preference value, which includes the age of the record 200 and the repetition rate 203 of the features included in the program 204 being selected and recorded. Depends on many parameters, not limited to. The relationship between the relevance of the record and the age 205 is shown in FIG. The most relevant record is the most recent record. The relationship between the repetition rate of the features included in the program being recorded in section and the relevance is shown in FIG. As the repetition rate decreases, relevance increases to a certain limit 206, and then relevance decreases 207. A good example of the reasoning behind this relationship is the relevance of keeping a record on user choice when the weekly program Seinfeld is available and the Olympic program every four years. At some point, it would be relevant to keep a record on user selection. While it is important to keep a record of Seinfeld and calculate the preferences of the various traits included in Seinfeld, it is pointless to keep a record of viewer preferences for the previous Olympics. Consider a user who has no preference for movies except Friday. In order to accurately determine the user's preference for the “Friday Night” feature of a movie, a selection record belonging to that viewing behavior on Friday must be maintained for at least several weeks. However, if the nature of the iterations is too far apart in time, the relevance is greatly reduced. The “spot color repetition rate versus relevance” graph in FIG. 17B measures increasing relevance values for higher values on the y-axis. The x-axis measures the decreasing repeatability rate of the feature in the program. As shown in FIG. 17 (a), when a certain threshold of repetition rate is exceeded, the relevance greatly decreases.
The process of updating the past history is shown in FIGS. 18 (a) and 18 (b). The process is performed for all records in the user selection history. If there is enough memory in the past selection history 218 to store the new record, the record is removed from the user selection history and added to the past selection history 222. If there is not enough space in the past selection history 218, the records in the past selection history are sorted based on relevance 220, the least relevant records are deleted 221, and space for adding new entries Make 222.
In another embodiment of the present invention, the number of available programs 186 stored in the past selection history can be limited to an optimal number to make maximum use of available memory (see FIG. 18). ). In this embodiment, only programs with higher preference values that represent traits with meaningful preference values are stored in the past selection history record.
Calculation of preference values for different spot colors performed by the program selection device 100 is shown in FIG. This process is performed 198 during the learning process, as illustrated in FIG. By using the current preference value as a starting point, regression analysis is performed so as to minimize errors in prediction of viewer behavior stored in the user selection history and the past selection history. The regression analysis process 223 is the same as that performed in the representative sample 131. If there is any selection record that has an error greater than a predefined threshold 224, the selection record is examined for the presence of a possible associated feature 225. Rules that define the existence of possible related features may be heuristics. A possible association of a spot color can also be found by looking up a list of related spot colors found from a representative specimen. The preference for possible relevant features is calculated by regression analysis 226. If the calculated preference is a meaningful value 231, the preference for the spot color is entered 230 into the preference database 116. Other parameters such as repetition rate for the spot color are also entered into the database 230. The repetition rate is calculated by looking at the repetition rate of the feature in the user history and past history. If there is no past selection record with this feature, the repetition rate is assumed to be a predefined value. When a new selection record is created, the repetition rate is updated. At the end of the process of calculating the preference value (illustrated in FIG. 9), a weighted average of the current preference value and the old preference value is calculated. This forms a new set of preference values. The learning speed can be increased or decreased by changing the weight of the current preference value.
A flow chart for calculating a score for a program for future prediction is illustrated in FIG. As described above, the preference 236 for the program 232 is the function l (p) = Σλ (tn). * Calculated by evaluating tn. λ (tn) is calculated as a weighted average of the preference for spot color tn for user 234 and the preference for spot color tn for general population 235.
In another embodiment of the present invention adapted to function on a program selection device operating in a household with a large number of users, the viewer enters the number of viewers in the household during the initialization process. Be asked to. Each viewer can answer a set of set questions that capture their preferences for representative features. An initial set of possible preference values is created for each viewer. After correctly identifying each viewer's session, the learning process updates each viewer's preference database separately. Viewer identification is done either by clear input from the viewer, identifying the viewer, or by automatic viewer identification by monitoring the viewer's television viewing behavior. In order to automatically identify the viewer, an error value between predicted and actual is calculated for all viewers. The viewer with the preference value that yields the smallest error value is selected as a possible viewer. The certainty of this decision is expressed as a probability calculated as a function of the difference between error values for different viewers in the household.
An object of the present invention is to determine a user's demographic characteristics by analyzing the user's viewing habits and, in parallel, the viewing habits of a representative sample of a user whose demographic characteristics are known. These demographic features of the user collectively constitute a demographic profile. Once a user's accurate demographic profile is successfully created, the present invention can receive a set of possible advertisements and show individual users only those targeted to a matching profile.
Some examples of demographic characteristics include, but are not limited to, the user's gender, race, age and income. The output of the representative sample viewing habit analysis provides a basis for determining the demographic characteristics of individual users.
The TV program viewing preference information selected in the viewing habit analysis of representative samples plays an important role in determining demographic characteristics. Different TV programs may be required to determine demographic characteristics. Typically, TV programs where the majority of viewers share common demographic features at a different rate than those observed in the general population are most suitable for the discovery of demographic features. For example, to determine the “income” demographic feature, consider graph (i) of FIG. The x-axis represents annual income in the order of increasing x. For any point on the x-axis, the y-axis represents the probability of finding the annual income of x in a representative sample (which is the same in the general population). Consider graph (ii) here, where the dotted curve plots the same income distribution as represented in graph (i), and the first solid curve (leftmost curve) is representative. The income probability distribution of the viewer of the program P1 in the sample is shown, and the second solid line curve represents the income probability distribution of the viewer of the program P2 in the representative sample. An analysis of the viewing habits of individual users of the programs P1 and P2 can be used to determine the most probable annual income. Using Bayesian inference, this probability can be expressed as:
P (Ixy | Wp1) = P (Wp1 | Ixy) P (Ixy) / P (Wp1)
In the formula, Ixy represents the annual income range of xy.
Wp1 represents watching program p1
P (Ixy | Wp1) represents the probability of income of Ixy when the program p1 is viewed.
P (Wp1 | Ixy) represents the probability of watching the program p1 when the annual income is Ixy.
P (Ixy) represents the probability of income for Ixy in a representative sample.
P (Wp1) represents the probability of watching program p1 in a representative sample.
Therefore, the probability that his income is within a certain range can be determined for the user who watches the program P1.
Programs whose demographic features are shown at the same rate that their viewers are observed in a representative sample (same as in the general population) do not contribute significantly to determining demographic features. Consider the graph of FIG. Graph (i) shows a bar graph representing the probability that a person in a representative sample is male or female. Graph (ii) shows the probability that a person is male or female among viewers of program P3 that is very similar to that observed in the general population. If Bayesian inference is used to determine the gender of a person who has watched program P3, the probability that the person is male or female is the probability that the person is male or female in the general population (this is an already known value). It will be very close to. By analyzing an individual's viewing habits for the program P3, no significant thing can be obtained. On the other hand, analyzing viewing habits for program P4 based on graph (iii) creates more certainty in determining a person's gender than what is already known about the gender distribution in the general population. Will.
The determination of which programs generate high probability values to determine a user's demographic characteristics is how different that viewer's demographic characteristics are from what is observed in the general population by some other means This can be done by applying heuristics with an algorithm that selects programs based on.
Depending on the program content and demographic characteristics of its viewers, one or more features may be determined using the same television program. A completely different set of programs may be needed to study different demographic characteristics.
Furthermore, the present invention contemplates analyzing other preferences of the user in addition to or instead of the user's television viewing preferences. Such information is, but is not limited to, music preferences, reading preferences, shopping preferences (especially preferences for clothes, furniture, jewelry, ornaments, appliances, electrical equipment) Category), political and religious tendencies, and the like. Such information may be obtained from any source, but in certain preferred embodiments it is directed to music clubs, book clubs, other specific sites of interest (eg, specific sports or hobbies) Sites), news sites, and other online sources that users are members of or visit frequently (typically accessible as world wide websites). Other information representing user preferences includes user subscriptions such as newspapers, magazines, newsletters, shopping catalogs, and other publications of particular interest.
From Bayesian inferences, it is possible to attribute a preference for a particular program based on user demographic characteristics, but that is not the only factor that explains the user's choice of a particular program . For example, consider the graph (ii) of FIG. It may be possible for user U1 who has a strong preference for program P2 for unknown reasons and who has a revenue less than x1. Thus, using Bayesian reasoning and just reaching U1's most probable annual income based on his viewing habits of only a single program P2 will not yield the most meaningful results. In order to reinforce Bayesian reasoning beliefs, user viewing habits must be analyzed for a set of programs in which the viewers of each program from that set exhibit similar demographic characteristics. The programs in the set are selected so that the degree of correlation of the spot colors indicated by the programs in the set is minimal. Each program that a user sees from this set of programs enhances the user's belief in Bayesian probability with its demographic characteristics.
To illustrate the need for minimal correlation, consider the previous example. In the case of another program P3 that is very similar in content to P2 and has the same demographic characteristics of that viewer as P2 is available to user U1, he Will have similar preferences as P3. In this scenario, strengthening the Bayesian belief by user U1 watching program P3 is not a decisive contribution. However, if the program P3 is very different in the content and features it shows, the probability of U1 choosing P3 is greatly reduced, preventing the Bayesian probability belief from being raised by mistake. In this situation, the probability of a user who actually has demographic features watching both programs P2 and P3 is quite high, and strengthening belief will be a decisive contribution.
Thus, the Bayesian probability belief function for demographic feature dc1 can be calculated in many ways, including but not limited to:
BF (dc1) = MAX (bp (w1), bp (w2) ..., bp (wm)) * cr1 + MAX (bp (wk), bp (wk + 1) ..., bp (wk + m)) * cr2 +. . . + MAX (bp (wn), bp (wn + 1) ..., bp (wn + m)) * cm
However,
-Bp (wn) is the Bayesian probability of the user having that demographic characteristic assuming the fact that he watched the program wn;
-(W1, w2, ... wm), (wk, wk + 1, ..., wk + m), (wn, wn + 1, ..., wn + m) is a set of programs, and any element of the set is different from another element of the same set Have a high degree of correlation, but have a very low degree of correlation with another set of elements,
-MAX (bp (wn), bp (wn + 1) ..., bp (wn + m)) represents the maximum Bayesian probability value of all possible values in the set;
-Cr1 represents the correlation coefficient of the set (w1, w2,... Wm), cr2 represents the correlation coefficient of the set (wk, wk + 1,..., Wk + m), and so on. Elements of the same set have a correlation coefficient.
The belief function of any demographic feature is represented by the S curve in FIG. The x-axis represents the increasing value of the belief function of the demographic feature for increasing values of x. The y-axis represents the increasing value of the user's probability of exhibiting its demographic characteristics for increasing values of y. As shown in the figure, the probability does not increase further as the value of the belief function becomes higher.
Some of the output of a representative specimen viewing habit analysis is schematically represented in FIG. 23b.
The advertisement is displayed by the program selection device according to the present invention when the user-calculated artificial statistical profile matches the advertisement target profile. Some of the elements included in the advertisement are metadata that includes information about the advertising content (which may consist of video clips, audio clips and / or graphic or text information) and the demographic profile to which this advertisement is targeted. It is.
The metadata contained in the advertisement is schematically represented in FIG. 23c. Here, the “number of target records” means the number of “target records” included in the “target advertisement metadata”. Each “target record” refers to a demographic feature to which this advertisement is targeted. A “target relationship rule” is used to determine a relationship rule. For example, advertisements can be targeted towards users who meet any one of the following criteria:
-Income level is between Ix and Iy
-Ethnographic background is eb1.
A “target relationship rule” will be used to specify the relationship.
“Demographic feature data” and “target advertising metadata” determined by analyzing the viewing habits of representative samples with known demographic characteristics are broadcast from the broadcast headend to the program selection device along with the program content and EPG data. Is done. This is shown in FIG. This is received by each user at each program selection device to determine a user demographic profile. Broadcasting of “demographic feature data” and “target advertising metadata” along with the advertising content may be done on a periodic basis, or always made available by the broadcast network or some other communication mechanism as required. Also good.
In the program selection device, “demographic feature data” and “target advertisement metadata” are collected and stored in a storage device such as a hard disk, a flash ROM, or a main memory, although not limited thereto. This collection of data may be done at a fixed time period or whenever appropriate depending on the embodiment chosen. For each spot color record in the “demographic spot color data”, the program selection device passes the past selection history. Each program on the “spot color value record” that can be used in the past selection history is used to calculate a belief function. The belief function distribution graph in the "spot value record" is then used to determine the probability of the user having that demographic feature. If previous probabilities for this demographic feature are available, a weighted average of the old and newly determined probabilities is taken and stored. Each targeted advertisement for which the “probability satisfaction criteria” of the “target record” is met by the user's demographic profile is selected and displayed at the appropriate time.
As discussed elsewhere in this disclosure, in another preferred embodiment, the present invention allows other targeted content to be provided to the user in addition to the advertisement.
Referring again to FIG. 1, the television control system 100 is preferably implemented by a general purpose digital computer and associated hardware that executes a stored program to implement the functions shown in block 100. The The exact hardware and software platform on which the television control system 100 is implemented is not critical and can take a variety of forms. For example, the television control system 100 may be implemented in a set-top box that can typically be used by an individual at home to receive CATV signals. Another implementation of the television control system 100 is in the form of a personal computer comprised of the necessary hardware and software for receiving and displaying television signals. An example of a set-top box that can be programmed according to the principles described herein is described by IBM Microelectronics in the following document: “Set-Top Box Solutions”, Product # G522-0300-00 (1997). November 19, 19); “Set-Top Box Reference Design Kit”, GK10-3098-00 (April 15, 1998); “Set-Top Box Peripheral Chip”, GK10-3098-00, (1998 4) May 15); “Set-Top Box Solutions: Helping Customers Meet the Challenges of Convergence”, 522-0300-00 (November 19, 1997); and "The challenges of convergence for Set-Top Box manufacturers", G599-0302-00 (11 May 19, 1997). An example of an application programming interface (API) available for a set-top box that can serve as a platform for the embodiments described herein is “Latest Set-Top Box” published by OpenCable. "API Requirements for the Advanced Set-Top Box" (October 21, 1997). An example of an operating system that incorporates functionality to support the embodiments described herein is available from OpenTV, Inc. and is described in the following technical white paper publication by OpenTV: “OpenTVTM Operating Environment” and “Application Development for OpenTVTM”. An advantage of such an operating system is the support provided in the form of function calls for obtaining attribute information 107 from the signal 104. Alternatively, a general purpose operating system, such as Microsoft Corporation's Windows NT operating system, extracts the necessary information from the attribute information 107, and receives the received signal 104 and stored information 105. It may be used in conjunction with additional software that provides the functionality required to perform other operations.
Storage device 106 may include a variety of different types of storage devices. For example, the preference database 116 may be stored in a nonvolatile random access semiconductor memory. Television program 105 and attribute information 107 may be stored on a storage device having a larger capacity, such as a conventional magnetic hard disk drive. In general, the storage device 106 is understood to include various storage devices. As long as the storage device has the capacity and speed to store the necessary information, the exact shape of the storage device 106 is not critical. Storage device 106 may include a conventional video cassette recorder (VCR) that operates to store television program 105 and attribute information 107 on a conventional magnetic tape under the control of system 100.
For purposes of this description, the television control system 100 is integrated with or coupled to a system that includes a tuner and other functions necessary to receive a television signal and extract attribute information 107 from the television signal. And is assumed to perform other functions typically associated with receiving and viewing television signals. In certain embodiments, the television control system 100 may operate in conjunction with a database agent that facilitates interaction with the preference database 116 by allowing information to be stored and retrieved from the database in an optimal manner. The preference database 116 is implemented by a commercially available database product, such as an Oracle Light database product available from Oracle Corporation, which also incorporates the functions for implementing the database agent described above. May be.
The recording manager 112 records the program 105 by periodically starting the sequence of steps shown in FIG. At 201, the recording manager 112 sends a request to the preference agent 110 for the evaluation of all programs for a particular time (X), or alternatively for the evaluation of all programs within a particular time period (X). As an example, the steps shown in FIG. 2 may be performed every 6 hours. In some embodiments, the frequency with which the steps of FIG. 24 are performed may be changeable by the user. The preference agent 110 responds at step 202 by giving an evaluation from the preference database 116 for each program received from the recording manager 112. Next, the recording manager 112 records the program at the time X or within the time period X according to the evaluation received from the preference agent 110. Specifically, the program with the highest rating is given the highest preference for recording, and the program with the lowest rating is given the lowest preference for recording. Recording is limited by storage capacity. For example, if the highest rated program is one hour long, only 30 minutes of recording space is available on the storage device 106, and the one hour program is skipped and rated 30 minutes. Is recorded.
The highest priority for recording a program is specifically given to the program requested by the user. For example, if a user identifies a particular program for recording, such as by specifying a date, time, and channel, or by specifying an identification code for the program, the user is more likely than a program evaluated by a preference agent. Priority is given to the recording of the program. The next highest priority is given to programs that match a particular category value pair specified by the user. For example, if a user does not identify a particular program but specifies that a one hour documentary about travel should be recorded, it matches such a category value pair than a program evaluated by preference agent 110. Priority is given to program recording. In an alternative embodiment, the relative priority among user-specified programs, user-specified category value pairs, and programs evaluated by preference agent 110 can be changed by the user.
The recording manager 112 manages the storage capacity on the storage device 106 by deleting the television program 105 according to the evaluation of such a program generated by the preference agent 110. This is done in a manner similar to that described above for determining which programs are to be recorded. FIG. 25 showing the steps taken by the recording manager 112 to determine which programs should be deleted is similar to FIG. In step 301, the recording manager 301 requests an evaluation from the preference agent 110 for all programs stored on the storage device 106. At step 302, the preference agent 110 responds by providing the requested delete rating. In step 303, the recording manager 112 responds by deleting the program as necessary according to the deletion evaluation received from the preference agent 110. Specifically, when additional space on the storage device 106 is needed to record one or more additional programs, the recording manager 112 first deletes or overwrites the program with the lowest rating. Thus, in conjunction with other stored television programs, the stored television program determined by the preference agent 110 as least preferred is deleted or replaced first, and the one determined to be most preferred is deleted or replaced last. Is done. Deletion of the program occurs only when necessary. Advantageously, as a result of this, the storage device 106 is typically filled to its maximum capacity, thus providing the user with the widest possible variety of programs. The user can specify a program to remain in the storage device 106. Such a program is not deleted by the recording system 100 in the step shown in FIG. Further, the user can specify the program to be deleted, and thus can ignore the steps shown in FIG.
In one embodiment, the preference database is used by system 100 to change the manner in which information about currently aired programs is presented to the user. For example, in such an embodiment, the preference database is rearranged in the order in which currently aired programs are presented so that the program having attribute information 107 rated highest by the preference database 116 is first presented. used. Alternatively, the preference database 116 can be used to organize information about currently aired programs according to various spot preferences stored in the preference database.
Figures 26a and 26b illustrate an alternative hardware configuration for a system employing the principles of the present invention. FIG. 26a shows a hardware configuration that supports the storage and retrieval of digitally encoded audio and video. Interface 902 is a standard digital cable or digital satellite input interface. The interface 906 is a hardware interface to the storage device 106 but preferably takes the form of an IDE or SCSI interface or the proposed IEEE-1394 interface. Interface 906 is an NTSC or PAL encoded video interface. If the television signal 104 takes the form of an analog signal and a CATV signal, as in the case of current television broadcast signals, the signal 104 is stored prior to storage on a digital storage medium such as that shown in FIG. It must be digitized and generally compressed (eg according to the MPEG-II standard).
FIG. 26b shows an embodiment using an analog storage device 106 such as a conventional VCR. If the television signal 104 is analog, the interface 910 takes the form of a conventional NTSC or PAL interface. If the television signal 104 is digital, the interface 910 takes the form of the interface 902 shown in FIG. 26a, and the digital-to-analog converter converts the received signal to analog before storage in the storage device 106. Required to convert to form.
FIG. 27 illustrates the operation of the automatic recording pause feature of the preferred embodiment. If the user is currently watching a broadcast program and wants to stop or temporarily stop watching the program, the recording system 100 advantageously allows the program to be recorded so that the user can subsequently watch the program. You can resume doing. As shown in FIG. 27, at 1002, the user is currently watching a broadcast program. By generating a pause input at 1004 by the user, such as by pressing an appropriate button on a remote control coupled to the recording system 100, the system 100 records at 1006 the program being viewed by the user. The user is free to watch another program or stop watching the television 108 at all. At a later time, if a viewing resume input is received, such as by pressing an appropriate button on the remote control described above, the recording system 100 records the program recorded in step 1006 in step 1010. Is taken out from the start point and can be viewed on the television 108. If the program is still being broadcast when step 1010 is started, recording of the program continues by system 100. Therefore, the user can easily interrupt the viewing of the current broadcast program and resume the subsequent viewing.
Preferably, the recording system 100 supports various functions such as fast forward, rewind and visual scan of recorded programs, as well as other functions supported by the storage medium 106. For example, if the storage medium 106 takes the form of a VCR, program viewing and manipulation functions are limited to standard VCR functions such as fast forward, rewind, forward or reverse visual scanning. If the storage device 106 takes the form of a digital storage medium, higher program search and retrieval functions can be supported.
It will be appreciated that the functions performed by the preference agent 110 and the recording manager 112 are illustrative of particular embodiments. However, the division of tasks between the two modules 110 and 112 may be changed. Further, the data formats 115, 116, 105 and 107 may take a variety of forms.
FIG. 28 illustrates an EPG and text information service according to an embodiment of the present invention. As shown, the billing vendor 10 of the local cable television company communicates via the billing link to the RS-232 port of the system manager 112 located at the cable head end. Billing vendor 10 includes a subscriber database and creates monthly bills for subscribers of the system based on the level of service and any pay-per-view purchases. The system manager 12 may be a personal computer or other processing device that receives a viewer authorization transaction from the billing vendor 10 and generates a transaction for delivery to a distribution device or subscriber. Such a transaction involves the subscriber's set-top box identifying which group of channels it is entitled to receive, which frequency to tune to a particular text data channel, and the audio sound of that text channel. Contains a text channel definition transaction that indicates whether to delete, pagination delay between pages, etc.
The system manager 12 also communicates via the headend link to the RS-232 port of the headend controller (HEC) 14 which controls transmission of television programming to the subscriber. As described in more detail with respect to FIG. 29, the HEC 14 communicates over the control link to the RS-232 port of the information service processor (or data controller) 16 that manages the flow of EPG and text data in accordance with the present invention. As indicated by the dashed lines in FIG. 28, the information service processor (ISP) 16 is preferably located at the cable head end along with the system manager 12, HEC 14, and signal scrambler. However, those skilled in the art will appreciate that not all of the headend equipment need be located in one place.
EPG data is supplied from one or more local or remote EPG suppliers 18 to the RS-232 port of ISP 16 via a satellite link, modem link or other communication link. Similarly, text data from one or more text channel suppliers 20 is provided to another RS-232 port of ISP 16 via a satellite link, modem link or other communication link. In the preferred embodiment, the ISP 16 has a plurality of identical RS-232 ports for accepting data from a plurality of EPG suppliers 18 and text channel suppliers 20.
Also, as shown, one of these RS-232 ports can be used for the control link to the HEC 14. ISP 16 manages the EPG and text source databases in response to control signals from HEC 14 to provide EPG data and / or text channel data to selected viewers.
The HEC 14 also provides control data directly to the viewer's set top box via the RS-485 output port. Preferably, the control data from the HEC 14 may include a text channel definition transaction and an EPG definition transaction to indicate to the set top box which frequency to tune to EPG data and the like. The control data may include software for downloading to the viewer's set top box to reprogram the viewer's set top box as needed. The control data from the HEC 14 can be inserted into the vertical blanking interval of the selected cable television signal by scramblers 22, 24 and 26 daisy chained using known in-band techniques. The control data from the HEC 14 may be modulated with an out-of-band carrier or an in-band audio carrier for transmission. Preferably, the scramblers 22-26 are daisy chained so that the scramblers can be addressed individually or globally.
Similarly, EPG data and text channel data from the ISP 16 are provided to the viewer's television set top box via the RS-485 output port of the ISP 16. EPG data and text channel data are similarly inserted by the EPG scrambler 28 and text channel scramblers 30 and 32, respectively, into the vertical blanking interval of the selected cable television signal. Scramblers 22-32 may insert control data, EPG data, and text channel data into other parts of the video signal, such as horizontal blanking intervals, or may completely replace the video. Typically, the number of scramblers depends on the number of premium channels on which scrambling is used. Preferably, EPG scrambler 28 and text channel scramblers 30 and 32 are identical to control data scramblers 22-26 and are similarly daisy chained for individual or global addressing. As shown in FIG. 28, the scramblers 28-32 carry combined EPG and text data and display control transactions as described in more detail for FIG. 29 for all data streams used. Receive a single serial data channel. Each scrambler may be equipped with a memory for storing a predetermined amount of this data in internal memory in order to minimize the number of database accesses. Preferably, the scramblers 28-32 have sufficient internal memory to store a significant number of transactions. For example, scrambler 30 may have sufficient internal memory to score a daily sports score for display on a sports text channel. The data received and stored in the scramblers 28-32 is preferably in RS-485 format and the preferred embodiment protocol is SDLC. All data transactions to scramblers 28-32 are sent in a separate scrambler (a separate data stream that specifies a station address in the SDLC protocol), and the control data can be configured by transactions from ISP 16 in the data stream. Thus, based on the address of the scrambler, it is transmitted in a global data stream that is filtered in scramblers 28-32.The individual EPG data and text data streams are preferably such that they can be assigned as desired. In general, the scramblers 28 to 32 have a baud rate of at least 9600.
Preferably, the subscriber's set top box is a set top box 34 that includes an EPG memory 36 for storing EPG data from the ISP 16. For example, the EPG memory 36 may store one week or two weeks worth of EPG data for selective access by the viewer via the set top box 34 menu. This menu preferably allows the viewer to scroll through the EPG data stored in the EPG memory 36 using the viewer's television remote control keypad. The set top box 34 may also include a non-volatile template memory 38 for storing a template into which EPG data is to be inserted for display to the viewer on the viewer's television 40. In this aspect, the video signal containing the template display data need not be continuously retransmitted to the set top box 34, thereby saving additional bandwidth. Instead, the EPG data need only be updated every 30 minutes or when there is a program change. Of course, different set top boxes 34 may have various amounts of memory and processing power for such purposes, depending on the allowable memory cost in manufacturing the set top box 34.
As shown in FIG. 28, the set top box 34 may include a text data memory 42 for storing a page of text data for presentation on the screen. Thus, the next page of text data can be loaded into the text data memory 42 while a page of text data is being displayed to the subscriber.
The ISP 16 manages the flow of text data and EPG data from the data service provider to the viewer's set top box 34. ISP 16 accepts data only from one or more authorized text data sources and / or EPG data sources, processes the text data and EPG data in its internal database manager, and processes the processed data in a common data transaction format. This data is managed by formatting it into a scrambler for transmission to the set top box 34. The provision of EPG data and text data to the subscriber is controlled by the headend controller 14 via a control link.
An example of a suitable ISP 16 includes a plurality of RS-232 serial input ports for EPG data input and / or text data input and at least one RS-485 HDLC serial link at its output of the type used by the HEC 14. It has an IBM PS model 7546 personal computer. As shown in FIG. 28, the control link may be a single RS-232 serial port. The hardware components and software components of the ISP 16 are configured as shown in FIG.
One embodiment of ISP 16 is shown in FIG. 29 as a plurality of RS-232 ports that provide a common interface for EPG data and text channel data provided asynchronously by EPG supplier 18 and text channel supplier 20. EPG data and text channel data are transmitted to ISP 16 via a satellite link (when the interface operates in simplex mode) or by a modem (when the interface operates in half-duplex mode). Preferably, the data is transmitted at a baud rate of at least 1200.
The ISP 16 functions as a “gatekeeper” that allows access only by authorized data sources. Thus, when ISP 16 receives a message from EPG supplier 18 or text channel supplier 20, it first checks the data for authority. If the supplier is not authorized, the data is ignored. When the supplier is authorized to access ISP 16, ISP 16 performs the requested action and returns a command response message. If the communication link is simplex, the response is ignored. In this aspect, access to ISP 16 may be restricted by an authorization code, but access will also depend on whether the data provider provides EPG data or text data in the transmission protocol expected by ISP 16, as described below. Limited.
Messages sent between the EPG provider 18 or text channel provider 20 and the ISP 16 can be formatted to include a start of text byte, a block of ASCII character data, a checksum byte, and an ASCII return. This format is used in commands sent from the data supplier to the ISP 16 and responses sent to the data supplier. The checksum may be a 2-byte CRC of all bytes in the message field starting with the first character following the start of the text character and not including but up to the maximum checksum field. The checksum is transmitted in the message as a hexadecimal ASCII representation (4 bytes) of the CRC calculation. The data block can be configured differently depending on whether the input data is EPG data or text data.
EPG data from EPG supplier 18 may be used, for example, to establish program definition commands used to identify all data associated with a single program, categories for identifying different types of programs. Can be formatted according to an EPG command set including category definition commands used and category deletion commands used to delete categories not used to make room in the ISP 16 database for new programming categories is there. EPG data can be formatted on a per program basis with these commands.
Delimiter characters can be used for variable length fields such as titles and program description blocks to specify the length of the field. For example, NUL (0 in hex) means the field is null, SOH (1 in hex) means the field is valid, ETX (31 in hex) is the end of the current record Means.
Once the data to be transmitted with the program definition command is stored in the EPG database of ISP 16, the EPG data is formatted into a transaction for transmission to the set top box 34. This command may also be used to update the program definition as it overwrites the corresponding entry in the ISP 16 EPG database.
ISP 16 has no error (normal response), no service provider found (not authorized), no service type found (not authorized), category ID discovery, unrecognized command May respond to such commands from the EPG supplier 18 by sending appropriate responses such as checksum error, insufficient disk space, etc. Other EPG commands and command responses may be provided as desired.
Text channel data originates from many different text channel suppliers 20 and can reach ISP 16 via different communication links such as satellites, dial-up models, direct connect modems, or direct connection to system manager 12. it can.
ISP 16 may include multiple databases and database managers. There can be two types of databases maintained in ISP 16, as shown in FIG. 29, one for EPG data and one for text channel data. The EPG database is designed to collect data from each EPG supplier and sort each EPG program record by channel and date. A separate database collects text data from the associated text channel supplier 20 and formats the received text data for transmission on individual text channels using techniques such as those described below. Generated for each text channel. Each database generated is identified by the service code type and service provider listed in the program definition command used in the control link command provided from the HEC 14 to the ISP 16.
As shown in FIG. 29, the received command is examined by the router and formatter 43 for its command code, service provider, service and authority code type as appropriate. If the command is from an unauthorized data source, subsequent data is ignored. However, if the received data is from an authorized supplier, the router and formatter 43 routes the data to the appropriate database in the ISP 16. For example, if EPG data is received, it is routed to the EPG database 46 via the EPG database manager 44.
In one embodiment, EPG database manager 44 sorts the received EPG data by channel and date and stores the received EPG data in an appropriate location in EPG database 46 for later reproduction. The EPG database manager 44 may also perform garbage collection on the EPG database 46 when records are deleted. The EPG database manager 44 maps the more frequently used characters to fewer than the usual 8 bits used in normal ASCII, while being less frequently used, as is known to those skilled in the art. Data compression software routines such as the Huffman Compression Algorithm that give more bits to the character may be called. The number of bits used for a character is based on its probability of appearing in the data stream. Huffman coding is described in detail in an article entitled “Lossless Data Compression”, Byte, March 1991, pages 309-314, incorporated herein by reference. Is done. Such a routine is desired to maximize storage efficiency in the EPG database 46. Similarly, each text database manager can store text information in an associated text database and performs data compression.
Router and formatter 43 and database managers 44, 48 and 52 are all controlled by a configurator 56 that responds to control data from HEC 14. Configurator 56 is responsive to control commands from HEC 14 for comparison with incoming data and as EPG supplier 18 and text channel supplier 20 are added or subtracted from the system. In order to add / subtract database managers and databases, etc., the router and formatter 43 are provided with updated authority information.
Access to ISP 16 can be carefully controlled through the use of authorization codes. Further, the ISP 16 may maintain control over the information services provided to the viewer by storing EPG data and text data in a particular format in an appropriate database in the ISP 16.
Referring now to FIG. 30, the EPG database key may be a combination of data and time fields from EPG data and the number of channels. These fields are followed by a duration field, a repeat field, a program evaluation field, a program category field, a critical field, an attribute flag field, a program feature flag field, a text data compression flag, and finally text data. The text data field may further consist of several optional subfields with a delimiter between each field.
The EPG database manager 44 can access the EPG database 46 through shared library routines such as adding records, deleting records, and reading records. When the EPG database 46 is used, it can be fragmented as records are added and deleted, so that the EPG database manager 44 can further include a garbage collection routine for the EPG database 46. The text database is configured similarly, but does not require garbage collection.
In one embodiment, the EPG transaction formatter 58 reads the database records of the EPG database 46, formats them into a program-based transaction with a predetermined number of bytes that is transmitted to the EPG scrambler 28, and It is inserted into the vertical blanking interval and transmitted to the set top box 34. These transactions are then sent via the transaction arbitrator 64 to the EPG scrambler 28 shown in FIG. 28 for insertion into the appropriate video channel.
Transactions from transaction arbitrator 64 may be output to a single RS-485 output port of ISP 16 that is connected to multiple scramblers of the type used to scramble the premium cable channel. Transactions are segmented into EPG and text data streams for transmission to the EPG scrambler 28 (if the transaction includes EPG data) or to the text channel scramblers 30 and 32 (if the transaction includes text data). It becomes.
In one embodiment, the EPG transaction generated by EPG transaction formatter 58 is formatted into an SDLC frame as described above. A sample SDLC format for EPG transaction data is shown in FIG. In FIG. 31, the start flag outlines the start of the SDLC frame, the station address represents the scrambler to be addressed, the control byte is a command code that defines what is to be processed, and the information field is the figure. Including EPG data formatted as at 30, the frame check includes a CRC for all data between the start and end flags, and the end flag outlines the end of the SDLC frame. A transmission from the EPG transaction formatter 58 addresses a particular data stream, and a response from the EPG scrambler 28 identifies that data stream in the station address location. As described above, such transmission may or may not require a response from the EPG scrambler 28.
An EPG transaction typically includes a byte that specifies that subsequent data is from an EPG data stream, a control code byte that specifies whether a response from, for example, a scrambler is expected, and an EPG data block An EPG block addition command including two bytes describing the number, a flag indicating whether the EPG data is short-term or long-term data, the number of transactions constituting the EPG data block, and the actual transaction is included. The EPG transaction formatter 58 may also generate an EPG block delete command that specifies that data is to be deleted from the EPG data stream, a control code byte, and the number of EPG blocks to be deleted.
FIG. 32 shows a flowchart of one embodiment of software that may be used and implemented in the EPG transaction formatter 58. As shown, the software begins at step 500 and obtains the system time and date from the ISP system clock 63 at step 502. Next, the expired EPG data block is deleted from the memory of the EPG scrambler 28 at step 504. An expired EPG data block is defined as a data block that represents a program that has been fully broadcast prior to the current system time, or a program that was broadcast before the time window used for the EPG. At step 506, the current EPG data block having the time and date within the EPG time window is read from the EPG database 46. The current EPG data block is then formatted at step 508 into an EPG block add command and associated transaction. Next, the block / time map of the EPG transaction formatter 58 is updated at step 510. The block / time map preferably stores the time at which each EPG data block was sent to the EPG scrambler 28. Next, at step 512, a transaction representing EPG data is transmitted to the EPG scrambler 28. Next, at step 514, the EPG transaction formatter 58 makes the next EPG update (which should happen when the system time enters the new 30 minutes) or the next EPG change (which can happen at any time). Wait for. Upon receipt of such an update or change, control returns to step 502. Text transaction formatters 60 and 62 similarly generate text transactions for text data defined on a per screen basis (not per program) as described above. Thus, the add text screen command is similar to the add EPG block command except that the number of text channels and the number of screens are given instead of the number of EPG blocks and short / long term data bytes. Text transaction formatters 60 and 62 may require time from the scrambler so that proper pagination can be maintained.
FIG. 33 shows a flowchart of one embodiment of software that may be used and embodied in the text channel transaction formatters 60,62. As shown, the software begins at step 600 and reads a text screen record from text database 50 or 54 at step 602. The text screen is formatted into a text screen add transaction at step 604 and transmitted to the text channel scramblers 30 and 32 at step 606. Preferably, such transactions are formatted such that display characters are sent as display commands rather than as separate characters for each display coordinate of the text display screen. Next, at step 608, the text transaction formatters 60, 62 wait for the time period specified by the system manager 12 (if automatic pagination is used), after which the next text page is formatted and the text channel scrambler. 30 and 32. At the end of this time period, control returns to step 604 where the next text screen record in the text database 50, 54 is formatted and the text scrambler 30 for insertion into the vertical blanking interval of the particular video signal. , 32.
The text data may be sent to the screen by sending a separate character for each display location on the page. In other words, if the text screen contains 16 lines and 4 characters per line, the text screen is represented by sending 384 (24 × 16) characters, one for each display location on the display screen. . A blank space character is sent to indicate that the character is not in a particular text screen location.
In some embodiments, the text data is transmitted to the screen along with appropriate commands for controlling the display of the text data. For example, the first display command in the sequence identifies the subsequent data as text data and instructs the set top box 34 to fill the TV screen with a blue background or some other background or template in which the text is displayed. To do. The text data is then converted into a series of commands that together identify separate screens of text. As mentioned above, text data is grouped on a per screen basis, but this allows an appropriate delay mechanism to be incorporated into the display command, reducing the delay required between each text screen presentation. Provide.
For this purpose, the transaction formatters 60 and 62 scan the text data for actual characters, skip excess space in the text data, group the actual text, and perform vertical blanking of the field of the video signal. Software may be included for transmitting in a transaction of a specified size that conforms to the erase interval. Since the space is removed, the display command contains coordinates that specify the row and column address of the first display character on the screen, and multiple adjacent spaces until the transaction is full or multiple consecutive spaces are encountered. A character follows that character during the same transaction.
Attribute information such as underline, blinking or intensity reversal associated with a character can also be transmitted using these display commands. These display commands are used to read the text data for the text screen from the appropriate database, the display command is transmitted at the end of the text data for the text screen, and all data for that text screen is transmitted. Indicates that it has been done. Transaction formatters 60, 62 also include a wait loop or “timeout” command at the end of the transmission, which allows the viewer sufficient time to view the text screen before the text data for the next text screen is displayed. Is incorporated into the delay (which is on the order of 7 seconds), thereby giving automatic pagination of the text screen.
Automatic pagination allows the viewer to automatically advance from one text screen to the next without any viewer intervention. According to the automatic pagination scheme of the present invention, the cable operator can specify the duration between screens and transfer this information to the transaction formatters 60,62. Then, during operation, when the viewer selects a text channel, the selected text channel data is extracted from the vertical blanking interval of the video signal into which it is inserted and the text data is displayed on the text channel display. The current page of text data is displayed by associating it with the viewer's television channel designated for. The next screen of text data is displayed after a predetermined delay (about 7 seconds) that gives the viewer enough time to read the text data displayed on the current screen. This technique can replace the commonly used “Barker” channel, which uses a computer to generate text data that is then transmitted as a complete video channel by a cable television system.
In response to the control command from the HEC 14, the configurator 56 provides the updated authority information to the router and formatter 43 to be compared with the incoming data, and the EPG supplier 18 and the text channel supplier 20 add it. Database managers and databases etc. can be added / subtracted as they are subtracted from the system. A control link between the HEC 14 and the configurator 56 can be used to report the status of the ISP 16 to the system manager 12. In addition, the control link may accept text data from the system manager 12 to display system messages and the like.
In one embodiment, the interface between configurator 56 and HEC 14 is an RS-232 port with a data format fixed at, for example, 9600 baud. All control data is preferably transmitted as ASCII characters. Upon receipt of the message from the HEC 14, the configurator 56 examines the data and performs the requested action, and of the type described above for communication between the router and formatter 43 and the EPG supplier and text channel supplier. Returns a command response message in message format. Sample commands sent from the HEC 14 to the configurator 56 over the control link include date / time setting commands (for synchronization purposes), configuration request commands, status request commands, get category record commands, scrambler control commands and database control commands. including.
In one embodiment, in operation, ISP 16 monitors all input port data from EPG and text data service providers and builds a list of all available EPG and text data services. This list is sent to the system manager 12 using a configuration request command. This command includes the available service providers, the type of service from each provider (EPG or text data), the communication port associated with each service, the scrambler address or data stream for each service (EPG or text data), each Specify the authorization code from the supplier for each service, the time and date of the last update from the service provider, the time and date of the last update to the scrambler, the time and date of the latest EPG data in the EPG database, etc. To do. When this command is given, such information is provided to the system manager 12 for each service provider.
The status request command may include a flag that indicates whether there is an error present in the error log and whether the category list has changed since the last status request command was received. Next, error and category information may be extracted using a get error record command and a get category record command.
In one embodiment, the configuration commands are separated into EPG service configuration commands and text service configuration commands. The EPG service configuration command is for service provider, type of service, service is enabled or disabled, authorization code from EPG supplier 18, scrambler data stream for short-term data, long-term data Scrambler data stream, length of short-term data in time (1-255), and length of long-term data in time (1-4096). The text service configuration command includes the service provider, the type of service (weather, sports, etc.), whether this service should be enabled or disabled, the authorization code from the text channel supplier 20, data about text data Specifies the pagination delay time in seconds before the next page of text data replaces the current page of text data for stream or scrambler address, number of channels, and automatic pagination.
The scrambler control command, for example, specifies the amount of scrambler memory in kilobytes that is used when the scrambler is replaced and needs data to be reloaded into its memory, and the amount of scrambler memory A scrambler configuration command.
In some embodiments, the database control command can be, for example, a database clear command used to clear a database associated with a particular service, and a database used to delete a database associated with a particular service. Contains a delete command. Other database control commands such as a category map download command may be provided to establish a list of designated categories of program data in the EPG data.
FIG. 34 illustrates one embodiment of a set top box 34 that can be used with the present invention. As shown, the set top box 34 reads commands from the EPG memory 36, the template memory 38, the text page memory 42, the set top box 700, and the vertical blanking interval of the incoming video signal. A set top processor 702 for performing For example, if the incoming command is a text channel definition or EPG definition command from HEC 14, an appropriate update of bitmap 704 is performed. Similarly, if the incoming command is a display command including EPG data, the data is stored in the EPG memory 36 and a menu by the TV remote control unit 706 and the remote receiver 708 from which the user requests display of the EPG data. When the selection is made, it is displayed together with the template stored in the template memory 38. If no template memory is provided, the template data may be sent as part of an EPG display command. On the other hand, if the incoming command is a display command containing text data, the page of data is stored in the text page memory 42 to present one page at a time on the display. If automatic pagination is enabled, the text page memory can be automatically updated every few seconds due to the delay incorporated into the display commands from the text formatters 60,62. Alternatively, a user may be able to manually access text data in memory. If manual access is provided, the text page memory holds at least the currently displayed text page, the previous text page, and the subsequent text page to give the user the ability to scroll through the text data. It is preferable. In any case, the set top processor 702 preferably has the ability to request the next text page while the current page is displayed, so that the next text page is displayed for display at the end of the screen delay time. Already loaded. Next, the selected text, EPG, or video signal is modulated by modulator 710 and displayed on television screen 40 on the channel specified in bitmap 704.
The bit map 704 of the set top processor 702 of the set top box 34 specifies the frequency that must be tuned by the box 700 to receive the desired text data, and displays the received text information for display. Associate with the specified cable channel. This information is received from the HEC 14 in the aforementioned text channel definition transaction. For example, the viewer may specify via television remote 706 that he wants to watch a sports text data channel indicating that the program guide is available by tuning set-top box 34 to channel 181. The set top processor 702 then checks the bitmap 704 for channel 181 and extracts the sports text data for channel 181 of the viewer from channel 29's vertical blanking interval for channel 29. The set top processor 702 sets the set top box 100 to tune channel 29, but the video signal on channel 29 is not displayed. Instead, the video screen is erased by the set top processor 702 and the text data extracted from the vertical blanking interval by the set top processor 702 is displayed. The necessary descrambling of the received video is performed by the set top processor 702. Thereby, the viewer perceives that many more “virtual” channels are available even though a separate video channel is not used to transmit the text data.
In one embodiment of the present invention illustrated in FIG. 42, electronic content is tagged and aggregated on a server, resulting in electronic content with targeted information. Suitable electronic content includes, but is not limited to, advertisements, news segments, video programs, audio programs, WEB pages, and the like. Electronic content with targeted information is transmitted to a broadcast server and widely broadcast. Set top box 34 generates a profile representing different people in the household. The set top box 34 matches the generated profile with the tags in the broadcast stream and determines which of the tagged content should be downloaded. Of the broadcast content, all subsets associated with individuals in the household are downloaded and displayed to the user.
For example, the set-top box 34 may be used to match tags in a broadcast stream with previously generated demographic profiles of viewers to determine which of the tagged content should be downloaded. it can. Individual viewers receive only from the set top box 34. The set top box 34 matches the tags in the broadcast stream with the demographic profile of the generated viewer and determines which of the tagged content is to be downloaded.
Some examples of demographic characteristics include, but are not limited to, the user's gender, race, age and income. The output of the representative sample viewing habit analysis is the basis for determining the demographic characteristics of individual users.
As shown, the set top box 34 reads incoming tagged and assembled electronic content commands and takes appropriate actions. For example, if the incoming command is a text channel definition or EPG definition command from the HEC 14, the bitmap 704 is updated appropriately. Similarly, if the incoming command is a display command including EPG data, the data is stored in the EPG memory 36, and the menu selection by the TV remote control unit 706 and the remote receiver 708 that the user requests to display the EPG data is performed. When done, it is displayed with the template stored in the template memory 38. If no template memory is provided, the template data may be sent as part of an EPG display command. If the incoming command is a display command containing text data, the page of data is stored in the text page memory 42 to present one page at a time on the display. If automatic pagination is enabled, the text page memory can be automatically updated every few seconds due to the delay incorporated into the display commands from the text formatters 60,62. Alternatively, the user may be able to manually access text data in memory. If manual access is provided, the text page memory holds at least the currently displayed text page, the previous text page, and the subsequent text page to give the user the ability to scroll through the text data. Is preferred. In any case, the set top processor 702 preferably has the ability to request the next text page while the current page is displayed, so that the next text page is displayed at the end of the screen display time. Already loaded for. The tagged and assembled electronic content is then modulated by a modulator 710 and displayed on the television screen 40 on the channels specified in the bitmap 704.
The bitmap 704 of the set top box 34 associates the received tagged and assembled electronic content with the designated cable channel for display. Next, the set top processor 702 examines the bitmap 704 for channel 181 and determines that it must tune the frequency for channel 29 in order to extract it. The necessary descrambling of the received tagged and assembled electronic content is performed by the set top processor 702.
The present invention also provides a mechanism for automatically generating multiple profiles corresponding to multiple users with or without information about themselves explicitly provided by the users. FIG. 35 illustrates an embodiment of the present invention that results in automatic generation of multiple profiles and automatic identification of profiles when they are active on the device.
In some embodiments, the number of profiles to be generated is initially determined. Several methods can be used to determine the number of profiles. In one embodiment of the invention, the number of profiles is optionally determined by applying a minimum message length (MML) criterion. The process of applying the MML criteria to determine the optimal number of clusters is described in the reference (ref.). In one embodiment of the invention, the device user explicitly specifies the number of profiles to be generated.
The system monitors user interaction with the device. User interaction may include, but is not limited to, a request to change channels, request more information, configure device parameters, delete or record programs from storage. All actions by user interaction are recorded in a history database that stores a history of viewer behavior. Data records in the history database that describe viewer behavior can be in different formats. FIG. 37a shows one possible format for the data record. The data record may include information about the action, the time when the action occurred, and some parameters that further describe the action. In one embodiment of the invention, only actions that meet certain criteria are recorded in the history database. For example, all user actions related to viewing a channel can be ignored if the viewing duration is less than a configurable threshold, and all of the viewing of a particular channel, such as a notice channel, can be ignored. User behavior can be ignored. In default usage of the device, the user does not identify himself during each usage session. A usage session in this context can be a period in which there is user activity between two periods of inactivity, or a period in which the device is used between two periods when the device is not in use. In order to give the user a very personalized environment, it is up to the device to determine who the actual user is. In such a scenario, the user behavior record does not include information about who the user is. In some embodiments of the invention, the user can explicitly identify all or part of the usage session by using some mechanism provided by the system. These mechanisms may include pressing a series of keys or selecting a username from a menu and logging in as that user. In this embodiment of the invention, the user may choose to be identified during certain sessions and not choose to be identified during any other session. When a user identifies, some user action record may contain the user's name or some other identifying data as a parameter that specifies that the user was logged in during the session in which the user action record was generated Can have.
By analyzing a user behavior history database generated during a period of time, the present invention provides a mechanism for automatically generating multiple profiles. Each of these profiles may correspond to a single user's overall preferences, a single user's group of related preferences, a group of user's related preferences, or a collective preference of a group of users. The mechanism for generating multiple profiles is represented in FIG.
A set of consecutive user action records are grouped together to form a usage pattern record. The usage pattern record may be in the form of an array of user behavior records. Only user actions that occur continuously are grouped into a single usage pattern record. Usage pattern records can be formed using a number of methods, some of which include:
1. Group all user behavior records in a single usage session into a single usage pattern record. This is represented graphically in FIG. 38a.
2. All user behavior records in a single usage session are grouped into one or more usage pattern records such that each usage pattern record has a predetermined number of user behavior records. This is represented graphically in FIG. 38b.
3. One predetermined number of consecutive user behavior records in a usage session such that each usage pattern record has a plurality of user behavior records that overlap some of the user behavior records in adjacent usage pattern records Group into the above usage pattern records. This is represented graphically in FIG.
Each usage pattern record is associated with a point in an N-dimensional space, and each axis in the N-dimensional space represents a parameter that is important when specifying a plurality of profiles. The N dimension of this space is called the cluster dimension. This N-dimensional space parameter is either manually determined by those skilled in the art identifying the most meaningful parameters in identifying multiple profiles, or by automatically identifying profile aspects that differ significantly between profiles. It is selected by. In one embodiment of the invention, a set of these parameters is identified and configured when the device is configured during initialization, and by looking at different aspects in multiple profiles stored in the device, a new set is created. Added periodically. Various combinations of initial parameters may be used. In one embodiment, these initial parameters are the channel name and view count in the channel lineup. In this example, these initial parameters are possible values for the program description field of the television program. In some embodiments, the rate of channel change is also a parameter. The association of the usage pattern record with the point in the space defined by the cluster dimension can be performed by many methods. One method determines the amount of a particular feature defined by the clustering parameters indicated in the usage pattern record, such as the number of channel changes in the usage pattern, and uses this as the value of the corresponding dimension axis. One method determines the rate of consumption of a particular feature in the usage pattern record, for example, the rate of consumption for “NBC” in the usage pattern record is 5, which means that the program on “NBC” is this It shows that it was seen 50% of times during the period of the usage pattern record.
All points in the space defined by the cluster dimension are clustered into multiple clusters using standard clustering algorithms. Clustering can be performed using any clustering algorithm. In one embodiment, EM clustering is applied to group points in the cluster dimension space into a predetermined number of clusters. The number of profiles generated determines the number of clusters formed. Those skilled in the art of artificial intelligence and clustering, particularly EM clustering, will be familiar with these clustering techniques. Each cluster formed as a result of clustering represents a single profile. The clustering process provides a blend weight for each of the clusters as one of the outputs. Using the blend weight for the cluster, the percentage of time that the profile was active out of the total amount of time the device was used can be calculated.
In one embodiment of the invention, clustering is performed periodically using user behavior records stored in a history database. In one embodiment, user behavior records are periodically removed from the history database based on certain criteria such as record age, record size, and record relevance.
The invention also provides a mechanism for predicting a profile that is active at any given time. FIG. 40 shows a method for identifying a profile that is currently active on the device. The current user behavior is monitored and a user behavior record is generated. A usage pattern record is generated using the latest user action record. The usage pattern record is associated with a point in the cluster dimension. Using information about clusters representing multiple profiles, the probability that each of the clusters is active for a given usage pattern is calculated. This is calculated using Bayesian probability theory, which can be used to calculate posterior probabilities using prior probabilities and blend weights. The probability that a cluster is active is calculated using the probability of a usage pattern record (P / use_pattern profile), the probability that the profile is active, and the probability that a usage record occurs for a given profile. In this context, the mathematical expression for Bayesian probability theory is:
P (profile / usage_pattern) = (P (usage_pattern, profile) * P (profile)) P (usage_pattern)
In this equation, the probability (P (use pattern, profile)) that a use pattern record occurs for a given profile can be calculated by knowing the probability distribution governing the cluster. In one embodiment, the cluster probability distribution can be assumed to be a Gaussian probability distribution, so P (utilization_pattern profile) can be calculated using the cluster center and cluster variation. Cluster center and cluster variation are outputs generated by the clustering process performed to generate a plurality of profiles.
In some embodiments, switching the device on may be one of the recorded user actions, and “time of use” is one of the cluster dimensions. In this example, as soon as the user switches on the device, the probability that any cluster is active can be determined without further user action. As the user performs more user actions, the current usage pattern record is refined to include more user action records, and the probability of a profile that can be active is determined by adding each new user action record. Refined. As more user behavior records are added to the current usage pattern, the oldest set of user behavior records may be removed from the current usage pattern record. This process ensures that the impact of individual user behavior in identifying activity profiles decreases over time.
In one embodiment of the invention, the clusters generated by the clustering procedure are used to generate multiple profiles using the method depicted in FIG. In this embodiment, clusters are used to calculate the probability of each cluster being active during each usage pattern record. User preferences for each profile are generated using the process described above using user behavior weighted by the probability of the corresponding cluster being active.
In yet another embodiment of the invention, multiple profiles may be generated for each user. Each of such multiple profiles may be used to represent a user's viewing preferences at various time periods such as weekdays or weekends or morning or evening. The profile also follows other variables, such as showing more sports during the football season, showing more gardening programs in the spring, and showing more political reviews during the primary election every four years. There may be various. Thus, when the system of the present invention is activated and the user who activated the system is recognized, the system can further determine the date and / or week and access the appropriate profile for the user.
Referring to FIG. 43, in another preferred embodiment of the present invention used to deliver advertising content to viewers specifically targeted based on individual viewer profiles, the broadcast network may have many different Content is gathered from the content providers and combined at the network broadcast head end 29 to be a broadcast signal transmitted to and received by the television control system 2 of the present invention. The control system 2 sorts the content received from the broadcast network based on different viewer profiles of a particular household, edits the list of preferred programs available to each user, and records the programs of interest. Make programs that you can remember and watch when you need them. Equally important, the control system 2 receives and sorts the various advertising content and stores the content most relevant to the household audience based on the demographic profile and the targeted audience of the advertising content.
Even more specifically, as shown in FIG. 43, the content providers include an EPG provider 18, a text channel provider 20, a traditional programming provider 23, and an alternative content provider 25. As described below, alternative content refers to highly targeted programming that can be delivered through the use of the control system 2 described herein. Traditional programming includes, but is not limited to, all types of programming currently available, including movies, news, sporting events, educational programs, paper view programs, and shopping channels. Advertising content providers 19 are programming suppliers 23 with promotional materials such as short video clips or graphics and text information for inclusion in their traditional programming content in a manner familiar to TV viewers around the world. To provide. However, in a novel method of delivering advertising content that is uniquely available through the use of the present invention, the advertising content can be provided to alternative content suppliers (see description below), each of the personal advertising messages May be profiled by the profiler 21 to develop metadata describing the. As discussed throughout this specification, metadata refers to demographic characteristics that describe the audience to which each advertisement is specifically targeted.
The profiler 21 may be a software-based system or may rely on human intervention to develop metadata that views and analyzes each advertising message to describe the advertisement. Alternatively, the advertising content supplier 19 may provide this information along with the advertisement. The metadata is developed based on parameters of interest to the client where the ad is developed and typically includes age, gender, ethnic background, education, occupation, and other demographic information related to the viewer. Including. Thus, the metadata will describe the viewer to whom each advertising message is targeted for viewer demographic information defined by the parameters described above. The metadata generated in this way is added to each advertisement, and the advertisement tagged in this way is given to the broadcast network and included in the broadcast signal.
Tagged advertisements are preferably provided to multiple channels, where each channel may have a specific type of advertisement for the target audience. Thus, each channel may be defined according to one demographic parameter or often a repeated combination. For example, a channel having an advertisement for men, a channel having an advertisement for women, a channel having an advertisement for male sports fans, and the like. Alternatively, each channel may have all types of advertisement flows, where each type of advertisement exists in a ratio that depends on the demographic parameters to which it is targeted. Thus, on weekend afternoons, there are more ads targeted to male sports fans than ads targeted to small children. This is because many sports events are broadcast at such times and small children are more likely to play outside than watching TV indoors at such times. Providing tagged advertising content via multiple channels is not a requirement of the present invention, but the pure amount of available advertising content may actually require multiple channels. Further, providing the channels in a pre-classified manner may reduce the amount and complexity of classification performed by the control system 2 (described in more detail below).
As shown in FIG. 43, the signal broadcast by this network may further include information provided by the administrator of the service provided by the present invention, such as Metabyte Corporation, the assignee of this application. As will be explained in more detail elsewhere in this application, this information may include software updates of the control system 2.
Still referring to FIG. 43, the network broadcast signal is communicated to and received by the control system 2. The broadcast signal may be encoded analog or digital and may be transmitted via cable, satellite, telephone line, or any other feasible aspect. Practical considerations will dictate broadcasting network signals in digital form from the many channels and base technologies typically available. This requires that both the network head end 29 and the control system 2 incorporate ADC and DAC circuitry in a manner well known to those skilled in the art. Furthermore, although not shown in the figure, the control system 2 is required to separate a number of multiplexed signals in the broadcast signal and select any one of these signals (ie, the channel) as required. It will be appreciated that a channel conditioning circuit needs to be incorporated.
When the broadcast signal is received by the control system 2, it is supplied to the various components of the system. The program switch 114 directs the channel signal to the TV monitor 108 in response to viewer input provided via a remote control or similar unit to select the desired channel. As described above, the preference agent 110 monitors the viewing selection of various viewers using the control system 2 and generates a viewing profile for each viewer stored in the preference database 116. Based on these profiles, the preference agent 110 classifies incoming programming content as described in the EPG information, such as a “Top 10” list of viewing choices available at any given time for each viewer, etc. Edit the list of videos and record in the recording manager 112 the top ranked programs broadcast at any given time (including any programs selected by the viewer for recording) and store them Instruct to store in memory device 35.
The preference agent further includes software that allows a demographic profile for each viewer to be generated based on the viewer's viewing profile and a particular algorithm or associated rule. These algorithms may be adjusted over time as the model used by system administrator 27 improves and its accuracy improves. For this purpose, the system update information channel included in the broadcast signal may include periodic software updates including new preference database parameters that may need to be included at the request of the advertisement provider 19. Thus, in one embodiment, the control system 2 of the present invention is designed to meet any new demands that may arise as advertising content providers become familiar with the system and the process of customizing the narrowly focused targeted advertisement. May be improved remotely. The demographic profile generated for each viewer is stored in the demographic database 31, which ensures the viewer's privacy to be located in the control system 2.
The preference agent 110 also classifies the advertising content that flows through multiple advertising channels included in the broadcast signal and includes metadata included in each advertisement to describe the demographic profile of the viewer and the target audience for a particular advertisement. To store and / or display specific advertisements. As will be described later, the control system 2 may operate the advertising content using any of various methods.
In one embodiment of the invention, each of the advertising channels has the same type of advertisement. The preference agent determines which viewers are watching TV at any given time and stores the tagged advertisement targeted to that particular viewer in the stored advertisement memory device 33. At the appropriate time in the program that the viewer is watching, such as during a commercial break that is typically inserted into most TV programs, the preference agent can be selected by accessing the program source switch 114 to access the stored advertisement. The TV monitor 108 is instructed to play the advertisement. When the program that the viewer is watching contains information about the length of the commercial break, the preference agent may select a stored advertisement of the appropriate length for insertion into the assigned time frame. The preference agent may further ensure that all stored advertisements are displayed equally by remembering previously played advertisements. Alternatively, a tagged advertisement may include a desired number of times that the advertisement provider wants the advertisement to be broadcast on any given day, or sometimes a specific time at which the advertisement should be shown. Thus, after some advertisements are memorized, for example, enough for 24 hours, the preference agent reviews all memorized advertisement metadata and when and what to show these advertisements to the viewer You may develop a strategy that includes how to show times.
Alternatively, the preference manager may display a specific number of advertisements and a recording manager to record the selected program when the displayed stored advertisement is longer than the time frame allocated for the commercial break. 112 may be instructed. Therefore, the control system 2 of the present invention can manipulate the broadcast schedule of the program to some extent by changing the amount of advertisement content received by the viewer.
In another embodiment, the advertising channel may only operate during a limited time of the day, typically during off-peak hours (such as 2 am), during which all advertisements for the next day May be downloaded and stored. That is, the advertisement channel may be turned on at a particular time and all advertisements may be run through the control system during one or two hours. Alternatively, a regular programming channel may pause programming for one or two hours at a convenient time and serve advertisements for the next day. In yet another alternative, a dedicated connection such as a telephone line or internet connection may be used for periodic downloading of advertisements.
In an alternative embodiment, multiple ad channels have a mix of ads so that at any given time, a preference agent can target at least one ad targeted to a viewer from one of these channels. You may have the option to select. In this embodiment, the control system can store only one advertisement at any given time to ensure continuity between the program being viewed and the advertisement. For example, a commercial break of a program may begin at a time that does not correspond to the start of advertising on any advertising channel. In this case, the advertisement stored in the control system is directed to the TV monitor through the program source switch, while another targeted advertisement is stored simultaneously for subsequent display. When a commercial break happens to coincide with the start of a targeted ad for one of the ad channels, the preference agent may simply cause the program source switch to point a particular channel to the TV monitor while another ad Another advertisement from the channel is remembered.
In another embodiment, each regular programming channel may have multiple multiplexed versions of an advertisement. When a commercial break begins, the preference agent selects the most appropriate version of the advertisement and directs it to the program source switch. This embodiment requires additional circuitry to demultiplex the various versions of each advertisement and apply the specific version selected by the preference agent to the program source switch.
The new method of delivering targeted advertisements provided by this invention is particularly advantageous for the advertising industry. In one aspect, the present invention allows greater freedom in advertising production. This is because advertising no longer needs to appeal to a wide variety of viewers. In addition, because alternative advertisements are delivered in real time, all viewers will receive personalized advertisements at the same time compared to the prior art, which requires five different time frames to broadcast five different advertisements. Provides significant time savings. This realizes cost savings, which can be especially noticeable during very popular events such as the Super Bowl.
As described above, the preference agent 110 may classify the available channels and select the 10 (or any other number) currently playing programs that most closely match the viewer's viewing profile. In addition, the preference agent may build a customized list of future programs based on the viewer's profile and any additional criteria specified by the user. In the preferred embodiment, the user can fully customize his viewing profile, including values assigned to the different parameters that make up his or her viewing profile. In an alternative embodiment, the user may even be able to identify the type of advertisement he likes. Such a configuration can create an alternative billing device so that the user can see the ad in exchange for being able to identify the type of ad he wants to receive and possibly in some rewards. I agree.
Another new possibility that may arise with this invention is to always show the most interesting programs broadcast at any given time and / or programs that fit very close to the previously recorded and stored viewer profile. Creation of a “personal channel”. Thus, by turning on the personal channel, the viewer is always assured of the most personalized and interesting viewing experience available based on the program broadcast during a particular prior period that the viewer can specify. . Thus, a personal channel may show a collection of movies, news segments, sporting events, and any other programming content that has been broadcast over the past 24 hours and fits the viewer's profile to the extent specified. Good.
An additional component of the control system 2 that may be incorporated only into the selected control system is to delete any personal information from the demographic database and use this anonymous information to generate a demographic database A privacy filter 37 that communicates to the system administrator 27 for the purpose of maintaining and updating. Such a control system model requires a feedback line to communicate demographic information to the system administrator, which in the preferred embodiment is a telephone line or a dedicated internet line such as DSL, cable, etc. The system administrator may offer a reward or other reward to the user to convince the user to supply this type of information. By carefully selecting users from a wide range of demographic profiles, system administrators can use the information gathered in this way to compare these users' actual demographic data with demographic profiles developed by preference agents. By doing so, the model used to develop the demographic profile of the viewer based on his or her viewer profile can be improved.
Due to the narrowly focused nature of advertisements delivered by the present invention, targeted advertisements developed for delivery by the control system of the present invention will have new configurations such as coupons or highly targeted descriptions. It may contain elements. Thus, targeted advertisements developed for distribution through the present invention may include specific information expressed in a specific language that is specifically intended to appeal to the target audience.
The invention further enables the creation of highly targeted content other than advertisements that can only be delivered to very specific viewers. Thus, movies, shows, religious programs, video magazines, infomercials, etc., without the restrictions typically imposed on their content developers when the program reaches or is at least accessible to a very wide audience, It can be developed to reach a very specific audience. This embodiment requires that such specific content is supplied via a specialized channel that is not directly matched by a conventional TV tuner and can only be accessed through the control system 2. Such highly targeted content may be provided by alternative content provider 25 or may be developed for alternative distribution by conventional programming provider 23. By using this invention, a new content content provider can not only reach very specific viewers but also automatically exclude certain parts of the viewers remotely from not accessing this material A simple distribution medium. Such alternative content may be broadcast exclusively on the viewer's personal channel as described above.
Thus, the present invention enables the delivery of highly targeted content to viewers including not only advertisements but also other programming and content. Referring to FIG. 44, a timeline 800 that tracks the progress of a typical television program 850 is shown. In conventional linear programming currently available to TV viewers from broadcast and cable / DSS stations, program 850 consists of scenes such as scene 1 and scene 2 and advertisements such as Ad1 and Ad2. According to conventional linear programming, the scenes are shown in order as predetermined by the program producer, with the display of advertisements interspersed there as determined by the headend operator. According to the present invention, customized linear programming is enabled by the development of demographic and / or viewer preference profiles for each user. The customized linear program 860 may also include scenes with scattered advertisements, but some or all of the scenes and advertisements may be targeted to various demographic or viewing features of the user. Scene 2 may actually have two different versions filmed by the TV program producer, Scene 2 and Scene 2a, each version of that scene being more appropriate for a particular target audience, or more It is interesting or less unpleasant. Thus, in one possible embodiment, scene 2a may be a less violent or less explicit version than scene 2. The system of the present invention receives a TV signal having both scenes and selects among the available alternatives based on the profile of the currently viewing user and the target data of the alternative scene. Therefore, the program 860 shown in FIG. 44 is linear as including scene 1, alternative scene 2a, alternative scene 3b, alternative Ad1a, alternative Ad2c, scene 4, Ad3, and alternative Ad4b. Shown to the user in a seamless manner.
The same adaptation and selection process occurs for scenes 3, 3a and 3b, and advertisements. Ad1 may be provided with four variants, each targeting a different demographic characteristic such as the user's gender, income, geographic location, or any other desired characteristic. As described above, providing such targeted advertisements provides a more enjoyable viewing experience for the user and thus increases the likelihood that the user will see the advertisement without changing or leaving the channel.
It is important to point out that the targeted advertising methods enabled by the present invention are different from providing advertising messages by programming guides. The present invention makes it possible to show advertisements in a seemingly conventional linear fashion, and the broadcast of a television program is periodically paused by the headend to broadcast the advertisement. The advertisements shown are targeted to individual users watching a particular TV set, but the user is not prompted to select alternative advertisements in any way, and the set-top box is in any other way You will not be informed of the fact that you are receiving alternative advertising. This is a technique for providing targeted advertisements that is different from providing targeted advertisements by a programming guide. Because in conventional programming guide situations, the TV screen is typically divided into at least two different areas, one area showing the program listing while the other area displaying advertisements. Thus, in the program guide situation, the user receives no program organization at all and receives only program listings and advertisements.
As shown in FIG. 44, the alternative scenes and advertisements preferably occupy the same time frame within the program timeline by being the same length. However, alternative length advertisements and scenes such as those included in television program 870 can also be provided. In this embodiment, the set-top box calculates the length of each scene and advertisement and additionally acts as a scheduler by scheduling the scene and advertisement, thereby allowing the user to have a seamless or non-overlapping seam. Show no apparently linear programs. In this example, both scenes and advertisements may include any combination of broadcast and previously recorded stored scenes and advertisements. For example, in the program 870, the alternative scene 2a may be shorter than the alternative scene 2, so that it is necessary to show the scenes 3b and Ad1a at an earlier time. In this case, an additional AdA may be indicated between Ad1a and Ad2c, where AdA is that the target profile matches the user's demographic profile and that is an appropriate amount of time. From the set-top box.
Providing customized programs also allows reaching a wider audience by providing more specific to specific features and characteristics of the general audience population. In addition, by providing such customized content, program producers can explore different variants of the same concept (storyline) and edit different scenes for different audiences, which is much greater for them. Artistic and expressive freedom may be possible. Another possible use of customized linear programming enabled by the present invention is to provide highly personalized services such as news, weather, stock market quotes, shopping events, instructional videos, and the like.
The popularity and acceptance of the system of the present invention is highly dependent on the cost to the end user or viewer. Thus, in one preferred financial arrangement, the user pays a set fee for the control system or hardware, connects the control system to his TV and incoming cable or satellite antenna line, and beyond Enjoy the personalized services offered by the control system without paying costs. The system administrator provides tagged advertisements for broadcasting over the broadcast network and charges the advertising client for a fee. The actual advertisement may be provided by the advertising content supplier or the advertising client itself (eg, the truck manufacturer), and the system administrator tags the metadata. The fee may be based on the total number of target viewers that the installed control system and / or advertising client wants to reach. Thus, when a client wishes to broadcast an advertisement that is tagged to reach a relatively wide range of viewers who have purchased and installed the control system of the present invention, the fee charged is more narrowly focused. It is relatively higher than the fee charged for the combined advertisement.
Although the invention has been described in accordance with the requirements of patent law, those skilled in the art will understand how to modify and change the invention to meet their specific needs or conditions. Such modifications and changes can be made without departing from the scope and spirit of the invention as set forth in the appended claims.

原出願(特願2001−521064)の出願時の特許請求の範囲を以下に記載しておく。
〔請求項1〕 複数の個別の視聴者の各々にカスタマイズした線形ビデオ番組編成を配送するための方法であって、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する視聴者特徴情報を発展させるステップと、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者特徴情報に従って視聴者に対する線形配送のための見掛け上線形の番組を生成するステップとを含む、方法。
〔請求項2〕 ビデオ番組編成セグメントの集合を構成するステップは、
ビデオセグメントの放送と同時に視聴者に対する線形配送のための少なくとも1つの放送ビデオ番組編成セグメントを選択することによって見掛け上線形の番組を生成するステップをさらに含む、請求項1に記載の方法。
〔請求項3〕 ビデオ番組編成セグメントの集合を構成するステップは、
視聴者に対する線形配送のために記憶媒体に記憶される少なくとも1つのビデオ番組編成セグメントを選択して見掛け上線形の番組を生成するステップをさらに含む、請求項1に記載の方法。
〔請求項4〕 複数の視聴者の各々の嗜好を示す情報を処理するステップは、
複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するステップを含む、請求項1に記載の方法。
〔請求項5〕 複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するステップは、
複数の視聴者の各々が見るテレビ番組を示す情報を処理するステップを含む、請求項4に記載の方法。
〔請求項6〕 複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するステップは、
複数の視聴者の各々によって録画されるテレビ番組を示す情報を処理するステップを含む、請求項4に記載の方法。
〔請求項7〕 複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するステップは、
複数の視聴者の各々が見ないテレビ番組を示す情報を処理するステップを含む、請求項4に記載の方法。
〔請求項8〕 複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するステップは、
複数の視聴者の各々によって要求されるテレビ番組ガイド情報を示す情報を処理するステップを含む、請求項4に記載の方法。
〔請求項9〕 複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するステップは、
複数の視聴者の各々によって要求されないテレビ番組ガイド情報を示す情報を処理するステップを含む、請求項4に記載の方法。
〔請求項10〕 情報を処理するステップは、
電子番組ガイド情報を処理するステップを含む、請求項5から9のいずれかに記載の方法。
〔請求項11〕 複数の視聴者の各々の嗜好を示す情報を処理するステップは、
問合せに応じて各視聴者から与えられる複数の視聴者の各々の嗜好を示す情報を処理するステップを含む、請求項1に記載の方法。
〔請求項12〕 複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するステップは、
複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するステップを含む、請求項1に記載の方法。
〔請求項13〕 複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するステップは、
複数の視聴者の各々の音楽の嗜好を示す情報を処理するステップを含む、請求項12に記載の方法。
〔請求項14〕 複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するステップは、
複数の視聴者の各々の読書の嗜好を示す情報を処理するステップを含む、請求項12に記載の方法。
〔請求項15〕 複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するステップは、
複数の視聴者の各々の買物の嗜好を示す情報を処理するステップを含む、請求項12に記載の方法。
〔請求項16〕 複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するステップは、
オンライン音楽クラブ、オンライン本クラブ、オンライン特別な趣味のクラブおよび組織、ならびにオンライン小売業者および貿易業者を含むソースの群から取得される、複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するステップを含む、請求項12に記載の方法。
〔請求項17〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する視聴者特徴情報を発展させるステップは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップを含む、請求項1、4、11または12のいずれかに記載の方法。
〔請求項18〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップは、
一般母集団の代表的標本の視聴習慣に基く予測モデルに従って複数の視聴者の各々の嗜好を示す情報を処理し、各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップを含む、請求項17に記載の方法。
〔請求項19〕 一般母集団の標本の視聴習慣に基く確率モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理するステップは、
ベイズネットワークを構築することによって予測モデルのパラメータに対する最大事後確率値を計算し、各視聴者に対するテレビ番組視聴嗜好を予測するステップを含む、請求項18に記載の方法。
〔請求項20〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップは、
複数の視聴者の各々の嗜好を示す情報を処理することによって各視聴者の隠れた特色を演繹するステップを含む、請求項17に記載の方法。
〔請求項21〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップは、
複数の視聴者の各々の嗜好を示す情報を処理することによって各視聴者の関連する特色を演繹するステップを含む、請求項17に記載の方法。
〔請求項22〕 各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理して各視聴者に対する人口統計情報を発展させるステップをさらに含む、請求項17に記載の方法。
〔請求項23〕 各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理して各視聴者に対する人口統計情報を発展させるステップは、
一般母集団の代表的標本の視聴習慣に基く予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理して各視聴者に対する人口統計情報を発展させるステップを含む、請求項22に記載の方法。
〔請求項24〕 一般母集団の代表的標本の視聴習慣に基く予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理するステップは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引き付けるテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理するステップを含む、請求項23に記載の方法。
〔請求項25〕 一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付けるテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理するステップは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付け、かつ一般母集団の代表的標本によって示されるよりも高い割合の他の人口統計特色を示す視聴者を引付ける他のテレビ番組との最小限の人口統計特色相関を示すテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理するステップをさらに含む、請求項24に記載の方法。
〔請求項26〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する視聴者特徴情報を発展させるステップは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する人口統計情報を発展させるステップを含む、請求項1に記載の方法。
〔請求項27〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する人口統計情報を発展させるステップは、
一般母集団の代表的標本の視聴習慣に基く予測モデルに従って各視聴者の嗜好を示す情報を処理して各視聴者に対する人口統計情報を発展させるステップを含む、請求項26に記載の方法。
〔請求項28〕 一般母集団の代表的標本の視聴習慣に基く予測モデルに従って各視聴者の嗜好を示す情報を処理するステップは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付けるテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者の嗜好を示す情報を処理するステップを含む、請求項27に記載の方法。
〔請求項29〕 一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付けるテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者の嗜好を示す情報を処理するステップは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付け、かつ一般母集団の代表的標本によって示されるよりも高い割合の他の人口統計特色を示す視聴者を引付ける他のテレビ番組との最小限の人口統計特色相関を示すテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者の嗜好を示す情報を処理するステップをさらに含む、請求項28に記載の方法。
〔請求項30〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する人口統計情報を発展させるステップは、
視聴者人口統計情報に従って各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップをさらに含む、請求項26に記載の方法。
〔請求項31〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する複数のテレビ番組視聴嗜好プロファイルを発展させるステップをさらに含む、請求項17または30に記載の方法。
〔請求項32〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する複数のテレビ番組視聴嗜好プロファイルを発展させるステップは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する複数のテレビ番組視聴嗜好プロファイルを発展させるステップを含み、各プロファイルは異なる時間帯、曜日、または季節における視聴者のテレビ番組視聴嗜好を記述する、請求項31に記載の方法。
〔請求項33〕 複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるステップは、
同じテレビ機器にアクセスする複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する複数のテレビ番組視聴嗜好プロファイルを発展させるステップをさらに含む、請求項17または30に記載の方法。
〔請求項34〕 ビデオ番組編成セグメントの集合を構成するステップは、
同じテレビ機器にアクセスする視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者の特徴情報に従って視聴者に対する線形配送のための見掛け上線形の番組を生成するステップを含む、請求項33に記載の方法。
〔請求項35〕 各視聴者に対するビデオ番組編成セグメントの集合を構成するステップは、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者のテレビ番組視聴嗜好プロファイルに従って録画するステップを含む、請求項17または30に記載の方法。
〔請求項36〕 ビデオ番組編成セグメントの集合を構成するステップは、
広告、娯楽、ニュース、天気、金融、スポーツ、教育、および買物番組編成を含むビデオ番組編成セグメントの群から選択されるビデオ番組編成セグメントの集合を構成するステップを含む、請求項1に記載の方法。
〔請求項37〕 ビデオ番組編成セグメントの集合を構成するステップは、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者特徴情報に従って録画するステップをさらに含む、請求項36に記載の方法。
〔請求項38〕 ビデオ番組編成セグメントの集合を構成するステップは、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者特徴情報に従って少なくとも1つの専用チャンネルに視聴者に対する線形配送のための見掛け上線形の番組を生成するステップをさらに含む、請求項36に記載の方法。
〔請求項39〕 ビデオ番組編成セグメントの集合を構成するステップは、
ユーザにビデオ番組編成セグメントの集合のリストを提供してユーザがそこから選択するようにするステップをさらに含む、請求項36に記載の方法。
〔請求項40〕 ビデオ番組編成セグメントの集合を構成するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップをさらに含み、前記番組は視聴者特徴情報に従ってカスタマイズされたコンテンツを示す、請求項1に記載の方法。
〔請求項41〕 ビデオ番組編成セグメントの集合を構成するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップをさらに含み、前記番組は視聴者特徴情報にターゲット決めされたコンテンツを示す、請求項1に記載の方法。
〔請求項42〕 1つまたはそれ以上のビデオ番組編成セグメントを選択するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップを含み、前記番組はビデオ番組編成セグメントのプロバイダによって視聴者特徴情報にターゲット決めされたコンテンツを示す、請求項41に記載の方法。
〔請求項43〕 ビデオ番組編成セグメントの集合を構成するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップをさらに含み、前記番組は視聴者テレビ番組視聴嗜好プロファイルに従ってカスタマイズされたコンテンツを示す、請求項17に記載の方法。
〔請求項44〕 ビデオ番組編成セグメントの集合を構成するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップをさらに含み、前記番組は視聴者テレビ番組視聴嗜好プロファイルにターゲット決めされたコンテンツを示す、請求項17に記載の方法。
〔請求項45〕 1つまたはそれ以上のビデオ番組編成セグメントを選択するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップを含み、前記番組はビデオ番組編成セグメントのプロバイダによって視聴者テレビ番組視聴嗜好プロファイルにターゲット決めされたコンテンツを示す、請求項44に記載の方法。
〔請求項46〕 1つまたはそれ以上のビデオ番組編成セグメントを選択するステップは、
複数の利用可能な広告ビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップを含み、前記番組は広告ビデオ番組編成セグメントのプロバイダによって視聴者テレビ番組視聴嗜好プロファイルにターゲット決めされた広告コンテンツを示す、請求項45に記載の方法。
〔請求項47〕 ビデオ番組編成セグメントの集合を構成するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップをさらに含み、前記番組は視聴者人口統計情報に従ってカスタマイズされたコンテンツを示す、請求項26に記載の方法。
〔請求項48〕 ビデオ番組編成セグメントの集合を構成するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップをさらに含み、前記番組は視聴者人口統計情報にターゲット決めされたコンテンツを示す、請求項26に記載の方法。
〔請求項49〕 1つまたはそれ以上のビデオ番組編成セグメントを選択するステップは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップを含み、前記番組はビデオ番組編成セグメントのプロバイダによって視聴者人口統計情報にターゲット決めされたコンテンツを示す、請求項48に記載の方法。
〔請求項50〕 1つまたはそれ以上のビデオ番組編成セグメントを選択するステップは、
複数の利用可能な広告ビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するステップを含み、前記番組は広告ビデオ番組編成セグメントのプロバイダによって視聴者人口統計情報にターゲット決めされた広告コンテンツを示す、請求項49に記載の方法。
〔請求項51〕 ビデオ番組編成セグメントの集合を構成するステップは、
広告、娯楽、ニュース、天気、金融、スポーツ、教育、および買物番組編成を含むビデオ番組編成セグメントの群から選択されるビデオ番組編成セグメントの集合を構成するステップを含む、請求項40、41、43または47のいずれかに記載の方法。
〔請求項52〕 複数の個別の視聴者の各々にカスタマイズされた線形ビデオ番組編成を配送するためのシステムであって、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する視聴者特徴情報を発展させるためのプロセッサと、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者特徴情報に従って視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマとを含む、システム。
〔請求項53〕 前記プログラマは、
ビデオセグメントの放送と同時に視聴者に対する線形配送のための少なくとも1つの放送ビデオ番組編成セグメントを選択して見掛け上線形の番組を生成するためのプログラマをさらに含む、請求項52に記載のシステム。
〔請求項54〕 前記プログラマは、
視聴者に対する線形配送のために記憶媒体に記憶される少なくとも1つのビデオ番組編成セグメントを選択して見掛け上線形の番組を生成するためのプログラマをさらに含む、請求項52に記載のシステム。
〔請求項55〕 前記プロセッサは、
複数の視聴者の各々のテレビ番組視聴嗜好を示す情報を処理するためのプロセッサを含む、請求項52に記載のシステム。
〔請求項56〕 前記プロセッサは、
複数の視聴者の各々が見るテレビ番組を示す情報を処理するためのプロセッサを含む、請求項55に記載のシステム。
〔請求項57〕 前記プロセッサは、
複数の視聴者の各々によって録画されるテレビ番組を示す情報を処理するためのプロセッサを含む、請求項55に記載のシステム。
〔請求項58〕 前記プロセッサは、
複数の視聴者の各々が見ないテレビ番組を示す情報を処理するためのプロセッサを含む、請求項55に記載のシステム。
〔請求項59〕 前記プロセッサは、
複数の視聴者の各々によって要求されるテレビ番組ガイド情報を示す情報を処理するためのプロセッサを含む、請求項55に記載のシステム。
〔請求項60〕 前記プロセッサは、
複数の視聴者の各々によって要求されないテレビ番組ガイド情報を示す情報を処理するためのプロセッサを含む、請求項55に記載のシステム。
〔請求項61〕 前記プロセッサは、
電子番組ガイド情報を処理するためのプロセッサを含む、請求項56から60のいずれかに記載のシステム。
〔請求項62〕 前記プロセッサは、
問合せに応じて各視聴者から与えられる複数の視聴者の各々の嗜好を示す情報を処理するためのプロセッサを含む、請求項52に記載のシステム。
〔請求項63〕 前記プロセッサは、
複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するためのプロセッサを含む、請求項52に記載のシステム。
〔請求項64〕 前記プロセッサは、
複数の視聴者の各々の音楽の嗜好を示す情報を処理するためのプロセッサを含む、請求項63に記載のシステム。
〔請求項65〕 前記プロセッサは、
複数の視聴者の各々の読書の嗜好を示す情報を処理するためのプロセッサを含む、請求項63に記載のシステム。
〔請求項66〕 前記プロセッサは、
複数の視聴者の各々の買物の嗜好を示す情報を処理するためのプロセッサを含む、請求項63に記載のシステム。
〔請求項67〕 前記プロセッサは、
オンライン音楽クラブ、オンライン本クラブ、オンライン特別な趣味のクラブ、および組織、ならびにオンライン小売業者および貿易業者を含むソースの群から取得される、複数の視聴者の各々のテレビ番組視聴嗜好以外の嗜好を示す情報を処理するためのプロセッサを含む、請求項63に記載のシステム。
〔請求項68〕 前記プロセッサは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるためのプロセッサを含む、請求項52、55、62または63のいずれかに記載のシステム。
〔請求項69〕 前記プロセッサは、
一般母集団の代表的標本の視聴習慣に基く予測モデルに従って複数の視聴者の各々の嗜好を示す情報を処理し、各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるためのプロセッサを含む、請求項68に記載のシステム。
〔請求項70〕 前記プロセッサは、
予測モデルのパラメータに対する最大事後確率値を計算して各視聴者に対するテレビ番組視聴嗜好を予測するためのベイズネットワークをさらに含む、請求項69に記載のシステム。
〔請求項71〕 前記プロセッサは、
複数の視聴者の各々の嗜好を示す情報を処理することによって各視聴者の隠れた特色を演繹するためのプロセッサを含む、請求項68に記載のシステム。
〔請求項72〕 前記プロセッサは、
複数の視聴者の各々の嗜好を示す情報を処理することによって各視聴者の関連する特色を演繹するためのプロセッサを含む、請求項68に記載のシステム。
〔請求項73〕 各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理して各視聴者に対する人口統計情報を発展させるためのプロセッサをさらに含む、請求項68に記載のシステム。
〔請求項74〕 前記プロセッサは、
一般母集団の代表的標本の視聴習慣に基く予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理して各視聴者に対する人口統計情報を発展させるためのプロセッサを含む、請求項73に記載のシステム。
〔請求項75〕 前記プロセッサは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付けるテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理するためのプロセッサを含む、請求項74に記載のシステム。
〔請求項76〕 前記プロセッサは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付け、かつ一般母集団の代表的標本によって示されるよりも高い割合の他の人口統計特色を示す視聴者を引付ける他のテレビ番組との最小限の人口統計特色相関を示すテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者に対して発展されたテレビ番組視聴嗜好プロファイルを処理するためのプロセッサを含む、請求項75に記載のシステム。
〔請求項77〕 前記プロセッサは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する人口統計情報を発展させるためのプロセッサを含む、請求項52に記載のシステム。
〔請求項78〕 前記プロセッサは、
一般母集団の代表的標本の視聴習慣に基く予測モデルに従って各視聴者の嗜好を示す情報を処理して各視聴者に対する人口統計情報を発展させるためのプロセッサを含む、請求項77に記載のシステム。
〔請求項79〕 前記プロセッサは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付けるテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者の嗜好を示す情報を処理するためのプロセッサを含む、請求項78に記載のシステム。
〔請求項80〕 前記プロセッサは、
一般母集団の代表的標本によって示されるよりも高い割合の人口統計特色を示す視聴者を引付け、かつ一般母集団の代表的標本によって示されるよりも高い割合の他の人口統計特色を示す視聴者を引付ける他のテレビ番組との最小限の人口統計特色相関を示すテレビ番組に対する視聴者嗜好に基く視聴者の各人口統計特色を予測する予測モデルに従って各視聴者の嗜好を示す情報を処理するためのプロセッサを含む、請求項79に記載のシステム。
〔請求項81〕 前記プロセッサは、
視聴者人口統計情報に従って各視聴者に対するテレビ番組視聴嗜好プロファイルを発展させるためのプロセッサを含む、請求項77に記載のシステム。
〔請求項82〕 前記プロセッサは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する複数のテレビ番組視聴嗜好プロファイルを発展させるためのプロセッサを含む、請求項68または81に記載のシステム。
〔請求項83〕 前記プロセッサは、
複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する複数のテレビ番組視聴嗜好プロファイルを発展させるためのプロセッサを含み、各プロファイルは異なる時間帯、曜日、または季節における視聴者のテレビ番組視聴嗜好を記述する、請求項82に記載のシステム。
〔請求項84〕 前記プロセッサは、
同じテレビ機器にアクセスする複数の視聴者の各々の嗜好を示す情報を処理して各視聴者に対する複数のテレビ番組視聴嗜好プロファイルを発展させるためのプロセッサを含む、請求項68または81に記載のシステム。
〔請求項85〕 前記プログラマは、
同じテレビ機器にアクセスする視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者の特徴情報に従って視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含む、請求項84に記載のシステム。
〔請求項86〕 前記プログラマは、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者のテレビ番組視聴嗜好プロファイルに従って録画するためのプログラマを含む、請求項68または81に記載のシステム。
〔請求項87〕 前記プログラマは、
広告、娯楽、ニュース、天気、金融、スポーツ、教育、および買物番組編成を含むビデオ番組編成セグメントの群から選択されるビデオ番組編成セグメントの集合を構成するためのプログラマを含む、請求項52に記載のシステム。
〔請求項88〕 前記プログラマは、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者特徴情報に従って録画するためのプログラマを含む、請求項87に記載のシステム。
〔請求項89〕 前記プログラマは、
各視聴者に対するビデオ番組編成セグメントの集合を構成し、前記ビデオ番組編成セグメントの少なくとも1つは複数の利用可能なビデオ番組編成セグメントから選択され、視聴者特徴情報に従って少なくとも1つの専用チャンネルに視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含む、請求項87に記載のシステム。
〔請求項90〕 前記プログラマは、
ユーザにビデオ番組編成セグメントの集合のリストを提供してユーザがそこから選択するようにするためのプログラマを含む、請求項87に記載のシステム。
〔請求項91〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は視聴者特徴情報に従ってカスタマイズされたコンテンツを示す、請求項52に記載のシステム。
〔請求項92〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は視聴者特徴情報にターゲット決めされたコンテンツを示す、請求項52に記載のシステム。
〔請求項93〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組はビデオ番組編成セグメントのプロバイダによって視聴者特徴情報にターゲット決めされたコンテンツを示す、請求項92に記載のシステム。
〔請求項94〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は視聴者テレビ番組視聴嗜好プロファイルに従ってカスタマイズされたコンテンツを示す、請求項68に記載のシステム。
〔請求項95〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は視聴者テレビ番組視聴嗜好プロファイルにターゲット決めされたコンテンツを示す、請求項68に記載のシステム。
〔請求項96〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組はビデオ番組編成セグメントのプロバイダによって視聴者テレビ番組視聴嗜好プロファイルにターゲット決めされたコンテンツを示す、請求項95に記載のシステム。
〔請求項97〕 前記プログラマは、
複数の利用可能な広告ビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は広告ビデオ番組編成セグメントのプロバイダによって視聴者テレビ番組視聴嗜好プロファイルにターゲット決めされた広告コンテンツを示す、請求項96に記載のシステム。
〔請求項98〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は視聴者人口統計情報に従ってカスタマイズされたコンテンツを示す、請求項77に記載のシステム。
〔請求項99〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は視聴者人口統計情報にターゲット決めされたコンテンツを示す、請求項77に記載のシステム。
〔請求項100〕 前記プログラマは、
複数の利用可能なビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組はビデオ番組編成セグメントのプロバイダによって視聴者人口統計情報にターゲット決めされたコンテンツを示す、請求項99に記載のシステム。
〔請求項101〕 前記プログラマは、
複数の利用可能な広告ビデオ番組編成セグメントから1つまたはそれ以上のビデオ番組編成セグメントを選択して視聴者に対する線形配送のための見掛け上線形の番組を生成するためのプログラマを含み、前記番組は広告ビデオ番組編成セグメントのプロバイダによって視聴者人口統計情報にターゲット決めされた広告コンテンツを示す、請求項100に記載のシステム。
〔請求項102〕 前記プログラマは、
広告、娯楽、ニュース、天気、金融、スポーツ、教育、および買物番組編成を含むビデオ番組編成セグメントの群から選択されるビデオ番組編成セグメントの集合を構成するためのプログラマを含む、請求項91、92、94または98のいずれかに記載のシステム。
The claims at the time of filing the original application (Japanese Patent Application No. 2001-52064) are described below.
A method for delivering a customized linear video programming to each of a plurality of individual viewers comprising:
Processing information indicating the preferences of each of a plurality of viewers to develop viewer feature information for each viewer;
Constituting a set of video programming segments for each viewer, at least one of the video programming segments being selected from a plurality of available video programming segments for linear delivery to the viewer according to viewer feature information Generating an apparently linear program.
[Claim 2] The step of configuring a set of video programming segments includes:
The method of claim 1, further comprising generating an apparently linear program by selecting at least one broadcast video programming segment for linear delivery to a viewer simultaneously with the broadcast of the video segment.
[Claim 3] The step of configuring a set of video programming segments includes:
The method of claim 1, further comprising selecting at least one video programming segment stored on the storage medium for linear delivery to a viewer to generate an apparently linear program.
[Claim 4] The step of processing information indicating each preference of a plurality of viewers includes:
The method of claim 1, comprising processing information indicating a television program viewing preference of each of a plurality of viewers.
[Claim 5] The step of processing information indicating each television program viewing preference of a plurality of viewers includes:
5. The method of claim 4, comprising processing information indicative of a television program that each of a plurality of viewers watches.
[Claim 6] The step of processing information indicating each television program viewing preference of a plurality of viewers includes:
5. The method of claim 4, comprising processing information indicative of a television program recorded by each of a plurality of viewers.
[Claim 7] The step of processing information indicating each television program viewing preference of a plurality of viewers includes:
5. The method of claim 4, comprising processing information indicative of a television program that each of the plurality of viewers does not watch.
[Claim 8] The step of processing information indicating each TV program viewing preference of a plurality of viewers includes:
5. The method of claim 4, comprising processing information indicating television program guide information requested by each of a plurality of viewers.
[Claim 9] The step of processing information indicating each television program viewing preference of a plurality of viewers includes:
5. The method of claim 4, comprising processing information indicative of television program guide information not required by each of a plurality of viewers.
[Claim 10] The step of processing the information includes:
10. A method according to any of claims 5 to 9, comprising the step of processing electronic program guide information.
[Claim 11] The step of processing information indicating each preference of a plurality of viewers includes:
The method of claim 1, comprising processing information indicative of a preference of each of a plurality of viewers provided by each viewer in response to an inquiry.
[Claim 12] The step of processing information indicating each TV program viewing preference of a plurality of viewers includes:
The method of claim 1, comprising processing information indicative of preferences other than television program viewing preferences of each of a plurality of viewers.
[Claim 13] The step of processing information indicating a preference other than a television program viewing preference of each of a plurality of viewers includes:
The method of claim 12, comprising processing information indicative of a music preference for each of a plurality of viewers.
[Claim 14] The step of processing information indicating a preference other than the television program viewing preference of each of a plurality of viewers includes:
The method of claim 12, comprising processing information indicating a reading preference of each of a plurality of viewers.
[Claim 15] The step of processing information indicating a preference other than the television program viewing preference of each of a plurality of viewers includes:
The method of claim 12, comprising processing information indicative of shopping preferences for each of a plurality of viewers.
[Claim 16] The step of processing information indicating a preference other than the television program viewing preference of each of a plurality of viewers includes:
Demonstrate non-viewing preferences of each of multiple viewers, taken from a group of sources including online music clubs, online book clubs, online hobby clubs and organizations, and online retailers and traders The method of claim 12, comprising processing the information.
[Claim 17] The step of processing information indicating the preferences of each of a plurality of viewers to develop viewer characteristic information for each viewer comprises:
13. A method according to any of claims 1, 4, 11 or 12, comprising the step of processing information indicative of the preferences of each of a plurality of viewers to develop a television program viewing preference profile for each viewer.
[Claim 18] The step of processing information indicating each preference of a plurality of viewers to develop a television program viewing preference profile for each viewer comprises:
18. Processing information indicating each preference of a plurality of viewers according to a prediction model based on a viewing habit of a representative sample of the general population, and developing a television program viewing preference profile for each viewer. The method described.
19. Processing the television program viewing preference profile developed for each viewer according to a probability model based on the viewing habits of a sample of the general population,
The method of claim 18, comprising calculating a maximum posterior probability value for the parameters of the prediction model by constructing a Bayesian network and predicting television program viewing preferences for each viewer.
[Claim 20] The step of processing information indicating each preference of a plurality of viewers to develop a television program viewing preference profile for each viewer comprises:
The method of claim 17, comprising deducing each viewer's hidden features by processing information indicative of the preferences of each of the plurality of viewers.
[Claim 21] The step of processing information indicating each preference of a plurality of viewers to develop a television program viewing preference profile for each viewer comprises:
The method of claim 17, comprising deducting each viewer's associated features by processing information indicative of the preferences of each of the plurality of viewers.
22. The method of claim 17, further comprising processing a television program viewing preference profile developed for each viewer to develop demographic information for each viewer.
23. The step of developing a television program viewing preference profile developed for each viewer to develop demographic information for each viewer comprises:
23. Processing a television program viewing preference profile developed for each viewer according to a prediction model based on viewing habits of representative samples of the general population to develop demographic information for each viewer. The method described in 1.
24. Processing the television program viewing preference profile developed for each viewer according to a prediction model based on viewing habits of representative samples of the general population,
For each viewer according to a predictive model that predicts each demographic feature of the viewer based on the viewer's preference for a television program that attracts viewers that show a higher proportion of demographic features than shown by a representative sample of the general population 24. The method of claim 23, comprising processing a developed television program viewing preference profile.
25. A predictive model for predicting each demographic feature of a viewer based on viewer preference for a television program that attracts viewers that exhibit a higher proportion of demographic features than shown by a representative sample of the general population Processing the TV program viewing preference profile developed for each viewer according to:
Audiences that attract viewers with a higher percentage of demographic features than shown by a representative sample of the general population and that show a higher percentage of other demographic features than shown by a representative sample of the general population TV developed for each viewer according to a predictive model that predicts each demographic feature of the viewer based on the viewer's preference for television programs that exhibit minimal demographic feature correlation with other television programs that attract viewers 25. The method of claim 24, further comprising processing a program viewing preference profile.
[Claim 26] The step of processing information indicating the preferences of each of a plurality of viewers to develop viewer characteristic information for each viewer includes:
The method of claim 1, comprising processing information indicative of the preferences of each of a plurality of viewers to develop demographic information for each viewer.
[Claim 27] The step of processing information indicating the preferences of each of a plurality of viewers to develop demographic information for each viewer comprises:
27. The method of claim 26, comprising: processing information indicative of each viewer preference according to a prediction model based on viewing habits of a representative sample of the general population to develop demographic information for each viewer.
[28] The step of processing information indicating each viewer's preference according to a prediction model based on a viewing habit of a representative sample of the general population,
Each viewer's 28. The method of claim 27, comprising processing information indicative of preferences.
29. A predictive model for predicting each demographic feature of a viewer based on viewer preference for a television program that attracts viewers that exhibit a higher proportion of demographic features than shown by a representative sample of the general population Processing the information indicating the preferences of each viewer according to
Audiences that attract viewers with a higher percentage of demographic features than shown by a representative sample of the general population and that show a higher percentage of other demographic features than shown by a representative sample of the general population Process information indicating each viewer's preference according to a predictive model that predicts each demographic feature of the viewer based on the viewer's preference for television programs that exhibit minimal demographic feature correlation with other TV programs that attract viewers 30. The method of claim 28, further comprising:
[30] The step of developing information about each preference of a plurality of viewers to develop demographic information for each viewer comprises:
27. The method of claim 26, further comprising developing a television program viewing preference profile for each viewer according to viewer demographic information.
[Claim 31] The step of processing information indicating each preference of a plurality of viewers to develop a television program viewing preference profile for each viewer comprises:
31. A method according to claim 17 or 30, further comprising the step of processing information indicative of each preference of a plurality of viewers to develop a plurality of television program viewing preference profiles for each viewer.
[Claim 32] The step of processing information indicating each preference of a plurality of viewers to develop a plurality of television program viewing preference profiles for each viewer comprises:
Processing information indicating respective preferences of a plurality of viewers to develop a plurality of television program viewing preference profiles for each viewer, each profile being a viewer's television program in a different time zone, day of the week, or season 32. The method of claim 31, wherein the viewing preference is described.
[Claim 33] The step of processing information indicating each preference of a plurality of viewers to develop a television program viewing preference profile for each viewer comprises:
31. A method according to claim 17 or 30, further comprising the step of processing information indicative of each preference of a plurality of viewers accessing the same television device to develop a plurality of television program viewing preference profiles for each viewer.
34. The step of constructing a set of video programming segments comprises:
Configuring a set of video programming segments for viewers accessing the same television equipment, wherein at least one of the video programming segments is selected from a plurality of available video programming segments, and the viewers according to viewer feature information 34. The method of claim 33, comprising generating an apparently linear program for linear delivery to.
35. Constructing a set of video programming segments for each viewer comprises:
Configuring a set of video programming segments for each viewer, wherein at least one of the video programming segments is selected from a plurality of available video programming segments and recorded according to a viewer's television program viewing preference profile. 31. A method according to claim 17 or 30, comprising.
36. The step of constructing a set of video programming segments comprises:
The method of claim 1, comprising configuring a set of video programming segments selected from a group of video programming segments including advertising, entertainment, news, weather, finance, sports, education, and shopping programming. .
37. The step of configuring a set of video programming segments comprises:
Forming a set of video programming segments for each viewer, wherein at least one of the video programming segments is selected from a plurality of available video programming segments and further comprising recording according to viewer characteristic information. Item 37. The method according to Item 36.
38. The step of configuring a set of video programming segments comprises:
Constitutes a set of video programming segments for each viewer, at least one of the video programming segments being selected from a plurality of available video programming segments and viewing the viewer into at least one dedicated channel according to the viewer characteristic information 38. The method of claim 36, further comprising generating an apparently linear program for linear delivery to.
39. The step of configuring a set of video programming segments comprises:
38. The method of claim 36, further comprising providing the user with a list of sets of video programming segments for the user to select from.
40. The step of configuring a set of video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to the viewer, the program comprising the viewer The method of claim 1, wherein the content is customized according to feature information.
41. The step of constructing a set of video programming segments includes:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to the viewer, the program comprising the viewer The method of claim 1, wherein the targeted information is indicated in the feature information.
42. Selecting one or more video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program comprising video programming 42. The method of claim 41, wherein the content is targeted to audience feature information by a segment provider.
43. The step of configuring a set of video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to the viewer, the program comprising the viewer The method of claim 17, wherein the content is customized according to a television program viewing preference profile.
44. The step of configuring a set of video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to the viewer, the program comprising the viewer The method of claim 17, wherein the content is targeted to a television program viewing preference profile.
45. The step of selecting one or more video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program comprising video programming 45. The method of claim 44, showing content targeted to a viewer television program viewing preference profile by a segment provider.
46. The step of selecting one or more video programming segments comprises:
Selecting one or more video programming segments from a plurality of available advertising video programming segments to generate an apparently linear program for linear delivery to a viewer, said program comprising advertising video 46. The method of claim 45, wherein the advertising content is targeted to a viewer television program viewing preference profile by a programming segment provider.
47. The step of constructing a set of video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to the viewer, the program comprising the viewer 27. The method of claim 26, showing content customized according to demographic information.
48. The step of configuring a set of video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to the viewer, the program comprising the viewer 27. The method of claim 26, wherein the targeted content is shown in demographic information.
49. The step of selecting one or more video programming segments comprises:
Selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program comprising video programming 49. The method of claim 48, wherein content targeted to audience demographic information by a segment provider is shown.
50. The step of selecting one or more video programming segments comprises:
Selecting one or more video programming segments from a plurality of available advertising video programming segments to generate an apparently linear program for linear delivery to a viewer, said program comprising advertising video 50. The method of claim 49, wherein the advertising content is targeted to audience demographic information by a programming segment provider.
[Claim 51] The step of configuring a set of video programming segments includes:
44. The method comprising configuring a set of video programming segments selected from the group of video programming segments including advertising, entertainment, news, weather, finance, sports, education, and shopping programming. 48. The method according to any one of 47.
52. A system for delivering customized linear video programming to each of a plurality of individual viewers comprising:
A processor for processing information indicating the preferences of each of a plurality of viewers to develop viewer feature information for each viewer;
Constituting a set of video programming segments for each viewer, at least one of the video programming segments being selected from a plurality of available video programming segments for linear delivery to the viewer according to viewer feature information A system including a programmer for generating an apparently linear program.
[Claim 53] The programmer is:
53. The system of claim 52, further comprising a programmer for selecting at least one broadcast video programming segment for linear delivery to a viewer concurrently with the broadcast of the video segment to generate an apparently linear program.
54. The programmer is:
53. The system of claim 52, further comprising a programmer for selecting at least one video programming segment stored on the storage medium for linear delivery to a viewer to generate an apparently linear program.
(55) The processor comprises:
53. The system of claim 52, including a processor for processing information indicative of each television program viewing preference of a plurality of viewers.
(56) The processor comprises:
56. The system of claim 55, including a processor for processing information indicative of a television program that each of a plurality of viewers watch.
(57) The processor comprises:
56. The system of claim 55, including a processor for processing information indicative of a television program recorded by each of a plurality of viewers.
(58) The processor comprises:
56. The system of claim 55, including a processor for processing information indicative of television programs that each of the plurality of viewers does not watch.
[Claim 59] The processor comprises:
56. The system of claim 55, including a processor for processing information indicative of television program guide information requested by each of a plurality of viewers.
60. The processor comprises:
56. The system of claim 55, including a processor for processing information indicative of television program guide information not required by each of the plurality of viewers.
(61) The processor comprises:
61. A system according to any of claims 56 to 60 including a processor for processing electronic program guide information.
(62) The processor comprises:
53. The system of claim 52, including a processor for processing information indicative of each of a plurality of viewer preferences provided by each viewer in response to an inquiry.
(63) The processor comprises:
53. The system of claim 52, including a processor for processing information indicative of preferences other than television program viewing preferences of each of a plurality of viewers.
[Claim 64] The processor comprises:
64. The system of claim 63, comprising a processor for processing information indicative of a music preference for each of a plurality of viewers.
(65) The processor comprises:
64. The system of claim 63, comprising a processor for processing information indicative of the reading preference of each of a plurality of viewers.
[Claim 66] The processor includes:
64. The system of claim 63, comprising a processor for processing information indicative of each shopping preference of a plurality of viewers.
[67] The processor comprises:
A preference other than the viewing preference of each of multiple viewers obtained from online music clubs, online book clubs, online special hobby clubs and organizations, and a group of sources including online retailers and traders. 64. The system of claim 63, comprising a processor for processing the indicated information.
68. The processor,
64. A system according to any of claims 52, 55, 62 or 63, comprising a processor for processing information indicative of each preference of a plurality of viewers to develop a television program viewing preference profile for each viewer.
69. The processor comprises:
A processor for processing information indicating a preference of each of a plurality of viewers according to a prediction model based on a viewing habit of a representative sample of the general population, and developing a television program viewing preference profile for each viewer. 68. The system according to 68.
[Claim 70] The processor comprises:
70. The system of claim 69, further comprising a Bayesian network for calculating a maximum posterior probability value for a parameter of the prediction model to predict a television program viewing preference for each viewer.
71. The processor comprises:
69. The system of claim 68, comprising a processor for deducing each viewer's hidden features by processing information indicative of the preferences of each of the plurality of viewers.
72. The processor comprises:
69. The system of claim 68, comprising a processor for deducing each viewer's associated features by processing information indicative of the preferences of each of the plurality of viewers.
73. The system of claim 68, further comprising a processor for processing the television program viewing preference profile developed for each viewer to develop demographic information for each viewer.
74. The processor comprises:
Including a processor for processing a television program viewing preference profile developed for each viewer according to a prediction model based on viewing habits of a representative sample of the general population to develop demographic information for each viewer Item 74. The system according to Item 73.
[75] The processor comprises:
For each viewer according to a predictive model that predicts each demographic feature of the viewer based on the viewer's preference for a television program that attracts viewers with a higher proportion of demographic features than shown by a representative sample of the general population 75. The system of claim 74, comprising a processor for processing a developed television program viewing preference profile.
[76] The processor comprises:
Audiences that attract viewers with a higher percentage of demographic features than shown by a representative sample of the general population and that show a higher percentage of other demographic features than shown by a representative sample of the general population TV developed for each viewer according to a predictive model that predicts each demographic feature of the viewer based on the viewer's preference for television programs that exhibit minimal demographic feature correlation with other television programs that attract viewers 76. The system of claim 75, including a processor for processing a program viewing preference profile.
[Claim 77] The processor comprises:
53. The system of claim 52, including a processor for processing information indicative of the preferences of each of a plurality of viewers to develop demographic information for each viewer.
78. The processor comprises:
78. The system of claim 77, comprising a processor for processing information indicative of each viewer's preferences according to a prediction model based on viewing habits of a representative sample of the general population to develop demographic information for each viewer. .
(79) The processor comprises:
Each viewer's 79. The system of claim 78, including a processor for processing information indicative of preferences.
80. The processor comprises:
Audiences that attract viewers with a higher percentage of demographic features than shown by a representative sample of the general population and that show a higher percentage of other demographic features than shown by a representative sample of the general population Process information indicating each viewer's preference according to a predictive model that predicts each demographic feature of the viewer based on the viewer's preference for television programs that exhibit minimal demographic feature correlation with other TV programs that attract viewers 80. The system of claim 79, comprising a processor for performing.
81. The processor comprises:
78. The system of claim 77, including a processor for developing a television program viewing preference profile for each viewer according to viewer demographic information.
82. The processor comprises:
82. A system according to claim 68 or 81, comprising a processor for processing information indicative of each preference of a plurality of viewers to develop a plurality of television program viewing preference profiles for each viewer.
(Claim 83) The processor comprises:
Including a processor for processing information indicative of each preference of the plurality of viewers to develop a plurality of television program viewing preference profiles for each viewer, each profile of the viewer at a different time zone, day of the week, or season The system of claim 82, wherein the system describes television program viewing preferences.
(84) The processor comprises:
82. A system according to claim 68 or 81, comprising a processor for processing information indicative of each preference of a plurality of viewers accessing the same television equipment to develop a plurality of television program viewing preference profiles for each viewer. .
(85) The programmer:
Configuring a set of video programming segments for viewers accessing the same television equipment, wherein at least one of the video programming segments is selected from a plurality of available video programming segments, and the viewers according to viewer feature information 85. The system of claim 84, comprising a programmer for generating an apparently linear program for linear delivery to.
(86) The programmer is:
Configuring a set of video programming segments for each viewer, wherein at least one of the video programming segments is selected from a plurality of available video programming segments and for recording according to a viewer's television program viewing preference profile 82. A system according to claim 68 or 81, comprising a programmer.
(87) The programmer is:
53. A programmer for configuring a set of video programming segments selected from a group of video programming segments including advertising, entertainment, news, weather, finance, sports, education, and shopping programming. System.
88. The programmer,
Comprising a set of video programming segments for each viewer, wherein at least one of the video programming segments is selected from a plurality of available video programming segments and includes a programmer for recording according to the viewer characteristic information; 90. The system of claim 87.
(89) The programmer:
Constitutes a set of video programming segments for each viewer, at least one of the video programming segments being selected from a plurality of available video programming segments and viewing the viewer into at least one dedicated channel according to the viewer characteristic information 90. The system of claim 87, comprising a programmer for generating an apparently linear program for linear delivery to.
90. The programmer,
90. The system of claim 87, comprising a programmer for providing the user with a list of sets of video programming segments for the user to select from.
(91) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being viewed 53. The system of claim 52, wherein the system shows content customized according to the person feature information.
(92) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being viewed 53. The system of claim 52, wherein the targeted feature information is indicative of the targeted content.
(93) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being a video 94. The system of claim 92, showing content targeted to audience feature information by a programming segment provider.
(94) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being viewed 69. The system of claim 68, wherein the system shows content customized according to a consumer television program viewing preference profile.
(95) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being viewed 69. The system of claim 68, showing content targeted to a consumer television program viewing preference profile.
(96) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being a video 96. The system of claim 95, showing content targeted to a viewer television program viewing preference profile by a programming segment provider.
(97) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available advertising video programming segments to generate an apparently linear program for linear delivery to a viewer, the program comprising: 99. The system of claim 96, wherein the advertising content is targeted to a viewer television program viewing preference profile by a provider of advertising video programming segments.
(98) The programmer:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being viewed 78. The system of claim 77, showing content customized according to the demographic information.
[Claim 99] The programmer is:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being viewed 78. The system of claim 77, wherein the system shows content targeted for demographic information.
[Claim 100] The programmer is:
A programmer for selecting one or more video programming segments from a plurality of available video programming segments to generate an apparently linear program for linear delivery to a viewer, the program being a video 100. The system of claim 99, showing content targeted to viewer demographic information by a programming segment provider.
[Claim 101] The programmer:
A programmer for selecting one or more video programming segments from a plurality of available advertising video programming segments to generate an apparently linear program for linear delivery to a viewer, the program comprising: 101. The system of claim 100, showing advertising content targeted to audience demographic information by a provider of advertising video programming segments.
(102) The programmer:
93. A programmer for configuring a set of video programming segments selected from a group of video programming segments including advertising, entertainment, news, weather, finance, sports, education, and shopping programming. , 94 or 98.

Claims (4)

複数の個別の視聴者の各々に対して、ビデオ・セグメントの集合からなるカスタマイズされたビデオ番組を配送する方法であって、
第一のビデオ番組ストリームを受信するステップであって、前記第一のビデオ番組ストリームおよび前記他のビデオ番組ストリームの各々は複数のビデオ・セグメントを含み、各ビデオ番組ストリームの少なくとも一つのセグメントについて、複数の選択可能なセグメントを含むセグメント集合が与えられている、ステップと、
前記複数の視聴者の各々の嗜好を示す情報を処理して各前記視聴者に対する視聴者特徴情報を決定するステップと、
複数の選択可能なセグメントを含むセグメント集合が与えられているセグメントについて、各前記視聴者に対する視聴者特徴情報に基づいて特定のセグメントを選択するステップと、
前記第一のビデオ番組ストリームおよび少なくとも一つの他のビデオ番組ストリームからのセグメントを含む、特定の視聴者に対するカスタマイズされたビデオ番組を、前記カスタマイズされたビデオ番組に含まれる各セグメントがその特定の視聴者に対する前記視聴者特徴情報を満たすように形成するステップとを含んでおり、一つのビデオ番組ストリームからのセグメントは他のビデオ番組ストリームからのコンテンツとは異なるコンテンツをもち、前記形成するステップにおいて、結果として得られるカスタマイズされたビデオ番組の長さが前記第一のビデオ番組ストリームの長さと同じである限り、個々のセグメントの長さは考慮されない、
方法。
A method for delivering a customized video program comprising a collection of video segments to each of a plurality of individual viewers, comprising:
Receiving a first video program stream, wherein each of the first video program stream and the other video program stream includes a plurality of video segments, and for at least one segment of each video program stream, A set of segments including a plurality of selectable segments is provided; and
Processing information indicating the preferences of each of the plurality of viewers to determine viewer feature information for each of the viewers;
Selecting a particular segment based on viewer feature information for each of the viewers for a segment provided with a segment set including a plurality of selectable segments;
A customized video program for a particular viewer, including segments from the first video program stream and at least one other video program stream, each segment included in the customized video program having that particular viewing Satisfying the viewer characteristic information for a viewer, wherein segments from one video program stream have content different from content from other video program streams, and in the forming step, As long as the resulting customized video program length is the same as the length of the first video program stream, the length of the individual segments is not taken into account ,
Method.
記憶媒体に記憶される複数のセグメントおよび複数の放送セグメントのうち一方から少なくとも1つのビデオ・セグメントを選択するステップと、選択された前記ビデオ・セグメントをビデオ・シーケンスに挿入して前記カスタマイズされたビデオ番組を生成する、請求項1に記載の方法。 Selecting at least one video segment from one of a plurality of segments and a plurality of broadcast segments stored in a storage medium, and inserting the selected video segment into a video sequence to create the customized video The method of claim 1, wherein the program is generated. 複数の個別の視聴者の各々に対して、ビデオ・セグメントの集合からなるカスタマイズされたビデオ番組を配送するシステムであって、
第一のビデオ番組ストリームおよび該第一のビデオ番組ストリームとは異なる少なくとも一つの他のビデオ番組ストリームを受信する受信機であって、各々のビデオ番組ストリームは複数のビデオ・セグメントを含み、各ビデオ番組ストリームの少なくとも一つのセグメントについて、複数の選択可能なセグメントを含むセグメント集合が与えられている、受信機と、
前記複数の視聴者の各々の嗜好を示す情報を処理して各前記視聴者に対する視聴者特徴情報を決定するプロセッサと、
複数の選択可能なセグメントを含むセグメント集合が与えられているセグメントについて、各前記視聴者に対する視聴者特徴情報に基づいて特定のセグメントを選択する手段と、
前記第一のビデオ番組ストリームおよび少なくとも一つの他のビデオ番組ストリームからのセグメントを含む、特定の視聴者に対するカスタマイズされたビデオ番組を、前記カスタマイズされたビデオ番組に含まれる各セグメントがその特定の視聴者に対する前記視聴者特徴情報を満たすように形成する手段とを有しており、一つのビデオ番組ストリームからのセグメントは他のビデオ番組ストリームからのコンテンツとは異なるコンテンツをもち、前記形成する手段は、結果として得られるカスタマイズされたビデオ番組の長さが前記第一のビデオ番組ストリームの長さと同じである限り、個々のセグメントの長さは考慮しない、システム。
A system for delivering a customized video program comprising a collection of video segments to each of a plurality of individual viewers,
A receiver for receiving a first video program stream and at least one other video program stream different from the first video program stream, wherein each video program stream includes a plurality of video segments, and each video A receiver provided with a segment set including a plurality of selectable segments for at least one segment of a program stream;
A processor that processes information indicating a preference of each of the plurality of viewers to determine viewer feature information for each of the viewers;
Means for selecting a specific segment based on viewer feature information for each of the viewers for a segment provided with a segment set including a plurality of selectable segments;
A customized video program for a particular viewer, including segments from the first video program stream and at least one other video program stream, each segment included in the customized video program having that particular viewing Means for satisfying the viewer characteristic information for a viewer, segments from one video program stream have content different from content from other video program streams, and the means for forming The system does not take into account the length of individual segments as long as the resulting customized video program length is the same as the length of the first video program stream.
記憶媒体に記憶される複数のセグメントおよび複数の放送セグメントのうち一方から少なくとも1つのビデオ番組編成セグメントを選択し、選択された前記ビデオ・セグメントをビデオ・シーケンスに挿入して前記カスタマイズされたビデオ番組を生成する手段をさらに含む、請求項3に記載のシステム。   Selecting at least one video programming segment from one of a plurality of segments and a plurality of broadcast segments stored in a storage medium, and inserting the selected video segment into a video sequence to create the customized video program The system of claim 3 further comprising means for generating.
JP2010208382A 1999-08-31 2010-09-16 Method and apparatus for delivery of targeted video programming Expired - Fee Related JP5591638B2 (en)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US15215399P 1999-08-31 1999-08-31
US60/152,153 1999-08-31
US19554700P 2000-04-07 2000-04-07
US60/195,547 2000-04-07
US20208600P 2000-05-04 2000-05-04
US60/202,086 2000-05-04
US20310400P 2000-05-08 2000-05-08
US60/203,104 2000-05-08

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2001521064A Division JP5068910B2 (en) 1999-08-31 2000-08-31 Method and apparatus for delivery of targeted video programming

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014054015A Division JP6067609B2 (en) 1999-08-31 2014-03-17 Method and apparatus for delivery of targeted video programming

Publications (2)

Publication Number Publication Date
JP2011035917A JP2011035917A (en) 2011-02-17
JP5591638B2 true JP5591638B2 (en) 2014-09-17

Family

ID=27496004

Family Applications (5)

Application Number Title Priority Date Filing Date
JP2001521064A Expired - Fee Related JP5068910B2 (en) 1999-08-31 2000-08-31 Method and apparatus for delivery of targeted video programming
JP2010208382A Expired - Fee Related JP5591638B2 (en) 1999-08-31 2010-09-16 Method and apparatus for delivery of targeted video programming
JP2012021577A Expired - Fee Related JP5475030B2 (en) 1999-08-31 2012-02-03 Method and apparatus for delivery of targeted video programming
JP2013259144A Pending JP2014078995A (en) 1999-08-31 2013-12-16 Method and apparatus for delivery of targeted video programming
JP2014054015A Expired - Fee Related JP6067609B2 (en) 1999-08-31 2014-03-17 Method and apparatus for delivery of targeted video programming

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2001521064A Expired - Fee Related JP5068910B2 (en) 1999-08-31 2000-08-31 Method and apparatus for delivery of targeted video programming

Family Applications After (3)

Application Number Title Priority Date Filing Date
JP2012021577A Expired - Fee Related JP5475030B2 (en) 1999-08-31 2012-02-03 Method and apparatus for delivery of targeted video programming
JP2013259144A Pending JP2014078995A (en) 1999-08-31 2013-12-16 Method and apparatus for delivery of targeted video programming
JP2014054015A Expired - Fee Related JP6067609B2 (en) 1999-08-31 2014-03-17 Method and apparatus for delivery of targeted video programming

Country Status (4)

Country Link
EP (1) EP1230798A1 (en)
JP (5) JP5068910B2 (en)
AU (1) AU6947800A (en)
WO (1) WO2001017250A1 (en)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352984B2 (en) 1998-06-12 2013-01-08 Thomson Licensing System and method for generating and managing user preference information for scheduled and stored television programs
JP5068910B2 (en) * 1999-08-31 2012-11-07 トムソン ライセンシング Method and apparatus for delivery of targeted video programming
JP4665325B2 (en) * 2001-03-28 2011-04-06 ソニー株式会社 Content recording / reproducing apparatus and method, content providing apparatus and method, storage medium, and computer program
US20020144282A1 (en) * 2001-03-29 2002-10-03 Koninklijke Philips Electronics N.V. Personalizing CE equipment configuration at server via web-enabled device
US20020152117A1 (en) * 2001-04-12 2002-10-17 Mike Cristofalo System and method for targeting object oriented audio and video content to users
US7035863B2 (en) * 2001-11-13 2006-04-25 Koninklijke Philips Electronics N.V. Method, system and program product for populating a user profile based on existing user profiles
WO2003065712A1 (en) * 2002-01-30 2003-08-07 Sony Corporation Apparatus, method and program for generating coefficient type data or coefficient data used in image display apparatus, computer-readable medium containing the program
US6772147B2 (en) * 2002-02-26 2004-08-03 Sony Corporation System and method for effectively implementing a personal channel for interactive television
GB2387676A (en) * 2002-04-15 2003-10-22 Agena Ltd A method of recommending television programmes
JP4006628B2 (en) 2002-07-03 2007-11-14 ソニー株式会社 Information processing apparatus, information processing method, recording medium, and program
JP2004056630A (en) 2002-07-23 2004-02-19 Sony Corp Control system, controller and method, recording medium, and program
US20040049788A1 (en) * 2002-09-10 2004-03-11 Canon Kabushiki Kaisha Receiving apparatus, receiving method, and method of predicting audience rating
JPWO2004030352A1 (en) * 2002-09-26 2006-01-26 シャープ株式会社 Data output device for determining appropriate data candidates
JP3885786B2 (en) 2003-09-12 2007-02-28 ソニー株式会社 Information signal processing apparatus and processing method, and program for executing the processing method
CA2594003C (en) * 2005-01-12 2016-04-05 Invidi Technologies Corporation Targeted impression model for broadcast network asset delivery
SG125139A1 (en) * 2005-02-14 2006-09-29 William Mutual A system for managing bandwidth
GB0511774D0 (en) 2005-06-09 2005-07-20 Nds Ltd Extended service information 2 (XSI-2)
US8893179B2 (en) * 2005-09-12 2014-11-18 Qualcomm Incorporated Apparatus and methods for providing and presenting customized channel information
AU2007247996B2 (en) * 2006-05-02 2012-07-12 Invidi Technologies Corporation Fuzzy logic based viewer identification
US7613691B2 (en) 2006-06-21 2009-11-03 Microsoft Corporation Dynamic insertion of supplemental video based on metadata
US7849477B2 (en) 2007-01-30 2010-12-07 Invidi Technologies Corporation Asset targeting system for limited resource environments
US20100037255A1 (en) 2008-08-06 2010-02-11 Patrick Sheehan Third party data matching for targeted advertising
EP2083569A1 (en) * 2008-01-22 2009-07-29 Avaya Inc. Open cable application platform set-top box (STB) personal profiles and communications applications
US8453188B2 (en) 2008-01-22 2013-05-28 Avaya Inc. Open cable application platform set-top box (STB) personal profiles and communications applications
US9215421B2 (en) 2008-03-18 2015-12-15 Avaya Inc. Open cable application platform (OCAP) and set-top box (STB)-based bill notification and payment application
WO2009140691A2 (en) 2008-05-16 2009-11-19 Invidi Technologies Corporation Request for information related to broadcast network content
WO2010017315A2 (en) 2008-08-05 2010-02-11 Invidi Technologies Corporation National insertion of targeted advertisment
US8239903B1 (en) 2008-09-15 2012-08-07 Avaya Inc. Open cable application platform (OCAP), set-top box (STB), next generation service application
FR2940729A1 (en) * 2008-12-29 2010-07-02 Thomson Licensing METHOD FOR GENERATING MULTIMEDIA FILES FOR PACKET TRANSMISSION IN A PAIR-A-PAIR NETWORK
JP5331159B2 (en) * 2011-05-17 2013-10-30 日本電信電話株式会社 Product recommendation method, product recommendation device, and product recommendation program
EP2752793A4 (en) * 2011-08-30 2015-01-21 Toyota Motor Co Ltd Behavior history management system, and behavior history management method
EP2945113A1 (en) * 2014-05-14 2015-11-18 Cisco Technology, Inc. Audience segmentation using machine-learning
JP6212521B2 (en) * 2015-08-25 2017-10-11 カルチュア・コンビニエンス・クラブ株式会社 Apparatus, method, and program for estimating user using content among a plurality of target users
CN106940703B (en) * 2016-01-04 2020-09-11 腾讯科技(北京)有限公司 Pushed information rough selection sorting method and device
US10943177B2 (en) 2017-06-13 2021-03-09 Opentv, Inc. Channel change optimization using probabilistic modeling
US11144956B1 (en) * 2019-02-14 2021-10-12 Amazon Technologies, Inc. Targeted media delivery based on previous consumer interactions
WO2020184122A1 (en) 2019-03-11 2020-09-17 ソニー株式会社 Information processing device and information processing system
US10728443B1 (en) 2019-03-27 2020-07-28 On Time Staffing Inc. Automatic camera angle switching to create combined audiovisual file
US10963841B2 (en) 2019-03-27 2021-03-30 On Time Staffing Inc. Employment candidate empathy scoring system
US10958973B2 (en) 2019-06-04 2021-03-23 International Business Machines Corporation Deriving and identifying view preferences of a user consuming streaming content
CA3155256A1 (en) * 2019-09-23 2021-04-01 Armory, Inc. Methods and systems for continuous asynchronous code deployment
US11127232B2 (en) 2019-11-26 2021-09-21 On Time Staffing Inc. Multi-camera, multi-sensor panel data extraction system and method
JP7272976B2 (en) * 2020-02-07 2023-05-12 Tvs Regza株式会社 Scene information providing system and receiving device
US11023735B1 (en) 2020-04-02 2021-06-01 On Time Staffing, Inc. Automatic versioning of video presentations
US11144882B1 (en) 2020-09-18 2021-10-12 On Time Staffing Inc. Systems and methods for evaluating actions over a computer network and establishing live network connections
US11727040B2 (en) 2021-08-06 2023-08-15 On Time Staffing, Inc. Monitoring third-party forum contributions to improve searching through time-to-live data assignments
US11423071B1 (en) 2021-08-31 2022-08-23 On Time Staffing, Inc. Candidate data ranking method using previously selected candidate data
US11907652B2 (en) 2022-06-02 2024-02-20 On Time Staffing, Inc. User interface and systems for document creation
JP7185091B1 (en) 2022-07-22 2022-12-06 株式会社ビデオリサーチ Stream viewing analysis system, stream viewing analysis method and program

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2152712T3 (en) * 1992-12-09 2001-02-01 Discovery Communicat Inc DISTRIBUTION SYSTEM OF TELEVISION PROGRAMS.
US5463565A (en) * 1993-10-29 1995-10-31 Time Warner Entertainment Co., L.P. Data block format for software carrier and player therefor
US5758257A (en) * 1994-11-29 1998-05-26 Herz; Frederick System and method for scheduling broadcast of and access to video programs and other data using customer profiles
JPH09130346A (en) * 1995-10-30 1997-05-16 Sony Corp Av data reception equipment, av data transmission equipment, and broadcasting system
JPH09205638A (en) * 1995-11-24 1997-08-05 Hitachi Ltd Data transmission system and receiver
US5704017A (en) * 1996-02-16 1997-12-30 Microsoft Corporation Collaborative filtering utilizing a belief network
JP3495198B2 (en) * 1996-09-02 2004-02-09 株式会社東芝 Commercial information selective reproduction method and broadcast system
US5801747A (en) * 1996-11-15 1998-09-01 Hyundai Electronics America Method and apparatus for creating a television viewer profile
EP0947096B1 (en) * 1996-12-20 2002-08-28 Princeton Video Image, Inc. Set top device for targeted electronic insertion of indicia into video
JPH10276161A (en) * 1997-03-27 1998-10-13 Sanyo Electric Co Ltd Digital broadcast system
US6236978B1 (en) * 1997-11-14 2001-05-22 New York University System and method for dynamic profiling of users in one-to-one applications
JP5068910B2 (en) * 1999-08-31 2012-11-07 トムソン ライセンシング Method and apparatus for delivery of targeted video programming

Also Published As

Publication number Publication date
JP2011035917A (en) 2011-02-17
JP2014143722A (en) 2014-08-07
JP6067609B2 (en) 2017-01-25
JP2004524712A (en) 2004-08-12
JP2014078995A (en) 2014-05-01
AU6947800A (en) 2001-03-26
WO2001017250A1 (en) 2001-03-08
WO2001017250A9 (en) 2002-09-12
JP5068910B2 (en) 2012-11-07
JP2012095357A (en) 2012-05-17
JP5475030B2 (en) 2014-04-16
EP1230798A1 (en) 2002-08-14

Similar Documents

Publication Publication Date Title
JP6067609B2 (en) Method and apparatus for delivery of targeted video programming
US7370342B2 (en) Method and apparatus for delivery of targeted video programming
CN101273632B (en) Virtual channels
US8495679B2 (en) Method and apparatus for delivery of television programs and targeted de-coupled advertising
US9781478B2 (en) System and method for personalized TV
CN100377150C (en) Information processor, information processing method and computer program
KR100752993B1 (en) Client-server electronic program guide
US7020652B2 (en) System and method for customizing content-access lists
US9477666B2 (en) Method and system for providing “what&#39;s next” data
US20130014159A1 (en) Viewer Interface for a Content Delivery System
US20130167168A1 (en) Systems and methods for providing custom movie lists
US20030051240A1 (en) Four-way recommendation method and system including collaborative filtering
JP2003522500A (en) Electronic program guide browsing history generation method and system
KR20010080633A (en) Smart agent based on habit, statistical inference and psycho-demographic profiling
CA2751541A1 (en) Television program recording with user preference determination
WO2001089213A1 (en) A targeted advertising system
MXPA01008377A (en) System and method for tailoring television and/or electronic program guide features, such as advertising.
EP1775949A2 (en) Method and apparatus for delivery of targeted video programming
JP2004514333A (en) Programming guide that can be adapted to networked devices
WO2002052856A2 (en) Program guide system

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20120131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121211

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130308

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130313

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130917

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20131217

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20131220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140610

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140701

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140730

R150 Certificate of patent or registration of utility model

Ref document number: 5591638

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees