(57)【特許請求の範囲】
【請求項１】
コンピューティングデバイスに含まれる回路によって実行される、順序付きデータを幾何学的に符号化する方法であって、前記方法は、
複数の意味クラスに基づいて、第１のデータ要素および第２のデータ要素によって構成される部分空間を生成するステップであって、前記第１のデータ要素は第１の数の意味クラスに含まれており、前記第２のデータ要素は第２の数の意味クラスに含まれている、前記生成するステップと、
回路が、前記第１のデータ要素を前記第２のデータ要素に対して、前記第１のデータ要素および前記第２のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第２のデータ要素を含む第２の集合に対する前記第１のデータ要素を含む第１の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第２のデータ要素に対する前記第１のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第２の数の意味クラスに対して前記第１の数の意味クラスの各々について行われる、前記計算するステップと、
前記第１のデータ要素および前記第２のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するステップであって、前記優勢な意味クラスは最大重み配分を有する、前記決定するステップと、
を含む、方法。
【請求項２】
非類似度メトリックに基づいてデータを複数の意味クラスに分割するステップ、
をさらに含む、請求項１に記載の方法。
【請求項３】
前記分割するステップは、
前記第１のデータ要素と前記第２のデータ要素との意味的距離を求めることによって前記非類似度メトリックを計算するステップであって、前記意味的距離は、前記データのオントロジの最上層と最下層との固定距離に基づいて導出される、前記計算するステップ、  をさらに含む、請求項２に記載の方法。
【請求項４】
前記符号化するステップは、前記第１の数の意味クラスの各意味クラスについて前記第２の数の意味クラスの各意味クラスに対して行われ、前記第２の数の意味クラスの各意味クラスは前記第１の数の意味クラスの各意味クラスとは異なる、請求項１に記載の方法。
【請求項５】
前記符号化するステップは、
前記第１のデータ要素が前記第２のデータ要素の後者であることに対応する第１のメトリックを計算するステップであって、前記第１のメトリックは、前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、前記計算するステップ、
をさらに含む、請求項１に記載の方法。
【請求項６】
前記第２のデータ要素に対する前記第１のデータ要素の前記重み配分は、前記第２の数の意味クラスの各々に対する前記第１の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項１に記載の方法。
【請求項７】
前記第２の数の意味クラスの各々に対する前記第１の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方と関連付けられた前記重み配分は、ジャッカードメトリック、ダイス係数メトリック、ハミング距離メトリック、マンハッタンメトリック、およびコサインメトリックのうちの１つである、請求項６に記載の方法。
【請求項８】
前記第２のデータ要素に対する前記第１のデータ要素の前記重み配分は、各意味クラスに含まれる要素の数に基づくものである、請求項１に記載の方法。
【請求項９】
前記分割するステップは、
各データクラスタが少なくとも１つの意味クラスを含む複数のデータクラスタを生成するステップであって、データクラスタには実質的に類似したデータ要素が割り当てられる、前記生成するステップ、
をさらに含む、請求項２に記載の方法。
【請求項１０】
いくつかの意味クラスが、データクラスタ、品詞、言語同義語集合、およびオントロジのうちの１つまたは複数である、請求項１に記載の方法。
【請求項１１】
前記決定するステップは、
前記第２のデータ要素が前記第１のデータ要素の後者である場合について、前記符号化するステップおよび前記計算するステップを繰り返すステップ、
をさらに含む、請求項１に記載の方法。
【請求項１２】
前記順序付きデータは、言語データ、医療データ、および画像データのうちの１つである、請求項１に記載の方法。
【請求項１３】
前記データクラスタに属する各意味クラスは、前記複数のデータクラスタによって構成される不均質な空間におけるブレードに対応する、請求項９に記載の方法。
【請求項１４】
前記意味クラスの各々には固有のメトリックが割り当てられており、前記固有のメトリックは前記左縮約演算および右縮約演算の一方の前記計算において利用される、請求項１に記載の方法。
【請求項１５】
順序付きデータを幾何学的に符号化するための装置であって、前記装置は、
回路を含み、前記回路は、複数の意味クラスに基づいて、第１のデータ要素および第２のデータ要素によって構成される部分空間を生成するように構成されており、前記第１のデータ要素は第１の数の意味クラスに含まれており、前記第２のデータ要素は第２の数の意味クラスに含まれており、
前記回路は、前記第１のデータ要素を前記第２のデータ要素に対して、前記第１のデータ要素および前記第２のデータ要素によって構成される前記生成された部分空間が直交するように符号化するように構成されており、前記符号化は、前記第２のデータ要素を含む第２の集合に対する前記第１のデータ要素を含む第１の集合の左縮約および右縮約の一方を計算することによって行われ、
前記回路は、前記第２のデータ要素に対する前記第１のデータ要素の重み配分を計算するように構成されており、前記重み配分は、前記第２の数の意味クラスに対して前記第１の数の意味クラスの各々について行われ、
前記回路は、前記第１のデータ要素および前記第２のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するように構成されており、前記優勢な意味クラスは最大重み配分を有する、
装置。
【請求項１６】
前記回路は、非類似度メトリックに基づいてデータを複数の意味クラスに分割するようにさらに構成されている、請求項１５に記載の装置。
【請求項１７】
前記回路は、前記第１のデータ要素と前記第２のデータ要素との意味的距離を求めることによって前記非類似度メトリックを計算するようにさらに構成されており、前記意味的距離は、前記データのオントロジの最上層と最下層との固定距離に基づいて導出される、請求項１６に記載の装置。
【請求項１８】
前記回路は、前記第１の数の意味クラスの各意味クラスについて前記第２の数の意味クラスの各意味クラスに対して符号化を行うように構成されていることによって、第１のデータ要素を符号化するようにさらに構成されており、前記第２の数の意味クラスの各意味クラスは、前記第１の数の意味クラスの各意味クラスとは異なる、請求項１５に記載の装置。
【請求項１９】
前記回路は、前記第１のデータ要素が前記第２のデータ要素の後者であることに対応する第１のメトリックを計算するように構成されていることによって第１のデータ要素を符号化するようにさらに構成されており、前記第１のメトリックは、前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項１５に記載の装置。
【請求項２０】
前記第２のデータ要素に対する前記第１のデータ要素の前記重み配分は、前記第２の数の意味クラスの各々に対する前記第１の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項１５に記載の装置。
【請求項２１】
前記第２の数の意味クラスの各々に対する前記第１の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方と関連付けられた前記重み配分は、ジャッカードメトリック、ダイス係数メトリック、ハミング距離メトリック、マンハッタンメトリック、およびコサインメトリックのうちの１つである、請求項２０に記載の装置。
【請求項２２】
前記第２のデータ要素に対する前記第１のデータ要素の前記重み配分は、各意味クラスに含まれる要素の数に基づくものである、請求項１５に記載の装置。
【請求項２３】
前記回路は、前記データを、各データクラスタが少なくとも１つの意味クラスを含む複数のデータクラスタを生成することによって分割するように構成されており、データクラスタには実質的に類似したデータ要素が割り当てられる、請求項１６に記載の装置。
【請求項２４】
いくつかの意味クラスが、データクラスタ、品詞、言語同義語集合、およびオントロジのうちの１つまたは複数である、請求項１５に記載の装置。
【請求項２５】
前記回路は、前記第２のデータ要素が前記第１のデータ要素の後者である場合について、前記符号化および前記計算を繰り返すようにさらに構成されている、請求項１５に記載の装置。
【請求項２６】
前記順序付きデータは、言語データ、医療データ、および画像データのうちの１つである、請求項１６に記載の装置。
【請求項２７】
前記データクラスタに属する各意味クラスは、前記複数のデータクラスタによって構成される不均質な空間におけるブレードに対応する、請求項２３に記載の装置。
【請求項２８】
前記意味クラスの各々には固有のメトリックが割り当てられており、前記固有のメトリックは前記左縮約演算および右縮約演算の一方の前記計算において利用される、請求項１５に記載の装置。
【請求項２９】
コンピュータによって実行されると、前記コンピュータに、順序付きデータを幾何学的に符号化する方法を実行させるコンピュータプログラム命令を含む非一時的なコンピュータ可読媒体であって、前記方法は、
複数の分割された意味クラスに基づいて、第１のデータ要素および第２のデータ要素によって構成される部分空間を生成するステップであって、前記第１のデータ要素は第１の数の分割された意味クラスに含まれており、前記第２のデータ要素は第２の数の分割された意味クラスに含まれている、前記生成するステップと、
回路が、前記第１のデータ要素を前記第２のデータ要素に対して、前記第１のデータ要素および前記第２のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第２のデータ要素を含む第２の集合に対する前記第１のデータ要素を含む第１の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第２のデータ要素に対する前記第１のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第２の数の意味クラスに対して前記第１の数の意味クラスの各々について行われる、前記計算するステップと、
前記第１のデータ要素および前記第２のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するステップであって、前記優勢な意味クラスは最大重み配分を有する、前記決定するステップと、
を含む、非一時的なコンピュータ可読媒体。
【請求項３０】
前記方法は、
非類似度メトリックに基づいてデータを複数の意味クラスに分割するステップ、
をさらに含む、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項３１】
前記分割するステップは、
前記第１のデータ要素と前記第２のデータ要素との意味的距離を求めることによって前記非類似度メトリックを計算するステップであって、前記意味的距離は、前記データのオントロジの最上層と最下層との固定距離に基づいて導出される、前記計算するステップ、  をさらに含む、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項３２】
前記符号化するステップは、前記第１の数の意味クラスの各意味クラスについて前記第２の数の意味クラスの各意味クラスに対して行われ、前記第２の数の意味クラスの各意味クラスは前記第１の数の意味クラスの各意味クラスとは異なる、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項３３】
前記符号化するステップは、
前記第１のデータ要素が前記第２のデータ要素の後者であることに対応する第１のメトリックを計算するステップであって、前記第１のメトリックは、前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、前記計算するステップ、
をさらに含む、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項３４】
前記第２のデータ要素に対する前記第１のデータ要素の前記重み配分は、前記第２の数の意味クラスの各々に対する前記第１の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項３５】
前記第２の数の意味クラスの各々に対する前記第１の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方と関連付けられた前記重み配分は、ジャッカードメトリック、ダイス係数メトリック、ハミング距離メトリック、マンハッタンメトリック、およびコサインメトリックのうちの１つである、請求項３４に記載の非一時的なコンピュータ可読媒体。
【請求項３６】
前記第２のデータ要素に対する前記第１のデータ要素の前記重み配分は、各意味クラスに含まれる要素の数に基づくものである、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項３７】
前記分割するステップは、
各データクラスタが少なくとも１つの意味クラスを含む複数のデータクラスタを生成するステップであって、データクラスタに実質的に類似したデータ要素が割り当てられる、前記生成するステップ、
をさらに含む、請求項３０に記載の非一時的なコンピュータ可読媒体。
【請求項３８】
いくつかの意味クラスが、データクラスタ、品詞、言語同義語集合、およびオントロジのうちの１つまたは複数である、請求項３７に記載の非一時的なコンピュータ可読媒体。
【請求項３９】
前記決定するステップは、
前記第２のデータ要素が前記第１のデータ要素の後者である場合について、前記符号化するステップおよび前記計算するステップを繰り返すステップ、
をさらに含む、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項４０】
前記順序付きデータは、言語データ、医療データ、および画像データのうちの１つである、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項４１】
前記データクラスタに属する各意味クラスは、前記複数のデータクラスタによって構成される不均質な空間におけるブレードに対応する、請求項３７に記載の非一時的なコンピュータ可読媒体。
【請求項４２】
前記意味クラスの各々には固有のメトリックが割り当てられており、前記固有のメトリックは前記左縮約演算および右縮約演算の一方の前記計算において利用される、請求項２９に記載の非一時的なコンピュータ可読媒体。
【請求項４３】
コンピューティングデバイスに含まれる回路によって実行される、順序付きデータを幾何学的に符号化する方法であって、前記方法は、
複数の意味クラスに基づいて、第１のデータ要素および第２のデータ要素によって構成される部分空間を生成するステップであって、前記第１のデータ要素は第１の数の意味クラスに含まれており、前記第２のデータ要素は第２の数の意味クラスに含まれている、前記生成するステップと、
回路が、前記第１のデータ要素を前記第２のデータ要素に対して、前記第１のデータ要素および前記第２のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第２のデータ要素を含む第２の集合に対する前記第１のデータ要素を含む第１の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第２のデータ要素に対する前記第１のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第２の数の意味クラスに対して前記第１の数の意味クラスの各々について行われる、前記計算するステップと、
回路が、前記計算された重み配分に基づいて前記符号化された部分空間に索引付けするステップと、
を含む、方法。
【請求項４４】
コンピューティングデバイスに含まれる回路によって実行される、順序付きデータを幾何学的に符号化する方法であって、前記方法は、
複数の意味クラスに基づいて、第１のデータ要素および第２のデータ要素によって構成される部分空間を生成するステップであって、前記第１のデータ要素は第１の数の意味クラスに含まれており、前記第２のデータ要素は第２の数の意味クラスに含まれている、前記生成するステップと、
回路が、前記第１のデータ要素を前記第２のデータ要素に対して、前記第１のデータ要素および前記第２のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第２のデータ要素を含む第２の集合に対する前記第１のデータ要素を含む第１の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第２のデータ要素に対する前記第１のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第２の数の意味クラスに対して前記第１の数の意味クラスの各々について行われる、前記計算するステップと、
回路が、前記計算された重み配分に基づいて前記符号化された部分空間の中から部分空間を選択するステップと、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、参照によりその全内容が本明細書に組み入れられる、２０１４年１２月１０日に出願された米国仮特許出願第６２／０９０１９８号に基づくものであり、その優先権を主張するものである。
【０００２】
本明細書に記載する実施形態は、一般に、関連した重み付き順序付きデータ配列をサブシンボリックコードとして符号化するためのフレームワークに関する。サブシンボリックコードは、探索、索引付け、クラスタ化、データ変換および／またはデータ翻訳といった操作を実行するためのシームレスなフレームワークを提供する。
【背景技術】
【０００３】
ここで提供する背景説明は、本開示の文脈を一般的に提示することを目的とするものである。この背景の項に記載されている範囲内の本発明者らの研究、および、通常は、出願の時点において先行技術とみなされない本説明の局面については、明示的黙示的を問わず、本開示に対する先行技術と認めない。
【０００４】
高次元データを符号化し、解釈することは難しい。一手法では、対象とするデータがより高次元の空間内の埋め込まれた非線形多様体上にあると仮定することによってデータを単純化する。多様体が十分に低次元のものである場合には、データを低次元空間で視覚化することができる。しかし、現在利用可能なすべてのデータ処理技術は、空間が均質であること、および空間ごとにただ１つの多様体しか存在しないことを必要とする（ゆえに仮定する）。
【０００５】
さらに、現在利用可能なすべてのデータ処理技術では、何らかの形の基礎をなす近接行列および従来のベクトル空間の手法、例えば、潜在意味解析、主成分分析、多次元尺度構成法、ニューラルネットワーク、およびすべての前述のデータ処理手法の変形を用いる。さらに、そうしたデータ処理方法の大きな欠点は、データ間の順序付き関係が対称距離測定値として作られることである。よって、そうしたデータ処理技術のフレームワークでは、データの元の順序に依存した特性が失われる。例えば、「人間が犬を噛んだ」のような表現を、「犬が人間を噛んだ」のような表現と識別できない。
【０００６】
したがって、フレームワークがおそらくは不均質な空間内の複数の多様体をサポートし、各多様体または複数の多様体が、より高次元の空間内で固有の姿勢、向き、および立場を有しうるような方法でデータ関係を表し、処理することができるフレームワークが求められている。
【発明の概要】
【０００７】
本開示の一態様は、おそらくは不均質な空間内の複数の多様体をサポートすることができる、幾何学的代数の手法を実施することによってデータ関係を表し、処理するフレームワークを提供する。さらに、各多様体は、より高次元の空間内で固有の姿勢（すなわち、多様体のピッチ、ヨー、およびロール）、向き、ならびに立場（すなわち、ある多様体と他の多様体との関係）を有していてよい。
【０００８】
本開示は、データ間の関係が順序付けられ、順序付き関係が対応するデータの非類似度測定値に基づいて符号化される、データを符号化する技術を提供する。さらに、４分の１回転操作（すなわち、Π／２回転）で、ベクトル空間の一般化において、すなわちクリフォード代数およびその最新の変形である幾何学的代数においてデータ順序を符号化する。その際に、データのクラスタを、より一般的な意味クラスのメンバとみなすことができる。例えば、特定の物語のすべての単語およびそれらの単語の順序を、その名前を物語の題名とする意味クラスとみなすことができる（例えば、サー・アーサー・コナン・ドイルによるシャーロック・ホームズについてのすべての物語に「シャーロック・ホームズ」という意味クラスでラベル付けすることができ、各物語に物語の題名でラベル付けすることができ、順序付きの単語集合を多様体とみなすことができる）。
【０００９】
したがって、本開示は、「人間が犬を噛んだ」と「犬が人間を噛んだ」といった表現を容易に区別すると共に、意味クラスも区別し、それによって、幾何学的形態とみなされる意味クラスの間でデータを解釈し、解析する能力を提供することができるデータ表現を提供する。本開示はいかなる特定の種類のデータにも限定されないことを理解されたい。本明細書に記載するデータ符号化プロセスの特徴はむしろ、画像データ、言語データ、医療データ、または（探索や類推検索といった）順序の維持およびパターンベースの計算処理が望ましい任意の種類のデータを符号化するのに用いることができる。
【００１０】
一実施形態によれば、データを幾何学的に符号化する方法が記載されており、本方法は、コンピューティングデバイスに含まれる回路によって実行され、本方法は、非類似度メトリックに基づいてデータを複数の意味クラスに分割するステップと、複数の分割された意味クラスに基づいて、第１のデータ要素および第２のデータ要素によって構成される部分空間を生成するステップであって、第１のデータ要素は第１の数の分割された意味クラスに含まれており、第２のデータ要素は第２の数の分割された意味クラスに含まれている、生成するステップと、回路が、第１のデータ要素を第２のデータ要素に対して、第１のデータ要素および第２のデータ要素によって構成される生成された部分空間が直交するように符号化するステップであって、符号化は、第１の数の意味クラスの各意味クラスについて、第１の数の意味クラスの各意味クラスと等しくない第２の数の意味クラスの各意味クラスに対して行われる、符号化するステップと、回路が、第２のデータ要素に対する第１のデータ要素の重み配分を計算するステップであって、重み配分は、第１の数の意味クラスおよび第２の数の意味クラスの各々について行われる、ステップと、第１のデータ要素および第２のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するステップであって、優勢な意味クラスは最大重み配分を有する、ステップと、を含む。
【００１１】
以上の各段落は概説として提供したものであり、添付の特許請求の範囲を限定するためのものではない。記載する実施形態、およびさらなる利点は、以下の詳細な説明を添付の図面と併せて読めば最もよく理解されるであろう。
【００１２】
例として提案する本開示の様々な実施形態を、以下の図を参照して詳細に説明する。図面において、類似した参照番号は類似した要素を指す。
【図面の簡単な説明】
【００１３】
【図１】ロジェ・シソーラスを用いた例示的なデータ表現および分割を示す図である。
【図２】一実施形態による、ベクトルと二重ベクトルとの縮約積を示す図である。
【図３】重み付き順序付きデータを符号化するために行われるステップを示す流れ図である。
【図４】一実施形態によるコンピューティングデバイスを示すブロック図である。
【発明を実施するための形態】
【００１４】
次に図面を参照する。図面において、類似した参照番号は、複数の図面にわたって同一の部品または対応する部品を指示する。したがって、以上の考察では、単に、本開示の例示的な実施形態を開示し、説明しているにすぎない。当業者は理解するように、本開示は、その趣旨または本質的特徴から逸脱することなく、他の特定の形態として具体化されてもよい。したがって、本開示は例示のためのものであり、本発明および他の請求項の範囲を限定するためのものではない。本開示は、本明細書の教示の容易に認識できる変形を含めて、前述の請求の用語の範囲を、いかなる発明の主題も公衆に放棄されないように、一部定義するものである。
【００１５】
図１を見ると、ロジェ・シソーラスを用いた例示的なデータ表現および分割が示されている。ロジェ・シソーラスは６つの主要なクラスで構成されている。各クラスは複数のディビジョンで構成され、各ディビジョンは（１つまたは複数の）セクションをさらに含むことができる。各クラスは、個々の「意味クラスタ」または意味的にリンクした単語についての１０００を超える分岐を含むツリーとして概念化することができる。これらの単語は、厳密には同義語ではないが、意味の色や含意、または概念のスペクトルと見ることができる。最も一般的な単語の１つが、そのクラスの見出し語としてスペクトルを代表するために選択され、その見出し語でグループ全体がラベル付けされる。
【００１６】
具体的には、ロジェ・シソーラスは以下の６つのクラスで構成されている。クラスＩ−抽象的関係を表す単語；クラスＩＩ−空間に関連する単語；クラスＩＩＩ−物質に関連する単語；クラスＩＶ−知的能力に関連する単語；クラスＶ−自発的な力、個人的、社会的意志に関連する単語；ならびにクラスＶＩ−感情および道徳的な力に関連する単語。
【００１７】
図１には、クラスＶ（すなわち、（２）とラベル付けされている、自発的な力、個人的、社会的意志に関連する単語）のルートオントロジ（「ｒｏｇｅｔ＿ｏｎｔｏｌｏｇｙ」、（１）とラベル付けされている）が示されている。このクラスは、それぞれ、意志、個人、一般的な意志、および文脈とラベル付けされた部分空間（３）〜（６）を含む。加えて、図１には、名詞（８）というカテゴリの（９）とラベル付けされた見出し語「ｈａｒｖｅｓｔ」も示されている。具体的には、後述するように、一実施形態では、「ｈａｒｖｅｓｔ」単語というは、データセット要素のリスト（１０）を含むのではなく、意味クラスに対応している。意味クラス内のエントリのリスト（１０）は、そのリストに割り振られたケース索引６１８によって識別し、さらなる処理に用いることができる。
【００１８】
「ｈａｒｖｅｓｔ」という単語（９）は、「ｉｎｔｅｒｅｓｔ」という単語（１０）を含む図示の単語スペクトルを特徴付ける。したがって、ロジェ・シソーラスは、部分空間を集合体空間内でシームレスに表現することができるフレームワークを提供し、接続（１１）で示すように、部分空間内で（対応するケース索引６１８によって識別される）データセット要素を分配する機構をさらに提供する。具体的には、前述のように、６１８のデータ要素は、「ｇｏｏｄ」という単語（７）と厳密には同義ではないが、意味の含意または概念のスペクトルと見ることができる。
【００１９】
本開示の一実施形態によれば、データは、オントロジもしくは辞書、注釈付きスキーム、またはデータ間の非類似度を識別する任意の他の手段を参照して、非類似度を用いて分割することができる。他方、データ間の関係は、基礎をなす意味クラス関係を表現し、残るのが、データ間の反対称重み付き測定値（すなわち、メトリック）による、いずれかの意味クラスに関連したデータ間の全構成要素の非類似度になるように、ある意味クラスの最も異なった部分を別の意味クラスの最も異なった部分からどのようにして取り出すことができるかによって定義されることを理解されたい。
【００２０】
具体的には、一実施形態では、データを分割するためにクラスタ解析技術を実装することができる。クラスタ解析は、データの分類に用いられる教師なし学習技術である。データ要素は、距離または非類似度関数に基づくデータ要素の近接集合体を表す、クラスタと呼ばれるグループに分割される。同一の要素対は、ゼロの距離または非類似度を有し、他のすべての要素対は正の距離または非類似度を有する。さらに、表Ｉに示すように、分割されるべきデータは、データ要素のリスト、または要素およびラベルに索引付けする規則とすることができることを理解されたい。
【００２１】
【表１】
0006704928.tif 000002
【００２２】
さらに、前述のように、クラスタ化技術は任意のデータセットに適用することができる。ただし、特定の集合内の各要素がその他の要素からどのくらい離れているかを特徴付けるための尺度が必要であることに留意されたい。そうした尺度は、１対のデータ要素間の重み付き測定値に対応する。具体的には、データ要素間の距離を生成する関数が必要であり、この関数はデータの型に基づいて決定されてよい。
【００２３】
例えば、数値データ要素の場合、関数は、ユークリッド距離、マンハッタン距離、チェス盤距離、ブレイ・カーチス距離、コサイン距離、相関距離などのうちの１つであってもよい。同様に、ブール型のデータの場合、距離関数はマッチング非類似度関数、ジャッカード非類似度、ユール非類似度、ラッセル・ラオ非類似度、ダイス非類似度などのうちの１つであってよく、文字列型のデータ要素の場合、距離関数は、編集距離関数、ハミング距離関数、ダムラウ・レーベンシュタイン距離関数のうちの１つであってよい。
【００２４】
一実施形態によれば、非類似度メトリックに基づいてデータを分割する好ましい機構は、参照によりその全体が本明細書に組み込まれる米国特許出願第１３／４１８０２１号明細書に記載されているようなデータクラスタ化機構によって行うことができる。
【００２５】
幾何学的代数では、本明細書で「ブレード」と呼ぶ、空間Ｖのより高次元の有向部分空間が計算の基本要素である。さらに、本開示では、ｋ−ブレードという用語を、ｋ次元の均質な部分空間を表すのに用いる。ベクトルａ１∧ａ２…∧ａｋの外積は、その引き数が反対称的、結合的、線形である。外積を、ａ１∧ａ２∧ａ３．．．∧ａｋと表記し、ｋ−ブレードと呼ぶ。ベクトルの外積は、外積はスカラー値量であることを強制されず、そのため、外積には、ｋ次元の部分空間要素の「姿勢」（すなわち、ベクトルのピッチ、ロール、およびヨー）ならびに向きと、そのより高次元の空間内での大きさとを表す能力がある、という点でベクトルの一般的な行列式計算とは異なることを理解されたい。
【００２６】
外積は、「張る部分空間」の概念に計算上の意味を与えることを理解されたい。ブレードの幾何学的性質は、異なるグレードのメトリック尺度間（すなわち、多重ベクトル間）に関係があることを示す。よって、ベクトルの縮約積は、対称ではないブレード間の関係に対応し、次の定義で示すように結合的ではない。すべてのＣについて、（Ａ∧Ｂ）＊Ｃ＝Ａ＊（Ｂ＿｜Ｃ）、式中、＊は幾何スカラー積であり、＿｜は左縮約積である。この定義は、右縮約積「｜＿」）を用いて双対形式で書くこともできることを理解されたい。一実施形態によれば、縮約積はΠ／２回転（すなわち１／４回転）を含み、回転は非可換であるため、この性質を用いてデータにおける順序を回転のシーケンスとして表すことができる。
【００２７】
次に図２を見ると、一実施形態による、ベクトルと二重ベクトルとの縮約積が示されている。二重ベクトルは２つのベクトルの外積演算を行うことによって形成されることに留意されたい。二重ベクトルは、有向平面セグメントと解釈することができる。例えば、二重ベクトルａ∧ｂは、エッジａおよびエッジｂを有する平行四辺形の面積と等しい大きさを有し、ａとｂとで張られる平面の姿勢を有し、ａをｂと位置合わせするはずの回転の意味である向きを有する。
【００２８】
具体的には、図２を参照すると、平面Ｂ（（１）とラベル付けされている）は、２つのベクトルの外積演算によって形成される二重ベクトルを表す。さらに、ベクトルＸ（（２）とラベル付けされている）は、より高次元の空間におけるベクトルを表す。Ｘ’（（４）とラベル付けされている）とＸ”とは、ベクトルＸの水平射影と垂直射影とに対応している。図２に示すように、ベクトルＸの水平射影Ｘ’は、二重ベクトルの平面内にあることに留意されたい。（３）とラベル付けされたベクトルＸと二重ベクトルＢとの縮約積（Ｘ＿｜Ｂで表される）は、射影Ｘ’に直交している。
【００２９】
図２に示すように、記号「＿｜」は縮約内積を表す。任意の多重ベクトルａ、ｂ、およびｃとスカラーλおよびβについて、以下の法則および公理のセットが適用される。
【００３０】
スカラー内積：λ＿｜β＝λβ
ベクトルおよびスカラー：ａ＿｜β＝０
スカラーおよびベクトル：λ＿｜ｂ＝λｂ
ベクトル：ａ＿｜ｂ＝ａｂ
ベクトルおよび多重ベクトルａ＿｜（ｂ∧ｃ）＝（ａ＿｜ｂ）∧ｃ−ｂ∧（ａ＿｜ｃ）
分配法則（ａ∧ｂ）＿｜ｃ＝ａ＿｜（ｂ＿｜ｃ）
内積を２つのベクトルに適用すると、結果は線形代数のドット積とまったく同じになることに留意されたい。しかし、より高いグレードのブレードを用いて内積を適用すると、ブレードのグレードが低下する結果となる。
【００３１】
一実施形態によれば、各クラスタは、データの集合体を表す。さらに、各データは複数のクラスタで出現してよい。各データは、クラスタの集合体の配分（すなわち重み）として扱われる。具体的には、各クラスタは幾何学的代数における基本ブレードである。例えば、ＷｏｒｄＮｅｔやロジェ・シソーラス、他の同様のテキストリソースといった辞書およびリソースを符号化する際には、クラスタは、単語が同種の意味を共有する、本明細書で「ｓｙｎｓｅｔ」と呼ぶ同義語集合に対応する。加えて、クラスタを、名詞、動詞、形容詞といった型に分類することもでき、各クラスタをｓｙｎｓｅｔにさらに分割することもできる。一実施形態によれば、以下の表ＩＩに示す対応関係を利用することができる。
【００３２】
【表２】
0006704928.tif 000003
【００３３】
前述のように、特定の重要な（すなわちデータとしての単語の順序における）意味的極性を有するデータクラスタの例を、シソーラス、オントロジまたは辞書において見出すことができる。（図４を参照して後述する）本開示の方法を用いるために、データは、そうしたクラスタを文法型およびｓｙｎｓｅｔとして用いて基本ブレードを構築するために分割される。したがって、一実施形態では、表ＩＩに示す対応関係を、以下の表ＩＩＩに示すように詳述することができる。
【００３４】
【表３】
0006704928.tif 000004
【００３５】
したがって、本開示の一実施形態では、基本ブレードは、単語、そのクラスタにおける相対位置、およびクラスタに割り当てられた意味クラスによって決定される。ブレードが非退化である（すなわち、直交成分を有する）ことが保証されなければならないことに留意されたい。よって、各縮約積は、メトリック（例えば、ジャッカードメトリック、ダイス係数、コサインメトリック、または他の類似した選択肢）がユーザによって定義され、または供給されることを必要とする。
【００３６】
一実施形態では、ベクトル「ａ」と、ベクトル「ｂ」と「ｃ」との外積によって形成される二重ベクトル「Ｂ」（すなわち、Ｂ＝ｂ∧ｃ）との内積は、以下の性質が成り立つ。
【００３７】
左縮約：ａ＿｜Ｂ＝１／２［ａＢ−Ｂａ］
右縮約：Ｂ｜＿ａ＝１／２［Ｂａ−ａＢ］
およびａ＿｜Ｂ＝−Ｂ｜＿ａ
ａ・ｂは幾何積の０−グレード部分であることに留意されたい。ａ・ｂのグレードはａとｂとのグレードの差である。この性質を外挿することにより、ａとＢとの内積は幾何積ａＢになり、そのグレードはａとＢとのグレードの差である。左縮約は幾何積ａＢの反対称部分であり、右縮約はＢａの反対称部分である。よって、二重ベクトルＢ＝ｂ∧ｃとベクトルａとの左縮約ａ＿｜Ｂを実際に評価するためには、縮約は既知の積として表現されなければならない。このために、縮約および外積を幾何積として表現することにより、ａ＿｜ｂ∧ｃ＝ａ・ｂｃ−ａ・ｃｂが得られる。
【００３８】
図２の非限定に示すように、ａ＿｜ｂ∧ｃはベクトルであり、ｂ∧ｃ平面にあり、ベクトル「ａ」と直交することに留意されたい。ａ＿｜ｂ∧ｃの幾何学的意味は、「ａ」はベクトルであり、平面ｂ∧ｃにおいて「ａ」の正射影を１／４回転だけ回転させ、その結果を「ｂｃ」だけさらに拡大することによって得ることができる、というものである。よって、一実施形態では、縮約積は、ロータ変換のプロキシに対応し、当業者であれば、ベクトルと二重ベクトルとの縮約積の下のベクトルの成分を、二重ベクトルの平面におけるベクトルの成分とのサンドイッチ積（すなわち、ロータＲおよびベクトルｖの場合には、サンドイッチ積ＲｖＲになる）における１／４回転ロータとして構築できることを示すことができる。
【００３９】
一実施形態では、次のように本開示の様々な距離関数がメトリックを得るために縮約の計算に埋め込まれる。幾何学的代数には２Ｎ個のブレードがあるので、Ｎ次元の任意の代数について、ブレードを表すのに２Ｎ個の２進ビットを利用することができ、またはコンフォーマルモデルを用いる際に、２（Ｎ＋２）ビットを利用することができることになる。したがって、内側の縮約積のメトリック部分を表すための、ジャッカード距離、ダイス係数、ハミングまたはマンハッタンメトリックなどといった距離関数と共に、幾何学的代数内で２進ビットのベクトルコードを利用して外積部分を表すことができることになる。
【００４０】
一実施形態によれば、２つの部分空間は、それら部分空間の埋め込みデータが、それぞれ、部分空間内でのそれらの存在およびそれらのソースブレード（すなわち、それらが由来するクラスタ）から計算された距離測定値に従って「相関」し、または「関係」している場合、意味的距離（ＳＤ）によって関連付けられる。２つの部分空間が異なる場合、類似度を定めるためにｔ−ノルムを計算することができる。ｔ−ノルム積および最小値は、ルカーシェビッチｔ−ノルム法によって計算することができる。したがって、文を部分空間と考えると、１つの埋め込みによって、２文間の意味尺度を表現し、それらのクラスに基づいて類推を提供するために最大尺度を有する意味クラス間を関連付けることができる。
【００４１】
例えば、ロジェ１９１１シソーラスをソースとして用い、本開示のデータ表現のシステムおよび方法において周知のシソーラスを符号化すると、「若い女の子」と「かわいい花」との間で計算により、２つの入力文の関係としての「若さおよび美しさ」という意味クラス結果が生み出される。
【００４２】
加えて、複数の異なるクラスタに同一のラベルを有するデータ点が存在している場合、例えば、あるクラスタ内の「ｂａｎｋ」という単語が、それぞれ特定の意味で、他のクラスタにおいても出現する場合には、部分空間が相対順序で他のデータによって構成されている場合に、これらの意味を区別することができる。というのは、当該単語が用いられている文を分類する意味クラスと文脈が等価になるからである。
【００４３】
例えば、「ｂａｎｋ」という単語は、文において他の単語と共に「ｂａｎｋ（銀行）の窓口係が預金を現金で受け取った」として用いられている場合、「漁師がｂａｎｋ（河岸）から川に釣り糸を投げた」という文の場合とは異なるｂａｎｋの射影を生み出す。また、あるクラスタに固有のある特定のデータは、このデータがただ１つの特定の意味でのみ用いられることを指示する。さらに、英語の「ｂａｎｋ」という単語には明らかに、例えば、金融機関、横方向の傾斜、川のそばの地面、飛行機の動き、ビリヤードの試合でのショットなど、様々な意味があるが、特定の文において他の単語と一緒に出現する場合には、縮約積は、「ｂａｎｋ」のような単語を、それが金銭または川の文脈について出現するか否かから文脈的に区別できるように、他の単語が由来する空間の影響に基づき、異なる文脈（すなわち、部分空間の向き）を出力として生成することになる。
【００４４】
以下では、縮約技術によってデータを幾何学的に符号化するプロセス３００の説明を、図３を参照して詳細に行う。一実施形態によれば、図３に示すプロセスは、１つまたは複数の専用処理回路（図４を参照して後述する）を含むコンピューティングデバイス上で実施することができる。
【００４５】
プロセス３００は、ステップＳ３０１で開始し、そこで、コンピューティングデバイスが受け取った入力データが、非類似度メトリックに基づいて意味クラスに分割される（ステップＳ３０３）。前述のように、意味クラスを生成するのにクラスタ解析技術のいずれか１つを利用してよい。
【００４６】
プロセスはステップＳ３０５に進み、そこで、分割された意味クラスに基づき、第１のデータ要素（Ａ）および第２のデータ要素（Ｂ）について部分空間が作成される。例えば、第１のデータ要素Ａは意味クラス（ＭＡ）の分割された集合Ｘに属すると考えると、Ａの同義語集合（すなわち、ステップＳ３０３で作成されたｓｙｎｓｅｔ／ブレード）は、Ａをそのメンバとする（Ｓ３０３で作成された）すべてのクラスから得られる。例えば、第１のデータ要素が「ｂａｎｋ」という単語であると考えると、ｂａｎｋのｓｙｎｓｅｔは、「ｂａｎｋ」をそのメンバとするすべてのクラス、例えば、「金融機関」というクラス、「地理的特徴」というクラスなどから得られる。同様に、第２のデータ要素（Ｂ）のｓｙｎｓｅｔも、Ｂをそのメンバとするすべてのクラスから得られる。
【００４７】
プロセスは次いでステップＳ３０７に進み、そこで、第１のデータ要素と第２のデータ要素とが同じ意味クラスに属するかどうか判定するための問合せが行われる。問合せに対する回答が肯定的である場合、プロセスはステップＳ３１７に進む。問合せに対する回答が否定的である場合には、プロセスはステップＳ３０９に進む。一実施形態では、ステップＳ３０７の問合せを行うことにより、有利には、ブレードが非退化である（すなわち、直交成分を有する）ことを保証することができる。
【００４８】
ステップＳ３０９のプロセスでは、（Ａ）および（Ｂ）によって構成される部分空間が、それぞれ、（Ａ）および（Ｂ）を含むすべての警戒クラスについて直交するように、第１のデータ要素（Ａ）を第２のデータ要素（Ｂ）に対して符号化する。一実施形態では、第１のデータ要素（Ａ）は第２のデータ要素（Ｂ）に対して、（Ａ）が（Ｂ）に先行する（すなわち、（Ａ）を（Ｂ）の後者として有し、Ｓ（Ａ）で表される）場合、（Ａ）および（Ｂ）が出現するすべてのクラスについて、Ｂの意味クラスに対するＡの意味クラスの、数量Ｓ（Ａ）＝Ａ＊（Ｘ＿｜Ｙ）を計算することによって符号化される。具体的には、Ｓ（Ａ）は、集合Ｘおよび集合Ｙの左縮約のスカラー倍として計算される。
【００４９】
プロセスは次いでステップＳ３１１に進み、そこで、第１のデータ要素（Ａ）が第２のデータ要素（Ｂ）に先行する場合の重み（ＷＴ（Ａ）で表される）が、ＷＴ（Ａ）＝Ａ＊（ＭＡ＿｜ＭＢ）として計算される。具体的には、ステップＳ３１１で、（Ｂ）に対する（Ａ）の重み配分、すなわち、意味クラスＭＢおよび意味クラスＭＡの左縮約のスカラー倍が計算される。一実施形態では、（Ｂ）に対する（Ａ）の重みは、意味クラスの各々における要素数を求めることによって計算することができる。
【００５０】
プロセスは次いでステップＳ３１３に進み、そこで、第２のデータ要素（Ｂ）が第１のデータ要素（Ａ）に対して符号化される。一実施形態では、（Ａ）に対する（Ｂ）の符号化は、上述の（Ｂ）に対する（Ａ）の符号化と同様の方法で行うことができる。
【００５１】
その後、ステップＳ３１５のプロセスでは、ステップＳ３１１１で計算した最大重み尺度に基づいて優勢な意味クラスを決定する。具体的には、対応する意味クラスを選択するために、シーケンス「ＡＢ」の文脈を伴う優勢なクラスとして、重みの結果の最大尺度が決定される。例えば、シーケンスＡＢが「ｌｅｎｄｉｎｇ  ｂａｎｋ（貸出銀行）」または「ｆｉｎａｎｃｉａｌ  ｂａｎｋ（金融銀行）」である場合には、「ｂａｎｋ」という単語を含む優勢な意味クラスは「金融機関」であると判定される。対照的に、シーケンスＡＢが「ｒｉｖｅｒ  ｂａｎｋ（河岸）」である場合には、「ｂａｎｋ」という単語を含む優勢な意味クラスは「地理的特徴」であると判定される。
【００５２】
さらに、ステップＳ３１７で、処理すべき次のデータ要素（Ｃ）が存在するかどうか判定するための問合せが行われる。ステップＳ３１７の問合せへの回答が肯定的である場合には、プロセスはステップＳ３１９に進み、そこで、これまでに作成された部分空間Ｓ（ＡＢ）を用いて次のデータ要素（Ｃ）が処理されて、順序ＡＢＣはＳ（ＡＢ）Ｓ（Ｃ）になる。言い換えると、ステップＳ３０９〜ステップＳ３１５に示すプロセスがデータ要素（Ｃ）について繰り返され、その後、プロセスはステップＳ３１７到達して、次のデータ要素が存在するかどうか判定する。
【００５３】
ステップＳ３１７での問合せへの回答が否定的である場合、プロセスはステップＳ３２１に進み、そこで、これまでに計算された優勢なクラスが出力され、その後プロセス３００は終了する。
【００５４】
前述のように、上述の実施形態の各機能は、１つまたは複数の処理回路によって実現されてもよい。処理回路は、プロセッサが回路を含む、プログラムされたプロセッサ（例えば、図４のプロセッサ４０３）を含む。また処理回路は、特定用途向け集積回路（ＡＳＩＣ）や記載した機能を果たすように配置された従来の回路構成要素といったデバイスも含む。回路は、回路の処理を改善し、人間によっても、本発明の実施形態の特徴を欠いた汎用コンピュータによってさえも不可能な方法でデータが処理されることを可能にする上述の機能および特徴を実現するように特に設計し、またはプログラムすることができる。
【００５５】
上述の様々な特徴は、コンピュータシステム（またはプログラマブルロジック）といったコンピューティングデバイスによって実現することができる。図４に、そうしたコンピュータシステム４０１を示す。図４のコンピュータシステム４０１は、特定の専用マシンであってよい。一実施形態において、コンピュータシステム４０１は、プロセッサ４０３がベクトル縮約を計算するようにプログラムされている場合には、特定の専用マシンである。
【００５６】
コンピュータシステム４０１は、磁気ハードディスク４０７や、リムーバブル・メディア・ドライブ４０８（例えば、フロッピー・ディスク・ドライブ、読取り専用コンパクト・ディスク・ドライブ、読取り／書込みコンパクト・ディスク・ドライブ、コンパクト・ディスク・ジュークボックス、テープドライブ、リムーバブル光磁気ドライブ）といった、情報および命令を記憶するための１つまたは複数の記憶装置を制御するためにバス４０２に結合されたディスクコントローラ４０６を含む。記憶装置は、適切なデバイスインターフェース（例えば、小型コンピュータ・システム・インターフェース（ＳＣＳＩ）、統合ドライブエレクトロニクス（ＩＤＥ）、拡張ＩＤＥ（Ｅ−ＩＤＥ）、ダイレクト・メモリ・アクセス（ＤＭＡ）、ウルトラＤＭＡ）を用いてコンピュータシステム８０１に追加することができる。
【００５７】
コンピュータシステム４０１は、専用論理回路（例えば、特定用途向け集積回路（ＡＳＩＣ））または構成可能な論理回路（例えば、シンプル・プログラマブル・ロジック・デバイス（ＳＰＬＤ）、コンプレックス・プログラマブル・ロジック・デバイス（ＣＰＬＤ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ））含んでいてもよい。
【００５８】
コンピュータシステム４０１は、コンピュータユーザへの情報表示を目的としてディスプレイ４１０を制御するためにバス４０２に結合されたディスプレイコントローラ４０９を含んでいてもよい。コンピュータシステムは、コンピュータユーザと対話し、プロセッサ４０３に情報を提供するための、キーボード４１１やポインティングデバイス４１２といった入力装置を含む。ポインティングデバイス４１２は、例えば、方向情報およびコマンド選択をプロセッサ４０３に伝え、ディスプレイ４１０上のカーソル移動を制御するための、マウス、トラックボール、タッチ・スクリーン・センサの場合の指、ポインティングスティックとすることができる。
【００５９】
プロセッサ４０３は、メインメモリ４０４といったメモリに含まれる１つまたは複数の命令の１つまたは複数のシーケンスを実行する。そうした命令は、ハードディスク４０７やリムーバブル・メディア・ドライブ４０８といった別のコンピュータ可読媒体からメインメモリ４０４に読み込むことができる。メインメモリ４０４に含まれる命令のシーケンスを実行するために、多重処理構成の１つまたは複数のプロセッサが用いられてもよい。代替の実施形態では、ソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて配線による回路が用いられてもよい。よって、実施形態は、ハードウェア回路とソフトウェアのいかなる特定の組み合わせにも限定されない。
【００６０】
上述のように、コンピュータシステム４０１は、本開示の教示のいずれかに従ってプログラムされた命令を保持し、本明細書に記載するデータ構造、表、レコード、または他のデータを記憶するための少なくとも１つのコンピュータ可読媒体またはメモリを含む。コンピュータ可読媒体の例は、コンパクトディスク、ハードディスク、フロッピーディスク、テープ、光磁気ディスク、ＰＲＯＭ（ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュＥＰＲＯＭ）、ＤＲＡＭ、ＳＲＡＭ、ＳＤＲＡＭ、または任意の他の磁気媒体、コンパクトディスク（例えばＣＤ−ＲＯＭ）、または任意の他の光媒体、パンチカード、紙テープ、または穴のパターンを有する他の物理的媒体である。
【００６１】
本開示は、コンピュータシステム４０１を制御し、本発明を実施するための１台または複数の装置を駆動し、コンピュータシステム４０１が人間のユーザと対話することを可能にするための、コンピュータ可読媒体のいずれか１つまたはそれらの組み合わせに記憶されたソフトウェアを含む。そうしたソフトウェアには、それだけに限らないが、デバイスドライバ、オペレーティングシステム、およびアプリケーションソフトウェアが含まれる。そうしたコンピュータ可読媒体は、本発明の任意の部分を実施する際に実行される処理の全部または一部（処理が分散されている場合）を実行するための本開示のコンピュータプログラム製品をさらに含む。
【００６２】
本発明の実施形態のコンピュータ・コード・デバイスは、それだけに限らないが、スクリプト、解釈可能プログラム、ダイナミック・リンク・ライブラリ（ＤＬＬ）、Ｊａｖａクラス、および完全な実行可能プログラムを含む、任意の解釈可能コード機構または実行可能コード機構であってよい。さらに、本発明の実施形態の処理の各部分は、性能、信頼性、および／またはコストを改善するために分散されていてもよい。
【００６３】
本明細書で用いる「コンピュータ可読媒体」という用語は、実行のためにプロセッサ４０３に命令を提供することに関与する任意の非一時的媒体を指す。コンピュータ可読媒体は、それだけに限らないが、不揮発性媒体や揮発性媒体を含む多くの形を取ることができる。不揮発性媒体には、例えば、ハードディスク４０７やリムーバブル・メディア・ドライブ４０８のような、光ディスク、磁気ディスク、光磁気ディスクが含まれる。揮発性媒体には、メインメモリ４０４のようなダイナミックメモリが含まれる。これに対して、伝送媒体には、バス４０２を構成するワイヤを含む、同軸ケーブル、銅線および光ファイバが含まれる。また伝送媒体は、電波通信や赤外線データ通信時に生成されるような、音響波や光波の形を取ってもよい。
【００６４】
様々な形態のコンピュータ可読媒体が、実行のためにプロセッサ４０３に１つまたは複数の命令の１つまたは複数のシーケンスを搬送するのに関与することができる。例えば、命令は、最初はリモートコンピュータの磁気ディスク上で保持される。リモートコンピュータは、本開示の全部または一部を実施するための命令をダイナミックメモリにリモートでロードし、それらの命令を、モデムを用いて電話回線で送信することができる。コンピュータシステム４０１にとってローカルなモデムが、電話回線上のデータを受信し、バス４０２にデータを乗せる。バス４０２は、メインメモリ４０４にデータを搬送し、そこからプロセッサ４０３が命令を取り出して実行する。メインメモリ４０４が受け取った命令は、任意選択で、プロセッサ４０３が実行する前または後に、記憶装置４０７または４０８に記憶されてもよい。
【００６５】
コンピュータシステム４０１は、バス４０２に結合された通信インターフェース４１３も含む。通信インターフェース４１３は、例えば、ローカル・エリア・ネットワーク（ＬＡＮ）４１５や、インターネットなどの別の通信ネットワーク４１６に接続されたネットワークリンク４１４に結合する双方向データ通信を提供する。例えば、通信インターフェース４１３は、任意のパケット交換ＬＡＮに接続するためのネットワーク・インターフェース・カードである。別の例として、通信インターフェース４１３は、総合サービス・ディジタル・ネットワーク（ＩＳＤＮ）カードであってもよい。無線リンクを実装することもできる。任意のそうした実装において、通信インターフェース４１３は、様々な種類の情報を表すディジタル・データ・ストリームを搬送する電気信号、電磁信号または光信号を送受信する。
【００６６】
ネットワークリンク４１４は、通常、１つまたは複数のネットワークを介して他のデータデバイスにデータ通信を提供する。例えば、ネットワークリンク４１４は、ローカルネットワーク４１５（例えば、ＬＡＮ）を介して、または通信ネットワーク４１６を介して通信サービスを提供するサービスプロバイダが運用する設備を介して、別のコンピュータへの接続を提供する。ローカルネットワーク４１４および通信ネットワーク４１６は、例えば、ディジタル・データ・ストリームを搬送する電気信号、電磁信号または光信号、および関連付けられた物理層（例えば、ＣＡＴ５ケーブル、同軸ケーブル、光ファイバなど）を用いる。コンピュータシステム４０１との間でディジタルデータを搬送する、様々なネットワークを通る信号、およびネットワークリンク４１４上の、通信インターフェース４１３を通る信号は、ベースバンド信号または搬送波ベースの信号として実施することができる。
【００６７】
ベースバンド信号は、ディジタルデータを、ディジタル・データ・ビットのストリームを記述する変調されていない電気パルスとして運び、この場合、「ビット」という用語は、シンボルを意味するように広義に解釈するべきであり、各シンボルは少なくとも１つまたは複数の情報ビットを運ぶ。ディジタルデータは、導電性媒体上を伝播する、または伝播媒体を介して電磁波として送信される振幅偏移変調信号、位相偏移変調信号および／または周波数偏移変調信号といった搬送波を変調するのに用いられてもよい。よって、ディジタルデータは、「有線」通信チャネルを介して変調されていないベースバンドデータとして送信され、かつ／または、搬送波を変調することによって、ベースバンドとは異なる所定の周波数帯域内で送信される。コンピュータシステム４０１は、（１つまたは複数の）ネットワーク４１５、４１６、ネットワークリンク４１４および通信インターフェース４１３を介して、プログラムコードを含むデータを送受信することができる。さらに、ネットワークリンク４１４は、携帯情報端末（ＰＤＡ）、ラップトップコンピュータ、携帯電話といったモバイル機器４１７へのＬＡＮ４１５を介した接続を提供することができる。
【００６８】
本開示の態様は、例として提案する本開示の特定の実施形態と併せて説明されているが、それらの例に対する代替、改変、および変形が行われてもよい。さらに、本明細書および添付の特許請求の範囲で用いる、単数形の「ａ」、「ａｎ」および「ｔｈｅ」は、文脈上明らかに他に意味に解されるのでない限り、複数形の指示対象を含むものであることに留意すべきである。
【図１】
0006704928.tif 000005
【図２】
0006704928.tif 000006
【図３】
0006704928.tif 000007
【図４】
0006704928.tif 000008