(57)【特許請求の範囲】
【請求項１】
セマンティックネットワークを利用するコンピュータネットワーク実施システムであって、前記システムは、プロセッサとメモリを有する１つ以上のネットワークされたコンピュータ装置のコンピュータネットワークを含み、
ａ）セマンティックネットワークを提供するデータ構造を格納する少なくとも１つのコンピュータ装置と、
ｂ）前記コンピュータネットワーク内に展開された、前記コンピュータネットワーク内の１つ以上のプロセッサ上で実行され、前記セマンティックネットワークとインターラクトする複数のコンピュータ実施エージェントと、
ｃ）複数のユーザのうちの少なくとも第１のユーザに、前記セマンティックネットワークから１つ又は複数の頂点(vertices)及び／又はエッジ(edges)を少なくとも追加及び／又は削除することによって前記セマンティックネットワークを少なくとも生成及び／又は修正させ、第１のユーザによって構成されたセマンティックネットワークをもたらすように構成されたユーザインタフェースとを有し、
ｄ）前記エージェントは、最初に展開されると、明示的な命令を受け取らなくても、前記セマンティックネットワークを読み取り、修正するように構成され、
前記エージェントは、
１）前記複数のコンピュータ実施エージェントのうちの第１のエージェントであって、第１のエージェントは、前記複数のユーザのうちの第２のユーザ及び／又は前記第１のユーザの少なくとも一方の振る舞いに基づく入力を受け取り、前記入力を適用して第１のユーザによって構成された前記セマンティックネットワークを修正するステップを含む動作を実行するように構成され、前記第１のエージェントによる修正は、前記第１のユーザの、前記セマンティックネットワークの生成または修正とは異なる、前記第１のエージェントと、
２）前記複数のコンピュータ実施エージェントのうちの第２のエージェントであって、第２のエージェントは、前記セマンティックネットワークを読み出すステップを含む動作を実行するように構成され、前記第２のエージェントにより実行される動作は、前記第１のエージェントにより実行される動作とは異なる、前記第２のエージェントと、
を有し、
ｅ）前記複数のエージェントのうち少なくとも２つは明示的にまたは黙示的に互いに協働する、
システム。
【請求項２】
前記セマンティックネットワークの修正は、前記セマンティックネットワークの変更、
編集、改変、増強、追加、又は削除を含む、請求項１に記載のシステム。
【請求項３】
前記エージェントは、ハーベストエージェント、データマイニングエージェント、サーチエージェント、接続エージェント、パーソナルエージェント、又はショッピングエージェントのうちの少なくとも１つを含む、請求項１に記載のシステム。
【請求項４】
前記システムは、前記複数のエージェントのうちの少なくとも１つのエージェントを前記複数のユーザのうちの少なくとも一ユーザに選択させるように構成された、請求項１に記載のシステム。
【請求項５】
前記ユーザインタフェースはグラフィカルユーザインタフェースである、請求項１に記載のシステム。
【請求項６】
前記ユーザインタフェースはさらにマインドマッピングソフトウェア又はオントロジービルダソフトウェアを含む、請求項５に記載のシステム。
【請求項７】
前記ユーザインタフェースは、前記ユーザが変更する値、エントリーを追加するオプション、又はエントリーを削除するオプションを提示する、請求項５に記載のシステム。
【請求項８】
前記値又はエントリーは、カーソル、マウスポインタ、又はキーボードによるユーザ選択により修正可能である、請求項７に記載のシステム。
【請求項９】
エントリーを追加するオプションは、前記セマンティックネットワークに追加するために前記ユーザに提示される合成概念を含む、請求項８に記載のシステム。
【請求項１０】
前記エージェントの少なくとも１つは、前記セマンティックネットワークに概念を合成する、請求項１に記載のシステム。
【請求項１１】
前記セマンティックネットワークは、それぞれ異なる概念を表す少なくとも２つのノードと、２つの異なる概念間のセマンティックな関係を表す少なくとも１つのエッジとを含む、請求項１に記載のシステム。
【請求項１２】
前記概念の少なくとも１つはユーザの好みに基づき重み付けされ、
前記エッジの少なくとも１つは前記セマンティックな関係の強さに基づき重み付けされ、又は
少なくとも一以上の結果は前記ユーザの嗜好に基づいた順序で前記ユーザに送られる、請求項１１に記載のシステム。
【請求項１３】
前記複数のエージェントのうちの第１のエージェントは、前記セマンティックネットワーク中の値を変更し、エントリーを追加又は削除する、請求項１に記載のシステム。
【請求項１４】
前記複数のエージェントのうちの第２のエージェントは、前記エントリーの前記変更された値、追加、又は削除に応じて動作する、請求項１３に記載のシステム。
【請求項１５】
前記複数のユーザのうちの他の一ユーザにより生成された前記複数のエージェントのうちの少なくとも１つに、前記複数のユーザのうちの一ユーザが、報告タスクを割り当てた時に料金が課金される、請求項１に記載のシステム。
【請求項１６】
コンピュータネットワーク中の非一時的コンピュータ読み取り可能媒体にセマンティックネットワークを設ける段階と、
前記コンピュータネットワーク中に展開され、前記セマンティックネットワークとインターラクションする複数のコンピュータ実施されたエージェントを設ける段階であって、前記エージェントは、明示的な命令を受けなくても、集合的に、前記セマンティックネットワークを読み取り、修正するように構成された段階と、
複数のユーザのうちの少なくとも第１のユーザに、前記セマンティックネットワークから１つ又は複数の頂点及び／又はエッジを少なくとも追加及び／又は削除することによって前記セマンティックネットワークを少なくとも生成及び／又は修正させ、第１のユーザによって構成されたセマンティックネットワークをもたらすように構成されたユーザインタフェースを設ける段階とを有し、
前記複数のコンピュータ実施エージェントのうちの第１のエージェントは、前記複数のユーザのうちの第２のユーザ及び／又は前記第１のユーザの少なくとも一方の振る舞いに基づく入力を受け取り、前記入力を適用して第１のユーザによって構成された前記セマンティックネットワークを修正するステップを含む動作を実行し、前記第１のエージェントによる修正は、前記第１のユーザの、前記セマンティックネットワークの生成または修正とは異なり、
前記複数のコンピュータ実施エージェントのうちの第２のエージェントであって、前記セマンティックネットワークを読み出すステップを含む動作を実行し、前記第２のエージェントにより実行される動作は前記第１のエージェントにより実行される動作とは異り、
前記複数のエージェントのうち少なくとも２つは明示的にまたは黙示的に互いに協働する、
方法。
【請求項１７】
セマンティックネットワークに対するユーザとエージェントの動作をデカップリングする方法であって、
コンピュータネットワーク中の非一時的コンピュータ読み取り可能媒体に編集可能なセマンティックネットワークを有する情報交換プラットフォームを設ける段階と、
前記コンピュータネットワーク中に展開され、前記セマンティックネットワークとインターラクションする複数のコンピュータ実施されたエージェントを設ける段階であって、前記エージェントは、集合的に、前記セマンティックネットワークを自律的に読み取り、修正するように構成された段階と、
複数のユーザのうちの少なくとも第１のユーザに前記セマンティックネットワークに関する報告を受け取り及び／又は修正させるように構成されたユーザインタフェースを設ける段階とを有し、
前記複数のコンピュータ実施エージェントのうちの第１のエージェントは、前記複数のユーザのうちの第２のユーザ及び／または前記第１のユーザの少なくとも一方の振る舞いに基づく入力を受け取り、前記入力を適用して前記セマンティックネットワークを修正するステップを含む動作を実行し、前記第１のエージェントによる修正は、前記第１のユーザの、前記セマンティックネットワークの生成または修正とは異なり、
前記複数のコンピュータ実施エージェントのうちの第２のエージェントは、前記セマンティックネットワークを読み出すステップを含む動作を実行し、前記第２のエージェントにより実行される動作は前記第１のエージェントにより実行される動作とは異り、
前記複数のエージェントのうち少なくとも２つは明示的にまたは黙示的に互いに協働する、
方法。
【請求項１８】
コンピュータネットワークの複数のユーザのうちの少なくとも第１のユーザに、セマンティックネットワーク構築ツールと、前記コンピュータネットワーク中に展開可能であり前記ツールを用いて前記第１のユーザに構築されたセマンティックネットワークとインターラクションする複数のコンピュータ実施されたエージェントとを利用可能にする段階であって、前記エージェントは、集合的に、その初期展開の後に明示的な命令を受けなくても、前記セマンティックネットワークを読み出し、修正するように構成された段階を有し、
前記複数のコンピュータ実施エージェントのうちの第１のエージェントは、前記複数のユーザのうちの第２のユーザ及び／または前記第１のユーザの少なくとも一方の振る舞いに基づく入力を受け取り、前記入力を適用して第１のユーザによって構成された前記セマンティックネットワークを修正するステップを含む動作を実行し、前記第１のエージェントによる修正は、前記第１のユーザの、前記セマンティックネットワークの生成または修正とは異り、
前記複数のコンピュータ実施エージェントのうちの第２のエージェントは、前記セマンティックネットワークを読み出すステップを含む動作を実行し、前記第２のエージェントにより実行される動作は前記第１のエージェントにより実行される動作とは異り、
前記複数のエージェントのうち少なくとも２つは明示的にまたは黙示的に互いに協働する、
方法。
【請求項１９】
さらに、前記複数のユーザのうちの一ユーザに前記セマンティックネットワークを修正させるように構成されたユーザインタフェースを設ける段階を有する、請求項１８に記載の方法。
【請求項２０】
非一時的コンピュータ読み取り可能媒体にセマンティックネットワークが化体された、コンピュータネットワーク中に複数のコンピュータ実施されたエージェントを複数のユーザのうちの第１のユーザに展開させるように構成されたオンライン施設を設ける段階であって、少なくとも１つのエージェントは、前記セマンティックネットワークを読み出し、少なくとも１つのエージェントは、明示的な命令を受けなくても、前記セマンティックネットワークを修正する段階を有し、
前記複数のコンピュータ実施エージェントのうちの第１のエージェントは、前記複数のユーザのうちの第２のユーザ及び／または前記第１のユーザの少なくとも一方の振る舞いに基づく入力を受け取り、前記入力を適用して前記セマンティックネットワークを修正するステップを含む動作を実行し、前記第１のエージェントによる修正は、前記複数のユーザのどのユーザによる、前記セマンティックネットワークの生成または修正とは異り、
前記複数のコンピュータ実施エージェントのうちの第２のエージェントは、前記セマンティックネットワークを読み出すステップを含む動作を実行し、前記第２のエージェントにより実行される動作は前記第１のエージェントにより実行される動作とは異り、
前記複数のエージェントのうち少なくとも２つは明示的にまたは黙示的に互いに協働する、
方法。
【請求項２１】
さらに、前記複数のユーザのうちの少なくとも一ユーザに前記セマンティックネットワークを修正させるように構成されたユーザインタフェースを設ける段階を有する、請求項２０に記載の方法。
【請求項２２】
１つ以上のエージェントが前記複数のユーザのうちの少なくとも一ユーザに結果を送信する、請求項２１に記載の方法。
【請求項２３】
セマンティックネットワークに対するユーザとエージェントの動作をデカップリングする方法であって、
コンピュータネットワーク中の非一時的コンピュータ読み取り可能媒体にインスタンス化された編集可能セマンティックネットワークを有する情報交換プラットフォーム、及び／又はコンピュータネットワーク中の非一時的コンピュータ読み取り可能媒体にインスタンス化された編集可能セマンティックネットワークを複数のユーザのうちの少なくとも第１のユーザに修正及び／又は生成させるツールを設ける段階と、
前記複数のユーザのうちの前記第１のユーザ及び／又は第２のユーザのうち少なくとも一方に、前記コンピュータネットワーク中に、前記セマンティックネットワークとインターラクションする複数のコンピュータ実施されたエージェントを展開するように構成された施設を設ける段階であって、前記エージェントは、集合的に、前記セマンティックネットワークを自律的に読み取り、修正するように構成された段階を有し、
前記複数のコンピュータ実施エージェントのうちの第１のエージェントは、前記複数のユーザのうちの第２のユーザ及び／又は前記第１のユーザの少なくとも一方の振る舞いに基づく入力を受け取り、前記入力を適用して第１のユーザによって修正及び／又は生成された前記セマンティックネットワークを修正するステップを含む動作を実行し、前記第１のエージェントによる修正は、前記第１のユーザの、前記セマンティックネットワークの生成または修正とは異り、
前記複数のコンピュータ実施エージェントのうちの第２のエージェントは、前記セマンティックネットワークを読み出すステップを含む動作を実行し、前記第２のエージェントにより実行される動作は前記第１のエージェントにより実行される動作とは異り、
前記複数のエージェントのうち少なくとも２つは明示的にまたは黙示的に互いに協働する、
方法。
【請求項２４】
さらに、前記複数のユーザのうちの少なくとも一ユーザに前記セマンティックネットワークに関する報告を少なくとも受け取り、又は修正させるように構成されたユーザインタフェースを設ける段階とを有する、請求項２３に記載の方法。
【請求項２５】
少なくとも１つの前記エージェントは、前記セマンティックネットワークを、他のセマンティックネットワークとの接続により、又は前記ネットワークの外部ソースからの情報により、選択的に増強するように構成された、請求項１６ないし２４いずれか一項に記載の方法。
【請求項２６】
前記ネットワークの外部ソースは他のセマンティックネットワークである、請求項２５に記載の方法。
【請求項２７】
複数のコンピュータ実行可能命令を記録された少なくとも１つの非一時的コンピュータ読み取り可能媒体であって、
セマンティックネットワークを含むデータ構造を提供するように構成されたセマンティックネットワークモジュールと、
複数のコンピュータ実施されたエージェントと前記セマンティックネットワークとの間のインターラクションをさせるように構成されたエージェントインタフェースモジュールと、
ユーザインタフェースを介して、複数のユーザのうちの第１のユーザによる前記セマンティックネットワークの修正をさせるように構成されるユーザ編集モジュールであって、前記修正は、前記セマンティックネットワークから１つ又は複数の頂点及び／又はエッジを追加及び／又は削除し、第１のユーザによって構成されたセマンティックネットワークをもたらす、ユーザ編集モジュールとを有し、
前記複数のコンピュータ実施エージェントのうちの第１のエージェントは、前記複数のユーザのうちの第２のユーザ及び／又は前記第１のユーザの少なくとも一方の振る舞いに基づく入力を受け取り、前記入力を適用して第１のユーザによって構成された前記セマンティックネットワークを修正するステップを含む動作を実行するように構成され、前記第１のエージェントによる修正は、前記第１のユーザの、前記セマンティックネットワークの生成または修正とは異なり、
前記複数のコンピュータ実施エージェントのうちの第２のエージェントは、前記セマンティックネットワークを読み出すステップを含む動作を実行するように構成され、前記第２のエージェントにより実行される動作は前記第１のエージェントにより実行される動作とは異なり、
前記複数のエージェントのうち少なくとも２つは明示的にまたは黙示的に互いに協働する、
媒体。
【請求項２８】
前記命令は、さらに、実行されると、前記ユーザにデータの出力を行い、前記出力は前記複数のエージェントの１つの機能に基づく、請求項２７に記載の少なくとも１つのコンピュータ読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
ここに開示する教示は、ナレッジドメインを表すユーザ指図セマンティックネットワークを組み込んだ情報システム環境における、自立的アクションができ、かかるネットワークとインターラクションができて、様々なタスクを実行できる複数のコンピュータ実施ソフトウェアエージェントの展開に関する。その際、ユーザナレッジを表す自立的な又はインテリジェントな分散情報処理システムが形成され、ここに提供する教示の他の一態様を構成する。
【背景技術】
【０００２】
［関連出願との相互参照］
この出願は、２０１０年６月２２日に出願された米国仮出願第６１／３５７，５０９号（発明の名称「コンピュータ化エージェントのシステムとセマンティックネットワーク」）と、２０１１年６月２０日に出願された米国仮出願第６１／４９８，８９９号（発明の名称「嗜好誘導データ探索のための方法と装置」）との利益を主張するものである。上記仮出願はその全体をここに参照援用する。
［背景技術］
インターネットは、膨大な情報を格納する、相互接続されたコンピュータネットワークのグローバルなシステムである。ワールドワイドウェブ（ＷＷＷ）は、インターネット上に構築された情報共有モデルであり、相互リンクされたハイパーテキスト文書のシステムがあるプロトコル（例えば、Hypertext  Transfer  Protocol及びその変異形）を用いてアクセスされる。
【０００３】
膨大な量の情報がＷＷＷとインターネットを介して得られ、得られる情報は膨大な数の独立に保有され運用されるネットワークとサーバに分散しているので、ＷＷＷとインターネットにおいて所望のコンテンツを探し、作用することは困難である。また、関心のある情報が複数の大規模なプライベートネットワークにわたって分散していても、同様の困難性が生じる。
【０００４】
ユーザがインターネットやその他のネットワーク上で所望のコンテンツを探すのを支援するサーチエンジンなどの様々なツールが開発され、かかるコンテンツに対して所望のユーザアクションを作用させるソフトウェアエージェントが開発されている。
【０００５】
サーチエンジンは、ユーザが所望するコンテンツを示すサーチクエリを（例えば、一組のキーワードの形体で）ユーザから受け取り、サーチエンジンがユーザのサーチクエリに関連すると判断する情報及び／又は情報へのハイパーリンクを返す。
【０００６】
一般的に、サーチエンジンは、ＷＷＷを（例えば、発見した各ウェブページで行き当たったすべてのハイパーリンクを追うことにより）自動的に横断するウェブクローラと呼ばれるコンピュータプログラムを用いて、多数のＷＷＷウェブページ及び／又はその他のコンテンツなどの、サーチクエリで指定されたサーチ基準を（厳密に又はある範囲内で）満足する大量のマテリアルを検索することにより機能する。検索されたウェブページ及び／又はコンテンツは分析され、そのウェブページに関する情報とコンテンツがインデックスに格納される。ユーザがサーチエンジンにサーチクエリを発行すると、サーチエンジンはそのインデックスを用いて、ユーザのサーチクエリに最もよくマッチすると判断するウェブページ及び／又はコンテンツを特定し、最も良くマッチするウェブページ及び／又はコンテンツを含む結果のリストを返す。このリストは、ユーザのクエリに最もよくマッチすると判断されたウェブページ及び／又はコンテンツへの一組のハイパーリンクを含む１つ以上のウェブページの形体であることが多い。
【０００７】
ソフトウェアエージェントは、ネットワーク情報に対するユーザ指図タスクの実行の促進などの様々なタスクを実行するため、そのユーザのプロキシ（proxies）として開発されている。コンピュータサイエンスの分野では、ソフトウェアエージェントは、一般的にはそれを展開したユーザの代わりに様々な機能を実行する、プロセッサで実行されるソフトウェアエンティティである。より正確に言うと、「エージェント」との用語は、ユーザの代わりにタスクを実行するために、ある程度自律的に（エージェントは、人間が大きく介入しなくても、タスク選択、優先順位付け、目標指向のふるまい、意思決定の能力を有する）行動することができるソフトウェアエンティティに対して使われる。ソフトウェア（すなわちコンピュータプログラムコード）自体は自律的でない情報に過ぎないが、ソフトウェアエージェントと言う場合、それはプロセッサでアクティブに実行され、その時にだけ機能的要素であるコードであると考える。また、エージェントは一般的に次のような属性を有する：持続性（コードはオンデマンドで実行されるのではなく、継続的に実行されていて、ある動作をいつ実行するか自分で決定する）；社会的能力（エージェントは通信により他のコンポーネントと関わり、タスクにおいて効果的に協働する（すなわち協調動作する））；及び反応性（エージェントは、動作する状況や環境を検知して、それに適切に反応する）。
【０００８】
しかし、ソフトウェアエージェントは、動作するドメインを提供するナレッジモデルを必要とする。従来のエージェントは、ユーザにより提供されたキーワードやフレーズにより動作することが多い。さらに、従来のエージェントは、孤立して動作し、機能が進化することもない。よって、ユーザの多様なニーズを見たし、変化するニーズを満たすエージェントを作るには、ナレッジモデルの構築と維持が必要であるが、これには費用がかかりスケールするのは困難である。ここに開示する教示は、少なくとも部分的には、ユーザニーズのより良い解決に関するものである。
【発明の概要】
【課題を解決するための手段】
【０００９】
この開示の目的で、ソフトウェアエージェントにより実行される機能の種類の例には、情報ハーベスト（ハーベストエージェント）、ディープデータ分析マイニング（データマイニングエージェント）、情報検索（サーチエージェント）、ソーシャルネットワーク及びその他のパーソナルタスク（ソーシャルエージェント、パーソナルエージェント又はユーザエージェントとも呼ばれる）、ｅ−コマースタスク（ショッピングエージェント、ショッピングボッツやバイヤーエージェントとも呼ばれる）、モニタリング及び監視が含まれる。
【００１０】
バイヤーエージェントは、異なるベンダーが課している価格などのモノとサービスに関する情報を検索ネットワークを検索しながら、「トラベル」又は「クロール」する（すなわち、異なるネットワークアドレスにアクセスする）。これらのエージェントは、「ショッピングボッツ」としても知られ、ＣＤ、本、電子コンポーネントなどのコモディティ製品を求めて効率的に動作する。
【００１１】
ユーザエージェント又はパーソナルエージェントは、インテリジェントエージェントであり、ユーザの替わりに、他のタイプのエージェントに割り当てられた動作以外の動作をする。このカテゴリーでは、インテリジェントエージェントが、電子メールのチェックやユーザの嗜好の順序でのソーティングや重要な電子メールの到着次のアラートなどのタスクを実行している。
【００１２】
ハーベストエージェントは、少量のデータやコンテンツのチャンクなどの表面レベル情報を抽出する。
【００１３】
データマイニングエージェントにより、大量のデータセットに対する深い分析を実行することにより、パターン抽出を行う。
【００１４】
サーチエージェントは、ユーザの選択の主題に関する情報を発見し、一定の情報の状態の変化をモニタする。
【００１５】
もちろん、このエージェントタイプと機能のリストは、網羅的ではなく、単なる例示である。
【００１６】
エージェントの使用は数とタイプが増加しており、ますます多くのユーザにますます多くの自動的な機能を提供している。かかる動作を効果的にするため、ユーザは、エージェントとインターラクトでき、エージェントはネットワークの情報コンテンツとインターラクトできなければならない。エージェントの自律性の目標にも係わらず、ユーザ・エージェントインターラクションは行わなければならない。結局、タスクはユーザをより生産的にする役に立つことである。
【００１７】
また、ソフトウェアエージェントはかかる環境内で効率的に協働する必要がある。例えば、ショッピングエージェントは、サーチエージェントにより行われたサーチの結果を用いるように設計され、構成される。それゆえ、データ要素のセマンティックスを共通にしなければならない。これは、コンピュータシステムに、ナレッジを表す共有オントロジを用いて、（データ関係と質を定義する）メタデータを発行させることにより行える。かかるフレームワーク内では、エージェントは、そのアクセス方法（次のエージェントのものと同じである必要はない）を用いて、ローカル及びリモートのデータベースに行き、コンテンツを集める。これらのアクセス方法は、エージェントへのニュースストリーム配信の設定、掲示板からの読み出し、ウェブをトラバースするいわゆるスパイダープログラムの使用を含むがこれに限定はされない。このように読み出されたコンテンツは、ニュースフィードの選択やサーチするデータベースの選択により、すでに部分的にはフィルタされている。次のエージェントは、その詳細なサーチ又は言語処理機械を用いて、受け取った又は読み出したコンテンツの本文からキーワード又はシグネチャを抽出する。このアブストラクトされたコンテンツ（又はイベント）は、新しいコンテンツで何をするか決定するために、エージェントの推論機構に送られる。このプロセスは、イベントコンテンツを、ユーザにより提供された規則ベース又はナレッジコンテンツと組み合わせる。このプロセスは新しいコンテンツに良いヒットやマッチを見つけると、エージェントは、他の機械（コードベース）を用いてより詳細なサーチと分析をコンテンツに対して行う。最終的に、エージェントは、新しいコンテンツに基づいて動作を行うことを決める。例えば、ユーザに重要なイベントが発生したことを通知する。この動作はセキュリティ機能により検証され、ユーザの権限を与えられる。エージェントはユーザアクセス方法を用いて、そのメッセージをユーザに届ける。ユーザが、すぐに通知を行ってそのイベントが重要であると確認すると、エージェントもそのラーニング機構を利用して、この種のイベントの重み付けを大きくする。
【００１８】
ソフトウェアエージェントは、複雑又は反復的なタスクを自動化することにより、エンドユーザに様々な利益を与える。しかし、この技術には潜在的な制約とインパクトがあり、考慮しなければならない。例えば、多くの異なる人々に多くの異なるタスクをできるエージェントベースシステムを提供するには、エージェントと人とがインターラクトするナレッジドメインをモデリングするため、大きな努力をしなければならない。例えば、レストランの予約をする効果的なエージェントベースシステムを提供するには、レストランと、レストランを以下に予約するかのナレッジがシステムにモデル化されていなければならない。このナレッジの必要性は、エージェントに必要な複雑かつ高度な機能を構成し、「インテリジェント」エージェントとの言葉に反映されている。インテリジェントエージェントに対する要求は、エージェントベースシステムの開発と普及を示し、エージェントの開発コストと複雑性を増大させる。このように、エージェントを作成するのに用いるツールは、能力が高くなっており、エージェントがより複雑になっているように見える。エージェントが複雑になるにつれ、すべての環境下で正しく機能することを保証することは困難かつコストがかかるようになりつつある。
【００１９】
さらに、エージェントは、サポートしている人のニーズや必要性への直接的又は詳細な「洞察」はほとんど有さない。すなわち、エージェントは自律的に設計されているが、潜在的な動作範囲は、予めプログラムされた範囲に限定されているが、自己認識と、ユーザの目的、ニーズ、及び要求に対する認識を欠いている。このように、これらのニーズや要求が変わるにつれ、ユーザは、エージェントとインターラクトして、エージェントプログラミングを改訂して、その変化を知らせなければならないが、複雑なインタフェースとユーザの注意が必要になる。結果として、システムがユーザに合わせるのではなく、効率を維持できるのであれば、ユーザが合わせなければならない。そうではなく、明示的なユーザの命令が無くても、ユーザの要求における変化を明らかにするユーザの振る舞いにおける変化に応答することにより、エージェントの振るまいがユーザの変化したニーズに自分自身を合わせることが望ましい。
【００２０】
これは困難であるが、人間の大幅な介入が無くても、エージェントが自律的に動作できるというエージェントの重要な設計目的と一貫性がある。しかし、この目的に沿って設計するこは、ユーザの意図に応じるというエージェントの通念に合わない。それゆえ、人間の手作業による動作と、完全に自律的なソフトウェアエージェントすなわち直接的又は明示的なユーザの支持が無くてもユーザに応答できるエージェントとの間の中間が、必要である。
【００２１】
もちろん、情報を処理して、それから意味のある結果を求めるエージェントの能力は、そのエージェントが動作する（入出力する）ナレッジモデルに大幅に依存する。一般的に、かかるエージェントが動作するナレッジは「オントロジ」である。すなわち、ある「具体的なドメイン」における一組の概念と、その概念間の関係とにより実施されたナレッジの形式的な構造化された表現である。オントロジにより、エージェントは、そのドメインの特性に論理的に動作、すなわち「推論」でき、ドメイン自体を記述するのに使える。このように、オントロジは、共有ボキャブラリを提供する。これを用いてドメイン、すなわち、存在するオブジェクト及び／概念のタイプとその特性及び関係をモデル化できる。コンピュータサイエンスでは、オントロジは、一組のタイプ、特性、及び関係タイプよりなる世界（すなわちドメイン）を記述するモデルである。厳密にはモデル化されるものは変わる。実世界と、オントロジのモデルの特徴との間には非常に似ているとの期待もある。
【００２２】
現在のオントロジは、それが表現される言語にかかわらず、多くの構造的類似性がある。上記の通り、ほとんどのオントロジは、個別（インスタンス）、クラス（概念）、属性、及び関係を記述する。今日、オントロジを構築する多くのツールがあり、この説明のためにその１つを選び出す必要なない。あるものは標準ベースのオントロジ言語を用いる。あるものは独自のオントロジ言語を用いる。当業者は、本発明の実施形態の実施とここに説明するコンセプトのために用いる適切なオントロジ構築ツールを選択出来るであろう。
【００２３】
ドメインオントロジは非常に特定されしばしば変化する方法で概念を表すので、互換性が無い場合が多い。ドメインオントロジ（すなわちドメインスペシフィックオントロジ）は特定のドメインまたは世界の一部をモデル化する。そのドメインに適用される用語の特定の意味を表す。例えば、単語「カード」は多くの異なる意味を有する。「ポーカー」のドメインに関するオントロジは、言葉の「カード遊び」の意味をモデル化し、一方、「コンピュータハードウェア」のドメインに関するオントロジは「パンチカード」と「ビデオカード」の意味をモデル化する。同様に、単語「グリーン」は、異なるドメインにおいてのみならず、使用の文脈でも、異なる意味を有する。ファッションに関するドメインでは色として主にモデル化されるが、一方、環境問題に関するドメインでは、環境へのインパクトが少ないこと、又はエネルギーの消費量が少ないことを意味することをモデル化する。人に関するドメインは、「グリーン」を名字又は「未経験」としてモデル化する。同じ用語でも異なる品詞（parts  of  speech）として、及び同じドメインでも、品詞に応じて異なる意味を有するとしてモデル化される。換言すると、有用なオントロジは、ドメインに対して、用語に属する意味を明確にして、なかんずく、オントロジに対する複数のエージェントの動作が一貫し、意味があり、有用であるようにしなければならない。
【００２４】
コンピュータ化されたソフトウェアエージェントとドメインオントロジとユーザとがインターラクトする方法を変更すると、複数の利点が生じる。その中で、エージェントの複雑性が減少するが、ユーザ指図ナレッジモデルへの変化により、その上で動作する複数のより単純なエージェントの間接的なインターラクションにより生じる複雑な振る舞いが可能となる。さらに、ユーザは、ナレッジモデルのデータを直接操作することにより、自分のエージェントを再構成したり再プログラムしたりリタスクしたりすることなく、自分の意図をより直感的にかつより簡単に表せる。
【００２５】
したがって、本発明の第１の態様は、コンピュータネットワーク中の非一時的コンピュータ読み取り可能媒体に、セマンティックネットワークを提供するデータ構造を含むコンピュータシステムである。（この媒体は、ローカルである必要はなく、分散していても、複数のタイプのデータ記憶を有していてもよい。）複数のコンピュータ実装されたエージェントがコンピュータネットワーク中に展開され、セマンティックネットワークとインターラクションする。システムは、さらに、ユーザに前記セマンティックネットワークを修正させるように構成されたユーザインタフェースを有する。前記エージェントは、ユーザからの実質的に明示的な命令を受け取らなくても、前記セマンティックネットワークを読み取り、修正するように構成される。前記セマンティックネットワークの修正は、前記セマンティックネットワークの変更、編集、改変、増強、追加、又は削除を含いんでもよい。ある実施形態では、前記エージェントは、例えば、ハーベストエージェント、データマイニングエージェント、サーチエージェント、接続エージェント、パーソナルエージェント、又はショッピングエージェントのうちの少なくとも１つを含んでもよい。エージェント動作の自律的な性質により、複数のエージェントのうちの少なくとも２つのエージェントは、直接的な通信により明示的に、又はセマンティックネットワークによるインターラクションにより生じる間接的な通信により、互いに協働できる。ある実施形態では、少なくとも１つのエージェントは、概念をセマンティックネットワークに合成し、ノードを追加し、又は値を変更し、又はデータ構造からネットワークのノード又はエッジを削除するように構成されている。ある実施形態では、前記複数のエージェントの少なくとも第２のエージェントは、前記エントリーの前記変更された値、追加、又は削除に応じて動作する。
【００２６】
第２の態様によると、方法は、コンピュータネットワーク中のセマンティックネットワークを設ける段階と、前記コンピュータネットワーク中に展開され、前記セマンティックネットワークとインターラクションする複数のコンピュータ実施されたエージェントを設ける段階であって、前記エージェントは、ユーザから明示的な命令を受けなくても、前記セマンティックネットワークを読み取り、修正し、さもなければ影響するように構成された段階と、ユーザに前記セマンティックネットワークを編集させるように構成されたユーザインタフェースを設ける段階とを有する。
【００２７】
さらに別の態様は、セマンティックネットワークに対するユーザとエージェントの動作をデカップリングする方法である。コンピュータネットワーク中の非一時的コンピュータ読み取り可能媒体に編集可能なセマンティックネットワークを有する情報交換プラットフォームを設ける。複数のコンピュータ実施されたエージェントが前記コンピュータネットワーク中に展開され、前記セマンティックネットワークとインターラクションする。前記エージェントは、前記セマンティックネットワークを自律的に読み取り、修正するように構成される。設けられたユーザインタフェースは、ユーザに前記セマンティックネットワークに関する報告を受け取り、又は修正させるように構成される。
【００２８】
さらに他の一態様では、方法は、コンピュータネットワークのユーザに、セマンティックネットワーク構築ツールと、前記コンピュータネットワーク中に展開可能であり前記ツールを用いて前記ユーザに構築されたセマンティックネットワークとインターラクションする複数のコンピュータ実施されたエージェントとを利用可能にする段階であって、前記エージェントは、ユーザからの明示的な命令を受けなくても、前記セマンティックネットワークを読み出し、修正するように構成された段階を有する。ある実施形態では、上記方法は、さらに、ユーザに前記セマンティックネットワークを修正させるように構成されたユーザインタフェースを設ける段階を有する。
【００２９】
さらに他の一態様では、ある実施形態による多数のタスクのいずれかを実行するソフトウェアモジュールを含むプロセッサ実行可能命令を格納した非一時的コンピュータ読み取り可能媒体が開示される。例えば、上記命令は、セマンティックネットワークを含むデータ構造を提供するように構成されたセマンティックネットワークモジュールを含む。また、上記命令は、複数のコンピュータ実施されたエージェントとセマンティックネットワークとの間のインターラクションをさせるように構成されたエージェントインタフェースモジュールと、ユーザインタフェースにより、ユーザによるセマンティックネットワークの修正を許すように構成されたユーザ編集モジュールとも含む。
【図面の簡単な説明】
【００３０】
【図１】本発明の態様の一実施形態を表すブロック図である。
【図２】実施形態によるエージェントエコシステムをさらに示すブロック図である。
【図３】実施形態によるセマンティックネットワーク（例えば、音吐露ぎー又はナレッジモデル）を編集するユーザの操作例を示す図である。
【図４】エージェントのエコシステムから得られるアクティビティを示す図である。
【図５】エージェントを展開できるシステムアーキテクチャを示す図である。
【図６】本発明の実施形態を実行するユーザのコンピューティングシステム例を示すブロック図である。
【図７】先行技術による「クエリ、ソート、そしてスキャン」データ探索モデルを示す図である。
【図８】実施形態による関係を示す図である。
【図９】実施形態による嗜好モデリングプロセスを示すフローチャートである。
【図１０】実施形態による関係から得られるスコープを示す図である。
【図１１】実施形態によるスコープコンパレータを示す図である。
【図１２】実施形態による共同嗜好を示す図である。
【図１３】実施形態による部分的順序の線形エクステンションへのマッピング例を示す図である。
【図１４】実施形態による嗜好グラフを示す図である。
【図１５】実施形態による異なるタイプの２次嗜好のためのエッジ重みの計算例を示す図である。
【図１６】実施形態による有線付けされたコンパレータのページランクベースの行列を示す図である。
【図１７】実施形態による、重み付けした嗜好グラフとそれから求めたトーナメントを示す図である。
【図１８】実施形態による、インターラクティブに嗜好を指定するプロセスを示すフローチャートである。
【図１９】ナレッジ表現規則、統計的グラフィカルモデル、及びユーザフィードバックを用いてナレッジ表現を構成する方法を示す図である。
【図２０】嗜好ランキングエンジンを用いたＡＫＲＭの方法を示す図である。
【発明を実施するための形態】
【００３１】
ここに開示する方法、システム、及び製品は、既存のエージェント作成ツールと、オントロジー言語及びオントロジー構成ツールを含むナレッジ表現用の様々な利用可能な手法とを用いて、及び将来のエージェント及びナレッジ表現ツールを用いて、実施できる。請求項の発明は特定のナレッジ表現には限定されないが、好ましい形体は、セマンティックネットワークと呼ばれるタイプのオントロジーである。セマンティックネットワークは多くのソースで説明されているが、特にその中でもPeter  Sweeneyらによる米国特許出願第１２／６７１，８４６号（発明の名称「Method,  System,  And  Computer  Program  For  User-Driven  Dynamic  Generation  Of  Semantic  Networks  And  Media  Synthesis」）がある。この文献はここに参照援用する。
【００３２】
セマンティックネットワークは、ナレッジ表現の形体として用いられることもある。セマンティックネットワークは、概念を表す頂点と概念間のセマンティックな関係を表す辺とから構成され、コンピュータ読み取り可能記憶媒体の対応するデータ構造にエンコードされた有向グラフとして表すことができる。セマンティックネットワークはナレッジ表現の形体として広く利用されている。機械読み取り可能データとして、人工知能、ソフトウェアオートメーション及びエージェント、エキスパートシステム、及びナレッジマネージメントなどの多数の高度なテクノロジーを支持することができる。また、セマンティックネットワークは、多様な形体のメディアに（すなわち、他のナレッジ表現に）変換できる。言い換えると、セマンティックネットワークの合成や生成により、そのセマンティックネットワークから追加的価値を抽出する幅広いメディアの合成を支持できる。
【００３３】
例えば、Primal  Fusion  Inc.（カナダ、オンタリオ州、ウォータールー市、www.primal.com）から入手できる思考ネットワーキングとセマンティック合成は、ドメインに対するユーザのナレッジを表す、ユーザ指図セマンティックネットワークを生成するよい方法とシステムを提供する。セマンティック合成は、ユーザの思考や意図をエンコードするセマンティックネットワークを構成する。これらの思考と意図は、組織化されたデータ構造のデータとしてエンコードされ、例えば、エージェントベースのシステムを支持するコンピューティング目的に利用できる。
【００３４】
思考ネットワークは、ナレッジネットワークとしても知られているが、（エンドユーザとは対照的な情報のプロデューサにより作成されたセマンティックネットワークとは対照的に）一種のユーザ指図セマンティックネットワークを指す。ユーザの嗜好を相互接続された概念として表す。この格子状の構造は、概念がデータとしてどう表され、具体化されているかを示す。しかし、理想的には、ユーザは自分の思考ネットワークとインターラクトする際、この深い構造は知らないままでいる。
【００３５】
上記のように、思考ネットワーキングは、以前はユーザの嗜好と意図をキャプチャするために利用されている。しかし、思考ネットワーキングを用いて、ソフトウェアエージェントへの入力として用いられるセマンティックネットワークを作ることも可能である。同様に、これらのエージェントは、これらの（又は追加的な）セマンティックネットワークへの変更を出力できる。ドメインナレッジベースがセマンティックネットワークにキャプチャされ、ユーザとエージェントが、互いに直接インターラクトするのではなく、両方ともセマンティックネットワークとインターラクトする場合、ユーザがそのエージェントと直接インターラクトする必要はまったく又はほとんど無くすことができる。エージェントの機能を減らし、直接的なユーザインタフェースを無くし、機能を複製する必要を減らし、異なるタイプの複数のエージェントの集合的アクションから現れる振る舞いを許すことにより、エージェントを単純化できる。異なる機能の適切な複数のエージェントが利用でき、所望のタスクのセットを達成できることを前提に、エージェント機能をもっと減らして単機能としてもよい。
【００３６】
インターラクションするエージェントやエージェント群の集まりは、「エージェントエコシステム」と呼ばれる。人がセマンティックネットワーキング環境の変化に直接影響できるようにすると、個々のソフトウェアエージェントとソフトウェアエージェントエコシステムの開発に係わるコストと複雑性が低下する。
【００３７】
（セマンティックデータに）思考のランドスケープを構築することにより、人（ユーザ）がかかるシステムに寄与し、比較的単純なエージェント（場合によっては多数のエージェント）がユーザインテリジェンスのランドスケープ上で機能して仕事を行う。エージェントは、ランドスケープ上を歩き回り、そのランドスケープのアーキテクト（すなわちユーザ）により課された環境内で互いに協力する蟻と似ているかも知れない。さらに、ユーザとエージェントは、両方ともランドスケープを改変することにより動作でき、ユーザがそのエージェントを直接的に制御しなくても、エージェントの動作に影響を与えることができる。エージェントインターラクションからユーザインターラクションを切り離すことにより、新しいアプリケーション／デザインパターンが得られる。異なるタイプのエージェント（例えば、サーチエージェントとハーベスティングエージェント）が協働して、複雑なタスクを実行できる。すなわち、あるタイプのエージェントが、他のタイプのエージェントにアクションを取らせることができ、その結果のアクションがよければ、個々のエージェントの機能以上のものを達成できる。例えば、あるエージェントが情報を集めて、セマンティックネットワークにこの情報を加える。第２のエージェントは、自立的に動作し、単にセマンティックネットワークの変化のレポートを作成する。各エージェントは、ランドスケープがどのように作成されたかを、又はナレッジランドスケープとのエージェント又はユーザインターラクションとして現れる高次の振る舞いを理解する必要なく、ナレッジランドスケープの環境に応答できる。
【００３８】
図１を参照するに、上記の態様の一部を実施する基本的なシステム例のコンポーネントを示す。セマンティックネットワーク（オントロジ）構成ツール１０は、ユーザ２０に用いられ、コンピュータネットワークアクセス可能メモリ４０中のセマンティックネットワーク３０を構成する。このメモリは、ローカルメモリでも、リモートメモリでも、インターネットなどに分散したメモリのような分散メモリであってもよい。セマンティックネットワーク構成ツールは、必要な入力をユーザが与えた時に、セマンティックネットワークを生成するように好適に（ソフトウェアなどにより）構成された任意のコンピュータ（ハードウェアとソフトウェア）である。ソフトウェアエージェント５０１−５０Ｎは、セマンティックネットワークにアクセスできるところにあるコンピュータ（図示せず）上で実行され、セマンティックネットワークとインターラクトし、ネットワーク中のデータにそれぞれの機能を行う。図示したように、少なくとも１つのエージェント、例えば５０Ｎは、出力機能を有し、ユーザ２０に出力を提供するものとする。しかし、ユーザがタスクの完了だけを欲し、タスクに関する報告は必要としないアプリケーションでは、エージェントインターラクションの結果はユーザに出力される必要はない。
【００３９】
セマンティックネットワークが存在すると、ユーザ２０は、インタフェースツール６０を用いてネットワークに変更を及ぼすことができる。インタフェースツールは、セマンティックネットワークを（例えば、グラフィカルユーザインタフェースで）ユーザに示し、ネットワークへの変更をユーザに入力させる任意の好適なエディタである。変更には、データ値の変更、セマンティックネットワークへのエントリーの追加又は削除が含まれる。マインドマップソフトウェアやオントロジビルダなどのツールはユーザインターラクションのこれらの側面に向いている。
【００４０】
留意点として、エージェントが展開されると（すなわち、開始されると）、ユーザはエージェントと直接インターラクトする必要がない。もちろん、誰かが各エージェントを展開しなければならず、そのためにはシステム中のどのエージェントが寄与するか特定する必要がある。
【００４１】
エージェントはパーソナルなものであってもよいし、エージェントはユーザの識別情報に関して知らなくてもよい。よって、ショッピングエージェントはあるユーザのパーソナルエージェントであってもよし、必要とするユーザならだれでも利用できるものであってもよい。
【００４２】
ソフトウェアエージェントが動作するセマンティックネットワークランドスケープにより、ネットワークを明示的に編集することにより、及びクションの組合せからエージェントにユーザの意図を推論させることにより、ユーザは自分を表現することができる。エージェントは、機能が制限された単純なもの（plain  and  simple）であってもよい。明白に、ユーザ・ネットワーク間インターラクションとエージェント・ネットワーク間インターラクションは、ユーザとソフトウェアエージェントとの間の直接対話は行わない。このように直接対話が無いことは、本システムと方法の特徴である。人は、（セマンティックデータ中に）自分の思考のランドスケープを構築することにより寄与し、一方多数の単純なエージェントがその非常に個人的なランドスケープ上で動作して（すなわち、インターラクトして）、仕事を行う。異なるタイプのエージェント（例えば、サーチエージェントとハーベスティングエージェント）が協働して、一般的に１つのタイプのエージェントだけでは提供できないタスクを実行できる。
【００４３】
単純なセマンティックネットワーク３０′とその利用の例を図２に示した。ユーザが、関心ドメインに適したナレッジベース１２を有する（又はそれにアクセスできる）セマンティックネットワーク合成ツール（ビルダ又はエンジンとも呼ぶ）１０にクエリを発するものと仮定する。１つ以上のエージェント５０′（例えば、サーチ、フィルタ、及びレポーティングエージェント）は、ネットワーク３０′を介して自立的に（及び独立に）動作する。結果は、（参照符号１９で示したように）モジュール１４，１６及び１８により、ユーザに又はネットワークにフィードバックされる。モジュール１４，１６及び１８によりユーザはエージェントに命令でき、又はエージェントの条件、パラメータ、機能、又は状態を変更できる。ナレッジベースに示したように、ユーザのナレッジのランドスケープにわたる単純なインターラクションから複雑なナレッジが得られる。
【００４４】
図３は、ユーザ２０が合成エンジンにより利用されるナレッジベース１２を編集できることも示す。例えば、ビジュアルエディタ６０が利用できる（これは図示したようにエンジンの一部でもよいし、エンジンの外部にあってもよい）。このように、ユーザとエージェントのアクションの組合せにより結果が得られる。
【００４５】
合成ターム（term）の選択により、例えば、エンティティ曖昧性除去やエンティティ解決ができる。このように、「ニュートリエント（nutrient）」との用語は、植物学者には、フィットネスファンとは違った意味を有する。結果は、例えば、インテリジェントランキングにより、ユーザに提示される。かかるランキングは、以下に示した、「嗜好誘導データ探索に関するシステムと方法」との名称のリファレンスＡに開示された教示により決定できるユーザの嗜好による。さらに、以下に示した、「アトミックセマンティクスに適用される嗜好誘導データ探索のシステム及び方法」との名称のリファレンスＢに開示された教示を適用することにより、基礎となるセマンティックネットワーク３０′は、ユーザ嗜好に基づき、ある概念又はトピックを他のものより大きく重み付けする。エージェント機能は、ユーザにより強く関係する概念にフォーカスされたネットワークに適用される。かかる重み付けと嗜好ランキングは、ユーザが明示的に編集や補正をしなくても、セマンティックネットワークに影響するユーザのクリックパターン、ブラウザ履歴、合成概念の選択などに基づき決定される。
【００４６】
ここに開示された教示が示された我々のシナリオは、ユーザが自分の家を引っ越しして、新しい場所に興味を有している場合である。従来のユーザ・エージェント方法を用いると、ユーザは、近所のイベントを通知するハイパーローカルニュースなどのロケーションベース情報を提供するすべてのエージェントを修正しなければならない。ユーザベースのセマンティックネットワークを、ハーベスト、サーチその他のタイプのエージェントでレバレッジすると、ユーザは、ナレッジベースを修正できるだけで、セマンティックネットワークを修正し、更新された都市、国その他の関心のある場所を反映させる。各エージェントは、この更新されたロケーション情報に基づき動作し、どのエージェントが更新されたロケーション情報を必要とするかユーザが判断する必要性を無くし、各エージェントを更新されたロケーション情報でユーザが直接修正しなくても、さらに正確にユーザにサービスする。エージェントは、さらに、新しいロケーションのカウンティ、州や、国際的引っ越しのばあいには国を含めるなど、新しい関心ロケーションに関連概念を加えることにより、セマンティックネットワークを修正するように動作する。
【００４７】
他の例では、肉体的なフィットネスに関心を有するユーザは、ハーベスティングエージェントに、栄養に関する記事やトレーニングルーチンなどの関連コンテンツを配信させたり、ショッピングエージェントに関連ジム用品を通知させたりすることができる。そのユーザが肩を故障すると、従来のアプローチでは、ユーザが各エージェントを修正しなければならないだろう。ここに開示の教示を用いると、ユーザは、セマンティックネットワークを編集して、肩に関するリハビリテーションや具体的な情報のユーザへの新しい関係を反映する替わりに、直接的なユーザ・エージェントインターラクションが無くても、適宜あつらえられたエージェントに、関心のある記事、ルーティン、及び用具を配信させることができる。リハビリテーションなどの概念を含めるセマンティックネットワークの修正は、ユーザが明示的にそれを組み込まなくても、行える。ユーザが単に「けが」と入力すると、ネットワークは、参照コーパスを用いて、「リハビリテーション」に関連した概念として識別できる。また、けがやリハビリテーションに関連する記事をクリックするだけで、かかるコンテンツに関するユーザの関心が分かり、セマンティックネットワークが適宜修正される。ネットワークは、動的であり、けがや肩のリハビリテーションに関連した概念に対する重み付けを小さくし、嗜好を弱くするように、時間とともに変化する。これは、かかるコンテンツをユーザが選択する頻度が減少するにつて、生じ、ユーザの肩が回復したことを示唆する。
【００４８】
さらに、ユーザ依存の概念に関係する命令を有する従来のエージェントは、修正を必要とする。例えば、「ヒーロー」を選択すると、８歳の子供にはマンガ本のキャラクタを意味するが、６５歳のシニアには市民権運動のリーダを魅する。宗教は、非常にユーザ依存性が高い概念の他の一例である。「宗教」の概念と関連コンテンツは、熟練した神父と若い仏教徒とでは大きく異なる。従来のユーザ・エージェントインターラクションは、宗教やヒーローの概念について動作するすべてのエージェントが、ユーザにより識別され、ユーザの特定の主観的な見方、経験、または関心を反映するように修正されることを必要とする。それでも、セマンティックネットワークにおける「宗教」や「ヒーロー」といった概念を強化することにより、エージェントは、そのユーザの意味により動作する。結果として、ユーザの手間やエージェントの複雑性が低減される。
【００４９】
エージェントは、タンデムで動作し、互いに情報をレバレッジできる。ロケーションベースの情報を実行するエージェントは、サーチエンジンにより検索されたコンテンツに基づいてそうすることができる。肩のリハビリテーションの場合にサーチエージェントにより検索された記事は、治療としてある種のヨガや水中治療を示唆し、セマンティックネットワークを修正する。ロケーションベースのエージェントは、セマンティックネットワークから治療が関連すると判断して、その地方でかかる治療を実施する施設を特定する。あるいは、ショッピングエージェントは、記事に記載された治療を行うのに使用できる製品を特定する。
【００５０】
上記の場合のすべてにおいて、従来のエージェントを利用すると、ユーザはその人にサービスしている各エージェントを修正しなければならず、またはユーザに正しくサービスし、変化するタスクを実行する複雑なエージェントを構成する必要がある。ここに開示する教示は、図４に列記したもののように、サーチ、ハーベスト、組織化、接続、トラッキング、協働、又は報告などの一般的なタスクを、プロフェッショナルな関心、個人的ニュース、旅行、ファイナンス、ローカルサーチ、教育、趣味、または健康問題などのパーソナルナレッジに関連する態様に組み込み、ユーザに多数の方法でサービスすることができる。
【００５１】
図５は、ここに教示するエージェントエコシステムの実施形態の潜在的なシステムコンポーネントの非限定的な実施形態例を示す。例えば、タブレットコンピュータ７０に「ハーベスト」インタフェースを設けることができる。かかるユーザインタフェースは、そのコンピュータに設けられた、又はそのコンピュータの、１つ以上の「ネイティブ」アプリケーションプログラム（例えば、従来のオペレーティングシステム及びブラウザソフトウェア）を利用して、エージェントタスクを支援できる。例えば、従来のブラウザソフトウェアを用いて、関心サイトを見つけて、そのサイトから語句をクリッピングし、例えば、既存のネットワークデータ構造にノードを追加することにより、このマテリアルをセマンティックネットワークに追加できる。（図５に示した装置はタブレットコンピュータ７０であるが、クライアントＰＣ、ラップトップ、モバイルデバイス、ＰＤＡ、又は関連コンピューティングシステムなどの好適なコンピューティングシステムを用いることができる。）ブラフィックスをサポートできるブラウザやワードプロセッシングプログラムなどの従来のアプリケーションを用いて、エージェント動作の結果を表示できる。デザイナ８０を示したが、これは、エージェントデザイン、ネットワークデザイン、及びそのどちらかの変更を更新する他のソフトウェアの使用をできるエージェントシステムの拡張性を示す、任意的な補足的アプリケーションソフトウェアツールとして示したものである。ユーザモデル９０は、エージェントのコレクションのネットインパクトは、反復的なユーザインターラクションとクエリの必要性が大きく削減され、エージェントが、ユーザが所望するサービスの設計図を提供するメカニズムになるように、ユーザの関心と意図をキャプチャすることである。
【００５２】
コアエージェントタスク１００は、インターネットコンテンツ及びサービス上で動作し、上記のハーベスト、接続、報告などを含む。コンテンツ／サービス・アプリケーションプログラミングインタフェース（ＡＰＩ）１１０とクローラは、インターネットへのインタフェースとして動作する。
【００５３】
個々のエージェント又は（それぞれが専用の機能を有する）エージェントのコレクションは、ユーザのアシスタントとして機能し、及び考えることができる。かかるアシスタントは複数のユーザにサービスできる。確かに、それらの機能に適していれば、アシスタントも複数のユーザにより収益化できる。例えば、第１のユーザが、デベロッパーではないが、技術を用いて物を作りたいとする。第１のユーザは、ここに空き次のエージェントフレームワークを用いてアシスタントを作れる。そうするため、ユーザは、アシスタントデザイナアプリケーションを立ち上げる。このアプリケーションは、個々のエージェントをデザインし、タスクに対してエージェントのグループをアセンブルする役割と、及び各種のエージェントにリソースを割り当てる役割を実行する。（ここで、エージェントへのリソースの割り当てとは、そのエージェントが入力として受け取り、出力として供給するデータの画定を意味する。）一般的にユーザは、自分のアシスタントの目的すなわちその機能を指定するようにも要求できる。
【００５４】
デザイナアプリケーションを設定して、デフォルトで、選択で、又はその両方で、あるエージェントをアシスタントに含めてもよい。デフォルトエージェントは、例えば、ドメインにわたる新しい接続を合成する接続エージェント（下記参照）；関連アブストラクトなどの検索されたコンテンツノードから用語を抽出するハーベストエージェント；（新しいレストランがアシスタントの目的であれば、その識別情報などの）あるコンテクストに対して利用可能な情報の状態を提供する報告エージェントを含む。
【００５５】
「接続エージェント」は、単に、セマンティックネットワークの概念ノードを、他のドメインで特定した別の概念で強化できるエージェントを指すのに用いる言葉である。すなわち、接続エージェントは、クロスドメイン接続、又はブリッジ、リンクを確立する。接続は、参照コーパス（例えば、１つ以上のウェブサイト、文書など）又は参照セマンティック用語集（例えば、ＷｏｒｄＮｅｔ、類語辞典、辞書など）で確認されたものである（ＷｏｒｄＮｅｔはプリンストン大学の認識科学研究所で作成され維持されている、英語の用語データベースである）。エージェントは、セマンティックネットワークを参照して、シード概念を受け取ることにより動作する。そして、参照コーパス／用語集からの関連のあるセマンティックに関係する用語でシード概念を増強する。エージェントは、概念ノードを含む用語を特定することにより、概念ノードを分析し、文言的及びセマンティックな一致を求めて関係ドメインを分析する。
【００５６】
接続エージェントとハーベストエージェントは両方ともセマンティックネットワークのノードを補強し、接続エージェントは他のノードへのリンク又はアタッチメントの加えることによりその補強を行い、一方ハーベストエージェントは、セマンティックネットワークの１つ以上のノードに基づき、参照コーパスから情報を収集し、収集情報をアタッチすることにより、その１つ以上のノードを補強する。ハーベストエージェントによりアタッチされる補強情報は、一般的に、「データの断片」、「コンテンツのチャンク」、「パラグラフアブストラクト」などの有限量の情報である。
【００５７】
コンテクストの一例としてレストランの特定の話しを続けるが、エージェントデザイナアプリケーション（ソフトウェアツール）その他の選択メカニズムを用いて、ユーザは、様々な既存のエージェントから、アシスタントに含めるものを選択する。これらには、例えば、個人のセマンティックネットワーク中のコンテクストから取得した用語を用いて複数のソースからレストランのレビューを検索する機能を有するレビュー収集エージェント；個人のセマンティックネットワーク内のコンテクストから用語をサーチするウェブサーチエージェント；及び個人のセマンティックネットワーク中のアクセス可能メッセージから情報を検索するテキストメッセージマイニングエージェントが含まれる。
【００５８】
一具体例として、レストランエージェントは、ユーザの都市にある、最近６ヶ月間に、出版物やウェブサイトなどのリストでレビューされた、ある種の食事を提供し、５つ星中少なくとも３つのレーティングがされたすべてのレストランをユーザに通知するように構成できる。エージェントは、かかるレストランを特定すると、そのレストランをユーザのセマンティックネットワークの「行ってみたい新しいレストラン」と呼ぶノードに追加する。通知エージェントは、ネットワークにレストランが加えられたことを知ると、ネットワークにレストランが追加されたことを示すメッセージ（テキスト、電子メールその他のサービス）を送信し、又はユーザが時々チェックする「新しいレポート」キューに追加する。ユーザはそのレストランを試し、良くないと思うかも知れない。他のエージェントは、（例えば、ユーザのクレジットカードの明細をモニターして）そのユーザがそのレストランに行ったことを知り、また１年が経過し、ユーザはそのレストランを再訪していないことを知る。その結果、エージェントは、ユーザの好きなレストランリストからそのレストランを自動的に削除するか、そのレストランを保存するか削除するかユーザに確認する。
【００５９】
これらは、エージェントがユーザと、セマンティックネットワークと、及び他のエージェントとインターラクトして、ユーザのアシスタントとして動作して、さもなければ時間がかかるタスクをエージェントが実行して、そのタスクからそのユーザを開放する方法の簡単な例である。
【００６０】
ある実施形態では、構成されたアシスタントを収益化してもよい。例えば、ライセンシングメカニズムを設定して、エージェントの再使用を測定し、再使用に課金し、その再使用関してある金額を元のデザイナにクレジットする。例えば、個人があるアシスタントに状態レポートを発行させるたびに一定の金額、例えば＄０．０２を課金する。この課金は、一部がアシスタントの構成者にクレジットされ、一部がエージェントエコシステムを支援するホストシステムにクレジットされる。ある実施形態では、課金金額は、広告などの他の収益源の使用により相殺又は減額される。
【００６１】
かかるエージェントのライセンシングと再使用を促進するため、エコシステムは、クリエータが作成したエージェントとアシスタントにそのクリエータがネーミングして、（所望に応じて）公開するようにラベル／指定をできるエージェントネーミングモジュールを含むことが好ましい。（例えば、この目的のために、かかるエージェントを公開登録して、クリエータは自分のエージェントを登録できる。一般的に登録は、クリエータの識別情報、エージェント名、その機能、入出力、及びライセンシング条件（関連するエージェントの使用／コピー／修正に対する課金など）を含む。）第２のユーザがエージェント又はアシスタントの再使用のライセンスを受けることに加えて、第２のユーザは、自分が有利なようにエージェントの選択を変更することなどにより、アシスタントのクローンを作り及び修正する（場合によっては、料金の支払いを条件に）許可を得ることができる。例えば、第２のユーザは、レストランを料理の種類により識別するエージェントのみを含んだレストランアシスタントに、ロケーションフィルタリングエージェントを追加できる。ある実施形態では、第２のユーザは、新しく修正されたアシスタントにより実行される報告タスクごとに課金をし、それを登録して公開する。元のデザイナはその結果得られる収益を分配にあずかってもよい。
【００６２】
このように、ユーザ指図セマンティックネットワーキングをコンピュータ化したエージェント、典型的には多数の単純なエージェントと組み合わせ、ユーザとエージェントがセマンティックネットワークとインターラクトし、ユーザは明示的かつ直接的にエージェントを制御する必要がない新しい方法とシステムを示したことが分かるであろう。
【００６３】
本発明の上記の実施形態は、多くの方法で実施できる。例えば、実施形態は、ハードウェア、ソフトウェア、又はこれらの組合せを用いて実施できる。一実施形態又はその要素をソフトウェアで実施した場合、ソフトウェアコードは、１つのコンピュータに設けられているか、複数のコンピュータ間に分散しているかに係わらず、任意の好適なプロセッサ又はプロセッサの集まりで実行できる。言うまでもなく、上記の機能を実行する任意のコンポーネント又はコンポーネントの集まりは、上記の機能を制御する１つ以上のコントローラと見なすことができる。１つ以上のコントローラは、専用ハードウェア、上記の機能を実行するマイクロコード又はソフトウェアを用いてプログラムされた汎用ハードウェア（例えば、１つ以上のプロセッサ）などを用いて、多くの方法で実施できる。
【００６４】
この点に関して、言うまでもなく、本発明の様々な実施形態の実施は、１つ以上のコンピュータその他のプロセッサにより実行された時に、本発明の様々な実施形態及びその要素の上記の機能を実行する、１つ以上のコンピュータプログラム（すなわち、複数の命令）でエンコードされた、少なくとも１つの有体の、非一時的なコンピュータ読み取り可能記憶媒体（例えば、コンピュータメモリ、フロッピーディスク（登録商標）、コンパクトディスク、光ディスク、磁気テープ、フラッシュメモリ、フィールドプログラマブルゲートアレイ中の回路構成、その他の半導体デバイスなど）を含む。コンピュータ読み取り可能記憶媒体は、それに保存されたプログラムが、ここに説明する本発明の様々な態様を実施する任意のコンピュータ資源にロードできるように、持ち運び可能であってもよい。また、言うまでもなく、実行時に上記の機能を実行するコンピュータプログラムと言っても、ホストコンピュータ上で動くアプリケーションプログラムに限定されるものではない。むしろ、コンピュータプログラムとの用語は、ここでは、プロセッサを本発明の上記の態様を実施するようにプログラムするのに利用できる任意のタイプのコンピュータコード（例えば、ソフトウェアやマイクロコード）を指す広い意味で使っている。ここに説明する実施形態のセマンティックネットワーク要素は、１つ以上の非一時的なコンピュータ読み取り可能記憶媒体の１つ以上のデータ構造を有する。この媒体は、上記の１つ以上のコンピュータプログラムでエンコードされたものと同じ記憶媒体でも異なるものでもよい。
【００６５】
エンドユーザアプリケーションは、クライアントPC、ラップトップ、タブレット、モバイルデバイス、ＰＤＡ、又は関連コンピューティングシステムにあってもよい。さらに、ある実施形態は、これらのコンピューティングシステム上のウェブブラウザやアプリケーション（apps）などのネイティブアプリケーションを活用してもよい。
【００６６】
図６は、本開示の様々な発明態様を実施できるコンピュータ１１００を示す。コンピュータ１１００は、プロセッサ又は処理ユニット１１０１と、揮発性及び／又は不揮発性メモリを含むメモリ１１０２を含む。コンピュータ１１００は、システムメモリ１１０２に加え、記憶部１１０５（例えば、１つ以上のディスクドライブ）も含む。メモリ１１０２及び／又は記憶部１１０５は、処理ユニット１１０１にここに説明する機能のいずれかを実行させるようにプログラムする、１つ以上のコンピュータ実行可能命令を格納している。記憶部１１０５は、任意的に、必要に応じて１つ以上のデータセットを格納していてもよい。
【００６７】
ここでコンピュータと言うとき、プログラムされたプロセッサを有する任意のデバイスを含み、ラックマウントコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、又は一般的にはコンピュータと見なされない多くのデバイスであって、プログラムされたプロセッサを含むものが含まれる。
【００６８】
一例のコンピュータ１１００は、図６に示したデバイス１１０６と１１０７のように、１つ以上の入力デバイス及び／又は出力デバイスを有する。これらのデバイスを用いて、なかんずく、ユーザインタフェースを提示する。ユーザインタフェースを提供するのに用いることができる出力デバイスの例には、出力の視覚的提示のためのプリンタやディスプレイ、及び出力の聴覚的提示のためのスピーカその他の発音デバイスが含まれる。ユーザインタフェースに用いることができる入力デバイスの例には、キーボードや、マウス、タッチパッド、デジタル化タブレットなどのポインティングデバイスが含まれる。他の例として、コンピュータは、音声認識により又はその他の可聴フォーマットで入力情報を受け取る。
【００６９】
図６に示したように、コンピュータ１１００は、様々なネットワーク（例えば、ネットワーク１１２０）を介して通信を可能とする１つ以上のネットワークインタフェース（例えば、ネットワークインタフェース１１１０）も含む。ネットワークの例には、ローカルエリアネットワークや、エンタープライズネットワーク及びインターネットなどのワイドエリアネットワークを含む。かかるネットワークは、好適な技術に基づき、好適なプロトコルにより動作し、無線ネットワーク、有線ネットワーク、又は光ファイバーネットワークが含まれる。
【００７０】
リファレンスＡ：参照誘導データ探索の方法と装置
サーチエンジンやデータベース管理システムなどのデータ探索システムは、多量の情報を管理する。結果として、（例えば、一組のキーワードの形式の）サーチクエリに応じてユーザの関心情報を見つけることは困難である。
【００７１】
サーチに対する従来のアプローチは、関心情報の発見の負担をユーザにシフトすることが多い。例えば、すべての潜在的に関連する結果を、サーチクエリに応じて、ユーザに提示する。その後、ユーザは、最も関心のある情報を見つけるために、これらの結果を手作業で調べて、及び／又はランク付けしなければならない。潜在的に関連のある結果の数が多い場合、こういう場合が多いのであるが、ユーザは困ってしまい、探している情報を見つけられないかも知れない。
【００７２】
この問題を解決する従来の方法は、ユーザの嗜好をサーチプロセスに組み込むことである。ユーザの嗜好にしたがってサーチ結果を提示することにより、ユーザが探している情報を見つける役に立つ。しかし、ユーザの嗜好を指定する従来のアプローチは、ユーザの嗜好が指定される方法を非常に制限してしまう。
【００７３】
例えば、多くのサーチサービスに使われており、図７に示したデータ探索モデルを考える。クエリインタフェース１２を用いて、キーワード及び／又は属性値の形式のクエリ述語（例えば、「トヨタの中古」で価格が［＄２０００−＄５０００］）を収集する。クエリ結果は、メジャーソート／マイナーソートとして１つ以上の属性の値でソートされる（例えば、価格の次にレーティングで並べられ）。ユーザは、ソートされたクエリアンサーをスキャンし（１６）、関心アイテムを見つけ、クエリ述語をリファインし、探索サイクルを繰り返す（１８）。この「クエリ、ソート、そしてスキャン」モデルは、嗜好仕様の柔軟性を制約し、次の例でハイライトしたように、融通の利かないデータ探索方式になってしまう。
【００７４】
例１
エミィはカメラを買おうとオンラインカタログをサーチしている。エミィは、色が好ましくはシルバーで、黒やグレイではなく、レビューに「高品質」とのキーワードが含まれている、手頃な価格のカメラを探している。エミィは倹約家であり、第１の問題は価格パフォーマンスを満たすことであり、その次に色とレビューについての好みを満たすことである。
【００７５】
図７のデータ探索モデルにより、エミィは、価格の昇順に結果をソートできる。エミィは、結果をスキャンして、色を比較し、レビューを調べ、欲しいカメラを見つける必要がある。エミィがサーチ結果を探索するためにたどる経路は、主に彼女の価格嗜好によって決まるものであり、一方その他の嗜好はエミィの努力により探索タスクに組み入れられている。これにより、彼女の要求によく一致したアイテムを見つけられる可能性が制限される。
【００７６】
ユーザの嗜好を指定する従来のアプローチには、異なるタイプの嗜好を同時に支援しない点に加えて、その他の多くの欠点もある。例えば、嗜好仕様は互いに一貫性がない。典型例は、１次嗜好の中の嗜好にサイクルがあり（価格やブランドに基づきある自動車を他の自動車より好むようなアイテムの属性における嗜好）、これは嗜好の非移行性（non-transitivity）を示唆する。例えば、あるユーザは、トヨタよりホンダが好ましく、日産よりトヨタが好ましく、ホンダより日産が好ましいと言う場合がある。１次嗜好に一貫性があったとしても、２次嗜好（ブランド嗜好などの１次嗜好中の嗜好は、価格嗜好よりも重要である）に別の問題がある場合がある。例えば、一組の部分的順序の優先的合成によっては、一般的に、結果として得られる順序に移行特性を維持できない。データ探索の従来システムは、嗜好仕様に一貫性が無いと、サーチ結果をランク付けできない。
【００７７】
従来のデータ探索システムにおける嗜好の不適切な組み込みは、これらのシステムが異なるタイプの嗜好を組み込めないことに少なくとも部分的には起因する。例えば、上記の例において、嗜好は、全価格での順序（「全順序」嗜好）、色の間の順序（「部分順序」嗜好）、レビュー中に「高品質」との言葉があることによるブーリアン述語、及び他の嗜好より価格が重要であることの表示を含む。
【００７８】
他のタイプの嗜好を指定することが有用である他の状況は、ユーザが一ドメインについての大量のナレッジを有しているため、そのドメインにおける情報に対してユーザが嗜好を有している状況である。かかる正確な嗜好は、例えば１つ以上のスコアリング関数の形式で、指定され得る。しかし、同じユーザは、他のドメインについて大量のナレッジを有していないため、他のドメインの情報に対して不正確な嗜好を有することもある。この場合、嗜好は、例えば属性値の１つ以上の部分的順序の形式で、指定され得る。以下の例２に示すように、ユーザが両タイプの嗜好（すなわち、スコアリング関数の使用及び部分的順序の使用）を指定する必要がある場合が多い。
【００７９】
例２
アリスは買う自動車をサーチしている。アリスは、スポーツカーに関する嗜好を有し、ＳＵＶに関する嗜好はもっとゆるい。アリスはデータ探索システムにスポーツカーをランキングするスコアリング関数と、SUVの嗜好をエンコードする一組の部分的順序とを与える。アリスは、彼女の嗜好によってランキングされたレポート結果を期待している。
【００８０】
異なる嗜好タイプを統合し、ユーザ指定の嗜好により、ユーザクエリに応じてサーチ結果をランキングできるデータ探索システムは、従来のアプローチの上記の欠点のいくつかを解決できる。しかし、すべての実施形態がこれらの欠点のすべてを解決できるのではなく、ある実施形態はこれらの欠点のどれも解決しない。このように、言うまでもなく、本発明の実施形態は、これらの従来のアプローチの上記の欠点のすべて又はどれかを解決するものに限定されない。
【００８１】
したがって、ある実施形態では、アイテム間の異なるタイプのユーザ嗜好を指定するための嗜好言語を設ける。データ探索システムは、ユーザが嗜好言語を用いて嗜好を指定するのを支援する。指定された嗜好を用いて、一般嗜好モデルを構成し、次にそれを用いて、ユーザの嗜好に応じてアイテムのランキングをする。
【００８２】
アイテムは、どんなものであってもユーザが嗜好を示すアイテムであればよい。ある例では、アイテムは生産され、販売され、及び／又は購入されたどんなアイテムであってもよい。例えば、アイテムは自動車や航空券でもよい。ユーザ（例えば、コンシューマ）は、ある自動車よりも別の自動車に対する嗜好を有し、及び／又はある航空券より別の航空券を好むことがある。ある例では、アイテムは情報を含む。ユーザは、そのアイテムが含んでいる情報に少なくとも部分的に基づいて、あるアイテムよりも別のアイテムを好むかも知れない。例えば、コンテンツ（例えば、映画、音楽、画像、ウェブページ、テキスト、サウンドなど）をサーチしている時に、ユーザはあるコンテンツより他のコンテンツを好むかも知れない。例えば、あるユーザは、自転車に関する情報を含むウェブページよりも、自動車に関する情報を含むウェブページを見ることを好む。
【００８３】
あるアイテムは、１つ以上の属性を有し、又は関連付けられている。アイテムの属性は、そのアイテムに関連し、そのアイテムの特徴である。アイテムの属性は、そのアイテムを記述する特徴である。例えば、あるアイテムが購入したものである場合、そのアイテムの一属性はそのアイテムに関連する価格である。アイテムの属性は、そのアイテムを識別する特徴である。例えば、あるアイテムの特徴はそのアイテムの識別子（例えば、名称、シリアル番号、モデル番号）である。
【００８４】
属性は数値属性であってもよく、カテゴリー分けされた属性であってもよい。数値属性は１つ以上の値を有する。例えば、ある数値属性は、ある数字（例えば、５）であり、又はある範囲の値（例えば、１乃至１０００）である。カテゴリー分けされた属性も１つ以上の値を有する。例えば、カテゴリー「色」のカテゴリー分けされた値は、ある色（例えば、赤）又は一組の色（例えば、｛「赤」、「緑」｝である。しかし、言うまでもなく、属性値は数及び／又はカテゴリーには限定されず、他のどんなタイプの値であってもよい。例えば、値は英字のストリングや英数字のストリングである。
【００８５】
あるアイテムは、それに関連する１つ以上の属性の値を有する１つ以上のチュープル（tuple）によりあらわされる。ある場合には、アイテムを表すチュープルは、そのアイテムに関連する各属性の値を有する。他の場合には、アイテムを表すチュープルは、そのアイテムに関連する属性の一部のみの値を有する。
【００８６】
図８は、一組のアイテムの例を示す。各アイテムは、それの属性の値を有するチュープル（tuple）により表されている。図８に示した例では、各アイテムは自動車であり、６つの属性、すなわち「ＩＤ」、「メーカ」、「モデル」、「色」、「価格」、「デポジット」に関連付けられている。この例では、すべてのアイテムが同じ属性を有しているが、これは本発明の限定ではない。異なるアイテムは互いに異なる属性を有してもよく、ある属性は未知の値であってもよい。各アイテムは属性値のチュープル（すなわち、集合）により表される。したがって、第１のアイテムは第１の組の属性値により示される特徴を有する。例えば、第１のアイテムは、図８に示した表の第１行のチュープルにより洗わされる。図示したように、この第１のアイテムは、識別子「ｔ１」で識別される＄１８００の赤のホンダシビックである。この自動車を購入するには＄５００のデポジットが必要である。
【００８７】
ユーザは、一組のアイテム中、あるアイテムより別のアイテムに対する嗜好を示す。ユーザの嗜好は任意の好適なタイプであり、１次のユーザ嗜好、２次のユーザ嗜好、さらに高次のユーザ嗜好であり得る。
【００８８】
１次の嗜好は、アイテムの属性に関連する嗜好である。１次の嗜好はアイテムの属性の値に基づく。例えば、１次の嗜好は、あるアイテムの他のアイテムに対する、その２つのアイテムのもう１つの属性の値に基づく嗜好を表す。例えば、１次嗜好は、（属性「価格」の値である）価格が低いアイテムが、価格が高いアイテムより好まれることを示す。他の例では、１次の嗜好は、（属性「色」の値）赤いアイテム（例えば、自動車）が青いアイテムより好まれることを示す。
【００８９】
２次の嗜好は、１次の嗜好にわたる嗜好である。２次の嗜好は、どの１次嗜好がユーザにとってより重要かを示す。例えば、１次嗜好Ａは、ある属性（例えば、「価格」）の値に基づき、１次嗜好Ｂは、他の属性（例えば、「色」）の値に基づく。２次の嗜好は、１次嗜好Ａより１次嗜好Ｂの方が好ましい（すなわち、価格より色が重要である）ことを示す。
【００９０】
異なる多数のタイプの１次嗜好と２次嗜好があり、これらの嗜好のタイプは、第１と第２の嗜好のその他の側面とともに、セクションＩＩとセクションＩＩＩでそれぞれより詳しく説明する。
【００９１】
データ探索システムは、データ、情報、又はナレッジを探索する任意のシステムである。データ探索システムによりユーザはシステムにクエリをすることができる。例えば、データ探索システムは、インターネットサーチエンジンやドメインスペシフィックサーチエンジン（例えば、会社や機関のイントラネットなどの特定の情報ドメイン、又はある主題の情報リポジトリをサーチするように作成されたサーチエンジン）などのサーチエンジンである。他の例では、データ探索システムは、ユーザクエリができるデータベースシステムである。
【００９２】
ユーザによりデータ探索システムに入力されるクエリは、いかなるタイプのクエリであってもよい。例えば、クエリは、ユーザが求めているものを示す１つ以上のキーワードである。ある場合には、クエリはユーザ嗜好である。しかし、言うまでもなく、ユーザ嗜好はユーザクエリとは別に、及び／又は独立に、指定されてもよい。例えば、ユーザは、複数のユーザクエリに当てはまる嗜好を指定できる。指定される嗜好は、１次及び／又は２次のユーザ嗜好など、いかなる好適なタイプの嗜好であってもよい。
【００９３】
ユーザが指定したい嗜好のタイプにかかわらず、データ探索システムは、ユーザが嗜好を指定するのを支援する。データ探索システムは、例えば、ユーザが嗜好言語を用いて嗜好を指定するのを支援する。データ探索システムが、ユーザが嗜好を指定するのをいかに支援するかに関するアプローチ例は、セクションＩと以下のＶＩにさらに詳しく説明する。
【００９４】
（ユーザが指定したクエリ又はその他の好適なソースから）ユーザ指定嗜好が得られると、これらの嗜好から嗜好モデルが構成される。嗜好モデルは、異なるタイプの嗜好から構成してもよく、異なるタイプの１次嗜好及び／又は異なるタイプの２次嗜好から構成してもよい。
【００９５】
嗜好モデルは、嗜好モデルをエンコードするデータ構造により表される。データ構造は、嗜好モデルを表すのに必要な任意のデータを有し、例えば、嗜好モデルに関連する任意のパラメータを有する。
【００９６】
嗜好モデルをエンコードしているデータ構造は、任意の有体のコンピュータ読み取り可能記憶媒体に格納できる。コンピュータ読み取り可能記憶媒体は、任意の好適なコンピュータ読み取り可能記憶媒体であり、そのデータ構造によりエンコードされた嗜好モデルを用いる任意の物理的コンピューティングデバイスによりアクセスできる。
【００９７】
ある実施形態では、嗜好モデルは、グラフベースの嗜好モデルであり、嗜好モデルをエンコードしたデータ構造は、グラフベースの嗜好モデルを特徴付ける、嗜好グラフと呼ばれるグラフをエンコードする。嗜好グラフは、一組のノード（頂点）と、その一組のノード中のノードを接続する一組のエッジとを有する。エッジは有向エッジでも無向エッジでもよい。したがって、嗜好グラフをエンコードしたデータ構造は、そのグラフの頂点とエッジをエンコードすることにより、その嗜好グラフをエンコードする。グラフをエンコードする多数のデータ構造が、本技術分野では知られており、嗜好グラフをエンコードするのに使うことができる。本発明はこの点で限定されていないからである。
【００９８】
ある実施形態では、グラフのノードはアイテムに関連付けられる。例えば、グラフのノードは、アイテムを表すチュープルに関連付けられる。グラフは、クエリ中の１つ以上のキーワードに関するアイテムを表す。例えば、一組のアイテムが、ユーザが提供したクエリに応じて選択される。
【００９９】
あるアイテムの、他のアイテムに対する１次嗜好は、グラフ中のエッジとして表され、チュープルに関連するノードを接続するエッジは２つのアイテムに関連している。重みがグラフの各ノードに関連付けられ、そのエッジの終点のノードの１つに対する嗜好の程度を示す。重みは、１次嗜好及び／又は２次嗜好に基づき計算できる。グラフベース嗜好モデルの態様は、かかる嗜好モデルがユーザ指定嗜好からいかに構成できるかを含み、以下のセクションＩＶでより詳細に説明する。
【０１００】
嗜好モデルを用いて、一組のアイテム中のアイテムのランキングを求める。例えば、グラフベースの嗜好モデルを用いて、かかるランキングを構成する。グラフベースの嗜好モデルを用いて、多数の任意の方法で、かかるランキングを構成する。例えば、完全有向グラフがグラフベース嗜好モデルから得られ、アイテムのランキングが完全有向グラフに基づき得られる。他の一例として、マルコフ連鎖ベースのアルゴリズムをグラフベース嗜好モデルに適用して、アイテムのランキングを求める。一組のアイテム中のアイテムのランキングを求めるこれらの及びその他のアプローチは、以下のセクションＶにさらに詳しく説明する。
【０１０１】
言うまでもなく、嗜好グラフは便利な抽象化であり、ユーザ嗜好に関する推論にとって役に立つが、実際には、嗜好グラフは、その嗜好グラフをエンコードしたデータ構造を介して物理的システムで実施される。同様に、以下に説明する多くの構成（例えば、関係、スコープ、スコープコンパレータなど）は、コンピュータサイエンスなど様々な分野で使われる便利な抽象化であるが、各構成は、実際には、その構成を特徴付けるデータを表すデータ構造により、及び／又はその構成に関連した機能を実行するプロセッサ実施可能命令により実現される。かかるデータ構造とプロセッサ実施可能命令は、任意の好適な有体のコンピュータ読み取り可能記憶媒体上にエンコードできる。
【０１０２】
したがって、読みやすさのため、（例えば、グラフ、関係、スコープ、スコープコンパレータなどの）構成は、その構成をエンコーディングしたデータ構造、及び／又はプロセッサにより実行された時、その構成に関連する機能を実行するプロセッサ実行可能命令を指す。かかるデータ構造やプロセッサ実行可能命令を毎回明示的に言うのは面倒だからである。
【０１０３】
また、言うまでもなく、本発明の上記の実施形態は、多くの方法で実施できる。例えば、実施形態は、ハードウェア、ソフトウェア、又はこれらの組合せを用いて実施できる。ソフトウェアで実施した場合、ソフトウェアコードは、格納されたプログラム命令であって、１つのコンピュータに設けられていようが、複数のコンピュータに分散していようが、任意の好適なプロセッサ又はプロセッサの集まり（例えば、１つ又は複数のマイクロプロセッサ）で実行できるプログラム命令として実施できる。
【０１０４】
プログラム命令を有するソフトウェアモジュールは、実施形態に応じて任意の多数のタスクを実行するように設けられる。例えば、嗜好モデルを構成する１つまたは複数のソフトウェアモジュールが設けられる。他の例として、嗜好モデル（を表すデータ構造）に基づく一組のアイテムのランキングを行うソフトウェアモジュールを設ける。他の一例として、データ探索システムに関連する多くの機能を実施する命令を有するソフトウェアモジュールを設ける。しかし、言うまでもなく、上記の例は限定するものではなく、上記の例に加え、又はその替わりに、いかなる機能を実行するソフトウェアモジュールを提供してもよい。
【０１０５】
Ｉ．設計目標
ある実施形態では、ユーザ嗜好を利用するデータ探索システムは、以下の設計目標の一部又は全部を反映する：
−ガイダンス：システムはユーザを支援してユーザの嗜好を定式化させる。システムはインターラクティブ性能管理を支援する。例えば、システムは、ユーザに情報を提供し、ユーザが嗜好を指定し及び／又は修正するのに役に立つ。一具体例として、システムは、ユーザの嗜好をいかに修正するかに関する情報を提供し、ユーザのサーチの範囲を広く又は狭くする。他の一具体例として、システムは、ユーザに提示されたアイテムのランキングが修正されるように、ユーザの嗜好をいかに修正するかに関する情報を提供する。しかし、これらは単なる例であり、システムはユーザを支援して、セクションＶＩにより詳しく説明するように、いろいろな方法でユーザの嗜好を定式化する。
−柔軟性：アイテムの任意の一部に対する異なるタイプの嗜好の仕様をサポートする。これは「コンテクスト」と呼ばれることもある。システムは、嗜好の自然な記述を受け入れ、これらの記述を嗜好構成にマッピングする。
−起源：システムは、生成された結果を入力された嗜好に関係づけることにより、いかにサーチ結果を生成し、ランキングするかの正当性を提供できる。
【０１０６】
図９は、上記の設計目標を反映する嗜好をモデル化するプロセス例を示すフローチャートである。図９に示したように、データ探索システムは、１人以上のユーザからクエリを受け取るシステムである。例えば、このシステムは、データベースシステムやサーチエンジンであり、クエリは１つ以上のキーワードを含む。
【０１０７】
ガイダンス目標に向けて、システムはユーザを支援して嗜好を指定させる。ある実施形態では、かかる支援は、データ探索をガイドするのに用いられる様相の形式で、事前に計算されたサマリーに基づく。各様相は、ある数字に関連付けられ、その数字は、ユーザに、予想される結果の数に関する推定を提供する。したがって、様相により、ユーザは、基礎となる一組のアイテム及び／又はドメインと、サーチ結果が嗜好のチューニングによりいかに影響を受けるかとに関する素早い粗いビューを得ることができる。
【０１０８】
例えば、システムは、複数のチュープル（各チュープルは１つ以上の属性の１つ以上の値を有することを思い出して欲しい）を格納するように構成されたメモリを有し、ユーザから属性の所望の値の範囲を受け取る。それに応じて、システムは、値がその範囲内にある属性の値を含むチュープルの数を示す整数を出力する。一例として、カテゴリー化された属性の場合、様相（facet）は可能な属性値（例えば、「色＝赤」）を有し；数値属性の場合、様相は可能な値の範囲を有する（例えば、「［＄１０００乃至＄５０００］の範囲の価格」）。さらに、ユーザは、複数の属性に対してブーリアン条件として、カスタム様相（例えば、「色＝赤ＡＮＤ価格＜＄５０００」）を定義できる。システムは、これらの様相の夫々に数字を関連付ける。その数字は、これらの様相と一貫性のある期待されるチュープルの数を示す。
【０１０９】
柔軟性目標に向けて、システムは、コンテクスト化した嗜好の概念を受け入れる。この場合、ユーザは、アイテムの異なるサブセット（コンテクスト）に対して、異なる嗜好仕様を割り当てられる。ユーザは、所定の様相を用いて、又はカスタム様相を定義して、コンテクストを定義できる。セクションＩＩとＩＩＩで説明するように、ユーザは、コンテクスト内で及びコンテクストにわたり、１次嗜好と２次嗜好を表す柔軟性を有する。また、コンテクスト化した嗜好は、ユーザのプロファイルの一部であり、ここに開示した、また２００９年９月８日に出願した米国非仮出願第１２／５５５，２９３号（発明の名称「コンシューマにより提供されたコンテクストを用いた同期メッセージング」）に開示された手法のどれかにより実現できる。この文献はここに参照援用する。このように、ユーザの要求に基づき、ロードされ、保存され、及び／又はリファインされる。
【０１１０】
起源目標に向けて、図９に示したデータ探索システムは、入力された嗜好のうちどの嗜好が、最終結果のランキングでアイテムの各ペアの相対的な順序に影響するかに関する情報を維持する。この機能は、異なるシナリオにおける嗜好の分析とリファインメントに有用である。例には、結果のランキングに独占的な効果を有する嗜好構成の発見、ある嗜好構成の影響の増減、ある嗜好構成の削除の効果の理解が含まれる。
【０１１１】
データ探索システムがユーザを支援して、嗜好を入力させる別の方法は、セクションＶＩで説明する。
【０１１２】
II.１次嗜好
ある実施形態では、嗜好言語は異なる粒度レベルでのペアの嗜好のキャプチャに基づく。アイテムの記述が関係モデルに続き、各アイテムはチュープルとして表される。嗜好は、既知のスキーマを有する関係Ｒに対して入れられる。
【０１１３】
我々の第１の構成を用いて、１次嗜好を表すコンテクストを定義する。
【０１１４】
定義１［スコープ］：スコープＲｉはＲ中のチュープルの任意のカラでないサブセットである。
【０１１５】
スコープは、すべての可能なチュープルの空間を、嗜好関係を構成するのに関心のあるチュープルのサブセットに制限するブーリアンメンバーシップ特性を定義する。かかるメンバーシップ特性は、Ｒに対して提起されたＳＱＬクエリを用いて定義される。例えば、図１０は、図８に示した関係「自動車」中の６つの異なるスコープＲ１．．．Ｒ６を示す。ここで、スコープはＳＱＬクエリを用いて定義されている。しかし、言うまでもなく、かかるメンバーシップ特性は、他の多くの方法を用いて定義できる。一例として、ＳＱＬ以外のデータベース言語を用いてかかるメンバーシップ特性を定義してもよい。他の一例として、メンバーシップ特性は、一組の変数を用いて定義でき、データベース言語は必要ない。
【０１１６】
図１０に示したように、スコープは交差しても良い。このように、関係Ｒのチュープルは、ゼロ個、１個、２個、またはそれ以上のスコープに属す。どのスコープにも属さないチュープルは、嗜好仕様の点で面白くない。よって、明確性のため、今後のすべての説明で、チュープルは少なくとも１つのスコープに属するものとする。
【０１１７】
定義２［スコープコンパレータ］：ＲｉとＲｊをＲ中の２つのスコープとする。スコープｋ音波レータｆｉｊは、区別できるチュープルのペア（１つはＲｉから、もう１つはＲｊから）を取る関数であり、（Ｒｉのチュープルが好ましい場合）例えば１の第１の値を返し、（Ｒｊのチュープルが好ましい場合）例えば例えば−１の第２の値を返し、又は（嗜好が無い場合）ヌル値「⊥」を取る。
【０１１８】
スコープコンパレータは、１次嗜好を定義する嗜好言語構成である。ある場合には、スコープコンパレータはユーザにより定義される。しかし、他の例では、スコープコンパレータはコンピュータにより自動的に定義される。さらに、他の実施形態では、スコープコンパレータは、手動及び自動の手法の組合せにより定義される。
【０１１９】
スコープコンパレータに対する一般的インタフェースは、２つのチュープルを受け取り、あるチュープルの他のチュープルに対する嗜好か、又は嗜好がないかを返す。チュープルｔｉごチュープルｔｊより常に好む時、ｔｉはｔｊより優位に立つと言い、
【外１】
【０１２０】
0005921536.tif 000002
と記す。
【０１２１】
図１１は、図１０に示したスコープに定義された５つの異なるスコープコンパレータを示す。図１１において、スコープコンパレータｆ３，４とｆ１，５は無条件である（すなわち、スコープ定義によりキャプチャされた条件を越えるいかなる条件もテストせずに、１次嗜好を生成する）。他方、スコープコンパレータｆ１，２、Ｆ５，６、ｆ６，２は、条件付きである（すなわち、ある論理により条件付けられた嗜好関係を生成する）。
【０１２２】
アルゴリズム１  スコアベース嗜好
【０１２３】
【数１】
0005921536.tif 000003
条件付きスコープコンパレータにより、スコープ定義及び／又はコンパレータロジック（例えば、ｆ６，２は価格とメーカーの属性における合成嗜好を定義する）で与えられた複数の属性にわたる合成嗜好を定義できる。
【０１２４】
スコープ定義と嗜好コンパレータの一般性により、異なるタイプの嗜好を、異なるセマンティックによりエンコードできる。以下、上記の言語構成を用いて、異なるタイプの嗜好をエンコードするテンプレートを与える。
【０１２５】
テンプレート１［スコアベース嗜好］
嗜好は、スコアリング関数Ｓを用いて定義される。この場合、スコアがよいチュープルが好まれる。一般性を失わず、限定をせずに、スコアが高い方がよいと仮定し、アルゴリズム１により、テンプレートを用いて、スコアベースの嗜好を指定できる。
【０１２６】
（関係Ｒ全体でもよい）スコアＲｉの全順序を、アルゴリズム１のテンプレートを用いてコンパレータｆｉ，ｊを定義することにより、エンコードできる。
【０１２７】
テンプレート２［部分順序嗜好］属性ｘに対して、Ｐｘをｘのドメイン上で定義された部分順序であるとする。部分順序は、ｘのドメインの値ｖｉとｖｊの集合Ｐｘ＝｛（ｖｉ＞ｖｊ）｝として表せる。Ｐｘは：
【外２】
【０１２８】
0005921536.tif 000004
部分順序ベース嗜好は、アルゴリズム２により与えられるテンプレートを用いてエンコードできる。
【０１２９】
テンプレート３［スカイライン嗜好］
一組の属性Ａがあるとして、空でないサブセットＸ⊆Ａ、ここで∀ｘ∈Ｘ：ｔｉ，ｘがｔｊ，ｘより好まれる、があれば、チュープルｔｊよりチュープルｔｉが好まれる。一方、他の属性ｘ′∈Ａ−Ｘについて、ｔｉ，ｘ′とｔｊ，ｘ′には嗜好はない。  スカイライン嗜好は、アルゴリズム３により与えられるテンプレートに示したようにエンコードされる。
アルゴリズム２  部分順序嗜好
【０１３０】
【数２】
0005921536.tif 000005
アルゴリズム３  スカイライン嗜好
【０１３１】
【数３】
0005921536.tif 000006
テンプレート４［同時分析嗜好］一組の属性Ａが与えられたとき、同時分析により、Ａの属性値間の嗜好を同時にエンコードされる。これは、Ａ中の値の各組合せを一意的なランクにマッピングする関数ＣＡとして表せる。関数ＣＡはＡ中の値のすべての可能な組合せのドメインの一部分である。よって、ＣＡ下でランクにマッピングされないＡの値の組合せがある。ＣＡに基づく同時分析嗜好は、アルゴリズム４により与えられるテンプレートを用いて表される。
【０１３２】
次の例は、同時分析嗜好を指定し管理する一例である。
【０１３３】
例３：
自動車に関するアリスの嗜好は、図１２に示したように、属性ペア（メーカ、色）及び（メーカ、価格）により同時に表される。各セルの値は、属性値の各組合せに割り当てられたランクである。
【０１３４】
同時分析は、属性値の組合せに割り当てられるランクを用いて、各属性値の効用（部分価値）を求めるのに用いられる加算的効用モデルに基づく。目的は、属性値の効用の合計が与えられたランキングを再構成することである。図１２において、例えば、「ホンダ」には効用値４０が割り当てられ、「赤」には効用値５０が割り当てられている。よって、「ホンダ、赤」のスコアは９０であり、メーカ・色嗜好において割り当てられたランク１になる。効用値は回帰を用いて計算できる。例えば、線形回帰を用いて計算できる。留意点として、属性値とランクの組合せの間のマッピングはモデル化される。
【０１３５】
III.２次嗜好
２次嗜好を定義する主な言語構成は、嗜好順序（ＰＯｒｄｅｒ）であり、以下に定義する：
定義３［ＰＯｒｄｅｒ］：一組のスコープコンパレータFが与えられたとき、ＰＯｒｄｅｒはＦ中のコンパレータの置換である。
【０１３６】
ＰＯｒｄｅｒは、その相対的な重要性に基づくスコープコンパレータの順序を表す。ＰＯｒｄｅｒは、以下にセクションＩＶでより詳細に説明するように、２次嗜好のセマンティックに基づき、異なる１次嗜好の強さを定量化する。
【０１３７】
定義４［ＰＯｒｄｅｒプロジェクション］：Ａを、コンパレータＦのセットにより定義されたＰＯｒｄｅｒであるとする。Ｆ′⊂Ｆの場合、
【外３】
【０１３８】
0005921536.tif 000007
でＡにより順序付けられたＦ′のコンパレータの全順序を示す。すなわち、
【外４】
【０１３９】
0005921536.tif 000008
である。
【０１４０】
アルゴリズム４  同時分析嗜好
【０１４１】
【数４】
0005921536.tif 000009
例えば、ＰＯｒｄｅｒＡ＝＜ｆ１，ｆ２，ｆ３＞、コンパレータのサブセットＦ′＝｛ｆ１，ｆ３｝である場合、
【外５】
【０１４２】
0005921536.tif 000010
となる。
【０１４３】
ＰＯｒｄｅｒプロジェクションＡ′とすると、スコープコンパレータｆａ∈Ａ′に対して、ｆａ（ｔｉ，ｔｊ）＝１である場合、
【外６】
【０１４４】
0005921536.tif 000011
と言い、Ａ′により
【外７】
【０１４５】
0005921536.tif 000012
であり、ｆｂ（ｔｉ，ｔｊ）＝−１である場合、他のスコープコンパレータｆｂ∈Ａ′は無い。
【０１４６】
異なるタイプの２次嗜好をＰＯｒｄｅｒを用いてエンコードできる。
−優先順序付き嗜好合成この場合、２次嗜好は、コンパレータの全順序
【外８】
【０１４７】
0005921536.tif 000013
として定義される。これは、ｆｉに対応する１次嗜好がｆｉ＋１に対応する１次嗜好より重要であることの要求である。嗜好の優先順序付き合成は、Ｏにより与えられる同じコンパレータを有する単一のＰＯｒｄｅｒとして定式化される。
【０１４８】
−部分順序嗜好スコープコンパレータのセット上の部分順序ＰＯは、異なるスコープコンパレータの相対的重要性に関する部分的情報をエンコードする。ΩをＰＯと一貫性のあるコンパレータ順序とする。ここで、順序ωは、ω中の任意の２つのスコープコンパレータの相対的順序がＰＯと矛盾しないとき、ＰＯと一貫性がある。集合ΩはＰＯの線形延長の集合と呼ばれる。例えば、図１３は、４つのコンパレータについて定義された部分順序と、対応する線形延長の集合を示す。線形延長の集合は、ＰＯグラフに単純な反復アルゴリズムを用いて得られる。部分順序嗜好は、Ωにより与えられるＰＯｒｄｅｒの集合として定式化できる。
【０１４９】
−ペア嗜好：スコープコンパレータにおける一組のペア２次嗜好
【外９】
【０１５０】
0005921536.tif 000014
。ペア２次嗜好
【外１０】
【０１５１】
0005921536.tif 000015
は、ｆｉに対応する１次嗜好がｆｊに対応する１次嗜好より重要であるとの要求を表す。ペア２次嗜好ＰＷは、一組のＰＯｒｄｅｒ
【外１１】
【０１５２】
0005921536.tif 000016
として定式化できる。
【０１５３】
−パレート嗜好合成すべてのスコープコンパレータの重要性は等しい。少なくとも１つのスコープコンパレータが
【外１２】
【０１５４】
0005921536.tif 000017
であり、他のスコープコンパレータは
【外１３】
【０１５５】
0005921536.tif 000018
であるときに限って、１次嗜好
【外１４】
【０１５６】
0005921536.tif 000019
が作られる。パレート嗜好合成は、各ＰＯｒｄｅｒは単一コンパレータよりなる一組のシングルトンＰＯｒｄｅｒとして定式化される。
【０１５７】
−嗜好アグリゲーション：スコープコンパレータは嗜好関係に関する投票者として動作する。少なくとも１つのスコープコンパレータが
【外１５】
【０１５８】
0005921536.tif 000020
であるときに限って、１次嗜好
【外１６】
【０１５９】
0005921536.tif 000021
が作られる。嗜好合成は、各ＰＯｒｄｅｒは単一コンパレータよりなる一組のシングルトンＰＯｒｄｅｒとして定式化される。
【０１６０】
IV.編集
一組のスコープとスコープコンパレータがあるとき、嗜好グラフと呼ぶ、嗜好のグラフベース表現を求める。このセクションでは、与えられた一組のスコープとスコープコンパレータ（１次嗜好）を「編集」するアルゴリズムを説明する。嗜好グラフは形式的には次のように定義される：
定義５［嗜好グラフ］：有向グラフ（Ｖ，Ｅ）であり、ＶはＲにおける一組のチュープルであり、（ｔｉ，ｔｊ）に適用でき１を返す、又は（ｔｊ，ｔｉ）に適用可能であり−１を返す少なくとも１つのコンパレータがあるとき、エッジｅｉｊ∈Ｅはチュープルｔｉをチュープルｔｊに接続する。エッジｅｉｊのラベルは、ｌ（ｅｉｊ）と記し、ｔｉのｔｊに対する嗜好を誘導するコンパレータのセットである。
【０１６１】
編集アルゴリズムをアルゴリズム５で説明する。このアルゴリズムは、すべての入力スコープに含まれるチュープルの交わりを用いて、嗜好グラムのノードとも呼ばれる一組の頂点を構成する。言い換えると、嗜好グラフの各ノードは一チュープルに関連付けられている。したがって、嗜好グラフの各ノードは、一アイテムを表す。区別できるチュープルの各ペアに対して、適用可能なスコープコンパレータのセットを見つけ、グラフエッジとそのラベルの計算に用いる。したがって、嗜好グラフ中のエッジは、１次嗜好に対応し、そのエッジの端のノードにより表される２つのアイテムの一方のユーザ嗜好を示す。
【０１６２】
嗜好グラフのエッジは、有向エッジであり、そのエッジに関連する１次嗜好により示される好ましいデータアイテムと関連するノードに向いている。しかし、ある実施形態では、エッジは無向であり、エッジの端にあるノードのどちらが好ましいかの表示が別に設けられる。例えば、かかる表示は、負の重みが一方のノードに対する好みを示し、性の重みが他方のノードに対する好みを示す符号付き重みを用いて与えられる。
【０１６３】
図１４は、編集アルゴリズムの出力の例を示す。具体的に、図１４は、図１０を参照して説明した一組のスコープコンパレータ｛ｆ１，２、ｆ３，４、ｆ５，６、ｆ６，２、ｆ１，５｝から得た嗜好グラフを示す。各エッジは一組の支援コンパレータでラベル付けされている。例えば、エッジｅ２，６について、ｌ（ｅ２，６）＝｛ｆ１，２、ｆ６，２｝である。スコープコンパレータｆ１，２とｆ６，２によると、チュープルｔ２はチュープルｔ６より好まれるからである。
【０１６４】
スコープは交差し、任意のスコープコンパレータロジックが許容されるので、誘導される嗜好グラムはサイクリックグラフである。例えば、図中、ｆ６，２によるとｔ１はｔ６より好まれ、ｆ１，２によるとｔ６がｔ１より好まれるので、ｆ１−ｔ６サイクルがある。アルゴリズム５により嗜好グラフの構成は、グラフエッジの移行性を保証しない。例えば、図１４において、エッジｅ２，６とｅ６，１の存在は、エッジｅ２，１の存在を示すものではない。
【０１６５】
アルゴリズム５  嗜好編集
【０１６６】
【数５】
0005921536.tif 000022
嗜好グラフの構成と処理の計算複雑性は、チュープルの数の２乗である。嗜好グラフの表現力と実施のスケーラビリティとの間にはトレードオフの関係がある。しかし、ある実施形態では、嗜好は非常に「選択的」であり、そのため嗜好グラフは希薄である。
【０１６７】
嗜好グラフのサイズによるスケーラビリティ問題は、多くの方法で解決できる。一アプローチは、嗜好グラフの保存と管理がクラウド中の複数のノードにわたり分散しているクラウド環境における分散処理の利用である。例えば、セクションＶ．Ａで説明するランキングアルゴリズムは、クラウド環境における機能に容易に合わせられる。他のアプローチは、近似処理を行うことにより、または管理される嗜好に閾値を設けて、弱い嗜好を早期に切り捨てることにより、嗜好クエリ結果の精度を犠牲にして、嗜好グラフのサイズを削減することを含む。
【０１６８】
嗜好グラフにより、統一的なグラフィカル表現を用いて、異種のユーザ嗜好がエンコードされる。しかし、ある実施形態では、かかる表現を用いてクエリ結果のランキングを計算するには、嗜好の強さの追加的定量化が必要である。嗜好の強さは、１次嗜好と２次嗜好のセマンティックに基づき定量化され、嗜好グラフによりエンコードされた嗜好情報が保存される。嗜好の強さは、嗜好グラフのエッジの重みにより表される。
【０１６９】
嗜好グラフＧ（Ｖ，Ｅ）が与えられると、グラフエッジＥのセットはペアの１次嗜好を表す。具体的に、エッジｅｉｊは、１つ以上のスコープコンパレータにより、チュープルｔｊよりチュープルｔｉが嗜好されることを表す。ある例では、重みｗｉｊがエッジｅｉｊに関連付けられる。重みｗｉｊは、第２ノードより第１ノードが嗜好される程度を示す重みである。より強い嗜好はより大きい重みで示される。ある例では、重みは０以上１以下であり、重みｗｉｊとｗｊｉの和は１である。嗜好グラフにおいて接続されていない頂点は、その対応するチュープルが互いに嗜好の点で違いがないことを示す。
【０１７０】
ある実施形態では、重みの計算では、アイテムＡのアイテムＢに対する１次嗜好の数を、アイテムＡのすべての嗜好を（嗜好しないことも含め）示すすべての１次嗜好の数で割る。
【０１７１】
例えば、Ｆを、嗜好グラフに関連するすべてのスコープコンパレータの集合とする。Ａを、選択された２次嗜好のセマンティックによる、ＦのＰＯｒｄｅｒの集合とする。Ｆｉｊ＝ｌ（ｅｉｊ）∪ｌ（ｅｊｉ）とする。すなわち、Ｆｉｊは、チュープルｔｉとｔｊの間の嗜好関係を示すスコープコンパレータの集合である。Ａｉｊを、Ｆｉｊに基づくＡのＰＯｒｄｅｒの空でないプロジェクションのマルチセット（multiset）であるとする。
【外１７】
【０１７２】
0005921536.tif 000023
を、
【外１８】
【０１７３】
0005921536.tif 000024
であるＰＯｒｄｅｒプロジェクションの集合であるとし、同様に、
【外１９】
【０１７４】
0005921536.tif 000025
を、
【外２０】
【０１７５】
0005921536.tif 000026
であるＰＯｒｄｅｒプロジェクションの集合であるとする。すると、
【外２１】
【０１７６】
0005921536.tif 000027
となり、
【外２２】
【０１７７】
0005921536.tif 000028
は空である。重みｗｉｊは
【０１７８】
【数６】
0005921536.tif 000029
で計算できる。
【０１７９】
すなわち、ｗｉｊは、エッジ（ｔｉ，ｔｊ）に関するコンパレータに基づき計算されるＰＯｒｄｅｒプロジェクションの集合中、
【外２３】
【０１８０】
0005921536.tif 000030
であるＰＯｒｄｅｒプロジェクションの大きさに対応する。重みｗｊｉは同様に集合
【外２４】
【０１８１】
0005921536.tif 000031
を用いて定義される。ｗｉｊ＋ｗｊｉ＝１となる。パレート合成の場合、嗜好グラフには、２つのエッジｅｉｊとｅｊｉのうち多くても１つがある。そうでなければ、ｔｉとｔｊが比較できないからである。したがって、パレート合成では、エッジｅｊｉがある時はすねにグラフエッジｅｉｊは削除する。
【０１８２】
次に、２次嗜好の異なるセマンティックの下でいかに嗜好重みを計算するか例示する例を説明する。
【０１８３】
例４
図１５は、図１４の嗜好グラフに対応する、異なる２次嗜好のセマンティックスの下で作られた、３つの重み付け嗜好グラフを示す。２次嗜好のセマンティックスが異なるため、エッジ重みが異なり、及び／又は元の嗜好グラフの一部のエッジが削除される。
−優先順序付けしたコンパレータの下では、ｅ１，６は削除される。図示したコンパレータの優先順位に基づくと、
【外２５】
【０１８４】
0005921536.tif 000032
となるからである。
−部分的順序付けされたコンパレータの下では、ｗ２３＝ｗ３２＝．５である。関連するコンパレータ（ｔ２，ｔ３）の集合は｛ｆ５，６、ｆ１，５｝であり、与えられた部分的順序から４つのＰＯｒｄｅｒプロジェクション｛＜ｆ１，５、ｆ５，６＞、＜ｆ１，５、ｆ５，６＞、＜ｆ５，６、ｆ１，５＞、＜ｆ５，６、ｆ１，５＞｝となる。ここで、２つのＰＯｒｄｅｒプロジェクション＜ｆ５，６、ｆ１，５＞、＜ｆ５，６、ｆ１，５＞の下では
【外２６】
【０１８５】
0005921536.tif 000033
であり、他の２つのＰＯｒｄｅｒプロジェクション＜ｆ１，５、ｆ５，６＞、＜ｆ１，５、ｆ５，６＞の下では
【外２７】
【０１８６】
0005921536.tif 000034
である。
−ペア嗜好の下では、ｗ５，６＝０：３３である。＜ｆ６，２＞に基づき
【外２８】
【０１８７】
0005921536.tif 000035
だからである。＜ｆ６，２＞は３つのＰＯｒｄｅｒプロジェクション｛＜ｆ５，６＞、＜ｆ６，２＞、＜ｆ５，６＞｝のうちの１つである。
【０１８８】
V.ランキング
セクションＩＶで説明したグラフベースの嗜好モデルを用いて、一組のアイテム中のアイテムのランキング（全順序）を求める。これは多くの方法で行える。セクションＶ．Ａに説明するアプローチは、オーソリティベースランキングアルゴリズムに基づくランキングを求める。セクションＶ．Ｂに説明する他の一アプローチは、確率的アルゴリズムであり、グラフベース嗜好モデルから、トーナメントと呼ばれる一組の完全有向グラフを求め、その一組から少なくとも１つのトーナメントのランキングを計算することに基づく。
【０１８９】
Ａ．重要性フローランキング
アイテムの全順序（または、等価的に、これらのアイテムを表すチュープル）は、重み付けされた嗜好グラフによりエンコードされた嗜好重みを用いて、各チュープルの重要性の尺度を推定することにより求められる。ページランク重要性フローモデルに関する手法を用いてかかる重要性の尺度を計算できる。ページランクモデルでは、ランダムサーｆａがウェブページを訪問する頻度に基づき、そのウェブページにスコアが割り当てられる。ページはこのスコアによりランキングされる。直感的には、多くの重要なページにより参照（pointedto）されているページはやはり重要である。
【０１９０】
ページランク重要性フローモデルは、本来、アイテム間のバイナリ関係に基づきランキングを計算する必要がある問題に適している。嗜好の場合には、このモデルの適用は、他の多くの重要なアイテムより嗜好されるアイテムは重要であるとの考えに基づく。
【０１９１】
Ｇ＝（Ｖ，Ｅ）を支配的グラフ（すなわち、エッジｅｉｊが
【外２９】
【０１９２】
0005921536.tif 000036
を意味する有向グラフ）とし、Ｌ（ν）とＵ（ν）をそれぞれνにより支配されたノードのセット、及びνを支配するノードのセットとする。α∈［０，１］をダンピングファクタと呼ばれる実数とする。ページランクアルゴリズムは、本技術分野で知られているように、ノードνｉのページランクスコア、γｉと記す、を
【０１９３】
【数７】
0005921536.tif 000037
により計算する。
【０１９４】
ノードνのページランクスコアは、νにより支配されたすべてのノードｖ′のページランクスコアを合計し、ｖ′を支配しているノードの数で規格化することにより決まる。式（２）がマルコフ連鎖の静的分布に対応する場合、
【外３０】
【０１９５】
0005921536.tif 000038
であり、連鎖が削減できず（すなわち、支配的グラフが強く接続されている）、非周期的である場合、一意的な静的分布があることが知られている。入ってくるエッジを有さないノード（すなわち、他のノードにより支配されていないノード）は、マルコフ連鎖のシンクになり、連鎖が削除できなくなる。この問題は、シンクノードに自己ループを追加することにより、又はマルコフ連鎖にシンク状態から他のすべての状態への（一様な）遷移を追加することにより処理できる。ダンピング係数αは、各ノードは他のすべてのノードから到達できなければならないとの要求をキャプチャするものである。αの値は、グラフのエッジをたどるのをやめて、新しいランダムノードからマルコフ連鎖を開始する確率である。これは、グラフの他の部分へのエッジを有さないノード間のサイクルにトラップされることを避ける役に立つ。
【０１９６】
したがって、ある実施形態では、ページランクベースのアルゴリズムを用いて、重み付けした嗜好グラフから、アイテムの全順序を計算する。ここで、ページランクベースのアルゴリズムは、グラフに対して定義されたマルコフ連鎖の特徴に基づき、グラフから値を計算することに基づくアルゴリズムを指す。上記の重み付け嗜好グラフと、ページランクアルゴリズムが従来適用されるグラフとの間の違いは、重み付け嗜好グラフがエッジに関連する嗜好重みを有することである。嗜好重みは、ある状態から他の状態への遷移（フロー）の確率に、重み値によりバイアスをかける。対照的に従来の場合には、遷移は一様に定義される。
【０１９７】
ページランクベースアルゴリズムは次のように進行する。重み付け嗜好グラフの開始チュープルｔ０が与えられた場合、ランダムサーファーが、エッジ重みによりバイアスをかけられた、ｔ０を支配している一組のチュープルのうちの次のチュープルｔ１にジャンプする。直感的には、これは、チュープルが、（ある嗜好の点で）より望ましいチュープルにより常に置き換えられるプロセスに対応する。留意点として、チュープルへの訪問は、エッジの反対方向で行われる（ジャンプは支配されているチュープルから支配しているチュープルである）。よって、このプロセスにより、より頻繁に訪問されるチュープルは、訪問頻度が低いチュープルより望ましいと言える。チュープルをその訪問頻度によりランキング（ページランクベーススコア）すると、そのグローバルな望ましさに対応する順序を画定できる。
【０１９８】
重み付け嗜好グラフは、正方行列Ｍを用いて表される。ここで、各チュープルはＭの行と列に対応する。Ｅｊを、重み付け嗜好グラフにおけるチュープルｔｊに入るエッジのセットとする。エントリーＭ［ｉ，ｊ］は
【０１９９】
【数８】
0005921536.tif 000039
により計算できる。
【０２００】
よって、Ｍの各列のすべてのエントリーの和は、その列に対応するチュープルに入るエッジがない限り、１．０である。すべてのエントリーが非負であり、すべての列のエントリーの和が１．０である行列は、列確率行列と呼ばれる。確率行列は、静的分布が、我々がランキングする必要がある重要性尺度のセットであるマルコフ連鎖を画定する。連鎖の削除不能性を維持するため、シンク（嗜好グラフにおいて入ってくるエッジを有さないノード）を無くす必要がある。各シンクノードに重み１．０の自己ループを追加することにより、シンクの問題を処理する。
【０２０１】
Γをページランクスコアベクトルとする。そして、前の行列表示に基づき、ページランクスコアは式Γ＝Ｍ・Γを解くことにより得られる。これは、固有値１に対応するＭの固有ベクトルを見つけることと同じである。実際にページランクスコアの計算に用いられる解は、反復パワー法を用いるものである。ここで、最初に初期ベクトルΓ０を選択し、次に次のベクトルΓ１＝Ｍ・Γ０を求めて、Γを計算する。  このプロセスを繰り返し、繰り返しＴ−１において求めたベクトルΓＴ−１を用いて、繰り返しＴにおいてベクトルΓＴを生成する。収束について、各繰り返しＴにおいて、ΓＴのエントリーは合計が１．０になるよう規格化される。実際には、パワー法が収束するために必要な繰り返し回数は、好適であれば何回でもよい。例えば、数十ないし数百の繰り返しを使用できる。
【０２０２】
図１６は、図１５に示した優先順位付けしたコンパレータを有する重み付け嗜好グラフのページランク行列を示す。ｔ４が、入ってくるエッジが無いシンクノードである（すなわち、ｔ４は他に支配的チュープルがない）。したがって、ｔ４に、重み１．０の自己ループを追加する。これは行列のエントリーＭ［４，４］により表される。ダンピング係数αの典型的な値は、例えば０．１５であるが、０乃至０．５の間の任意の値でもよい。
【０２０３】
Ｂ．確率的ランキング
アイテムの全順序（またはトップランクのアイテム）は、嗜好モデルから求めた完全有向グラフから求められる。完全有向グラフ（トーナメントとしても知られる）からアイテムの全順序を計算することは、トーナメントの解を見つけることである。この問題は次のように言うことができる。集合に再帰的でない、非対称な完全バイナリ関係が与えられたとき、この集合の最大要素の集合を求めよ。トーナメントの解を求める方法の例としては、ケンドールスコアを計算し、コンドルセウィナーを見つける方法がある。
【０２０４】
しかし、言うまでもなく、セクションIVで説明した嗜好グラフは必ずしもトーナメントでなくてもよい。具体的には、嗜好グラフは対称的で不完全であってもよい。
−対称性：嗜好グラフには両方のエッジｅｉｊとｅｊｉがある、
−不完全性：両方のエッジｅｉｊとｅｊｉが嗜好グラフには無い。
対称性問題は、あるペアの嗜好が異なる重みを有することを示唆し、不完全性は、あるペア嗜好が未知であることを意味する。
【０２０５】
ある実施形態では、嗜好グラフからランキングを求める確率的アプローチを用いても良い。かかるアプローチは、嗜好グラフから１つ以上のトーナメントを求めることに依存する。各トーナメントは確率に関連付けられる。そのため、重み付け嗜好グラフは、可能性のあるトーナメントの空間のコンパクトな表現とみることができる。各トーナメントは、対称で完全な有向グラフを求めるように嗜好グラフを直すことにより求める。トーナメントを構成するため、嗜好グラフに２つのリペア動作を行う。
−エッジの削除この動作を行うと、関連するエッジの１つを削除することにより、２レングス（２-length）サイクルを削除する。
−エッジの追加この動作を行うと、失われたエッジを追加することにより、グラフを増強できる。
【０２０６】
前述の通り、重みｗｉｊの値は、（ｔｉ，ｔｊ）に関連するすべてのＰＯｒｄｅｒの集合中の、
【外３１】
【０２０７】
0005921536.tif 000040
であるＰＯｒｄｅｒを選択する確率を表す。ｗｉｊを、チュープルｔｊよりチュープルｔｉが嗜好される確率として解釈する。さらに、異なるチュープルペアのｗｉｊ値の独立性を仮定する。各チュープルペア（ｔｉ，ｔｊ）について、ｗｉｊ＞０かつｗｊｉ＞０であれば（すなわち、ｔｉとｔｊが２レングスサイクルに含まれていれば）、動作「remove  edge」により確率ｗｊｉでエッジｅｊｉが削除され、さもなければエッジｗｊｉが削除される。あるいは、ｗｉｊ＝０かつｗｊｉ＝０であれば（すなわち、ｔｉとｔｊが２レングスサイクルに含まれていれば）、動作「add  edge」により、同じ確率０．５でエッジｅｉｊ又はｅｊｉの一方が追加される。
【０２０８】
上記の確率的プロセスに基づき、重み付け嗜好グラフのリペアにより、確率が残りのすべてのグラフエッジの確率の積により与えられるトーナメント（非再帰的、非対称な完全有向グラフ）が生成される。ｃを嗜好グラフ中の２レングスサイクルの数とし、ｄを接続されていないチュープルペアの数とする。すると、可能なトーナメントの数は２ｃ＋ｄである。
【０２０９】
図１７は、重み付け嗜好グラフと、それに対応する可能なトーナメント｛Ｔ１，．．．，Ｔ８｝とを示す。図示した嗜好グラフは２つの２レングスサイクル（ｔ１−ｔ２及びｔ２−ｔ３）と、接続されてないチュープル（ｔ２，ｔ４）のペアとを有し、それゆえ可能なトーナメントの数は８である。各トーナメントの確率は、そのエッジに関連する確率の積により与えられる。例えば、Ｔ１の確率は０．０９であり、これはｗ２，１、ｗ２，３、及びｗ４，２を表す０．３、０．６、及び０．５の積である。
【０２１０】
トーナメントＴとチュープルＯの全順序とが与えられたとき、Ｏにおいて
【外３２】
【０２１１】
0005921536.tif 000041
であり、Ｔにおいて
【外３３】
【０２１２】
0005921536.tif 000042
であるとき、（ｔｉ，ｔｊ）の相対的順序に対して、ＯがＴに違反すると言う。トーナメントの違反を最小数にしてチュープルの全順序を計算する問題は、ＮＰ困難として知られている。トーナメントから全順序を計算する複数のヒューリスティック解法が提案されている。我々は、ケンドールスコアを用いて全順序を計算することにフォーカスする。チュープルｔのケンドールスコアは、そのトーナメントによりｔにより支配されたチュープルの数である。
【０２１３】
可能なトーナメントの空間により、確率的ランキング尺度のどれによっても、チュープルの全順序を計算できる。２つの具体的な尺度を以下に説明する。
−最も可能性の高いトーナメントランキング確率が最も高いトーナメントに基づいてチュープルの全順序を計算する。
−期待ランキングすべての可能性のあるトーナメントの空間における期待ランキングに基づきチュープルの全順序を計算する。
【０２１４】
最も可能性の高いトーナメントの発見は、嗜好グラフにおいて各２レングスサイクルに対して、大きな重みを有するエッジを維持し、接続されていないチュープルの各ペアの任意のエッジを加えることにより行う。この方法によれば、すべての可能性のあるトーナメントにおける確率が最も高い複数のトーナメントがある。これらのトーナメントのどれかの下で計算された全順序が、要求されたランキングである。図１７の例では、トーナメントT２とT６が最も可能性が高いトーナメントであり、それぞれ確率０．２１である。ケンドールスコアを用いたT２のチュープルの全順序は、＜ｔ１，ｔ４，ｔ２，ｔ３＞であり、一方、T６のチュープルの全順序は＜ｔ１，ｔ２，ｔ３，ｔ４＞である。ｎを嗜好グラフ中のチュープルの数とすると、アルゴリズムの複雑性はO(n)である。嗜好グラフのすべてのエッジを訪問する必要があるからである。
【０２１５】
期待ランキングの発見は、可能なトーナメントの空間を用いて各チュープルの期待ケンドールスコアを計算することにより行う。チュープルｔｉのスコアを、可能なトーナメントの空間により分布が与えられるランダム変数ｓｉとしてモデル化する。図１７に示した例では、ｔ１は確率合計０．３で｛Ｔ１，Ｔ３，Ｔ５，Ｔ７｝中の一チュープルを支配し、確率合計０．７で｛Ｔ２，Ｔ４，Ｔ６，Ｔ８｝中の２つのチュープルを支配する。よって、ランダム変数ｓｉは、確率０．３で値１を取り、確率０．７で値２を取る。よって、期待値は、１×０．３＋２×０．７＝１．７である。
【０２１６】
各チュープルの厳密な期待スコアを計算するには、可能性のあるトーナメントの空間を求めなければならないが、これは可能性のあるトーナメントの数が指数関数的に増加するので、不可能である。そこで我々は、各チュープルｔｉのｓｉの期待値を近似して、推定した期待スコアに基づきチュープルをランキングするサンプリングベースアルゴリズムを提案する。Ｌ（ｔｉ）を、重み付け嗜好グラフにおいて、ｔｉにより支配されたチュープルのセットとする。
【０２１７】
チュープルｔ′について、確率ｗｉｊで、Ｚに各チュープルｔｊ∈Ｌ（ｔｉ）を加えることにより、サンプルＺが生成される。すべてのサンプルは独立に生成される。よって、ｓｉ分布からのスコアサンプルは｜Ｚ｜により与えられる。ｓｉの期待値は生成されたスコアサンプルの平均として推定される。周知であるが、サンプル平均は、非常に多数の独立なサンプルのセットから計算すると、真の分布平均のバイアスがかかっていない推定である。ｎを嗜好グラフのチュープルの数とし、ｍを各チュープルのサンプル数とすると、アルゴリズムの複雑性はＯ（（ｎｍ）２）である。各チュープルの支配されたセットにｍ回アクセスして、ｍ個のスコアサンプルを生成するからである。
【０２１８】
VI.インターラクティブ嗜好仕様
データ探索システムはユーザが嗜好を指定するのに役に立つ。ある実施形態では、嗜好はインターラクティブに指定される。システムは、一連のプロンプト、ディスプレイ、及び／又はユーザがシステムに供給する入力タイプの表示により、ユーザとインターラクトする。本システムは、ユーザが嗜好を指定するのを支援する情報をユーザに提供する。
【０２１９】
データ探索システムはユーザがシステムにクエリをするのに役に立つ。この点、データ探索システムはユーザが嗜好を指定するのを支援し、ユーザに、指定された嗜好によりランキングされたクエリ結果を出力する。
【０２２０】
図１８は、ユーザがデータ探索システムにクエリをするのを支援するプロセス１２００を示すフローチャートである。プロセス１２００は、ユーザがクエリに関するユーザ嗜好を指定するのを支援するのに用いられ、ユーザがクエリ中の１つ以上のキーワードに関する属性に関連する嗜好を指定するのを支援する。
【０２２１】
プロセス１２００は、ユーザクエリが入力される段階１２０２ではじまる。入力されたユーザクエリは、任意の好適なクエリであり、テキストクエリであってもよい。入力されるクエリは、例えば、オーディオ入力デバイスにより受け取られ、適切な音声認識／音声・ツー・テキストソフトウェアを用いてテキストに変換されるマルチメディアクエリであってもよい。入力されるクエリは１つ以上のキーワードを含む。クエリは、例えば、購入するアイテムに対するクエリであっても、及び／又はユーザが望む情報を含むアイテムに対するクエリであってもよい。例えば、クエリはキーワード「自動車」を含むクエリであり、ユーザは自動車に関するアイテムを見ることに興味を有することを示す。他の一例として、ユーザは、インターネットサーチエンジンにクエリ「テレビジョン」を入力する。これは、ユーザが、テレビジョンに関する情報を含むウェブページを見ることに興味を有していることを示す。しかし、クエリは、本技術分野で知られているように、任意の好適なクエリでよい。
【０２２２】
プロセス１２００の段階１２０４において、ユーザクエリを受け取ると、そのクエリに関する１つ以上の属性が特定される。属性は、そのクエリに含まれる１つ以上のキーワードに関するものである。例えば、属性は、クエリ中のキーワードの特徴である。属性は任意の好適なタイプのものでよい。例えば、属性はカテゴリー的属性や数値的属性であってもよい。例えば、「自動車」のクエリが段階１２０２で入力された場合、自動車に関する属性は、属性「メーカ」、「色」、「価格」、その他、図８に示した属性などの自動車の属性である。クエリに含まれる１つ以上のキーワードに関する属性は、本技術分野で知られた任意の好適な方法で特定できる。コンピュータで自動的に特定しても、手作業で指定してもよい。
【０２２３】
段階１２０４において、属性が特定される方法にかかわらず、段階１２０６において、ユーザはこれらの属性を提示される。ユーザは、これらの属性を含むディスプレイスクリーンを用いてこれらの属性を視覚的に表示される。ディスプレイスクリーンは、属性のテキスト表現など、属性の表現を含む任意の好適なスクリーンである。
【０２２４】
ユーザは、１つ以上の提示された属性を選択するように促され、ユーザが選択された属性に関連する嗜好を指定するのをシステムが支援する。例えば、ユーザは、キーワード「自動車」に関連する上記の属性のリストを提示され、属性「価格」と「色」を選択する。段階１２０８において、ユーザにより選択された属性が受け取られる。
【０２２５】
選択した属性を受け取ると、ユーザは、段階１２１０において、１つ以上の選択された属性に関連する１次嗜好を指定するように促される。ユーザは、各属性について、任意の好適なタイプの１次嗜好を指定できる。例えば、ユーザは、セクションIIを参照して説明したように、スコアベースの嗜好、部分的順序嗜好、スカイライン嗜好、及び／又は同時分析嗜好を指定できる。
【０２２６】
ユーザは、いろいろな方法で上記の１次嗜好を指定するのを支援される。ある実施形態では、グラフィカルユーザインタフェースが使われる。グラフィカルユーザインタフェースにより、ユーザは、（例えば、嗜好を描画して）１次嗜好をグラフィカルに表すことができる。ある実施形態では、ユーザは、１次嗜好を指定するのに必要な情報を取得するように設計された一連のプロンプトを供給される。
【０２２７】
１次嗜好を受け取ると、ユーザは、段階１２１２において、受け取った１次嗜好中の２次嗜好を指定するように促される。ユーザは、任意の好適なタイプの２次嗜好を指定できる。例えば、ユーザは、セクションIIIを参照して説明したように、優先順序付けされた嗜好合成嗜好、部分的順序嗜好、ペア嗜好、及び／又はパレート嗜好合成嗜好を指定できる。
【０２２８】
１次嗜好の場合と同様に、ユーザは、いろいろな方法で上記の２次嗜好を指定するのを支援される。ある実施形態では、グラフィカルユーザインタフェースが使われる。グラフィカルユーザインタフェースにより、ユーザは、２次嗜好をグラフィカルに表すことができる。ある実施形態では、ユーザは、２次嗜好を指定するのに必要な情報を取得するように設計された一連のプロンプトを供給される。１次嗜好と２次嗜好が指定されると、プロセス１２００は完了する。
【０２２９】
本発明の上記の実施形態は、多くの方法で実施できる。例えば、実施形態は、ハードウェア、ソフトウェア、又はこれらの組合せを用いて実施できる。ソフトウェアで実施した場合、ソフトウェアコードは、格納されたプログラム命令であって、１つのコンピュータに設けられていようが、複数のコンピュータに分散していようが、任意の好適なプロセッサ又はプロセッサの集まり（例えば、１つ又は複数のマイクロプロセッサ）で実行できるプログラム命令として実施できる。
【０２３０】
言うまでもなく、コンピュータは、ラックマウントコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ又はタブレットコンピュータなど、いろいろな形式で実施できる。また、コンピュータは、パーソナルデジタルアシスタント（ＰＤＡ）、スマートフォン、タブレット、リーダ、その他の好適なポータブル又は固定電子デバイスを含む、一般的にコンピュータとは見なされないが、好適な処理機能を有するデバイスで実施できる。
【０２３１】
また、コンピュータは１つ以上の入力デバイスと出力デバイスを有する。これらのデバイスを用いて、なかんずく、ユーザインタフェースを提示する。ユーザインタフェースを提供するのに用いることができる出力デバイスの例には、出力の視覚的提示のためのプリンタやディスプレイ、及び出力の聴覚的提示のためのスピーカその他の発音デバイスが含まれる。ユーザインタフェースに用いることができる入力デバイスの例には、キーボードや、マイクロホンや、マウス、タッチパッド、デジタル化タブレットなどのポインティングデバイスが含まれる。
【０２３２】
かかるコンピュータは、ローカルエリアネットワーク（ＬＡＮ）やワイドエリアネットワーク（ＷＡＮ）などのネットワークや、エンタープライズネットワークや、インテリジェントネットワーク（ＩＮ）やインターネットなどのネットワークを含む、任意の好適な形式の１つ以上のネットワークにより相互接続されている。かかるネットワークは、好適な技術に基づき、好適なプロトコルにより動作し、無線ネットワーク、有線ネットワーク、又は光ファイバーネットワークが含まれる。
【０２３３】
このように、一実施形態では、複数のアイテムを管理するデータ探索システムにクエリをする方法が提供される。該方法は、前記複数のあいテム中のユーザの嗜好を示す複数の１次ユーザ嗜好と、前記複数の１次ユーザ嗜好中の１次ユーザ嗜好間のユーザの嗜好を示す２次ユーザ嗜好とを含むクエリで、前記データ探索システムにクエリする段階と、前記複数の１次ユーザ嗜好と２次ユーザ嗜好を表す嗜好グラフをエンコードしたデータ構造に少なくとも部分的に基づいて、前記複数のアイテム中の一アイテムのランキングを、プロセッサで計算する段階と、前記ランキングにより前記ユーザに前記複数のアイテムの少なくともサブセットを出力する段階とを有する。
【０２３４】
一実施形態では、前記ランキングを計算する段階は、前記嗜好グラフをエンコードする前記データ構造にページランクベースアルゴリズムを適用して前記ランキングを計算する段階を有する。
【０２３５】
他の一実施形態において、前記嗜好グラフはそれぞれがアイテムを表す複数のノードを有し、前記ランキングを計算する段階は前記複数のノード中の一ノードのページランクスコアを計算する段階を有する、
他の一実施形態において、前記ランキングを計算する段階は、前記嗜好グラフから求めた完全有向グラフ中の、それぞれがアイテムを表すノードの全順序を計算する段階を有する。
【０２３６】
他の一実施形態において、前記全順序を計算する段階は、前記完全有向グラフ中の一ノードのケンドールスコアを計算する段階を有する。
【０２３７】
他の一実施形態において、前記嗜好グラフは、それぞれが前記複数のアイテム中の一アイテムに対応する複数のノードと、それぞれが前記複数の１次嗜好中の一１次嗜好に対応する複数のエッジとを有し、前記１次嗜好は前記エッジの端にあるノードにより表される前記２つのアイテムのうちの一方に対するユーザの嗜好を示す。
【０２３８】
他の一実施形態において、各エッジは対応する１次嗜好により示された嗜好されるアイテムに関連するノードに向かう有向エッジである。
【０２３９】
他の一実施形態において、前記嗜好グラフ中の第１ノードと第２ノードの間のエッジに重みが関連付けられ、前記重みは前記第１ノードの前記第２ノードに対する嗜好の程度を示す。
【０２４０】
他の一実施形態において、前記複数のアイテム中の各アイテムは、前記アイテムの複数の属性を含むチュープルとして表される。
【０２４１】
他の一態様では、嗜好グラフをエンコードするデータ構造と、プロセッサに実行されると前記プロセッサに下記の段階を実行させる複数のプロセッサ実行可能命令と命令とを格納したコンピュータ読み取り可能記憶媒体が提供される：複数のアイテムにおけるユーザ嗜好を示す複数の１次ユーザ嗜好を受け取る段階と、前記複数の１次ユーザ嗜好中の１次嗜好間のユーザ嗜好を示す２次ユーザ嗜好を受け取る段階と、前記複数の１次ユーザ嗜好と２次ユーザ嗜好に基づき前記嗜好グラフのエッジの重みを計算する段階であって、前記エッジは第１のアイテムに関連する第１ノードと第２のアイテムに関連する第２ノードとを接続し、前記重みは前記第１のアイテムの前記第２のアイテムに対する嗜好の程度を示す段階と、前記嗜好グラフにより前記複数のアイテムのうち少なくとも２つを出力する段階とを有する。
【０２４２】
一実施形態では、前記嗜好グラフは、前記複数のアイテム中の各アイテムのノードと、前記複数の１次嗜好中の一１次嗜好により関係付けられたアイテムに関連するすべてのノードのペアのエッジとを有する。
【０２４３】
他の一実施形態において、前記重みを計算する段階は、前記第２のアイテムに対する前記第１のアイテムへのユーザの嗜好を示す複数の１次ユーザ嗜好中の１次ユーザ嗜好の第１の数を計算する段階と、前記第１のアイテムに関連するいずれかの嗜好を示す複数の１次ユーザ嗜好中のすべての１次ユーザ嗜好の第２の数を計算する段階と、前記第２の数で割った前記第１の数に基づいて前記重みを設定する段階とを有する。
【０２４４】
他の一実施形態において、前記複数の１次ユーザ嗜好を受け取る段階は、ユーザから１次嗜好を受け取る段階を有する。
【０２４５】
他の一実施形態において、前記複数のアイテム中の各アイテムは、複数の属性値を含むチュープルとして表され、前記複数の１次ユーザ嗜好中の各１次ユーザ嗜好は、前記一アイテムを表す第１のチュープルの属性値と、前記他のアイテムを表す第２のチュープルの属性値とに少なくとも部分的に基づき、一アイテムへの他のアイテムに対するユーザ嗜好を示す。
【０２４６】
他の一実施形態において、前記複数の１次ユーザ嗜好は、スコアベース嗜好、部分順序嗜好、スカイライン嗜好、及び同時分析嗜好から選択した少なくとも２つのタイプの１次嗜好を含む。
【０２４７】
他の一実施形態において、前記２次ユーザ嗜好は、優先順位付け嗜好合成、部分順序嗜好、ペア嗜好、及びパレート嗜好合成よりなる群から選択した少なくとも２つのタイプの２次嗜好を含む複数の２次ユーザ嗜好を有する。
【０２４８】
他の一態様では、データベースシステムが提供される。該データベースシステムは、複数のチュープルとユーザ嗜好を表す嗜好グラフをエンコードしたデータ構造とを格納するように構成されたメモリであって、前記ユーザ嗜好はチュープル間のユーザ嗜好を表す複数の１次嗜好と、前記複数の１次嗜好中の１次嗜好間のユーザ嗜好を表す２次ユーザ嗜好とを有するメモリと、前記メモリのコンテンツにアクセスして、前記嗜好グラフをエンコードしたデータ構造に基づき前記複数のチュープル中の一チュープルのランキングを計算するように構成されたプロセッサとを有する。
【０２４９】
他の一態様では、インターラクティブ嗜好管理のためのシステムが提供される。該システムは、それぞれが複数の属性のうち少なくとも１つの値を有する複数のチュープルを格納するように構成されたメモリと、ユーザから複数の属性中の一属性の値の範囲を受け取り、前記値が前記値の範囲内にあるように、前記属性の値を有するチュープルの数を示す整数を出力するように構成された少なくとも１つのプロセッサとを有する。
【０２５０】
他の一態様では、インターラクティブ嗜好管理のためのコンピュータ実施の方法が提供される。該方法は、キーワードを含むクエリをユーザから、プロセッサで受け取る段階と、前記ユーザに、前記キーワードに関係する１つ以上の属性に関連する複数の１次嗜好を提供するように促す段階と、前記複数の１次嗜好を受け取ると、前記ユーザに、前記複数の１次嗜好中の１次嗜好間の２次嗜好を提供するように促す段階とを有する。
【０２５１】
一実施形態では、前記ユーザに複数の１次嗜好を提供するように促す段階は、前記キーワードに関係する属性のリストを前記ユーザに提示する段階と、前記属性のリスト中の属性の選択を前記ユーザから受け取る段階と、前記ユーザに、前記選択された属性に関連する１次嗜好を指定するように促す段階とを有する。
【０２５２】
参照文献Ｂ：原始的セマンティックスに適用される嗜好誘導データ探索のシステムと方法
概して、ナレッジ表現は、機械ベースの格納・管理・推論システムをサポートするために、抽象的なナレッジを、具体的なデータ構造として、明示的にする行為である従来の方法とシステムには、分類学やシソーラスや様相分類などの構造化制御ボキャブラリ、セマンティックネットワークやオントロジなどの形式的仕様、自然言語に基づく文書などの非構造化形式を含む様々なタイプのナレッジ表現モデルにより構成されたナレッジ表現（ＫＲ）を利用するものがある。
【０２５３】
上記ナレッジ表現モデル、及び一般的にナレッジ表現は、人間の知識を、明示的な概念とその概念間の関係とによりモデル化し、ナレッジを要する様々なタスクを実行するために、その知識をコンピュータなどの機械にとってアクセス可能なものにするツールである。そのため、人間のユーザとソフトウェア開発者は、従来、自分たち人間の知識を用いてＫＲデータ構造を構成し、できたＫＲデータ構造を機械読み取り可能な形式に手作業でエンコードし、機械のメモリに格納し、様々な機械実行機能によりアクセスできるようにしている。
【０２５４】
従来のナレッジ表現の構築に対する非自動的なアプローチには多くの問題があることが分かった。例えば、データサイズの増大に合わせたスケーリングができないこと、複雑かつ大規模なデータ構造を処理できないこと、ドメインエキスパートに依存すること、大規模なデータの記憶と処理にはコストがかかること、統合及び相互運用が困難であることなどの問題がある。
【０２５５】
従来のアプローチの上記の欠点を解消するために、ナレッジ表現の自動的構築方法が必要であることが分かった。したがって、本開示のある実施形態は、ナレッジ表現を生成するプロセスを自動化するナレッジ生成規則をエンコードし、確率的方法を利用して、ナレッジ生成規則の適用の結果得られたデータ構造のセマンティックコヒーレンスをチェックするシステムを提供する。
【０２５６】
ナレッジ表現の生成を自動化するためにナレッジ生成規則を用いる多くのアプローチが可能である。例えば、ナレッジ生成規則に基づきナレッジ表現の生成を自動化する方法が、２０１０年  ６月２２日出願の米国仮出願第６１／３５７，２６６号（発明の名称「複雑なナレッジ表現を分析及び合成するシステムと方法」）に開示されている。
【０２５７】
上記のアプローチのある実施形態は、ドメイン中のすべてのナレッジを明示的なデータとしてモデル化するのではなく、圧縮された（原子的）データセットを、基礎となるナレッジ生成をエンコードする一組の生成規則と組み合わせる。新しいナレッジを生成してデータとして明示的に表す必要がある又は望ましい場合には、実施形態のシステムによりかかる規則が適用される。かかる手法の利点は、少なくともある状況では、格納されるデータをより効率的に表現することにより、システムに格納されるデータ量を大幅に減らせること、及び新しいナレッジの機械ベースの生成（合成）をする新しい機能とアプリケーションを提供することである。
【０２５８】
ＫＲに、ナレッジ生成の規則を組み込むことにより、システム中のデータ量は低減され、データ管理システムがより経済的になり、ナレッジ管理のまったく新しいアプリケーションが提供できる。このように、ある実施形態では、データが、必要になるまで生成されないようにして、データスケーラビリティという負担を軽減することにより、ＫＲシステムの製造とメンテナンスのコストが低減される。ある実施形態において、一旦生成されると、複雑なナレッジをモデル化するデータ構造は、手元のタスクに関係しないデータを記憶する必要がないという点で、従来のシステムと比較して小さくなる。そしてこれにより、これらのナレッジモデル上で動作する推論エンジンやデータマイニングツールなどの下流アプリケーションのコストが下がる。
【０２５９】
ナレッジ生成規則の適用により生じるナレッジ表現データ構造のセマンティックコヒーレンスをチェックする方法が必要であることが分かった。例えば、ある実施形態では、生成されたデータ構造が既存のナレッジモデルにあるかについてのエビデンスを集める。これらの既存ナレッジモデルは、（複雑なナレッジ表現データ構造として）システムの内部にあっても、（セマンティックウェブ上にエンコードされたナレッジモデルのように）外部にあってもよい。ある実施形態では、サーチエンジンを用いて、得られたデータ構造の概念に関連する言葉（記号又はラベル）が外部のナレッジ表現（文書など）にあるか調べる。用語・文書頻度（例えば、サーチエンジンのヒット数）は、得られたナレッジ表現データ構造のセマンティックコヒーレンスの尺度の一例となる。
【０２６０】
さらに、セマンティックネットワークを合成する確率的方法を用いて、ナレッジ生成規則の適用により生じるナレッジ表現データ構造のセマンティックコヒーレンスをチェックできることが分かった。
【０２６１】
セマンティックネットワークは、あるタイプのナレッジ表現であり、概念を表す頂点と、概念間のセマンティックな関係を表すエッジよりなる有効グラフである。セマンティックネットワーキングは、これらのグラフを作るプロセスであり、ナレッジをモデル化して格納する方法を提供し、それによってコンピュータ実施プログラムがナレッジを処理して使えるようにする。セマンティックグラフを作る重要部分は、文書や非構造化テキストなどの既存のナレッジ表現に基づいて概念定義と概念関係を準備することである。
【０２６２】
ナレッジ表現中の一組の概念間のセマンティックコヒーレンスは、これらの概念を含み、セマンティックネットワーク中の任意の２つの概念（頂点）間の関係（エッジ）の存在に関する不確実性の程度を示すセマンティックネットワークを構成することにより、確認できることが分かった。統計的グラフィカルモデルとそれに関連する方法は、セマンティックネットワークのこの確率的表現を提供するのに一意的に適していることが分かった。これは、特に、関連する推論方法の計算的複雑性が、セマンティックネットワークのサイズに応じて有利にスケールし、計算効率の高い方法とシステムとなるからである。グラフィカルモデルの統計的推論方法を用いて、概念のセット間に関係があるか決定でき、かかる関係のそれぞれに関連する不確実性を定量化できることが分かった。
【０２６３】
ある実施形態では、概念間の依存的構造に関するアプリオリな仮定を考慮しつつ、統計的推論手法を用いて、グラフ中のすべての概念の同時確率分布を効率的に計算できる。例えば、ある概念は独立であることが知られており、またある概念は強く相関していることが知られている。グラフ中のすべての概念の同時確率分布を用いて、そのグラフに含まれる任意の概念間の関係に関する任意のクエリに答えられる。例えば、２つの概念が関係しセマンティックにコヒーレントである程度、又はある概念が他の概念に関連しているかどうかは、適切な限界事後確率（marginal  posterior  probabilities）を計算することにより得られる。
【０２６４】
ある実施形態では、ナレッジ生成規則（すなわち、要素セマンティックス）と概念間のセマンティックコヒーレンスを評価する確率的方法を適用して構成されたナレッジ表現は、ユーザフィードバックにより、さらにリファインできる。
【０２６５】
本開示の実施形態は、さらに、図１９に示したナレッジ表現構成システムにより理解できる。ＫＲ構成システムの入力ユニット（１）は、第１の複雑なナレッジ表現を受け取るように構成されている。第１の複雑なナレッジ表現は複雑なボキャブラリを有する。複雑なボキャブラリは、用語集及び上位オントロジを含んでも良い。分析エンジン（２）は、入力されたナレッジ表現を、ナレッジ生成規則を用いて、原子的レベルのセマンティックユニットに分解する。結果として得られた原子的レベルのセマンティックユニットは、後で合成動作において用いるため、原子的セマンティックスデータベース（３）に格納される。
【０２６６】
規則データベース（４）は、複雑なセマンティックスの合成（synthesis）と分解（analysis）のために、ナレッジ生成規則を格納する。より複雑なセマンティックスの形成における原子的概念間のコヒーレンスの統計的エビデンスを提供する統計的グラフィカルモデルは、統計的モデルデータベース（５）に、原子的セマンティックカーネルとして格納される。統計的グラフィカルモデルは、ナレッジドメイン内の参照コーパスをサンプリングすることにより構成される。
【０２６７】
合成遠因（６）は、統計的グラフィカルモデルにより提供される原子的レベルのセマンティックユニット間のコヒーレンスの統計的エビデンスを考慮して、原子的レベルセマンティックユニットにナレッジ生成規則を適用することにより、第２の複雑なナレッジ表現を合成する。合成されたナレッジ表現は、任意の好適なナレッジ表現フォーマットで出力され、後で使用するため、ユーザモデル（７）として格納される。例えば、合成されたナレッジ表現は、モニタ、モバイルデバイスの画面、その他の好適なインタフェースなどのユーザインタフェースに出力される。フィードバックエンジン（８）は、複雑性適応的フィードバックループを用いて、構成された複雑なナレッジ表現のメンテナンスと品質向上を容易にするように構成されている。出力される複雑なセマンティックスは再分析とリファインメントのために返される。
【０２６８】
図２０に示したように、他の一態様は、嗜好ランキングエンジン（９）の組み込みを含む。嗜好ランキングエンジン（９）は、Ihab  F.  Ilyas及びMohamed  A.  Soliman著「PrefEx:  Preference  Guided  Data  Exploration」に記載されている。一般的に、嗜好ランキングエンジン（９）により、属性に関係するユーザの嗜好の統合ができる。図２０に示されたＡＫＲＭの場合、入力に基づくユーザ意図がランキングされる。ユーザ意図は、属性に関するユーザの嗜好であり、言い換えると、ユーザがいろいろな重要性のレベルにおいて発見しようと意図しているものである。
【０２６９】
ユーザにより受け取られるクエリは、ラベルを含み、そのラベルとして説明できるが、システム内で（概念と概念関係としての）セマンティック表現に変換される。これはラベル・ツー・概念変換又はＬＣＴとしても知られている。嗜好ランキングエンジン（９）は、そのユーザ嗜好アプローチを利用して、ＬＣＴの概念に重みを割り当てる。この重みを、セマンティック表現のトポロジとタイミングに影響する、合成動作の基礎として用いることができる。（例えば、重みが大きい概念は、重みが小さい概念より、その周りに合成される、より多くの追加的概念を有する。また、重みが大きい概念は、重みが小さい概念より前に概念を合成され、時間的に優先される。）
また、嗜好ランキングエンジン（９）は、出力の順序付けにも態様を追加する。合成エンジンは、複雑なセマンティック表現を合成し出力し、別の言い方をすると、合成された概念と概念関係とを出力する。これらのセマンティック表現は、ユーザ又はユーザモデルに直接表示されずに、嗜好ランキングエンジン（９）に入力され得る。ユーザの属性に対する嗜好に基づきオブジェクトを順序付ける嗜好ランキングエンジン（９）の能力に基づき、嗜好ランキングエンジンに入力される合成されたセマンティック表現は、ユーザ嗜好に基づき順序付けできる。その結果の順序付けられた概念と概念関係とは、ユーザ又はセマンティックユーザモデル（７）に出力できる。
【０２７０】
よって、一態様により、システムが提供される。該システムは：ユーザ意図に基づき属性嗜好を確立するように構成された嗜好ランキングコンポーネントと、クエリに基づき検索されたセマンティック表現に重みを割り当てるように構成された合成エンジンと、を有し、前記割り当てられる重みは前記属性嗜好ユーザ意図に基づき、前記嗜好ランキングコンポーネントは、前記ユーザ意図に基づくランクにより合成され出力されたセマンティック表現を構成し、前記合成され出力されるセマンティック表現は、ユーザインタフェース又はユーザモデルに送られる。
【０２７１】
一実施形態では、重みがより大きい概念には、より多くの追加的概念が合成される。
【０２７２】
他の一実施形態において、重みが大きい概念には、より早く追加的概念が合成される。
他の一実施形態において、方法は少なくとも１つのコンピュータの少なくとも１つのハードウェアプロセッサで実行されるソフトウェアに実装される。
【０２７３】
本発明の様々な態様は、単独で、組合せで、又は上記の実施形態で具体的には指定していない様々な構成で用いることができ、上記の説明で説明した又は図面に示した詳細やコンポーネントの構成に限定されない。例えば、一実施形態で説明した態様は、他の実施形態で説明した態様と任意の方法で組合せできる。
【０２７４】
ここで定義し用いたすべての定義は、辞書の定義、参照援用した文献における定義、及び／又は定義された用語の通常の意味で用いられていると理解すべきである。
【０２７５】
ここで用いる用語は、説明を目的としたものであり、限定するものと解すべきではない。「including」、「comprising」「having」、「containing」、「involving」、及びこれらの変形は、その後に列挙された追加的アイテムを含むことを意味する。
【０２７６】
また、本発明の実施形態は、例を挙げた１つ以上の方法として実施できる。その方法の一部として実施される段階は、いかなる好適な方法で順序付けられてもよい。したがって、説明したのとは異なる順序で段階が実行される実施形態を構成してもよい。例示した実施形態では順次的段階として示したが、ある段階を同時に実行することも含まれる。
【０２７７】
請求項の要素を修飾するために「第１の」、「第２の」、「第３の」などの順序を示す言葉を用いたが、これは優先順位、先後関係、ある要素の他の要素よりの順序、又は方法の段階が実行される時間的順序を示すものではない。かかる言葉は、ある名前を有する一要素を同じ名前の他の一要素と区別するラベルとして用いただけである（順序を示す言葉として用いたものではない）。
【０２７８】
不定冠詞「a」と「an」は、ここでは、特段の断りがなければ、「少なくとも１つの」を意味するものと理解すべきである。
【０２７９】
ここで用いたように、１つ以上の要素のリストを参照して「少なくとも１つの」とは、その要素のリスト中の１つ以上の任意の要素から選択された少なくとも１つの要素を意味し、必ずしも、その要素のリスト中に具体的にリストされたすべての要素を少なくとも１つずつ含むことは意味せず、その要素のリスト中の要素の任意の組合せを排除するものではない。また、この定義により、「少なくとも１つの」というフレーズが参照する要素のリストで具体的に特定された要素以外の要素が、その具体的に特定された要素に関係するしないにかかわらず、任意的にあってもよい。このように、非限定的な例として、「ＡとＢのうち少なくとも１つ」とは、一実施形態では、少なくとも１つの、任意的に２つ以上のＡを含み、Ｂを含まず、（また任意的にＢ以外の要素を含み）、他の一実施形態では、少なくとも１つの、任意的に２つ以上のＢを含み、Ｂを含まず、（また任意的にＢ以外の要素を含み）、さらに他の一実施形態では、少なくとも１つの、任意的に２つ以上のＡを含み、少なくとも１つの、任意的に２つ以上のＢを含み、（また任意的にその他の要素を含む）。
【０２８０】
「及び／又は」とは、ここでは、接続された要素の「どちらか一方」または「両方」を意味する。すなわち、ある場合には要素が結合的にあり、他の場合には要素が非結合的にある。「及び／又は」でリストされた複数の要素は、同様に解釈されるべきであり、すなわち「１つ以上の」要素が結合される。「及び／又は」で具体的に特定された要素以外の他の要素が、その具体的に特定された要素に関係してもしなくても、任意的あってもよい。このように、非限定的な例として、「comprising」などのオープンエンドの言葉とともに使われたとき、「Ａ及び／又はＢ」と言ったとき、一実施形態では、Ａのみを意味し（任意的にＢ以外の要素を含み）、他の一実施形態では、Ｂのみを意味し（任意的にＡ以外の要素を含み）、さらに他の一実施形態では、ＡとＢの両方を意味し（任意的にその他の要素を含む）。
【０２８１】
ここで、「又は」とは、上記「及び／又は」と同じ意味であると理解すべきである。例えば、リスト中のアイテムに使う時、「又は」と「及び／又は」は包含的に、すなわち複数の又はリストの要素のうち１つ少なくとも１つを含み、また２つ以上を含むものと解釈しなければならない。
【０２８２】
本発明の実施形態を詳細に説明したが、当業者には、様々な修正や改良が容易に分かるであろう。かかる修正や改良は本発明の精神と範囲内にある。したがって、上記の説明は単なる例であって、限定をする意図ではない。本発明は、以下の特許請求の範囲とその等価範囲によってのみ決まる。
【図１】
0005921536.tif 000043
【図２】
0005921536.tif 000044
【図３】
0005921536.tif 000045
【図４】
0005921536.tif 000046
【図５】
0005921536.tif 000047
【図６】
0005921536.tif 000048
【図７】
0005921536.tif 000049
【図８】
0005921536.tif 000050
【図９】
0005921536.tif 000051
【図１０】
0005921536.tif 000052
【図１１】
0005921536.tif 000053
【図１２】
0005921536.tif 000054
【図１３】
0005921536.tif 000055
【図１４】
0005921536.tif 000056
【図１５】
0005921536.tif 000057
【図１６】
0005921536.tif 000058
【図１７】
0005921536.tif 000059
【図１８】
0005921536.tif 000060
【図１９】
0005921536.tif 000061
【図２０】
0005921536.tif 000062