例示的実施形態は、特にユーザが主題の専門家でない技術分野において、アソシエーティブメモリ内で最適なクエリを定式化することが困難であることを認識し、考慮するものである。したがって、例示的実施形態は、アソシエーティブメモリのクエリのための属性選択を自動的に最適化するためのデバイス及び方法を提供する。例示的な実施形態は、他に多数の用途を有している。
例示的実施形態により複数の有用な機能が提供される。例示的実施形態は、誰もが使用できる最適基準を形成することにより、大規模なデータセット全体にわたる知識を利用する効率的な機構を提供する。この機能は、アソシエーティブメモリの使用に関するコストを有意に削減することができる。例示的実施形態は、また、専門家と初心者との間の知識のギャップの橋渡しをすることにより、専門家スタッフを保持する必要なく生産性を向上させることができる。この機能は、結果的に、アソシエーティブメモリの使用に関するコストを回避することができる。例示的実施形態は、大規模で複雑なデータセットから知識又は理解を導き出すことに関する困難性に起因して混乱が生じる可能性を低下させることができる。例示的実施形態は、アソシエーティブメモリ内部での基準選択を改善するための長期的解決法を提供することにより、さらにコストを回避することができる。
ここで、本明細書に記載される例示的実施形態の動作機能の例を再び参照する。例示的実施形態は、アソシエーティブメモリのパースペクティブ内において、ユーザが有用な基準を集めてグループ化し、且つそれらを特定の指定属性に割り当てることを可能にする体系的アプローチの基準を提供する。次いで、ユーザは、エンティティを比較するとき、以前の使用の際に収集された情報に基づくパースペクティブ内で、エンティティの特定の指定属性に関する使用に最善の基準を選択することができる。
このようにして、例示的実施形態は、アソシエーティブメモリ内で最適基準を導き出すために使用される。最適基準は、関連性及び精度の高い結果を取得するために、比較クエリに適用される。
換言すれば、例示的実施形態により、アソシエーティブメモリ内でのエンティティ比較のための最適な比較基準を作成する方法及びシステムが提供される。このような例示的実施形態を実施する一態様は、特定の属性又はそのパースペクティブに対応するバイナリファイル内に比較基準の個々の数値表現を保存することである。保存されたファイルは、同じパースペクティブ内部で、ローカルに保存された他の基準ファイルと同じディレクトリ位置に残り、それらすべてのファイルは同じ特定の属性を共有している。この場合、例示的実施形態は、多次元的にこれらの基準ファイルを組み合わせて蓄積することができ、これらの基準ファイルは他のユーザによって使用可能となる。このようにして、基準ファイルを作成したユーザの知識及び専門知識を、他のユーザが利用できる。
加えて、例示的実施形態は、アソシエーティブメモリ内部において所与のパースペクティブの特定の属性のエンティティを比較するために自動的に最善の基準を選択する所定の動的フィルタをユーザに提供する。例示的実施形態は、以前の使用の際に収集された情報の組み合わせに基づいて、正確な基準を選ぶことができる。例示的実施形態は、以前の検索の間に取得された主題の専門知識を適用することにより、ユーザが関連性の高いエンティティ比較を行うことを助けることができる。このように、例示的な一実施形態では、システムは、存在する場合にはパースペクティブ又は特定の属性に対する個々の関連性を保持しながら、最適な「万能サイズの」アプローチを提供することができる。
本明細書において使用される用語「アソシエーティブメモリ」は、複数のデータと、複数のデータ間の複数の関連付けを指している。これらのデータと関連付けは、コンピュータで読込可能な非一過性の記憶媒体に格納される。複数のデータは、関連グループに収集される。アソシエーティブメモリは、複数のデータ間の直接相関に加えて、複数のデータ間の間接的関係に基づいてクエリが行われるように構成されている。アソシエーティブメモリは、また、直接的関係と、直接的及び間接的な関係の組み合わせとに基づいてクエリが行われるように構成されている。
アソシエーティブメモリは、複数のデータと、複数のデータ間の複数の関連付けとを特徴とする。複数のデータは、関連グループにまとめられる。アソシエーティブメモリは、複数のデータ間の直接相関に加えて、複数のデータの中の、直接的関係と間接的関係とを含むグループから選択された、少なくとも一つの関係に基づいてクエリが行われるように構成されている。アソシエーティブメモリはソフトウェアの形態をとってもよい。このように、アソシエーティブメモリは、直接的な相関以外の関連性に基づいて、新規見識獲得の利益のために、関連グループに情報を収集するプロセスと考えることもできる。
本明細書で使用される「エンティティ」という用語は、はっきり区別される別々の存在であるオブジェクトを指し、このような存在は物質的なものである必要はない。したがって、抽象的概念及び法的制約もエンティティとみなされる。本明細書で使用される場合、エンティティは生物である必要はない。
本明細書で使用される「パースペクティブ」とは、「視点」のことである。アソシエーティブメモリに関して、パースペクティブとは、ユーザのドメインの特定の一面のコンテクストの選択である。
本明細書で使用される「ドメイン」は、解析に使用するために目の前にある主題である。
図1は、例示的な一実施形態による、アソシエーティブメモリ内でのクエリを定式化するためのシステムのブロック図である。図1に示すシステム100は、分散環境又はネットワーク環境において、及び「クラウド」として知られる遠隔管理されたデータ処理システムの組により、一又は複数のデータ処理システムを使用して実施することができる。システム100を実施する一又は複数のデータ処理システムの各々は、図12を参照して記載されるシステム1200か、又はその変形とすることができる。システム100は、一又は複数のブロックを含むものと特徴付けることができる。これらのブロックの各々は、別々でも、モノリシックなアーキテクチャの一部でもよい。
システム100は、アソシエーティブメモリ102を含んでいる。アソシエーティブメモリ102は、複数のデータ104と、複数のデータ間の複数の関連付け106とを含んでいる。複数のデータ104は、関連グループ108にまとめられている。アソシエーティブメモリ102は、複数のデータ104間の直接相関112に加えて複数のデータ104間の間接的関係110に基づいてクエリが行われるように構成されている。
アソシエーティブメモリ102は、論理的に複数のパースペクティブ114に分割される。複数のパースペクティブ114は、対応する、複数のデータからなるサブセットの複数の表現116を含む。複数のパースペクティブ114は、第1のパースペクティブ118のような特定のパースペクティブを含むことができる。
システム100は、入力デバイス120も含んでいる。入力デバイス120は、入力を受け取るように構成された有形のデバイスである。入力デバイス120の実施例には、限定されないが、キーボード、マウス、タッチスクリーン、データを受け取るように構成された有形のプロセッサ、データバス、有形の音声認識システム他が含まれる。入力デバイス120は、第1の基準ファイル122と第2の基準ファイル124とを受け取るように構成される。第1の基準ファイル122は、複数のパースペクティブ114のうちの第1のパースペクティブ118の第1の属性カテゴリ126を含む。第1の基準ファイル122は、第1のパースペクティブ118の第2の属性カテゴリ128も含む。第2の基準ファイル124は、第1のパースペクティブ118の第3の属性カテゴリ130と、第1のパースペクティブ118の第4の属性カテゴリ132とを含む。第1の属性カテゴリ126及び第3の属性カテゴリ130は同等134である。第2の属性カテゴリ128及び第4の属性カテゴリ132は同等136である。「同等」により、例示的実施形態では、問題にしている属性が同じ主題に関連していると考慮する。例えば、第1の属性カテゴリ126及び第3の属性カテゴリ130は、どちらも同じ材料特性に関連しうるが、異なる属性が同じ材料の異なるオブジェクトに関連していてもよい。
システム100は、オプティマイザ138も含んでいる。オプティマイザ138は、図14のデータ処理システム1400のような、コンピュータで読込可能な非一過性の記憶媒体に格納されたソフトウェアと連動するデータ処理システムとすることができる。このようなソフトウェアは、本明細書に記載される機能を実行するように構成することができる。オプティマイザ138は、第1の基準ファイル122及び第2の基準ファイル124上での多次元的組み合わせ140を実行することにより、第3の基準ファイル142を形成するように構成される。第3の基準ファイル142は、第1のパースペクティブ118の第5の属性カテゴリ144と、第1のパースペクティブ118の第6の属性カテゴリ146とを含む。第5の属性カテゴリ144は、第1の属性カテゴリ126及び第3の属性カテゴリ130と同等134である。第6の属性カテゴリ146は、第2の属性カテゴリ128及び第4の属性カテゴリ132と同等136である。
例示的な一実施形態では、第5の属性カテゴリ144は、第1の属性カテゴリ126の第1の値とも、第3の属性カテゴリ130の第3の値とも異なる第5の値を有する。同様に、第6の属性カテゴリ146は、第2の属性カテゴリ128の第2の値とも、第4の属性カテゴリ132の第4の値とも異なる第6の値を有する。しかしながら、いくつかの例示的実施形態では、これらの対応する値は同じでもよい。
例示的な一実施形態では、第1の値はユーザ選択可能な第1のチェックボックスである。同様に、第2の値はユーザ選択可能な第2のチェックボックスであり、第3の値はユーザ選択可能な第3のチェックボックスであり、第4の値はユーザ選択可能な第4のチェックボックスである。例示的な一実施形態では、第5の値は、オプティマイザ138によって決定された第5のチェックボックスであり、第6の値は、オプティマイザ138によって決定された第6のチェックボックスである。オプティマイザ138は、これらのチェックボックスの各々を、多次元的組み合わせ140の間の演算に適した数値へと変換することができる。
チェックボックスに関するこれらの例示的な実施形態は、変更可能である。例示的な一実施形態では、ユーザは、第5及び第6のチェックボックスの変更はできないが、他の例示的な実施形態では、ユーザには第5及び第6のチェックボックスの変更能力が与えられる。また別の例示的実施形態では、チェックボックスの代わりに数値、文、文字、絵、又は他のいずれかの便利な表現が使用される。入力デバイス120及びオプティマイザ138をそのように構成すれば、音声又は接触を含む他の媒体も使用可能である。したがって、上記の値は数字に限定されない。
多次元的組み合わせ140には、上述の様々な値に重み付けすることにより、さらに影響を与えることができる。例えば、第1の値には第1の重みが割り当てられ、第2の値には第2の重みが割り当てられ、第3の値には、第1の重みとは異なる第3の重みが割り当てられ、第4の値には、第2の重みとは異なる第4の重みが割リ当てられる。この例示的な実施形態では、オプティマイザ138は、さらに、多次元的組み合わせ140の一部として第1の重み、第2の重み、第3の重み、及び第4の重みを組み込むように構成されている。
特定の例示的実施形態では、例えば、第1の値は第1のチェックボックスである。第1のチェックボックスには、第1の属性カテゴリ126に割り当てられた残りのチェックボックスより多い又は少ない重み付けが割り当てられる。このように、多次元的組み合わせ140を実行するとき、オプティマイザ138は、それに従って第1の値に付与する重みを増やす又は減らすことができる。
システム100は、さらに、上述した例示的実施形態から変更することができる。例えば、システム100は、クエリデバイス148も含むことができる。クエリデバイス148は、入力デバイス120に接続することができるが、クエリに関する入力を受け取るのに適切な任意の手段に接続することができる。このように、ユーザは入力デバイス120を使用してクエリデバイス148にクエリを入力することができるが、クエリデバイス148は、他のソースからクエリ又はクエリに関連する情報を受け取ることができ、それにはクエリ又はクエリ情報を自動的に生成するためのプロセスから自動的に受け取ることが含まれる。いずれにしろ、クエリデバイス148は、第3の基準ファイル142を使用してアソシエーティブメモリ102のクエリを実行するように構成されている。このクエリは第1のパースペクティブ118内部で実行される。
クエリの自動生成に関する特定の実施例では、クエリデバイス148は、入力として第3の基準ファイル142を受け取り、アソシエーティブメモリ102上でクエリを実行する基礎として自動的に第3の基準ファイルを使用する。しかしながら、他の例示的な実施形態では、ユーザは、クエリを送る前に、第3の基準ファイル142を編集することができるか、又は編集する機会を有する。ユーザは、第3の基準ファイル142を使用することに加えて、クエリに追加情報を加えることもできる。場合によっては、ユーザは、クエリデバイス148を使用してクエリを生成するときに、第3の基準ファイル142を無視することを選ぶこともできる。
例示的な実施形態には、多次元的組み合わせの結果をオプティマイザ138にフィードバックするための設定が含まれる。したがって、入力デバイス120は、さらに、第3の基準ファイル142を受け取るように構成される。この場合、オプティマイザ138は、第1の基準ファイル122、第2の基準ファイル124、及び第3の基準ファイル142上での多次元的組み合わせ140を実行するように構成される。このような新しい多次元的組み合わせは、第4の基準ファイルを形成する。第4の基準ファイルの構造は、第3の基準ファイル142の構造と同じでよい。したがって、第4の基準ファイルは、第1のパースペクティブ118内の第7属性カテゴリ、及び第1のパースペクティブ118内の第8の属性カテゴリを含みうる。第7の属性カテゴリと第1の属性カテゴリ126とは同等であり、同様に、第8の属性カテゴリと第3の属性カテゴリ130とは同等である。
図1の例示的実施形態は、さらに変更可能である。例えば、第1の基準ファイル122及び第2の基準ファイル124は、パースペクティブの単一の属性に従って、又は同じパースペクティブに従って、アソシエーティブメモリ102内に保存することができるか、又は他の記憶デバイスに保存することができる。同様に、第3の基準ファイル142は、特定の属性、特定のパースペクティブ、又はそれら両方に従って、アソシエーティブメモリ102、又は他の記憶デバイスに保存される。このように、これらの基準ファイルには、パースペクティブ、又はパースペクティブの属性に従ってアクセスすることができる。
図1に示す例示的な実施形態は、種々の例示的実施形態を実施可能な方式に対する物理的又はアーキテクチャ的な限定であることを意図していない。図示されたコンポーネントに加えて及び/又は代えて、他のコンポーネントを使用することができる。一部の例示的実施形態では、いくつかのコンポーネントは不要である。また、ブロックは、いくつかの機能的なコンポーネントを示すために提示されている。種々の例示的実施形態において実施されるとき、これらのブロックの一又は複数は、異なるブロックに合成及び/又は分割することができる。
図2は、例示的な一実施形態による、アソシエーティブメモリ内でのクエリのための属性選択の最適化を示している。アソシエーティブメモリ内でのクエリのための属性選択を最適化するプロセスは、図1を参照して記載された例示的実施形態の特定の実施例である。
アソシエーティブメモリの概観にしばし戻る。アソシエーティブメモリ200は、アドレスではなくコンテンツにより情報を格納し、コンテンツ間の関係を格納することにより、明白ではない関係を識別する。このような機能は、膨大な量のデータを扱うときに特に有用である。このように、アソシエーティブメモリ技術は、直接相関以外の関係に基づいて、新規見識獲得の利益のために、関連グループに情報を収集するプロセスと考えることができる。
アソシエーティブメモリ200は、ドメイン202のような一又は複数のドメインに関連するデータを含む。ここでも、「ドメイン」は、解析に使用するための、目の前にある主題である。ドメイン202は、一又は複数のエンティティ204を含んでいる。ここでも、「エンティティ」という用語は、はっきり区別される別々の存在であるオブジェクトを指し、このような存在は物質的なものである必要はない。特定のエンティティは、それを説明するために使用される一又は複数の属性を含む。
特定の実施例では、「ドメイン」は「航空機の整備」であり、「エンティティ」は、航空機の整備を実行するときに使用される特定の部品である。エンティティは、この部品を販売する会社、部品を説明する特定のデータ、又はドメイン202に関連するデータの他の多数の例であってよい。各エンティティは、属性206のような一又は複数の属性を含む。属性206は、例えば、部品が耐食性かどうかといった、部品の特性である。
上述のように、アソシエーティブメモリ200のクエリを定式化するときに生じうる問題は、ドメイン202においてユーザが主題の専門家でない場合があることである。この場合、結果としてクエリに従って行われる比較は最適とは限らない。したがって、航空機の整備のような全体的な事業プロジェクトの効率が低下しうる。
例示的実施形態は、アソシエーティブメモリ内部において所与のパースペクティブについて特定の属性のエンティティを比較するために、自動的に最適基準、又は最適に近い基準を選択する動的フィルタをユーザに提供する。例示的実施形態は、アソシエーティブメモリ200のクエリを実行するときに属性の選択をもっと完全にコントロールすることのできる主題の専門家が以前の使用時に収集した情報の組み合わせに基づき、正確な基準を選ぶことができる。このように、例示的実施形態では、ユーザが主題の専門家でない場合も、ユーザのパースペクティブ、又は存在するのであれば特定の属性に関連する最適な「万能サイズ」方式を用いて主題の専門知識を適用することにより、ユーザは関連性の高いエンティティ比較を行うことができる。
広義の非限定的実施例では、主題の専門家は、エンティティ214に関連する属性206に含まれる任意の数の属性について、第1の任意の数の値212を確立することができる。次いで、主題の専門家は、属性206、及び第1の任意の数の値212を基準ファイルに保存する。同様に、同じ又は異なる主題の専門家は、属性208及び属性210の値を第2及び第3の基準ファイルにそれぞれ保存することができる。
その後、主題の専門家でない別のユーザは、属性218のセットの組み合わせ216を生成することにより専門家の知識を利用することができる。組み合わせ216は、属性206、属性208、及び属性210の多次元的比較により生成される。これらの属性の値は、問題のエンティティ204の全てにわたって属性毎に比較される。結果として最適基準ファイル220が得られる。次いで、最適基準ファイル220は、アソシエーティブメモリ200のクエリの基礎として使用される。この結果、ユーザは、実際に主題の専門家でなくとも、主題の専門知識を利用することができる。
図3は、例示的な一実施形態による、この実施形態に使用される化学薬品の比較のための基準ファイルの一例を示している。基準ファイル300は、図2の属性206、属性208、又は属性210の例である。属性ファイル300は、図2のドメイン202のエンティティ214のような、ドメイン内のエンティティに関連する。基準ファイル300は、所与の材料の特定の特性の相対的関連性を特定のドメインに入力するための機構も表している。
ここでも、アソシエーティブメモリを使用してエンティティ比較を実行するとき、精密な基準を使用してクエリを定式化することが最終的なクエリ結果を改善する。すなわち、アソシエーティブメモリは、エンティティ比較を正確に実行するために、ユーザが可能な限り多くの主題の専門知識を提供することに依存している。
残念なことに、主題の専門家でないユーザは、使用すべき基準、又は選択された基準に割り当て可能な重みを定式化すことがうまくできない場合がある。データの解釈に関する問題、及び主題に対する浅い知識により、最適とはいえない比較が行われうる。
例えば、基準ファイル300は、複雑なデータセットを示す場合がある。基準ファイル300は、化学薬品同士を比較するための基準を説明する。これらの化学薬品の基準のうち、所与のドメインに使用すべきものを決定することは、主題の専門家でないユーザには自明でないことがある。例えば、ユーザは、所与のドメインに関連するクエリを実行するとき、物質の沸点302が物質の蒸気圧304より重要かどうかを質問することができる。
例示的実施形態は、パースペクティブ内において、ユーザが有用な基準を集めてグループ化し、且つそれらを特定の属性に割り当てることを可能にする体系的アプローチの作成に使用可能である。次いで、ユーザは、エンティティを比較するとき、その特定の指定属性に関して、以前の使用の際に収集された情報に基づき、パースペクティブ内部で、使用に最善の基準を選択することができる。
例示的実施形態は反復式でもよい。すなわち、例えば、各クエリ、又は属性の新規組み合わせは、追加の基準ファイルとしてアソシエーティブメモリにフィードバックすることができる。したがって、例示的実施形態は、以前の基準を保持してその成果を踏まえることにより、使用と共に改善されるアソシエーティブメモリを提供する。例示的実施形態は、さらに、専門家以外の人が、同じデータセットを扱う主題の専門家の知識を利用することを可能にすると同時に、専門家以外が取り扱える事柄に主題の専門家が費やす時間を削減又は排除する。例示的実施形態は、主題とは無関係に、普遍的に開発可能である。例示的な実施形態は、プラットフォーム独立且つ持ち運び可能にもできる。
図4は、例示的な一実施形態による部品のエンティティ比較の一例を示している。図4のエンティティ比較400は、図2のエンティティ204のようなエンティティの比較の一例である。
上述のように、アソシエーティブメモリは、論理的に、パースペクティブ402のようなパースペクティブに分割される。ここでも、パースペクティブは、ユーザのドメインの特定の一面の「視点」又はコンテクストを提供する。例えば、部品404は、「民間航空機」と記載される問題ドメイン内部の一のパースペクティブである。
アソシエーティブメモリ内部において、エンティティ比較の結果は、パースペクティブ内部の元のエンティティ又は探索済みエンティティに「似ている」又は「類似の」エンティティを順番に並べたリストとしてもよい。アソシエーティブメモリは、リストを定式化するために、これらのエンティティ間で一致する属性のすべてを収集することができる。このリストの順序は、マッチング属性の重要度によって決めることができる。したがって、リストの序列は、見つかった属性の数と相関する。
比較を行うとき、マッチング属性のいくつかは、他のものより関連性が高い。例えば、ユーザは、二つの部品を比較するとき、「領域」という名称の属性に基づくマッチングの関連性を低く、部品の大きさ又は材料に基づくマッチングの関連性を高く考慮することができる。したがって、アソシエーティブメモリに何が重要で何が重要でないかを伝えることは、最適な比較を行うために非常に有用である。
図4に示す結果は、マッチング属性の多くがあまりにも一般的で関連性が高くないため、最適とはいえない。例えば、もっと関連性の高い比較は、耐食性の部品であろう。
図5は、例示的な一実施形態による部品比較用の基準ファイルの一例であり、比較基準に重みが割り付けられる。基準ファイル500は、図3の基準ファイル300の別の実施例である。基準ファイル500は、図2の属性206の一例である。基準ファイル500は、図1の第1の基準ファイル122又は第2の基準ファイル124の一例である。
基準ファイル500は、属性カテゴリ502を含んでいる。属性カテゴリ502の各属性には、対象ドメインに対する所与の属性の相対的な重要性を示すスケール504が関連付けられている。例示的な一実施形態では、スケール504は重みを示すチェックボックス506の形態をとることができる。低い重みは一番左のボックスを選択することにより、高い重みは、一番右のボックスを選択することにより、それぞれ示すことができる。高い重みと低い重みの間の相対的な重みは、中間のボックスを適切に選択することにより示すことができる。例示的な一実施形態では、主題の専門家はこのような選択を行うことができる。データ処理システムは、選択されたチェックボックスを、後処理のために、対応する数値に変換する。
有利な実施形態は、図5に示す例に限定されない。例えば、相対的な重みを示す数字をダイアログボックス又は別の入力機構に直接入力することができる。別の構成では、チェックボックスの数は、図示されているものよりも多くても少なくてもよい。ドロップダウンメニュー、棒の高さが調節可能な棒グラフ、又はその他といった、重みを示す他の方式も使用可能である。
ここで、相対的な比較を行うための基準ファイル500の使用に注目する。例示的実施形態では、パースペクティブ内の各エンティティの属性カテゴリから導かれた基準を使用する。これらの属性カテゴリ502はリストとして示される。主題の専門家は、他の属性との関連付けを強化することで様々な大きさの重要性を付与するために、スケール504を使用してこれらのカテゴリに重みを割り当てることができる。
各重みは、図中にチェックボックスの範囲として表現される一定レベルの重要性に対応している。ユーザは、カテゴリの重要性が低い程、一番左のチェックボックスの近くに重み付けすることができるか、又はそもそも重み付けしなくてよい。換言すれば、この例示的実施形態は、チェックボックスの選択をしないことを「ゼロ」の重み、すなわち、問題の属性は無関係である又は重要でないとして扱う。逆に、ユーザは、カテゴリの重要性又は関連性が高い程、一番右のチェックボックスの近くに重み付けすることができる。
ユーザは、特定のエンティティの重みの割り当てを完了したら、パースペクティブ内でのそのエンティティの特定の属性に関する比較基準を保存することができる。例えば、ドメインが航空機の整備である場合、所与の腐食性部品について、腐食に関する属性に重み付けし、その結果をアソシエーティブメモリのパースペクティブ内で保存する。例示的な一実施形態では、主題の専門家が属性の重みを特定しない場合、代わりにパースペクティブが使用される。
例示的実施形態は、バイナリファイル内の、そのパースペクティブに対応する比較基準の個々の数値表現と、「耐食性」のような特定の属性とを保存することができる。バイナリファイルは他の形態をとることもできるが、どのような形態をとろうとも「基準ファイル」という名称を有する。保存された基準ファイルは、同じパースペクティブ内部で、ローカルに保存された他の基準ファイルと同じディレクトリ位置に残り、それらすべての基準ファイルは同じ特定の属性を共有している。この場合、例示的実施形態は、多次元的にこれらのファイルを組み合わせて蓄積することができ、これらの基準ファイルは汎用性を有する。この結果、組み合わされた基準ファイルが得られる。様々な統計技術又は外部から割り当てられた重み係数を使用して組み合わされた基準ファイルを生成するために、他の組み合わせ方式が使用可能である。
結果として得られる組み合わされた基準ファイルにより、主題の専門家でないこともある他のユーザが、最初に基準ファイルを作成したこのような主題の専門家の知識又は専門知識を使用することができる。このように、例示的実施形態は、初心者が主題の専門知識を必要とする事無く最適な結果に近づくことを可能にする。
このように、例示的実施形態は、アソシエーティブメモリに対し、そのアソシエーティブメモリへのインターフェースを使用してエンティティ比較を実行するときに使用すべき基準を通知する能力を提供する。このようなインターフェースは、範囲及び機能性において多岐にわたる。それでも、このインターフェースは、アソシエーティブメモリが取り扱うことができるあらゆる能力の基準を規定するジョブを保持している。
例示的実施形態は、同種のエンティティ比較に必ずしも限定されない。例示的実施形態は、部品の特徴と整備の必要性といった異なる種類のエンティティを比較することができる。
図6は、例示的な一実施形態による、組み合わされた基準ファイルを作成するために使用される所与のドメインに関する部品比較用の多基準ファイルの一例を示している。基準ファイル600の組には、基準ファイル602、基準ファイル604、基準ファイル606、及び基準ファイル608が含まれている。これらの基準ファイルの各々は、例えば、図5の基準ファイル500、図3の基準ファイル300、図2の属性206、又は図1の第1の基準ファイル122又は第2の基準ファイル124である。これらの基準ファイルの各々は、一又は複数の主題の専門家によって作成されたものである。
図6に示す例示的実施形態は、整備ドメインにおいて部品の耐食性について収集された四つの異なる重み付けの組み合わせを表している。各基準は、耐食性の部品の評価に関連してユーザが重要と決定したものを表している。
この例示的実施形態は、図6に示される四つの基準ファイルの各々を使用して、耐食性の部品を比較するときに使用する最適な比較基準を計算する。この例示的実施形態は、図7に示すように、保存された基準ファイルを多次元的に組み合わせてその結果を基準の新規の組に適用することによりそのような計算を行うことができる。次に、アソシエーティブメモリは、基準の新規の組みを比較に適用することにより、図8に示すような関連性の高い結果を得ることができる。
図7は、例示的な一実施形態による、耐食部品用の最適比較基準の一例を示している。組み合わされた基準ファイル700は、図1の第3の基準ファイル142、又は図2の最適基準ファイル220の一例である。組み合わされた基準ファイル700は、図6の基準ファイルの組600を単一の基準ファイルに組み合わせることにより得られる。
図7では、属性カテゴリ702の組に含まれる各属性カテゴリには、スケール704において所与の重みが割り当てられる。この割り当ては、特定の属性が指定されていない場合も、特定の属性又は同じパースペクティブ内で同じ属性カテゴリに割り当てられた他の基準ファイル中の他の重みの組み合わせの結果として自動的に実行される。組み合わされた基準ファイル700内において所与の属性について結果的に得られた重みは、組み合わされた基準ファイル700を生成するために使用される基準ファイルの一つの中の対応する重みと同じでも、そのような重みとは異なっていてもよい。
図8は、例示的な一実施形態による、部品比較の一例を示しており、アソシエーティブメモリの耐食部品の最適比較基準に基づいて定式化された関連の結果が示されている。結果800は、図4のエンティティ比較とは別の結果を示す例である。結果800は、図7の組み合わされた基準ファイル700を用いて生成されている。結果800は、過去の基準ファイル生成時の主題の専門家による過去の作業から活用された知識に基づいて生成されているため、図4のエンティティ比較400より優れている。このようにして、初心者であっても、主題の専門家が生成した結果に匹敵するクエリ結果を生成することができる。
図9は、例示的な一実施形態による、アソシエーティブメモリ内部での最適比較基準の形成を示す図である。説明図900は、図1〜8を参照して記載した、例示的実施形態の使用時を捉えたものである。後述するように、「プロセス」は、アクションの実行を意味している。ここで使用される「プロセス」とは、記載されるアクションを実行するように構成された非一過性のプロセッサ又は他の物理的デバイスと考慮されるか、或いは、実行されると、記載されるアクションを実行するように構成されたコンピュータで使用可能なプログラムコードを格納する、コンピュータで読込可能な非一過性の記憶媒体と考慮することができる。
所与のパースペクティブ又は特定の属性について、このプロセスは、基準の定式化に慣れたユーザが、自分自身の基準及び基準ファイルを生成することを可能にする。このプロセスは、いずれの場合も丸で囲んだ「1」902で示されている。省略記号904は、図9に示したものよりも多い又は少ない基準ファイルがこのようにして生成されてもよいことを示す。
次いで、プロセスは、そのパースペクティブ、特定の属性、又はそれら両方に対応する個々のバイナリファイル内に、生成された各基準を数字にして保存する。このプロセスは、いずれの場合も丸で囲んだ「2」906で示されている。基準ファイルはバイナリファイルとして格納される必要はなく、他のフォーマットで格納されてもよい。このプロセスは、図9に示した回数よりも多い又は少ない回数にわたって実行されてよい。
次いで、プロセスは、可能であれば他の「定式化された」ファイルと一緒に、生成された基準ファイルの二つ以上を多次元的に組み合わせることにより、組み合わせ基準ファイルを形成する。このプロセスは、丸で囲んだ「3」908で示されている。組み合わせ基準ファイルは、特定のパースペクティブ内での、その特定の属性に関する基準の集積でありうる。組み合わせ基準ファイルを生成するとき、多次元的組み合わせ以外に、又は多次元的組み合わせに加えて、数学的プロセスを適用してもよい。
次いでプロセスは、他のユーザが、スキルレベル又は専門知識に関係なく、最適度の高い結果を生成するクエリを生成するための基礎として、組み合わせ基準ファイルを使用することを可能にする。このプロセスは、丸で囲んだ「4」910で示されている。このようにして、プロセスは、そのパースペクティブ内で実行された特定の属性に関するいずれのエンティティ比較についても、集積した平均基準を使用することができる。その後プロセスは終了する。
図9に示す例示的な実施形態は、種々の例示的実施形態を実施可能な方式に対する物理的又はアーキテクチャ的な限定であることを意図していない。図示されたコンポーネントに加えて及び/又は代えて、他のコンポーネントを使用することができる。一部の例示的実施形態では、いくつかのコンポーネントは不要である。また、ブロックは、いくつかの機能的なコンポーネントを示すために提示されている。種々の例示的実施形態において実施されるとき、これらのブロックの一又は複数は、異なるブロックに合成及び/又は分割することができる。
図10は、例示的な一実施形態による、アソシエーティブメモリ内部での最適比較基準の形成を示すフロー図である。プロセス1000は、図9の説明図900の一実施例である。プロセス1000は、図1〜8を参照して記載した技術の、使用時のフローである。後述するように、「プロセス」はアクションの実行を意味している。ここで使用される「プロセス」とは、記載されるアクションを実行するように構成された非一過性のプロセッサ又は他の物理的デバイスと考慮されるか、或いは、実行されると、記載されるアクションを実行するように構成されたコンピュータで使用可能なプログラムコードを格納する、コンピュータで読込可能な非一過性の記憶媒体と考慮することができる。
プロセスは、ユーザがドメインについて知識が豊富であるかどうかを決定することにより開始される(ブロック1002)。この決定は、ユーザ入力を受け取って、ユーザ入力に基づいて決定を行うことにより行われる。この決定は、プロセスを使用しているユーザの識別に基づいて自動的に、或いは他の何らかの自動的方法により行われてもよい。
ユーザが知識豊富であれば(ブロック1002において「はい」と決定)、所与のパースペクティブ、特定の属性、又はそれら両方内で、プロセスは、知識豊富なユーザによって提供された基準に基づいて一又は複数の基準ファイルを作成して保存する(ブロック1004)。例えば、主題の専門家が、アソシエーティブメモリのクエリを実行することに関して基準及び/又は基準の重みを入力すると、プロセスは、自動的に各基準ファイルを作成して保存する。主題の専門家はプロセスを知る必要も、制御する必要もない。しかしながら、いくつかの例示的実施形態では、主題の専門家は、基準ファイルを保存するかどうか、又はどのようにして保存されるかをいくらかは制御できる。
次いで、ここでも、パースペクティブ、特定の属性、又はそれらの両方内で、プロセスは組み合わされた一又は複数の基準ファイルを作成する(ブロック1006)。組み合わされた各基準ファイルは、ブロック1004において作成及び保存された基準ファイルのうちの二つ以上の組み合わせから形成される。組み合わされた基準ファイルは、図1〜9を参照して記載されてもいる。
ブロック1006において組み合わされた基準ファイルを作成した後、ユーザは、特定のエンティティ比較の基準を選択するとき、選択を入力することができる(ブロック1008)。ブロック1008内の個々のボックスは、特定のエンティティ比較の基準を選択するときにユーザの有する選択肢を表している。ブロック1008は、ユーザの選択肢の可能な一構成をまとめて示している。ユーザは、所望の範囲よりは広い一定の範囲の基準から選択することができる。この例示的実施形態では、ブロック1008において、ユーザが、属性限定基準と表現される一又は複数の新規オプションを選択することが可能である。このような新規オプションは、最終的クエリプロセスの一部として含まれうる。したがって、選択が行われた後、プロセスは、比較を評価するもっと規模の大きなプロセス内で継続しうる。しかしながら、図10に関しては、プロセスは終了している。
ブロック1002に戻って、ユーザがドメインについて知識豊富でない場合(ブロック10002に「いいえ」と回答)、可能な基準選択肢から選択が行われる(ブロック1010)。これらの基準選択肢は、ブロック1008の一部として表現される。選択が行われた後、プロセスは、比較を評価するもっと規模の大きなプロセス内で継続しうる。しかしながら、図10に関しては、プロセスは終了する。
図10に示す例示的な実施形態は、種々の例示的実施形態を実施可能な方式に対する物理的又はアーキテクチャ的な限定であることを意図していない。図示されたコンポーネントに加えて及び/又は代えて、他のコンポーネントを使用することができる。一部の例示的実施形態では、いくつかのコンポーネントは不要である。また、ブロックは、いくつかの機能的なコンポーネントを示すために提示されている。種々の例示的実施形態において実施されるとき、これらのブロックの一又は複数は、異なるブロックに合成及び/又は分割することができる。
図11は、例示的な一実施形態による、アソシエーティブメモリ内部での最適基準の作成を示すフロー図である。プロセス1100は、図9の説明図900及び図10のプロセス1000の一例である。プロセス1100は、図1〜8を参照して記載した技術の、使用時の例である。後述するように、「プロセス」はアクションの実行を意味している。ここで使用される「プロセス」とは、記載されるアクションを実行するように構成された非一過性のプロセッサ又は他の物理的デバイスと考慮されるか、或いは、実行されると、記載されるアクションを実行するように構成されたコンピュータで使用可能なプログラムコードを格納する、コンピュータで読込可能な非一過性の記憶媒体と考慮することができる。
このプロセスは、複数のデータと、複数のデータ間の複数の関連付けとを含むアソシエーティブメモリを提供することにより開始される(ブロック1102)。ここで、複数のデータは関連グループにまとめられており、アソシエーティブメモリは、複数のデータ間での直接的及び間接的関係を含むグループから選択された少なくとも一つの関係に基づいてクエリが行われるように構成されており、アソシエーティブメモリは、論理的に複数のパースペクティブに分割され、複数のパースペクティブは、それに対応の、複数のデータのサブセットの複数の表現を含んでいる。次に、プロセスは、第1の基準ファイルと第2の基準ファイルとをプロセッサで受け取る(ブロック1104)。ここで、第1の基準ファイルは、複数のパースペクティブのうちの第1のパースペクティブ内の第1の属性カテゴリと、第1のパースペクティブ内の第2の属性カテゴリとを含んでおり、第2の基準ファイルは、第1のパースペクティブ内の第3の属性カテゴリと、第1のパースペクティブ内の第4の属性カテゴリとを含んでおり、第1の属性カテゴリと第3の属性カテゴリとは同等であり、第2の属性カテゴリと第4の属性カテゴリとは同等である。
次に、プロセスは、プロセッサを使用して、第1の基準ファイル及び第2の基準ファイルに対して多次元的組み合わせを実行することにより、第1のパースペクティブ内の第5の属性カテゴリと、第1のパースペクティブ内の第6の属性カテゴリとを含む第3の基準ファイルを形成する(ブロック1106)。ここで、第5の属性カテゴリは第1の属性カテゴリ及び第3の属性カテゴリと同等であり、第6の属性カテゴリは第2の属性カテゴリ及び第4の属性カテゴリと同等である。次いで、プロセスは、コンピュータで読込可能な非一過性の記憶媒体に第3の基準ファイルを格納する(ブロック1108)。その後プロセスは終了する。
図11に示す例示的な実施形態は、種々の例示的実施形態を実施可能な方式に対する物理的又はアーキテクチャ的な限定であることを意図していない。図示されたコンポーネントに加えて及び/又は代えて、他のコンポーネントを使用することができる。一部の例示的実施形態では、いくつかのコンポーネントは不要である。また、ブロックは、いくつかの機能的なコンポーネントを示すために提示されている。種々の例示的実施形態において実施されるとき、これらのブロックの一又は複数は、異なるブロックに合成及び/又は分割することができる。
図12は、例示的な一実施形態による多次元基準の作成及び基準を示す図である。システム1200は図1のシステム100に類似している。したがって、例えば、図12のアソシエーティブメモリ1202は、図1のアソシエーティブメモリ102とすることができる。いくつかの例示的実施形態では、図1のアソシエーティブメモリ102は、多次元基準及び多次元基準ファイルの作成及び使用を提供する図12のフィーチャを含みうる。
図12のフィーチャに言及する前に、まず多次元基準及び多次元基準ファイルについて説明する。多次元基準は、基準ファイルの多次元的組み合わせとは区別される。基準ファイルの多次元的組み合わせは、上述のように、非限定的な一実施例では、各々が同様の属性カテゴリの組を有する基準ファイルの所与の組の、対応する属性カテゴリ値(属性カテゴリ一つ一つについての)の平均である。しかしながら、別途述べたように、「多次元的組み合わせ」という用語は、対応する属性カテゴリ値に対する他の数学的操作を考慮し、これには、限定されないが、重み付け平均化、他の既知の統計的数学的操作、値を比較した後にファジー論理又はニューラルネットワークルーチンによる選択を行うこと、又は他の多くの技術が含まれる。
対照的に、多次元基準は、特定の属性カテゴリに関連付けられた「値」と考慮される。このように、多数の多次元基準が、例えば一対一で、基準ファイル中の多数の属性カテゴリに関連付けられる。
多次元基準は、単一次元の対極としても位置づけられる。単一次元基準は、例えば、単一の数字、単一の英数字記号又は他の記号、一のオブジェクトを表す一連の英数字記号、一又は複数のオブジェクトを表す他のデータ、例えば画像ファイル、音声ファイルなどである。このように、単一次元基準は、複数の数字、文字、又は他のデータを有しうるが、それらはすべて検索目的のために一のオブジェクトとして扱われる。例えば、検索エンジンに「Alaska」という単語を入力する場合、複数の英数字が使用されるが、検索基準は単一オブジェクトであり、したがって単一次元基準である。単一次元基準には他にも多くの例が存在する。
多次元基準に話を戻すと、多次元基準は多数の値又は他のデータを含むことができ、これには、限定されないが、数字、英数字記号又は他の記号、画像ファイル、音声ファイル、データ又は他の形態のメタデータ間の関係、行列のような英字数字記号又は他の記号のアレイ、及びデータのその他多くの形態が含まれる。多次元基準は複数のオブジェクトとして構成される。このように、非限定的な一実施例では、多次元基準ファイルはベクトル場を表す数字の行列を含むことができる。このような行列は、基準ファイルの属性カテゴリに関連付けられた「値」とすることができる。
多次元基準に関する問題を説明するために、多次元基準ファイル中の複数の属性カテゴリが、それぞれ同様の行列又は他の多次元基準を含みうるということを考慮する。多次元基準ファイルを使用することの目標は、これらのベクトル場行列に馴染みのない主題の専門家でない者が、特定のタスクのための特定のクエリに使用できる適切な特定の多次元基準ファイルを生成することである。換言すれば、例示的実施形態では、多次元基準ファイルと共に、主題の専門家によって以前に決定された複合的属性カテゴリ値として過去の基準ファイルを利用することにより、特定のタクスのためのアソシエーティブメモリの特定のクエリ用に最適化された基準ファイルを生成する。
多次元基準のための使用をよりよく説明するために、検索技術の歴史を簡単に説明する。数十年までは、データ源は、検索タームといった単一のクエリオブジェクトによって容易に検索できるフィールドを有する単純なデータベースであった。その後、様々な検索エンジンは、様々なブール演算子及び/又は構造化問合せ言語(SQL)演算子を使用して、単独で及び/又は組み合わせて一又は複数の単一次元基準を利用することにより、一又は複数のデータベースといった情報源から単純又は複雑な検索結果を生み出していた。しかしながら、最近では、以前利用可能であった情報源に比べると、極めて複雑な情報資源が生じている。このような複雑な情報源は、複雑な技術、製品、及びそれに関連する情報源に関連している。このような複雑な技術及び製品は、同様に複雑な情報、及びこのような技術及び製品を説明するデータ資源を生じさせている。クエリ問題をさらに複雑にするような、多次元基準を用いた特定のクエリが実行されることがある。
アソシエーティブメモリ技術のような上述の複雑なデータ資源又はデータ源は、利用可能な検索エンジンの能力をすぐに超えた。複雑なクエリに対する簡潔で意味のある結果を見つけることができる検索基準能及びSQL演算子が存在しないことがある。例えば、ほとんどすべてのウェブユーザは、ウェブブラウザに検索タームを入力し、次いで時に無意味な無限とも思える大量の結果を選別しようとしてきた。この問題は、アソシエーティブメモリ技術のような、複雑性がさらに高いデータ源を扱うとき悪化し、多次元基準を使用して複雑なデータ源に対するクエリを定式化するときにはさららに悪化しうる。
このように、非常に複雑なデータ源に含まれるデータを検索して見つけることは、さらに困難になった。このような複雑なデータ源に含まれるデータ間にパターンを見つけることはさらに難しい。データ源の複雑性が高まったことにより、有意義な検索基準を識別して有用な検索クエリを作成することは、すべてでなくとも殆どの、経験を有する限定数の主題の専門家にとって困難でありうる。したがって、望ましい目標は、経験のある主題の専門家の専門知識を利用して、もっと多くの人々が、限定数の主題の専門家の貴重な時間を使用することなく、素早く所望のデータを取得できるようにすることである。
例示的な実施形態により、専門家でないユーザの多くが、複雑なデータ源を検索できる最適な検索基準を独力で作成することが可能になる。経験不足のユーザが単純な又は単一次元の検索基準を提案する場合も、このような単純な基準を、複雑なデータ源から簡潔で有意義な結果を供給するように構成された、最適性の高い多次元基準に変換することができる。
例えば、例示的実施形態は、一又は複数の多次元基準を生成又は作成し、これを複雑なデータ源のクエリに使用することができる。実施例の目的で、考慮される多次元基準には、提案された単一次元基準に関連性を有する、及び/又はそのような基準と技術的に同義の多次元基準が含まれる。
このような関連基準は、専門家によって確立及び/又は識別され、さらには別途記載するアソシエーティブメモリの能力によって自動的に識別される。さらに、多次元基準は、随意で、基準に関連する別次元のデータを含むこともできる。このような別次元には、例えば、このような基準の上限及び下限の範囲、基準の重み、主題の専門家に割り当てられた及び/又は主題の専門家によって推論的に決定された重みの範囲、或いは他の形態メタデータ又は他の関連情報が含まれる。
このような多次元基準を確立及び生成することにより、複雑なデータ源の一般ユーザは、主題の専門家に対するアクセス能のいかんに関わらず、これらの複雑なデータ源に対する能力を向上させることができる。さらなる例示的実施形態では、このような複雑なデータ源の経験不足の消費者により提案された、及び/又はそのような消費者が興味を示す検索基準をフィルタリング及び比較することにより、最適化された関連基準の多次元的組み合わせが生成される。
例示的実施形態は、さらに、単一次元基準を多次元基準に変換し、その後このような基準を複雑なクエリとして、アソシエーティブメモリのような複雑なデータ源に提示することを可能にする。例えば、単一次元の基準は、ユーザによって入力され、入力デバイスで受け取られる。オプティマイザは単一次元基準を受け取って、それを多次元基準に変換することができる。
このプロセスは、アソシエーティブメモリのような複雑なデータ源に対するクエリとして単一次元基準を入力することにより達成される。戻ってきた結果には、主題の専門家が以前に確立した多次元基準ファイルが含まれる。オプティマイザは、追加の検索パラメータを含むことができ、これらの多次元基準ファイルを、最適化された単一の多次元基準ファイルに組み合わせることができる。オプティマイザは、また、入力基準を、主題の専門家によって提供された重みに関連付けられた数値表現に変換することができる。オプティマイザは、さらに、入力基準に関連する最適化された複数の基準を含む多次元基準ファイルを生成することができる。
このプロセスは、単一次元基準を使用してアソシエーティブメモリのような複雑なデータ源のクエリを実行し、結果を受け取ることにより達成される。結果は、多次元基準ファイルを作成するオプティマイザにより組み合わされる。
このプロセスは、単一次元基準を使用してアソシエーティブメモリのような複雑なデータ源のクエリを実行し、結果を受け取ることによっても達成される。このとき、既に確立されている多次元基準ファイル(又は単一ファイル)が、受信された結果に基づいて検出又は生成される。このプロセスは反復式とすることができる。最終的に、最適化された多次元基準ファイルが生成されて、複雑なデータ源に対する複雑なクエリを実行するために使用される。
ここで図12に戻る。システム1200は、アソシエーティブメモリ1202を含んでいる。アソシエーティブメモリ1202は、複数のデータ1204と、複数のデータ間の複数の関連付け1206とを含んでいる。複数のデータ1204は関連グループ1208にまとめられている。アソシエーティブメモリ1202は、少なくとも複数のデータ1204間における間接的関係1210に基づいてクエリが行われるように構成されている。
システム1200は、入力デバイス1212も含んでいる。入力デバイス1212は、アソシエーティブメモリ1202と通信している。入力デバイス1212は、入力基準1214を受け取るように構成される。
システム1200は、オプティマイザ1216も含んでいる。オプティマイザ1216は、入力デバイス1212及びアソシエーティブメモリ1202と通信している。オプティマイザ1216は、アソシエーティブメモリ1202を使用して、入力基準1214から多次元基準ファイル1218を生成するように構成されている。多次元基準ファイル1218は、入力基準1214に関連する最適化された複数の基準1220を含んでいる。
例示的な一実施形態では、入力基準1214は、単一次元基準である。しかしながら、別の例示的実施形態では、入力基準1214は多次元基準でもよい。
例示的な一実施形態では、多次元基準ファイル1218は、入力基準1214に関連する一又は複数の別の次元のデータ1222のを含みうる。例示的な一実施形態では、一又は複数の別の次元のデータ1222が、入力基準1214の上限及び下限の範囲、基準の重み、主題の専門家に割り当てられた重みの範囲、主題の専門家によって推論的に決定された重みの範囲、並びに入力基準1214に関連するメタデータからなるグループから選択される。
例示的な一実施形態では、オプティマイザ1216は、アソシエーティブメモリ1202に格納された既存の多次元基準ファイル1224を組み合わせることにより、多次元基準ファイル1218を生成するように構成されている。異なる例示的実施形態では、システム1200には他の変形例が可能である。例えば、システム1200は、図1のシステム100の能力のすべてと、別途記載する他の能力とを含むこともできる。
別の変形例では、オプティマイザ1216は、入力基準1214を、専門家の重み付けに関連付けられた数値表現へと変換する。専門家の重みは、主題の専門家によって以前に供給又は指定された重みであり、入力基準1214に対応する一又は複数の属性カテゴリの一又は複数の値に関連付けられる。オプティマイザ1216は、入力基準1214に関連する最適化された複数の基準1220を含む多次元基準ファイル1218も生成する。
とはいえ、他の変形例も可能である。例えば、入力基準は、単一次元基準であっても、多次元基準であってもよい。多次元基準ファイル1218は、入力基準に関連する一又は複数の別の次元のデータ1222を含みうる。一又は複数の別の次元のデータ1222は、入力基準1214の上限及び下限の範囲、基準の重み、主題の専門家に割り当てられた重みの範囲、主題の専門家によって推論的に決定された重みの範囲、並びに入力基準に関連するメタデータからなるグループから選択される。オプティマイザ1216は、アソシエーティブメモリ1202に格納された既存の多次元基準ファイル1224を組み合わせることにより、多次元基準ファイル1218を生成するように構成されている。
したがって、図12に示す例示的な実施形態は、種々の例示的実施形態を実施可能な方式に対する物理的又はアーキテクチャ的な限定であることを意図していない。図示されたコンポーネントに加えて及び/又は代えて、他のコンポーネントを使用することができる。一部の例示的実施形態では、いくつかのコンポーネントは不要である。また、ブロックは、いくつかの機能的なコンポーネントを示すために提示されている。種々の例示的実施形態において実施されるとき、これらのブロックの一又は複数は、異なるブロックに合成及び/又は分割することができる。
図13は、例示的な一実施形態による、多次元基準の作成及び使用を示すフロー図である。プロセス1300は、図12のシステム1200、図1のシステム100、又は図14のデータ処理システム1400を使用して実施される。上述のように、「プロセス」は、アクションの実行を意味している。ここで使用される「プロセス」とは、記載されるアクションを実行するように構成された非一過性のプロセッサ又は他の物理的デバイスと考慮されるか、或いは、実行されると、記載されるアクションを実行するように構成されたコンピュータで使用可能なプログラムコードを格納する、コンピュータで読込可能な非一過性の記憶媒体と考慮することができる。
このプロセスは、コンピュータで読込可能な非一過性の記憶媒体と、複数のデータ、及び複数のデータ間の複数の関連付けを含むアソシエーティブメモリと連動するコンピュータにおいて開始される。ここで、複数のデータは関連グループにまとめられており、アソシエーティブメモリは、少なくとも複数のデータ間の間接的関係に基づいてクエリが行われるように構成されており、プロセスは、アソシエーティブメモリと通信する入力デバイスで入力基準を受け取る(ブロック1302)。次いで、プロセスは、アソシエーティブメモリと、入力デバイス及びアソシエーティブメモリと通信するオプティマイザとを用いて、入力基準に基づいて多次元基準ファイルを生成する(ブロック1304)。プロセスは、オプティマイザを用いて、入力基準を、専門家の重みに関連付けられた数値表現に変換する(ブロック1306)。最後に、プロセスは、オプティマイザを用いて、入力基準に関連する最適化された複数の基準を含む多次元基準ファイルを生成する(ブロック1308)。
図13に示すプロセス1300は、変更することができる、又は図示されているものよりも多い又は少ないアクションを含むことができる。例えば、入力基準は、単一次元基準であっても、多次元基準であってもよい。多次元基準ファイルは、入力基準に関連する一又は複数の別の次元のデータを含みうる。一又は複数の別の次元のデータは、入力基準の上限及び下限の範囲、基準の重み、主題の専門家に割り当てられた重みの範囲、主題の専門家によって推論的に決定された重みの範囲、並びに入力基準に関連するメタデータからなるグループから選択される。プロセス1300は、さらに、オプティマイザを用いて、アソシエーティブメモリに格納された既存の多次元基準ファイルを組み合わせることにより、多次元基準ファイルを生成する。
したがって、図13に示す例示的な実施形態は、種々の例示的実施形態を実施可能な方式に対する物理的又はアーキテクチャ的な限定であることを意図していない。図示されたコンポーネントに加えて及び/又は代えて、他のコンポーネントを使用することができる。一部の例示的実施形態では、いくつかのコンポーネントは不要である。また、ブロックは、いくつかの機能的なコンポーネントを示すために提示されている。種々の例示的実施形態において実施されるとき、これらのブロックの一又は複数は、異なるブロックに合成及び/又は分割することができる。
次に図14を参照する。図14は、例示的な一実施形態によるデータ処理システムを示している。図14のデータ処理システム1400は、例示的な実施形態(例えば、図1のシステム100)、或いは本明細書に開示されるその他のいずれかのモジュール、システム、又はプロセスを実施するために使用することができるデータ処理システムの一例である。この実施例では、データ処理システム1400は通信ファブリック1402を含み、この通信ファブリック1402はプロセッサユニット1404、メモリ1406、固定記憶域1408、通信ユニット1410、入出力(I/O)ユニット1412、及びディスプレイ1414の間の通信を行う。
プロセッサユニット1404は、メモリ1406にローディング可能なソフトウェアに対する命令を実行する。プロセッサユニット1404は、特定の実装態様に応じて、任意の数のプロセッサ、複数のプロセッサコア、又はその他何らかの種類のプロセッサとすることができる。本明細書においてアイテムに言及して任意の数というとき、一又は複数のアイテムを意味する。さらに、プロセッサユニット1404は、単一のチップ上に主要プロセッサと共に二次プロセッサが存在する任意の数の異種プロセッサシステムを使用して実施してもよい。別の実施例として、プロセッサユニット1404は、同種のプロセッサを複数個含む対称型マルチプロセッサシステムである。
メモリ1406及び固定記憶域1408は、記憶装置1416の例である。記憶装置は、情報を一時的に及び/又は恒久的に格納できる何らかのハードウェア部分であり、この情報には、例えば、限定されないが、データ、機能的形態のプログラムコード、及び/又はその他の適切な情報が含まれる。このような実施例では、記憶装置1416は、コンピュータで読込可能な記憶装置とも呼ばれる。このような実施例では、メモリ1406は、例えば、ランダムアクセスメモリか、或いは他のいずれかの適切な揮発性又は非揮発性の記憶装置とすることができる。固定記憶域1408は、特定の実装態様に応じて様々な形態をとることができる。
例えば、固定記憶域1408は、一又は複数のコンポーネント又はデバイスを含みうる。例えば、固定記憶域1408は、ハードドライブ、フラッシュメモリ、書換え形光ディスク、書換え可能磁気テープ、又はそれらの何らかの組み合わせである。固定記憶域1408によって使用される媒体は、取り外し可能なものでもよい。例えば、取り外し可能なハードドライブを固定記憶域1408に使用することができる。
このような実施例では、通信ユニット1410が他のデータ処理システム又はデバイスとの通信を行う。このような実施例では、通信ユニット1410はネットワークインターフェースカードである。通信ユニット1410は、物理的な及び/又は無線の通信リンクを介して通信することができる。
入出力ユニット1412は、データ処理システム1400に接続される他のデバイスとのデータの入出力を可能にする。例えば、入出力ユニット1412は、キーボード、マウス、及び/又は他の何らかの適切な入力装置によりユーザ入力のための接続を提供する。さらに、入出力ユニット1412は、プリンタに出力を送ることができる。ディスプレイ1414は、ユーザに対して情報を表示する機構を提供する。
オペレーティングシステム、アプリケーション、及び/又はプログラムに対する命令は、記憶装置1416に置くことができ、記憶装置1416は、通信ファブリック1402によりプロセッサユニット1404と通信する。このような実施例では、命令は固定記憶域1408上に機能的形態で存在する。このような命令は、メモリ1406にローディングされて、プロセッサユニット1404によって実行される。メモリ1406のようなメモリに位置させることができるコンピュータで実施可能な命令を使用して、プロセッサユニット1404により様々な実施形態のプロセスを実行することができる。
このような命令はプログラムコード、コンピュータで使用可能なプログラムコード、又はコンピュータで読込可能なプログラムコードと呼ばれ、プロセッサユニット1404に含まれる一のプロセッサによって読み込まれて実行される。種々の実施形態において、プログラムコードは、物理的な種々のコンピュータ読み取り可能媒体(例えば、メモリ1406又は固定記憶域1408)上に具現化される。
プログラムコード1418は、選択的に取り外し可能で、且つデータ処理システム1400にローディング又は移設されてプロセッサユニット1404によって実行されるコンピュータで読込可能な媒体1420上に機能的形態で位置している。プログラムコード1418及びコンピュータで読込可能な媒体1420は、このような実施例においてコンピュータプログラム製品1422を形成する。一実施例では、コンピュータで読込可能な媒体1420は、コンピュータで読込可能な記憶媒体1424又はコンピュータで読込可能な信号媒体1426とすることができる。コンピュータで読込可能な媒体1424は、例えば、記憶装置(例えば、固定記憶域1408の一部であるハードドライブ)上への転送のために、ドライブ又は固定記憶域1408の一部である他のデバイスに挿入又は配置される光ディスク又は磁気ディスクを含むことができる。コンピュータで読込可能な記憶媒体1424は、データ処理システム1400に接続された固定記憶域(例えば、ハードドライブ、サムドライブ、又はフラッシュメモリ)の形態をとることができる。場合によっては、コンピュータで読込可能な記憶媒体1424は、データ処理システム1400から取り外し可能でなくともよい。
別の構成では、プログラムコード1418は、コンピュータで読込可能な信号媒体1426を使用してデータ処理システム1400に転送される。コンピュータで読込可能な信号媒体1426は、例えば、プログラムコード1418を含む伝播データ信号である。例えば、コンピュータで読込可能な信号媒体1426は、電磁信号、光信号、及び/又は他のいずれかの適切な種類の信号である。これらの信号は、通信リンク(例えば、無線通信リンク、光ファイバケーブル、同軸ケーブル、電線、及び/又は他のいずれかの適切な種類の通信リンク)を介して伝送される。すなわち、これらの実施例では、通信リンク及び/又は接続は物理的なものでも、無線でもよい。
いくつかの例示的な実施形態では、プログラムコード1418は、コンピュータで読込可能な信号媒体1426により他のデバイス又はデータ処理システムからネットワークを介して固定記憶域1408にダウンロードされて、データ処理システム1400内で使用される。例えば、サーバデータ処理システム内でコンピュータで読込可能な憶媒体に格納されているプログラムコードは、ネットワークを介してサーバからデータ処理システム1400にダウンロード可能である。プログラムコード1418を供給するデータ処理システムは、サーバコンピュータ、クライアントコンピュータ、又はプログラムコード1418を格納及び転送できる他の何らかのデバイスとすることができる。
データ処理システム1400について説明した種々のコンポーネントは、種々の実施形態が実施される方法をアーキテクチャ的に限定するものではない。異なる例示的実施形態が、データ処理システム1400について示されているコンポーネントに追加的又は代替的なコンポーネントを含むデータ処理システムにおいて実施されうる。図14に示す他のコンポーネントは、図示の実施例から変更することができる。種々の実施形態は、プログラムコードを実行できる任意のハードウェアデバイス又はシステムを使用して実施することができる。一実施例として、データ処理システムは、無機コンポーネントと一体化した有機コンポーネントを含むことができる、及び/又は全体を人間を除く有機コンポーネントで構成することができる。例えば、記憶装置は、有機半導体で構成することができる。
別の実施例では、プロセッサユニット1404は、特定用途向けに製造又は構成された回路を有するハードウェアユニットの形態をとることができる。この種のハードウェアは、工程を実行するように構成された記憶装置からメモリにプログラムコードをローディングする必要なく、工程を実行することができる。
例えば、プロセッサユニット1404がハードウェアユニットの形態をとるとき、プロセッサユニット1404は、回路システム、特定用途向け集積回路(ASIC)、プログラマブルロジックデバイス、又は任意の数の工程を実行するように構成された他の何らかの適切な種類のハードウェアとすることができる。プログラマブルロジックデバイスの場合、このデバイスは任意の数の工程を実行するように構成される。デバイスは、後で再構成することができるか、又は任意の数の工程を実行するように恒久的に構成することができる。プログラマブルロジックデバイスの例として、例えば、プログラマブルロジックアレイ、プログラマブルアレイロジック、フィールドプログラマブルロジックアレイ、フィールドプログラマブルゲートアレイ、及び他の適切なハードウェアデバイスが挙げられる。この種の実装態様の場合、様々な実施形態のプロセスがハードウェアユニットにおいて実施されるので、プログラムコード1418は省略可能である。
また別の実施例では、プロセッサユニット1404は、コンピュータ及びハードウェアユニットにおいて見られるプロセッサの組み合わせを使用して実施することができる。プロセッサユニット1404は、任意の数のハードウェアユニットと、プログラムコード1418を実行するように構成された任意の数のプロセッサとを有することができる。図示された実施例の場合、プロセッサのいくつかは任意の数のハードウェアユニットに実装され、他のプロセッサは任意の数のプロセッサに実装される。
別の実施例として、データ処理システム1400に含まれる記憶装置は、データを格納できる任意のハードウェア装置である。メモリ1406、固定記憶域1408、及びコンピュータで読込可能な媒体1420は、有形形態の記憶装置の例である。
別の実施例では、バスシステムは、通信ファブリック1402を実施するために使用することができ、システムバス又は入出力バスといった一又は複数のバスを含むことができる。言うまでもなく、バスシステムは、バスシステムに取り付けられた種々のコンポーネント又はデバイスの間でのデータ伝送を行う任意の適切な種類のアーキテクチャを使用して実施することができる。加えて、通信ユニットは、モデム又はネットワークアダプタといった、データの送受信に使用される一又は複数のデバイスを含むことができる。さらに、メモリは、例えば、メモリ1406、又はインターフェースに見られるようなキャッシュ、及び通信ファブリック1402中に存在するメモリコントローラハブとすることができる。
データ処理システム1400は、アソシエーティブメモリ1428も含んでいる。アソシエーティブメモリ1428は、図1のアソシエーティブメモリ102、又は図12のアソシエーティブメモリ1202とすることができ、別途記載する特性を有することができる。アソシエーティブメモリ1428は、通信ファブリック1402と通信している。アソシエーティブメモリ1428は、記憶装置1416とも通信することができるか、又はいくつかの実施形態では記憶装置1416の一部であってもよい。図に示されているアソシエーティブメモリ1428は一つであるが、複数のアソシエーティブメモリが存在してもよい。
図面及び明細書において、一態様ではシステム(100)が開示される。このシステムは、複数のデータ(104)と、複数のデータ間の複数の関連性(106)とを含むアソシエーティブメモリ(102)であって、複数のデータ(104)は関連グループ(1208)にまとめられており、アソシエーティブメモリ(102)は、少なくとも複数のデータ(104)間の間接的関係(110)に基づいてクエリが行われるように構成されている、アソシエーティブメモリ(102);アソシエーティブメモリ(102)と通信する入力デバイス(120)であって、入力基準(1214)を受け取るように構成されている入力デバイス(120);入力デバイス(120)及びアソシエーティブメモリ(102)と通信するオプティマイザ(138)であって、アソシエーティブメモリ(102)を使用し、入力基準(1214)に基づいて多次元基準ファイル(1218)を生成するように構成されており、且つ入力基準(1214)を、専門家の重みに関連付けられた数値表現に変換し、入力基準(1214)に関連する最適化された複数の基準(1220)を含む多次元基準ファイル(1218)を生成するように構成されているオプティマイザ(138)を備えている。
一変形例によるシステム(100)では、入力基準(1214)は単一次元基準を含む。別の変形例によるシステム(100)では、入力基準(1214)は多次元基準を含む。また別の変形例によるシステム(100)では、多次元基準ファイル(1218)は、入力基準(1214)に関連する一又は複数の別の次元のデータ(1222)を含む。また別の変形例によるシステム(100)では、一又は複数の別の次元のデータ(1222)が、入力基準(1214)の上限及び下限の範囲、基準の重み、主題の専門家に割り当てられた重みの範囲、主題の専門家によって推論的に決定された重みの範囲、並びに入力基準(1214)に関連するメタデータからなるグループから選択される。一実施例によるシステム(100)では、オプティマイザ(138)は、アソシエーティブメモリ(102)に格納された既存の多次元基準ファイル(1224)を組み合わせることにより、多次元基準ファイル(1218)を生成するように構成される。
一態様では、コンピュータで読込可能な非一過性の記憶媒体及び複数のデータ(104)と複数のデータ間の複数の関連付け(106)とを含むアソシエーティブメモリ(102)と連動するコンピュータを用いて実施される方法であって、複数のデータ(104)が関連グループ(1208)にまとめられ、アソシエーティブメモリ(102)が、少なくとも複数のデータ(104)間の間接的関係(110)に基づいてクエリが実行されるように構成される方法が開示される。この方法は、アソシエーティブメモリ(102)と通信する入力デバイス(120)で入力基準(1214)を受け取ること;アソシエーティブメモリ(102)と、入力デバイス(120)及びアソシエーティブメモリ(102)と通信するオプティマイザ(138)とを使用し、入力基準(1214)に基づいて多次元基準ファイル(1218)を生成すること;オプティマイザ(138)を使用し、入力基準(1214)を、専門家の重みに関連付けられた数値表現に変換すること;並びに、オプティマイザ(138)を使用し、入力基準(1214)に関連する最適化された複数の基準を含む多次元基準ファイル(1218)を生成することを含む。
一変形例による方法では、入力基準(1214)は単一次元基準を含む。別の変形例による方法では、入力基準(1214)は多次元基準を含む。また別の変形例による方法では、多次元基準ファイル(1218)は、入力基準(1214)に関連する一又は複数の別の次元のデータ(1222)を含む。また別の変形例による方法では、一又は複数の別の次元のデータ(1222)が、入力基準(1214)の上限及び下限の範囲、基準の重み、主題の専門家に割り当てられた重みの範囲、主題の専門家によって推論的に決定された重みの範囲、並びに入力基準(1214)に関連するメタデータからなるグループから選択される。一実施例では、方法は、オプティマイザ(138)を使用して、アソシエーティブメモリ(102)に格納された既存の多次元基準ファイル(1218)を組み合わせることにより、多次元基準ファイル(1218)を生成することをさらに含む。
一態様ではシステム(100)が開示される。このシステム(100)は、複数のデータ(104)と、複数のデータ間の複数の関連付け(106)とを含むアソシエーティブメモリ(102)であって、複数のデータ(104)は関連グループ(1208)にまとめられており、アソシエーティブメモリ(102)は、複数のデータ(104)間の直接的関係及び間接的関係(110)を含むグループから選択された少なくとも一つの関係に基づいてクエリが実行されるように構成されており、アソシエーティブメモリ(102)は論理的に複数のパースペクティブに分割されており、複数のパースペクティブ(114)は、それに対応する、複数のデータのサブセットの複数の表現(116)を含んでいる、アソシエーティブメモリ(102);第1の基準ファイル(122)及び第2の基準ファイル(124)を受け取るように構成された入力デバイス(120)であって、第1の基準ファイル(122)が、複数のパースペクティブ(114)のうちの第1のパースペクティブ(118)内の第1の属性カテゴリ(126)と、第1のパースペクティブ(118)内の第2の属性カテゴリ(128)とを含んでおり、第2の基準ファイル(124)が、第1のパースペクティブ(118)内の第3の属性カテゴリ(130)と、第1のパースペクティブ(118)内の第4の属性カテゴリ(132)を含んでおり、第1の属性カテゴリ(126)と第3の属性カテゴリ(130)が同等であり、第2の属性カテゴリ(128)と第4の属性カテゴリ(132)が同等(136)である、入力デバイス(120);並びに、第1の基準ファイル(122)及び第2の基準ファイル(124)に多次元的組み合わせ(140)を実行することにより、第1のパースペクティブ(118)内の第5の属性カテゴリ(144)及び第1のパースペクティブ(118)内の第6の属性カテゴリ(146)を含む第3の基準ファイル(142)を形成するように構成されたオプティマイザ(138)であって、第5の属性カテゴリ(144)が第1の属性カテゴリ(126)及び第3の属性カテゴリ(130)と同等(134)であり、第6の属性カテゴリ(146)が第2の属性カテゴリ(128)及び第4の属性カテゴリ(132)と同等(136)である、オプティマイザ(138)を備えている。
一変形例では、システム(100)は、第3の基準ファイル(142)を使用して、第1のパースペクティブ(118)内でアソシエーティブメモリ(102)のクエリを実行するように構成されている。別の変形例によるシステム(100)では、第5の属性カテゴリ(144)は、第1の属性カテゴリ(126)の第1の値とも、第3の属性カテゴリ(130)の第3の値とも異なる第5の値を有しており、第6の属性カテゴリ(146)は、第2の属性カテゴリ(128)の第2の値とも、第4の属性カテゴリ(132)の第4の値とも異なる第6の値を有している。
また別の変形例によるシステム(100)では、入力デバイス(120)は、さらに、第3の基準ファイル(142)を受け取るように構成されており、オプティマイザ(138)は、第1の基準ファイル(122)、第2の基準ファイル(124)、及び第3の基準ファイル(142)に多次元的組み合わせ(140)を実行することにより、第1のパースペクティブ(118)内の第7の属性カテゴリ及び第1のパースペクティブ内の第8の属性カテゴリを含む第4の基準ファイルを形成するように構成されており、第7の属性カテゴリと第1の属性カテゴリ(126)とは同等であり、第8の属性カテゴリと第3の属性カテゴリ(130)とは同等である。
また別の変形例によるシステム(100)では、第1の値は、ユーザ選択可能な第1のチェックボックスを含み、第2の値は、ユーザ選択可能な第2のチェックボックスを含み、第3の値は、ユーザ選択可能な第3のチェックボックスを含み、第4の値は、ユーザ選択可能な第4のチェックボックスを含み、第5の値は、オプティマイザ(138)によって決定される第5のチェックボックスを含み、第6の値は、オプティマイザ(138)によって決定される第6のチェックボックスを含む。
また別の変形例によるシステム(100)では、第1の値には第1の重みが割り当てられ、第2の値には第2の重みが割り当てられ、第3の値には第1の重みとは異なる第3の重みが割り当てられ、第4の値には第2の重みとは異なる第4の重みが割り当てられ、オプティマイザ(138)は、さらに、第1の重み、第2の重み、第3の重み、及び第4の重みを、体次元組み合わせ(140)の一部として組み込むように構成されている。また別の変形例によるシステム(100)では、第1の基準ファイル(122)及び第2の基準ファイル(124)は、パースペクティブの谷津の属性に従って、又は同じパースペクティブに従って保存される。一事例によるシステム(100)では、第3の基準ファイル(142)は、特定の属性、特定のパースペクティブ、又はそれらの両方に従って保存される。
種々の例示的な実施形態は、全体がハードウェアからなる実施形態、全体がソフトウェアからなる実施形態、又はハードウェア要素とソフトウェア要素とを含む実施形態の形態をとることができる。いくつかの実施形態は、限定しないが、例えばファームウェア、常駐ソフトウェア、及びマイクロコードといった形態を含むソフトウェアにおいて実施される。
さらに、種々の実施形態は、コンピュータ、或いは命令を実行する何らかのデバイス又はシステムにより使用される、或いはそれに接続されて使用されるプログラムコードを提供するコンピュータで使用可能又は読込可能な媒体からアクセス可能なコンピュータプログラム製品の形態をとることができる。本明細書の目的のために、コンピュータで使用可能又は読込可能な媒体は、一般に、命令実行システム、装置、又はデバイスによって使用される、或いはそれに接続されて使用されるプログラムの収容、格納、通信、伝播、又は運搬を行うことができる任意の有形装置とすることができる。
コンピュータで使用可能又はコンピュータで読込可能な媒体は、例えば、限定しないが、電子システム、磁気システム、光学システム、電磁システム、赤外システム、又は半導体システム、或いは伝播媒体とすることができる。コンピュータで読込可能な媒体の非限定的な実施例には、半導体又は固体状態のメモリ、磁気テープ、取り出し可能なコンピュータディスケット、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、剛性磁気ディスク、及び光ディスクが含まれる。光ディスクには、コンパクトディスク−リードオンリーメモリ(CD−ROM)、コンパクトディスク−リード/ライト(CD−R/W)、及びDVDが含まれる。
さらに、コンピュータで使用可能又は読込可能な媒体は、コンピュータで読込可能又は使用可能なプログラムコードを収容又は格納することができ、このコンピュータで読込可能又は使用可能なプログラムコードがコンピュータ上で実行されると、コンピュータは、通信リンクを介して別のコンピュータで読込可能又は使用可能なプログラムコードを送信する。このような通信リンクは、例えば、限定しないが、物理的な又は無線の媒体を使用することができる。
コンピュータで読込可能な又はコンピュータで使用可能なプログラムコードを格納及び/又は実行するのに適したデータ処理システムは、システムバスのような通信ファブリックによりメモリ要素に直接的に又は間接的に連結された一又は複数のプロセッサを含む。メモリ要素は、プログラムコードが実際に実行される間に使用されるローカルメモリ、大容量記憶装置、及び少なくとも何らかのコンピュータで読込可能な又はコンピュータで使用可能なプログラムコードを一時的に格納することにより、コード実行中に大容量記憶装置からコードを取り出す回数を低減できるキャッシュメモリを含むことができる。
入出力又はI/O装置は、直接的に、又はI/Oコントローラを介して、システムに連結することができる。このような装置には、例えば、限定されないが、キーボード、タッチスクリーンディスプレイ、及びポインティングデバイスが含まれる。種々の通信アダプタをシステムに連結することにより、データ処理システムを、構内ネットワーク又は公衆ネットワークを介在させて他のデータ処理システム、遠隔プリンタ、又は記憶装置に連結させることができる。モデム及びネットワークアダプタの非限定的な実施例は、現在利用可能な種類の通信アダプタのうちのごく一部に過ぎない。
上述した種々の例示的な実施形態の説明は、例示及び説明を目的とするものであり、完全な説明であること、又はこれらの実施形態を開示された形態に限定することを意図していない。当業者には、多数の修正例及び変形例が明らかであろう。さらに、種々の例示的な実施形態は、他の例示的な実施形態とは異なるフィーチャを提供することができる。選択された一又は複数の実施形態は、実施形態の原理、実際の用途を最もよく説明するため、及び他の当業者に対し、様々な実施形態の開示内容と、考慮される特定の用途に適した様々な修正との理解を促すために選択及び記述されている。