(57)【要約】メディアアセットを視聴しているユーザに推奨を提供する、メディアガイドアプリケーションのための方法およびシステムが、説明される。例えば、メディアガイドアプリケーションは、ユーザのプロファイルに基づいて、メディアアセットの推奨を提供してもよく、ユーザのアクションおよびメディアアセットのコンテンツ内のキーワードに基づいて、ユーザのプロファイルを修正してもよい。例えば、メディアガイドアプリケーションは、メディアアセットがユーザに関心があるかどうかを判定してもよく、それに応答して、メディアアセット内のキーワードに基づいて、ユーザのプロファイルを更新してもよい。
2019507437.tif 000002
【特許請求の範囲】
【請求項１】
メディアアセットを推奨するための方法であって、前記方法は、
ユーザ入力デバイスから、第１のメディアアセットの第１のユーザ選択を受信するステップであって、前記第１のメディアアセットは、前記第１のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第１のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、データ構造と関連付けられる、ステップと、
前記第１のメディアアセットの第１のユーザ選択の受信に応答して、
制御回路を使用して、表示のために、前記第１のメディアアセットを生成するステップと、
前記複数のキーワードアセットおよび前記第１の媒体と関連付けられた複数の加重に基づいて、前記ユーザと関連付けられたユーザプロファイルを修正するステップと、
前記ユーザプロファイルに基づいて、前記制御回路を使用して、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するステップと、
前記ユーザ入力デバイスから、前記ユーザによる前記第２のメディアアセットの第２のユーザ選択を受信するステップと、
前記第２のメディアアセットの第２のユーザ選択の受信に応答して、前記制御回路を使用して、表示のために、前記第２のメディアアセットを生成するステップと、
ある期間後、前記ユーザ入力デバイスから、前記第２のメディアアセットの表示を第３のメディアアセットの表示に変更するための第３のユーザ選択を受信するステップと、
前記制御回路を使用して、前記期間が閾値時間を上回るかどうかを判定するステップと、
前記期間が前記閾値時間を上回ることの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するステップと、
前記期間が前記閾値時間を上回らないことの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するステップと
を含む、方法。
【請求項２】
キーワードは、メディアアセット内に生じる単語である、請求項１に記載の方法。
【請求項３】
前記データ構造は、キーワードに関して前記第１のメディアアセットのトランスクリプトを分析することによって作成され、前記トランスクリプトは、音声認識を前記第１のメディアアセットと関連付けられたオーディオに適用することによって作成されたテキストおよび前記第１のメディアアセットと関連付けられたクローズドキャプションのうちの１つである、請求項１に記載の方法。
【請求項４】
加重は、前記加重に対応するキーワードが生じる頻度に対応し、前記頻度は、前記キーワードが単位時間あたりに生じる平均回数である、請求項１に記載の方法。
【請求項５】
前記ユーザプロファイルに基づいて、表示のために、前記第２のメディアアセットの推奨を前記ユーザに生成するステップは、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すステップと、
制御回路を使用して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するステップと、
前記ユーザプロファイルおよび前記第２のデータ構造が類似することの判定に応答して、表示のために、制御回路を使用して、前記第２のメディアアセットの推奨を前記ユーザに生成するステップと
を含む、請求項１に記載の方法。
【請求項６】
前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するステップは、
前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在するキーワード毎に、第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第１の加重と前記第１のキーワードに対応する前記第２のデータ構造内の複数の加重の第２の加重との間の差異を判定するステップと、
前記ユーザプロファイルおよび前記第２のデータ構造のうちの１つ内に存在し、前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在しない、キーワード毎に、第３のキーワードに対応する、前記ユーザプロファイルまたは前記第２のデータ構造内の複数の加重の第３の加重の値を判定するステップと、
前記差異および値に基づいて、距離を判定するステップと、
前記距離が閾値距離を上回るかどうかを判定するステップと、
前記距離が前記閾値距離を上回ることの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似しないことを判定するステップと、
前記距離が前記閾値距離を上回らないことの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似することを判定するステップと
を含む、請求項５に記載の方法。
【請求項７】
前記閾値時間は、固定時間量および前記第２のメディアアセットの長さに対する時間のうちの１つである、請求項１に記載の方法。
【請求項８】
前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するステップは、
前記第２のメディアアセットのコンテンツ内に生じる第２の複数のキーワードと、前記第２の複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する第２の複数の加重とを含む、第２のデータ構造を読み出すステップと、
前記第２のデータ構造および前記ユーザプロファイルの両方内に生じるキーワード毎に、第１のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第１の加重を前記第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重に追加するステップと、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の第２の複数のキーワードの第２のキーワードおよび前記第２のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第３の加重を前記ユーザプロファイルに追加するステップと
を含む、請求項１に記載の方法。
【請求項９】
前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するステップは、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すステップと、
前記第２のデータ構造および前記ユーザプロファイルの両方内に存在するキーワード毎に、あるキーワードに対応する前記第２のデータ構造内の複数の加重の第１の加重を、前記キーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重から減算するステップと、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の複数のキーワードのキーワードおよび前記キーワードに対応する前記第２のデータ構造内の複数の加重の加重の負値を前記ユーザプロファイルに追加するステップと
を含む、請求項１に記載の方法。
【請求項１０】
前記第２のメディアアセットは、ライブビデオストリームである、請求項１に記載の方法。
【請求項１１】
メディアアセットを推奨するためのシステムであって、前記システムは、制御回路を備え、前記制御回路は、
ユーザ入力デバイスから、第１のメディアアセットの第１のユーザ選択を受信することであって、前記第１のメディアアセットは、前記第１のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第１のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、データ構造と関連付けられる、ことと、
前記第１のメディアアセットの第１のユーザ選択の受信に応答して、
制御回路を使用して、表示のために、前記第１のメディアアセットを生成することと、
前記複数のキーワードアセットおよび前記第１の媒体と関連付けられた複数の加重に基づいて、前記ユーザと関連付けられたユーザプロファイルを修正することと、
前記ユーザプロファイルに基づいて、前記制御回路を使用して、表示のために、第２のメディアアセットの推奨を前記ユーザに生成することと、
前記ユーザ入力デバイスから、前記ユーザによる前記第２のメディアアセットの第２のユーザ選択を受信することと、
前記第２のメディアアセットの第２のユーザ選択の受信に応答して、前記制御回路を使用して、表示のために、前記第２のメディアアセットを生成することと、
ある期間後、前記ユーザ入力デバイスから、前記第２のメディアアセットの表示を第３のメディアアセットの表示に変更するための第３のユーザ選択を受信することと、
前記制御回路を使用して、前記期間が閾値時間を上回るかどうかを判定することと、
前記期間が前記閾値時間を上回ることの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正することと、
前記期間が前記閾値時間を上回らないことの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正することと
を行うように構成される、システム。
【請求項１２】
キーワードは、メディアアセット内に生じる単語である、請求項１１に記載のシステム。
【請求項１３】
前記第１のメディアアセットと関連付けられたデータ構造は、キーワードに関して前記第１のメディアアセットのトランスクリプトを分析することによって作成され、前記トランスクリプトは、音声認識を前記第１のメディアアセットと関連付けられたオーディオに適用することによって作成されたテキストおよび前記第１のメディアアセットと関連付けられたクローズドキャプションのうちの１つである、請求項１１に記載のシステム。
【請求項１４】
加重は、前記加重に対応するキーワードが生じる頻度に対応し、前記頻度は、前記キーワードが単位時間あたりに生じる平均回数である、請求項１１に記載のシステム。
【請求項１５】
制御回路はさらに、前記ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するとき、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことと、
制御回路を使用して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定することと、
前記ユーザプロファイルおよび前記第２のデータ構造が類似することの判定に応答して、表示のために、制御回路を使用して、前記第２のメディアアセットの推奨を前記ユーザに生成することと
を行うように構成される、請求項１１に記載のシステム。
【請求項１６】
制御回路はさらに、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するとき、
前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在するキーワード毎に、第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第１の加重と前記第１のキーワードに対応する前記第２のデータ構造内の複数の加重の第２の加重との間の差異を判定することと、
前記ユーザプロファイルおよび前記第２のデータ構造のうちの１つ内に存在し、前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在しない、キーワード毎に、第２のキーワードに対応する前記ユーザプロファイルまたは前記第２のデータ構造内の複数の加重の第３の加重の値を判定することと、
前記差異および値に基づいて、距離を判定することと、
前記距離が閾値距離を上回るかどうかを判定することと、
前記距離が前記閾値距離を上回ることの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似しないことを判定することと、
前記距離が前記閾値距離を上回らないことの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似することを判定することと
を行うように構成される、請求項１５に記載のシステム。
【請求項１７】
前記閾値時間は、固定時間量および前記第２のメディアアセットの長さに対する時間のうちの１つである、請求項１１に記載のシステム。
【請求項１８】
制御回路はさらに、前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するとき、
前記第２のメディアアセットのコンテンツ内に生じる第２の複数のキーワードと、前記第２の複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する第２の複数の加重とを含む、第２のデータ構造を読み出すことと、
前記第２のデータ構造および前記ユーザプロファイルの両方内に生じるキーワード毎に、第１のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第１の加重を前記第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重に追加することと、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の第２の複数のキーワードの第２のキーワードおよび前記第２のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第３の加重を前記ユーザプロファイルに追加することと
を行うように構成される、請求項１１に記載のシステム。
【請求項１９】
制御回路はさらに、前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するとき、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことと、
前記第２のデータ構造および前記ユーザプロファイルの両方内に存在するキーワード毎に、あるキーワードに対応する前記第２のデータ構造内の複数の加重の第１の加重を、前記キーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重から減算することと、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の複数のキーワードのキーワードおよび前記キーワードに対応する前記第２のデータ構造内の複数の加重の加重の負値を前記ユーザプロファイルに追加することと
を行うように構成される、請求項１１に記載のシステム。
【請求項２０】
前記第２のメディアアセットは、ライブビデオストリームである、請求項１１に記載のシステム。
【請求項２１】
メディアアセットを推奨するためのシステムであって、前記システムは、
ユーザ入力デバイスから、第１のメディアアセットの第１のユーザ選択を受信するための手段であって、前記第１のメディアアセットは、前記第１のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第１のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、データ構造と関連付けられる、手段と、
前記第１のメディアアセットの第１のユーザ選択の受信に応答して、
制御回路を使用して、表示のために、前記第１のメディアアセットを生成するための手段と、
前記複数のキーワードアセットおよび前記第１の媒体と関連付けられた複数の加重に基づいて、前記ユーザと関連付けられたユーザプロファイルを修正するための手段と、
前記ユーザプロファイルに基づいて、前記制御回路を使用して、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するための手段と、
前記ユーザ入力デバイスから、前記ユーザによる前記第２のメディアアセットの第２のユーザ選択を受信するための手段と、
前記第２のメディアアセットの第２のユーザ選択の受信に応答して、前記制御回路を使用して、表示のために、前記第２のメディアアセットを生成するための手段と、
ある期間後、前記ユーザ入力デバイスから、前記第２のメディアアセットの表示を第３のメディアアセットの表示に変更するための第３のユーザ選択を受信するための手段と、
前記制御回路を使用して、前記期間が閾値時間を上回るかどうかを判定するための手段と、
前記期間が前記閾値時間を上回ることの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するための手段と、
前記期間が前記閾値時間を上回らないことの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するための手段と
を備える、システム。
【請求項２２】
キーワードは、メディアアセット内に生じる単語である、請求項２１に記載のシステム。
【請求項２３】
前記データ構造は、キーワードに関して前記第１のメディアアセットのトランスクリプトを分析することによって作成され、前記トランスクリプトは、音声認識を前記第１のメディアアセットと関連付けられたオーディオに適用することによって作成されたテキストおよび前記第１のメディアアセットと関連付けられたクローズドキャプションのうちの１つである、請求項２１に記載のシステム。
【請求項２４】
加重は、前記加重に対応するキーワードが生じる頻度に対応し、前記頻度は、前記キーワードが単位時間あたりに生じる平均回数である、請求項２１に記載のシステム。
【請求項２５】
前記ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するための手段はさらに、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すための手段と、
制御回路を使用して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するための手段と、
前記ユーザプロファイルおよび前記第２のデータ構造が類似することの判定に応答して、表示のために、制御回路を使用して、前記第２のメディアアセットの推奨を前記ユーザに生成するための手段と
を備える、請求項２１に記載のシステム。
【請求項２６】
前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するための手段はさらに、
前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在するキーワード毎に、第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第１の加重と前記第１のキーワードに対応する前記第２のデータ構造内の複数の加重の第２の加重との間の差異を判定するための手段と、
前記ユーザプロファイルおよび前記第２のデータ構造のうちの１つ内に存在し、前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在しない、キーワード毎に、第２のキーワードに対応する前記ユーザプロファイルまたは前記第２のデータ構造内の複数の加重の第３の加重の値を判定するための手段と、
前記差異および値に基づいて、距離を判定するための手段と、
前記距離が閾値距離を上回るかどうかを判定するための手段と、
前記距離が前記閾値距離を上回ることの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似しないことを判定するための手段と、
前記距離が前記閾値距離を上回らないことの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似することを判定するための手段と
を備える、請求項２５に記載のシステム。
【請求項２７】
前記閾値時間は、固定時間量および前記第２のメディアアセットの長さに対する時間のうちの１つである、請求項２１に記載のシステム。
【請求項２８】
前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するための手段はさらに、
前記第２のメディアアセットのコンテンツ内に生じる第２の複数のキーワードと、前記第２の複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する第２の複数の加重とを含む、第２のデータ構造を読み出すための手段と、
前記第２のデータ構造および前記ユーザプロファイルの両方内に生じるキーワード毎に、第１のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第１の加重を前記第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重に追加するための手段と、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の第２の複数のキーワードの第２のキーワードおよび前記第２のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第３の加重を前記ユーザプロファイルに追加するための手段と
を備える、請求項２１に記載のシステム。
【請求項２９】
前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するための手段はさらに、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すための手段と、
前記第２のデータ構造および前記ユーザプロファイルの両方内に存在するキーワード毎に、あるキーワードに対応する前記第２のデータ構造内の複数の加重の第１の加重を、前記キーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重から減算するための手段と、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の複数のキーワードのキーワードおよび前記キーワードに対応する前記第２のデータ構造内の複数の加重の加重の負値を前記ユーザプロファイルに追加するための手段と
を備える、請求項２１に記載のシステム。
【請求項３０】
前記第２のメディアアセットは、ライブビデオストリームである、請求項２１に記載のシステム。
【請求項３１】
メディアアセットを推奨するための方法であって、前記方法は、
第１のメディアアセットの第１のユーザ選択を受信するステップであって、前記第１のメディアアセットは、前記第１のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第１のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、データ構造と関連付けられる、ステップと、
前記第１のメディアアセットの第１のユーザ選択の受信に応答して、
表示のために、前記第１のメディアアセットを生成するステップと、
前記複数のキーワードアセットおよび前記第１の媒体と関連付けられた複数の加重に基づいて、前記ユーザと関連付けられたユーザプロファイルを修正するステップと、
前記ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するステップと、
前記ユーザによる前記第２のメディアアセットの第２のユーザ選択を受信するステップと、
前記第２のメディアアセットの第２のユーザ選択の受信に応答して、表示のために、前記第２のメディアアセットを生成するステップと、
ある期間後、前記第２のメディアアセットの表示を第３のメディアアセットの表示に変更するための第３のユーザ選択を受信するステップと、
前記期間が閾値時間を上回るかどうかを判定するステップと、
前記期間が前記閾値時間を上回ることの判定に応答して、前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するステップと、
前記期間が前記閾値時間を上回らないことの判定に応答して、前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するステップと
を含む、方法。
【請求項３２】
キーワードは、メディアアセット内に生じる単語である、請求項３１に記載の方法。
【請求項３３】
前記データ構造は、キーワードに関して前記第１のメディアアセットのトランスクリプトを分析することによって作成され、前記トランスクリプトは、音声認識を前記第１のメディアアセットと関連付けられたオーディオに適用することによって作成されたテキストおよび前記第１のメディアアセットと関連付けられたクローズドキャプションのうちの１つである、請求項３１または３２に記載の方法。
【請求項３４】
加重は、前記加重に対応するキーワードが生じる頻度に対応し、前記頻度は、前記キーワードが単位時間あたりに生じる平均回数である、請求項３１−３３のいずれか１項に記載の方法。
【請求項３５】
前記ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するステップは、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すステップと、
前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するステップと、
前記ユーザプロファイルおよび前記第２のデータ構造が類似することの判定に応答して、表示のために、前記第２のメディアアセットの推奨を前記ユーザに生成するステップと
を含む、請求項３１−３４のいずれか１項に記載の方法。
【請求項３６】
前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するステップは、
前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在するキーワード毎に、第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第１の加重と前記第１のキーワードに対応する前記第２のデータ構造内の複数の加重の第２の加重との間の差異を判定するステップと、
前記ユーザプロファイルおよび前記第２のデータ構造のうちの１つ内に存在し、前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在しない、キーワード毎に、第２のキーワードに対応する前記ユーザプロファイルまたは前記第２のデータ構造内の複数の加重の第３の加重の値を判定するステップと、
前記差異および値に基づいて、距離を判定するステップと、
前記距離が閾値距離を上回るかどうかを判定するステップと、
前記距離が前記閾値距離を上回ることの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似しないことを判定するステップと、
前記距離が前記閾値距離を上回らないことの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似することを判定するステップと
を含む、請求項３５に記載の方法。
【請求項３７】
前記閾値時間は、固定時間量および前記第２のメディアアセットの長さに対する時間のうちの１つである、請求項３１−３６のいずれか１項に記載の方法。
【請求項３８】
前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するステップは、
前記第２のメディアアセットのコンテンツ内に生じる第２の複数のキーワードと、前記第２の複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する第２の複数の加重とを含む、第２のデータ構造を読み出すステップと、
前記第２のデータ構造および前記ユーザプロファイルの両方内に生じるキーワード毎に、第１のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第１の加重を前記第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重に追加するステップと、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の第２の複数のキーワードの第２のキーワードおよび前記第２のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第３の加重を前記ユーザプロファイルに追加するステップと
を含む、請求項３１−３７のいずれか１項に記載の方法。
【請求項３９】
前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するステップは、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すステップと、
前記第２のデータ構造および前記ユーザプロファイルの両方内に存在するキーワード毎に、あるキーワードに対応する前記第２のデータ構造内の複数の加重の第１の加重を、前記キーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重から減算するステップと、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の複数のキーワードのキーワードおよび前記キーワードに対応する前記第２のデータ構造内の複数の加重の加重の負値を前記ユーザプロファイルに追加するステップと
を含む、請求項３１−３８のいずれか１項に記載の方法。
【請求項４０】
前記第２のメディアアセットは、ライブビデオストリームである、請求項３１−３９のいずれか１項に記載の方法。
【請求項４１】
メディアアセットを推奨するためのその上にエンコードされた機械可読命令を備える、非一過性機械可読媒体であって、前記命令は、
ユーザ入力デバイスから、第１のメディアアセットの第１のユーザ選択を受信するための命令であって、前記第１のメディアアセットは、前記第１のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第１のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、データ構造と関連付けられる、命令と、
前記第１のメディアアセットの第１のユーザ選択の受信に応答して、
制御回路を使用して、表示のために、前記第１のメディアアセットを生成するための命令と、
前記複数のキーワードアセットおよび前記第１の媒体と関連付けられた複数の加重に基づいて、前記ユーザと関連付けられたユーザプロファイルを修正するための命令と、
前記ユーザプロファイルに基づいて、前記制御回路を使用して、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するための命令と、
前記ユーザ入力デバイスから、前記ユーザによる前記第２のメディアアセットの第２のユーザ選択を受信するための命令と、
前記第２のメディアアセットの第２のユーザ選択の受信に応答して、前記制御回路を使用して、表示のために、前記第２のメディアアセットを生成するための命令と、
ある期間後、前記ユーザ入力デバイスから、前記第２のメディアアセットの表示を第３のメディアアセットの表示に変更するための第３のユーザ選択を受信するための命令と、
前記制御回路を使用して、前記期間が閾値時間を上回るかどうかを判定するための命令と、
前記期間が前記閾値時間を上回ることの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するための命令と、
前記期間が前記閾値時間を上回らないことの判定に応答して、制御回路を使用して、前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させることと、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加することとによって、前記ユーザプロファイルを修正するための命令と
を備える、非一過性機械可読媒体。
【請求項４２】
キーワードは、メディアアセット内に生じる単語である、請求項４１に記載の非一過性機械可読媒体。
【請求項４３】
前記第１のメディアアセットと関連付けられたデータ構造は、キーワードに関して前記第１のメディアアセットのトランスクリプトを分析することによって作成され、前記トランスクリプトは、音声認識を前記第１のメディアアセットと関連付けられたオーディオに適用することによって作成されたテキストおよび前記第１のメディアアセットと関連付けられたクローズドキャプションのうちの１つである、請求項４１に記載の非一過性機械可読媒体。
【請求項４４】
加重は、前記加重に対応するキーワードが生じる頻度に対応し、前記頻度は、前記キーワードが単位時間あたりに生じる平均回数である、請求項４１に記載の非一過性機械可読媒体。
【請求項４５】
前記前記ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨を前記ユーザに生成するための命令はさらに、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すための命令と、
制御回路を使用して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するための命令と、
前記ユーザプロファイルおよび前記第２のデータ構造が類似することの判定に応答して、表示のために、制御回路を使用して、前記第２のメディアアセットの推奨を前記ユーザに生成するための命令と
を備える、請求項４１に記載の非一過性機械可読媒体。
【請求項４６】
前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似するかどうかを判定するための命令はさらに、
前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在するキーワード毎に、第１のキーワードに対応する前記ユーザプロファイル内の複数の加重の第１の加重と前記第１のキーワードに対応する前記第２のデータ構造内の複数の加重の第２の加重との間の差異を判定するための命令と、
前記ユーザプロファイルおよび前記第２のデータ構造のうちの１つ内に存在し、前記ユーザプロファイルおよび前記第２のデータ構造の両方内に存在しない、キーワード毎に、第２のキーワードに対応する前記ユーザプロファイルまたは前記第２のデータ構造内の複数の加重の第３の加重の値を判定するための命令と、
前記差異および値に基づいて、距離を判定するための命令と、
前記距離が閾値距離を上回るかどうかを判定するための命令と、
前記距離が前記閾値距離を上回ることの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似しないことを判定するための命令と、
前記距離が前記閾値距離を上回らないことの判定に応答して、前記ユーザプロファイルデータおよび前記第２のデータ構造データが類似することを判定するための命令と
を備える、請求項４５に記載の非一過性機械可読媒体。
【請求項４７】
前記閾値時間は、固定時間量および前記第２のメディアアセットの長さに対する時間のうちの１つである、請求項４１に記載の非一過性機械可読媒体。
【請求項４８】
前記第２のメディアアセットのコンテンツ内に生じるキーワードに対応する前記ユーザプロファイル内の複数の加重を増加させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するための命令はさらに、
前記第２のメディアアセットのコンテンツ内に生じる第２の複数のキーワードと、前記第２の複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する第２の複数の加重とを含む、第２のデータ構造を読み出すための命令と、
前記第２のデータ構造および前記ユーザプロファイルの両方内に生じるキーワード毎に、第１のキーワードに対応する前記第２のデータ構造内の第２の複数の加重の第１の加重を、前記第１のキーワードに対応する前記ユーザプロファイル内の第２の複数の加重の第２の加重に追加するための命令と、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の前記第２の複数のキーワードの第２のキーワードおよび前記第２のキーワードに対応する前記第２のデータ構造内の複数の加重の第３の加重を前記ユーザプロファイルに追加するための命令と
を備える、請求項４１に記載の非一過性機械可読媒体。
【請求項４９】
前記第２のメディアアセットのコンテンツ内のキーワードに対応する前記ユーザプロファイル内の複数の加重を減少させ、前記第２のメディアアセットのコンテンツ内に生じ、前記ユーザプロファイル内にない、キーワードを追加するための命令はさらに、
前記第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、前記複数のキーワードの各個別のキーワードが前記第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すための命令と、
前記第２のデータ構造および前記ユーザプロファイルの両方内に存在するキーワード毎に、あるキーワードに対応する前記第２のデータ構造内の複数の加重の第１の加重を、前記キーワードに対応する前記ユーザプロファイル内の複数の加重の第２の加重から減算するための命令と、
前記第２のデータ構造内に存在し、前記ユーザプロファイル内に存在しない、キーワード毎に、前記第２のデータ構造内の複数のキーワードのキーワードおよび前記キーワードに対応する前記第２のデータ構造内の複数の加重の加重の負値を前記ユーザプロファイルに追加するための命令と
を備える、請求項４１に記載の非一過性機械可読媒体。
【請求項５０】
前記第２のメディアアセットは、ライブビデオストリームである、請求項４１に記載の非一過性機械可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２０１６年２月２９日に出願された米国出願Ｕ．Ｓ．Ｓ．Ｎ．１５／０５６，５７８に対する優先権およびその利益を主張するものであり、該米国出願の開示は、その全体が参照により本明細書中に援用される。
【背景技術】
【０００２】
従来のシステムでは、ユーザは、多数のメディアコンテンツへのアクセスを有する。そのようなコンテンツを視聴している間、ユーザは、関心がある他のメディアコンテンツの推奨を受信することを所望し得る。例えば、ビデオを視聴している間、ユーザは、視聴するための他の関連ビデオの推奨を受信することを所望し得る。現在の方法およびシステムは、メディアアセットのコンテンツ内の情報の全てを利用して、メディアアセットが推奨されるべきであるかどうかを判定しない。
【発明の概要】
【課題を解決するための手段】
【０００３】
故に、メディアアセットを視聴しているユーザにメディアアセットの推奨を提供する、メディアガイドアプリケーションのための方法およびシステムが、本明細書に説明される。メディアガイドアプリケーションは、推奨するための他のメディアアセットを判定するとき、ユーザアクションおよびメディアアセットのコンテンツ内のキーワードを利用してもよい。さらに、メディアガイドアプリケーションは、ライブストリーミングメディアアセットを推奨してもよい。例えば、メディアガイドアプリケーションは、ユーザが視聴している第１のメディアガイドアプリケーションに関連するライブストリーミングメディアアセットを識別してもよく、ライブストリーミングメディアアセットをユーザに推奨してもよい。より具体的には、メディアガイドアプリケーションは、メディアアセットのコンテンツ内のキーワードおよびユーザのアクションに基づいて、第１のメディアアセットを視聴しているユーザに関連するライブストリーミングメディアアセットを識別および推奨してもよい。
【０００４】
例えば、ユーザが、我々の太陽系内の準惑星についてのビデオ「Ｐｌｕｔｏ」を選択し得る。メディアガイドアプリケーションは、表示のために、「Ｐｌｕｔｏ」を生成してもよい。メディアガイドアプリケーションは、「Ｐｌｕｔｏ」内に生じるキーワードおよび各キーワードが「Ｐｌｕｔｏ」内で生じる回数を含むようにユーザのプロファイルを修正してもよい。メディアガイドアプリケーションは、表示のために、そのコンテンツ内に類似キーワードを有する、他のビデオの推奨を生成してもよい。１つのそのようなビデオは、キーワード「Ｐｌｕｔｏ」が数回生じる、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」である。
【０００５】
「Ｐｌｕｔｏ」を視聴後、ユーザは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」等のメディアガイドアプリケーションによって推奨されるビデオのうちの１つを選択することによって、準惑星についてさらに調べることを決定し得る。メディアガイドアプリケーションは、表示のために、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を生成してもよく、表示のために、他のビデオの推奨を生成してもよい。「Ｐｌｕｔｏ」および「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」は、同一のキーワードのうちのいくつかを有するが、ネズミとイヌの友情についてのものである、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツは、明らかに、準惑星へのユーザの関心に関連しない。
【０００６】
短時間にわたって「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を視聴後、ユーザは、そのビデオに関心がないことを認識し得、「ＮＡＳＡ：Ｐｌｕｔｏ」等の推奨からの別のビデオを選択し得る。メディアガイドアプリケーションは、ユーザが「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を視聴した期間が短かったことを判定してもよく、それに応答して、将来的推奨がユーザの関心により整合されるように、ユーザのプロファイルを修正してもよい。具体的には、メディアガイドアプリケーションは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツ内に生じるキーワードおよび各キーワードが「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」内で生じる回数でユーザのプロファイルを更新し、類似ビデオの将来的推奨を防止してもよい。例えば、メディアガイドアプリケーションは、「ｄｏｇ」および「ｂｏｎｅ」等のキーワードをユーザプロファイルに追加し、これらのキーワードの多数の発生を伴うビデオがユーザに推奨されるべきではないことを示してもよい。
【０００７】
「ＮＡＳＡ：Ｐｌｕｔｏ」のユーザの選択に応答して、メディアガイドアプリケーションは、表示のために、「ＮＡＳＡ：Ｐｌｕｔｏ」および他のビデオの推奨を生成してもよい。推奨は、「ｄｏｇ」および「ｂｏｎｅ」等のキーワードの多数の発生を伴うビデオがもはや推奨されないため、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」に類似するビデオを含まないものとなり得る。
【０００８】
「ＮＡＳＡ：Ｐｌｕｔｏ」は、ユーザに関心があるものであるため、ユーザは、ビデオの全体を視聴し得る。メディアガイドアプリケーションは、ユーザが「ＮＡＳＡ：Ｐｌｕｔｏ」を長時間にわたって視聴したことを判定してもよく、それに応答して、類似ビデオの将来的推奨を増加させるようにユーザプロファイルを修正してもよい。具体的には、メディアガイドアプリケーションは、「ＮＡＳＡ：Ｐｌｕｔｏ」のコンテンツ内で生じるキーワードおよび各キーワードが「ＮＡＳＡ：Ｐｌｕｔｏ」内で生じる回数でユーザのプロファイルを更新してもよい。例えば、メディアガイドアプリケーションは、「ＮＡＳＡ」および「ｓｐａｃｅ」等のキーワードをユーザのプロファイルに追加し、これらのキーワードの発生を伴うビデオがユーザに推奨されるべきであることを示してもよい。
【０００９】
いくつかの側面では、メディアガイドアプリケーションは、第１のメディアアセットの第１のユーザ選択を受信してもよく、第１のメディアアセットは、第１のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第１のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、データ構造と関連付けられる。例えば、メディアガイドアプリケーションは、第１のビデオ内に生じるキーワードと、各キーワードの発生回数を反映する加重とを含む、データ構造と関連付けられる、第１のビデオのユーザの選択を受信してもよい。メディアガイドアプリケーションは、第１のメディアアセットの第１のユーザ選択の受信に応答して、表示のために、第１のメディアアセットを生成してもよい。例えば、メディアガイドアプリケーションは、第１のビデオのユーザの選択に応答して、表示のために、第１のビデオを生成してもよい。
【００１０】
メディアガイドアプリケーションは、複数のキーワードアセットおよび第１の媒体と関連付けられた複数の加重に基づいて、ユーザと関連付けられたユーザプロファイルを修正してもよい。例えば、メディアガイドアプリケーションは、第１のビデオ内に生じるキーワードと、その対応する加重に基づいて、ユーザと関連付けられたユーザプロファイルを修正してもよい。
【００１１】
メディアガイドアプリケーションは、ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨をユーザに生成してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルに基づいて、表示のために、ユーザのための第２のビデオの推奨を生成してもよい。メディアガイドアプリケーションは、ユーザによる第２のメディアアセットの第２のユーザ選択を受信してもよい。例えば、メディアガイドアプリケーションは、第２のビデオのユーザの選択を受信してもよい。メディアガイドアプリケーションは、第２のメディアアセットの第２のユーザ選択の受信に応答して、表示のために、第２のメディアアセットを生成してもよい。例えば、メディアガイドアプリケーションは、第２のビデオのユーザ選択に応答して、表示のために、第２のビデオを生成してもよい。
【００１２】
メディアガイドアプリケーションは、ある期間後、第２のメディアアセットの表示を第３のメディアアセットの表示に変更するための第３のユーザ選択を受信してもよい。例えば、ある期間後、ユーザは、第３のビデオを選択してもよく、メディアガイドアプリケーションは、第３のビデオのユーザの選択を受信してもよい。メディアガイドアプリケーションは、期間が閾値時間を上回るかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザが第２のビデオの視聴に費やした期間が閾値時間を上回るかどうかを判定してもよい。
【００１３】
メディアガイドアプリケーションは、期間が閾値時間を上回ることの判定に応答して、第２のメディアアセットのコンテンツ内に生じるキーワードに対応するユーザプロファイル内の複数の加重を増加させ、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加することによって、ユーザプロファイルを修正してもよい。例えば、メディアガイドアプリケーションは、ユーザが閾値時間より長い時間にわたって第２のビデオを視聴したことの判定に応答して、第２のビデオ内に生じるキーワードに対応するユーザプロファイル内の加重を増加させ、第２のビデオ内に生じ、ユーザプロファイル内にまだない、キーワードおよびその対応する加重を追加することによって、ユーザプロファイルを修正してもよい。
【００１４】
メディアガイドアプリケーションは、期間が閾値時間を上回らないことの判定に応答して、第２のメディアアセットのコンテンツ内のキーワードに対応するユーザプロファイル内の複数の加重を減少させ、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加することによって、ユーザプロファイルを修正してもよい。例えば、メディアガイドアプリケーションは、ユーザが閾値時間より長い時間にわたって第２のビデオを視聴しなかったことの判定に応答して、第２のビデオ内に生じるキーワードに対応するユーザプロファイル内の加重を減少させ、第２のビデオ内に生じ、ユーザプロファイル内にまだない、キーワードおよびその対応する加重の負値を追加することによって、ユーザプロファイルを修正してもよい。
【００１５】
いくつかの実施形態では、キーワードは、メディアアセット内に生じる単語であってもよい。例えば、第１のビデオと関連付けられたキーワードは、第１のビデオ内に生じる単語である。
【００１６】
いくつかの実施形態では、データ構造は、キーワードに関して第１のメディアアセットのトランスクリプトを分析することによって作成されてもよく、トランスクリプトは、音声認識を第１のメディアアセットと関連付けられたオーディオに適用することによって作成されたテキストおよび第１のメディアアセットと関連付けられたクローズドキャプション／字幕のうちの１つである。例えば、第１のビデオと関連付けられたデータ構造は、第１のビデオのトランスクリプトを分析することによって作成されてもよく、トランスクリプトは、音声認識を第１のビデオのオーディオに適用することによって作成されたテキストまたは第１のビデオと関連付けられたクローズドキャプション／字幕のいずれかである。
【００１７】
いくつかの実施形態では、データ構造は、メディアアセットを囲繞する表示内の単語を使用して作成されてもよい。例えば、ビデオのタイトル（例えば、タイトル５０２ａ、５０２ｂ、５０２ｃ（図５））内の単語が、ビデオと関連付けられたデータ構造を作成するために使用されてもよい。
【００１８】
いくつかの実施形態では、データ構造は、光学文字認識等の自動コンテンツ認識技法を使用して、メディアアセットのコンテンツに見出される単語を使用して作成されてもよい。例えば、ＰｏｗｅｒＰｏｉｎｔ提示のビデオと関連付けられたデータ構造は、光学文字認識を使用して識別されたＰｏｗｅｒＰｏｉｎｔ提示内の単語を含んでもよい。
【００１９】
いくつかの実施形態では、加重は、加重に対応するキーワードが生じる頻度に対応してもよく、頻度は、キーワードが単位時間あたりに生じる平均回数である。例えば、第１のビデオ内の各キーワードの発生回数に対応する加重は、キーワードが第１のビデオ内に現れる頻度である。例えば、キーワード「Ｐｌｕｔｏ」は、１分あたり３回の平均頻度で第１のビデオ内に生じる場合、第１のデータ構造内に３の加重を有してもよい。
【００２０】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザプロファイルに基づいて、第２のメディアアセットと関連付けられたデータとユーザプロファイル内のデータを比較することによって、表示のために、第２のメディアアセットの推奨をユーザに生成してもよい。例えば、ユーザが、ある人物によって生成されたビデオを視聴することに関心があり得、その人物をユーザプロファイルに追加し、関心を示してもよい。メディアガイドアプリケーションは、その人物によって生成されたライブビデオを識別してもよく、ユーザプロファイルデータとビデオデータを比較してもよい。メディアガイドアプリケーションは、ユーザプロファイルがビデオを生成した人物への関心を示すことを判定してもよく、それに応答して、表示のために、ビデオの推奨をユーザに生成してもよい。
【００２１】
いくつかの実施形態では、メディアガイドアプリケーションは、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことによって、ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨をユーザに生成してもよい。例えば、メディアガイドアプリケーションは、第２のビデオ内に生じるキーワードと、各個別のキーワードが第２のビデオ内に生じる回数を反映する加重とを含む、第２のビデオと関連付けられた第２のデータ構造を読み出してもよい。
【００２２】
メディアガイドアプリケーションは、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルからのキーワードおよびその対応する加重が第２のデータ構造からのキーワードおよびその対応する加重に類似するかどうかを判定してもよい。メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造が類似することの判定に応答して、表示のために、第２のメディアアセットの推奨をユーザに生成してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルからのキーワードおよびその対応する加重が第２のデータ構造からのキーワードおよびその対応する加重に類似することの判定に応答して、表示のために、第２のビデオの推奨を生成してもよい。
【００２３】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造の両方内に存在するキーワード毎に、あるキーワードに対応するユーザプロファイル内の複数の加重の第１の加重と該キーワードに対応する第２のデータ構造内の複数の加重の第２の加重との間の差異を判定することによって、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造の両方内にあるキーワード毎に、ユーザプロファイル内のキーワードに対応する加重と第２のデータ構造内のキーワードに対応する加重との間の差異を判定してもよい。
【００２４】
メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造のうちの１つ内に存在し、ユーザプロファイルおよび第２のデータ構造の両方内に存在しない、キーワード毎に、あるキーワードに対応する、ユーザプロファイルまたは第２のデータ構造内の複数の加重の第３の加重の値を判定してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造のうちの１つ内に存在するが、両方には存在しない、キーワード毎に、キーワードと関連付けられた加重の値を判定してもよい。
【００２５】
メディアガイドアプリケーションは、差異および値に基づいて、距離を判定してもよい。例えば、メディアガイドアプリケーションは、全ての判定された差異および値に基づいて、距離を判定してもよい。メディアガイドアプリケーションは、距離が閾値距離を上回るかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、距離が所定の閾値距離を上回るかどうかを判定してもよい。
【００２６】
メディアガイドアプリケーションは、距離が閾値距離を上回ることの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似しないことを判定してもよい。例えば、メディアガイドアプリケーションは、距離が所定の閾値距離を上回ることの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似しないことを判定してもよい。
【００２７】
メディアガイドアプリケーションは、距離が閾値距離を上回らないことの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似することを判定してもよい。例えば、メディアガイドアプリケーションは、距離が所定の閾値距離未満またはそれと等しいことの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似することを判定してもよい。
【００２８】
いくつかの実施形態では、閾値時間は、固定時間量、および第２のメディアアセットの長さに対する時間のうちの１つであってもよい。例えば、閾値時間は、固定時間（例えば、１分）であってもよい。別の実施例では、閾値時間は、第２のビデオの長さに対する時間（例えば、第２のビデオの長さの１０％）であってもよい。例えば、第２のビデオが３０分である場合、閾値時間は、３０分の１０％、すなわち、３分であってもよい。
【００２９】
いくつかの実施形態では、メディアガイドアプリケーションは、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことによって、第２のメディアアセットのコンテンツ内に生じるキーワードに対応するユーザプロファイル内の複数の加重を増加させ、第２のメディアアセットのコンテンツ内に生じ、ユーザのプロファイル内にない、キーワードを追加してもよい。例えば、メディアガイドアプリケーションは、第２のビデオ内に生じるキーワードと、各個別のキーワードが第２のビデオ内に生じる回数を反映する加重とを含む、第２のビデオと関連付けられた第２のデータ構造を読み出してもよい。メディアガイドアプリケーションは、第２のデータ構造データおよびユーザプロファイルデータの両方内に存在するキーワード毎に、あるキーワードに対応する第２のデータ構造内の複数の加重の第１の加重を該キーワードに対応するユーザプロファイル内の複数の加重の第２の加重に追加してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造の両方内に存在するキーワード毎に、第２のデータ構造内のキーワードに対応する加重をユーザプロファイル内のキーワードに対応する加重に追加してもよい。メディアガイドアプリケーションは、第２のデータ構造内に存在し、ユーザプロファイル内に存在しない、キーワード毎に、第２のデータ構造内の複数のキーワードのキーワードおよび該キーワードに対応する第２のデータ構造内の複数の加重の加重をユーザプロファイルに追加してもよい。例えば、メディアガイドアプリケーションは、第２のデータ構造内の存在し、ユーザプロファイル内に存在しない、キーワード毎に、第２のデータ構造内のキーワードおよびその対応する加重をユーザプロファイルに追加してもよい。
【００３０】
いくつかの実施形態では、メディアガイドアプリケーションは、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことによって、第２のメディアアセットのコンテンツ内のキーワードに対応するユーザプロファイル内の複数の加重を減少させ、第２のメディアアセットのコンテンツ内に生じ、ユーザのプロファイル内にない、キーワードを追加してもよい。例えば、メディアガイドアプリケーションは、第２のビデオ内に生じるキーワードと、各個別のキーワードが第２のビデオ内に生じる回数を反映する加重とを含む、第２のビデオと関連付けられた第２のデータ構造を読み出してもよい。メディアガイドアプリケーションは、第２のデータ構造およびユーザプロファイルの両方内に存在するキーワード毎に、あるキーワードに対応する第２のデータ構造内の複数の加重の第１の加重を、該キーワードに対応するユーザプロファイル内の複数の加重の第２の加重から減算してもよい。例えば、メディアガイドアプリケーションは、第２のデータ構造およびユーザプロファイルデータの両方内に存在するキーワード毎に、第２のデータ構造内のキーワードに対応する加重をユーザプロファイル内のキーワードに対応する加重から減算してもよい。メディアガイドアプリケーションは、第２のデータ構造内に存在し、ユーザプロファイル内に存在しない、キーワード毎に、第２のデータ構造内の複数のキーワードのキーワードおよび該キーワードに対応する第２のデータ構造内の複数の加重の加重の負値をユーザプロファイルに追加してもよい。例えば、メディアガイドアプリケーションは、第２のデータ構造内に存在し、ユーザプロファイル内に存在しない、キーワード毎に、第２のデータ構造内のキーワードおよびその対応する加重の負値をユーザプロファイルに追加してもよい。
【００３１】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザプロファイル内の複数の加重の加重が、ゼロ未満またはそれと等しいかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイル内のあるキーワードに対応する加重がゼロを上回らないかどうかを判定してもよい。メディアガイドアプリケーションは、ユーザプロファイル内の複数の加重の加重がゼロ未満またはそれと等しいことの判定に応答して、加重およびその対応するキーワードをユーザプロファイルから除去してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイル内のキーワードに対応する加重がゼロを上回らないことの判定に応答して、加重およびその対応するキーワードをユーザプロファイルから除去してもよい。
【００３２】
いくつかの実施形態では、第２のメディアアセットは、ライブビデオストリームであってもよい。例えば、第２のメディアアセットは、そのソースからライブストリーミングされているビデオであってもよい。
【図面の簡単な説明】
【００３３】
【図１】図１は、本開示のいくつかの実施形態による、例証的メディア一覧表示を示す。
【図２】図２は、本開示のいくつかの実施形態による、推奨を提供するために使用され得る、別の例証的メディア一覧表示を示す。
【図３】図３は、本開示のいくつかの実施形態による、例証的ユーザ機器デバイスのブロック図である。
【図４】図４は、本開示のいくつかの実施形態による、例証的メディアシステムのブロック図である。
【図５】図５は、本開示のいくつかの実施形態による、推奨を提供するために使用され得る、３つの例証的表示を示す。
【図６】図６は、本開示のいくつかの実施形態による、ユーザプロファイルを修正し、推奨を改良するための例証的ステップのフローチャートである。
【図７】図７は、本開示のいくつかの実施形態による、メディアアセットのトランスクリプトを分析するための例証的ステップのフローチャートである。
【図８】図８は、本開示のいくつかの実施形態による、メディアアセットのトランスクリプトを分析するための擬似コードの例証的実施例のフローチャートである。
【図９】図９は、本開示のいくつかの実施形態による、ユーザプロファイルデータ内のデータとメディアアセットと関連付けられたデータ構造内のデータを比較するための例証的ステップのフローチャートである。
【図１０】図１０は、本開示のいくつかの実施形態による、ユーザプロファイルデータ内のデータとメディアアセットと関連付けられたデータ構造内のデータを比較するための擬似コードの例証的実施例のフローチャートである。
【図１１】図１１は、本開示のいくつかの実施形態による、ユーザプロファイル内において、メディアアセットのコンテンツ内に生じるキーワードに対応する複数の加重を増加させ、ユーザプロファイルに、メディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加するための例証的ステップのフローチャートである。
【図１２】図１２は、開示のいくつかの実施形態による、ユーザプロファイル内において、メディアアセットのコンテンツ内に生じるキーワードに対応する複数の加重を増加し、ユーザプロファイルに、メディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加するための擬似コードの例証的実施例のフローチャートである。
【発明を実施するための形態】
【００３４】
メディアアセットを視聴しているユーザにメディアアセットの推奨を提供する、メディアガイドアプリケーションのための方法およびシステムが、本明細書に説明される。メディアガイドアプリケーションは、推奨するための他のメディアアセットを判定するとき、ユーザアクションおよびメディアアセットのコンテンツ内のキーワードを利用してもよい。さらに、メディアガイドアプリケーションは、ライブストリーミングメディアアセットを推奨してもよい。例えば、メディアガイドアプリケーションは、ユーザが視聴している第１のメディアガイドアプリケーションに関連するライブストリーミングメディアアセットを識別してもよく、ライブストリーミングメディアアセットをユーザに推奨してもよい。より具体的には、メディアガイドアプリケーションは、メディアアセットのコンテンツ内のキーワードおよびユーザのアクションに基づいて、第１のメディアアセットを視聴しているユーザに関連するライブストリーミングメディアアセットを識別および推奨してもよい。
【００３５】
例えば、ユーザが、我々の太陽系内の準惑星についてのビデオ「Ｐｌｕｔｏ」を選択し得る。メディアガイドアプリケーションは、表示のために、「Ｐｌｕｔｏ」を生成してもよい。メディアガイドアプリケーションは、「Ｐｌｕｔｏ」内に生じるキーワードおよび各キーワードが「Ｐｌｕｔｏ」内で生じる回数を含むようにユーザのプロファイルを修正してもよい。メディアガイドアプリケーションは、表示のために、そのコンテンツ内に類似キーワードを有する、他のビデオの推奨を生成してもよい。１つのそのようなビデオは、キーワード「Ｐｌｕｔｏ」が数回生じる、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」である。
【００３６】
「Ｐｌｕｔｏ」を視聴後、ユーザは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」等のメディアガイドアプリケーションによって推奨されるビデオのうちの１つを選択することによって、準惑星についてさらに調べることを決定し得る。メディアガイドアプリケーションは、表示のために、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を生成してもよく、表示のために、他のビデオの推奨を生成してもよい。「Ｐｌｕｔｏ」および「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」は、同一のキーワードのうちのいくつかを有するが、ネズミとイヌの友情についてのものである、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツは、明らかに、準惑星へのユーザの関心に関連しない。
【００３７】
短時間にわたって「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を視聴後、ユーザは、そのビデオに関心がないことを認識し得、「ＮＡＳＡ：Ｐｌｕｔｏ」等の推奨からの別のビデオを選択し得る。メディアガイドアプリケーションは、ユーザが「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を視聴した期間が短かったことを判定してもよく、それに応答して、将来的推奨がユーザの関心により整合されるように、ユーザのプロファイルを修正してもよい。具体的には、メディアガイドアプリケーションは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツ内に生じるキーワードおよび各キーワードが「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」内で生じる回数でユーザのプロファイルを更新し、類似ビデオの将来的推奨を防止してもよい。例えば、メディアガイドアプリケーションは、「ｄｏｇ」および「ｂｏｎｅ」等のキーワードをユーザプロファイルに追加し、これらのキーワードの多数の発生を伴うビデオがユーザに推奨されるべきではないことを示してもよい。
【００３８】
「ＮＡＳＡ：Ｐｌｕｔｏ」のユーザの選択に応答して、メディアガイドアプリケーションは、表示のために、「ＮＡＳＡ：Ｐｌｕｔｏ」および他のビデオの推奨を生成してもよい。推奨は、「ｄｏｇ」および「ｂｏｎｅ」等のキーワードの多数の発生を伴うビデオがもはや推奨されないため、「Ｍｉｃｋｅｙ  ａｎｄ  Ｐｌｕｔｏ」に類似するビデオを含まないものとなり得る。
【００３９】
「ＮＡＳＡ：Ｐｌｕｔｏ」は、ユーザに関心があるものであるため、ユーザは、ビデオの全体を視聴し得る。メディアガイドアプリケーションは、ユーザが「ＮＡＳＡ：Ｐｌｕｔｏ」を長時間にわたって視聴したことを判定してもよく、それに応答して、類似ビデオの将来的推奨を増加させるようにユーザプロファイルを修正してもよい。具体的には、メディアガイドアプリケーションは、「ＮＡＳＡ：Ｐｌｕｔｏ」のコンテンツ内で生じるキーワードおよび各キーワードが「ＮＡＳＡ：Ｐｌｕｔｏ」内で生じる回数でユーザのプロファイルを更新してもよい。例えば、メディアガイドアプリケーションは、「ＮＡＳＡ」および「ｓｐａｃｅ」等のキーワードをユーザのプロファイルに追加し、これらのキーワードの発生を伴うビデオがユーザに推奨されるべきであることを示してもよい。
【００４０】
本明細書で定義されるように、用語「キーワード」は、実質的単語を意味する。いくつかの実施形態では、キーワードは、メディアアセットと関連付けられた実質的単語であってもよい。例えば、ビデオ「ＮＡＳＡ：Ｐｌｕｔｏ」内のキーワードは、「Ｐｌｕｔｏ」、「ＮＡＳＡ」、「ｐｌａｎｅｔ」、または「ｓｐａｃｅ」であり得る。いくつかの実施形態では、キーワードは、メディアアセットのコンテンツ内に生じるものであってもよい。例えば、キーワードは、メディアアセットと関連付けられた対話であってもよい、またはメディアアセット内に視覚的に現れてもよい。例えば、単語「ｐｌａｎｅｔ」が、ビデオ「ＮＡＳＡ：Ｐｌｕｔｏ」内で発話され、「ｐｌａｎｅｔ」は、「ＮＡＳＡ：Ｐｌｕｔｏ」のコンテンツ内で生じるキーワードとなり得る。別の実施例では、単語「ｓｐａｃｅ」は、ビデオ「ＮＡＳＡ：Ｐｌｕｔｏ」内に視覚的に現れ、「ｓｐａｃｅ」は、「ＮＡＳＡ：Ｐｌｕｔｏ」のコンテンツ内で生じるキーワードとなり得る。
【００４１】
本明細書で言及されるように、メディアアセットのコンテンツ内で生じる「非重要語」は、コンテンツを記述する際に不可欠ではない単語である。例えば、非重要語は、「ａ」、「ａｎ」、「ｔｈｅ」、「ｏｆ」、「ｗｉｔｈ」等であり得る。対照的に、メディアアセットのコンテンツ内で生じる重要語は、コンテンツを記述することに役立つ単語である。例えば、重要語は、「Ｐｌｕｔｏ」、「ＮＡＳＡ」、「ｄｏｇ」、「ｐｌａｎｅｔ」、「ｓｐａｃｅ」、「ｈｏｕｓｅ」等であり得る。
【００４２】
本明細書で定義されるように、「加重」は、単語の発生回数、すなわち、単語が生じる頻度を記述する数字である。いくつかの実施形態では、加重は、メディアアセット内で生じるキーワードと関連付けられてもよい。例えば、ビデオ「ＮＡＳＡ：Ｐｌｕｔｏ」は、単語「Ｐｌｕｔｏ」に関して１０の加重および単語「ＮＡＳＡ」に関して５の加重を有し得、単語「Ｐｌｕｔｏ」がビデオ内で１０回生じ、単語「ＮＡＳＡ」が５回生じたことを意味する。いくつかの実施形態では、加重は、同一メディアアセットと関連付けられた他の加重に基づいて正規化されてもよい。例えば、ビデオ「ＮＡＳＡ：Ｐｌｕｔｏ」は、単語「Ｐｌｕｔｏ」に関して０．０５の加重を有し、ビデオ内で生じたキーワードの５％は、単語「Ｐｌｕｔｏ」であることを意味し得る。
【００４３】
本明細書で定義されるように、用語「データ構造」は、データを編成および記憶するためのフォーマットである。例えば、データ構造は、キーワードを表す文字列と、文字列毎の加重を表す数字とを含んでもよい。いくつかの実施形態では、データ構造は、メディアアセットと関連付けられ、メディアアセット内で生じるキーワードと、各個別のキーワードに対応する加重とを含有する。いくつかの実施形態では、データ構造は、ユーザと関連付けられる。例えば、データ構造は、キーワードおよびキーワード内のユーザの関心を表すキーワード毎の加重を含む、ユーザプロファイルであってもよい。
【００４４】
任意の所与のコンテンツ配信システムでユーザに利用可能なコンテンツの量が、膨大であり得る。その結果、多くのユーザは、ユーザがコンテンツの選択を効率的にナビゲートし、所望し得るコンテンツを容易に識別することを可能にする、インターフェースを通したメディアガイドの形態を所望している。そのようなガイドを提供するアプリケーションは、本明細書では、双方向メディアガイドアプリケーションと称されるが、時として、メディアガイドアプリケーションまたはガイドアプリケーションと称されることもある。
【００４５】
双方向メディアガイドアプリケーションは、ガイドを提供するコンテンツに応じて、種々の形態をとってもよい。典型的なタイプのメディアガイドアプリケーションの１つは、双方向テレビ番組ガイドである。双方向テレビ番組ガイド（時として、電子番組ガイドと称される場合もある）は、とりわけ、ユーザが、多くのタイプのコンテンツまたはメディアアセット間をナビゲートし、それを特定することが可能である、公知のガイドアプリケーションである。双方向メディアガイドアプリケーションは、ユーザが、コンテンツ間をナビゲートし、それを特定および選択することを可能にする、グラフィカルユーザインターフェース画面を生成してもよい。本明細書で参照されるように、用語「メディアアセット」および「コンテンツ」とは、電子的に消費可能なユーザアセット、例えば、テレビ番組、ならびに有料番組、オンデマンド番組（ビデオオンデマンド（ＶＯＤ）システムにおけるような）、インターネットコンテンツ（例えば、ストリーミングコンテンツ、ダウンロード可能コンテンツ、ウェブキャスト等）、ビデオクリップ、オーディオ、コンテンツ情報、写真、回転画像、ドキュメント、再生一覧、ウェブサイト、記事、書籍、電子書籍、ブログ、チャットセッション、ソーシャルメディア、アプリケーション、ゲーム、および／または任意の他のメディアもしくはマルチメディア、および／またはそれらの組み合わせを意味すると理解されたい。ガイドアプリケーションはまた、ユーザが、コンテンツ間をナビゲートし、それを特定することを可能にする。本明細書で参照されるように、用語「マルチメディア」とは、前述の少なくとも２つの異なるコンテンツ形態、例えば、テキスト、オーディオ、画像、ビデオ、または双方向コンテンツ形態を利用する、コンテンツを意味すると理解されたい。コンテンツは、ユーザ機器デバイスによって、録画、再生、表示、またはアクセスされてもよいが、また、ライブパーフォーマンスの一部であることも可能である。
【００４６】
本明細書で議論される実施形態のいずれかを行うためのメディアガイドアプリケーションおよび／または任意の命令は、コンピュータ可読媒体上にエンコードされてもよい。コンピュータ可読媒体は、データを記憶することが可能な任意のメディアを含む。コンピュータ可読媒体は、限定ではないが、電気または電磁信号の伝搬を含む、一過性であってもよい、または限定ではないが、ハードディスク、フロッピー（登録商標）ディスク、ＵＳＢドライブ、ＤＶＤ、ＣＤ、メディアカード、レジスタメモリ、プロセッサキャッシュ、ランダムアクセスメモリ（「ＲＡＭ」）等の揮発性および不揮発性コンピュータメモリまたは記憶デバイスを含む、非一過性であってもよい。
【００４７】
インターネット、モバイルコンピューティング、および高速無線ネットワークの出現に伴って、ユーザは、従来は使用しなかったユーザ機器デバイス上でメディアにアクセスするようになっている。本明細書で参照されるように、語句「ユーザ機器デバイス」、「ユーザ機器」、「ユーザデバイス」、「電子デバイス」、「電子機器」、「メディア機器デバイス」、または「メディアデバイス」は、テレビ、スマートＴＶ、セットトップボックス、衛星テレビに対応するための統合型受信機デコーダ（ＩＲＤ）、デジタル記憶デバイス、デジタルメディア受信機（ＤＭＲ）、デジタルメディアアダプタ（ＤＭＡ）、ストリーミングメディアデバイス、ＤＶＤプレーヤ、ＤＶＤレコーダ、接続型ＤＶＤ、ローカルメディアサーバ、ＢＬＵ−ＲＡＹ（登録商標）プレーヤ、ＢＬＵ−ＲＡＹ（登録商標）レコーダ、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、タブレットコンピュータ、ウェブＴＶボックス、パーソナルコンピュータテレビ（ＰＣ／ＴＶ）、ＰＣメディアサーバ、ＰＣメディアセンター、ハンドヘルドコンピュータ、固定電話、携帯情報端末（ＰＤＡ）、携帯電話、ポータブルビデオプレーヤ、ポータブル音楽プレーヤ、ポータブルゲーム機、スマートフォン、または任意の他のテレビ機器、コンピューティング機器、もしくは無線デバイス、および／またはそれらの組み合わせ等の前述のコンテンツにアクセスするための任意のデバイスを意味すると理解されたい。いくつかの実施形態では、ユーザ機器デバイスは、正面画面および裏面画面、複数の正面画面、または複数の角度付き画面を有してもよい。いくつかの実施形態では、ユーザ機器デバイスは、正面カメラおよび／または背面カメラを有してもよい。これらのユーザ機器デバイス上で、ユーザは、テレビを通して利用可能な同一のコンテンツ間をナビゲートし、それを特定することが可能であってもよい。その結果として、メディアガイドは、これらのデバイス上でも利用可能であってもよい。提供されるガイドは、テレビのみを通して利用可能なコンテンツ、他のタイプのユーザ機器デバイスのうちの１つまたはそれを上回るものみを通して利用可能なコンテンツ、またはテレビおよび他のタイプのユーザ機器デバイスのうちの１つまたはそれを上回るものの両方を通して利用可能なコンテンツのためのものであってもよい。メディアガイドアプリケーションは、ユーザ機器デバイス上で、オンラインアプリケーション（すなわち、ウェブサイト上で提供される）、もしくは独立型アプリケーションまたはクライアントとして提供されてもよい。メディアガイドアプリケーションを実装し得る、種々のデバイスおよびプラットフォームは、以下でより詳細に説明される。
【００４８】
メディアガイドアプリケーションの機能の１つは、メディアガイドデータをユーザに提供することである。本明細書で参照されるように、語句「メディアガイドデータ」または「ガイドデータ」は、コンテンツに関連する任意のデータ、またはガイドアプリケーションを動作させる際に使用されるデータを意味すると理解されたい。例えば、ガイドデータは、番組情報、ガイドアプリケーション設定、ユーザ選好、ユーザプロファイル情報、メディア一覧、メディア関連情報（例えば、放送時間、放送チャンネル、タイトル、内容、評価情報（例えば、ペアレンタルコントロール評価、批評家の評価等）、ジャンルまたはカテゴリ情報、俳優情報、放送会社またはプロバイダのロゴのロゴデータ等）、メディア形式（例えば、標準解像度、高解像度、３Ｄ等）、オンデマンド情報、ブログ、ウェブサイト、およびユーザが所望のコンテンツ選択間をナビゲートし、それを特定するために役立つ、任意の他のタイプのガイドデータを含んでもよい。
【００４９】
図１−２は、メディアガイドデータを提供するために使用され得る、例証的表示画面を示す。図１−２に示される表示画面は、任意の好適なユーザ機器デバイスまたはプラットフォーム上に実装されてもよい。図１−２の表示は、フル画面表示として図示されているが、それらはまた、表示されているコンテンツ上に完全または部分的にオーバーレイされてもよい。ユーザは、表示画面に提供された選択可能なオプション（例えば、メニューオプション、一覧オプション、アイコン、ハイパーリンク等）を選択することによって、もしくはリモートコントロールまたは他のユーザ入力インターフェースもしくはデバイス上の専用ボタン（例えば、「ガイド」ボタン）を押下することによって、コンテンツ情報へのアクセス要望を指示してもよい。ユーザの指示に応答して、メディアガイドアプリケーションは、グリッド内の時間およびチャンネル別、時間別、チャンネル別、ソース別、コンテンツタイプ別、カテゴリ別（例えば、映画、スポーツ、ニュース、子供向け、または他の番組カテゴリ）、または他の所定、ユーザ定義、もしくは他の編成基準等のいくつかの方法のうちの１つにおいて編成されたメディアガイドデータを伴う表示画面を提供してもよい。
【００５０】
図１は、単一表示内の異なるタイプのコンテンツへのアクセスも可能にする、時間およびチャンネル別に配列された番組一覧表示１００の例証的グリッドを示す。表示１００は、以下を伴うグリッド１０２を含んでもよい：（１）各チャンネル／コンテンツタイプ識別子（列内のセル）が利用可能な異なるチャンネルまたはコンテンツのタイプを識別する、チャンネル／コンテンツタイプ識別子１０４の列、および（２）各時間識別子（行内のセル）が番組の時間帯を識別する、時間識別子１０６の行。グリッド１０２はまた、番組一覧１０８等の番組一覧のセルも含み、各一覧は、一覧の関連チャンネルおよび時間の上に提供される、番組のタイトルを提供する。ユーザ入力デバイスを用いて、ユーザは、ハイライト領域１１０を移動させることによって番組一覧を選択することができる。ハイライト領域１１０によって選択される番組一覧に関する情報が、番組情報領域１１２内に提供されてもよい。領域１１２は、例えば、番組タイトル、番組内容、番組が提供される時間（該当する場合）、番組が放送されるチャンネル（該当する場合）、番組の評価、および他の所望の情報を含んでもよい。
【００５１】
線形番組（例えば、所定の時間に複数のユーザ機器デバイスに伝送されるようにスケジューリングされ、スケジューリングに従って提供される、コンテンツ）へのアクセスの提供に加え、メディアガイドアプリケーションはまた、非線形番組（例えば、任意の時間においてユーザ機器デバイスにアクセス可能であって、スケジューリングに従って提供されない、コンテンツ）へのアクセスも提供する。非線形番組は、オンデマンドコンテンツ（例えば、ＶＯＤ）、インターネットコンテンツ（例えば、ストリーミングメディア、ダウンロード可能メディア等）、ローカルに記憶したコンテンツ（例えば、前述の任意のユーザ機器デバイスまたは他の記憶デバイス上に記憶されたコンテンツ）、または時間的制約のない他のコンテンツを含む、異なるコンテンツソースからのコンテンツを含んでもよい。オンデマンドコンテンツは、映画または特定のコンテンツプロバイダ（例えば、「Ｔｈｅ  Ｓｏｐｒａｎｏｓ」や「Ｃｕｒｂ  Ｙｏｕｒ  Ｅｎｔｈｕｓｉａｓｍ」を提供するＨＢＯ  Ｏｎ  Ｄｅｍａｎｄ）によって提供される任意の他のコンテンツを含んでもよい。ＨＢＯ  ＯＮ  ＤＥＭＡＮＤは、Ｔｉｍｅ  Ｗａｒｎｅｒ  Ｃｏｍｐａｎｙ  Ｌ．Ｐ．らによって所有されるサービスマークであり、ＴＨＥ  ＳＯＰＲＡＮＯＳおよびＣＵＲＢ  ＹＯＵＲ  ＥＮＴＨＵＳＩＡＳＭは、Ｈｏｍｅ  Ｂｏｘ  Ｏｆｆｉｃｅ，  Ｉｎｃ．によって所有される商標である。インターネットコンテンツは、チャットセッションまたはウェブキャスト等のウェブイベント、もしくはインターネットウェブサイトまたは他のインターネットアクセス（例えば、ＦＴＰ）を通して、ストリーミングコンテンツまたはダウンロード可能なコンテンツとしてオンデマンドで利用可能なコンテンツを含んでもよい。
【００５２】
グリッド１０２は、オンデマンド一覧１１４、録画コンテンツ一覧１１６、およびインターネットコンテンツ一覧１１８を含む、非線形番組のメディアガイドデータを提供してもよい。異なるタイプのコンテンツソースからのコンテンツのためのメディアガイドデータを組み合わせる表示は、時として、「混合メディア」表示と称されることもある。表示１００とは異なる、表示され得るメディアガイドデータのタイプの種々の順列は、ユーザ選択またはガイドアプリケーション定義に基づいてもよい（例えば、録画および放送一覧のみの表示、オンデマンドおよび放送一覧のみの表示等）。例証されるように、一覧１１４、１１６、および１１８は、これらの一覧の選択が、それぞれ、オンデマンド一覧、録画一覧、またはインターネット一覧専用の表示へのアクセスを提供し得ることを示すように、グリッド１０２内に表示される時間帯全体に及ぶものとして示されている。いくつかの実施形態では、これらのコンテンツタイプの一覧は、グリッド１０２に直接含まれてもよい。ユーザがナビゲーションアイコン１２０のうちの１つを選択することに応答して、付加的メディアガイドデータが表示されてもよい（ユーザ入力デバイス上の矢印キーを押下することによって、ナビゲーションアイコン１２０を選択することと同様に表示に影響を及ぼしてもよい）。
【００５３】
表示１００はまた、ビデオ領域１２２、およびオプション領域１２６を含んでもよい。ビデオ領域１２２は、ユーザが、現在利用可能である、今後利用可能となる、またはユーザに利用可能であった番組を視聴および／またはプレビューすることを可能にしてもよい。ビデオ領域１２２のコンテンツは、グリッド１０２に表示される一覧のうちの１つに対応するか、またはそれから独立してもよい。ビデオ領域を含むグリッド表示は、時として、ピクチャインガイド（ＰＩＧ）表示と称されることもある。ＰＩＧ表示およびそれらの機能は、２００３年５月１３日発行のＳａｔｔｅｒｆｉｅｌｄらの米国特許第６，５６４，３７８号、および２００１年５月２９日発行のＹｕｅｎらの米国特許第６，２３９，７９４号でさらに詳細に説明されており、それらは全体として参照することによって本明細書に組み込まれる。ＰＩＧ表示は、本明細書に説明される実施形態の他のメディアガイドアプリケーション表示画面に含まれてもよい。
【００５４】
オプション領域１２６は、ユーザが、異なるタイプのコンテンツ、メディアガイドアプリケーション表示、および／またはメディアガイドアプリケーション特徴にアクセスすることを可能にしてもよい。オプション領域１２６は、ディプレイ１００（および本明細書に説明される他の表示画面）の一部であってもよい、もしくは画面上のオプションを選択すること、またはユーザ入力デバイス上の専用または割当可能ボタンを押下することによって、ユーザによって呼び出されてもよい。オプション領域１２６内の選択可能オプションは、グリッド１０２内の番組一覧に関連する特徴に関してもよい、またはメインメニュー表示から利用可能なオプションを含んでもよい。番組一覧に関連する特徴は、他の放送時間または番組の受信方法の検索、番組の録画、番組の連続録画の有効化、番組および／またはチャンネルをお気に入りとして設定、番組の購入、もしくは他の特徴を含んでもよい。メインメニュー表示から利用可能なオプションは、検索オプション、ＶＯＤオプション、ペアレンタルコントロールオプション、インターネットオプション、クラウドベースのオプション、デバイス同期オプション、第２の画面デバイスオプション、種々のタイプのメディアガイドデータ表示にアクセスするためのオプション、プレミアムサービスをサブスクライブするためのオプション、ユーザのプロファイルを編集するためのオプション、ブラウザオーバーレイにアクセスするためのオプション、もしくは他のオプションを含んでもよい。
【００５５】
メディアガイドアプリケーションは、ユーザの選好に基づいて個人化されてもよい。個人化されたメディアガイドアプリケーションは、ユーザが、メディアガイドアプリケーションによって個人化された「体験」を生成するように、表示および特徴をカスタマイズすることを可能にする。この個人化された体験は、ユーザがこれらのカスタマイズを入力できるようにすることによって、および／または種々のユーザ選好を判定するようにメディアガイドアプリケーションがユーザアクティビティを監視することによって、生成されてもよい。ユーザは、ログインすることによって、または別様にガイドアプリケーションに対して自らを識別することによって、個人化されたガイドアプリケーションにアクセスしてもよい。メディアガイドアプリケーションのカスタマイズは、ユーザプロファイルに従って作成されてもよい。カスタマイズは、提示方式（例えば、表示の色方式、テキストのフォントサイズ等）、表示されるコンテンツ一覧の側面（例えば、ＨＤＴＶ番組のみまたは３Ｄ番組のみ、お気に入りチャンネルオプションに基づいたユーザ指定の放送チャンネル、チャンネルの表示の並び替え、推奨コンテンツ等）、所望の録画特徴（例えば、特定のユーザに対する録画または連続録画、録画品質等）、ペアレンタルコントロール設定、インターネットコンテンツのカスタマイズされた提示（例えば、ソーシャルメディアコンテンツ、電子メール、電子的に配信された記事等の提示）、および他の所望のカスタマイズを変更させるステップを含んでもよい。
【００５６】
メディアガイドアプリケーションは、ユーザが、ユーザプロファイル情報を提供することを可能にしてもよい、またはユーザプロファイル情報を自動的にコンパイルしてもよい。メディアガイドアプリケーションは、例えば、ユーザがアクセスするコンテンツ、および／またはユーザがガイドアプリケーションと行い得る他の相互作用を監視してもよい。加えて、メディアガイドアプリケーションは、特定のユーザに関連する他のユーザプロファイルの全体または一部を取得し（例えば、ｗｗｗ．ａｌｌｒｏｖｉ．ｃｏｍ等のユーザがアクセスするインターネット上の他のウェブサイトから、ユーザがアクセスする他のメディアガイドアプリケーションから、ユーザがアクセスする他の双方向アプリケーションから、ユーザの別のユーザ機器デバイスから等）、および／またはメディアガイドアプリケーションがアクセスし得る他のソースから、ユーザに関する情報を取得してもよい。結果として、ユーザの異なるユーザ機器デバイスにわたって、統一されたガイドアプリケーション体験をユーザに提供することができる。このタイプのユーザ体験は、図４に関連して、以下でより詳細に説明される。付加的な個人化されたメディアガイドアプリケーション特徴は、２００５年７月１１日出願のＥｌｌｉｓらの米国特許出願公開第２００５／０２５１８２７号、２００７年１月１６日発行のＢｏｙｅｒらの米国特許第７，１６５，０９８号、および２００２年２月２１日出願のＥｌｌｉｓらの米国特許出願公開第２００２／０１７４４３０号でさらに詳細に説明されており、それらは全体として参照することにより本明細書に組み込まれる。
【００５７】
メディアガイドを提供するための別の表示配列が、図２に示されている。ビデオモザイク表示２００は、コンテンツのタイプ、ジャンル、および／または他の編成基準に基づいて編成されたコンテンツ情報のための選択可能オプション２０２を含む。表示２００では、ビデオ検索オプション２０４が、選択され、したがって、メディアアセット２０６ならびに他のメディアアセットのための推奨として一覧２０８、２１０、および２１２を提供する。表示２００では、一覧は、カバーアート、コンテンツからの静止画像、ビデオクリップのプレビュー、コンテンツからのライブビデオ、または一覧中のメディアガイドデータによって記述されているコンテンツをユーザに示す他のタイプのコンテンツを含む、グラフィック画像を提供してもよい。グラフィック一覧のそれぞれはまた、一覧と関連付けられたコンテンツに関するさらなる情報を提供するように、テキストを伴ってもよい。例えば、一覧２０８は、メディア部分２１４およびテキスト部分２１６を含む、１つより多くの部分を含んでもよい。メディア部分２１４および／またはテキスト部分２１６は、コンテンツをフル画面で視聴するように、またはメディア部分２１４に表示されるコンテンツに関連する情報を閲覧するように（例えば、ビデオが表示されるチャンネルの一覧を閲覧するように）、選択可能であってもよい。
【００５８】
表示２００内のメディアアセットおよび一覧は、異なるサイズである（すなわち、メディアアセット２０６は、一覧２０８、２１０、および２１２より大きい）が、所望の場合、メディアアセットおよび全一覧が同一のサイズであってもよい。一覧は、コンテンツプロバイダの所望に応じて、またはユーザ選好に基づいて、ユーザに関心の程度を示すように、または、あるコンテンツを強調するように、異なるサイズであるか、またはグラフィックが強調されてもよい。コンテンツ一覧をグラフィック的に強調するための種々のシステムおよび方法は、例えば、全体として参照することにより本明細書に組み込まれる、２００９年１１月１２日に出願されたＹａｔｅｓの米国特許出願公開第２０１０／０１５３８８５号で議論されている。
【００５９】
ユーザは、そのユーザ機器デバイスのうちの１つまたはそれを上回るものから、コンテンツおよびメディアガイドアプリケーション（ならびに前述および後述で説明されるその表示画面）にアクセスしてもよい。図３は、例証的ユーザ機器デバイス３００の一般的実施形態を示す。ユーザ機器デバイスのより具体的な実装は、図４に関連して以下で議論される。ユーザ機器デバイス３００は、入出力（以下「Ｉ／Ｏ」）パス３０２を介して、コンテンツおよびデータを受信してもよい。Ｉ／Ｏパス３０２は、処理回路３０６および記憶装置３０８を含む制御回路３０４に、コンテンツ（例えば、放送番組、オンデマンド番組、インターネットコンテンツ、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を経由して利用可能なコンテンツ、および／または他のコンテンツ）およびデータを提供してもよい。制御回路３０４は、Ｉ／Ｏパス３０２を使用して、コマンド、要求、および他の好適なデータを送受信するために使用されてもよい。Ｉ／Ｏパス３０２は、制御回路３０４（具体的には、処理回路３０６）を１つまたはそれを上回る通信パス（以下で説明される）に接続してもよい。Ｉ／Ｏ機能は、これらの通信パスのうちの１つまたはそれを上回るものによって提供されてもよいが、図面が複雑になり過ぎることを回避するため、図３では単一パスとして示されている。
【００６０】
制御回路３０４は、処理回路３０６等の任意の好適な処理回路に基づいてもよい。本明細書で参照されるように、処理回路とは、１つまたはそれを上回るマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、プログラマブル論理デバイス、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等に基づく回路を意味すると理解され、マルチコアプロセッサ（例えば、デュアルコア、クアドコア、ヘクサコア、または任意の好適な数のコア）またはスーパーコンピュータを含んでもよい。いくつかの実施形態では、処理回路は、複数の別個のプロセッサまたは処理ユニット、例えば、複数の同一のタイプの処理ユニット（例えば、２つのＩｎｔｅｌ  Ｃｏｒｅ  ｉ７プロセッサ）または複数の異なるプロセッサ（例えば、Ｉｎｔｅｌ  Ｃｏｒｅ  ｉ５プロセッサおよびＩｎｔｅｌ  Ｃｏｒｅ  ｉ７プロセッサ）にわたって分散されてもよい。いくつかの実施形態では、制御回路３０４は、メモリ（すなわち、記憶装置３０８）に記憶されたメディアガイドアプリケーションに対する命令を実行する。具体的には、制御回路３０４は、メディアガイドアプリケーションによって、前述および後述の機能を行うように命令されてもよい。例えば、メディアガイドアプリケーションは、制御回路３０４に、メディアガイド表示を生成するための命令を提供してもよい。いくつかの実装では、制御回路３０４によって行われるいかなるアクションも、メディアガイドアプリケーションから受信した命令に基づいてもよい。
【００６１】
クライアントサーバに基づく実施形態では、制御回路３０４は、ガイドアプリケーションサーバもしくは他のネットワークまたはサーバと通信するための好適な通信回路を含んでもよい。前述の機能性を実施するための命令は、ガイドアプリケーションサーバ上に記憶されてもよい。通信回路は、ケーブルモデム、総合デジタル通信網（ＩＳＤＮ）モデム、デジタルサブスクライバ回線（ＤＳＬ）モデム、電話モデム、イーサネット（登録商標）カード、または他の機器との通信用無線モデム、または任意の他の好適な通信回路を含んでもよい。そのような通信は、インターネットもしくは任意の他の好適な通信ネットワークまたはパスを伴ってもよい（図４に関連してさらに詳細に説明される）。加えて、通信回路は、ユーザ機器デバイスのピアツーピア通信、または相互から遠隔の場所にあるユーザ機器デバイスの通信を可能にする回路を含んでもよい（以下でさらに詳細に説明される）。
【００６２】
メモリは、制御回路３０４の一部である、記憶装置３０８として提供される、電子記憶デバイスであってもよい。本明細書で参照されるように、語句「電子記憶デバイス」または「記憶デバイス」とは、ランダム−アクセスメモリ、読取専用メモリ、ハードドライブ、光学ドライブ、デジタルビデオディスク（ＤＶＤ）レコーダ、コンパクトディスク（ＣＤ）レコーダ、ＢＬＵ−ＲＡＹ（登録商標）ディスク（ＢＤ）レコーダ、ＢＬＵ−ＲＡＹ（登録商標）  ３Ｄディスクレコーダ、デジタルビデオレコーダ（時として、ＤＶＲ（パーソナルビデオレコーダと呼ばれる場合もある、またはＰＶＲ）、固体デバイス、量子記憶デバイス、ゲームコンソール、ゲームメディア、もしくは任意の他の好適な固定またはリムーバブル記憶デバイス、および／または任意のそれらの組み合わせ等の電子データ、コンピュータソフトウェア、またはファームウェアを記憶するための任意のデバイスを意味すると理解されたい。記憶装置３０８は、本明細書に説明される種々のタイプのコンテンツ、ならびに前述のメディアガイドデータを記憶するために使用されてもよい。不揮発性メモリもまた、使用されてもよい（例えば、ブートアップルーチンや他の命令を起動するために）。図４に関連して説明される、クラウドベースの記憶が、記憶装置３０８を補完するために使用される、または記憶装置３０８の代わりに使用されてもよい。
【００６３】
制御回路３０４は、１つまたはそれを上回るアナログチューナ、１つまたはそれを上回るＭＰＥＧ−２デコーダ、または他のデジタルデコード回路、高解像度チューナ、または任意の他の好適な同調もしくはビデオ回路、もしくはそのような回路の組み合わせ等のビデオ生成回路および同調回路を含んでもよい。エンコード回路（例えば、記憶のために、無線、アナログ、またはデジタル信号をＭＰＥＧ信号に変換するためのもの）もまた、提供されてもよい。制御回路３０４はまた、コンテンツをユーザ機器３００の好ましい出力形式に上方変換および下方変換するためのスケーリング回路を含んでもよい。回路３０４はまた、デジタルおよびアナログ信号間で変換するためのデジタルからアナログへの変換回路ならびにアナログからデジタルへの変換回路を含んでもよい。同調およびエンコード回路は、コンテンツを受信して表示する、再生する、または録画するために、ユーザ機器デバイスによって使用されてもよい。同調およびエンコード回路はまた、ガイドデータを受信するために使用されてもよい。例えば、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、およびアナログ／デジタル回路を含む、本明細書に説明される回路は、１つまたはそれを上回る汎用または特殊プロセッサ上で起動するソフトウェアを使用して実装されてもよい。複数のチューナが、同時同調機能に対処するように提供されてもよい（例えば、視聴および録画機能、ピクチャインピクチャ（ＰＩＰ）機能、多重チューナ録画機能等）。記憶装置３０８が、ユーザ機器３００とは別のデバイスとして提供される場合、同調およびエンコード回路（複数のチューナを含む）は、記憶装置３０８と関連付けられてもよい。
【００６４】
ユーザは、ユーザ入力インターフェース３１０を使用して、命令を制御回路３０４に送信してもよい。ユーザ入力インターフェース３１０は、リモートコントロール、マウス、トラックボール、キーパッド、キーボード、タッチ画面、タッチパッド、スタイラス入力、ジョイスティック、音声認識インターフェース、または他のユーザ入力インターフェース等、任意の好適なユーザインターフェースであってもよい。ディスプレイ３１２は、独立型デバイスとして提供されるか、またはユーザ機器デバイス３００の他の要素と統合してもよい。例えば、ディスプレイ３１２は、タッチスクリーンまたはタッチセンサ式表示であってもよい。そのような状況では、ユーザ入力インターフェース３１０は、ディスプレイ３１２と統合される、または組み合わせられてもよい。ディスプレイ３１２は、モニタ、テレビ、モバイルデバイスのための液晶ディスプレイ（ＬＣＤ）、非晶質シリコンディスプレイ、低温ポリシリコンディスプレイ、電子インクディスプレイ、電気泳動ディスプレイ、アクティブマトリクスディスプレイ、エレクトロウェッティングディスプレイ、電気流体ディスプレイ、ブラウン管ディスプレイ、発光ダイオードディスプレイ、エレクトロルミネセントディスプレイ、プラズマ表示パネル、高性能アドレッシングディスプレイ、薄膜トランジスタディスプレイ、有機発光ダイオードディスプレイ、表面伝導型電子放出素子ディスプレイ（ＳＥＤ）、レーザテレビ、カーボンナノチューブ、量子ドットディスプレイ、干渉変調器ディスプレイ、または視覚的画像を表示するための任意の他の好適な機器のうちの１つまたはそれを上回るものであってもよい。いくつかの実施形態では、ディスプレイ３１２は、ＨＤＴＶ対応型であってもよい。いくつかの実施形態では、ディスプレイ３１２は、３Ｄ表示であってもよく、双方向メディアガイドアプリケーションおよび任意の好適なコンテンツは、３Ｄで表示されてもよい。ビデオカードまたはグラフィックカードは、出力をディスプレイ３１２に生成してもよい。ビデオカードは、３Ｄシーンおよび２Ｄグラフィックのレンダリング加速、ＭＰＥＧ−２／ＭＰＥＧ−４デコード、ＴＶ出力、または複数のモニタを接続する能力等の種々の機能をもたらしてもよい。ビデオカードは、制御回路３０４に関連する前述の任意の処理回路であってもよい。ビデオカードは、制御回路３０４と統合されてもよい。スピーカ３１４は、ユーザ機器デバイス３００の他の要素との統合として提供されてもよい、または独立型ユニットであってもよい。ディスプレイ３１２上に表示されるビデオおよび他のコンテンツのオーディオコンポーネントは、スピーカ３１４を通して再生されてもよい。いくつかの実施形態では、音声は、スピーカ３１４を介して音声を処理および出力する、受信機（図示せず）に配信されてもよい。
【００６５】
ガイドアプリケーションは、任意の好適なアーキテクチャを使用して実装されてもよい。例えば、それは、ユーザ機器デバイス３００上で完全に実装される、独立型アプリケーションであってもよい。そのようなアプローチでは、アプリケーションの命令は、ローカルに記憶され（例えば、記憶装置３０８内に）、アプリケーションによって使用するためのデータは、周期的にダウンロードされる（例えば、帯域外フィードから、インターネットリソースから、または別の好適なアプローチを使用して）。制御回路３０４は、記憶装置３０８からアプリケーションの命令を読み出し、本明細書で議論される表示のいずれかを生成するための命令を処理してもよい。処理された命令に基づいて、制御回路３０４は、入力が入力インターフェース３１０から受信されるときに行うアクションを判定してもよい。例えば、表示上のカーソルの上／下への移動は、入力インターフェース３１０が上／下ボタンが選択されたことを示すとき、処理された命令によって示されてもよい。
【００６６】
いくつかの実施形態では、メディアガイドアプリケーションは、クライアントサーバベースのアプリケーションである。ユーザ機器デバイス３００上に実装される、シックまたはシンクライアントによって使用するためのデータは、ユーザ機器デバイス３００の遠隔にあるサーバに要求を発行することによって、オンデマンドで読み出される。クライアントサーバベースのガイドアプリケーションの一実施例では、制御回路３０４は、遠隔サーバによって提供されるウェブページを解釈する、ウェブブラウザを実行する。例えば、遠隔サーバは、記憶デバイス内にアプリケーションのための命令を記憶してもよい。遠隔サーバは、回路（例えば、制御回路３０４）を使用して、記憶された命令を処理し、前述および後述の表示を生成してもよい。クライアントデバイスは、遠隔サーバによって生成される表示を受信してもよく、表示のコンテンツを機器デバイス３００上でローカルに表示してもよい。このように、命令の処理は、サーバによって遠隔で行われる一方、結果として生じる表示は、機器デバイス３００上にローカルに提供される。機器デバイス３００は、入力インターフェース３１０を介して、ユーザからの入力を受信し、対応する表示を処理および生成するために、それらの入力を遠隔サーバに伝送してもよい。例えば、機器デバイス３００は、上／下ボタンが入力インターフェース３１０を介して選択されたことを示す、通信を遠隔サーバに伝送してもよい。遠隔サーバは、その入力に従って命令を処理し、入力に対応するアプリケーションの表示を生成してもよい（例えば、カーソルを上／下に移動させる表示）。生成された表示は、次いで、ユーザへの提示のために、機器デバイス３００に伝送される。
【００６７】
いくつかの実施形態では、メディアガイドアプリケーションは、インタープリタまたは仮想マシン（制御回路３０４によって起動される）によって、ダウンロードされ、解釈または別様に起動される。いくつかの実施形態では、ガイドアプリケーションは、ＥＴＶバイナリ交換形式（ＥＴＶ  Ｂｉｎａｒｙ  Ｉｎｔｅｒｃｈａｎｇｅ  Ｆｏｒｍａｔ／ＥＢＩＦ）でエンコードされ、好適なフィードの一部として制御回路３０４によって受信され、制御回路３０４上で起動するユーザエージェントによって解釈されてもよい。例えば、ガイドアプリケーションは、ＥＢＩＦアプリケーションであってもよい。いくつかの実施形態では、ガイドアプリケーションは、制御回路３０４によって実行されるローカル仮想マシンまたは他の好適なミドルウェアによって受信および起動される、一連のＪＡＶＡ（登録商標）ベースのファイルによって定義されてもよい。そのような実施形態のうちのいくつか（例えば、ＭＰＥＧ−２または他のデジタルメディアエンコードスキームを採用するもの）では、ガイドアプリケーションは、例えば、番組のＭＰＥＧオーディオおよびビデオパケットを用いたＭＰＥＧ−２オブジェクトカルーセルにおいてエンコードおよび伝送されてもよい。
【００６８】
図３のユーザ機器デバイス３００は、ユーザテレビ機器４０２、ユーザコンピュータ機器４０４、無線ユーザ通信デバイス４０６、または非携帯型ゲーム機等のコンテンツにアクセスするために好適な任意の他のタイプのユーザ機器として、図４のシステム４００に実装することができる。簡単にするために、これらのデバイスは、本明細書では総称して、ユーザ機器またはユーザ機器デバイスと称されてもよく、前述のユーザ機器デバイスに実質的に類似してもよい。メディアガイドアプリケーションが実装され得る、ユーザ機器デバイスは、独立型デバイスとして機能してもよい、またはデバイスのネットワークの一部であってもよい。デバイスの種々のネットワーク構成が実装されてもよく、以下でさらに詳細に議論される。
【００６９】
図３に関連して前述のシステム特徴のうちの少なくともいくつかを利用する、ユーザ機器デバイスは、単に、ユーザテレビ機器４０２、ユーザコンピュータ機器４０４、または無線ユーザ通信デバイス４０６として分類されなくてもよい。例えば、ユーザテレビ機器４０２は、いくつかのユーザコンピュータ機器４０４のように、インターネットコンテンツへアクセスすることを可能にするインターネット対応型であってもよい一方で、ユーザコンピュータ機器４０４は、いくつかのテレビ機器４０２のように、テレビ番組へアクセスすることを可能にするチューナを含んでもよい。メディアガイドアプリケーションはまた、種々の異なるタイプのユーザ機器上で同一レイアウトを有してもよい、またはユーザ機器の表示能力に合わせられてもよい。例えば、ユーザコンピュータ機器４０４上では、ガイドアプリケーションは、ウェブブラウザによってアクセスされるウェブサイトとして提供されてもよい。別の実施例では、ガイドアプリケーションは、無線ユーザ通信デバイス４０６用に縮小されてもよい。
【００７０】
システム４００では、典型的には、各タイプのユーザ機器デバイスが１つを上回って存在するが、図面が複雑になり過ぎることを回避するように、それぞれ１つだけが図４に示されている。加えて、各ユーザは、１つを上回るタイプのユーザ機器デバイスと、また、各タイプのユーザ機器デバイスのうちの１つを上回るものとを利用してもよい。
【００７１】
いくつかの実施形態では、ユーザ機器デバイス（例えば、ユーザテレビ機器４０２、ユーザコンピュータ機器４０４、無線ユーザ通信デバイス４０６）は、「第２の画面デバイス」と称されてもよい。例えば、第２の画面デバイスは、第１のユーザ機器デバイス上に提示されるコンテンツを補完してもよい。第２の画面デバイス上に提示されるコンテンツは、第１のデバイス上に提示されるコンテンツを補完する、任意の好適なコンテンツであってもよい。いくつかの実施形態では、第２の画面デバイスは、第１のデバイスの設定および表示選好を調節するためのインターフェースを提供する。いくつかの実施形態では、第２の画面デバイスは、他の第２の画面デバイスと相互作用する、またはソーシャルネットワークと相互作用するために構成される。第２の画面デバイスは、第１のデバイスと同一の部屋内に、第１のデバイスと異なる部屋であるが、同一の家または建物内、もしくは第１のデバイスと異なる建物内に位置することができる。
【００７２】
ユーザはまた、家庭内デバイスおよび遠隔デバイスにわたって一貫したメディアガイドアプリケーション設定を維持するように、種々の設定を設定してもよい。設定は、本明細書に説明される設定、ならびにお気に入りのチャンネルおよび番組、番組を推奨するためにガイドアプリケーションが利用する番組選好、表示選好、および他の望ましいガイド設定を含む。例えば、ユーザが、オフィスのパソコンで、例えば、ウェブサイトｗｗｗ．ａｌｌｒｏｖｉ．ｃｏｍの上で、チャンネルをお気に入りとして設定した場合、所望に応じて、同一のチャンネルが、ユーザの家庭内デバイス（例えば、ユーザテレビ機器およびユーザコンピュータ機器）、ならびにユーザのモバイルデバイス上でお気に入りとして表示されるであろう。したがって、同一または異なるタイプのユーザ機器デバイスであるかどうかにかかわらず、１つのユーザ機器デバイス上で行われる変更は、別のユーザ機器デバイス上のガイド体験を変更することができる。さらに、行われる変更は、ユーザによる設定入力、ならびにガイドアプリケーションによって監視されるユーザアクティビティに基づいてもよい。
【００７３】
ユーザ機器デバイスは、通信ネットワーク４１４に結合されてもよい。すなわち、ユーザテレビ機器４０２、ユーザコンピュータ機器４０４、および無線ユーザ通信デバイス４０６は、それぞれ、通信パス４０８、４１０、および４１２を介して、通信ネットワーク４１４に結合される。通信ネットワーク４１４は、インターネット、携帯電話ネットワーク、モバイルボイスまたはデータネットワーク（例えば、４ＧまたはＬＴＥネットワーク））、ケーブルネットワーク、公衆交換電話ネットワーク、または他のタイプの通信ネットワーク、もしくは通信ネットワークの組み合わせを含む、１つまたはそれを上回るネットワークであってもよい。パス４０８、４１０、および４１２は、別個または一緒に、衛星パス、光ファイバパス、ケーブルパス、インターネット通信をサポートするパス（例えば、ＩＰＴＶ）、フリースペース接続（例えば、放送または他の無線信号用）、もしくは任意の他の好適な有線または無線通信パス、もしくはそのようなパスの組み合わせ等、１つまたはそれを上回る通信パスを含んでもよい。パス４１２は、図４に示された例示的実施形態において、無線パスであることを示すように破線で描かれ、パス４０８および４１０は、有線パスであることを示すように実線で描かれている（しかし、これらのパスは、所望に応じて、無線パスであってもよい）。ユーザ機器デバイスとの通信は、これらの通信パスのうちの１つまたはそれを上回るものによって提供されてもよいが、図４では、図面が複雑になり過ぎることを回避するように、単一パスとして示されている。
【００７４】
通信パスは、ユーザ機器デバイスの間には描かれていないが、これらのデバイスは、パス４０８、４１０、および４１２に関連して上記で説明されるもの、ならびにＵＳＢケーブル、ＩＥＥＥ１３９４ケーブル、無線パス（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、赤外線、ＩＥＥＥ８０２−１１ｘ等）等の他の短距離ポイントツーポイント通信パス、もしくは有線または無線パスを介した他の短距離通信等の通信パスを介して、相互に直接通信してもよい。ＢＬＵＥＴＯＯＴＨ（登録商標）は、Ｂｌｕｅｔｏｏｔｈ（登録商標）  ＳＩＧ，  ＩＮＣ．によって所有される認証マークである。ユーザ機器デバイスはまた、通信ネットワーク４１４を介した間接的パスを通して、直接相互に通信してもよい。
【００７５】
システム４００は、それぞれ、通信パス４２０および４２２を介して、通信ネットワーク４１４に結合される、コンテンツソース４１６およびメディアガイドデータソース４１８を含む。パス４２０および４２２は、パス４０８、４１０、および４１２に関して上記で説明される通信パスのうちのいずれかを含んでもよい。コンテンツソース４１６およびメディアガイドデータソース４１８との通信は、１つまたはそれを上回る通信パスを介して交信されてもよいが、図４では、図面が複雑になり過ぎることを回避するように、単一パスとして示されている。加えて、コンテンツソース４１６およびメディアガイドデータソース４１８のそれぞれが１つを上回ってあってもよいが、図４では、図面が複雑になり過ぎることを回避するように、それぞれ１つだけが示されている。（これらのソースのそれぞれの異なるタイプを以下で議論する）。所望に応じて、コンテンツソース４１６およびメディアガイドデータソース４１８は、１つのソースデバイスとして統合されてもよい。ソース４１６および４１８と、ユーザ機器デバイス４０２、４０４、および４０６との間の通信は、通信ネットワーク４１４を通したものとして示されているが、いくつかの実施形態では、ソース４１６および４１８は、パス４０８、４１０、および４１２に関連して上記で説明されるもの等の通信パス（図示せず）を介して、ユーザ機器デバイス４０２、４０４、および４０６と直接通信してもよい。
【００７６】
コンテンツソース４１６は、テレビ配信施設、ケーブルシステムヘッドエンド、衛星配信施設、番組ソース（例えば、ＮＢＣ、ＡＢＣ、ＨＢＯ等のテレビ放送会社）、中間配信施設および／またはサーバ、インターネットプロバイダ、オンデマンドメディアサーバ、および他のコンテンツプロバイダを含む、１つまたはそれを上回るタイプのコンテンツ配信機器を含んでもよい。ＮＢＣは、Ｎａｔｉｏｎａｌ  Ｂｒｏａｄｃａｓｔｉｎｇ  Ｃｏｍｐａｎｙ，  Ｉｎｃ．によって所有される商標であり、ＡＢＣは、Ａｍｅｒｉｃａｎ  Ｂｒｏａｄｃａｓｔｉｎｇ  Ｃｏｍｐａｎｙ，  ＩＮＣ．によって所有される商標であり、ＨＢＯは、Ｈｏｍｅ  Ｂｏｘ  Ｏｆｆｉｃｅ，  Ｉｎｃ．によって所有される商標である。コンテンツソース４１６は、コンテンツの発信元であってもよく（例えば、テレビ放送会社、ウェブキャストプロバイダ等）、またはコンテンツの発信元でなくてもよい（例えば、オンデマンドコンテンツプロバイダ、ダウンロード用放送番組のコンテンツのインターネットプロバイダ等）。コンテンツソース４１６は、ケーブルソース、衛星プロバイダ、オンデマンドプロバイダ、インターネットプロバイダ、オーバーザトップコンテンツプロバイダ、または他のコンテンツのプロバイダを含んでもよい。コンテンツソース４１６はまた、ユーザ機器デバイスのうちのいずれかから遠隔の場所にある、異なるタイプのコンテンツ（ユーザによって選択されるビデオコンテンツを含む）を記憶するために使用される、遠隔メディアサーバを含んでもよい。コンテンツの遠隔記憶のため、および遠隔に記憶されたコンテンツをユーザ機器に提供するためのシステムおよび方法は、全体として参照することにより本明細書に組み込まれる、２０１０年７月２０日出願のＥｌｌｉｓらの米国特許出願第７，７６１，８９２号に関連して、さらに詳細に議論されている。
【００７７】
メディアガイドデータソース４１８は、前述のメディアガイドデータ等のメディアガイドデータを提供してもよい。メディアガイドデータは、任意の好適なアプローチを使用して、ユーザ機器デバイスに提供されてもよい。いくつかの実施形態では、ガイドアプリケーションは、データフィード（例えば、継続フィードまたはトリクルフィード）を介して、番組ガイドデータを受信する、独立型双方向テレビ番組ガイドであってもよい。番組スケジューリングデータおよび他のガイドデータは、テレビチャンネルのサイドバンド上で、帯域内デジタル信号を使用して、帯域外デジタル信号を使用して、または任意の他の好適なデータ伝送技術によって、ユーザ機器に提供されてもよい。番組スケジューリングデータおよび他のメディアガイドデータは、複数のアナログまたはデジタルテレビチャンネル上でユーザ機器に提供されてもよい。
【００７８】
いくつかの実施形態では、メディアガイドデータソース４１８からのガイドデータは、クライアントサーバアプローチを使用して、ユーザの機器に提供されてもよい。例えば、ユーザ機器デバイスは、メディアガイドデータをサーバからプルしてもよい、またはサーバは、メディアガイドデータをユーザ機器デバイスにプッシュしてもよい。いくつかの実施形態では、ユーザの機器上に常駐するガイドアプリケーションクライアントは、必要に応じて、例えば、ガイドデータが、古くなっているとき、またはユーザ機器デバイスが、データを受信する要求をユーザから受信するとき、ソース４１８とセッションを開始し、ガイドデータを取得してもよい。メディアガイドは、任意の好適な頻度で（例えば、継続的に、毎日、ユーザ指定期間で、システム指定期間で、ユーザ機器からの要求に応じて等）ユーザ機器に提供されてもよい。メディアガイドデータソース４１８は、ユーザ機器デバイス４０２、４０４、および４０６に、メディアガイドアプリケーション自体、またはメディアガイドアプリケーションのソフトウェア更新を提供してもよい。
【００７９】
いくつかの実施形態では、メディアガイドデータソースは、データベースを含み、メディアガイドデータを記憶する。
【００８０】
いくつかの実施形態では、メディアガイドデータは、ユーザプロファイルを含んでもよい。例えば、ユーザプロファイルは、ユーザについてのデータを含んでもよい。いくつかの実施形態では、ユーザプロファイル内のデータは、キーワードと、キーワードにおけるユーザの関心を表す個別のキーワード毎の加重とを含む。
【００８１】
いくつかの実施形態では、メディアガイドデータは、メディアアセットと関連付けられたデータ構造を含んでもよい。データ構造は、メディアアセット内に生じるキーワードと、キーワードがメディアアセット内に生じる回数に対応する個別のキーワード毎の加重とを含んでもよい。
【００８２】
いくつかの実施形態では、メディアガイドデータは、視聴者データを含んでもよい。例えば、視聴者データは、現在および／または履歴ユーザアクティビティ情報（例えば、ユーザが典型的に見るコンテンツ、ユーザがコンテンツを見る時刻、ユーザがソーシャルネットワークと相互作用するかどうか、ユーザがソーシャルネットワークと相互作用し、情報をポストする時間、ユーザが典型的に見るコンテンツのタイプ（例えば、有料ＴＶまたは無料ＴＶ）、気分、脳の活動情報等）を含んでもよい。メディアガイドデータはまた、サブスクリプションデータを含んでもよい。例えば、サブスクリプションデータは、所与のユーザがサブスクライブするソースまたはサービスおよび／または所与のユーザが以前サブスクライブしていたが、後にアクセスを打ち切ったソースまたはサービスを識別してもよい（例えば、ユーザがプレミアムチャンネルをサブスクライブしているかどうか、ユーザがプレミアムレベルのサービスを追加したかどうか、ユーザがインターネット速度を加速させたかどうか）。いくつかの実施形態では、視聴者データおよび／またはサブスクリプションデータは、１年を上回る期間の間の所与のユーザのパターンを識別してもよい。メディアガイドデータは、所与のユーザがサービス／ソースへのアクセスを打ち切るであろう可能性を示すスコアを生成するために使用される、モデル（例えば、残存者モデル）を含んでもよい。例えば、メディアガイドアプリケーションは、サブスクリプションデータと、所与のユーザが特定のサービスまたはソースへのアクセスを打ち切るであろうかどうかの可能性を示す、値またはスコアを生成するためのモデルを併用して、視聴者データを処理してもよい。特に、より高いスコアは、ユーザが特定のサービスまたはソースへのアクセスを打ち切るであろう、より高いレベルの信頼性を示し得る。
【００８３】
メディアガイドアプリケーションは、例えば、ユーザ機器デバイス上に実装される独立型アプリケーションであってもよい。例えば、メディアガイドアプリケーションは、記憶装置３０８内に記憶され、ユーザ機器デバイス３００の制御回路３０４によって実行され得る、ソフトウェアまたは実行可能命令のセットとして実装されてもよい。いくつかの実施形態では、メディアガイドアプリケーションは、クライアント−サーバアプリケーションであってもよく、その場合、クライアントアプリケーションのみ、ユーザ機器デバイス上に常駐し、サーバアプリケーションは、遠隔サーバ上に常駐する。例えば、メディアガイドアプリケーションは、部分的に、ユーザ機器デバイス３００の制御回路３０４上のクライアントアプリケーションとして、および部分的に遠隔サーバ上で、遠隔サーバの制御回路上で起動するサーバアプリケーションとして（例えば、メディアガイドデータソース４１８）、実装されてもよい。遠隔サーバの制御回路（メディアガイドデータソース４１８等）によって実行されると、メディアガイドアプリケーションは、制御回路に、ガイドアプリケーション表示を生成し、生成された表示をユーザ機器デバイスに伝送するように命令してもよい。サーバアプリケーションは、メディアガイドデータソース４１８の制御回路に、ユーザ機器上での記憶のためのデータを伝送するように命令してもよい。クライアントアプリケーションは、受信用ユーザ機器の制御回路に、ガイドアプリケーション表示を生成するように命令してもよい。
【００８４】
ユーザ機器デバイス４０２、４０４、および４０６に配信されるコンテンツならびに／またはメディアガイドデータは、オーバーザトップ（ＯＴＴ）コンテンツであってもよい。ＯＴＴコンテンツ配信は、前述の任意のユーザ機器デバイスを含む、インターネット対応型ユーザデバイスが、ケーブルまたは衛星接続を経由して受信されるコンテンツに加え、前述の任意のコンテンツを含む、インターネットを経由して転送されるコンテンツを受信することを可能にする。ＯＴＴコンテンツは、インターネットサービスプロバイダ（ＩＳＰ）によって提供されるインターネット接続を介して配信されるが、第三者も、コンテンツを配信する。ＩＳＰは、視聴能力、著作権、またはコンテンツの再配信に関与していなくてもよく、ＯＴＴコンテンツプロバイダによって提供されるＩＰパケットのみ転送してもよい。ＯＴＴコンテンツプロバイダの実施例として、ＩＰパケットを介して、オーディオおよびビデオを提供する、ＹＯＵＴＵＢＥ（登録商標）、ＮＥＴＦＬＩＸ、およびＨＵＬＵが挙げられる。Ｙｏｕｔｕｂｅは、Ｇｏｏｇｌｅ  Ｉｎｃ．によって所有される商標であり、Ｎｅｔｆｌｉｘは、Ｎｅｔｆｌｉｘ，  Ｉｎｃ．によって所有される商標であり、Ｈｕｌｕは、Ｈｕｌｕ，  ＬＬＣ．によって所有される商標である。ＯＴＴコンテンツプロバイダは、加えて、または代替として、前述のメディアガイドデータを提供してもよい。コンテンツおよび／またはメディアガイドデータに加え、ＯＴＴコンテンツのプロバイダは、メディアガイドアプリケーション（例えば、ウェブベースのアプリケーションまたはクラウドベースのアプリケーション）を配信することができ、またはコンテンツは、ユーザ機器デバイス上に記憶されるメディアガイドアプリケーションによって表示されることができる。
【００８５】
メディアガイドシステム４００は、いくつかのアプローチまたはネットワーク構成を例証することを意図しており、これによって、ユーザ機器デバイスならびにコンテンツおよびガイドデータのソースは、コンテンツにアクセスし、メディアガイドを提供する目的で、相互に通信してもよい。本明細書に説明される実施形態は、これらのアプローチの任意の１つまたは一部において、もしくはコンテンツを配信し、メディアガイドを提供するための他のアプローチを採用するシステムにおいて、適用されてもよい。以下の４つのアプローチは、図４の一般的実施例の具体的例証を提供する。
【００８６】
１つのアプローチでは、ユーザ機器デバイスは、ホームネットワーク内で相互に通信してもよい。ユーザ機器デバイスは、上記で説明される短距離ポイントツーポイント通信方式を介して、ホームネットワーク上に提供されるハブまたは他の類似デバイスを通した間接パスを介して、もしくは通信ネットワーク４１４を介して、直接相互に通信することができる。１つの家庭内の複数の個人のそれぞれが、ホームネットワーク上の異なるユーザ機器デバイスを操作してもよい。結果として、種々のメディアガイド情報または設定が、異なるユーザ機器デバイス間で伝達されることが望ましくてもよい。例えば、２００５年７月１１日出願のＥｌｌｉｓらの米国特許公開第２００５／０２５１８２７号でさらに詳細に説明されているように、ホームネットワーク内の異なるユーザ機器デバイス上で、ユーザが一貫したメディアガイドアプリケーション設定を維持することが望ましくてもよい。ホームネットワーク内の異なるタイプのユーザ機器デバイスがまた、相互に通信し、コンテンツを伝送してもよい。例えば、ユーザは、ユーザコンピュータ機器から携帯用ビデオプレーヤまたは携帯用音楽プレーヤにコンテンツを伝送してもよい。
【００８７】
第２のアプローチでは、ユーザは、複数のタイプのユーザ機器を有してもよく、これによって、コンテンツにアクセスし、メディアガイドを取得する。例えば、一部のユーザは、家庭内およびモバイルデバイスによってアクセスされる、ホームネットワークを有してもよい。ユーザは、遠隔デバイス上に実装されるメディアガイドアプリケーションを介して、家庭内デバイスを制御してもよい。例えば、ユーザは、オフィスのパーソナルコンピュータ、もしくはＰＤＡまたはウェブ対応携帯電話等のモバイルデバイスを介して、ウェブサイト上のオンラインメディアガイドアプリケーションにアクセスしてもよい。ユーザは、オンラインガイドアプリケーション上で種々の設定（例えば、録画、リマインダ、または他の設定）を設定して、ユーザの家庭内機器を制御してもよい。オンラインガイドは、直接、またはユーザの家庭内機器上のメディアガイドアプリケーションと通信することによって、ユーザの機器を制御してもよい。ユーザ機器デバイスが相互から遠隔の場所にある、ユーザ機器デバイスの通信のための種々のシステムおよび方法は、例えば、その全体を参照することにより本明細書に組み込まれる、Ｅｌｌｉｓらの２０１１年１０月２５日発行の米国特許第８，０４６，８０１号で議論されている。
【００８８】
第３のアプローチでは、家庭内外のユーザ機器デバイスのユーザは、コンテンツソース４１６と直接通信し、コンテンツにアクセスするために、そのメディアガイドアプリケーションを使用することができる。具体的には、家庭内では、ユーザテレビ機器４０２およびユーザコンピュータ機器４０４のユーザは、メディアガイドアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。ユーザはまた、無線ユーザ通信デバイス４０６を使用して、家庭外のメディアガイドアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。
【００８９】
第４のアプローチでは、ユーザ機器デバイスは、クラウドコンピューティング環境内で操作し、クラウドサービスにアクセスしてもよい。クラウドコンピューティング環境では、コンテンツ共有、記憶、または配信のための種々のタイプのコンピューティングサービス（例えば、ビデオ共有サイトまたはソーシャルネットワーキングサイト）が、「クラウド」と称される、ネットワーク−アクセス可能コンピューティングおよび記憶リソースの集合によって提供される。例えば、クラウドは、ネットワークを介して接続される、種々のタイプのユーザおよびデバイスにクラウドベースのサービス、例えば、通信ネットワーク４１４を介したインターネットを提供する、中央または分散場所に位置し得る、サーバコンピューティングデバイスの集合を含むことができる。これらのクラウドリソースは、１つまたはそれを上回るコンテンツソース４１６および１つまたはそれを上回るメディアガイドデータソース４１８を含んでもよい。加えて、または代替として、遠隔コンピューティングサイトは、ユーザテレビ機器４０２、ユーザコンピュータ機器４０４、および無線ユーザ通信デバイス４０６等の他のユーザ機器デバイスを含んでもよい。例えば、他のユーザ機器デバイスは、ビデオの記憶されたコピーまたはストリーミングされたビデオへのアクセスを提供してもよい。そのような実施形態では、ユーザ機器デバイスは、中央サーバと通信せずに、ピアツーピア様式で操作してもよい。
【００９０】
クラウドは、ユーザ機器デバイスのために、他の実施例の中でもとりわけ、コンテンツ記憶、コンテンツ共有、またはソーシャルネットワーキングサービス等のサービスへのアクセス、ならびに前述の任意のコンテンツへのアクセスを提供する。サービスは、クラウドコンピューティングサービスプロバイダを通して、またはオンラインサービスの他のプロバイダを通して、クラウド内で提供されることができる。例えば、クラウドベースのサービスは、コンテンツ記憶サービス、コンテンツ共有サイト、ソーシャルネットワーキングサイト、または他のサービスを含むことができ、それを介して、ユーザ供給コンテンツは、接続されたデバイス上の他者によって視聴するために配信される。これらのクラウドベースのサービスは、ユーザ機器デバイスが、コンテンツをローカルに記憶し、ローカルに記憶されたコンテンツにアクセスするのではなく、コンテンツをクラウドに記憶し、コンテンツをクラウドから受信することを可能にしてもよい。
【００９１】
ユーザは、カムコーダ、ビデオモード付きデジタルカメラ、オーディオレコーダ、携帯電話、およびハンドヘルドコンピューティングデバイス等の種々のコンテンツ捕捉デバイスを使用して、コンテンツを録画してもよい。ユーザは、直接、例えば、ユーザコンピュータ機器４０４から、またはコンテンツ捕捉特徴を有する、無線ユーザ通信デバイス４０６からのいずれかにおいて、クラウド上のコンテンツ記憶サービスにコンテンツをアップロードすることができる。代替として、ユーザは、最初に、コンテンツをユーザコンピュータ機器４０４等のユーザ機器デバイスに転送することができる。コンテンツを記憶するユーザ機器デバイスは、通信ネットワーク４１４上のデータ伝送サービスを使用して、コンテンツをクラウドにアップロードする。いくつかの実施形態では、ユーザ機器デバイス自体が、クラウドリソースであって、他のユーザ機器デバイスが、直接、ユーザがコンテンツを記憶したユーザ機器デバイスから、コンテンツにアクセスすることができる。
【００９２】
クラウドリソースは、例えば、ウェブブラウザ、メディアガイドアプリケーション、デスクトップアプリケーション、モバイルアプリケーション、および／またはそれらのアクセスアプリケーションの任意の組み合わせを使用して、ユーザ機器デバイスによってアクセスされてもよい。ユーザ機器デバイスは、アプリケーション配信のために、クラウドコンピューティングに依拠する、クラウドクライアントであってもよい、またはユーザ機器デバイスは、クラウドリソースにアクセスせずに、いくつかの機能性を有してもよい。例えば、ユーザ機器デバイス上で起動するいくつかのアプリケーションは、クラウドアプリケーション、すなわち、インターネットを経由して、サービスとして配信されるアプリケーションであってもよい一方、他のアプリケーションは、ユーザ機器デバイス上に記憶され、起動されてもよい。いくつかの実施形態では、ユーザデバイスは、コンテンツを複数のクラウドリソースから同時に受信してもよい。例えば、ユーザデバイスは、オーディオを１つのクラウドリソースからストリーミングする一方、コンテンツを第２のクラウドリソースからダウンロードすることができる。または、ユーザデバイスは、より効率的ダウンロードのために、コンテンツを複数のクラウドリソースからダウンロードすることができる。いくつかの実施形態では、ユーザ機器デバイスは、図３に関連して説明される処理回路によって行われる処理操作等の処理操作のために、クラウドリソースを使用することができる。
【００９３】
本明細書で参照されるように、用語「〜に応答して」は、「〜の結果として開始される」ことを指す。例えば、第２のアクションに応答して行われている第１のアクションは、第１のアクションと第２のアクションとの間に介在ステップを含んでもよい。本明細書で参照されるように、用語「〜に直接応答して」は、「〜によって引き起こされる」ことを指す。例えば、第２のアクションに直接応答して行われている第１のアクションは、第１のアクションと第２のアクションとの間に介在ステップを含まなくてもよい。
【００９４】
図５は、本開示のいくつかの実施形態による、ビデオ５０４ａ、５０４ｂ、５０４ｃに関連する推奨５０６ａ、５０６ｂ、５０６ｃを提供するために使用される、例証的表示５００、５２０、および５４０を示す。例えば、ユーザが、我々の太陽系内準惑星についてのビデオ「Ｐｌｕｔｏ」を選択し得る。表示５００に示されるように、メディアガイドアプリケーションは、表示のために、「Ｐｌｕｔｏ」を生成してもよい。メディアガイドアプリケーションは、「Ｐｌｕｔｏ」内に生じるキーワードおよび各キーワードが「Ｐｌｕｔｏ」内で生じる回数を含むようにユーザのプロファイルを修正してもよい。メディアガイドアプリケーションは、表示のために、そのコンテンツ内に類似キーワードを有する、他のビデオの推奨５０６ａを生成してもよい。１つのそのようなビデオは、キーワード「Ｐｌｕｔｏ」が数回生じる、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」である。
【００９５】
「Ｐｌｕｔｏ」を視聴後、ユーザは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」等のメディアガイドアプリケーションによって推奨されるビデオのうちの１つを選択することによって、準惑星についてさらに調べることを決定し得る。表示５２０に示されるように、メディアガイドアプリケーションは、表示のために、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を生成してもよく、表示のために、他のビデオの推奨５０６ｂを生成してもよい。「Ｐｌｕｔｏ」および「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」は、同一のキーワードのうちのいくつかを有するが、ネズミとイヌの友情についてのものである、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツは、明らかに、準惑星へのユーザの関心に関連しない。
【００９６】
短時間にわたって「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を視聴後、ユーザは、そのビデオに関心がないことを認識し得、推奨５０６ｃからの別のビデオ「ＮＡＳＡ：Ｐｌｕｔｏ」を選択し得る。メディアガイドアプリケーションは、ユーザが「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を視聴した期間が短かったことを判定してもよく、それに応答して、将来的推奨がユーザの関心により整合されるように、ユーザのプロファイルを修正してもよい。具体的には、メディアガイドアプリケーションは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツ内に生じるキーワードおよび各キーワードが「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」内で生じる回数でユーザのプロファイルを更新し、類似ビデオの将来的推奨を防止してもよい。例えば、メディアガイドアプリケーションは、「ｄｏｇ」および「ｂｏｎｅ」等のキーワードをユーザプロファイルに追加し、これらのキーワードの多数の発生を伴うビデオがユーザに推奨されるべきではないことを示してもよい。メディアガイドアプリケーションは、キーワードまたはその対応する加重のいずれもユーザプロファイル内に存在しなかったため、ビデオと関連付けられたデータ構造からの「ｄｏｇ」および「ｂｏｎｅ」と関連付けられた加重をユーザプロファイルに追加してもよい。加えて、メディアガイドアプリケーションは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツ内に生じるキーワードに対応し、ユーザプロファイル内にすでに存在する加重を低減させてもよい。本プロセスは、ステップ６２０（図６）に関して以下でより詳細に議論される。
【００９７】
「ＮＡＳＡ：Ｐｌｕｔｏ」のユーザの選択に応答して、メディアガイドアプリケーションは、表示５４０に示されるように、表示のために、「ＮＡＳＡ：Ｐｌｕｔｏ」および他のビデオの推奨５０６ｃを生成してもよい。推奨は、「ｄｏｇ」および「ｂｏｎｅ」等のキーワードの多数の発生を伴うビデオがもはや推奨されないため、「ＭｉｃｋｅｙおよびＰｌｕｔｏ」に類似するビデオを含まないものとなり得る。
【００９８】
「ＮＡＳＡ：Ｐｌｕｔｏ」は、ユーザに関心があるものであるため、ユーザは、ビデオの全体を視聴し得る。メディアガイドアプリケーションは、ユーザが「ＮＡＳＡ：Ｐｌｕｔｏ」を長時間にわたって視聴したことを判定してもよく、それに応答して、類似ビデオの将来的推奨を増加させるようにユーザプロファイルを修正してもよい。具体的には、メディアガイドアプリケーションは、「ＮＡＳＡ：Ｐｌｕｔｏ」のコンテンツ内で生じるキーワードおよび各キーワードが「ＮＡＳＡ：Ｐｌｕｔｏ」内で生じる回数でユーザのプロファイルを更新してもよい。例えば、メディアガイドアプリケーションは、「ＮＡＳＡ」および「ｓｐａｃｅ」等のキーワードをユーザのプロファイルに追加し、これらのキーワードの発生を伴うビデオがユーザに推奨されるべきであることを示してもよい。
【００９９】
図６は、ユーザアクティビティに基づいて、メディアアセットをユーザに推奨し、ユーザプロファイルを修正するための例証的ステップのフローチャートである。プロセス６００は、メディアアセットの推奨（例えば、一覧２０８、２１０、２１２（図２））をディスプレイデバイス（例えば、ディスプレイ３１２（図３））上に提示するために使用されてもよい。プロセス６００または任意のそのステップは、図３−４に示されるデバイスのいずれか上で生じる、またはそれによって提供され得ることに留意されたい。例えば、プロセス６００は、メディアガイドアプリケーション（例えば、図４に図示および説明されるデバイスのいずれか上に実装される）によって命令されるように、制御回路３０４（図３）によって実行されてもよい。
【０１００】
ステップ６０２では、メディアガイドアプリケーションは、ユーザ入力デバイス（例えば、ユーザ入力インターフェース３１０（図３））から、第１のメディアアセットの第１のユーザ選択を受信し（例えば、制御回路３０４（図３）を介して）、第１のメディアアセットは、第１のメディアアセットのコンテンツ内で生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第１のメディアアセットのコンテンツ内で生じる回数を反映する複数の加重とを含む、データ構造と関連付けられる。例えば、メディアガイドアプリケーションは、第１のビデオ内で生じるキーワードと、各キーワードの発生回数を反映する加重とを含む、データ構造と関連付けられる、第１のビデオのユーザ選択を受信してもよい。
【０１０１】
ステップ６０４では、メディアガイドアプリケーションは、第１のメディアアセットの第１のユーザ選択の受信に応答して、表示のために、第１のメディアアセットを生成する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第１のビデオのユーザの選択に応答して、表示のために、第１のビデオを生成してもよい。例えば、図５に関して議論されるように、ユーザが、「Ｐｌｕｔｏ」を選択すると、メディアガイドアプリケーションは、表示のために、ビデオ５０４ａ「Ｐｌｕｔｏ」を生成する。
【０１０２】
ステップ６０６では、メディアガイドアプリケーションは、第１のメディアと関連付けられた複数のキーワードアセットおよび複数の加重に基づいて、ユーザと関連付けられたユーザプロファイルを修正する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第１のビデオおよびその対応する加重内で生じるキーワードに基づいて、ユーザと関連付けられたユーザプロファイルを修正してもよい。
【０１０３】
ステップ６０８では、メディアガイドアプリケーションは、ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨をユーザに生成する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、表示のために、ユーザプロファイルに基づいて、ユーザのための第２のビデオの推奨を生成してもよい。例えば、図５に関して議論されるように、メディアガイドアプリケーションは、表示のために、ユーザプロファイルに基づいて、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を含む、推奨５０６ａを生成する。
【０１０４】
ステップ６１０では、メディアガイドアプリケーションは、ユーザ入力デバイス（例えば、ユーザ入力インターフェース３１０（図３））から、ユーザによる第２のメディアアセットの第２のユーザ選択を受信する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第２のビデオのユーザの選択を受信してもよい。例えば、図５に関して議論されるように、ユーザは、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を推奨５０６ａから選択する。
【０１０５】
ステップ６１２では、メディアガイドアプリケーションは、第２のメディアアセットの第２のユーザ選択の受信に応答して、表示のために、第２のメディアアセットを生成する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第２のビデオのユーザの選択に応答して、表示のために、第２のビデオを生成してもよい。例えば、図５に関して議論されるように、ユーザが、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を選択すると、メディアガイドアプリケーションは、表示のために、ビデオ５０４ｂ「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を生成する。
【０１０６】
ステップ６１４では、メディアガイドアプリケーションは、ある期間後、第２のメディアアセット（例えば、メディアアセット２０６（図２））の表示を第３のメディアアセットの表示に変更するための第３のユーザ選択（例えば、ユーザ入力インターフェース３１０（図３）を介して）を受信する（例えば、制御回路３０４（図３）を介して）。例えば、ある期間後、ユーザは、第３のビデオを選択し得、メディアガイドアプリケーションは、第３のビデオのユーザの選択を受信し得る。例えば、図５に関して議論されるように、ユーザは、ある期間後、「ＮＡＳＡ：Ｐｌｕｔｏ」を選択し、メディアガイドアプリケーションは、表示のために、ビデオ５０４ｃ「ＮＡＳＡ：Ｐｌｕｔｏ」を生成する。
【０１０７】
ステップ６１６では、メディアガイドアプリケーションは、期間が閾値時間を上回るかどうかを判定する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザが第２のビデオの視聴に費やした期間が閾値時間を上回るかどうかを判定してもよい。閾値時間は、ユーザがユーザが視聴しているメディアアセットのコンテンツに関心がある場合、ユーザが超過し、ユーザがユーザが視聴しているメディアアセットのコンテンツに関心がない場合、超過しないであろう期間を記述する。いくつかの実施形態では、メディアガイドアプリケーションは、ユーザが表示を別のメディアアセットの表示に変更すると、メディアアセット内の経過した時間を記憶することによって、期間を判定する。例えば、ユーザが「ＮＡＳＡ：Ｐｌｕｔｏ」を選択するとき、ユーザがビデオ「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」内で１０秒進めた場合、メディアガイドアプリケーションは、期間が１０秒であると判定する。例えば、図５に関して議論されるように、ユーザが「ＮＡＳＡ：Ｐｌｕｔｏ」を選択すると、メディアガイドアプリケーションは、ユーザが閾値時間を上回る期間にわたって「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を視聴しなかったため、ユーザがビデオ「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」に関心がないと判定する。
【０１０８】
ステップ６１８では、メディアガイドアプリケーションは、期間が閾値時間を上回ることの判定に応答して、ユーザプロファイル内において、第２のメディアアセットのコンテンツ内に生じるキーワードに対応する複数の加重を増加させ、ユーザプロファイルに、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加することによって、ユーザプロファイルを修正する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザが閾値時間より長い時間にわたって第２のビデオを視聴したことの判定に応答して、第２のビデオ内に生じるキーワードに対応するユーザプロファイル内の加重を増加させ、第２のビデオ内に生じるが、ユーザプロファイル内にまだない、キーワードおよびその対応する加重を追加することによって、ユーザプロファイルを修正してもよい。
【０１０９】
ステップ６２０では、メディアガイドアプリケーションは、期間が閾値時間を上回らないことの判定に応答して、ユーザプロファイル内において、第２のメディアアセットのコンテンツ内のキーワードに対応する複数の加重を減少させ、ユーザプロファイルに、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加することによって、ユーザプロファイルを修正する（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザが閾値時間より長い時間にわたって第２のビデオを視聴しなかったことの判定に応答して、ユーザプロファイル内において、第２のビデオ内に生じるキーワードに対応する加重を減少させ、第２のビデオ内に生じ、ユーザプロファイル内にまだない、キーワードおよびその対応する加重の負値を追加することによって、ユーザプロファイルを修正してもよい。例えば、図５に関して議論されるように、メディアガイドアプリケーションが、ユーザがビデオ「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」に関心がないことを判定すると、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツ内に生じるキーワードに対応するユーザプロファイル内の加重を低減させる。
【０１１０】
いくつかの実施形態では、キーワードは、メディアアセット内で生じる単語であってもよい。例えば、第１のビデオと関連付けられたキーワードは、第１のビデオ内で生じる単語である。
【０１１１】
いくつかの実施形態では、第１のメディアアセットと関連付けられたデータ構造は、キーワードに関する第１のメディアアセットのトランスクリプトを分析する（例えば、制御回路３０４（図３）を介して）ことによって作成されてもよく、トランスクリプトは、音声認識を第１のメディアアセットと関連付けられたオーディオに適用することによって作成されたテキストおよび第１のメディアアセットと関連付けられたクローズドキャプション／字幕のうちの１つである。例えば、第１のビデオと関連付けられたデータ構造は、第１のビデオのトランスクリプトを分析することによって作成されてもよく、トランスクリプトは、音声認識を第１のビデオのオーディオに適用することによって作成されたテキストまたは第１のビデオと関連付けられたクローズドキャプション／字幕のいずれかである。本プロセスは、図７および８に関してより詳細に議論される。
【０１１２】
いくつかの実施形態では、加重は、加重に対応するキーワードが生じる頻度に対応してもよく、頻度は、単位時間あたりキーワードが生じる平均回数である。例えば、第１のビデオ内の各キーワードの発生回数に対応する加重は、キーワードが第１のビデオ内に現れる頻度である。例えば、キーワード「Ｐｌｕｔｏ」は、第１のビデオ内で１分あたり３回の平均頻度で生じる場合、３の加重を第１のデータ構造内に有してもよい。
【０１１３】
いくつかの実施形態では、メディアガイドアプリケーションは、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことによって（例えば、記憶回路３０８（図３）および／または通信ネットワーク４１４（図４）を介してアクセス可能な任意の場所から）、ユーザプロファイルに基づいて、表示のために、第２のメディアアセットの推奨をユーザに生成してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第２のビデオ内で生じるキーワードと、各個別のキーワードが第２のビデオ内で生じる回数を反映する加重とを含む、第２のビデオと関連付けられた第２のデータ構造を読み出してもよい。メディアガイドアプリケーションは、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザプロファイルからのキーワードおよびその対応する加重が第２のデータ構造からのキーワードおよびその対応する加重に類似するかどうかを判定してもよい。本プロセスは、図９および１０に関してより詳細に議論される。
【０１１４】
メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造が類似することの判定に応答して、表示のために、第２のメディアアセットの推奨をユーザに生成してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザプロファイル内のキーワードおよびその対応する加重が第２のデータ構造内のキーワードおよびその対応する加重に類似することの判定に応答して、表示のために、第２のビデオの推奨を生成してもよい。
【０１１５】
いくつかの実施形態では、メディアガイドアプリケーションは、それらの統計的相関と所定の閾値を比較することによって、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定してもよい。いくつかの実施形態では、メディアガイドアプリケーションは、それらの関連付けられたデータ構造データと所定の閾値の統計的相関を比較することによって、２つのメディアアセットが類似するかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、メディアアセットと関連付けられた２つのデータ構造内のデータ間の統計的相関を測定する、相関係数を判定してもよい。メディアガイドアプリケーションは、相関係数と所定の閾値係数を比較し、２つのメディアアセットが強い正の相関を有し、したがって、類似するかどうかを判定してもよい。
【０１１６】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造の両方内に存在するキーワード毎に、あるキーワードに対応するユーザプロファイル内の複数の加重の第１の加重と、該キーワードに対応する第２のデータ構造内の複数の加重の第２の加重との間の差異を判定することによって（例えば、制御回路３０４（図３）を介して）、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造の両方内にあるキーワード毎に、ユーザプロファイル内のキーワードに対応する加重と、第２のデータ構造内のキーワードに対応する加重との間の差異を判定してもよい。本プロセスは、図９および１０に関してより詳細に議論される。例えば、図５の表示５００では、ユーザプロファイルは、以下のキーワードおよび対応する加重、すなわち、「Ｐｌｕｔｏ」、０．５；「ＮＡＳＡ」、０．３；「ｓｐａｃｅ」、０．２を含んでもよい。ユーザプロファイル内の各キーワードに対応する加重は、キーワードとともにメディアアセットへのユーザの関心を示す。加重が大きいほど、キーワードを伴うメディアアセットへの関心が強いことを示してもよい。第２のメディアアセット「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」と関連付けられた第２のデータ構造は、以下のキーワードおよび対応する加重、すなわち、「Ｐｌｕｔｏ」、０．３；「ｓｐａｃｅ」、０．１；「ｄｏｇ」、０．４；および「ｈｏｕｓｅ」、０．２を含んでもよい。第２のデータ構造内のキーワードは、メディアアセット「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」のコンテンツ内で生じる重要語であって、各キーワードと関連付けられた加重は、キーワードがメディアアセット内で生じる回数を示す。ユーザの関心を表すためのユーザプロファイルおよびメディアアセット「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」を表すための第２のデータ構造を使用して、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造を比較して、ユーザがメディアアセットに関心があるであろうかどうかを判定してもよい。メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造が類似するかどうかを判定することによって、「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」をユーザに推奨すべきかどうかを判定してもよい。メディアガイドアプリケーションは、キーワードがユーザプロファイルおよび第２のデータ構造の両方内に存在するため、キーワード「Ｐｌｕｔｏ」および「ｓｐａｃｅ」に対応する加重の差異を判定してもよい。「Ｐｌｕｔｏ」に関する加重の差異は、０．２であって、「ｓｐａｃｅ」に関する加重の差異は、０．１である。
【０１１７】
メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造のうちの一方に存在し、ユーザプロファイルおよび第２のデータ構造の両方内に存在しない、キーワード毎に、キーワードに対応するユーザプロファイルまたは第２のデータ構造内の複数の加重の第３の加重の値を判定してもよい（例えば、制御回路３０４（図３）を介して）。例えば、ユーザプロファイルおよび第２のデータ構造の一方に存在するが、両方には存在しない、キーワード毎に、メディアガイドアプリケーションは、それが存在するキーワードと関連付けられた加重の値を判定してもよい。例えば、「ＮＡＳＡ」は、ユーザプロファイル内に存在するが、第２のデータ構造内に存在しない、キーワードであって、したがって、メディアガイドアプリケーションは、ユーザプロファイル内の加重に対する「ＮＡＳＡ」に対応する加重の値を０．３であると判定してもよい。別の実施例では、メディアガイドアプリケーションは、キーワードが第２のデータ構造内に存在し、ユーザプロファイル内に存在しないため、キーワード「ｄｏｇ」および「ｈｏｕｓｅ」に対応する第２のデータ構造内の加重の値を判定してもよい。「ｄｏｇ」に関する値は、０．４であって、「ｈｏｕｓｅ」に関する値は、０．２である。
【０１１８】
メディアガイドアプリケーションは、差異および値に基づいて、距離を判定してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、判定された差異および値に基づいて、ユーザプロファイルと第２のデータ構造との間のユークリッド距離を見出してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルと第２のデータ構造との間の距離を
【化１】
2019507437.tif 000003
であると判定してもよい。メディアガイドアプリケーションは、距離が閾値距離を上回るかどうかを判定してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、距離が所定の閾値距離を上回るかどうかを判定してもよい。
【０１１９】
メディアガイドアプリケーションは、距離が閾値距離を上回ることの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似しないことを判定してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、距離が所定の閾値距離を上回ることの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似しないことを判定してもよい。
【０１２０】
メディアガイドアプリケーションは、距離が閾値距離を上回らないことの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似することを判定してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、距離が所定の閾値距離未満またはそれと等しいことの判定に応答して、ユーザプロファイルデータおよび第２のデータ構造データが類似することを判定してもよい。
【０１２１】
いくつかの実施形態では、閾値時間は、固定時間量および第２のメディアアセットの長さに対する時間のうちの１つであってもよい。例えば、閾値時間は、固定時間（例えば、１分）であってもよい。別の実施例では、閾値時間は、第２のビデオの長さに対する時間（例えば、第２のビデオの長さの１０％であってもよい）。例えば、第２のビデオが３０分である場合、閾値時間は、３０分の１０％、すなわち、３分であってもよい。
【０１２２】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザが視聴したメディアアセットがユーザに関心があることを判定してもよく、メディアアセット内に生じるキーワードをユーザプロファイルに追加することによって、類似キーワードを伴うメディアアセットを含むようにさらなる推奨を調整する、またはキーワードがユーザプロファイル内にすでにある場合、キーワードと関連付けられた加重を増加させてもよい。具体的には、メディアガイドアプリケーションは、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、第２のメディアアセットのコンテンツ内に生じる複数のキーワードの各個別のキーワードの回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことによって（例えば、記憶回路３０８（図３）および／または通信ネットワーク４１４（図４）を介してアクセス可能な任意の場所から）、ユーザプロファイル内において、第２のメディアアセットのコンテンツ内に生じるキーワードに対応する複数の加重を増加させ、ユーザプロファイルに、第２のメディアアセットのコンテンツ内に生じ、ユーザのプロファイル内にない、キーワードを追加してもよい。本プロセスは、図１１および１２に関してより詳細に議論される。例えば、メディアガイドアプリケーションは、第２のビデオ内に生じるキーワードと、各個別のキーワードが第２のビデオ内に生じる回数を反映する加重とを含む、第２のビデオと関連付けられた第２のデータ構造を読み出してもよい。
【０１２３】
例えば、図５の表示５４０では、メディアガイドアプリケーションは、メディアアセット「ＮＡＳＡ：Ｐｌｕｔｏ」がユーザに関心があることを判定してもよく、「ＮＡＳＡ：Ｐｌｕｔｏ」内に生じるものに類似するキーワードを伴うメディアアセットを含むようにメディアコンテンツのさらなる推奨を調整してもよい。ユーザプロファイルは、例えば、以下のキーワード：「Ｐｌｕｔｏ」、１．０を含んでもよい。第２のメディアアセット「ＮＡＳＡ：Ｐｌｕｔｏ」と関連付けられた第２のデータ構造は、以下のキーワードおよび対応する加重：「Ｐｌｕｔｏ」、０．５；「ＮＡＳＡ」、０．３；および「ｓｐａｃｅ」、０．２を含んでもよい。
【０１２４】
メディアガイドアプリケーションは、ユーザプロファイル内において、第２のデータ構造をユーザプロファイルに追加することによって、第２のメディアアセット内に生じるキーワードの加重を増加させてもよい。具体的には、メディアガイドアプリケーションは、第２のデータ構造データおよびユーザプロファイルデータの両方内に存在するキーワード毎に、あるキーワードに対応する第２のデータ構造内の複数の加重の第１の加重を該キーワードに対応するユーザプロファイル内の複数の加重の第２の加重に追加してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザプロファイルおよび第２のデータ構造の両方内に存在するキーワード毎に、第２のデータ構造内のキーワードに対応する加重をユーザプロファイル内のキーワードに対応する加重に追加してもよい。例えば、メディアガイドアプリケーションは、第２のデータ構造内のキーワード「Ｐｌｕｔｏ」に対応する加重０．５をユーザプロファイル内のキーワード「Ｐｌｕｔｏ」に対応する加重に追加してもよい。ユーザプロファイルは、次いで、以下のキーワードおよび対応する加重：「Ｐｌｕｔｏ」、１．５を含むであろう。
【０１２５】
メディアガイドアプリケーションは、第２のメディアアセット内に生じ、ユーザプロファイル内にまだない、キーワードをユーザプロファイルに追加してもよい。具体的には、メディアガイドアプリケーションは、第２のデータ構造内に存在し、ユーザプロファイル内に存在しない、キーワード毎に、第２のデータ構造内の複数のキーワードのあるキーワードおよび該キーワードに対応する第２のデータ構造内の複数の加重の加重をユーザプロファイルに追加してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第２のデータ構造内に存在し、ユーザプロファイル内に存在しない、キーワード毎に、第２のデータ構造内のキーワードおよびその対応する加重をユーザプロファイルに追加してもよい。例えば、メディアガイドアプリケーションは、第２のデータ構造からのキーワード「ＮＡＳＡ」および「ｓｐａｃｅ」およびその対応する加重をユーザプロファイルに追加してもよい。ユーザプロファイルは、次いで、以下のキーワード：「Ｐｌｕｔｏ」、１．５；「ＮＡＳＡ」、０．３；「ｓｐａｃｅ」、０．２を含むであろう。
【０１２６】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザが視聴した第２のメディアアセットがユーザに関心がないことを判定してもよく、類似キーワードを伴うメディアアセットを除外するようにメディアコンテンツのさらなる推奨を調整してもよい。故に、メディアガイドアプリケーションは、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことによって（例えば、記憶回路３０８（図３）および／または通信ネットワーク４１４（図４）を介してアクセス可能な任意の場所から）、第２のメディアアセットのコンテンツ内のキーワードに対応するユーザプロファイル内の複数の加重を減少させ、第２のメディアアセットのコンテンツ内に生じ、ユーザのプロファイル内にない、キーワードを追加してもよい。例えば、メディアガイドアプリケーションは、第２のビデオ内に生じるキーワードと、各個別のキーワードが第２のビデオ内に生じる回数を反映する加重とを含む、第２のビデオと関連付けられた第２のデータ構造を読み出してもよい。例えば、図５の表示５４０では、メディアガイドアプリケーションは、メディアアセット「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」がユーザに関心がないことを判定してもよい。ユーザプロファイルは、以下のキーワード：「Ｐｌｕｔｏ」、１．０を含んでもよい。第２のメディアアセットと関連付けられた第２のデータ構造は、以下のキーワードおよび対応する加重：「Ｐｌｕｔｏ」、０．５；「ｄｏｇ」、０．３；および「ｂｏｎｅ」、０．２を含んでもよい。
【０１２７】
メディアガイドアプリケーションは、第２のデータ構造内の加重をユーザプロファイル内の加重から減算することによって、第２のメディアアセットのコンテンツ内に生じるキーワードに対応するユーザプロファイル内の加重を減少させてもよい。具体的には、メディアガイドアプリケーションは、第２のデータ構造およびユーザプロファイルの両方内に存在するキーワード毎に、あるキーワードに対応する第２のデータ構造内の複数の加重の第１の加重を該キーワードに対応するユーザプロファイル内の複数の加重の第２の加重から減算してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第２のデータ構造およびユーザプロファイルデータの両方内に存在するキーワード毎に、第２のデータ構造内のキーワードに対応する加重をユーザプロファイル内のキーワードに対応する加重から減算してもよい。例えば、メディアガイドアプリケーションは、第２のデータ構造内のキーワード「Ｐｌｕｔｏ」に対応する加重０．５をユーザプロファイル内のキーワード「Ｐｌｕｔｏ」に対応する加重から減算してもよい。ユーザプロファイルは、次いで、以下のキーワードおよび対応する加重：「Ｐｌｕｔｏ」、０．５を含むであろう。
【０１２８】
メディアガイドアプリケーションは、ユーザプロファイル内に存在しない、第２のメディアアセット内で生じるキーワードを記憶してもよい。例えば、第２のメディアアセットがユーザに関心がないことの判定後、メディアガイドアプリケーションは、第２のメディアアセットのコンテンツ内に生じるキーワードをユーザプロファイル内に記憶し、それらのキーワードを伴うメディアアセットを除外するように、メディアコンテンツのさらなる推奨を調整してもよい。具体的には、メディアガイドアプリケーションは、第２のデータ構造内に存在し、ユーザプロファイル内に存在しない、キーワード毎に、第２のデータ構造内の複数のキーワードのあるキーワードおよび該キーワードに対応する第２のデータ構造内の複数の加重の加重の負値をユーザプロファイルに追加してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、第２のデータ構造内に存在し、ユーザプロファイル内に存在しない、キーワード毎に、キーワードおよび第２のデータ構造内のその対応する加重の負値をユーザプロファイルに追加してもよい。例えば、メディアガイドアプリケーションは、第２のデータ構造からのキーワード「ｄｏｇ」および「ｂｏｎｅ」ならびにその対応する加重の負値をユーザプロファイルに追加してもよい。ユーザプロファイルは、次いで、以下のキーワード：「Ｐｌｕｔｏ」、０．５；「ｄｏｇ」、−０．３；「ｂｏｎｅ」、−０．２を含むであろう。ユーザプロファイル内のいくつかのキーワードと関連付けられた負の加重は、それらのキーワードを伴うメディアアセットへのユーザの無関心を示す。
【０１２９】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザプロファイル内に記憶されるキーワードおよびその対応する加重の数を低減させてもよい。メディアガイドアプリケーションは、ユーザプロファイル内の複数の加重の加重がゼロ未満またはそれと等しいかどうかを判定してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザプロファイル内のキーワードに対応する加重がゼロを上回るかどうかを判定してもよい。例えば、メディアガイドアプリケーションは、キーワード「ｄｏｇ」および「ｂｏｎｅ」がゼロ未満のユーザプロファイル内の対応する加重を有することを判定してもよい。
【０１３０】
メディアガイドアプリケーションは、ユーザプロファイル内の複数の加重の加重がゼロ未満またはそれと等しいことの判定に応答して、加重およびその対応するキーワードをユーザプロファイルから除去してもよい（例えば、制御回路３０４（図３）を介して）。例えば、メディアガイドアプリケーションは、ユーザプロファイル内のキーワードに対応する加重がゼロを上回らないことの判定に応答して、加重およびその対応するキーワードをユーザプロファイルから除去してもよい。例えば、メディアガイドアプリケーションは、「ｄｏｇ」および「ｂｏｎｅ」ならびにその対応する加重をユーザプロファイルから除去してもよい。ユーザプロファイルは、次いで、以下のキーワード：「Ｐｌｕｔｏ」、０．５を含むであろう。
【０１３１】
いくつかの実施形態では、第２のメディアアセットは、ライブビデオストリームであってもよい。例えば、第２のメディアアセットは、そのソースからライブストリーミングされているビデオであってもよい。例えば、第２のメディアアセットは、ユーザ生成ビデオまたはオーディオであってもよい。
【０１３２】
いくつかの実施形態では、第２のメディアアセットは、ライブフィードの抜粋または完全なフィードであってもよい。例えば、第２のメディアアセットは、ユーザ生成ビデオの３０秒クリップまたはユーザ生成ビデオ全体であってもよい。いくつかの実施形態では、第２のメディアアセットは、異なるメディアアセットからの抜粋の編纂であってもよい。例えば、第２のメディアアセットは、異なるライブフィードからのクリップの編纂であってもよい。
【０１３３】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザプロファイル内のキーワードを表示してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイル内のキーワードをユーザに表示してもよい。メディアガイドは、キーワードをユーザプロファイルから除去するためのユーザ入力を受信してもよく、キーワードを削除してもよい。例えば、メディアガイドアプリケーションは、キーワードのユーザ選択を受信し、ユーザプロファイルから削除してもよい。メディアガイドアプリケーションは、キーワードをユーザプロファイルに追加するためのユーザ入力を受信してもよく、キーワードをユーザプロファイルに追加してもよい。例えば、ユーザは、ユーザプロファイルに追加されるべきキーワードを入力してもよく、メディアガイドアプリケーションは、キーワードをユーザプロファイルに追加してもよい。
【０１３４】
いくつかの実施形態では、メディアガイドアプリケーションは、ユーザプロファイルからの複数のキーワード群およびその単語群がコンテンツ内で生じるメディアアセットをユーザに表示してもよい。例えば、メディアガイドアプリケーションは、ユーザが視聴した種々のビデオと関連付けられたキーワード群を表示してもよい。例えば、メディアガイドアプリケーションは、表示のために、単語群「Ｐｌｕｔｏ」、「ｓｐａｃｅ」、「ｐｌａｎｅｔ」をビデオ「Ｐｌｕｔｏ」および「ＮＡＳＡ：Ｐｌｕｔｏ」の隣に、単語群「Ｐｌｕｔｏ」、「ｄｏｇ」、および「ｈｏｕｓｅ」をビデオ「Ｐｌｕｔｏ  ａｎｄ  Ｍｉｃｋｅｙ」の隣に生成してもよい。
【０１３５】
メディアガイドアプリケーションは、複数の単語群からの単語群のユーザ選択を受信してもよい。例えば、ユーザは、群「Ｐｌｕｔｏ」、「ｓｐａｃｅ」、「ｐｌａｎｅｔ」を選択してもよい。メディアガイドアプリケーションは、ユーザプロファイルを更新し、ユーザ選択を反映してもよい。例えば、メディアガイドアプリケーションは、ユーザプロファイルを更新し、キーワード「Ｐｌｕｔｏ」、「ｓｐａｃｅ」、および「ｐｌａｎｅｔ」のみを含んでもよい。これは、ユーザが、最も関心があるキーワードを選択することを可能にし、メディアガイドアプリケーションの推奨をより関連性があり、かつユーザに関心があるものにするという利点を提供する。
【０１３６】
図６のステップまたは説明は、本開示の任意の他の実施形態と併用されてもよいことが想定される。加えて、図６に関連して説明されるステップおよび説明は、本開示の目的を促すために、代替順序で、または並行して、行われてもよい。例えば、これらのステップはそれぞれ、システムまたは方法の遅延を低減または速度を加速させるために、任意の順序で、または並行して、もしくは実質的に同時に実施されてもよい。
【０１３７】
図７および８は、本開示のいくつかの実施形態による、制御回路（例えば、制御回路３０４）が、第１のメディアアセットを分析し、第１のメディアアセット内に存在する第１の複数のキーワードおよび各キーワードが第１のメディアアセット内で生じる回数を判定するためのプロセスを提示する。いくつかの実施形態では、本アルゴリズムは、処理回路（例えば、処理回路３０６）によってデコードおよび実行されるべき命令のセットとして、非一過性記憶媒体（例えば、記憶デバイス３０８）上にエンコードされてもよい。処理回路は、順に、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、アナログ／デジタル変換回路、および同等物等、命令を制御回路３０４内に含有される他のサブ回路に提供してもよい。
【０１３８】
図７におけるフローチャート７００は、本開示のいくつかの実施形態による、制御回路（例えば、制御回路３０４）上に実装され、第１のメディアアセットのトランスクリプトを分析し、データ構造を作成するためのプロセスを説明する。
【０１３９】
ステップ７０２では、制御回路３０４は、第１のメディアアセットの分析を開始するであろう。いくつかの実施形態では、これは、ユーザアクションまたは入力（例えば、制御回路３０４またはユーザ入力インターフェース３１０によって受信された信号から）に応答して、直接または間接的のいずれかにおいて、行われてもよい。例えば、プロセスは、制御回路３０４が信号をユーザ入力インターフェース３１０から受信したことに応答して、直接開始してもよい、または制御回路３０４は、アルゴリズムの起動に先立って、ディスプレイを使用して（例えば、ディスプレイ３１２上に表示されるべきプロンプトを生成することによって）、それらの入力を確認するようにユーザを促してもよい。
【０１４０】
ステップ７０４では、制御回路３０４は、第１のメディアアセットと関連付けられたオーディオを記憶されたメモリから読み出すことに進む。いくつかの実施形態では、制御回路３０４は、オーディオを記憶装置３０８から読み出す。いくつかの実施形態では、制御回路３０４は、オーディオをメディアガイドデータソース４１８から読み出す。いくつかの実施形態では、制御回路３０４は、オーディオをメディアコンテンツソース４１６から読み出す。いくつかの実施形態では、オーディオは、ＷＡＶ、ＭＰ３、ＭＰＥＧ−４、ＲＡＷ、または任意の他のオーディオフォーマット等のフォーマットである。
【０１４１】
いくつかの実施形態では、制御回路３０４は、第１のメディアアセットと関連付けられたクローズドキャプション／字幕を記憶されたメモリから読み出す。いくつかの実施形態では、制御回路３０４は、クローズドキャプション／字幕を表す、単一プリミティブデータ構造を読み出してもよい。いくつかの実施形態では、値は、より大きいデータ構造の一部として記憶されてもよく、制御回路３０４は、適切なアクセッサメソッドを実行し、値をより大きいデータ構造から読み出すことによって、値を読み出してもよい。
【０１４２】
ステップ７０６では、制御回路３０４は、音声認識をオーディオに適用することによって、メディアアセットと関連付けられたオーディオのトランスクリプトを作成することに進む。例えば、制御回路３０４は、音響および言語モデルを使用して、オーディオ波形内の単語を判定してもよく、単語を組み合わせ、トランスクリプトを作成してもよい。いくつかの実施形態では、制御回路３０４は、隠れマルコフモデルを認識されるべき言語の種々の音を表す統計モデルとして実装してもよい。例えば、ナレータがビデオ内で「Ｐｌｕｔｏ  ｉｓ  ａ  ｄｗａｒｆ  ｐｌａｎｅｔ  ｉｎ  ｏｕｒ  ｓｏｌａｒ  ｓｙｓｔｅｍ」と述べ得る。制御回路は、音声認識をオーディオに適用し、その文のトランスクリプトを作成してもよい。
【０１４３】
いくつかの実施形態では、制御回路３０４は、メディアアセットと関連付けられたクローズドキャプション／字幕のトランスクリプトを作成する。
【０１４４】
ステップ７０８では、制御回路３０４は、次の単語をトランスクリプトから読み出すことに進む。例えば、制御回路は、トランスクリプト内の第１の単語である、単語「Ｐｌｕｔｏ」を読み出してもよい。いくつかの実施形態では、制御回路３０４は、単語の値を表す単一プリミティブデータ構造を受信してもよい。いくつかの実施形態では、値は、より大きいデータ構造の一部として記憶されてもよく、制御回路３０４は、適切なアクセッサメソッドを実行し、値をより大きいデータ構造から読み出すことによって、値を読み出してもよい。
【０１４５】
ステップ７１０では、制御回路３０４は、単語の値に関する非重要語の記憶された一覧を検索し、単語が非重要語であるかどうかを判定することに進む。条件が満たされる場合、アルゴリズムは、ステップ７１８に進んでもよく、条件が満たされない場合、アルゴリズムは、代わりに、ステップ７１２に進んでもよい。例えば、制御回路は、「ａ」、「ａｎ」、「ｔｈｅ」等の非重要語の一覧を検索し、「Ｐｌｕｔｏ」が非重要語であるかどうかを判定してもよい。「Ｐｌｕｔｏ」が非重要語の一覧内にないため、制御回路は、ステップ７１２に進んでもよい。別の実施例では、トランスクリプト内の第２の単語「ｉｓ」を処理するとき、制御回路は、その単語を非重要語の一覧内に見出し、代わりに、ステップ７１８に進んでもよい。いくつかの実施形態では、非重要語の一覧は、プロセスの開始に先立って、記憶されてもよい（例えば、記憶デバイス３０８上に）。いくつかの実施形態では、非重要語の一覧はまた、メディアガイドデータソース４１８から読み出されてもよい。いくつかの実施形態では、制御回路３０４は、直接、値にメモリから個別にアクセスし、値比較を実施することによって、非重要語の一覧内の各値と単語の値を比較してもよい。いくつかのインスタンスでは、制御回路３０４は、比較関数（例えば、オブジェクト間比較のため）を呼び出し、単語および非重要語の一覧を比較してもよい。
【０１４６】
ステップ７１２では、制御回路３０４は、単語の値に関してトランスクリプト内ですでに見出されたキーワードの一覧を検索し、単語が以前の反復において遭遇されており、トランスクリプト内ですでに見出されたキーワードの一覧に追加されているかどうかを判定する。例えば、制御回路は、単語「Ｐｌｕｔｏ」が以前の反復においてすでに処理されているかどうかを判定してもよい。例えば、制御回路３０４は、それらが処理された後、トランスクリプト内で見出されたキーワードを記憶装置３１８内に記憶された一覧に追加してもよい。制御回路は、キーワードの一覧を通して反復し、各キーワードと処理されている現在の単語を比較し、単語が以前の反復において遭遇されており、一覧に追加されているかどうかを判定してもよい。いくつかの実施形態では、一覧は、トランスクリプト内の全単語が処理された後、削除されてもよい。単語が以前の反復においてすでに遭遇されており、トランスクリプト内ですでに見出されたキーワードの一覧に追加されている場合、アルゴリズムは、ステップ７１４に進んでもよい。そうでなければ、アルゴリズムは、代わりに、ステップ７１６に進んでもよい。例えば、第１の反復では、一覧が空であるため、単語「Ｐｌｕｔｏ」は、トランスクリプト内ですでに見出された単語の一覧内になく、制御回路は、ステップ７１６に進んでもよい。
【０１４７】
ステップ７１４では、制御回路３０４は、ステップ７１２における条件が満たされたことに基づいて、キーワードと関連付けられた発生回数をインクリメントする。サブルーチンが実行された後、アルゴリズムは、ステップ７１８に進んでもよく、そこで、トランスクリプト内の全単語が考慮されたかどうかと、さらなる反復が必要とされるかどうかとが判定される。
【０１４８】
ステップ７１６では、制御回路３０４は、７１０および７１２における条件の両方が満たされたことに基づいて、サブルーチンを実行し、単語をトランスクリプト内で見出されたキーワードの一覧に追加し、キーワードの発生回数を１に初期化する。例えば、制御回路は、単語「Ｐｌｕｔｏ」をトランスクリプト内で見出されたキーワードの一覧に追加し、キーワード「Ｐｌｕｔｏ」と関連付けられた発生回数を１に設定してもよい。サブルーチンが実行された後、アルゴリズムは、７１８に進んでもよく、そこで、トランスクリプト内の全単語が考慮されたかどうかと、さらなる反復が必要とされるかどうかとが判定される。
【０１４９】
ステップ７１８では、制御回路３０４は、トランスクリプト内の全単語が考慮されたかどうかをチェックする。インスタンスが全て評価された場合、制御回路３０４は、ステップ７２０に進んでもよい。例えば、制御回路３０４は、関数を呼び出し、トランスクリプト内の次の単語が存在するかどうかを確認してもよい。関数が真を返す（すなわち、処理される必要があるインスタンスが依然として存在する）場合、制御回路３０４は、ステップ７０８に進んでもよい。例えば、制御回路は、「Ｐｌｕｔｏ」後に処理されるべき単語が存在することを判定してもよく、ステップ７０８に進み、次の単語「ｉｓ」を読み出し、処理してもよい。別の実施例では、制御回路がトランスクリプト内の最後の単語「ｓｙｓｔｅｍ」を処理後、制御回路は、代わりに、ステップ７２０に進んでもよい。
【０１５０】
ステップ７２０では、制御回路３０４は、サブルーチンを実行し、キーワード毎に、トランスクリプト内でキーワードが生じた回数を反映する加重を判定する。例えば、「Ｐｌｕｔｏ  ｉｓ  ａ  ｄｗａｒｆ  ｐｌａｎｅｔ  ｉｎ  ｏｕｒ  ｓｏｌａｒ  ｓｙｓｔｅｍ」のトランスクリプトから作成されたキーワードの一覧およびその対応する発生回数は、「Ｐｌｕｔｏ」、１；「ｄｗａｒｆ」、１；「ｐｌａｎｅｔ」、１；「ｓｏｌａｒ」、１；および「ｓｙｓｔｅｍ」、１を含んでもよい。例えば、トランスクリプト内でキーワードが生じた回数を反映する加重は、トランスクリプト内のキーワードの総数によって除算されたキーワードが生じた回数であってもよい。例えば、「Ｐｌｕｔｏ  ｉｓ  ａ  ｄｗａｒｆ  ｐｌａｎｅｔ  ｉｎ  ｏｕｒ  ｓｏｌａｒ  ｓｙｓｔｅｍ」のトランスクリプト内でキーワードが生じた回数を反映する加重は、「Ｐｌｕｔｏ」、０．２；「ｄｗａｒｆ」、０．２；「ｐｌａｎｅｔ」、０．２；「ｓｏｌａｒ」、０．２；および「ｓｙｓｔｅｍ」、０．２であってもよい。
【０１５１】
ステップ７２２では、制御回路３０４は、サブルーチンを実行し、トランスクリプト内で見出されたキーワードの一覧および各キーワードと関連付けられた発生回数を記憶してもよい。
【０１５２】
図７の説明は、本開示の任意の他の実施形態と併用されてもよいことが想定される。加えて、図７のアルゴリズムに関連して説明される説明は、本開示の目的を促すために、代替順序で、または並行して、行われてもよい。例えば、７０８および７１２におけるもの等の条件文および論理評価は、システムまたは方法の遅延を低減または速度を加速させるために、任意の順序で、または並行して、もしくは同時に、実施されてもよい。さらなる実施例として、いくつかの実施形態では、いくつかの単語は、複数の論理プロセスもしくはスレッッドを使用して、並行して評価されてもよい、またはアルゴリズムは、分岐予測を組み込むことによって、向上されてもよい。さらに、図７のプロセスは、適切に構成されたソフトウェアおよびハードウェアの組み合わせ上に実装されてもよく、図３−４に関連して議論されるデバイスまたは機器のいずれかは、プロセスの１つまたはそれを上回る部分を実装するために使用され得ることに留意されたい。例えば、フローチャート７００の全ステップは、サーバ（例えば、メディアガイドデータソース４１８）において生じてもよい、またはフローチャート７００の全ステップは、ユーザデバイス（例えば、ユーザテレビ機器４０２、ユーザコンピュータ機器４０４、無線ユーザ通信デバイス４０６）において生じてもよい。別の実施例では、フローチャート７００のいくつかのステップは、サーバにおいて生じてもよい一方、残りのステップは、ユーザデバイスにおいて生じる。
【０１５３】
図８における擬似コードは、本開示のいくつかの実施形態による、制御回路を使用して、第１のメディアアセットを分析し、第１のメディアアセット内に存在する第１の複数のキーワードおよび各キーワードが第１のメディアアセット内に生じる回数を判定するためのプロセスを記述する。図８における擬似コードによって記述されるプロセスは、任意の数のプログラミング言語および種々の異なるハードウェアにおいて実装されてもよく、スタイルおよびフォーマットは、限定としてではなく、むしろ、本開示のいくつかの実施形態を実装するために使用されるコードに準拠するであろう、ステップおよびプロシージャの一般的テンプレートとして解釈されるべきであることが、当業者に明白となるであろう。
【０１５４】
ライン８０１では、制御回路３０４は、サブルーチンを起動し、変数を初期化し、ライン８０５で開始する、第１のメディアアセットのトランスクリプトを分析し、第１のメディアアセットと関連付けられたデータ構造を作成するための準備をする。例えば、いくつかの実施形態では、制御回路３０４は、非一過性記憶媒体（例えば、記憶デバイス３０８）からの命令を初期化段階の間、ＲＡＭまたは処理回路３０６のためのキャッシュの中にコピーしてもよい。加えて、いくつかの実施形態では、８０１において、比較のために使用されている非重要語の一覧の値が、読み出され、設定され、および記憶されてもよい。
【０１５５】
ライン８０３は、サブルーチンの目的を記述する注釈を含む。いくつかの実施形態では、制御回路３０４は、注釈を無視する。いくつかの実施形態では、注釈は、コードの上位またはコード内の任意の他のライン上にある。いくつかの実施形態では、注釈は、コード内の具体的変数およびラインの目的を記述することによって、より具体的となる。いくつかの実施形態では、注釈は、完全に欠落している。
【０１５６】
ライン８０５では、制御回路３０４は、第１のメディアアセットと関連付けられたオーディオを記憶されたメモリから読み出す。いくつかの実施形態では、制御回路３０４は、オーディオを表す単一プリミティブデータ構造を受信してもよい。いくつかの実施形態では、値は、より大きいデータ構造の一部として記憶されてもよく、制御回路３０４は、適切なアクセッサメソッドを実行し、値をより大きいデータ構造から読み出すことによって、値を読み出してもよい。
【０１５７】
いくつかの実施形態では、制御回路３０４は、第１のメディアアセットと関連付けられたクローズドキャプション／字幕を記憶されたメモリから読み出す。いくつかの実施形態では、制御回路３０４は、クローズドキャプション／字幕を表す単一プリミティブデータ構造を受信してもよい。いくつかの実施形態では、値は、より大きいデータ構造の一部として記憶されてもよく、制御回路３０４は、適切なアクセッサメソッドを実行し、値をより大きいデータ構造から読み出すことによって、値を読み出してもよい。
【０１５８】
ライン８０６では、制御回路３０４は、音声認識をオーディオに適用することによって、オーディオのトランスクリプトを作成することに進む。いくつかの実施形態では、トランスクリプトは、記憶されたメモリから読み出されてもよい。制御回路３０４は、例えば、単語の値のアレイへのポインタを受信することによって、トランスクリプトからの単語を受信してもよい。別の実施例では、制御回路３０４は、トランスクリプト内の単語を含有するテレータオブジェクト等、クラスのオブジェクトを受信してもよい。
【０１５９】
いくつかの実施形態では、制御回路３０４は、トランスクリプトをメディアアセットと関連付けられたクローズドキャプション／字幕から作成する。
【０１６０】
ライン８０７では、制御回路３０４は、トランスクリプト内の種々の単語を通して反復し、単一インスタンスのみが利用可能である場合、ループは、１回のみ実行するであろう。本ループは、図８のアルゴリズムを実装するために使用されるハードウェアおよびソフトウェア言語の選定に応じて、複数の方式で実装されてもよい。例えば、これは、「ｆｏｒ」または「ｗｈｉｌｅ」ループの一部として実装されてもよい。
【０１６１】
ライン８０８では、制御回路３０４は、単語の値を一時的変数「Ａ」の中に記憶する。いくつかの実施形態では、単語の値は、より大きいデータ構造またはクラスの一部として記憶され、単語の値は、適切なアクセッサメソッドを通して取得されてもよい。いくつかの実施形態では、単語は、適切なハッシュアルゴリズムを用いて、文字列または他の非数値データタイプから数値データタイプに変換されてもよい。いくつかの実施形態では、制御回路３０４は、関数を呼び出し、非重要語の一覧内の単語の検索を実施してもよい。いくつかの実施形態では、単語は、プリミティブデータ構造としてエンコードされてもよく、一時的変数を使用するのではなく、単語は、直接、ライン８１０および８１１における比較において使用されてもよい。
【０１６２】
ライン８０９では、制御回路３０４は、非重要語の一覧を一時的変数「Ｂ」の中に記憶する。単語と同様に、いくつかの実施形態では、非重要語の一覧内の各要素の値も、より大きいデータ構造またはクラスの一部として記憶され、非重要語の一覧内の各要素の値は、アクセッサメソッドを通して取得されてもよい。いくつかの実施形態では、非重要語の一覧は、適切なハッシュアルゴリズムを用いて、文字列または他の非数値データタイプから数値データタイプに変換されてもよい、または非重要語の一覧は、プリミティブデータ構造であってもよく、直接、ライン８１０における比較において使用されてもよい。
【０１６３】
ライン８１０では、制御回路３０４は、Ａの値に関してＢの要素を検索し、単語が非重要語であるかどうかを判定する。これは、Ｂの要素を反復し、要素毎に、要素の値をＡから減算し、差異の絶対値を考慮し、次いで、差異の絶対値と事前判定された許容値レベルを比較することによって、達成されてもよい。いくつかの実施形態では、許容値レベルは、ＡまたはＢの要素のいずれかの設定パーセンテージであってもよい。いくつかの実施形態では、許容値レベルは、固定数であってもよい。例えば、許容値レベルを計算機イプシロンの設定倍数に設定することは、アルゴリズムが、浮動小数点演算の使用から生じ得る、わずかな丸め誤差を考慮することを可能にし得る。いくつかの実施形態では、許容値レベルは、ゼロに設定されてもよい、またはＩＦ文の内の条件は、ＡとＢの要素との間の厳密な等価値に置換されてもよい
【０１６４】
ライン８１１では、制御回路３０４は、Ａの値に関してトランスクリプト内ですでに見出されたキーワードの一覧を検索し、単語が以前の反復内ですでに遭遇されており、トランスクリプト内で見出されたキーワードの一覧に追加されているかどうかを判定する。条件が満たされる場合、制御回路３０４は、ライン８１２に進む。条件が満たされない場合、制御回路３０４は、ライン８１４に進む。
【０１６５】
ライン８１２では、制御回路３０４は、ライン８１１内の条件が満たされる場合、制御回路を使用して、キーワードと関連付けられた発生回数をインクリメントする。
【０１６６】
ライン８１４では、制御回路３０４は、ライン８１１における条件が満たされない場合、制御回路を使用して、サブルーチンを実行し、単語をトランスクリプト内で見出されたキーワードの一覧に追加し、キーワードの発生回数を１に初期化する。
【０１６７】
ライン８１６では、制御回路３０４は、サブルーチンを実行し、キーワード毎に、キーワードの発生回数を反映する加重を判定する。
【０１６８】
ライン８１７では、制御回路３０４は、制御を使用して、サブルーチンを実行し、メモリ内に、トランスクリプト内で見出されたキーワードの一覧および各キーワードと関連付けられた発生回数を記憶する。
【０１６９】
ライン８１９では、制御回路３０４は、アルゴリズムがその関数を実施した後、終了サブルーチンを起動する。例えば、いくつかの実施形態では、制御回路３０４は、変数を破壊し、ガーベッジコレクションを実施し、メモリを解放し、または処理回路３０６のキャッシュをクリアにしてもよい。
【０１７０】
図８における擬似コードによって記述されるプロセス８００は、任意の数のプログラミング言語および種々の異なるハードウェアにおいて実装されてもよく、プリミティブ関数、論理評価、および関数評価の特定の選定および場所は、限定であるものと意図されないことが、当業者に明白となるであろう。また、コードは、入力または最終出力を基本的に変化させずに、種々の論理評価の順序を操作する、単一反復ループにおいてではなく、いくつかの反復を並行して実施する、または別様にランタイムおよび性能メトリックを操作ならびに最適化するために、リファクタリングまたは書き換えられ得ることも明白となるであろう。例えば、いくつかの実施形態では、ブレーク条件が、演算を加速するために、ライン８１０および８１２後に置かれてもよい、または条件文は、ｃａｓｅ−ｓｗｉｔｃｈと置換されてもよい。いくつかの実施形態では、ライン８０７において、トランスクリプト内の全単語にわたって反復するのではなく、いくつかの実施形態では、コードは、制御回路３０４が、複数のプロセッサまたはプロセスもしくはスレッドにおいて、複数の単語を同時に評価するように命令され、必要とされる反復回数を減少させ、潜在的に、計算時間を加速するように書き換えられてもよい。
【０１７１】
図９および１０は、本開示のいくつかの実施形態による、制御回路（例えば、制御回路３０４）上に実装され、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定するためのプロセスを提示する。いくつかの実施形態では、本プロセスは、処理回路（例えば、処理回路３０６）によってデコードおよび実行される命令のセットとして非一過性記憶媒体（例えば、記憶デバイス３０８）上にエンコードされてもよい。処理回路は、順に、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、アナログ／デジタル変換回路、および同等物等、命令を制御回路３０４内に含有される他のサブ回路に提供してもよい。
【０１７２】
図９におけるフローチャート９００は、本開示のいくつかの実施形態による、制御回路（例えば、制御回路３０４）上に実装され、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定するためのプロセスを説明する。
【０１７３】
ステップ９０２では、制御回路３０４は、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定することを開始するであろう。いくつかの実施形態では、これは、ユーザアクションまたは入力（例えば、制御回路３０４またはユーザ入力インターフェース３１０によって受信される信号から）に応答して、直接または間接的のいずれかにおいて行われてもよい。
【０１７４】
ステップ９０４では、制御回路３０４は、次のキーワードおよびその対応する加重を記憶されたメモリから読み出すことに進む。いくつかの実施形態では、制御回路３０４は、両データ構造内のキーワードを通して反復し、一覧内にまだない場合、キーワードおよびその対応する加重を一覧に追加することによって、一意のキーワードの一覧を作成する。制御回路３０４は、次いで、一覧を使用して、次のキーワードおよびその対応する加重を読み出してもよい。例えば、制御回路３０４は、ユーザプロファイルからのキーワードおよびその対応する加重の全てを記憶装置３１８内の一覧に記憶してもよい。制御回路３０４は、次いで、第２のデータ構造内のキーワードを通して反復し、一覧内にまだないキーワードおよびその対応する加重を追加してもよい。いくつかの実施形態では、制御回路３０４は、キーワードの値を表す、単一プリミティブデータ構造を読み出してもよい。いくつかの実施形態では、制御回路３０４は、より大きいクラスまたはデータ構造から値を読み出してもよい。
【０１７５】
ステップ９０６では、制御回路３０４は、キーワードに関してユーザプロファイルおよび第２のデータ構造の両方を検索し、キーワードがユーザプロファイルおよび第２のデータ構造の両方内に存在するかどうかを判定する。いくつかの実施形態では、ユーザプロファイルおよびデータ構造は、アルゴリズムの開始に先立って、ローカルに（例えば、記憶デバイス３０８上に）記憶されてもよい。いくつかの実施形態では、ユーザプロファイルおよび第２のデータ構造はまた、通信回路を使用して、通信ネットワーク（例えば、通信ネットワーク４１４）を横断して、遠隔記憶デバイス上に実装されるデータベース（例えば、メディアガイドデータソース４１８）に情報を伝送することによってもアクセス可能であってもよい。制御回路３０４が、キーワードがユーザプロファイルおよび第２のデータ構造の両方内にあると判定する場合、アルゴリズムは、ステップ９０８に進み、そうでなければ、アルゴリズムは、ステップ９１０に進む。
【０１７６】
ステップ９０８では、制御回路３０４は、サブルーチンを実行し、ユーザプロファイルおよび第２のデータ構造内のキーワードに対応する加重の差異を判定する。例えば、制御回路３０４は、キーワードに対応するユーザプロファイル内の加重とキーワードに対応する第２のデータ構造内の加重との間の差異を判定する。その後、アルゴリズムは、ステップ９１２に進んでもよく、そこで、考慮される必要があるさらなるキーワードが存在するかどうか判定される。
【０１７７】
ステップ９１０では、制御回路３０４は、キーワードに対応する加重の値を判定する。その後、アルゴリズムは、ステップ９１２に進んでもよく、そこで、考慮される必要があるさらなるキーワードが存在するかどうか判定される。
【０１７８】
ステップ９１２では、制御回路３０４は、全キーワードが考慮されたかどうかと、さらなる反復が必要とされるかどうかとを判定する。さらなる反復が必要とされる場合、アルゴリズムは、ステップ９０４にループバックし、そこで、制御回路３０４は、次のキーワードを読み出すであろう。さらなる反復が必要とされない場合、アルゴリズムは、ステップ９１４に進むであろう。
【０１７９】
ステップ９１４では、制御回路３０４は、サブルーチンを実行し、判定さた差異および値に基づいて、距離を判定する。いくつかの実施形態では、距離は、差異および値の絶対値を総和することによって判定されてもよい。いくつかの実施形態では、距離は、ユークリッド距離であってもよい。例えば、距離は、ユーザプロファイルと関連付けられた点と第２のデータ構造と関連付けられた点との間のユークリッド距離であってもよく、点は、キーワードに対応する加重によって定義される。その後、アルゴリズムは、ステップ９１６に進んでもよい。
【０１８０】
ステップ９１６では、制御回路３０４は、距離が閾値距離を上回るかどうかを判定する。いくつかの実施形態では、閾値距離は、アルゴリズムの開始に先立って、ローカルに（例えば、記憶デバイス３０８上に）記憶されてもよい。いくつかの実施形態では、閾値距離はまた、通信回路を使用して、通信ネットワーク（例えば、通信ネットワーク４１４）を横断して、遠隔記憶デバイス（例えば、メディアガイドデータソース４１８）上に実装されるデータベースに情報を伝送することによってもアクセスされてもよい。制御回路３０４が、距離が閾値距離を上回ると判定する場合、アルゴリズムは、ステップ９２０に進み、そうでなければ、アルゴリズムは、ステップ９１８に進む。
【０１８１】
ステップ９１８では、制御回路３０４は、ユーザプロファイルデータおよび第２のデータ構造データが類似することを判定する。
【０１８２】
ステップ９２０では、制御回路３０４は、ユーザプロファイルデータおよび第２のデータ構造データが類似しないことを判定する。
【０１８３】
図９の説明は、本開示の任意の他の実施形態と併用されてもよいことが想定される。加えて、図９のプロセス９００に関連して説明される説明は、本開示の目的を促すために、代替順序で、または並行して、行われてもよい。例えば、９０６および９１２におけるもの等の条件文および論理評価は、システムまたは方法の遅延を低減または速度を加速させるために、任意の順序で、または並行して、もしくは同時に、実施されてもよい。さらなる実施例として、いくつかの実施形態では、いくつかのキーワードは、複数の論理プロセスもしくはスレッッドを使用して、並行して評価されてもよい、またはアルゴリズムは、分岐予測を組み込むことによって、向上されてもよい。さらに、図９のプロセスは、適切に構成されたソフトウェアおよびハードウェアの組み合わせ上に実装されてもよく、図３−４に関連して議論されるデバイスまたは機器のいずれかは、プロセスの１つまたはそれを上回る部分を実装するために使用され得ることに留意されたい。
【０１８４】
図１０における擬似コードは、本開示のいくつかの実施形態による、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定するためのプロセスを記述する。図１０における擬似コードによって記述されるプロセス１０００は、任意の数のプログラミング言語および種々の異なるハードウェアにおいて実装されてもよく、スタイルおよびフォーマットは、限定としてではなく、むしろ、本開示のいくつかの実施形態を実装するために使用されるコードに準拠するであろう、ステップおよびプロシージャの一般的テンプレートとして解釈されるべきであることが、当業者に明白となるであろう。
【０１８５】
ライン１００１では、制御回路３０４は、サブルーチンを起動し、これは、ライン１００５上で開始し、変数を初期化し、ユーザプロファイルデータおよび第２のデータ構造データが類似するかどうかを判定するための準備をする。例えば、いくつかの実施形態では、制御回路３０４は、非一過性記憶媒体（例えば、記憶デバイス３０８）からの命令を初期化段階の間、ＲＡＭまたは処理回路３０６のためのキャッシュの中にコピーしてもよい。
【０１８６】
ライン１００５では、制御回路３０４は、キーワードおよびその対応する加重を受信する。いくつかの実施形態では、これらのインスタンスは、記憶されたメモリから読み出されてもよい。
【０１８７】
ライン１００６では、制御回路３０４は、種々のキーワードを通して反復し、単一インスタンスのみが利用可能である場合、ループは、１回のみ実行するであろう。本ループは、図１０のアルゴリズムを実装するために使用されるハードウェアおよびソフトウェア言語の選定に応じて、複数の方式で実装されてもよい。例えば、これは、いくつかのプログラミング言語において、「ｆｏｒ」または「ｗｈｉｌｅ」ループの一部として実装されてもよい。いくつかの実施形態では、キーワードを内部メソッドの一部としてループを実施するであろう単一クラスまたはカプセル化されたデータ構造内に記憶することが便宜的であり得る。
【０１８８】
ライン１００７では、制御回路３０４は、キーワードに関してユーザプロファイルおよび第２のデータ構造の両方を検索し、キーワードがユーザプロファイルおよび第２のデータ構造の両方内に存在するかどうかを判定する。制御回路３０４は、キーワードがユーザプロファイルおよび第２のデータ構造の両方内に存在することを判定する場合、アルゴリズムは、ライン１００８に進んでもよい。制御回路３０４が、キーワードがユーザプロファイルおよび第２のデータ構造の両方内に存在しないことを判定する場合、アルゴリズムは、代わりに、ライン１０１０に進んでもよい。
【０１８９】
ライン１００８では、制御回路３０４は、サブルーチンを実行し、ユーザプロファイルおよび第２のデータ構造内のキーワードに対応する加重の差異を判定する。アルゴリズムは、次いで、ライン１０１２に進んでもよい。
【０１９０】
ライン１０１０では、制御回路３０４が、キーワードがユーザプロファイルおよび第２のデータ構造の両方内に存在しないことを判定する場合、制御回路３０４は、キーワードに対応する加重の値を判定する。その後、アルゴリズムは、ライン１０１２に進んでもよい。
【０１９１】
ライン１０１２では、制御回路３０４は、サブルーチンを実行し、判定された差異および値に基づいて、距離を判定し、アルゴリズムは、ライン１０１３に進む。
【０１９２】
ライン１０１３では、制御回路３０４は、距離が閾値距離を上回るかどうかを判定する。制御回路３０４が、距離が閾値距離を上回ることを判定する場合、アルゴリズムは、ライン１０１４に進んでもよい。制御回路３０４が、距離が閾値距離を上回らないことを判定する場合、アルゴリズムは、ライン１０１６に進んでもよい。
【０１９３】
ライン１０１４では、制御回路３０４は、ユーザプロファイルデータおよび第２のデータ構造データが類似しないことを判定する。その後、アルゴリズムは、ライン１０１８に進むであろう。
【０１９４】
ライン１０１６では、制御回路３０４は、ユーザプロファイルデータおよび第２のデータ構造データが類似することを判定する。その後、アルゴリズムは、ライン１０１８に進むであろう。
【０１９５】
ライン１０１８では、制御回路３０４は、アルゴリズムがその関数を実施し、全キーワードが処理された後、終了サブルーチンを実行する。例えば、いくつかの実施形態では、制御回路３０４は、変数を破壊し、ガーベッジコレクションを実施し、メモリを解放し、または処理回路３０６のキャッシュをクリアにしてもよい。
【０１９６】
図１０における擬似コードによって記述されるプロセス１０００は、任意の数のプログラミング言語および種々の異なるハードウェアにおいて実装されてもよく、プリミティブ関数、論理評価、および関数評価の特定の選定および場所は、限定であるものと意図されないことが、当業者に明白となるであろう。また、コードは、入力または最終出力を基本的に変化させずに、種々の論理評価の順序を操作する、単一反復ループにおいてではなく、いくつかの反復を並行して実施する、または別様にランタイムおよび性能メトリックを操作ならびに最適化するために、リファクタリングまたは書き換えられ得ることも明白となるであろう。例えば、いくつかの実施形態では、制御回路３０４が、複数のプロセッサまたはプロセススレッドを使用して、複数のキーワードを同時に評価するように命令されるように書き換えられてもよい。いくつかの実施形態では、ライン１００６において、全キーワードにわたって反復するのではなく、いくつかの実施形態では、コードは、制御回路３０４が、複数のプロセッサまたはプロセススレッドにおいて、複数の単語を同時に評価するように命令され、必要とされる反復回数を減少させ、潜在的に、計算時間を加速するように書き換えられてもよい。
【０１９７】
図１１および１２は、本開示のいくつかの実施形態による、制御回路（例えば、制御回路３０４）上に実装され、ユーザプロファイル内において、第２のメディアアセットのコンテンツ内に生じるキーワードに対応する複数の加重を増加させ、ユーザプロファイルに、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加するためのプロセスを提示する。図７および８によって記述されるアルゴリズムと同様に、いくつかの実施形態では、本プロセスは、処理回路（例えば、処理回路３０６）によってデコードおよび実行される命令のセットとして非一過性記憶媒体（例えば、記憶デバイス３０８）上にエンコードされてもよい。処理回路は、順に、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、アナログ／デジタル変換回路、および同等物等、命令を制御回路３０４内に含有される他のサブ回路に提供してもよい。
【０１９８】
図１１におけるフローチャート１１００は、本開示のいくつかの実施形態による、制御回路（例えば、制御回路３０４）上に実装され、第２のメディアアセットのコンテンツ内に生じるキーワードに対応するユーザプロファイル内の複数の加重を増加させ、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加するためのプロセスを説明する。
【０１９９】
ステップ１１０２では、制御回路３０４は、第２のメディアアセットのコンテンツ内に生じるキーワードに対応するユーザプロファイル内の複数の加重を増加させ、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加することを開始するであろう。いくつかの実施形態では、これは、制御回路３０４が第２のメディアアセットと関連付けられたユーザプロファイルデータおよび第２のデータ構造データが類似することを判定することに応答して行われてもよい。
【０２００】
ステップ１１０４では、制御回路３０４は、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出すことに進む。いくつかの実施形態では、第２のデータ構造は、アルゴリズムの開始に先立って、ユーザデバイス上でローカルに（例えば、記憶デバイス３０８上に）記憶されてもよい。いくつかの実施形態では、第２のデータ構造はまた、通信回路を使用して、通信ネットワーク（例えば、通信ネットワーク４１４）を横断して、遠隔記憶デバイス（例えば、メディアガイドデータソース４１８）上に実装されるデータベースに情報を伝送することによってもアクセスされてもよい。
【０２０１】
ステップ１１０６では、制御回路３０４は、次のキーワードを記憶されたメモリから読み出すことに進む。いくつかの実施形態では、制御回路は、第２のデータ構造のキーワードを記憶装置内の一覧に記憶してもよく、一覧を通して反復し、次のキーワードを得てもよい。いくつかの実施形態では、制御回路３０４は、キーワードの値を表す単一プリミティブデータ構造を読み出してもよい。いくつかの実施形態では、制御回路３０４は、より大きいクラスまたはデータ構造から値を読み出してもよい。
【０２０２】
ステップ１１０８では、制御回路３０４は、キーワードに関してユーザプロファイルを検索し、キーワードがユーザプロファイル内に存在するかどうかを判定する。いくつかの実施形態では、ユーザプロファイルは、アルゴリズムの開始に先立って、ローカルに（例えば、記憶デバイス３０８上に）記憶されてもよい。いくつかの実施形態では、ユーザプロファイルはまた、通信回路を使用して、通信ネットワーク（例えば、通信ネットワーク４１４）を横断して、遠隔記憶デバイス（例えば、メディアガイドデータソース４１８）上に実装されるデータベースに情報を伝送することによってもアクセスされてもよい。制御回路３０４が、キーワードがユーザプロファイル内にあることを判定する場合、アルゴリズムは、ステップ１１１０に進み、そうでなければ、アルゴリズムは、ステップ１１１２に進む。
【０２０３】
ステップ１１１０では、制御回路３０４は、サブルーチンを実行し、第２のデータ構造内のキーワードに対応する加重をユーザプロファイル内のキーワードに対応する加重に追加する。キーワードがユーザプロファイル内に存在することの判定後、制御回路３０４は、第２のデータ構造からの加重をユーザプロファイル内のキーワードに対応する加重に追加する。その後、アルゴリズムは、ステップ１１１４に進んでもよく、そこで、考慮される必要があるさらなるキーワードが存在するかどうか判定される。
【０２０４】
対照的に、ステップ１１１２では、制御回路３０４は、サブルーチンを実行し、第２のデータ構造内のキーワードおよびキーワードに対応する加重をユーザプロファイルに追加する。キーワードがユーザプロファイル内に存在しないことの判定後、制御回路３０４は、キーワードをユーザプロファイルに追加する。加えて、制御回路は、ユーザプロファイル内のキーワードに対応する加重を第２のデータ構造内のキーワードに対応する加重に初期化する。その後、アルゴリズムは、ステップ１１１４に進んでもよく、そこで、考慮される必要があるさらなるキーワードが存在するかどうか判定される。
【０２０５】
ステップ１１１４では、制御回路３０４は、全キーワードが考慮されたかどうかと、さらなる反復が必要とされるかどうかとを判定する。さらなる反復が必要とされる場合、アルゴリズムは、ステップ１１０４にループバックし、そこで、制御回路３０４は、次のキーワードを読み出すであろう。さらなる反復が必要とされない場合、アルゴリズムは、ステップ１１１６に進むであろう。
【０２０６】
ステップ１１１６では、制御回路３０４は、サブルーチンを実行し、ユーザプロファイルをメモリ内に（例えば、記憶デバイス３０８上に）記憶する。
【０２０７】
図１１の説明は、本開示の任意の他の実施形態と併用されてもよいことが想定される。加えて、図１１のプロセス１１００に関連して説明される説明は、本開示の目的を促すために、代替順序で、または並行して、行われてもよい。例えば、制御回路３０４は、複数のキーワードを並行して処理してもよい。さらに、図１１のプロセスは、適切に構成されたソフトウェアおよびハードウェアの組み合わせ上に実装されてもよく、図３−４に関連して議論されるデバイスまたは機器のいずれかは、アルゴリズムの１つまたはそれを上回る部分を実装するために使用され得ることに留意されたい。
【０２０８】
図１２における擬似コードは、第２のメディアアセットのコンテンツ内に生じるキーワードに対応するユーザプロファイル内の複数の加重を増加させ、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加するためのプロセスを記述する。図１２における擬似コードによって記述されるプロセス１２００は、任意の数のプログラミング言語および種々の異なるハードウェアにおいて実装されてもよく、スタイルおよびフォーマットは、限定としてではなく、むしろ、本開示のいくつかの実施形態を実装するために使用されるコードに準拠するであろう、ステップおよびプロシージャの一般的テンプレートとして解釈されるべきであることが、当業者に明白となるであろう。
【０２０９】
ライン１２０１では、制御回路３０４は、サブルーチンを起動し、変数を初期化し、ライン１２０５上で開始する、第２のメディアアセットのコンテンツ内に生じるキーワードに対応するユーザプロファイル内の複数の加重を増加させ、第２のメディアアセットのコンテンツ内に生じ、ユーザプロファイル内にない、キーワードを追加するために準備する。例えば、いくつかの実施形態では、制御回路３０４は、非一過性記憶媒体（例えば、記憶デバイス３０８）からの命令を初期化段階の間、ＲＡＭまたは処理回路３０６のためのキャッシュの中にコピーしてもよい。
【０２１０】
ライン１２０５では、制御回路３０４は、第２のメディアアセットのコンテンツ内に生じる複数のキーワードと、複数のキーワードの各個別のキーワードが第２のメディアアセットのコンテンツ内に生じる回数を反映する複数の加重とを含む、第２のデータ構造を読み出す。いくつかの実施形態では、第２のデータ構造インスタンスは、記憶されたメモリから読み出されてもよい。いくつかの実施形態では、第２のデータ構造は、通信回路を使用して、通信ネットワーク（例えば、通信ネットワーク４１４）を横断して情報を伝送するために、遠隔記憶デバイス上のデータベース（例えば、メディアガイドデータソース４１８）から読み出されてもよい。
【０２１１】
ライン１２０６では、制御回路３０４は、種々のキーワードを通して反復し、単一インスタンスのみが利用可能である場合、ループは、１回のみ実行するであろう。本ループは、図１２のアルゴリズムを実装するために使用されるハードウェアおよびソフトウェア言語の選定に応じて、複数の方式で実装されてもよい。例えば、これは、いくつかのプログラミング言語において、「ｆｏｒ」または「ｗｈｉｌｅ」ループの一部として実装されてもよい。いくつかの実施形態では、キーワードを内部メソッドの一部としてループを実施するであろう単一クラスまたはカプセル化されたデータ構造内に記憶することが便宜的であり得る。
【０２１２】
ライン１２０７では、制御回路３０４は、キーワードに関してユーザプロファイルを検索し、キーワードがユーザプロファイル内に存在するかどうかを判定する。制御回路３０４が、キーワードがユーザプロファイル内に存在することを判定する場合、アルゴリズムは、ライン１２０８に進んでもよい。制御回路３０４が、キーワードが両データ構造内に存在しないことを判定する場合、アルゴリズムは、代わりに、ライン１２１０に進んでもよい。
【０２１３】
ライン１２０８では、制御回路３０４は、サブルーチンを実行し、第２のデータ構造内のキーワードに対応する加重をユーザプロファイル内のキーワードに対応する加重に追加する。アルゴリズムは、次いで、ライン１２１２に進んでもよい。
【０２１４】
ライン１２１０では、制御回路３０４が、キーワードがユーザプロファイル内に存在しないことを判定する場合、制御回路３０４は、サブルーチンを実行し、第２のデータ構造内のキーワードおよびキーワードに対応する加重をユーザプロファイルに追加する。その後、アルゴリズムは、ライン１２１２に進んでもよい。
【０２１５】
ライン１２１２では、制御回路３０４は、サブルーチンを実行し、ユーザプロファイルをメモリ内に記憶し、次いで、アルゴリズムは、ライン１２１４に進む。
【０２１６】
ライン１２１４では、制御回路３０４は、アルゴリズムがその関数を実施し、全キーワードが処理された後、終了サブルーチンを実行する。例えば、いくつかの実施形態では、制御回路３０４は、変数を破壊し、ガーベッジコレクションを実施し、メモリを解放し、または処理回路３０６のキャッシュをクリアにしてもよい。
【０２１７】
図１２における擬似コードによって記述されるプロセス１２００は、任意の数のプログラミング言語および種々の異なるハードウェアにおいて実装されてもよく、プリミティブ関数、論理評価、および関数評価の特定の選定および場所は、限定であるものと意図されないことが、当業者に明白となるであろう。また、コードは、入力または最終出力を基本的に変化させずに、種々の論理評価の順序を操作する、単一反復ループにおいてではなく、いくつかの反復を並行して実施する、または別様にランタイムおよび性能メトリックを操作ならびに最適化するために、リファクタリングまたは書き換えられ得ることも明白となるであろう。例えば、いくつかの実施形態では、コードは、制御回路３０４が、複数のプロセッサまたはプロセスもしくはスレッドを使用して、複数のキーワードを同時に評価するように命令されるように書き換えられてもよい。また、制御回路３０４が単一データベースと相互作用するように説明し得るが、これは、例証目的のために説明される単一実施形態にすぎず、図１２のアルゴリズムは、複数の独立または相互参照データベースを使用して実装されてもよいことを理解されたい。例えば、ローカルに（例えば、記憶装置３０８上に）記憶されたデータベースは、遠隔に記憶されたデータベース（例えば、メディアガイドデータソース４１８）をインデックス化または相互参照してもよく、これは、任意の数の通信チャネル（例えば、通信ネットワーク４１４）を通してアクセス可能であってもよい。いくつかの実施形態では、これは、制御回路３０４が、需要に応じて、小規模ローカルドライブ上に記憶されたルックアップテーブルまたはデータベースフロントエンドを効率的に利用して、遠隔サーバ上に記憶されたより大きいデータベースにアクセスすることを可能にし得る。
【０２１８】
本開示の前述の実施形態は、限定ではなく、例証目的のために提示され、本開示は、続く請求項によってのみ限定される。さらに、いずれか１つの実施形態で説明される特徴および限定は、本明細書の任意の他の実施形態に適用され得、一実施形態に関するフローチャートまたは実施例は、好適な様式で任意の他の実施形態と組み合わせられ、異なる順序で行われる、または並行して行われ得ることに留意されたい。加えて、本明細書で説明されるシステムおよび方法は、リアルタイムで行われてもよい。また、上記で説明されるシステムおよび／または方法は、他のシステムならびに／もしくは方法に適用される、またはそれらに従って使用され得ることにも留意されたい。
【図１】
2019507437.tif 000004
【図２】
2019507437.tif 000005
【図３】
2019507437.tif 000006
【図４】
2019507437.tif 000007
【図５】
2019507437.tif 000008
【図６】
2019507437.tif 000009
【図７】
2019507437.tif 000010
【図８】
2019507437.tif 000011
【図９】
2019507437.tif 000012
【図１０】
2019507437.tif 000013
【図１１】
2019507437.tif 000014
【図１２】
2019507437.tif 000015
【国際調査報告】
2019507437.tif 000016
2019507437.tif 000017
2019507437.tif 000018