(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-07-29
(45)【発行日】2022-08-08
(54)【発明の名称】自然言語クエリのための実行パスを判定するシステムおよび方法
(51)【国際特許分類】
G06F 16/90 20190101AFI20220801BHJP
G06F 16/903 20190101ALI20220801BHJP
【FI】
G06F16/90 100
G06F16/903
(21)【出願番号】P 2018534053
(86)(22)【出願日】2017-07-28
(86)【国際出願番号】 US2017044332
(87)【国際公開番号】W WO2018022970
(87)【国際公開日】2018-02-01
【審査請求日】2020-07-28
(32)【優先日】2016-07-29
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】518345664
【氏名又は名称】ロヴィ ガイズ, インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ヴェンカタラマン, サシクマール
(72)【発明者】
【氏名】モハイデーン ピー, アハメド ニザーム
【審査官】早川 学
(56)【参考文献】
【文献】特表2016-517599(JP,A)
【文献】米国特許出願公開第2016/0196504(US,A1)
【文献】米国特許出願公開第2016/0188535(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
(57)【特許請求の範囲】
【請求項1】
制御回路上で実行される双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定する方法であって、
前記制御回路が、学習の前に、入力エンティティおよび
知識グラフにおいて知られていない用語を含むクエリをユーザから受信することと、
前記制御回路が、前記知識グラフから、前記クエリに対する複数の可能性のある応答
を読み出すことと、
前記制御回路が、前記ユーザからのフィードバックに基づいて前記複数の可能性のある応答のうちの正しい応答を判定することと、
前記制御回路が、前記正しい応答に基づいて前記クエリのための
前記知識グラフにおける実行パスを選択することと
を含む、方法。
【請求項2】
前記クエリに対する前記複数の可能性のある応答は、前記クエリに対する第1の可能性のある応答および第2の可能性のある応答を含み、前記第1の可能性のある応答は、前記クエリのための
前記知識グラフにおける第1の実行パスにより導出され、前記第2の可能性のある応答は、前記クエリのための
前記知識グラフにおける第2の実行パスにより導出され、
前記方法は、
前記制御回路が、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成することをさらに含み、
前記ユーザからの前記フィードバックは、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つ上にあり、
前記クエリのための前記実行パスは、前記第1の実行パスおよび前記第2の実行パスのうちの1つから選択され、
前記第1の可能性のある応答は、前記入力エンティティから前記第1の可能性のある応答
まで前記知識グラフ
における1つ以上のノードをたどることによって前記第1の実行パスにより導出される、請求項1に記載の方法。
【請求項3】
前記第2の可能性のある応答は、前記入力エンティティから前記第2の可能性のある応答
まで前記知識グラフ
における1つ以上のノードをたどることによって前記第2の実行パスにより導出される、請求項2に記載の方法。
【請求項4】
フィードバックを示す前記ユーザからの入力は、前記双方向メディアガイダンス画面からの前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つの選択を含む、請求項2または請求項3のいずれかに記載の方法。
【請求項5】
前記クエリに対する正しい応答を判定することは、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つのユーザ選択を前記正しい応答として割り当てることを含む、請求項4に記載の方法。
【請求項6】
フィードバックを示す前記ユーザからの入力は、前記第1の可能性のある応答が正しいというインジケーションおよび前記第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む、請求項2~5のいずれかに記載の方法。
【請求項7】
前記クエリに対する正しい応答を判定することは、
前記フィードバック
が前記第1の可能性のある応答が正しいというインジケーションを含む場合、
前記制御回路が、前記第1の
可能性のある応答を前記正しい応答として割り当てることと、
前記フィードバック
が前記第1の可能性のある応答が正しくないというインジケーションを含む場合、
前記制御回路が、前記第2の
可能性のある応答を前記正しい応答として割り当てることと
を含む、請求項6に記載の方法。
【請求項8】
前記クエリは
、第1のクエリであり、前記入力エンティティは
、第1の入力エンティティであり、前記正しい応答は
、第1の正しい応答であり、
前記方法は、
前記制御回路が、学習の後に、前記第1のクエリ
に類似した形態の第2のクエリを前記ユーザから受信すること
であって、前記第2のクエリは、第2の入力エンティティおよび
前記用語を含む
、ことと、
前記第1のクエリのための
前記選択された実行パスに基づいて
、前記知識グラフから、前記第2のクエリに対する第2の正しい応答
を読み出すことと
をさらに含む、請求項2~7のいずれかに記載の方法。
【請求項9】
前記選択された実行パスは、前記入力エンティティから前記正しい応答
まで前記知識グラフ
における1つ以上のノードをたど
ることを含む、請求項2~8のいずれかに記載の方法。
【請求項10】
前記選択された実行パスは、前記入力エンティティから前記正しい応答まで前記知識グラフにおける1つ以上のノードをたどることを含み、
前記第1のクエリのための
前記選択された実行パスに基づいて
、前記第2のクエリに対する
前記第2の正しい応答を読み出すことは、前記第2の入力エンティティから前記第2の正しい応答
まで前記知識グラフ
における1つ以上のノードをたどることを含む、請求項
8に記載の方法。
【発明の詳細な説明】
【背景技術】
【0001】
従来のシステムでは、ユーザは、テレビ番組およびスポーツスコア等の多種多様なメディアおよび情報を利用することができる。多くの場合、ユーザは、ハンズフリーインターフェースを用いて、例えば、音声制御を用いて情報を検索することを期待できる。従来のシステムは、ユーザが、音声コマンドを用いて検索を行うことを許容し得る。しかしながら、中には、入力された音声検索が決まったクエリ自体に直接合致されることが原因で、固定数の検索クエリのみしか認識しないシステムもある。他には、事前に規定されたルールまたはモデルを用いて、ユーザのクエリ内に記述されているエンティティについてのユーザの意図を判定しようと試みるシステムもある。しかしながら、このユーザ体験は、典型的なユーザにとって煩わしく直感的でないものであり得る。
【発明の概要】
【課題を解決するための手段】
【0002】
自然言語クエリのための実行パスを質問および回答を用いて判定し、質問および回答内のエンティティならびにユーザのフィードバックに基づいて知識グラフ内でそのパスを選択することによって、従来の会話システムの欠点に対処するシステムおよび方法が記載されている。本システムおよび方法は、ユーザデバイス、遠隔サーバ、または別の好適なデバイス上で動作している双方向メディアガイダンスアプリケーションによって実行されてもよい。双方向メディアガイダンスアプリケーションは、双方向メディアガイダンスアプリケーションのいくつかの部分が1つのデバイス上で実行され、その一方で、双方向メディアガイダンスアプリケーションの他の部分が別のデバイス上で実行されるように、複数のデバイスに部分的に実装されてもよい。
【0003】
いくつかの側面では、記載されているシステムおよび方法は、双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定することを提供する。双方向メディアガイダンスアプリケーションは、ユーザから入力エンティティおよび未知の用語を含むクエリを受信する。例えば、クエリ「タイタニックを監督したのは誰(Who directed Titanic)?」は、入力エンティティ「ザ タイタニック(The Titanic)」と、未知の用語「監督した(directed)」とを含んでもよい。双方向メディアガイダンスアプリケーションは、知識グラフからクエリに対する複数の可能性のある応答を読み出す。例えば、双方向メディアガイダンスアプリケーションは、入力エンティティとグラフでつながっているエンティティに基づいて、「レオナード デカプリオ(Leonardo DiCaprio)」、「ケイト ウィンスレット(Kate Winslet)」、および「ジェームズ キャメロン(James Cameron)」を含む、可能性のある応答を読み出してもよい。
【0004】
双方向メディアガイダンスアプリケーションは、ユーザからのフィードバックに基づいて複数の可能性のある応答のうちの正しい応答を判定する。例えば、ユーザは、可能性のある応答を提示され、ユーザは、正しい応答、すなわち、「ジェームズ キャメロン」を選択する。双方向メディアガイダンスアプリケーションは、正しい応答に基づいてクエリのための実行パスを選択する。例えば、双方向メディアガイダンスアプリケーションは、入力エンティティから正しい応答に向けての監督エッジとなるべき、クエリのための実行パスを選択する。本学習は、「バットマンを監督したのは誰(Who directed Batman)?」等の類似した形態の任意のクエリに回答するために汎用化されてもよい。
【0005】
いくつかの実施形態では、ユーザは、クエリに対する可能性のある応答に関して部分的な、誤った、または曖昧なフィードバックを提供する。双方向メディアガイダンスアプリケーションは、同一のクエリまたは類似のクエリを複数のユーザに提示し、最も確からしい実行パスを選択してもよい。例えば、双方向メディアガイダンスアプリケーションは、クエリを3人の異なるユーザに提示してもよいし、またはクエリを同一ユーザに異なる時間に3回提示してもよい。ユーザ選択の応答のうちの2つは、入力エンティティから正しい応答に向けての監督エッジをクエリのための実行パスであると示し得る。双方向メディアガイダンスアプリケーションは、入力エンティティから正しい応答に向けての監督エッジを、これが最も起こりそうなオプションであることを根拠に、実行パスとなるように選択し得る。
【0006】
いくつかの側面では、記載されているシステムおよび方法は、双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定することを提供する。双方向メディアガイダンスアプリケーションは、入力エンティティおよび未知の用語を含むクエリをユーザから受信する。双方向メディアガイダンスアプリケーションは、クエリに対する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出す。第1の可能性のある応答はクエリのための第1の実行パスにより導出され、第2の可能性のある応答はクエリのための第2の実行パスにより導出される。双方向メディアガイダンスアプリケーションは、第1の可能性のある応答および第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成する。双方向メディアガイダンスアプリケーションは、第1の可能性のある応答および第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力をユーザから受信する。双方向メディアガイダンスアプリケーションは、フィードバックに基づいてクエリに対する正しい応答を判定する。双方向メディアガイダンスアプリケーションは、正しい応答に基づいてクエリのために第1の実行パスおよび第2の実行パスのうちの1つを選択する。
【0007】
例えば、双方向メディアガイダンスアプリケーションは、入力エンティティ「モーガン フリーマン(Morgan Freeman)」および「アカデミー賞(Academy Award)」と、未知の用語「受賞(win)」とを含むクエリ「モーガン フリーマンがアカデミー賞を受賞した映画は?」を受信し得る。双方向メディアガイダンスアプリケーションは、知識グラフから2セットの可能性のある応答を読み出すことができ、第1のセットは、モーガン フリーマンがアカデミー賞にノミネートされた映画(例えば、「ショーシャンク レデンプション(Shawshank Redemption)」、「インビクタス(Invictus)」、「ドライビング Miss デイジー(Driving Miss Daisy)」、および「ミリオン ダラー ベイビー(Million Dollar Baby)」)に対応し、第2のセットは、モーガン フリーマンがアカデミー賞に受賞した映画(例えば、「ミリオン ダラー ベイビー」)に対応する。双方向メディアガイダンスアプリケーションは、可能性のあるこれらのセットの応答を含む双方向メディアガイダンス画面を表示のために生成してもよい。加えて、またはその代わりに、双方向メディアガイダンスアプリケーションは、自然言語スピーチ「ショーシャンク レデンプションのことですか?」を用いて応答してもよい。
【0008】
双方向メディアガイダンスアプリケーションは、ミリオン ダラー ベイビーが正しい応答であるというフィードバックを示すユーザからの入力を受信してもよい。その代わりに、または加えて、双方向メディアガイダンスアプリケーションは、ショーシャンク レデンプションが正しい応答ではないというフィードバックを示すユーザからの入力を受信してもよい。双方向メディアガイダンスアプリケーションは、フィードバックに基づいて、クエリに対する正しい応答を判定してもよい。双方向メディアガイダンスアプリケーションは、正しい応答、ミリオン ダラー ベイビーに基づいて、このクエリのための実行パスを選択してもよい。このように、双方向メディアガイダンスアプリケーションは、知識グラフをたどる(トラバースする)ことにより正しい応答を読み出すという点から本クエリおよび/または類似した形態のクエリを評価する方法を学習し得る。
【0009】
いくつかの実施形態では、第1の可能性のある応答は、入力エンティティから第1の可能性のある応答に向けて知識グラフ内で1つ以上のノードをたどることによって第1の実行パスにより導出される。例えば、第1の可能性のある応答「ショーシャンク レデンプション」は、入力エンティティから正しい応答へ向けて候補者エッジをたどることによって第1の実行パスにより導出されてもよい。
【0010】
いくつかの実施形態では、第2の可能性のある応答は、入力エンティティから第2の可能性のある応答に向けて知識グラフ内で1つ以上のノードをたどることによって第2の実行パスを介して導出される。例えば、第2の可能性のある応答「ミリオン ダラー ベイビー」は、入力エンティティから正しい応答に向けて受賞者エッジをたどることによって第2の実行パスにより導出されてもよい。
【0011】
いくつかの実施形態では、フィードバックを示すユーザからの入力は、双方向メディアガイダンス画面からの第1の可能性のある応答および第2の可能性のある応答のうちの1つの選択を含む。例えば、ユーザからの入力は、可能性のある応答の第1および第2のセットを表示する双方向メディアガイダンス画面からの「ミリオン ダラー ベイビー」を選択したことを示してもよい。
【0012】
いくつかの実施形態では、双方向メディアガイダンスアプリケーションは、第1の可能性のある応答および第2の可能性のある応答のうちの1つのユーザ選択を正しい応答として割り当てることによって、クエリに対する正しい応答を判定する。例えば、双方向メディアガイダンスアプリケーションは、「ミリオン ダラー ベイビー」のユーザ選択を正しい応答として割り当ててもよい。
【0013】
いくつかの実施形態では、フィードバックを示すユーザからの入力は、第1の可能性のある応答が正しいというインジケーションおよび第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む。例えば、「ショーシャンク レデンプションのことですか?」に応答して、ユーザからの入力は、ショーシャンク レデンプションが正しくない応答であるというフィードバックを示してもよい。
【0014】
いくつかの実施形態では、双方向メディアガイダンスアプリケーションは、フィードバックが、第1の可能性のある応答が正しいというインジケーションを含む場合、第1の応答を正しい応答として割り当て、フィードバックが、第1の可能性のある応答が正しくないというインジケーションを含む場合、第2の応答を正しい応答として割り当てることによって、クエリに対する正しい応答を判定する。例えば、「ショーシャンク レデンプションのことですか?」に応答する場合であって、他の可能性のある応答が「ミリオン ダラー ベイビー」である場合、双方向メディアガイダンスアプリケーションは、ユーザからのフィードバックが、ショーシャンク レデンプションが正しくない応答であるというインジケーションを含むことを根拠に、ミリオン ダラー ベイビーを正しい応答として割り当ててもよい。
【0015】
いくつかの実施形態では、クエリは第1のクエリと称され、入力エンティティは第1の入力エンティティと称され、正しい応答は第1の正しい応答と称される。双方向メディアガイダンスアプリケーションは、第2の入力エンティティおよび未知の用語を含む、第1のクエリに類似した形態の第2のクエリをユーザから受信する。例えば、双方向メディアガイダンスアプリケーションは、クエリ「マシュー マコノヒー(Matthew McConaughey)がアカデミー賞を受賞した映画は?」を受信し得る。双方向メディアガイダンスアプリケーションは、第1のクエリのための選択された実行パスに基づいて、第2のクエリに関する第2の正しい応答を知識グラフから読み出す。例えば、双方向メディアガイダンスアプリケーションは、選択された実行パスに基づいて、正しい応答「ダラス バイヤーズ クラブ(Dallas Buyers Club)」を知識グラフから読み出してもよい。
【0016】
いくつかの実施形態では、選択された実行パスは、入力エンティティから正しい応答に向けて知識グラフ内で1つ以上ノードをたどっている。例えば、選択された実行パスは、入力エンティティから正しい応答に向けて受賞者エッジをたどっている。
【0017】
いくつかの実施形態では、双方向メディアガイダンスアプリケーションは、第2の入力エンティティから第2の正しい応答に向けて知識グラフ内で1つ以上のノードをたどることによって、第1のクエリのための選択された実行パスに基づいて第2のクエリに関する第2の正しい応答を読み出す。例えば、双方向メディアガイダンスアプリケーションは、入力エンティティから正しい応答に向けて受賞者エッジをたどることによって、選択された実行パスに基づいて正しい応答「ダラス バイヤーズ クラブ」を知識グラフから読み出し得る。
【0018】
従来のシステムには、入力された音声検索は決まったクエリ自体に直接合致されることが原因で、固定数の検索クエリのみしか認識しないものがある。他には、事前に規定されたルールまたはモデルを用いて、ユーザのクエリ内に記述されているエンティティについてのユーザの意図を判定しようと試みるものもある。しかしながら、このユーザ体験は、典型的なユーザにとって煩わしく、直感的でないものであり得る。記載されているシステムおよび方法は、自然言語クエリのための実行パスを質問および回答を用いて判定し、質問および回答内のエンティティ、ならびにユーザのフィードバックに基づいて、知識グラフ内でそのパスを選択することによって、従来の会話システムの欠点に対処している。従来のシステムと異なり、記載されているシステムおよび方法は、クエリの意図を判定することを要求しない。代わりに、本システムおよび方法は、「タイタニックを監督したのは誰?」等のクエリのための実行パスを汎用化して学習し、「バットマンを監督したのは誰?」等の類似した形態のあらゆるクエリに回答する。このように、本システムおよび方法は、知識グラフをたどることにより正しい応答を読み出すという点から本クエリおよび/または類似した形態のクエリを評価する方法を学習し得る。
【0019】
前述のシステム、方法、装置、および/または側面は、本開示に記述されている他のシステム、方法、装置、および/または側面に適用されてもよいし、もしくはそれに従って使用されてもよいことに留意されたい。
本発明は、例えば、以下を提供する。
(項目1)
双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定する方法であって、
入力エンティティおよび未知の用語を含むクエリをユーザから受信することと、
前記クエリに対する複数の可能性のある応答を知識グラフから読み出すことと、
前記ユーザからのフィードバックに基づいて前記複数の可能性のある応答のうちの正しい応答を判定することと、
前記正しい応答に基づいて前記クエリのための実行パスを選択することと
を含む、方法。
(項目2)
双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定するための方法であって、
入力エンティティおよび未知の用語を含むクエリをユーザから受信することと、
前記クエリに対する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出すことであって、前記第1の可能性のある応答は前記クエリのための第1の実行パスにより導出され、前記第2の可能性のある応答は前記クエリのための第2の実行パスにより導出される、ことと、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成することと、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力を前記ユーザから受信することと、
前記フィードバックに基づいて前記クエリに対する正しい応答を判定することと、
前記正しい応答に基づいて前記クエリのための前記第1の実行パスおよび前記第2の実行パスのうちの1つを選択することと
を含む、方法。
(項目3)
前記第1の可能性のある応答は、前記入力エンティティから前記第1の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって前記第1の実行パスにより導出される、項目2に記載の方法。
(項目4)
前記第2の可能性のある応答は、前記入力エンティティから前記第2の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって前記第2の実行パスにより導出される、項目2に記載の方法。
(項目5)
フィードバックを示す前記ユーザからの入力は、前記双方向メディアガイダンス画面からの前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つの選択を含む、項目2に記載の方法。
(項目6)
前記クエリに対する正しい応答を判定することは、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つのユーザ選択を前記正しい応答として割り当てることを含む、項目5に記載の方法。
(項目7)
フィードバックを示す前記ユーザからの入力は、前記第1の可能性のある応答が正しいというインジケーションおよび前記第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む、項目2に記載の方法。
(項目8)
前記クエリに対する正しい応答を判定することは、
前記フィードバックが、前記第1の可能性のある応答が正しいというインジケーションを含む場合、前記第1の応答を前記正しい応答として割り当てることと、
前記フィードバックが、前記第1の可能性のある応答が正しくないというインジケーションを含む場合、前記第2の応答を前記正しい応答として割り当てることと
を含む、項目7に記載の方法。
(項目9)
前記クエリは第1のクエリであり、前記入力エンティティは第1の入力エンティティであり、前記正しい応答は第1の正しい応答であり、
前記方法は、
第2の入力エンティティおよび前記未知の用語を含む、前記第1のクエリと類似した形態の第2のクエリを前記ユーザから受信することと、
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を前記知識グラフから読み出すことと
をさらに含む、項目2に記載の方法。
(項目10)
前記選択された実行パスは、前記入力エンティティから前記正しい応答へ向けて前記知識グラフ内で1つ以上のノードをたどっている、項目2に記載の方法。
(項目11)
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を読み出すことは、前記第2の入力エンティティから前記第2の正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどることを含む、項目10に記載の方法。
(項目12)
双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定するシステムであって、
知識グラフを記憶するメモリと、
ユーザ入力デバイスと、
制御回路であって、前記制御回路は、
入力エンティティおよび未知の用語を含むクエリを前記ユーザ入力デバイスから受信し、
前記クエリに対する第1の可能性のある応答および第2の可能性のある応答を前記メモリ内の知識グラフから読み出すことであって、前記第1の可能性のある応答は前記クエリのための第1の実行パスにより導出され、前記第2の可能性のある応答は前記クエリのための第2の実行パスにより導出される、ことを行い、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成し、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力を前記ユーザ入力デバイスから受信し、
前記クエリに対する正しい応答を前記フィードバックに基づいて判定し、
前記正しい応答に基づいて前記クエリのための前記第1の実行パスおよび前記第2の実行パスのうちの1つを選択する
ように構成された、制御回路と、
を備える、システム。
(項目13)
前記第1の可能性のある応答は、前記入力エンティティから前記第1の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって、前記第1の実行パスにより導出される、項目12に記載のシステム。
(項目14)
前記第2の可能性のある応答は、前記入力エンティティから前記第2の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって前記第2の実行パスにより導出される、項目12に記載のシステム。
(項目15)
前記フィードバックを示す入力は、前記双方向メディアガイダンス画面からの前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つの選択を含む、項目12に記載のシステム。
(項目16)
前記クエリに対する正しい応答を判定するように構成された制御回路は、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つのユーザ選択を前記正しい応答として割り当てるように構成された制御回路を備える、項目15に記載のシステム。
(項目17)
前記フィードバックを示す入力は、前記第1の可能性のある応答が正しいというインジケーションおよび前記第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む、項目12に記載のシステム。
(項目18)
前記クエリに対して前記正しい応答を判定するように構成された制御回路は、
前記フィードバックが前記第1の可能性のある応答が正しいというインジケーションを含む場合、前記第1の応答を前記正しい応答として割り当て、
前記フィードバックが前記第1の可能性のある応答が正しくないというインジケーションを含む場合、前記第2の応答を前記正しい応答として割り当てる
ように構成されている、制御回路を備える、項目17に記載のシステム。
(項目19)
前記クエリは第1のクエリであり、前記入力エンティティは第1の入力エンティティであり、前記正しい応答は第1の正しい応答であり、前記制御回路は、
第2の入力エンティティおよび前記未知の用語を含む、前記第1のクエリと類似した形態の第2のクエリを前記ユーザ入力デバイスから受信し、
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を前記メモリ内の知識グラフから読み出す
ようにさらに構成されている、項目12に記載のシステム。
(項目20)
前記選択された実行パスは、前記入力エンティティから前記正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどっている、項目12に記載のシステム。
(項目21)
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を読み出すように構成されている制御回路は、前記第2の入力エンティティから前記第2の正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどるように構成された制御回路を備える、項目20に記載のシステム。
(項目22)
双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定する装置であって、
入力エンティティおよび未知の用語を含むクエリをユーザから受信する手段と、
前記クエリに対する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出す手段であって、前記第1の可能性のある応答は前記クエリのための第1の実行パスにより導出され、前記第2の可能性のある応答は前記クエリのための第2の実行パスにより導出される、手段と、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成する手段と、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力を前記ユーザから受信する手段と、
前記フィードバックに基づいて前記クエリに対する正しい応答を判定する手段と、
前記正しい応答に基づいて前記クエリのための前記第1の実行パスおよび前記第2の実行パスのうちの1つを選択する手段と
を備える、装置。
(項目23)
前記第1の可能性のある応答は、前記入力エンティティから前記第1の可能性のある応答へ向けて前記知識グラフ内で1つ以上のノードをたどることによって、前記第1の実行パスにより導出される、項目22に記載の装置。
(項目24)
前記第2の可能性のある応答は、前記入力エンティティから前記第2の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって、前記第2の実行パスにより導出される、項目22に記載の装置。
(項目25)
フィードバックを示す前記ユーザからの入力は、前記双方向メディアガイダンス画面からの前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つの選択を含む、項目22に記載の装置。
(項目26)
前記クエリに対する正しい応答を判定するための手段は、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つのユーザ選択を前記正しい応答として割り当てる手段を備える、項目25に記載の装置。
(項目27)
フィードバックを示す前記ユーザからの入力は、前記第1の可能性のある応答が正しいというインジケーションおよび前記第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む、項目22に記載の装置。
(項目28)
前記クエリに対する正しい応答を判定するための手段は、
前記フィードバックが、前記第1の可能性のある応答が正しいというインジケーションを含む場合、前記第1の応答を前記正しい応答として割り当てる手段と、
前記フィードバックが、前記第1の可能性のある応答が正しくないというインジケーションを含む場合、前記第2の応答を前記正しい応答として割り当てる手段と
を備える、項目27に記載の装置。
(項目29)
前記クエリは第1のクエリであり、前記入力エンティティは第1の入力エンティティであり、前記正しい応答は第1の正しい応答であり、
前記装置は、
第2の入力エンティティおよび前記未知の用語を含む、前記第1のクエリと類似した形態の第2のクエリを前記ユーザから受信する手段と、
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を前記知識グラフから読み出す手段と
をさらに備える、項目22に記載の装置。
(項目30)
前記選択された実行パスは、前記入力エンティティから前記正しい応答へ向けて前記知識グラフ内で1つ以上のノードをたどっている、項目22に記載の装置。
(項目31)
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を読み出す手段は、前記第2の入力エンティティから前記第2の正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどる手段を備える、項目30に記載の装置。
(項目32)
メモリを備えた非一時的機械可読媒体であって、前記メモリには、双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定するための命令がエンコードされており、
前記非一時的機械可読媒体は、
入力エンティティおよび未知の用語を含むクエリをユーザから受信するための命令と、
前記クエリに対する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出すための命令であって、前記第1の可能性のある応答は前記クエリのための第1の実行パスにより導出され、前記第2の可能性のある応答は前記クエリのための第2の実行パスにより導出される、命令と、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成するための命令と、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力を前記ユーザから受信するための命令と、
前記フィードバックに基づいて前記クエリに対する正しい応答を判定するための命令と、
前記正しい応答に基づいて前記クエリのための前記第1の実行パスおよび前記第2の実行パスのうちの1つを選択するための命令と
を備える、非一時的機械可読媒体。
(項目33)
前記第1の可能性のある応答は、前記入力エンティティから前記第1の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって前記第1の実行パスにより導出される、項目32に記載の非一時的機械可読媒体。
(項目34)
前記第2の可能性のある応答は、前記入力エンティティから前記第2の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって前記第2の実行パスにより導出される、項目32に記載の非一時的機械可読媒体。
(項目35)
フィードバックを示す前記ユーザからの入力は、前記双方向メディアガイダンス画面からの前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つの選択を含む、項目32に記載の非一時的機械可読媒体。
(項目36)
前記クエリに対する正しい応答を判定するための命令は、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つのユーザ選択を前記正しい応答として割り当てるための命令を備える、項目35に記載の非一時的機械可読媒体。
(項目37)
フィードバックを示す前記ユーザからの入力は、前記第1の可能性のある応答が正しいというインジケーションおよび前記第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む、項目32に記載の非一時的機械可読媒体。
(項目38)
前記クエリに対する正しい応答を判定するための命令は、
前記フィードバックが、前記第1の可能性のある応答が正しいというインジケーションを含む場合、前記第1の応答を前記正しい応答として割り当てるための命令と、
前記フィードバックが、前記第1の可能性のある応答が正しくないというインジケーションを含む場合、前記第2の応答を前記正しい応答として割り当てるための命令と
を備える、項目37に記載の非一時的機械可読媒体。
(項目39)
前記クエリは第1のクエリであり、前記入力エンティティは第1の入力エンティティであり、前記正しい応答は第1の正しい応答であり、
前記非一時的機械可読媒体は、
第2の入力エンティティおよび前記未知の用語を含む、前記第1のクエリと類似した形態の第2のクエリを前記ユーザから受信するための命令と、
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を前記知識グラフから読み出すための命令と
をさらに備える、項目32に記載の非一過性機械可読媒体。
(項目40)
前記選択された実行パスは、前記入力エンティティから前記正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどっている、項目32に記載の非一時的機械可読媒体。
(項目41)
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに関する第2の正しい応答を読み出すための命令は、前記第2の入力エンティティから前記第2の正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどるための命令を備える、項目40に記載の非一時的機械可読媒体。
(項目42)
双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定する方法であって、
入力エンティティおよび未知の用語を含むクエリをユーザから受信することと、
前記クエリに対する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出すことであって、前記第1の可能性のある応答は前記クエリのための第1の実行パスにより導出され、前記第2の可能性のある応答は前記クエリのための第2の実行パスにより導出される、ことと、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成することと、
前記第1の可能性のある応答および前記第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力を前記ユーザから受信することと、
前記フィードバックに基づいて前記クエリに対する正しい応答を判定することと、
前記正しい応答に基づいて前記クエリのための前記第1の実行パスおよび前記第2の実行パスのうちの1つを選択することと
を含む、方法。
(項目43)
前記第1の可能性のある応答は、前記入力エンティティから前記第1の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって前記第1の実行パスにより導出される、項目42に記載の方法。
(項目44)
前記第2の可能性のある応答は、前記入力エンティティから前記第2の可能性のある応答に向けて前記知識グラフ内で1つ以上のノードをたどることによって前記第2の実行パスにより導出される、項目42または43に記載の方法。
(項目45)
フィードバックを示す前記ユーザからの入力は、前記双方向メディアガイダンス画面からの前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つの選択を含む、項目42~44のいずれか1項に記載の方法。
(項目46)
前記クエリに対する正しい応答を判定することは、前記第1の可能性のある応答および前記第2の可能性のある応答のうちの1つのユーザ選択を前記正しい応答として割り当てることを含む、項目45に記載の方法。
(項目47)
フィードバックを示す前記ユーザからの入力は、前記第1の可能性のある応答が正しいというインジケーションおよび前記第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む、項目42~46のいずれか1項に記載の方法。
(項目48)
前記クエリに対する正しい応答を判定することは、
前記フィードバックが、前記第1の可能性のある応答が正しいというインジケーションを含む場合、前記第1の応答を前記正しい応答として割り当てることと、
前記フィードバックが、前記第1の可能性のある応答が正しくないというインジケーションを含む場合、前記第2の応答を前記正しい応答として割り当てることと
を含む、項目47に記載の方法。
(項目49)
前記クエリは第1のクエリであり、前記入力エンティティは第1の入力エンティティであり、前記正しい応答は第1の正しい応答であり、
前記方法は、
第2の入力エンティティおよび前記未知の用語を含む、前記第1のクエリと類似した形態の第2のクエリを前記ユーザから受信することと、
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を前記知識グラフから読み出すことと
をさらに含む、項目42~48のいずれか1項に記載の方法。
(項目50)
前記選択された実行パスは、前記入力エンティティから前記正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどっている、項目42~49のいずれか1項に記載の方法。
(項目51)
前記第1のクエリのための選択された実行パスに基づいて前記第2のクエリに対する第2の正しい応答を読み出すことは、前記第2の入力エンティティから前記第2の正しい応答に向けて前記知識グラフ内で1つ以上のノードをたどることを含む、項目50に記載の方法。
【図面の簡単な説明】
【0020】
本開示の上記および他の目的ならびに利点は、同様の参照文字が全体を通して同様の部品を指す添付図面と併せて解釈される以下の詳細な説明を考慮することによって明白となるであろう。
【
図1】
図1は、本開示のいくつかの実施形態による、メディアガイダンスアプリケーションによって生成される表示画面の例証的実施例を示す。
【
図2】
図2は、本開示のいくつかの実施形態による、メディアガイダンスアプリケーションによって生成される表示画面の別の例証的実施例を示す。
【
図3】
図3は、本開示のいくつかの実施形態による、メディアガイダンスアプリケーションによって生成される表示画面のさらに別の例証的実施例を示す。
【
図4】
図4は、本開示のいくつかの実施形態による、知識グラフのサブセットの例証的視覚表現を示す。
【
図5】
図5は、本開示のいくつかの実施形態による、双方向メディアガイダンスアプリケーションによって生成される表示画面のさらに別の例証的実施例を示す。
【
図6】
図6は、本開示のいくつかの実施形態による、双方向メディアガイダンスアプリケーションによって生成される表示画面のさらに別の例証的実施例を示す。
【
図7】
図7は、本開示のいくつかの実施形態による例証的ユーザ機器デバイスのブロック図である。
【
図8】
図8は、本開示のいくつかの実施形態による例証的メディアシステムのブロック図である。
【
図9】
図9は、本開示のいくつかの実施形態による、双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定するための例証的プロセスのフローチャートである。
【
図10】
図10は、本開示のいくつかの実施形態による、ユーザからのフィードバックに応じてユーザクエリに対する正しい応答を判定するための例証的プロセスのフローチャートである。
【発明を実施するための形態】
【0021】
自然言語クエリのための実行パスを質問および回答を用いて判定し、質問および回答内のエンティティならびにユーザのフィードバックに基づいて知識グラフ内でそのパスを選択することによって、従来の会話システムの欠点に対処しているシステムおよび方法が記載されている。本システムおよび方法は、ユーザデバイス(例えば、ユーザ機器デバイス700(
図7))、遠隔サーバ(例えば、サーバ816または818(
図8))、または別の好適なデバイス上で動作する双方向メディアガイダンスアプリケーションによって実行されてもよい。双方向メディアガイダンスアプリケーションは、双方向メディアガイダンスアプリケーションのいくつかの部分が、1つのデバイス上で実行され、その一方で双方向メディアガイダンスアプリケーションの他の部分が別のデバイス上で実行されるように、複数のデバイスに部分的に実装されてもよい。
【0022】
いくつかの側面では、記載されるシステムおよび方法は、制御回路(例えば、制御回路704(
図7))上で実行される双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定することを提供する。制御回路は、ユーザから入力エンティティおよび未知の用語を含むクエリを受信する。例えば、クエリ「タイタニックを監督したのは誰?」は、入力エンティティ「ザ タイタニック」と未知の用語「監督した」とを含んでもよい。制御回路は、知識グラフからクエリに対する複数の可能性のある応答を読み出す。例えば、制御回路は、「レオナード デカプリオ」、「ケイト ウィンスレット」、および「ジェームズ キャメロン」を含む、入力エンティティとグラフで接続されたエンティティに基づいて可能性のある応答を読み出してもよい。
【0023】
制御回路は、ユーザからのフィードバックに基づいて複数の可能性のある応答のうちの正しい応答を判定する。例えば、ユーザには可能性のある応答が提示され、ユーザは、正しい応答、すなわち、「ジェームズ キャメロン」を選択する。制御回路は、正しい応答に基づいてクエリのための実行パスを選択する。例えば、制御回路は、入力エンティティから正しい応答に向けての監督エッジをクエリのための実行パスとなるように選択する。本学習は、「バットマンを監督したのは誰?」等の類似した形態の任意のクエリに回答するために汎用化されてもよい。
【0024】
いくつかの実施形態では、ユーザは、クエリに対する可能性のある応答に関して部分的な、誤った、または曖昧なフィードバックを提供する。制御回路は、同一のまたは類似したクエリを複数のユーザに提示し、最も可能性の高い実行パスを選択してもよい。例えば、制御回路は、クエリを3人の異なるユーザに提示してもよいし、またはクエリを3回同一ユーザに異なる時間に提示してもよい。ユーザ選択の応答のうちの2つは、入力エンティティから正しい応答に向けての監督エッジをクエリのための実行パスであると示し得る。制御回路は、入力エンティティから正しい応答に向けての監督エッジを、これが最も可能性が高いオプションであることを根拠に、実行パスとなるように選択し得る。
【0025】
従来のシステムには、入力された音声検索が固定されたクエリ自体に直接合致されることが原因で、固定数の検索クエリしか認識しないシステムもある。他には、事前に規定されたルールまたはモデルを用いて、ユーザのクエリ内に記述されているエンティティについてのユーザの意図を判定しようと試みるシステムもある。しかしながら、このユーザ体験は、典型的なユーザにとって煩わしく直感的でないものであり得る。記載されているシステムおよび方法は、質問および回答を用いて自然言語クエリのための実行パスを判定し、質問および回答内のエンティティならびにユーザのフィードバックに基づいて知識グラフ内でそのパスを選択することによって従来の会話システムの欠点に対処している。従来のシステムと異なり、記載されているシステムおよび方法は、クエリの意図を判定することを要求しない。代わりに、本システムおよび方法は、「タイタニックを監督したのは誰?」等のクエリのための実行パスを汎用化して学習し、「バットマンを監督したのは誰?」等の類似した形態の任意のクエリに回答する。このように、本システムおよび方法は、知識グラフをたどることによって正しい応答を読み出すという点から本クエリおよび/または類似した形態のクエリを評価する方法を学習し得る。
【0026】
図1は、本開示のいくつかの実施形態による、双方向メディアガイダンスアプリケーションによって生成される表示画面100の例証的実施例を示す。双方向メディアガイダンスアプリケーションは、入力エンティティ「モーガン フリーマン(Morgan Freeman)」および「アカデミー賞」を含む、クエリ102「モーガン フリーマンがアカデミー賞を受賞した映画は?」を受信し得る。この例では、双方向メディアガイダンスアプリケーションは、類似したクエリで以前に訓練されており、知識グラフから正しい応答104「ミリオン ダラー ベイビー」を読み出し、表示のために生成する。双方向メディアガイダンスアプリケーションは、以前に訓練されている類似のクエリに類似した形態の、入力エンティティおよび未知の用語を含むクエリ102をユーザから受信し得る。双方向メディアガイダンスアプリケーションは、以前に訓練されている類似のクエリのための選択された実行パスに基づいて、クエリ102に関する正しい応答を知識グラフから読み出してもよい。双方向メディアガイダンスアプリケーションは、選択された実行パスに基づいて、正しい応答104「ミリオン ダラー ベイビー」を知識グラフから読み出してもよい。
【0027】
図2は、本開示のいくつかの実施形態による、双方向メディアガイダンスアプリケーションによって生成された表示画面200の別の例証的実施例を示す。双方向メディアガイダンスアプリケーションは、入力エンティティ「モーガン フリーマン」および「アカデミー賞」を含むクエリ202「モーガン フリーマンがアカデミー賞を受賞した映画は?」を受信し得る。この例では、双方向メディアガイダンスアプリケーションは、類似のクエリでまだ訓練されていない。双方向メディアガイダンスアプリケーションは、クエリに関する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出してもよい。第1の可能性のある応答は、クエリのための第1の実行パスにより導出され、第2の可能性のある応答は、クエリのための第2の実行パスにより導出される(以下に
図4に関してさらに記載されている)。双方向メディアガイダンスアプリケーションは、2セットの可能性のある応答を知識グラフから読み出してもよく、第1のセットは、モーガン フリーマンがアカデミー賞にノミネートされた映画(例えば、「ショーシャンク レデンプション」、「インビクタス」、「ドライビング Miss デイジー」、および「ミリオン ダラー ベイビー」)に対応し、第2のセットは、モーガン フリーマンがアカデミー賞を受賞した映画(例えば、「ミリオン ダラー ベイビー」)に対応する。
【0028】
双方向メディアガイダンスアプリケーションは、可能性のある応答204のうちの1つ、例えば、「ミリオン ダラー ベイビー」を含む双方向メディアガイダンス画面を表示のために生成してもよい。加えて、またはその代わりに、双方向メディアガイダンスアプリケーションは、自然言語発話「ミリオン ダラー ベイビーのことですか?」を用いて応答してもよい。双方向メディアガイダンスアプリケーションは、ミリオン ダラー ベイビーが正しい応答であるというフィードバックを示す入力をユーザから受信してもよい。双方向メディアガイダンスアプリケーションは、フィードバックに基づいてクエリに対する正しい応答を判定してもよい。双方向メディアガイダンスアプリケーションは、正しい応答に対応する、クエリのための実行パスを選択してもよい。このように、双方向メディアガイダンスアプリケーションは、知識グラフをたどって正しい応答を読み出すという点から本クエリおよび/または類似した形態のクエリを評価する方法を学習し得る。
【0029】
いくつかの実施形態では、フィードバックを示すユーザからの入力は、第1の可能性のある応答が正しいというインジケーションおよび第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む。例えば、「ショーシャンク レデンプションのことですか?」に応答して、ユーザからの入力は、ショーシャンク レデンプションが正しくない応答であるというフィードバックを示してもよい。
【0030】
いくつかの実施形態では、双方向メディアガイダンスアプリケーションは、フィードバックが第1の可能性のある応答が正しいというインジケーションを含む場合、第1の応答を正しい応答として割り当て、フィードバックが第1の可能性のある応答が正しくないというインジケーションを含む場合、第2の応答を正しい応答として割り当てることによって、クエリに対する正しい応答を判定する。例えば、「ショーシャンク レデンプションのことですか?」に応答する場合であって、他の可能性のある応答が「ミリオン ダラー ベイビー」である場合、双方向メディアガイダンスアプリケーションは、ユーザからのフィードバックが、ショーシャンク レデンプションが正しくない応答であるというインジケーションを含むことを根拠に、ミリオン ダラー ベイビーを正しい応答として割り当ててもよい。
【0031】
図3は、本開示のいくつかの実施形態による、双方向メディアガイダンスアプリケーションによって生成される表示画面300の別の例証的実施例を示す。双方向メディアガイダンスアプリケーションは、入力エンティティ「モーガン フリーマン」および「アカデミー賞」を含むクエリ302「モーガン フリーマンがアカデミー賞を受賞した映画は?」を受信し得る。この例では、双方向メディアガイダンスアプリケーションは、類似のクエリに関してまだ訓練されていない。双方向メディアガイダンスアプリケーションは、クエリに関する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出してもよい。第1の可能性のある応答は、クエリのための第1の実行パスにより導出され、第2の可能性のある応答は、クエリのための第2の実行パスにより導出される(以下で
図4を関してさらに説明されている)。双方向メディアガイダンスアプリケーションは、知識グラフから、2セットの可能性のある応答を読み出してもよく、第1のセットは、モーガン フリーマンがアカデミー賞にノミネートされた映画(例えば、「ショーシャンク レデンプション」、「インビクタス」、「ドライビング Miss デイジー」、および「ミリオン ダラー ベイビー」)に対応し、第2のセットは、モーガン フリーマンがアカデミー賞を受賞した映画(例えば、「ミリオン ダラー ベイビー」)に対応する。
【0032】
双方向メディアガイダンスアプリケーションは、可能性のある応答304および306を含む双方向メディアガイダンス画面を表示のために生成してもよい。双方向メディアガイダンスアプリケーションは、可能性のある応答に関するフィードバックを示す入力をユーザから受信してもよい。フィードバックを示すユーザからの入力は、双方向メディアガイダンス画面からの第1の可能性のある応答および第2の可能性のある応答のうちの1つの選択を含んでもよい。ユーザは、オプション308を用いてその選択を確認してもよいし、またはオプション310を用いてその選択をキャンセルしてもよい。例えば、ユーザからの入力は、第1および第2の可能性のある応答を表示する双方向メディアガイダンス画面からの「ミリオン ダラー ベイビー」の選択を示してもよい。双方向メディアガイダンスアプリケーションは、フィードバックに基づいてクエリに対する正しい応答を判定してもよい。双方向メディアガイダンスアプリケーションは、可能性のある応答のうちの1つのユーザ選択を正しい応答として割り当てることによって、クエリに対する正しい応答を判定してもよい。例えば、双方向メディアガイダンスアプリケーションは、「ミリオン ダラー ベイビー」のユーザ選択を正しい応答として割り当ててもよい。双方向メディアガイダンスアプリケーションは、正しい応答に対応するクエリのための実行パスを選択してもよい。
【0033】
図4は、本開示のいくつかの実施形態による、ノード402~416を含む知識グラフ400のサブセットの例証的視覚表現を示す。ユーザクエリに対する1つ以上の可能性のある応答は、入力エンティティから第1の可能性のある応答に向けて知識グラフ内でノード402~416のうちの1つ以上のものをたどることによって、実行パスにより導出される。
図1~3に関して議論される例示的クエリ「モーガン フリーマンがアカデミー賞を受賞した映画は?」を挙げると、第1の可能性のある応答「ショーシャンク レデンプション」は、入力エンティティ「モーガン フリーマン」404から、中間ノード410を介して可能性のある応答「ショーシャンク レデンプション」に向けて候補者エッジをたどることによって実行パスにより導出されてもよい。同様に、第2の可能性のある応答「ミリオン ダラー ベイビー」は、入力エンティティ「モーガン フリーマン」404から、中間ノード402を介して可能性のある応答「ミリオン ダラー ベイビー」に向けて受賞者エッジをたどることによって実行パスにより導出されてもよい。クエリに関する正しい応答に対応する選択された実行パスは、入力エンティティから正しい応答に向けて知識グラフ内のノード412~416のうちの1つ以上のものをたどっていてもよい。例えば、選択された実行パスは、入力エンティティから正しい応答に向けて受賞者エッジをたどっていてもよい。
【0034】
いくつかの実施形態では、自然言語クエリ「モーガン フリーマンがアカデミー賞を受賞した映画は?」は、SPARQLクエリとして表されることができる。SPARQL(SPARQLプロトコルおよびRDFクエリ言語の再帰的頭字語)は、データベースのためのセマンティッククエリ言語であるRDF(リソース ディスクリプション フレームワーク)クエリ言語である。SPARQLは、RDFフォーマットにおいて記憶されているデータを読み出して操作することが可能である。付加的情報は、SPARQLウェブサイト、www.w3.org/TR/sparql11-queryにおいてより詳細に説明されており、それらは全体として参照することによって本明細書に組み込まれる。
【0035】
本例証的実施例では、2セットの可能性のある応答、すなわち、可能性のあるもの1(ミリオン ダラー ベイビー)および可能性のあるもの2(ショーシャンク レデンプション、ドライビング Miss デイジー、インビクタス、ミリオン ダラー ベイビー)が存在する。可能性のある応答のセット毎のSPARQLクエリは、可能性のある応答のセットに対応する実行パスを表し得る。可能性のある回答のセット毎のSPARQLクエリは、以下のように表され得る。
【0036】
【0037】
例えば、
図3では、双方向メディアガイダンス画面からの「ミリオン ダラー ベイビー」の選択を示すユーザからの入力に続いて、双方向メディアガイダンスアプリケーションは、クエリに対応する正しい応答が「ミリオン ダラー ベイビー」であると判定してもよい。双方向メディアガイダンスアプリケーションは、正しい応答「ミリオン ダラー ベイビー」に対応するSPARQLクエリを選択することによって、正しい応答に対応するクエリのための実行パスを選択してもよい。
【0038】
どのようなコンテンツ配信システムでもユーザに利用可能なコンテンツの量はかなりの量であり得る。その結果、多くのユーザは、ユーザがコンテンツの選択を効率的にナビゲートし、要求するかもしれないコンテンツを容易に識別することを可能にするインターフェースを通したメディアガイダンスの形態を要求している。そのようなガイダンスを提供するアプリケーションは、本明細書では、双方向メディアガイダンスアプリケーションと称されるが、時として、双方向メディアガイダンスアプリケーションまたはガイダンスアプリケーションと称されることもある。
【0039】
双方向メディアガイダンスアプリケーションは、ガイダンスを提供する対象となるコンテンツに応じて種々の形態をとってもよい。典型的なタイプの双方向メディアガイダンスアプリケーションの1つは、双方向テレビ番組ガイドである。双方向テレビ番組ガイド(時として、電子番組ガイドと称される場合もある)は、とりわけ、ユーザが、多くのタイプのコンテンツまたはメディアアセット間をナビゲートし、それを特定することが可能である、公知のガイダンスアプリケーションである。双方向メディアガイダンスアプリケーションは、ユーザが、コンテンツ間をナビゲートし、コンテンツを特定し、選択することを可能にするグラフィカルユーザインターフェース画面を生成してもよい。本明細書で参照されるように、用語「メディアアセット」および「コンテンツ」とは、電子的に消費可能なユーザアセット、例えば、テレビ番組、ならびに有料番組、オンデマンド番組(ビデオオンデマンド(VOD)システムにおけるようなもの)、インターネットコンテンツ(例えば、ストリーミングコンテンツ、ダウンロード可能コンテンツ、ウェブキャスト等)、ビデオクリップ、オーディオ、コンテンツ情報、写真、回転画像、ドキュメント、再生一覧、ウェブサイト、記事、書籍、電子書籍、ブログ、チャットセッション、ソーシャルメディア、アプリケーション、ゲーム、および/または任意の他のメディアもしくはマルチメディア、および/またはそれらの組み合わせを意味すると理解されたい。ガイダンスアプリケーションはまた、ユーザが、コンテンツ間をナビゲートし、コンテンツを特定することを可能にする。本明細書で参照されるように、用語「マルチメディア」とは、前述の少なくとも2つの異なるコンテンツ形態、例えば、テキスト、オーディオ、画像、ビデオ、または双方向コンテンツ形態を利用するコンテンツを意味すると理解されたい。コンテンツは、ユーザ機器デバイスによって、録画、再生、表示、またはアクセスされてもよいが、また、ライブパーフォーマンスの一部であることも可能である。
【0040】
本明細書で論じられる実施形態のいずれかを行うための双方向メディアガイダンスアプリケーションおよび/または任意の命令は、コンピュータ可読媒体上にエンコードされてもよい。コンピュータ可読媒体は、データを記憶することが可能な任意のメディアを含む。コンピュータ可読媒体は、限定されるものではないが、電気または電磁信号の伝搬を含む一時的なものであってもよく、または限定されるものではないが、ハードディスク、フロッピー(登録商標)ディスク、USBドライブ、DVD、CD、メディアカード、レジスタメモリ、プロセッサキャッシュ、ランダムアクセスメモリ(「RAM」)等の揮発性および不揮発性コンピュータメモリまたは記憶デバイスを含む非一時的なものであってもよい。
【0041】
インターネット、モバイルコンピューティング、および高速無線ネットワークの出現に伴って、ユーザは、従来は使用しなかったユーザ機器デバイス上でメディアにアクセスするようになっている。本明細書で参照されるように、語句「ユーザ機器デバイス」、「ユーザ機器」、「ユーザデバイス」、「電子デバイス」、「電子機器」、「メディア機器デバイス」、または「メディアデバイス」は、テレビ、スマートTV、セットトップボックス、衛星テレビに対応するための統合型受信機デコーダ(IRD)、デジタル記憶デバイス、デジタルメディア受信機(DMR)、デジタルメディアアダプタ(DMA)、ストリーミングメディアデバイス、DVDプレーヤ、DVDレコーダ、接続型DVD、ローカルメディアサーバ、BLU-RAY(登録商標)プレーヤ、BLU-RAY(登録商標)レコーダ、パーソナルコンピュータ(PC)、ラップトップコンピュータ、タブレットコンピュータ、ウェブTVボックス、パーソナルコンピュータテレビ(PC/TV)、PCメディアサーバ、PCメディアセンター、ハンドヘルドコンピュータ、固定電話、携帯情報端末(PDA)、携帯電話、ポータブルビデオプレーヤ、ポータブル音楽プレーヤ、ポータブルゲーム機、スマートフォン、または任意の他のテレビ機器、コンピューティング機器、もしくは無線デバイス、および/またはそれらの組み合わせ等の前述のコンテンツにアクセスするための任意のデバイスを意味すると理解されたい。いくつかの実施形態では、ユーザ機器デバイスは、正面画面および裏面画面、複数の正面画面、または複数の角度付き画面を有してもよい。いくつかの実施形態では、ユーザ機器デバイスは、正面カメラおよび/または背面カメラを有してもよい。これらのユーザ機器デバイス上で、ユーザは、テレビを通して利用可能な同一のコンテンツ間をナビゲートし、それを特定することが可能であってもよい。その結果として、メディアガイダンスは、これらのデバイス上でも利用可能であってもよい。提供されるガイダンスは、テレビのみを通して利用可能なコンテンツ、他のタイプのユーザ機器デバイスのうちの1つ以上のもののみを通して利用可能なコンテンツ、またはテレビおよび他のタイプのユーザ機器デバイスのうちの1つ以上のものの両方を通して利用可能なコンテンツのためのものであってもよい。双方向メディアガイダンスアプリケーションは、ユーザ機器デバイス上で、オンラインアプリケーション(すなわち、ウェブサイト上で提供される)、もしくは独立型アプリケーションまたはクライアントとして提供されてもよい。双方向メディアガイダンスアプリケーションを実装し得る種々のデバイスおよびプラットフォームは、以下でより詳細に説明される。
【0042】
双方向メディアガイダンスアプリケーションの機能の1つは、メディアガイダンスデータをユーザに提供することである。本明細書で参照されるように、語句「メディアガイダンスデータ」または「ガイダンスデータ」は、コンテンツに関連する任意のデータ、またはガイダンスアプリケーションを動作させる際に使用されるデータを意味すると理解されたい。例えば、ガイダンスデータは、番組情報、ガイダンスアプリケーション設定、ユーザの好み、ユーザプロファイル情報、メディア一覧、メディア関連情報(例えば、放送時間、放送チャンネル、タイトル、内容、評価情報(例えば、ペアレンタルコントロール評価、批評家の評価等)、ジャンルまたはカテゴリ情報、俳優情報、放送会社またはプロバイダのロゴのロゴデータ等)、メディア形式(例えば、標準解像度、高解像度、3D等)、オンデマンド情報、ブログ、ウェブサイト、およびユーザが所望のコンテンツ選択間をナビゲートし、それを特定するために役立つ、任意の他のタイプのガイダンスデータを含んでもよい。
【0043】
図5~6は、メディアガイダンスデータを提供するために使用され得る例証的表示画面を示す。
図5~6に示される表示画面は、任意の好適なユーザ機器デバイスまたはプラットフォーム上に実装されてもよい。
図5~6の表示は、フル画面表示として図示されているが、それらはまた、表示されているコンテンツ上に完全または部分的に重ね合わせられてもよい。ユーザは、表示画面に提供された選択可能なオプション(例えば、メニューオプション、一覧オプション、アイコン、ハイパーリンク等)を選択することによって、もしくはリモートコントロールまたは他のユーザ入力インターフェースもしくはデバイス上の専用ボタン(例えば、GUIDE「ガイド」ボタン)を押下することによって、コンテンツ情報へのアクセスの要望を指示してもよい。ユーザの指示に応答して、双方向メディアガイダンスアプリケーションは、グリッド内の時間およびチャンネル別、時間別、チャンネル別、ソース別、コンテンツタイプ別、カテゴリ別(例えば、映画、スポーツ、ニュース、子供向け、または他の番組カテゴリ)、または他の所定、ユーザ定義、もしくは他の編成基準等のいくつかの方法のうちの1つにおいて編成されたメディアガイダンスデータを伴う表示画面を提供してもよい。
【0044】
図5は、単一表示内の異なるタイプのコンテンツへのアクセスも可能にする、時間およびチャンネル別に配列された番組一覧表示500の例証的グリッドを示す。表示500は、以下を伴うグリッド502を含んでもよい。(1)各チャンネル/コンテンツタイプ識別子(列内のセル)が利用可能な異なるチャンネルまたはコンテンツのタイプを識別する、チャンネル/コンテンツタイプ識別子504の列、および(2)各時間識別子(行内のセル)が番組の時間帯を識別する、時間識別子506の行。グリッド502はまた、番組一覧508等の番組一覧のセルも含み、各一覧は、一覧の関連チャンネルおよび時間の上に提供される番組のタイトルを提供する。ユーザ入力デバイスを用いて、ユーザは、ハイライト領域510を移動させることによって、番組一覧を選択することができる。ハイライト領域510によって選択される番組一覧に関する情報が、番組情報領域512内に提供されてもよい。領域512は、例えば、番組タイトル、番組内容、番組が放送される時間(該当する場合)、番組が放送されるチャンネル(該当する場合)、番組の評価、および他の所望の情報を含んでもよい。
【0045】
線形番組(例えば、所定の時間に複数のユーザ機器デバイスに伝送されるようにスケジューリングされ、スケジューリングに従って提供されるコンテンツ)へのアクセスの提供に加え、双方向メディアガイダンスアプリケーションはまた、非線形番組(例えば、任意の時間においてユーザ機器デバイスにアクセス可能であって、スケジューリングに従って提供されるものではないコンテンツ)へのアクセスも提供する。非線形番組は、オンデマンドコンテンツ(例えば、VOD)、インターネットコンテンツ(例えば、ストリーミングメディア、ダウンロード可能メディア等)、ローカルに記憶したコンテンツ(例えば、前述の任意のユーザ機器デバイスまたは他の記憶デバイス上に記憶されたコンテンツ)、または時間的制約のない他のコンテンツを含む異なるコンテンツソースからのコンテンツを含んでもよい。オンデマンドコンテンツは、映画または特定のコンテンツプロバイダ(例えば、「ザ ソプラノス(The Sopranos)」や「カーブ ユア エンシュージアズム(Curb Your Enthusiasm)」を提供するHBOオンデマンド(HBO On Demand))によって提供される任意の他のコンテンツを含んでもよい。HBO ON DEMANDは、タイム ワーナー カンパニー エル ピーらによって所有されるサービスマークであり、THE SOPRANOSおよびCURB YOUR ENTHUSIASMは、ホーム ボックス オフィス インクによって所有される商標である。インターネットコンテンツは、チャットセッションまたはウェブキャスト等のウェブイベント、もしくはインターネットウェブサイトまたは他のインターネットアクセス(例えば、FTP)を通して、ストリーミングコンテンツまたはダウンロード可能なコンテンツとしてオンデマンドで利用可能なコンテンツを含んでもよい。
【0046】
グリッド502は、オンデマンド一覧514、録画コンテンツ一覧516、およびインターネットコンテンツ一覧518を含む、非線形番組のメディアガイダンスデータを提供してもよい。異なるタイプのコンテンツソースからのコンテンツのためのメディアガイダンスデータを組み合わせる表示は、時として、「混合メディア」表示と称されることもある。表示500とは異なる、表示され得るメディアガイダンスデータのタイプの種々の順列は、ユーザ選択またはガイダンスアプリケーション定義に基づいてもよい(例えば、録画および放送一覧のみの表示、オンデマンドおよび放送一覧のみの表示等)。例証されるように、一覧514、516、および518は、これらの一覧の選択が、それぞれ、オンデマンド一覧、録画一覧、またはインターネット一覧専用の表示へのアクセスを提供し得ることを示すように、グリッド502内に表示される時間帯全体に及ぶものとして示されている。いくつかの実施形態では、これらのコンテンツタイプの一覧は、グリッド502に直接含まれてもよい。ユーザがナビゲーションアイコン520のうちの1つを選択することに応答して、付加的メディアガイダンスデータが表示されてもよい(ユーザ入力デバイス上の矢印キーを押下することによって、ナビゲーションアイコン520を選択することと同様に表示に影響を及ぼしてもよい)。
【0047】
表示500はまた、ビデオ領域522およびオプション領域526を含んでもよい。ビデオ領域522は、ユーザが、現在利用可能である、今後利用可能となる、またはユーザに利用可能であった番組を視聴および/またはプレビューすることを可能にしてもよい。ビデオ領域522のコンテンツは、グリッド502に表示される一覧のうちの1つに対応するか、またはそれから独立してもよい。ビデオ領域を含むグリッド表示は、時として、ピクチャインガイド(PIG)表示と称されることもある。PIG表示およびそれらの機能は、2003年5月13日発行のSatterfieldらの米国特許第6,564,378号、および2001年5月29日発行のYuenらの米国特許第6,239,794号でさらに詳細に説明されており、それらは全体として参照することによって本明細書に組み込まれる。PIG表示は、本明細書に説明される実施形態の他の双方向メディアガイダンスアプリケーション表示画面に含まれてもよい。
【0048】
オプション領域526は、ユーザが、異なるタイプのコンテンツ、双方向メディアガイダンスアプリケーション表示、および/またはメディアガイダンスアプリケーション特徴にアクセスすることを可能にしてもよい。オプション領域526は、ディプレイ500(および本明細書に説明される他の表示画面)の一部であってもよく、もしくは画面上のオプションを選択すること、またはユーザ入力デバイス上の専用または割当可能ボタンを押下することによって、ユーザによって呼び出されてもよい。オプション領域526内の選択可能オプションは、グリッド502内の番組一覧に関連する特徴に関してもよく、またはメインメニュー表示から利用可能なオプションを含んでもよい。番組一覧に関連する特徴は、番組を受信する他の放送時間または他の方法を検索すること、番組を録画すること、番組の連続録画を有効化すること、番組および/またはチャンネルをお気に入りとして設定すること、番組を購入すること、もしくは他の特徴を含んでもよい。メインメニュー表示から利用可能なオプションは、検索オプション、VODオプション、ペアレンタルコントロールオプション、インターネットオプション、クラウドベースのオプション、デバイス同期オプション、第2の画面デバイスオプション、種々のタイプのメディアガイダンスデータ表示にアクセスするためのオプション、プレミアムサービスを購読するためのオプション、ユーザのプロファイルを編集するためのオプション、ブラウザオーバーレイにアクセスするためのオプション、もしくは他のオプションを含んでもよい。
【0049】
双方向メディアガイダンスアプリケーションは、ユーザの好みに基づいて個人向けされてもよい。個人向けされた双方向メディアガイダンスアプリケーションは、ユーザが、双方向メディアガイダンスアプリケーションによって個人向けされた「体験」を生成するように、表示および特徴をカスタマイズすることを可能にする。この個人向けされた体験は、ユーザがこれらのカスタマイズを入力できるようにすることによって、および/またはメディアガイダンスアプリケーションがユーザ活動を監視することによって種々のユーザの好みを判定することによって生成されてもよい。ユーザは、ガイダンスアプリケーションにログインすることによって、またはその他の方法でガイダンスアプリケーションに対して自らを特定することによって、それらの個人向けされたガイダンスアプリケーションにアクセスしてもよい。双方向メディアガイダンスアプリケーションのカスタマイズは、ユーザプロファイルに従って作成されてもよい。カスタマイズは、提示方式(例えば、表示の色方式、テキストのフォントサイズ等)、表示されるコンテンツ一覧の態様(例えば、HDTV番組のみまたは3D番組のみ、お気に入りチャンネル選択に基づいたユーザ指定の放送チャンネル、チャンネルの表示の並び替え、推奨コンテンツ等)、所望の録画特徴(例えば、特定のユーザに対する録画または連続録画、録画品質等)、ペアレンタルコントロール設定、インターネットコンテンツのカスタマイズされた提示(例えば、ソーシャルメディアコンテンツ、電子メール、電子的に配信された記事等の提示)、および他の所望のカスタマイズを変更させることを含んでもよい。
【0050】
双方向メディアガイダンスアプリケーションは、ユーザが、ユーザプロファイル情報を提供することを可能にしてもよく、またはユーザプロファイル情報を自動的にコンパイルしてもよい。双方向メディアガイダンスアプリケーションは、例えば、ユーザがアクセスするコンテンツ、および/またはユーザがガイダンスアプリケーションと行い得る他の情報のやりとりを監視してもよい。加えて、双方向メディアガイダンスアプリケーションは、特定のユーザに関連する他のユーザプロファイルの全体または一部を(例えば、www.allrovi.com等のユーザがアクセスするインターネット上の他のウェブサイトから、ユーザがアクセスする他の双方向メディアガイダンスアプリケーションから、ユーザがアクセスする他の双方向アプリケーションから、ユーザの別のユーザ機器デバイスから)取得し、および/または双方向メディアガイダンスアプリケーションがアクセスし得る他のソースから、ユーザに関する情報を取得してもよい。結果として、ユーザの異なるユーザ機器デバイスにわたって、統一されたガイダンスアプリケーション体験をユーザに提供することができる。このタイプのユーザ体験は、
図8に関連して、以下でより詳細に説明される。付加的な個人向けされた双方向メディアガイダンスアプリケーション特徴は、2005年7月11日出願のEllisらの米国特許出願第2005/0251827号、2007年1月16日出願のBoyerらの米国特許出願第7,165,098号、および2002年2月21日出願のEllisらの米国特許出願第2002/0174430号でさらに詳細に説明されており、それらは全体として参照することにより本明細書に組み込まれる。
【0051】
メディアガイダンスを提供するための別の表示配列が、
図6に示されている。ビデオモザイク表示600は、コンテンツのタイプ、ジャンル、および/または他の編成基準に基づいて編成されたコンテンツ情報のための選択可能オプション602を含む。表示600では、テレビ一覧オプション604が選択され、したがって、一覧606、608、610、および612を放送番組一覧として提供する。表示600では、一覧は、カバーアート、コンテンツからの静止画像、ビデオクリップのプレビュー、コンテンツからのライブビデオ、または一覧中のメディアガイダンスデータによって記述されているコンテンツをユーザに示す他のタイプのコンテンツを含むグラフィック画像を提供してもよい。グラフィック一覧のそれぞれはまた、一覧と関連付けられたコンテンツに関するさらなる情報を提供するようにテキストを伴ってもよい。例えば、一覧608は、メディア部分614およびテキスト部分616を含む1以上の部分を含んでもよい。メディア部分614および/またはテキスト部分616は、コンテンツをフル画面で視聴するように、またはメディア部分614に表示されるコンテンツに関連する情報を閲覧するように(例えば、ビデオが表示されているチャンネルの一覧を閲覧するように)選択可能であってもよい。
【0052】
表示600中の一覧は、異なるサイズである(すなわち、一覧606は、一覧608、610、および612より大きい)が、必要であれば、全一覧が同一のサイズであってもよい。一覧は、コンテンツプロバイダの要望に応じて、またはユーザの好みに基づいて、ユーザに関心の程度を示すために、または、あるコンテンツを強調するために、異なるサイズであるか、またはグラフィックが強調されてもよい。コンテンツ一覧をグラフィック的に強調するための種々のシステムおよび方法は、例えば、全体として参照することにより本明細書に組み込まれる、2009年11月12日に出願されたYatesの米国特許出願公開第2010/0153885号で論じられている。
【0053】
ユーザは、そのユーザ機器デバイスのうちの1つ以上のものから、コンテンツおよび双方向メディアガイダンスアプリケーション(および前述されかつ後述されている表示画面)にアクセスしてもよい。
図7は、例証的ユーザ機器デバイス700の汎用実施形態を示す。ユーザ機器デバイスのより具体的な実装は、
図8に関連して以下で議論される。ユーザ機器デバイス700は、入出力(以下「I/O」)パス702を介してコンテンツおよびデータを受信してもよい。I/Oパス702は、処理回路706および記憶装置708を含む制御回路704に、コンテンツ(例えば、放送番組、オンデマンド番組、インターネットコンテンツ、ローカルエリアネットワーク(LAN)または広域ネットワーク(WAN)を経由して利用可能なコンテンツ、および/または他のコンテンツ)およびデータを提供してもよい。制御回路704は、I/Oパス702を使用して、コマンド、要求、および他の好適なデータを送受信するために使用されてもよい。I/Oパス702は、制御回路704(具体的には、処理回路706)を1つ以上の通信パス(以下で説明される)に接続してもよい。I/O機能は、これらの通信パスのうちの1つ以上のものによって提供されてもよいが、図面が複雑になり過ぎることを回避するため、
図7では単一パスとして示されている。
【0054】
制御回路704は、処理回路706等の任意の好適な処理回路に基づいていてもよい。本明細書で参照されるように、処理回路とは、1つ以上のマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、プログラマブル論理デバイス、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)等に基づく回路を意味すると理解され、マルチコアプロセッサ(例えば、デュアルコア、クアドコア、ヘクサコア、または任意の好適な数のコア)またはスーパーコンピュータを含んでもよい。いくつかの実施形態では、処理回路は、複数の別個のプロセッサまたは処理ユニット、例えば、複数の同一のタイプの処理ユニット(例えば、2つのIntel Core i7プロセッサ)または複数の異なるプロセッサ(例えば、Intel Core i5プロセッサおよびIntel Core i7プロセッサ)にわたって分散されてもよい。いくつかの実施形態では、制御回路704は、メモリ(すなわち、記憶装置708)に記憶された双方向メディアガイダンスアプリケーションに対する命令を実行する。具体的には、制御回路704は、双方向メディアガイダンスアプリケーションによって、前述および後述の機能を行うように命令されてもよい。例えば、双方向メディアガイダンスアプリケーションは、制御回路704に、メディアガイダンス表示を生成するための命令を提供してもよい。いくつかの実装では、制御回路704によって行われるいかなるアクションも双方向メディアガイダンスアプリケーションから受信した命令に基づいていてもよい。
【0055】
クライアントサーバに基づく実施形態では、制御回路704は、ガイダンスアプリケーションサーバもしくは他のネットワークまたはサーバと通信するための好適な通信回路を含んでもよい。前述の機能を実行するための命令は、ガイダンスアプリケーションサーバ上に記憶されてもよい。通信回路は、ケーブルモデム、総合デジタル通信網(ISDN)モデム、デジタルサブスクライバ回線(DSL)モデム、電話モデム、イーサネット(登録商標)カード、または他の機器との通信用無線モデム、または任意の他の好適な通信回路を含んでもよい。そのような通信は、インターネットもしくは任意の他の好適な通信ネットワークまたはパスを含んでもよい(それは、
図8に関連してさらに詳細に記載されている)。加えて、通信回路は、ユーザ機器デバイスのピアツーピア通信、または相互に離れた場所にあるユーザ機器デバイス間での通信を可能にする回路を含んでもよい(以下でさらに詳細に記載されている)。
【0056】
メモリは、制御回路704の一部である記憶装置708として提供される電子記憶デバイスであってもよい。本明細書で参照されるように、語句「電子記憶デバイス」または「記憶デバイス」とは、ランダム-アクセスメモリ、読取専用メモリ、ハードドライブ、光学ドライブ、デジタルビデオディスク(DVD)レコーダ、コンパクトディスク(CD)レコーダ、BLU-RAY(登録商標)ディスク(BD)レコーダ、BLU-RAY(登録商標) 3Dディスクレコーダ、デジタルビデオレコーダ(DVR、時として、パーソナルビデオレコーダと呼ばれる場合もある、またはPVR)、固体デバイス、量子記憶デバイス、ゲームコンソール、ゲームメディア、もしくは任意の他の好適な固定またはリムーバブル記憶デバイス、および/または任意のそれらの組み合わせ等の、電子データ、コンピュータソフトウェア、またはファームウェアを記憶するための任意のデバイスを意味すると理解されたい。記憶装置708は、本明細書に説明される種々のタイプのコンテンツ、ならびに前述のメディアガイダンスデータを記憶するために使用されてもよい。不揮発性メモリも、(例えば、ブートアップルーチンや他の命令を起動するために)使用されてもよい。
図8に関連して説明されるクラウドベースの記憶装置が、記憶装置708を補完するために、または記憶装置708の代わりに使用されてもよい。
【0057】
制御回路704は、ビデオ生成回路および同調回路、例えば、1つ以上のアナログチューナ、1つ以上のMPEG-2デコーダ、または他のデジタルデコード回路、高解像度チューナ、または任意の他の好適な同調もしくはビデオ回路、もしくはそのような回路の組み合わせ等を含んでもよい。エンコード回路(例えば、無線、アナログ、またはデジタル信号を記憶のためにMPEG信号に変換するためのもの)も設けられていてもよい。制御回路704はまた、コンテンツをユーザ機器700の好ましい出力形式に上方変換および下方変換するためのスケーリング回路を含んでもよい。回路704はまた、デジタルおよびアナログ信号間で変換するためのデジタルからアナログへの変換回路ならびにアナログからデジタルへの変換回路を含んでもよい。同調およびエンコード回路は、コンテンツを受信して表示する、再生する、または録画するために、ユーザ機器デバイスによって使用されてもよい。同調およびエンコード回路はまた、ガイダンスデータを受信するために使用されてもよい。例えば、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、およびアナログ/デジタル回路を含む、本明細書に説明される回路は、1つ以上の汎用または特殊プロセッサ上で動作するソフトウェアを使用して実装されてもよい。複数のチューナが同時同調機能(例えば、視聴および録画機能、ピクチャインピクチャ(PIP)機能、多重チューナ録画機能等)に対処するように提供されてもよい。記憶装置708が、ユーザ機器700とは別のデバイスとして提供される場合、同調およびエンコード回路(複数のチューナを含む)は、記憶装置708と関連付けられてもよい。
【0058】
ユーザは、ユーザ入力インターフェース710を使用して、命令を制御回路704に送信してもよい。ユーザ入力インターフェース710は、任意の好適なユーザインターフェース、例えば、リモートコントロール、マウス、トラックボール、キーパッド、キーボード、タッチ画面、タッチパッド、スタイラス入力、ジョイスティック、音声認識インターフェース、または他のユーザ入力インターフェース等であってもよい。ディスプレイ712は、独立型デバイスとして提供されるか、またはユーザ機器デバイス700の他の要素と統合してもよい。例えば、ディスプレイ712は、タッチスクリーンまたはタッチセンサディスプレイであってもよい。そのような状況では、ユーザ入力インターフェース710は、ディスプレイ712と統合されても、または組み合わせられてもよい。ディスプレイ712は、モニタ、テレビ、モバイルデバイスのための液晶ディスプレイ(LCD)、非晶質シリコンディスプレイ、低温ポリシリコンディスプレイ、電子インクディスプレイ、電気泳動ディスプレイ、アクティブマトリクスディスプレイ、エレクトロウェッティングディスプレイ、電気流体ディスプレイ、ブラウン管ディスプレイ、発光ダイオードディスプレイ、エレクトロルミネセントディスプレイ、プラズマ表示パネル、高性能アドレッシングディスプレイ、薄膜トランジスタディスプレイ、有機発光ダイオードディスプレイ、表面伝導型電子放出素子ディスプレイ(SED)、レーザテレビ、カーボンナノチューブ、量子ドットディスプレイ、干渉変調器ディスプレイ、または視覚的画像を表示するための任意の他の好適な機器のうちの1つ以上のものであってもよい。いくつかの実施形態では、ディスプレイ712は、HDTV対応型であってもよい。いくつかの実施形態では、ディスプレイ712は、3D表示であってもよく、双方向メディアガイダンスアプリケーションおよび任意の好適なコンテンツは、3Dで表示されてもよい。ビデオカードまたはグラフィックカードは、ディスプレイ712への出力を生成してもよい。ビデオカードは、3Dシーンおよび2Dグラフィックのレンダリング加速、MPEG-2/MPEG-4デコード、TV出力、または複数のモニタを接続する能力等の種々の機能をもたらしてもよい。ビデオカードは、制御回路704に関連する前述のいずれの処理回路であってもよい。ビデオカードは、制御回路704と統合されてもよい。スピーカ714は、ユーザ機器デバイス700の他の要素との統合として提供されてもよく、または独立型ユニットであってもよい。ディスプレイ712上に表示されるビデオおよび他のコンテンツのオーディオコンポーネントは、スピーカ714を通して再生されてもよい。いくつかの実施形態では、音声は、音声を処理してスピーカ714を介して出力する受信機(図示せず)に配信されてもよい。
【0059】
ガイダンスアプリケーションは、どのような好適なアーキテクチャを使用して実装されてもよい。例えば、それは、ユーザ機器デバイス700上で完全に実装される独立型アプリケーションであってもよい。そのようなアプローチでは、アプリケーションの命令は、ローカルに記憶され(例えば、記憶装置708内に記憶され)、アプリケーションによって使用するためのデータは、周期的に(例えば、帯域外フィードから、インターネットリソースから、または別の好適なアプローチを使用して)ダウンロードされる。制御回路704は、記憶装置708からアプリケーションの命令を読み出し、本明細書で議論される表示のいずれかを生成するための命令を処理してもよい。処理された命令に基づいて、制御回路704は、入力が入力インターフェース710から受信されるときにどんなアクションを行うべきかを判定してもよい。例えば、入力インターフェース710が上/下ボタンが選択されたことを示すときに、表示上のカーソルの上/下への移動が処理された命令によって示されてもよい。
【0060】
いくつかの実施形態では、双方向メディアガイダンスアプリケーションは、クライアントサーバベースのアプリケーションである。ユーザ機器デバイス700上に実装されたシッククライアントまたはシンクライアントによって使用するためのデータは、ユーザ機器デバイス700の遠隔にあるサーバに要求を発行することによってオンデマンドで読み出される。クライアントサーバベースのガイダンスアプリケーションの一実施例では、制御回路704は、遠隔サーバによって提供されるウェブページを解釈するウェブブラウザを動作させる。例えば、遠隔サーバは、記憶デバイス内にアプリケーションのための命令を記憶してもよい。遠隔サーバは、回路(例えば、制御回路704)を使用して、記憶された命令を処理し、前述および後述の表示を生成してもよい。クライアントデバイスは、遠隔サーバによって生成される表示を受信し、表示の内容を機器デバイス700上でローカルに表示してもよい。このように、命令の処理は、サーバによって遠隔で行われ、その一方、結果として生じる表示は、機器デバイス700上にローカルに提供される。機器デバイス700は、入力インターフェース710を介してユーザからの入力を受信し、対応する表示を処理して生成するために、それらの入力を遠隔サーバに伝送してもよい。例えば、機器デバイス700は、上/下ボタンが入力インターフェース710を介して選択されたことを示す通信を遠隔サーバに伝送してもよい。遠隔サーバは、その入力に従って命令を処理し、入力に対応するアプリケーションの表示(例えば、カーソルを上/下に移動させる表示)を生成してもよい。生成された表示は、次いで、ユーザへの提示のために機器デバイス700に伝送される。
【0061】
いくつかの実施形態では、双方向メディアガイダンスアプリケーションは、ダウンロードされ、インタープリタによって解釈されるか、あるいは(制御回路704によって動作させられる)仮想マシンによって別の方法で動作させられる。いくつかの実施形態では、ガイダンスアプリケーションは、ETVバイナリ交換形式(EBIF)でエンコードされており、好適なフィードの一部として制御回路704によって受信されて、制御回路704上で動作するユーザエージェントによって解釈されてもよい。例えば、ガイダンスアプリケーションは、EBIFアプリケーションであってもよい。いくつかの実施形態では、ガイダンスアプリケーションは、制御回路704によって実行されるローカル仮想マシンまたは他の好適なミドルウェアによって受信されて動作させられる一連のJAVA(登録商標)ベースのファイルによって定義されてもよい。そのような実施形態のうちのいくつか(例えば、MPEG-2または他のデジタルメディアエンコードスキームを採用するもの)では、ガイダンスアプリケーションは、例えば、番組のMPEGオーディオおよびビデオパケットを用いたMPEG-2オブジェクトカルーセルでエンコードされて伝送されてもよい。
【0062】
図7のユーザ機器デバイス700は、ユーザテレビ機器802、ユーザコンピュータ機器804、無線ユーザ通信デバイス806、または非携帯型ゲーム機等のコンテンツにアクセスするために好適な任意の他のタイプのユーザ機器として、
図8のシステム800に実装することができる。簡単にするために、これらのデバイスは、本明細書では総称して、ユーザ機器またはユーザ機器デバイスと称されてもよく、前述のユーザ機器デバイスに実質的に類似してもよい。双方向メディアガイダンスアプリケーションが実装され得るユーザ機器デバイスは、独立型デバイスとして機能してもよく、またはデバイスのネットワークの一部であってもよい。デバイスの種々のネットワーク構成が実装されてもよく、以下でさらに詳細に議論されている。
【0063】
図7に関連して上述されたシステム特徴のうちの少なくともいくつかを利用するユーザ機器デバイスは、もっぱら、ユーザテレビ機器802、ユーザコンピュータ機器804、または無線ユーザ通信デバイス806として分類されている必要はない。例えば、ユーザテレビ機器802は、ユーザコンピュータ機器804のように、インターネットコンテンツへアクセスすることを可能にするインターネット対応型であってもよく、その一方で、ユーザコンピュータ機器804は、テレビ機器802のように、テレビ番組へアクセスすることを可能にするチューナを含んでもよい。双方向メディアガイダンスアプリケーションはまた、種々の異なるタイプのユーザ機器上で同一レイアウトを有してもよく、またはユーザ機器の表示能力に合わせられてもよい。例えば、ユーザコンピュータ機器804上では、ガイダンスアプリケーションは、ウェブブラウザによってアクセスされるウェブサイトとして提供されてもよい。別の実施例では、ガイダンスアプリケーションは、無線ユーザ通信デバイス806用に縮小されてもよい。
【0064】
システム800では、典型的には、各タイプのユーザ機器デバイスが2つ以上存在するが、図面が複雑になり過ぎることを回避するように、それぞれ1つだけが
図8に示されている。加えて、各ユーザは、2つ以上のタイプのユーザ機器デバイスを利用し、しかも、各タイプの2つ以上のユーザ機器デバイスを利用してもよい。
【0065】
いくつかの実施形態では、ユーザ機器デバイス(例えば、ユーザテレビ機器802、ユーザコンピュータ機器804、無線ユーザ通信デバイス806)は、「第2の画面デバイス」と称されてもよい。例えば、第2の画面デバイスは、第1のユーザ機器デバイス上に提示されるコンテンツを補完してもよい。第2の画面デバイス上に提示されるコンテンツは、第1のデバイス上に提示されるコンテンツを補完する任意の好適なコンテンツであってもよい。いくつかの実施形態では、第2の画面デバイスは、第1のデバイスの設定および表示の好みを調節するためのインターフェースを提供する。いくつかの実施形態では、第2の画面デバイスは、他の第2の画面デバイスと情報のやりとりをする、またはソーシャルネットワークと情報のやりとりをするために構成される。第2の画面デバイスは、第1のデバイスと同一の部屋内に、第1のデバイスと異なる部屋であるが同一の家または建物内に、もしくは第1のデバイスと異なる建物内に設置され得る。
【0066】
ユーザはまた、家庭内デバイスおよび遠隔デバイスにわたって一貫した双方向メディアガイダンスアプリケーション設定を維持するように、種々の設定を行ってもよい。設定は、本明細書に記載されている設定、ならびにお気に入りのチャンネルおよび番組、番組を推奨するためにガイダンスアプリケーションが利用する番組の好み、表示の好み、および他の望ましいガイダンス設定を含む。例えば、ユーザが、オフィスのパソコンで、例えば、ウェブサイトwww.allrovi.comの上で、チャンネルをお気に入りとして設定した場合、必要であれば、同一のチャンネルが、ユーザの家庭内デバイス(例えば、ユーザテレビ機器およびユーザコンピュータ機器)、ならびにユーザのモバイルデバイス上でお気に入りとして表示される。したがって、同一または異なるタイプのユーザ機器デバイスであるかどうかにかかわらず、1つのユーザ機器デバイス上で行われる変更は、別のユーザ機器デバイス上のガイダンス体験を変更することができる。加えて、行われる変更は、ユーザによる設定入力、ならびにガイダンスアプリケーションによって監視されるユーザ動作に基づいてもよい。
【0067】
ユーザ機器デバイスは、通信ネットワーク814に連結されてもよい。すなわち、ユーザテレビ機器802、ユーザコンピュータ機器804、および無線ユーザ通信デバイス806は、それぞれ、通信パス808、810、および812を介して、通信ネットワーク814に連結される。通信ネットワーク814は1つ以上のネットワークであってもよく、1つ以上のネットワークは、インターネット、携帯電話ネットワーク、モバイルボイスまたはデータネットワーク(例えば、4GまたはLTEネットワーク)、ケーブルネットワーク、公衆交換電話ネットワーク、または他のタイプの通信ネットワーク、もしくは通信ネットワークの組み合わせを含む。パス808、810、および812は、それぞれ別々にまたはそれらの全体で、1つ以上の通信パス、例えば、衛星パス、光ファイバパス、ケーブルパス、インターネット通信をサポートするパス(例えば、IPTV)、フリースペース接続(例えば、放送または他の無線信号用)、もしくは任意の他の好適な有線または無線通信パス、もしくはそのようなパスの組み合わせ等を含んでもよい。パス812は、
図8に示された例示的実施形態において、無線パスであることを示すように破線で描かれ、パス808および810は、有線パスであることを示すように実線で描かれている(しかし、これらのパスは、必要に応じて、無線パスであってもよい)。ユーザ機器デバイスとの通信は、1つ以上のこれらの通信パスによって提供されてもよいが、
図8では、図面が複雑になり過ぎることを回避するように、単一パスとして示されている。
【0068】
通信パスは、ユーザ機器デバイスの間には描かれていないが、これらのデバイスは、相互に通信パスを介して直接通信してもよく、通信パスは、例えば、パス808、810、および812に関連して上記で説明されるもの、ならびに他の短距離ポイントツーポイント通信パス、例えば、USBケーブル、IEEE1394ケーブル、無線パス(例えば、ブルートゥース(登録商標)、赤外線、IEEE802-11x等)等、もしくは有線または無線パスを介した他の短距離通信である。BLUETOOTH(登録商標)は、ブルートゥース(登録商標) エス アイ ジー,インク.によって所有される認証マークである。ユーザ機器デバイスはまた、通信ネットワーク814を介した間接的パスを通して直接相互に通信してもよい。
【0069】
システム800は、それぞれ、通信パス820および822を介して通信ネットワーク814に連結されるコンテンツソース816およびメディアガイダンスデータソース818を含む。パス820および822は、パス808、810、ならびに812に関して上述された通信パスのうちのいずれを含んでもよい。コンテンツソース816およびメディアガイダンスデータソース818との通信は、1つ以上の通信パスを介して交信されてもよいが、
図8では、図面が複雑になり過ぎることを回避するために、単一パスとして示されている。加えて、コンテンツソース816およびメディアガイダンスデータソース818のそれぞれが1つ以上あってもよいが、
図8では、図面が複雑になり過ぎることを回避するように、それぞれ1つだけが示されている。(これらのソースのそれぞれの異なるタイプを以下で議論する)。必要に応じて、コンテンツソース816およびメディアガイダンスデータソース818は、1つのソースデバイスとして統合されてもよい。ソース816および818と、ユーザ機器デバイス802、804、ならびに806との間の通信は、通信ネットワーク814を通したものとして示されているが、いくつかの実施形態では、ソース816および818は、通信パス(図示せず)、例えば、パス808、810、ならびに812に関連して上述されたもの等を介して、ユーザ機器デバイス802、804、および806と直接通信してもよい。
【0070】
コンテンツソース816は、1つ以上のタイプのコンテンツ配信機器を含んでいてもよく、1つ以上のタイプのコンテンツ配信機器は、テレビ配信施設、ケーブルシステムヘッドエンド、衛星配信施設、番組ソース(例えば、NBC、ABC、HBO等のテレビ放送会社)、中間配信施設および/またはサーバ、インターネットプロバイダ、オンデマンドメディアサーバ、および他のコンテンツプロバイダを含む。NBCは、ナショナル ブロードキャスティング カンパニー,インク.によって所有される商標であり、ABCは、アメリカン ブロードキャスティング カンパニー,インク.によって所有される商標であり、HBOは、ホーム ボックス オフィス,インク.によって所有される商標である。コンテンツソース816は、コンテンツの発信元であってもよく、例えば、テレビ放送会社、ウェブキャストプロバイダ等であり、またはコンテンツの発信元でなくてもよく、例えば、オンデマンドコンテンツプロバイダ、ダウンロード用放送番組のコンテンツのインターネットプロバイダ等である。コンテンツソース816は、ケーブルソース、衛星プロバイダ、オンデマンドプロバイダ、インターネットプロバイダ、オーバーザトップコンテンツプロバイダ、またはコンテンツの他のプロバイダを含んでもよい。コンテンツソース816はまた、ユーザ機器デバイスのうちのいずれからも遠隔の場所にある、異なるタイプのコンテンツ(ユーザによって選択されるビデオコンテンツを含む)を記憶するために使用される遠隔メディアサーバを含んでもよい。コンテンツの遠隔記憶のためのシステムおよび方法であって、遠隔に記憶されたコンテンツをユーザ機器に提供するためのシステムおよび方法は、全体として参照することにより本明細書に組み込まれる、2010年7月20日出願のEllisらの米国特許出願第7,761,892号に関連して、さらに詳細に論じられている。
【0071】
メディアガイダンスデータソース818は、前述のメディアガイダンスデータ等のメディアガイダンスデータを提供してもよい。メディアガイダンスデータは、任意の好適なアプローチを使用して、ユーザ機器デバイスに提供されてもよい。いくつかの実施形態では、ガイダンスアプリケーションは、データフィード(例えば、継続フィードまたはトリクルフィード)により番組ガイドデータを受信する独立型双方向テレビ番組ガイドであってもよい。番組スケジューリングデータおよび他のガイダンスデータは、テレビチャンネルのサイドバンド上で、帯域内デジタル信号を使用して、帯域外デジタル信号を使用して、または任意の他の好適なデータ伝送技術によって、ユーザ機器に提供されてもよい。番組スケジューリングデータおよび他のメディアガイダンスデータは、複数のアナログまたはデジタルテレビチャンネルでユーザ機器に提供されてもよい。
【0072】
いくつかの実施形態では、メディアガイダンスデータソース818からのガイダンスデータは、クライアントサーバアプローチを使用してユーザの機器に提供されてもよい。例えば、ユーザ機器デバイスは、メディアガイダンスデータをサーバからプルしてもよく、またはサーバは、メディアガイダンスデータをユーザ機器デバイスにプッシュしてもよい。いくつかの実施形態では、ユーザの機器上に常駐するガイダンスアプリケーションクライアントは、必要に応じて、例えば、ガイダンスデータが、古くなっているとき、またはユーザ機器デバイスがデータを受信する要求をユーザから受信したとき、ソース818とセッションを開始し、ガイダンスデータを取得してもよい。メディアガイダンスは、任意の好適な頻度で(例えば、継続的に、毎日、ユーザ指定期間に、システム指定期間に、ユーザ機器からの要求に応答して)ユーザ機器に提供されてもよい。メディアガイダンスデータソース818は、ユーザ機器デバイス802、804、および806に、双方向メディアガイダンスアプリケーション自体を、または双方向メディアガイダンスアプリケーションのソフトウェア更新情報を提供してもよい。
【0073】
いくつかの実施形態では、メディアガイダンスデータは、視聴者データを含んでもよい。例えば、視聴者データは、現在および/または履歴ユーザアクティビティ情報(例えば、ユーザが典型的に見るコンテンツ、ユーザがコンテンツを見る時刻、ユーザがソーシャルネットワークと情報のやりとりをするかどうか、ユーザがソーシャルネットワークと情報のやりとりをし、情報をポストする時間、ユーザが典型的に見るコンテンツのタイプ(例えば、有料TVまたは無料TV)、気分、脳の活動情報等)を含んでもよい。メディアガイダンスデータはまた、サブスクライブデータを含んでもよい。例えば、サブスクライブデータは、所与のユーザがサブスクライブする(利用する)ソースまたはサービスおよび/または所与のユーザが以前にサブスクライブしていたが、後にアクセスを打ち切ったソースまたはサービスを識別してもよい(例えば、ユーザがプレミアムチャンネルにサブスクライブしているかどうか、ユーザがプレミアムレベルのサービスを追加したかどうか、ユーザがインターネット速度を加速させたかどうか)。いくつかの実施形態では、視聴者のデータおよび/またはサブスクライブデータは、1年を上回る周期の間の所与のユーザのパターンを識別してもよい。メディアガイダンスデータは、所与のユーザがサービス/ソースへのアクセスを打ち切る可能性を示すスコアを生成するために使用されるモデル(例えば、残存者モデル)を含んでもよい。例えば、双方向メディアガイダンスアプリケーションは、所与のユーザが特定のサービスまたはソースへのアクセスを打ち切るかどうかの可能性を示す値またはスコアを生成するためのモデルを用いて視聴者データをサブスクライブデータとともに処理してもよい。特に、より高いスコアは、ユーザが特定のサービスまたはソースへのアクセスを打ち切るより高いレベルの信頼性を示し得る。スコアに基づいて、双方向メディアガイダンスアプリケーションは、ユーザがアクセスを打ち切る可能性が高いものとしてスコアによって示される特定のサービスまたはソースをユーザが維持するように勧誘する宣伝を生成してもよい。
【0074】
双方向メディアガイダンスアプリケーションは、例えば、ユーザ機器デバイス上に実装される独立型アプリケーションであってもよい。例えば、双方向メディアガイダンスアプリケーションは、記憶装置708内に記憶されてユーザ機器デバイス700の制御回路704によって実行され得るソフトウェアまたは実行可能命令のセットとして実装されてもよい。いくつかの実施形態では、双方向メディアガイダンスアプリケーションは、クライアント-サーバアプリケーションであってもよく、その場合、クライアントアプリケーションのみユーザ機器デバイス上に常駐し、サーバアプリケーションは遠隔サーバ上に常駐する。例えば、双方向メディアガイダンスアプリケーションは、部分的にユーザ機器デバイス700の制御回路704上にクライアントアプリケーションとして実装され、部分的に遠隔サーバ上に、遠隔サーバの制御回路(例えば、メディアガイダンスデータソース818)上で動作するサーバアプリケーションとして実装されてもよい。遠隔サーバの制御回路(メディアガイダンスデータソース818等)によって実行されると、双方向メディアガイダンスアプリケーションは、双方向ガイダンスアプリケーション表示を生成し、生成された表示をユーザ機器デバイスに伝送するように制御回路に命令してもよい。サーバアプリケーションは、メディアガイダンスデータソース818の制御回路に、ユーザ機器上での記憶のためのデータを伝送するように命令してもよい。クライアントアプリケーションは、受信用ユーザ機器の制御回路に、ガイダンスアプリケーション表示を生成するように命令してもよい。
【0075】
ユーザ機器デバイス802、804、および806に配信されるコンテンツならびに/またはメディアガイダンスデータは、オーバーザトップ(OTT)コンテンツであってもよい。OTTコンテンツ配信は、前述の任意のユーザ機器デバイスを含むインターネット対応型ユーザデバイスが、ケーブルまたは衛星接続を経由して受信されるコンテンツに加え、前述の任意のコンテンツを含む、インターネットを経由して転送されるコンテンツを受信することを可能にする。OTTコンテンツは、インターネットサービスプロバイダ(ISP)によって提供されるインターネット接続を介して配信されるが、第三者が、コンテンツを配信する。ISPは、視聴能力、著作権、またはコンテンツの再配信に関与していなくてもよく、OTTコンテンツプロバイダによって提供されるIPパケットのみ転送してもよい。OTTコンテンツプロバイダの実施例として、IPパケットを介して、オーディオおよびビデオを提供する、YOUTUBE(登録商標)、NETFLIX、およびHULUが挙げられる。Youtubeは、グーグル インク.によって所有される商標であり、Netflixは、ネットフリックス インク.によって所有される商標であり、Huluは、フールー,LLC.によって所有される商標である。OTTコンテンツプロバイダは、加えて、または代わりに、前述のメディアガイダンスデータを提供してもよい。コンテンツおよび/またはメディアガイダンスデータに加え、OTTコンテンツのプロバイダは、双方向メディアガイダンスアプリケーション(例えば、ウェブベースのアプリケーションまたはクラウドベースのアプリケーション)を配信することができ、またはコンテンツは、ユーザ機器デバイス上に記憶される双方向メディアガイダンスアプリケーションによって表示されることができる。
【0076】
メディアガイダンスシステム800は、いくつかのアプローチまたはネットワーク構成を例証することを意図しており、これによって、ユーザ機器デバイスならびにコンテンツおよびガイダンスデータのソースは、コンテンツにアクセスしてメディアガイダンスを提供する目的で、相互に通信してもよい。本明細書に説明される実施形態は、これらのアプローチの任意の1つまたは一部において、もしくはコンテンツを配信してメディアガイダンスを提供するための他のアプローチを採用するシステムにおいて、適用されてもよい。以下の4つのアプローチは、
図8の汎用実施例の具体的例証を提供する。
【0077】
あるアプローチでは、ユーザ機器デバイスは、ホームネットワーク内で相互に通信してもよい。ユーザ機器デバイスは、上述された短距離ポイントツーポイント通信方式を介して、ホームネットワーク上に提供されるハブまたは他の類似デバイスを通した間接パスを介して、もしくは通信ネットワーク814を介して、直接相互に通信することができる。1つの家庭内の複数の個人のそれぞれが、ホームネットワーク上の異なるユーザ機器デバイスを操作してもよい。結果として、種々のメディアガイダンス情報または設定が、異なるユーザ機器デバイス間で伝達されることが望ましくあり得る。例えば、2005年7月11日出願のEllisらの米国特許公開第2005/0251827号でさらに詳細に説明されているように、ホームネットワーク内の異なるユーザ機器デバイス上で、ユーザが一貫した双方向メディアガイダンスアプリケーション設定を維持することが望ましくてもよい。ホームネットワーク内の異なるタイプのユーザ機器デバイスも、相互に通信し、コンテンツを伝送してもよい。例えば、ユーザは、ユーザコンピュータ機器から携帯用ビデオプレーヤまたは携帯用音楽プレーヤにコンテンツを伝送してもよい。
【0078】
第2のアプローチでは、ユーザは、ユーザがコンテンツにアクセスしてメディアガイダンスを取得するための複数のタイプのユーザ機器を有してもよい。例えば、一部のユーザは、家庭内およびモバイルデバイスによってアクセスされるホームネットワークを有してもよい。ユーザは、遠隔デバイス上に実装される双方向メディアガイダンスアプリケーションを介して家庭内デバイスを制御してもよい。例えば、ユーザは、オフィスのパーソナルコンピュータ、もしくはPDAまたはウェブ対応携帯電話等のモバイルデバイスを介して、ウェブサイト上のオンライン双方向メディアガイダンスアプリケーションにアクセスしてもよい。ユーザは、オンラインガイダンスアプリケーション上で種々の設定(例えば、録画、リマインダ、または他の設定)を設定して、ユーザの家庭内機器を制御してもよい。オンラインガイドは、直接、またはユーザの家庭内機器上の双方向メディアガイダンスアプリケーションと通信することによって、ユーザの機器を制御してもよい。ユーザ機器デバイスが互いに離れた場所にある場合のユーザ機器デバイスの通信のための種々のシステムおよび方法は、例えば、その全体を参照することにより本明細書に組み込まれる、Ellisらの2011年10月25日発行の米国特許第8,046,801号で議論されている。
【0079】
第3のアプローチでは、家庭内外のユーザ機器デバイスのユーザは、コンテンツソース816と直接通信し、コンテンツにアクセスするために、その双方向メディアガイダンスアプリケーションを使用することができる。具体的には、家庭内では、ユーザテレビ機器802およびユーザコンピュータ機器804のユーザは、双方向メディアガイダンスアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。ユーザはまた、無線ユーザ通信デバイス806を使用して、家庭外の双方向メディアガイダンスアプリケーションにアクセスし、所望のコンテンツ間をナビゲートし、それを特定してもよい。
【0080】
第4のアプローチでは、ユーザ機器デバイスは、クラウドコンピューティング環境内で動作し、クラウドサービスにアクセスしてもよい。クラウドコンピューティング環境では、コンテンツの共有、記憶、または配信のための種々のタイプのコンピューティングサービス(例えば、ビデオ共有サイトまたはソーシャルネットワーキングサイト)が、「クラウド」と称される、ネットワーク-アクセス可能コンピューティングおよび記憶リソースの集合によって提供される。例えば、クラウドは、サーバコンピューティングデバイスの集合を含むことができ、サーバコンピューティングデバイスは、中央または分散された場所に位置することができ、クラウドベースのサービスを種々のタイプのユーザ、および通信ネットワーク814を介したインターネットなどのネットワークを介して接続されるデバイスに提供する。これらのクラウドリソースは、1つ以上のコンテンツソース816および1つ以上のメディアガイダンスデータソース818を含んでもよい。加えて、またはその代わりに、遠隔コンピューティングサイトは、ユーザテレビ機器802、ユーザコンピュータ機器804、および無線ユーザ通信デバイス806等の他のユーザ機器デバイスを含んでもよい。例えば、他のユーザ機器デバイスは、ビデオの記憶されたコピーまたはストリーミングされたビデオへのアクセスを提供してもよい。そのような実施形態では、ユーザ機器デバイスは、中心サーバと通信せずに、ピアツーピア方式で動作してもよい。
【0081】
クラウドは、ユーザ機器デバイスのために、とりわけ、コンテンツ記憶サービス、コンテンツ共有サービス、またはソーシャルネットワーキングサービス等のサービスへのアクセス、ならびに前述の任意のコンテンツへのアクセスを提供する。サービスは、クラウドコンピューティングサービスプロバイダを通して、またはオンラインサービスの他のプロバイダを通して、クラウド内で提供されることができる。例えば、クラウドベースのサービスは、コンテンツ記憶サービス、コンテンツ共有サイト、ソーシャルネットワーキングサイト、または他のサービスを含むことができ、これにより、ユーザ供給コンテンツは、接続されたデバイスでの他者による視聴のために配信される。これらのクラウドベースのサービスは、ユーザ機器デバイスがコンテンツをローカルに記憶し、ローカルに記憶されたコンテンツにアクセスするのではなく、コンテンツをクラウドに記憶し、コンテンツをクラウドから受信することを可能にしてもよい。
【0082】
ユーザは、カムコーダ、ビデオモード付きデジタルカメラ、オーディオレコーダ、携帯電話、およびハンドヘルドコンピューティングデバイス等の種々のコンテンツ捕捉デバイスを使用してコンテンツを録画してもよい。ユーザは、例えば、コンテンツ捕捉特徴を有するユーザコンピュータ機器804または無線ユーザ通信デバイス806のいずれかから直接、クラウド上のコンテンツ記憶サービスにコンテンツをアップロードすることができる。その代わりに、ユーザは、最初に、コンテンツをユーザコンピュータ機器804等のユーザ機器デバイスに転送することができる。コンテンツを記憶しているユーザ機器デバイスは、通信ネットワーク814でデータ伝送サービスを使用してコンテンツをクラウドにアップロードする。いくつかの実施形態では、ユーザ機器デバイス自体がクラウドリソースであり、他のユーザ機器デバイスが、ユーザがコンテンツを記憶したユーザ機器デバイスから直接コンテンツにアクセスすることができる。
【0083】
クラウドリソースは、例えば、ウェブブラウザ、双方向メディアガイダンスアプリケーション、デスクトップアプリケーション、モバイルアプリケーション、および/またはそれらのアクセスアプリケーションの任意の組み合わせを使用して、ユーザ機器デバイスによってアクセスされてもよい。ユーザ機器デバイスは、アプリケーション配信のためにクラウドコンピューティングに依拠するクラウドクライアントであってもよく、またはユーザ機器デバイスは、クラウドリソースにアクセスを伴わないいくつかの機能を有してもよい。例えば、ユーザ機器デバイス上で動作するいくつかのアプリケーションは、クラウドアプリケーション、すなわち、インターネットを経由してサービスとして配信されるアプリケーションであってもよく、その一方で、他のアプリケーションは、ユーザ機器デバイス上に記憶されてユーザ機器デバイスで動作してもよい。いくつかの実施形態では、ユーザデバイスは、コンテンツを複数のクラウドリソースから同時に受信してもよい。例えば、ユーザデバイスは、オーディオを1つのクラウドリソースからストリーミングし、その一方で、コンテンツを第2のクラウドリソースからダウンロードすることができる。または、ユーザデバイスは、より効率的ダウンロードのために、コンテンツを複数のクラウドリソースからダウンロードすることができる。いくつかの実施形態では、ユーザ機器デバイスは、
図7に関連して説明された処理回路によって行われる処理動作等の処理動作のために、クラウドリソースを使用することができる。
【0084】
本明細書で参照されるように、用語「~に応答して」は、「~の結果として開始される」ことを指す。例えば、第2のアクションに応答して行われている第1のアクションは、第1のアクションと第2のアクションとの間に介在ステップを含んでもよい。本明細書で参照されるように、用語「~に直接応答して」は、「~によって引き起こされる」ことを指す。例えば、第2のアクションに直接応答して行われている第1のアクションは、第1のアクションと第2のアクションとの間に介在ステップを含まなくてもよい。
【0085】
図9は、本開示のいくつかの実施形態による、制御回路(例えば、制御回路704)が双方向メディアガイダンスアプリケーションに提示される自然言語クエリのための実行パスを判定するための例証的プロセス900のフローチャートである。いくつかの実施形態では、本アルゴリズムは、非一時的記憶媒体(例えば、記憶デバイス708)上に、処理回路(例えば、処理回路706)によってデコードされて実行されるべき命令のセットとしてエンコードされてもよい。処理回路は、制御回路704内に含まれる他のサブ回路、例えば、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、アナログ/デジタル変換回路などの回路に順に命令を提供してもよい。
【0086】
ステップ902では、制御回路704は、自然言語クエリのための実行パスを選択するためのプロセスを開始する。
【0087】
ステップ904では、制御回路704は、入力エンティティおよび未知の用語を含むクエリをユーザから受信する。例えば、制御回路704は、入力エンティティ「モーガン フリーマン」および「アカデミー賞」と未知の用語「受賞」とを含むクエリ「モーガン フリーマンがアカデミー賞を受賞した映画は?」を受信してもよい。
【0088】
ステップ906では、制御回路704は、クエリに対する第1の可能性のある応答および第2の可能性のある応答を知識グラフから読み出す。第1の可能性のある応答は、クエリのための第1の実行パスにより導出され、第2の可能性のある応答は、クエリのための第2の実行パスにより導出される。例えば、制御回路704は、知識グラフから、2セットの可能性のある応答を読み出してもよく、第1のセットは、モーガン フリーマンがアカデミー賞にノミネートされた映画(例えば、「ショーシャンク レデンプション」、「インビクタス」、「ドライビング Miss デイジー」、および「ミリオン ダラー ベイビー」)に対応し、第2のセットは、モーガン フリーマンがアカデミー賞を受賞した映画(例えば、「ミリオン ダラー ベイビー」)に対応する。
【0089】
いくつかの実施形態では、第1の可能性のある応答は、入力エンティティから第1の可能性のある応答に向けて知識グラフ内で1つ以上のノードをたどることによって第1の実行パスにより導出される。例えば、第1の可能性のある応答「ショーシャンク レデンプション」は、入力エンティティから正しい応答に向けて候補者エッジをたどることによって第1の実行パスにより導出されてもよい。
【0090】
いくつかの実施形態では、第2の可能性のある応答は、入力エンティティから第2の可能性のある応答に向けて知識グラフ内で1つ以上のノードをたどることによって、第2の実行パスにより導出される。例えば、第2の可能性のある応答「ミリオン ダラー ベイビー」は、入力エンティティから正しい応答に向けて受賞者エッジをたどることによって第2の実行パスにより導出されてもよい。
【0091】
ステップ908では、制御回路704は、第1の可能性のある応答および第2の可能性のある応答のうちの少なくとも1つを含む双方向メディアガイダンス画面を表示のために生成する。例えば、制御回路704は、複数セットの可能性のある応答を含む双方向メディアガイダンス画面を表示のために生成してもよい。加えて、またはその代わりに、制御回路704は、自然言語発話「ショーシャンク レデンプションのことですか?」を用いて応答してもよい。
【0092】
ステップ910では、制御回路704は、第1の可能性のある応答および第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力をユーザから受信する。例えば、制御回路704は、ミリオン ダラー ベイビーが正しい応答であるというフィードバックを示す入力をユーザから受信してもよい。その代わりに、または加えて、制御回路704は、ショーシャンク レデンプションが正しい応答ではないというフィードバックを示す入力をユーザから受信してもよい。
【0093】
いくつかの実施形態では、フィードバックを示すユーザからの入力は、双方向メディアガイダンス画面からの第1の可能性のある応答および第2の可能性のある応答のうちの1つの選択を含む。例えば、ユーザからの入力は、第1および第2のセットの可能性のある応答を表示する双方向メディアガイダンス画面からの「ミリオン ダラー ベイビー」の選択を示してもよい。
【0094】
いくつかの実施形態では、フィードバックを示すユーザからの入力は、第1の可能性のある応答が正しいというインジケーションおよび第1の可能性のある応答が正しくないというインジケーションのうちの1つを含む。例えば、「ショーシャンク レデンプションのことですか?」に応答して、ユーザからの入力は、ショーシャンク レデンプションが正しくない応答であるというフィードバックを示してもよい。
【0095】
ステップ912では、制御回路704はフィードバックに基づいてクエリに対する正しい応答を判定する。例えば、制御回路704は、フィードバックに基づいてミリオン ダラー ベイビーがクエリに対する正しい応答であることを判定してもよい。
【0096】
いくつかの実施形態では、制御回路704は、第1の可能性のある応答および第2の可能性のある応答のうちの1つのユーザ選択を正しい応答として割り当てることによって、クエリに対する正しい応答を判定する。例えば、制御回路704は、「ミリオン ダラー ベイビー」のユーザ選択を正しい応答として割り当ててもよい。
【0097】
いくつかの実施形態では、制御回路704は、フィードバックが、第1の可能性のある応答が正しいというインジケーションを含む場合、第1の応答を正しい応答として割り当て、フィードバックが、第1の可能性のある応答が正しくないというインジケーションを含む場合、第2の応答を正しい応答として割り当てることによって、クエリに対する正しい応答を判定する。例えば、「ショーシャンク レデンプションのことですか?」に応答する場合であって、他の可能性のある応答が「ミリオン ダラー ベイビー」である場合、制御回路704は、ユーザからのフィードバックがショーシャンク レデンプションが正しくない応答であるというインジケーションを含むことを理由に、ミリオン ダラー ベイビーを正しい応答として割り当ててもよい。
【0098】
ステップ914では、制御回路704は、正しい応答に基づいてクエリのための第1の実行パスおよび第2の実行パスのうちの1つを選択する。例えば、制御回路704は、正しい応答、ミリオン ダラー ベイビーに基づいて、このクエリのための実行パスを選択してもよい。
【0099】
このように、制御回路704は、知識グラフをたどることにより正しい応答を読み出すという点から、このクエリおよび/または類似した形態のクエリを評価する方法を学習してもよい。
【0100】
いくつかの実施形態では、クエリは第1のクエリと称され、入力エンティティは第1の入力エンティティと称され、正しい応答は第1の正しい応答と称される。制御回路704は、第2の入力エンティティおよび未知の用語を含む、第1のクエリと類似した形態の第2のクエリをユーザから受信する。例えば、制御回路704は、クエリ「マシュー マコノヒー(Matthew McConaughey)がアカデミー賞を受賞した映画は?」を受信してもよい。制御回路704は、第1のクエリのための選択された実行パスに基づいて、第2のクエリに対する第2の正しい応答を知識グラフから読み出す。例えば、制御回路704は、選択された実行パスに基づいて正しい応答「ダラス バイヤーズ クラブ(Dallas Buyers Club)」を知識グラフから読み出してもよい。
【0101】
いくつかの実施形態では、選択された実行パスは、入力エンティティから正しい応答へ向けて知識グラフ内で1つ以上のノードをたどっている。例えば、選択された実行パスは、入力エンティティから正しい応答に向けて受賞者エッジをたどっている。
【0102】
いくつかの実施形態では、制御回路704は、第2の入力エンティティから第2の正しい応答に向けて知識グラフ内で1つ以上のノードをたどることによって、第1のクエリのための選択された実行パスに基づいて、第2のクエリに対する第2の正しい応答を読み出す。例えば、制御回路704は、入力エンティティから正しい応答に向けて受賞者エッジをたどることによって、選択された実行パスに基づいて正しい応答「ダラス バイヤーズ クラブ」を知識グラフから読み出してもよい。
【0103】
図9のステップまたは記載は、本開示の任意の他の実施形態とともに使用され得ることが考慮される。加えて、
図9のアルゴリズムに関して記載された説明は、本開示の目的を促進するように、代替的な順序で、または並行して行われてもよい。例えば、条件文ならびに論理評価は、システムまたは方法の遅延を低減させるために、もしくはシステムまたは方法の速度を増加させるために、任意の順序で、または並行して、もしくは同時に行われてもよい。さらなる実施例として、いくつかの実施形態では、いくつかの変数のインスタンスは、複数の論理プロセッサスレッドを使用して、並行して評価されてもよいし、またはアルゴリズムは、分岐予測を組み込むことによって拡張されてもよい。さらに、
図9のプロセスは、適切に構成されたソフトウェアおよびハードウェアの組み合わせ上に実装されてもよく、プロセスのうちの1つ以上の部分を実装するために、
図7~8に関して議論されたデバイスまたは機器のいずれかが使用され得ることに留意されたい。
【0104】
図10は、本開示のいくつかの実施形態による、制御回路(例えば、制御回路704)がユーザからのフィードバックに応じて、ユーザクエリに対する正しい応答を判定するための例証的プロセス1000のフローチャートである。いくつかの実施形態では、本アルゴリズムは、非一時的記憶媒体(例えば、記憶デバイス708)上に、処理回路(例えば、処理回路706)によってデコードされて実行されるべき命令のセットとしてエンコードされてもよい。処理回路は、制御回路704内に含有される他のサブ回路、例えば、同調、ビデオ生成、エンコード、デコード、暗号化、解読、スケーリング、アナログ/デジタル変換回路等に順に命令を提供してもよい。
【0105】
ステップ1002では、制御回路704は、ユーザのフィードバックに基づいてクエリに対する正しい応答を判定するためのプロセスを開始する。
【0106】
ステップ1004では、制御回路704は、第1の可能性のある応答のみが表示のために生成されたかどうかを判定する。本実施形態では、ユーザは、第1の可能性のある応答が正しいというインジケーションまたは第1の可能性のある応答が正しくないというインジケーションを含むフィードバックを提供する。その代わりに、第1の可能性のある応答および第2の可能性のある応答は両方ともユーザへの表示のために生成されてもよい。
【0107】
第1の可能性のある応答のみが表示のために生成された場合、ステップ1006では、制御回路704は、ユーザのフィードバックが第1の可能性のある応答を正しい応答として示すかどうかを判定する。第1の可能性のある応答が正しい応答であると示される場合、ステップ1008では、制御回路704は、第1の可能性のある応答を正しい応答として割り当てる。第1の可能性のある応答が正しくない応答であると示される場合、ステップ1010では、制御回路704は、第2の可能性のある応答を正しい応答として割り当てる。言い換えると、制御回路704は、フィードバックが、第1の可能性のある応答が正しいというインジケーションを含む場合、第1の応答を正しい応答として割り当て、フィードバックが、第1の可能性のある応答が正しくないというインジケーションを含む場合、第2の応答を正しい応答として割り当てることによって、クエリに対する正しい応答を判定する。例えば、「ショーシャンク レデンプションのことですか?」に応答する場合であって、他の可能性のある応答が「ミリオン ダラー ベイビー」である場合、制御回路704は、ユーザからのフィードバックがショーシャンク レデンプションが正しくない応答であるというインジケーションを含むことを理由に、ミリオン ダラー ベイビーを正しい応答として割り当ててもよい。
【0108】
第1の可能性のある応答および第2の可能性のある応答が表示のために生成される場合、ステップ1012では、制御回路804は、可能性のある応答のうちの1つのユーザ選択を正しい応答であるとして受信する。ステップ1014では、制御回路704は、ユーザ選択された応答を正しい応答として割り当てる。制御回路704は、第1の可能性のある応答および第2の可能性のある応答のうちの少なくとも1つに関するフィードバックを示す入力をユーザから受信する。言い換えると、フィードバックを示すユーザからの入力は、双方向メディアガイダンス画面からの第1の可能性のある応答および第2の可能性のある応答のうちの1つの選択を含む。例えば、ユーザからの入力は、第1および第2のセットの可能性のある応答を表示する双方向メディアガイダンス画面からの「ミリオン ダラー ベイビー」の選択を示してもよい。
【0109】
図10のステップまたは説明は、本開示の任意の他の実施形態とともに使用され得ることが考慮される。加えて、
図10のアルゴリズムに関して記載された記述は、本開示の目的を促進するように、代替的な順序で、または並行して行われてもよい。条件文ならびに論理評価、例えば、1004および1006におけるものは、システムまたは方法の遅延を低減させるために、もしくはシステムまたは方法の速度を増加させるために、任意の順序で、または並行して、もしくは同時に行われてもよい。さらなる実施例として、いくつかの実施形態では、いくつかの変数のインスタンスは、複数の論理プロセッサスレッドを使用して、並行して評価されてもよいし、またはアルゴリズムは、分岐予測を組み込むことによって拡張されてもよい。さらに、
図10のプロセスは、適切に構成されたソフトウェアおよびハードウェアの組み合わせ上に実装されてもよく、プロセスのうちの1つ以上の部分を実装するために、
図7~8に関して議論されているデバイスまたは機器のいずれかが使用され得ることに留意されたい。
【0110】
前述のプロセスは、例証であることが意図されており、限定することは意図されていない。当業者は、本明細書で議論されるプロセスのステップが、本発明の範囲から逸脱することなく、省略される、修正される、組み合わせられる、および/または並べ替えされてもよく、任意の付加的ステップが行われてもよいことを理解するであろう。より一般的には、前述の開示は、例示であることが意図されており、限定することは意図されていない。続く請求項のみが、本発明が含むものに関する境界を設定することが意図される。さらに、いずれか1つの実施形態で説明される特徴および制限は、本明細書の任意の他の実施形態に適用され得、一実施形態に関するフローチャートまたは実施例は、好適な様式で任意の他の実施形態と組み合わせられ、異なる順序で行われ、または並行して行われ得ることに留意されたい。加えて、本明細書で説明されるシステムおよび方法は、リアルタイムで行われてもよい。また、上記で記載されているシステムおよび/または方法は、他のシステムならびに/もしくは方法に適用され、またはそれらに従って使用され得ることにも留意されたい。