(57)【要約】  ここにて開示されているのは、ユーザイベントと関連したデータ量を削減するシステムおよび方法である。そのシステムおよび方法は、特に、ケーブルＴＶ、衛星ＴＶおよびその他のネットワークに適用可能であり、そこでは、ユーザイベントデータ（例えば、クリックストリーム）が顧客構内設備（ＣＰＥ）から集中型サーバーへ送られなければならないし、データ伝送チャンネルが狭い。様々な実施形態において、テレビセットトップボックスのようなＣＰＥが、チャンネル番号／タイムスタンプストリームの部分を「チャンネルサーフィングイベント」や「前のチャンネルイベント」のような共通のメタイベントを表している短縮コードで置き換えることによって、データストレージおよびネットワークバンド幅に対する要求を削減するだろう。オリジナルのチャンネル番号／タイムスタンプストリームは、集中型サーバー上で再構成され得る。リモートコントロール上での他のボタン（すなわち、チャンネルを変更することに関係していないボタン）、キーボードキー、マウスポインティングデバイスコントロールなどの起動に関するものを含めて、イベントのその他の共通シーケンスは、メタイベントを構成して短縮コードによって同様に置き換えられるだろう。 【選択図】  図１
2015511430.tif 000002
【特許請求の範囲】
【請求項１】
ユーザデバイスによって生成される生のユーザイベントコードを順次アクセスすることと、
削減できるシーケンスが検出された時に、前記生のユーザイベントコードをメタイベントコードに変換し、そこでは、メタイベントコードが受信デバイス上で再構成するのに適した形式で生のユーザイベントの共通のシーケンスを表している短縮コードであることと、
前記受信デバイスへ変換および変換されないコードを出力することと、
を含むことを特徴とするユーザイベントデータの量を削減する方法。
【請求項２】
生のユーザイベントコードが、タイムスタンプされており、テレビチャンネル変更イベントコード、ミュート／非ミュートイベントコード、ボリューム変更レベルコード、スタート・ストップ・一時停止・巻戻し・早送りのオーディオ／ビデオレコーダーイベントコード、電源オン／オフイベントコード、トリックプレーイベントコード、キーボードキー押圧イベントコード、マウスポインティングデバイスイベントコード、マイクロホーン入力イベントコード、ビデオ入力イベントコード、ＧＰＳ位置コード、キーパッド押圧コード、加速度計イベントコードおよびジェスチャー検出デバイスイベントコードの一つを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記ユーザデバイスが、セットトップボックス、組み込まれたテレビコントローラー、オーディオ／ビデオチューナまたはレシーバー、デジタルビデオレコーダー、パーソナルビデオレコーダー、ゲームコンソール、パーソナルコンピュータ、タブレットコンピュータ、スマートフォン、パーソナルディジタルアシスタント、または、情報端末の一つであることを特徴とする請求項１に記載の方法。
【請求項４】
生のユーザイベントコードをメタイベントコードに変換することが、テレビチャンネル変更／タイムスタンプイベントコードを「チャンネルサーフ」メタイベントコードへと、
前記コードが短い設定可能な時間量に対して各々が選局される有効なチャンネル番号を単調に増加または減少するシーケンスを表す間に、マルチテレビチャンネル変更／タイムスタンプイベントコードをバッファーリングすることにより、また、
それらのコードを、関連したタイムスタンプ付きの前記「チャンネルサーフ」メタイベントを表している短縮コードで置き換えることによって
変換することを含むことを特徴とする請求項１に記載の方法。
【請求項５】
生のユーザイベントコードをメタイベントコードに変換することが、生のテレビチャンネル変更／タイムスタンプイベントコードを「前のチャンネル」メタイベントコードへと、
前記コードが代わる代わるのチャンネル番号のシーケンスを表す間に、マルチテレビチャンネル変更／タイムスタンプイベントコードをバッファーリングすることにより、また、
前記コードの前記チャンネル番号部分を直前に選局されたチャンネルへの復帰を示すそれらのコード用の前記「前のチャンネル」メタイベントを表している短縮コードで置き換えることによって
変換することを含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記受信デバイスが、集中型サーバー、ケーブル、衛星、または、ＩＰ・ＴＶカンパニーヘッドエンドサーバー、または、分配サーバーの一つであることを特徴とする請求項１に記載の方法。
【請求項７】
前記出力することが、ケーブル、衛星、または、ＩＰ・ＴＶネットワーク、前記インターネット、ローカルエリアネットワーク、または、セルラーネットワークの一つを通して変換および変換されないコードを送信することを、さらに、含むことを特徴とする請求項１に記載の方法。
【請求項８】
メタイベントが、短縮メタイベントコードによる置換に適している共通のイベントストリームを識別するために、ユーザの集団にわたる生のユーザイベントデータのストリームの統計解析を使用して決定されることを特徴とする請求項１に記載の方法。
【請求項９】
メタイベントコードを含んでいるユーザイベントコードを順次アクセスし、そこでは、前記メタイベントコードが生のユーザイベントの共通のシーケンスを表している短縮コードであることと、
前記メタイベントコードを検出して生のユーザイベントコードに変換することと、
前記変換されたコードとオリジナルのコードを適切なシーケンスにて出力することと、
を含むユーザイベントデータを再構成する方法。
【請求項１０】
生のユーザイベントコードが、タイムスタンプされており、テレビチャンネル変更イベントコード、ミュート／非ミュートイベントコード、ボリューム変更レベルコード、スタート・ストップ・一時停止・巻戻し・早送りのオーディオ／ビデオレコーダーイベントコード、電源オン／オフイベントコード、トリックプレーイベントコード、キーボードキー押圧イベントコード、マウスポインティングデバイスイベントコード、マイクロホーン入力イベントコード、ビデオ入力イベントコード、ＧＰＳ位置コード、キーパッド押圧コード、加速度計イベントコードおよびジェスチャー検出デバイスイベントコードの一つを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記ユーザデバイスが、セットトップボックス、組み込まれたテレビコントローラー、オーディオ／ビデオチューナまたはレシーバー、デジタルビデオレコーダー、パーソナルビデオレコーダー、ゲームコンソール、パーソナルコンピュータ、タブレットコンピュータ、スマートフォン、パーソナルディジタルアシスタント、または、情報端末の一つであることを特徴とする請求項９に記載の方法。
【請求項１２】
前記メタイベントコードを検出して生のユーザイベントコードに変換することが、
前記タイプのメタイベントコードを識別することと、
もし、前記メタイベントコードが「チャンネルサーフ」イベントを表すならば、前記メタイベントコードをチャンネル選局イベントの適切なシーケンスへと変換することと、
もし、前記メタイベントコードが「前のチャンネル」イベントを表すならば、前記メタイベントコードを前記適切な実際のチャンネル番号およびタイムスタンプに変換することと、
もし、前記メタイベントコードが「チャンネルサーフ」または「前のチャンネル」イベントではないならば、前記メタイベントコードを、特定のメタイベントコードの意味にふさわしいように、生のクリックストリームイベントデータに変換することと、
を含むことを特徴とする請求項９に記載の方法。
【請求項１３】
前記受信デバイスが、集中型サーバー、ケーブル、衛星、または、ＩＰ・ＴＶカンパニーヘッドエンドサーバー、または、分配サーバーの一つであることを特徴とする請求項９に記載の方法。
【請求項１４】
前記出力することが、ケーブル、衛星、または、ＩＰ・ＴＶネットワーク、前記インターネット、ローカルエリアネットワーク、または、セルラーネットワークの一つを通して変換および変換されないコードを送信することを、さらに、含むことを特徴とする請求項９に記載の方法。
【請求項１５】
メタイベントが、短縮メタイベントコードによる置換に適している共通のイベントストリームを識別するために、ユーザの集団にわたる生のユーザイベントデータのストリームの統計解析を使用して決定されることを特徴とする請求項９に記載の方法。
【請求項１６】
ユーザデバイスによって生成される生のユーザイベントコードを順次アクセスするように構成されるコンピュータプロセッサと、
前記生のユーザイベントコードをメタイベントコードに変換するように構成されるコンピュータプロセッサであって、そこでは、メタイベントコードが受信デバイス上で再構成するのに適した形式で生のユーザイベントの共通のシーケンスを表している短縮コードであるものと、
前記受信デバイスへ変換されたコードを出力するように構成されるコンピュータプロセッサと、
を具備することを特徴とするユーザイベントデータの量を削減するシステム。
【請求項１７】
生のユーザイベントコードが、テレビチャンネル変更イベントコード、ミュート／非ミュートイベントコード、ボリューム変更レベルコード、スタート・ストップ・一時停止・巻戻し・早送りのオーディオ／ビデオレコーダーイベントコード、電源オン／オフイベントコード、トリックプレーイベントコード、キーボードキー押圧イベントコード、マウスポインティングデバイスイベントコード、マイクロホーン入力イベントコード、ビデオ入力イベントコード、ＧＰＳ位置コード、キーパッド押圧コード、加速度計イベントコードおよびジェスチャー検出デバイスイベントコードのタイムスタンプされたアイテムの一つを含むことを特徴とする請求項１６に記載のシステム。
【請求項１８】
前記ユーザデバイスが、セットトップボックス、組み込まれたテレビコントローラー、オーディオ／ビデオチューナまたはレシーバー、デジタルビデオレコーダー、パーソナルビデオレコーダー、ゲームコンソール、パーソナルコンピュータ、タブレットコンピュータ、スマートフォン、パーソナルディジタルアシスタント、または、情報端末の一つであることを特徴とする請求項１６に記載のシステム。
【請求項１９】
前記生のユーザイベントコードをメタイベントコードに変換するように構成される前記コンピュータプロセッサが、
前記コードが短い設定可能な時間量に対して各々が選局される有効なチャンネル番号を単調に増加または減少するシーケンスを表す間に、マルチテレビチャンネル変更／タイムスタンプイベントコードをバッファーリングし、また、
それらのコードを、関連したタイムスタンプ付きの前記「チャンネルサーフ」メタイベントを表している短縮コードで置き換えるように、さらに、構成される
ことを特徴とする請求項１６に記載のシステム。
【請求項２０】
前記生のユーザイベントコードをメタイベントコードに変換するように構成される前記コンピュータプロセッサが、
前記コードが代わる代わるのチャンネル番号のシーケンスを表す間に、マルチテレビチャンネル変更／タイムスタンプイベントコードをバッファーリングし、また、
前記コードの前記チャンネル番号部分を直前に選局されたチャンネルへの復帰を示すそれらのコード用の前記「前のチャンネル」メタイベントを表している短縮コードで置き換えるように、さらに、構成される
ことを特徴とする請求項１６に記載のシステム。
【請求項２１】
前記受信デバイスが、集中型サーバー、ケーブル、衛星、または、ＩＰ・ＴＶカンパニーヘッドエンドサーバー、または、分配サーバーの一つであることを特徴とする請求項１６に記載のシステム。
【請求項２２】
前記受信デバイスへ変換されたコードを出力するように構成されるコンピュータプロセッサが、ケーブル、衛星、または、ＩＰ・ＴＶネットワーク、前記インターネット、ローカルエリアネットワーク、または、セルラーネットワークの一つを通して変換および変換されないコードを送信するように、さらに、構成されることを特徴とする請求項１６に記載のシステム。
【請求項２３】
メタイベントが、短縮メタイベントコードによる置換に適している共通のイベントストリームを識別するために、ユーザの集団にわたる生のユーザイベントデータのストリームの統計解析を使用して決定されることを特徴とする請求項１６に記載のシステム。
【請求項２４】
メタイベントコードを含んでいるユーザイベントコードを順次アクセスするように構成されるコンピュータプロセッサであって、そこでは、前記メタイベントコードが生のユーザイベントの共通のシーケンスを表している短縮コードであるものと、
前記メタイベントコードを検出して生のユーザイベントコードに変換するように構成されるコンピュータプロセッサと、
前記変換されたコードおよび前記オリジナルのコードを前記適切なシーケンスにて出力するように構成されるコンピュータプロセッサと、
を具備することを特徴とするユーザイベントデータを再構成するシステム。
【請求項２５】
生のユーザイベントコードが、テレビチャンネル変更イベントコード、ミュート／非ミュートイベントコード、ボリューム変更レベルコード、スタート・ストップ・一時停止・巻戻し・早送りのオーディオ／ビデオレコーダーイベントコード、電源オン／オフイベントコード、トリックプレーイベントコード、キーボードキー押圧イベントコード、マウスポインティングデバイスイベントコード、マイクロホーン入力イベントコード、ビデオ入力イベントコード、ＧＰＳ位置コード、キーパッド押圧コード、加速度計イベントコードおよびジェスチャー検出デバイスイベントコードのタイムスタンプされたアイテムの一つを含むことを特徴とする請求項２４に記載のシステム。
【請求項２６】
前記ユーザデバイスが、セットトップボックス、組み込まれたテレビコントローラー、オーディオ／ビデオチューナまたはレシーバー、デジタルビデオレコーダー、パーソナルビデオレコーダー、ゲームコンソール、パーソナルコンピュータ、タブレットコンピュータ、スマートフォン、パーソナルディジタルアシスタント、または、情報端末の一つであることを特徴とする請求項２４に記載のシステム。
【請求項２７】
前記メタイベントコードを検出して生のユーザイベントコードに変換するように構成されるコンピュータプロセッサが、
前記タイプのメタイベントコードを識別し、
もし、前記メタイベントコードが「チャンネルサーフ」イベントを表すならば、前記メタイベントコードをチャンネル選局イベントの適切なシーケンスへと変換し、
もし、前記メタイベントコードが「前のチャンネル」イベントを表すならば、前記メタイベントコードを前記適切な実際のチャンネル番号およびタイムスタンプに変換し、
もし、前記メタイベントコードが「チャンネルサーフ」または「前のチャンネル」イベントではないならば、前記メタイベントコードを、特定のメタイベントコードの意味にふさわしいように、生のクリックストリームイベントデータに変換するように、さらに、構成される
ことを特徴とする請求項２４に記載のシステム。
【請求項２８】
前記受信デバイスが、集中型サーバー、ケーブル、衛星、または、ＩＰ・ＴＶカンパニーヘッドエンドサーバー、または、分配サーバーの一つであることを特徴とする請求項２４に記載のシステム。
【請求項２９】
前記受信デバイスへ変換されたコードを出力するように構成されるコンピュータプロセッサが、ケーブル、衛星、または、ＩＰ・ＴＶネットワーク、前記インターネット、ローカルエリアネットワーク、または、セルラーネットワークの一つを通して変換および変換されないコードを送信するように、さらに、構成されることを特徴とする請求項２４に記載のシステム。
【請求項３０】
メタイベントが、短縮メタイベントコードによる置換に適している共通のイベントストリームを識別するために、ユーザの集団にわたる生のユーザイベントデータのストリームの統計解析を使用して決定されることを特徴とする請求項２４に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願のクロスリファレンス）  この出願は、以下の開示と矛盾しない範囲で、ここにて、組み込まれている米国公開特許出願６１／５８９，６６２に対して優先権を主張する。
本発明の様々な実施形態は、ユーザイベントデータ削減システムおよび方法に関し、具体的には、ケーブルＴＶ、衛星ＴＶおよびその他の帯域制限されたネットワーク内のセットトップボックスのような顧客構内設備におけるユーザイベントデータの削減に関する。
【背景技術】
【０００２】
コンピュータネットワークおよびユーザデバイスの増殖により生まれた、ユーザとデジタルサービスプロバイダー間の増加する接続性に伴って、システム診断、視聴者測定、ユーザ体験パーソナル化およびターゲット広告をサポートするためにユーザイベントデータを収集する必要性が高まっている。ユーザイベントデータは、テレビ、セットトップボックス、デジタルビデオレコーダー、パーソナルビデオレコーダーおよびゲームコンソールのようなデバイスと関連付けられたコントローラー上で実行されるチャンネル変更クリックやその他のボタン起動のようなクリックストリームイベントを含むだろう。ユーザイベントは、また、例えば、コンピュータ、スマートフォン、パーソナルディジタルアシスタント、タブレットコンピュータおよび情報端末と関連付けられたキーボード、マウス、タッチパッド、カメラおよびマイクロホーンのような入力デバイスから記録されるだろう。そのようなデータ収集は、バンド幅とメモリが不足しており、多数の顧客が存在し、イベント分解能が高く、および／または、イベントデータのボリュームが大きな影響を与えている、ケーブルＴＶ、衛星ＴＶ、およびその他のネットワークにおいて問題となり得る。
【０００３】
いくつかの既存の技術は、全ての生のクリックストリームイベントを記録し、記憶し、送信する。これは、特にイベント頻度と分解能が高いとするならば、制限されたメモリとバンド幅のリソース上で著しい負荷をもたらし得る。
【０００４】
その他の技術は、ＸＭＬまたは他の非コンパクトデータ表現内のユーザイベントをエンコードし、これが、メモリとバンド幅要求をさらにもっと増加させるだろう。
【０００５】
その他の技術は、メモリとバンド幅を節約するために、特定のデータシーケンスを無視するか、または、ドロップしており、受信デバイスに配信される不完全か、または、曖昧なデータをもたらしている。
【０００６】
その他の技術は、標準圧縮アルゴリズムを使用してユーザイベントデータを削減しており、これは、アルゴリズム運用をサポートするのに必要とされるプロセス時間およびメモリの観点から、ユーザデバイスにとってコストがかかるであろう。
【０００７】
その他の技術は、プログラムと関連付けられたチャンネル番号／タイムコードデータを圧縮し、それをプログラム放送の垂直帰線期間内で送信することによって等の他の方法にてデータを削減することを試みるだろう。そのような方法は、追加のデータ削減のためには、ユーザイベントのシーケンスの利点を有しないし、チャンネル選局イベントために、十分な時間分解能を提供しない。
【０００８】
現在の技術は、コンピュータ的に扱いやすく効果的で明白で十分に可逆可能な方法によってユーザイベントデータのボリュームを削減するための方法を提供するには至っていない。
【発明の開示】
【０００９】
様々な実施形態において、ユーザデバイスによって生成される生のユーザイベントコードを順次アクセスすることと、可能ならどこであろうともそれらのコードをメタイベントコードに変換する（そこでは、メタイベントコードが受信デバイス上で再構成するのに適した形式で生のユーザイベントの共通のシーケンスを表している短縮コードである）ことと、前記受信デバイスへ変換および変換されないコードを出力することと、によって、ユーザイベントデータの量を削減する方法が提供される。
【００１０】
様々な実施形態において、生のユーザイベントコードは、例えば、タイムスタンプされるテレビテレビチャンネル変更イベントコード、ミュート／非ミュートイベントコード、ボリューム変更レベルコード、スタート・ストップ・一時停止・巻戻し・早送りのオーディオ／ビデオレコーダーイベントコード、電源オン／オフイベントコード、トリックプレーイベントコード、キーボードキー押圧イベントコード、マウスポインティングデバイスイベントコード、マイクロホーン入力イベントコード、ビデオ入力イベントコード、ＧＰＳ位置コード、キーパッド押圧コード、加速度計イベントコードおよびジェスチャー検出デバイスイベントコードであるだろう。
【００１１】
様々な実施形態において、ユーザデバイスは、例えば、セットトップボックス、組み込まれたテレビコントローラー、オーディオ／ビデオチューナ／レシーバー、デジタルビデオレコーダー、パーソナルビデオレコーダー、ゲームコンソール、パーソナルコンピュータ、タブレットコンピュータ、スマートフォン、パーソナルディジタルアシスタント、または、情報端末であるだろう。
【００１２】
生のユーザイベントコードをメタイベントコードに変換することは、例えば、テレビチャンネル変更／タイムスタンプイベントコードを「チャンネルサーフ」メタイベントコードへと、前記コードが、短い設定可能な時間量に対して各々が選局される有効なチャンネル番号を単調に増加または減少するシーケンスを表す間に、マルチテレビチャンネル変更／タイムスタンプイベントコードをバッファーリングすることにより、また、それらのコードを、前記「チャンネルサーフ」メタイベントおよび関連したタイムスタンプを表している短縮コードで置き換えることによって変換することを含むであろう。
【００１３】
様々な実施形態において、生のユーザイベントコードをメタイベントコードに変換することは、例えば生のテレビチャンネル変更／タイムスタンプイベントコードを「前のチャンネル」メタイベントコードへと、前記コードが代わる代わるのチャンネル番号のシーケンスを表す間に、マルチテレビチャンネル変更／タイムスタンプイベントコードをバッファーリングすることにより、また、前記コードの前記チャンネル番号部分を直前に選局されたチャンネルへの復帰を示すそれらのコード用の前記「前のチャンネル」メタイベントを表している短縮コードで置き換えることによって変換することを含むであろう。
【００１４】
様々な実施形態において、前記受信デバイスは、例えば、集中型サーバー、ケーブル、衛星、または、ＩＰ・ＴＶカンパニーヘッドエンドサーバー、または、分配サーバーであるだろう。
【００１５】
様々な実施形態において、削減されたコードの出力は、例えば、ケーブル、衛星、または、ＩＰ・ＴＶネットワーク、前記インターネット、ローカルエリアネットワーク、または、セルラーネットワークであるだろう。
【００１６】
様々な実施形態において、メタイベントは、短縮メタイベントコードによる置換に適している共通のイベントストリームを識別するために、ユーザの集団にわたる生のユーザイベントデータのストリームの統計解析を使用して決定されるだろう。
【００１７】
様々な実施形態において、メタイベントコードを含んでいるユーザイベントコードを順次アクセスする（そこでは、前記メタイベントコードが生のユーザイベントの共通のシーケンスを表している短縮コードである）ことと、前記メタイベントコードを検出して生のユーザイベントコードに変換することと、前記変換されたコードとオリジナルのコードを適切なシーケンスにて出力することと、によって、ユーザイベントデータを再構成する方法が提供される。
【００１８】
上述の一般的な記述と以下の詳細な記述の双方は例示と説明のみであり、請求範囲に示されるような本発明を制限していないことが理解されるべきである。添付の図面は、明細書の一部を構成し、本発明の特定の実施例を例示し、詳細な記述と共に本発明の原理を説明する役目をする。
【図面の簡単な説明】
【００１９】
本発明は、添付の図面と共に以下の詳細な説明を読むことによって、より完全に理解することでき、そこでは、同様な参照指標は同様な要素を指定するために使用される。
【図１】ユーザイベントを収集して削減するシステムの実施形態を描写している図である。
【図２】データ削減前後におけるチャンネルイベントデータのストリームを描写している例示的な図である。
【図３】ユーザイベントデータを削減する方法を描写している例示的なフローチャートである。
【図４】ユーザイベントデータを再構成する方法を描写している例示的なフローチャートである。
【発明を実施するための最良の形態】
【００２０】
図１は、ユーザイベントを収集して削減するシステムの実施形態を描写している図である。ブロック１００ａ、１００ｂおよび１００ｃは、ユーザの場所を表し、そこでは、セットトップボックス１１０、リモートコントロールデバイス１２０、ディスプレイスクリーン１３０、マウスポインティング／選択デバイス１４０およびコンピュータキーボード１５０のような顧客構内設備（ＣＰＥ）が存在するだろう。顧客構内設備１００ａ〜ｃは、データストレージ３１０への読取り／書込みアクセスを持つ集中型サーバー３００へのネットワーク２００を介して、セットトップボックス１１０を経由してつながるだろう。一実施形態において、リモートコントロールデバイス１２０はテレビリモートであり、ディスプレイスクリーン１３０はテレビスクリーンであり、ネットワーク２００はケーブルか衛星かＩＰ・ＴＶのネットワークであり、集中型サーバー３００はＴＶサービスプロバイダーのヘッドエンドまたは他の集中型か分配型位置に置かれたデータ記録サーバーである。示されているセットトップボックス１１０は、択一的に、ビデオ、オーディオ、および／または、対話式アプリケーション、および／または、他の信号を受信でき、また、データをプロセスでき、ユーザイベントを記録でき、ネットワーク２００上の集中型サーバー３００にイベントデータを送信できる、テレビに内部的に組み込まれているか表示デバイスに外部的に接続されている１つ以上のチューナ／レシーバーデバイス、デジタルビデオレコーダー、パーソナルビデオレコーダー、ゲームシステム、または、同様なデバイスであるだろう。セットトップボックス１１０は、さらに、上記および下記にある方法およびシステムを実行できる１つ以上のコンピュータプロセッサ、１つ以上のデジタル信号プロセッサ、１つ以上のビデオアクセラレータを具備するだろう。
【００２１】
図１に描写されたリモートコントロール１２０、マウスポインティングデバイス１４０とキーボード１５０に加えて、タッチ感応キーパッド、マイクロホーン、ビデオカメラ、ＧＰＳ送信機、加速度計、ジェスチャー検出デバイスなどのような他の入力デバイスがユーザイベント記録用に提供され、支援されるだろう。同様に、パーソナルコンピュータ、タブレットコンピュータ、スマートフォンおよびパーソナルディジタルアシスタントのようなデバイスが、ここにて開示されているデータ削減方法に適しているだろう。セットトップボックス１１０は、上記および下記にある入力デバイスとコミュニケーションする１つ以上の方法を具備するだろう。例えば、限定ではないが、セットトップボックス１１０は、１つ以上のブルートゥースモジュール、１つ以上のＷｉＦｉ接続、１つ以上のＵＳＢポート、１つ以上のＲＦ（無線周波数）センサー、１つ以上のＩＲ（赤外）センサー、１つ以上のＮＦＣモジュール、１つ以上のＲＦＩＤモジュール、ＬＴＥモジュール、１つ以上のＷｉＧｉｇインターフェース、１つ以上のＷＨＤＩ（無線高精細度インターフェース）接続、他の任意のコミュニケーション手段を提供するだろう。
【００２２】
様々な実施形態において、ネットワーク２００は、無線ネットワーク、有線ネットワーク、または、無線ネットワークと有線ネットワークの任意の組み合わせだろう。例えば、ネットワークは、ファイバーオプティクスネットワーク、パッシブ光ネットワーク、無線近距離コミュニケーションネットワーク（例えば、ブルートゥースネットワーク）、ケーブルネットワーク、インターネットネットワーク、衛星ネットワーク（例えば、Ｃバンド、Ｋｕバンド、または、Ｋａバンドで動作）、無線ローカルエリアネットワーク（ＬＡＮ）、モバイルコミュニケーション（ＧＳＭ（登録商標））用のグローバルシステム、パーソナルコミュニケーションサービス（ＰＣＳ）、パーソナルエリアネットワーク（ＰＡＮ）、Ｄ・ＡＭＰ、ＷｉＦｉ、固定無線データ、ＩＥＥＥ８０２．１１ａ／８０２．１１ｂ／８０２．１５．１／８０２．１１ｎ／８０２．１１ｇ、または、データ信号を送信するか受信するように構成された他の任意の有線または無線ネットワークのいずれか、または、それらの組み合わせを含むだろう。また、ネットワーク２００は、制限なく、電話線、ファイバーオプティクス、ＩＥＥＥイーサネット（登録商標）８０２．３、広域ネットワーク（ＷＡＮ）、ＬＡＮ、または、インターネットのようなグローバルネットワークを含むか、または、それに接続されるだろう。また、ネットワークは、インターネットネットワーク、無線コミュニケーションネットワーク、セルラーネットワーク、放送ネットワークなど、または、それらの任意の組み合わせをサポートするだろう。ネットワークは、さらに、スタンドアローンネットワークとして、または、互いに協力してオぺレーテイングする、１つ以上の上述の例示的タイプのネットワークを含むだろう。そのネットワークは、それが通信的に結合される１つ以上のネットワーク構成要素の１つ以上のプロトコルを利用するだろう。そのネットワークは、他のプロトコルに、または、それらからネットワークデバイスの１つ以上のプロトコルに翻訳するだろう。そのネットワークは、例えば、サービスプロバイダーネットワーク、インターネット、放送事業者のネットワーク、ケーブルテレビネットワーク、企業ネットワークおよびホームネットワークのような複数の相互接続されたネットワークを含むだろう。
【００２３】
様々な実施形態において、データストレージ３１０は、ネットワークアクセス可能なストレージだろうし、ネットワーク２００へのローカル、リモート、または、それらの組み合わせだろう。データストレージ３１０は、不揮発性半導体メモリ、冗長アレイの安いディスク（「ＲＡＩＤ」）かテープかディスク、ストレージエリアネットワーク（「ＳＡＮ」）、インターネット小型コンピュータシステムインターフェース（「ｉＳＣＳＩ」）ＳＡＮ、ファイバーチャンネルＳＡＮ、共通のインターネットファイルシステム（「ＣＩＦＳ」）、ネットワーク接続ストレージ（「ＮＡＳ」）、ネットワークファイルシステム（「ＮＦＳ」）、または、他のコンピュータアクセス可能なストレージを利用するだろう。データストレージ３１０は、データのストレージと検索を管理するために、例えば、オラクルデータベース、マイクロソフトＳＱＬサーバーデータベース、ＤＢ２データベース、ＭｙＳＱＬデータベース、Ｓｙｂａｓｅデータベース、オブジェクト指向型データベース、階層データベース、フラットファイル構造、または、その他のデータベースのようなデータベースを含むだろう。
【００２４】
図１に示されるようなシステムの様々なコンポーネントは、様々なアプリケーションおよびプラットフォームをサポートするために、さらに複製され、組み合わせられ、分離され、および／または、組み込まれるであろう。追加の素子が、また、様々なアプリケーションをサポートするために、上述のシステムに実装されるだろう。
【００２５】
図２は、データ削減前後におけるチャンネル選局イベントのストリームを描写している例示的な図である。図２において使用される番号、コード、文字および他の表現は例示であり、限定ではない。ブロック５１０は削減されなかったデータストリームを表し、ブロック５２０は削減されたデータストリームを表し、また、矢印５３０はトランスコーディングプロセスを表しており、それによって２つのストリームが一方から他方へ変換されるだろう。一実施形態において、削減されなかったデータストリーム５１０は、データが集中型サーバー３００に送られる前に、セットトップボックス１１０上で動作しているソフトウェアまたはハードウェアによって、削減されたデータストリーム５２０に変換されるだろう。集中型サーバー３００によってひとたび受信されると、削減されたストリーム５２０は、大量ストレージ３１０に書き込まれる前に、そのオリジナルの削減されなかった形式５１０、または、その近似に復元されるだろう。そのような復元は、下記にて議論されるように、「不可逆」である特定のトランスコーディングプロセスのための近似だろう。いくつかの実施例において、サーバー３００上の全ての削減されなかったデータ５１０を再構築することよりはむしろ、いくつかの圧縮されたメタイベントコード（例えば、「チャンネルサーフイベント」）は、もしそのようなイベントが特定の運用者にとって関心のものではないならば、廃棄されて、関連の大量ストレージ３１０に記憶されないだろう。
【００２６】
図２に描写された簡略化されたデータストリームにつき、各々の例示的なチャンネル選局イベントは、視聴者が各々のチャンネルを選局したチャンネル番号と時間用のコードによって表されるだろう。コードは、任意のコーディング方法に対応するだろう。説明の便宜上、ブロック５１０および５２０の第１列に描写されたコードは、選局されるチャンネル、または、特別なメタイベントコードの番号を表すだろう。ブロック５１０および５２０の第２列における対応する時間は、チャンネルが選局された時、または、一般的に、示されたイベントが始まった時の秒時間を表す。
【００２７】
例えば、「イベントａ」（５１０ａ）に対応する図２の削減されなかったデータストリーム５１０内の最初のコードは、チャンネル番号４７が１００００００秒間選局されたことを示すだろう。選局時間は、イベント用の実際の日付・タイムのスタンプを計算するために使用することができる、過去の事前に定義された基準時刻と関連するだろう（例えば、時刻０は特別な過去の日付の真夜中を表すだろう）。基準時刻は、エンコードされるイベントに関連する最近（例えば、現在日の真夜中）だろうし、これにより、各イベントに関連付けられたタイムスタンプの長さを削減する（例えば、簡略化された例に描写された７桁タイムスタンプよりずっと短い）。そのような基準時刻は、実際のイベント時刻を完全に特徴付けるために、データストリームヘッダー内で送信されるだろう。
【００２８】
次のイベント「イベントｂ」（５１０ｂ）は、チャンネル１２２が時間１００１８００に選局されたことを示すだろう。このことは、チャンネルが１２２へ変更される前、正確に３０分（すなわち、１０００１８００−１００００００＝１８００秒＝３０分）間チャンネル４７が選局されたことを示すだろう。
【００２９】
引き続くチャンネル変更イベント５１０ｃ、５１０ｄ、５１０ｅ、５１０ｆ、５１０ｇおよび５１０ｈは、視聴者が、リモートコントロール１２０上のチャンネルアップボタンを使用して、各チャンネルで数秒間まで留まる、チャンネルの急速な変更をしていたことを示すだろう。イベント５１０ｂ〜ｈ用のイベントデータによって示されるように、チャンネル１２２は１秒間、チャンネル１２３は１秒間、チャンネル１２４は２秒間、チャンネル１２５は１秒間、チャンネル１２６は２秒間、および、チャンネル１２７は１秒間選局された。ここにて記述されるように、このことは、「チャンネルサーフイベント」が生じたことを示すだろう。削減されなかったデータストリーム５１０中のそのようなイベントは、削減されたデータストリーム５２０内においては、コード５１０ｃ〜ｇをコード「ＳＥ１００１８０１」（イベント５２０ｃ）で置き換えた単一の「サーフイベント」（ＳＥ）コードによって表されるだろう。「ＳＥ」コードは「チャンネルサーフイベント」が発生したことを示すだろう。ＳＥは、望ましくは、チャンネル番号およびその他のイベントをエンコードするために使用されるものよりは短いコードを用いてエンコードされるだろう。イベント５２０ｃにおける時間部分「１００１８０１」は、オリジナルの初期イベント５１０ｃと関連付けられた時間に対応して時間１００１８０１秒にスタートした「チャンネルサーフイベント」を示すだろう。図２において、視聴者がイベント５１０ｈにつき時間１００１８０８にチャンネル１２８へとひとたび選局を行うと、「チャンネルサーフイベント」は終わったと判定されるだろうし、標準チャンネル番号／タイムスタンプコードペアが、削減されたデータストリーム５２０（すなわち、イベント５２０ｄ）内のチャンネル変更イベントを表すために再度使用される。
【００３０】
「チャンネルサーフイベント」コード（ＳＥ）の意味は、「視聴者が急速にチャンネルをアップまたはダウン変更し、〔チャンネルサーフィングイベント〕直後のイベント内に示されるチャンネルを介して〔チャンネルサーフィングイベント〕直前のイベントによって示されるチャンネルから全ての有効なチャンネルを順次視察する」ということであろう。この意味を前提として、受信システム３００は、全ての「チャンネルサーフイベント」の期間に視察された全介在チャンネルに時間を割り当てることによって、オリジナルのチャンネル変更イベントコードシーケンスをほぼ再構築できる。現在の例においては、（イベント５２０ｄにおける）「チャンネル変更イベント」に引き続くチャンネル変更イベント用の時間が１００１８０８秒であり、初期イベント５２０ｃの時間が１００１８０１なので、このシステムは、チャンネル１２３から１２７までの「サーフィング」に費やされた合計時間として７秒（例えば、１００１８０８−１００１８０１）を割り当てる。その７秒は、イベント５１０ｃ〜ｇ再構築において、チャンネル１２３〜１２７に割り当てられる。そのような割り当ては、望ましくは、もしタイミング分解能が許せば全てのイベントに割り当てられるイーコールタイム差と比例するか、または、各々のチャンネルにほぼ等しいチャンクにてランダムに分配されるか、アプリケーションに適切ないくつかの他の合理的な割り当て方法にてであろう。１秒分解能のイベントによる公平なランダム割り当てを仮定すると、７秒は、５個のチャンネル（すなわち、１２３〜１２７）に１秒増加にて割り当てられねばならない。このことは、３個のチャンネルがあてがわれた１秒イベント時間を持ち、２個のチャンネルがそれぞれ２秒を取得することを意味する。そのような再割り当ては、以下のように再構成された、削減されなかったデータストリームをもたらすだろう。
ｃ．  １２３  １００１８０２
ｄ．  １２４  １００１８０３
ｅ．  １２５  １００１８０４
ｆ．  １２６  １００１８０６
ｇ．  １２７  １００１８０７
【００３１】
このシーケンスは、５１０におけるオリジナルのイベントタイミングからわずかに相違する。オリジナルのストリームは、チャンネル１２４および１２６に対して２秒の着陸時間を有し、他のチャンネルに対しては１秒を有していた。再構成されたストリームは、チャンネル１２３および１２５に割り当てられた２秒を有し、その他には１秒を有している。このようにして、データ削減および再構成プロセスは、そのようなイベントに対して不可逆であろうが、現実世界のアプリケーションに対しては許容可能だろう。引き続くイベントは、それらに関連付けた正確なタイムスタンプを持つであろうし、従って、効果的に「再同期される」。
【００３２】
その他のチャンネル変更イベントの意味は、特定のシステムに適切であるように定義されるだろう。例えば、イベント時間（すなわち、ブロック５１０および５２０の第２列）は、第１列（例えば、チャンネル変更イベントに対して選局入りから選局外れまでの合計時間）におけるコードによって表されるイベントの合計期間を表すだろう。
【００３３】
図２に描写された例で継続すると、イベント５１０ｈによって表されるようにチャンネル１２８への着陸後、視聴者は、イベント５１０ｉのチャンネル４７へ選局する前に、１７９２秒（すなわち、１００３６００−１００１８０８＝１７９２）の間、チャンネル１２８に選局されたままでいただろう。（これは３０分からは８秒短く、視聴者がチャンネル１２８の全３０分プログラムを見たことを示すだろう。）５分（３００秒）後、時間１００３９００で、視聴者はイベント５１０ｊにつきチャンネル１２８へ選局した。その後１０分（６００秒）、時間１００４５００で、視聴者はチャンネル４７に選局を戻した。ここにて記述されるように、このシーケンスは「前のチャンネルイベント」として認識されるだろう。したがって、削減されたデータストリーム５２０において、フルチャンネル番号を保持するよりはむしろ、新たに選局したチャンネルコードが、短縮された「前のチャンネル」（ＰＣ）コードによって置き換えられるだろう。そのようなコードは、チャンネル番号よりも少ないビットでエンコードされるだろう。この実施例においては、例えば、イベントタイムコードが、標準チャンネルイベントコードに対してそうであったように、保持されてエンコードされるだろう。図２に描写されているように、３つの連続する「前のチャンネルイベント」があり、そこでは、全ての３つの関連チャンネル番号はＰＣコード（すなわち、イベント５２０ｆ、５２０ｇ、５２０ｈにトランスコードされたイベント５１０ｊ、５１０ｋ、５１０ｌ）を使用して置き換えられる。描写されたチャンネル変更イベントは、視聴者が、２つのお気に入りのチャンネル（すなわち、チャンネル１２８および４７）、または、それらのチャンネルでの興味があるイベントの間を、一方では５分間他方では１０分間費やすのを交互に変更して、前後に選局することを表すだろう。そのようなシーケンスは、ＴＶリモートコントロール上で「前のチャンネル」ボタンまたは「お気に入りの／プリセットチャンネル」ボタンを使用することにより、イネーブルされるであるだろう。「チャンネルサーフィングイベント」の場合と同様に、オリジナルのチャンネル番号コードは、集中型サーバー３００上で、例えば、ＰＣコードとサラウンディングデータの意味に基づいて、再構築することができる。
【００３４】
最後に、図２の例を完了するために、削減されなかったデータストリーム５１０ｍに描写された最後のイベントが、時間１００５４００（すなわち、チャンネル１２８での１０分（６００秒）後）における、チャンネル１２８からチャンネル６５への選局変更を表すであろう。この例においては、引き続く「チャンネルを変更するイベント」や「前のチャンネルイベント」または他の圧縮可能なメタイベントの部分ではないので、コード５１０ｍは、削減されたデータストリーム５２０ｉにそのまま転送される。
【００３５】
ここにて記述されるように、タイムスタンプは、現在日付における００：００：００のような近接過去に発生している基準時刻に関連するだろう。そのような実施例において、図２に与えられる例に関連して、最初のチャンネル変更イベントは、００：００：００の後に１０，０００秒発生するだろう。引き続くイベントは、最後のイベントの発生に関連する期間としてエンコードされるだろう。このアプローチを使用して、ブロック５２０における最初の５つの削減されたイベントは次の如くであろう。
ａ．  ４７  １００００
ｂ．  １２２  １８００
ｃ．  ＳＥ  １
ｄ．  １２８  ７
ｅ．  ４７  １７９２
【００３６】
このことは、タイムスタンプの整数がはるかに小さくなることを可能にするだろう。実際に、そのような実施例においては、イベントのバッファーが、一日の境界に及ぶことは決してないだろう。このようにして、イベント用の最大のタイムスタンプ値は、２４＊６０＊６０＝８６４００であろう。
【００３７】
そのような短いコード（例えば、「ＳＥ」、「ＰＣ」）の使用およびマルチイベント（例えば、ＳＥイベント５１０ｃ〜ｇ）用のコードの削除は、ネットワーク２００を介してＣＰＥ１１０から集中型サーバー３００に送られることを必要とするデータ量や潜在的には大量記憶装置３１０に書き込まれるデータ量を効果的に削減するだろう。
【００３８】
例えば、ボリュームアップ／ボリュームダウン、ミュート／非ミュート、スタート／ストップ／一時停止／巻戻し／早送り、電源オン／オフ、トリックプレー、および、ＴＶ、ＳＴＢ、デジタルビデオレコーダー、ビデオカセットレコーダー、パーソナルビデオレコーダーと関連したリモートコントロール上の他のボタン、および、キーボードキー、コンピュータマウス、携帯電話、タブレットコンピュータやその他のデバイスのような同様なデバイスの起動に関するものを含んでいるイベントの他の共通のシーケンスは、メタイベントを構成し、短縮コードによって同様に置き換えられるだろう。
【００３９】
タイムスタンプ分解能は、ターゲットシステム（例えば、１０分の１または１００分の１秒）により必要とされて支援されるように、１秒よりも大きいか、または、小さいだろう。タイムスタンプは、また、前もって定義された基準時刻に関連するイベントの期間よりかむしろ関連したイベントの発生の絶対日付とタイムを表すであろう。例えば、「０７／０４／１１、１４：２５：０９」の日付・タイムのスタンプは、２０１１年７月４日午後２時２５分９秒に発生した関連のイベントを示すだろう。タイムスタンプとイベントコードは、同様に任意の他の表現の方法を使用して表されるだろう。
【００４０】
別の実施形態において、ユーザクリックストリームが、入力ストリーム中に検出される時に定義されて置換されるコンパクトコードを持ち得るイベントの共通シーケンスを識別するために、人工知能、機械学習、データマイニングおよび統計解析にて既知の技巧を使用してアルゴリズム的に解析されるだろう。そのような解析は、個別の世帯、地区、ユーザの全集団、または、主題のデータ削減と再構成（すなわち、トランスコーディング）を効果的に提供するために適切な「コードブック」と確実に関連付けされ得る、ユーザの他のセグメントに対して適用されるだろう。
【００４１】
図３は、ユーザイベントデータを削減する方法を描写している例示的なフローチャートである。プロセスをスタートした後に、ステップ６１０において、削減されなかったデータストリームが生のイベントコードの利用可能性についてチェックされる。そのような生のイベントコードは、図２のブロック５１０に描写されて図２に対してここにて記述されるように、チャンネル番号／タイムスタンプコードであるだろう。そのようなイベントはちょうどチャンネル変更イベントを表している必要はないが、例えば、任意のＣＰＥ上で実行される任意のユーザアクションを表しているだろう。もし生のイベントコードが利用可能でないならば、プロセスはストップするだろう。しかし、もしコードが利用可能であるならば、それは、ステップ６２０において、バッファーに加算されるだろう。次に、ステップ６３０において、コードバッファーは、メタイベントが存在するかどうかを決定するために解析されるだろう。メタイベントが、例えば、１つ以上のデータ削減アルゴリズムによる削減に従う１つの生のイベントか連続のイベントであるだろう。
【００４２】
図２に関して議論したように、２つのそのようなメタイベントは、「チャンネルサーフイベント」（ＳＥ）および「前のチャンネルイベント」（ＰＣ）であるだろう。ＳＥの場合には、データ削減アルゴリズムが、各々が短い（設定可能な）時間量に対して選局されている、連続的に番号付けされた有効なチャンネル（単調に増加するまたは減少する）のシーケンスの発生を検出するように構成される。様々な実施形態において、チャンネル変更イベントは、「チャンネルサーフイベント」としてエンコードされるためには、連続的に番号付けされる必要はない。むしろ、それらは、各々がリスト順に簡単に選局されるお気に入りチャンネルの既知のリスト内で連続しているだろう。ＰＣの場合には、アルゴリズムが、直前に視察された２つのチャンネルの間をユーザがいつトグルするかを検出するだろう。もしそのようなシーケンス、または、具体的にここにて記述されていない他の削減できるシーケンスのいずれかが検出されるならば、プロセスはステップ６５０に進むだろうし、そこでは、被プロセスコードが出力されてバッファーがクリアーされる。ＳＥの場合には、ＳＥメタイベントコードおよび付随のタイムスタンプがマルチチャンネル番号および期間の代わりに出力されるだろう。ＰＣの場合には、（より短い）ＰＣメタイベントコードが実際の前のチャンネル番号の代わりに出力されるだろう。メタイベント検出アルゴリズムは、「最大限に削減できる」イベントが最大の圧縮を保証するために検出されるまで、イベントコードをバッファーに加算するだろう。例えば、「チャンネルサーフイベント」の全シーケンスは、望ましくは、ＳＥコードが送出される前に蓄積されるだろうし、これにより、全サーフィングメタイベントが完了する前にそのようなコードを送出するのを回避する。
【００４３】
ステップ６３０に戻って、もしバッファーが削減できないイベントを包含するならば、その状況が認識されるだろうし、非削減されたコードが出力されるだろうし、バッファーがステップ６５０につきクリアーされるだろう。（そのようなイベントは、この方法の目的のために「メタイベントを退化させる」と考えられるだろう。）あるいは、もしバッファーがメタイベントを示しているデータを現在包含していないが、将来そのようなデータを包含するであろうとすると、プロセスはステップ６４０へ進むであろうし、そこでは、次のコードが入力ストリームから読取られてプロセスがステップ６１０で継続する。被プロセスコードが出力されてバッファーがステップ６５０にてクリアーされた後に、プロセスはステップ６４０で継続するだろうし、そこでは、もし利用可能ならば次のコードが読取られる。
【００４４】
図３に描写されたプロセスは、ここにて記述されるように、セットトップボックス１１０または同様なデバイス上で動作しているソフトウェアまたはハードウェアに実装されるだろう。そのプロセスは、ＣＰＥとして提供される同じデバイスまたは他のデバイス上で動作している他のソフトウェアまたはハードウェアによってキャプチャ−される生のクリックストリームまたは他のユーザイベントデータに依存するだろう。削減できるメタイベントが定義され、それは、いかなる種類のユーザ入力デバイスからのユーザイベントストリームの統計解析によって決定されて適切な生のイベント・ツー・メタイベントの意味によって支援されるであろうが如く、チャンネル変更イベントおよびＳＥ／ＰＣコードを超えて、ユーザイベントの任意の共通シーケンスを利用する。データキャプチャーとデータ削減プロセスの双方は、エンハンスドテレビジョンバイナリーインターチェンジフォーマット（ＥＢＩＦ）、オープンケーブルアプリケーションプラットフォーム（ＯＣＡＰ）、または、同様なフレームワークを使用した、例えば、ミニアプリケーション（ａ．ｋ．ａ．ウィジェットまたはＴＶウィジェットソフトウェア）として実装されるだろう。
【００４５】
図４は、以前に削減されたデータからユーザイベントデータを再構成する方法描写している例示的なフローチャートである。プロセスがひとたびスタートすると、ステップ７１０にて、メタイベントを含んでいる削減されたデータストリームからのデータは、イベントコード利用可能性についてチェックされるだろう。もしイベントコードが何も見出されないならば、プロセスはストップするだろう。もしイベントコードが見出されるならば、そのコードは、ステップ７２０にて、それがメタイベントコードであるかどうかについてチェックされるだろう。もしそれがメタイベントコードならば、プロセスはステップ７３０へ継続するだろうし、そこでは、生のイベントコードがストリーム内のメタイベントコードや潜在的にはサラウンディングイベントに基づいて再構築される。（このことは、イベントの意味に依存して、削減されたイベントコードストリームのいくつかのバッファーリングを必要とするだろう。）もしＳＥ「チャンネルサーフイベント」メタイベントコードが検出されるならば、例えば、図２に対してここにて記述されるように、ＳＥコードが「チャンネルサーフィング」と一致してチャンネル選局イベントの適切なシーケンスに変換される。もしＰＣ「前のチャンネルイベント」メタイベントコードが検出されるならば、例えば、ここにて記述されるように、ＰＣコードが適切な実際のチャンネル番号およびタイムスタンプに変換される。ここにて記述されていないその他のメタイベントコードが、同様に、それぞれのメタイベントコードの意味にふさわしいように、生のクリックストリームまたは他のイベントデータに変換されるだろう。
【００４６】
生のイベントコードがステップ７３０につき再構築された後に、または、もしメタイベントコードがステップ７２０にて検出されなかったならば、プロセスはステップ７４０で継続するだろうし、そこでは、適切な生のイベントコードがデータストレージ３１０に出力される。（もしステップ７２０がＮｏ（Ｎ）を戻すならば、これらのコードは現在の（削減された）コードストリームから本質的に通過されるだろう。もしステップ７２０がＹｅｓ（Ｙ）を戻し、ステップ７３０が実行されるならば、これらのコードはメタイベントコードの意味に基づいて生のコードを再構築するだろう。）
【００４７】
最後に、ステップ７５０が実行されるだろうし、そこでは、次の入力コードがプロセスのために検索され、プロセスはステップ７１０で継続する。
【００４８】
図４に描写されたプロセスは、ネットワーク２００上のセットトップボックス１１０または同様なデバイスによって削減されて送信された後に、（以前に議論したように）集中型サーバー３００、または、同様なデバイス上で動作しているソフトウェアまたはハードウェアに実装されるだろう。
【００４９】
ここにて記述されるユーザイベントデータ削減システムおよび方法は、その他のデータ圧縮／解凍方法に対して相互に排他的ではない。様々な実施形態において、当業者に既知の追加の標準または独自の圧縮方法が、追加の圧縮を達成するためにここにて記述されるシステムおよび方法によって生成されるような既に削減されたデータに適用されるだろう。また、様々な実施形態において、辞書コーディングのようないくつかの圧縮スキームとは違って、例示のシステムおよび方法は、効果的であるシステムおよび方法について、以前に遭遇されたであろうイベントの正確なシーケンス、または、構築されるだろう全ての可能なイベントシーケンスを持つ辞書を要求する必要がない。
【００５０】
ここにて開示された実施例または実施例の一部分は、専用目的のコンピュータ、マイクロコンピュータ、ミニコンピュータ、または、例えば、プログラムされたマイクロプロセッサ、マイクロコントローラー、周辺の集積回路素子、ＣＳＩＣ（顧客専用集積回路）またはＡＳＩＣ（アプリケーション専用集積回路）または他の集積回路、ロジック回路、デジタル信号プロセッサ、ＦＰＧＡ、ＰＬＤ、ＰＬＡまたはＰＡＬのようなプログラム可能なロジックデバイス、または、ここにて記述されるプロセスのいずれかのステップを実施できる任意の他のデバイスまたはデバイスの配置であるメインフレームを含んでいる多種多様な技術のいずれかを利用するだろう。
【００５１】
ここにて記述されるオペレーションのいずれかを実施するようにコンピュータオぺレーテイングシステムを構成するインストラクションのセット（例えば、コンピュータソフトウェア）は、要求通りに、多種多様なメディアまたは媒体のいずれかに包含されるだろうということが、理解されるべきである。さらに、インストラクションのセットによってプロセスされる任意のデータは、また、多種多様なメディアまたは媒体のいずれかに包含されるだろう。すなわち、ここにて記述される実施例に使用されるインストラクションのセットまたはデータを保持するために利用される特別な媒体（例えば、メモリ）は、例えば、様々な物理形式または伝送のいずれかを呈するだろう。例示として、媒体は、コンパクトディスク、ＤＶＤ、集積回路、ハードディスク、フロッピーディスク（登録商標）、光学ディスク、磁気テープ、ＲＡＭ、ＲＯＭ、ＰＲＯＭ、ＥＰＲＯＭ、有線、ケーブル、ファイバー、コミュニケーションチャンネル、衛星伝送または他のリモート伝送、並びに、コンピュータによって読取られるだろう任意の他の媒体またはデータのソースの形式であるだろう。
【００５２】
実行可能なコンピュータソフトウェアを動作させているコンピュータのように、ここにて記述される様々なコンポーネンは、リモート的に設置されるだろうし、１つ以上のコンピュータネットワークに渡って電子伝送経由で相互にコミュニケートするだろうということが、また、理解されるべきである。ここにて参照されるように、ネットワークは、限定ではないが、広域ネットワーク（ＷＡＮ）、ローカルエリアネットワーク（ＬＡＮ）、インターネットのようなグローバルネットワーク、公衆交換電話ネットワークのような電話ネットワーク、無線コミュニケーションネットワーク、携帯電話ネットワーク、イントラネットなど、または、それらの任意の組み合わせを含むだろう。様々な実施形態において、ネットワークは、スタンドアローンネットワークとしてまたは互いに協力してオぺレーテイングする、１個または任意の数の上述の例示タイプのネットワークを含むだろう。ここにおける用語「ネットワーク」の使用は、そのネットワークを単一のネットワークに制限することを意図していない。
【００５３】
当業者にとっては、本発明が広範囲なユーティリティおよびアプリケーションに影響を与えることが容易に理解されるであろう。ここにて記述されたもの以外の本発明の多くの実施例と適応、並びに、多くの変形や修正および等価な配置は、発明の要旨または範囲から逸脱しないで、本発明とその上記記述から明らかであろうし、または、それらにより合理的に示唆されるであろう。
【００５４】
前述事項は、この発明の実施形態を例証して記述しているが、本発明は、ここにて開示された構成に限定されないことが理解されるべきである。発明は、その精神または必須の性質から逸脱しないで他の特定の形式にて具体化することができる。
【図１】
2015511430.tif 000003
【図２】
2015511430.tif 000004
【図３】
2015511430.tif 000005
【図４】
2015511430.tif 000006
【国際調査報告】
2015511430.tif 000007