特許第6704928号(P6704928)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ キンダイ、インコーポレイテッドの特許一覧

<>
  • 特許6704928-重み付きサブシンボリックデータ符号化 図000005
  • 特許6704928-重み付きサブシンボリックデータ符号化 図000006
  • 特許6704928-重み付きサブシンボリックデータ符号化 図000007
  • 特許6704928-重み付きサブシンボリックデータ符号化 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6704928
(24)【登録日】2020年5月15日
(45)【発行日】2020年6月3日
(54)【発明の名称】重み付きサブシンボリックデータ符号化
(51)【国際特許分類】
   G06F 16/908 20190101AFI20200525BHJP
   G06F 16/901 20190101ALI20200525BHJP
【FI】
   G06F16/908
   G06F16/901
【請求項の数】44
【全頁数】19
(21)【出願番号】特願2017-550085(P2017-550085)
(86)(22)【出願日】2015年12月10日
(65)【公表番号】特表2018-503205(P2018-503205A)
(43)【公表日】2018年2月1日
(86)【国際出願番号】US2015064978
(87)【国際公開番号】WO2016094649
(87)【国際公開日】20160616
【審査請求日】2018年12月10日
(31)【優先権主張番号】62/090,198
(32)【優先日】2014年12月10日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】517204427
【氏名又は名称】キンダイ、インコーポレイテッド
【氏名又は名称原語表記】KYNDI, INC.
(74)【代理人】
【識別番号】100091982
【弁理士】
【氏名又は名称】永井 浩之
(74)【代理人】
【識別番号】100091487
【弁理士】
【氏名又は名称】中村 行孝
(74)【代理人】
【識別番号】100082991
【弁理士】
【氏名又は名称】佐藤 泰和
(74)【代理人】
【識別番号】100105153
【弁理士】
【氏名又は名称】朝倉 悟
(74)【代理人】
【識別番号】100107582
【弁理士】
【氏名又は名称】関根 毅
(72)【発明者】
【氏名】アルン、マジュムダール
【審査官】 松尾 真人
(56)【参考文献】
【文献】 国際公開第2013/132614(WO,A1)
【文献】 特開2009−093655(JP,A)
【文献】 特開2001−265802(JP,A)
【文献】 米国特許出願公開第2008/0183463(US,A1)
【文献】 斎藤 優太,日本語ワードネットを用いた意味の数学モデルの構築,第5回データ工学と情報マネジメントに関するフォーラム (第11回日本データベース学会年次大会) [online],電子情報通信学会データ工学研究専門委員会 日本データベース学会 情報処理学会データベースシステム研究会,2013年 5月31日,DEIM Forum 2013,C10−1,[2013年6月5日検索],Internet<URL:http://db-event.jpn.org/deim2013/proceedings/pdf/c10-1.pdf>
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00−16/958
17/27−17/28
(57)【特許請求の範囲】
【請求項1】
コンピューティングデバイスに含まれる回路によって実行される、順序付きデータを幾何学的に符号化する方法であって、前記方法は、
複数の意味クラスに基づいて、第1のデータ要素および第2のデータ要素によって構成される部分空間を生成するステップであって、前記第1のデータ要素は第1の数の意味クラスに含まれており、前記第2のデータ要素は第2の数の意味クラスに含まれている、前記生成するステップと、
回路が、前記第1のデータ要素を前記第2のデータ要素に対して、前記第1のデータ要素および前記第2のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第2のデータ要素を含む第2の集合に対する前記第1のデータ要素を含む第1の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第2のデータ要素に対する前記第1のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第2の数の意味クラスに対して前記第1の数の意味クラスの各々について行われる、前記計算するステップと、
前記第1のデータ要素および前記第2のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するステップであって、前記優勢な意味クラスは最大重み配分を有する、前記決定するステップと、
を含む、方法。
【請求項2】
非類似度メトリックに基づいてデータを複数の意味クラスに分割するステップ、
をさらに含む、請求項1に記載の方法。
【請求項3】
前記分割するステップは、
前記第1のデータ要素と前記第2のデータ要素との意味的距離を求めることによって前記非類似度メトリックを計算するステップであって、前記意味的距離は、前記データのオントロジの最上層と最下層との固定距離に基づいて導出される、前記計算するステップ、 をさらに含む、請求項2に記載の方法。
【請求項4】
前記符号化するステップは、前記第1の数の意味クラスの各意味クラスについて前記第2の数の意味クラスの各意味クラスに対して行われ、前記第2の数の意味クラスの各意味クラスは前記第1の数の意味クラスの各意味クラスとは異なる、請求項1に記載の方法。
【請求項5】
前記符号化するステップは、
前記第1のデータ要素が前記第2のデータ要素の後者であることに対応する第1のメトリックを計算するステップであって、前記第1のメトリックは、前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、前記計算するステップ、
をさらに含む、請求項1に記載の方法。
【請求項6】
前記第2のデータ要素に対する前記第1のデータ要素の前記重み配分は、前記第2の数の意味クラスの各々に対する前記第1の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項1に記載の方法。
【請求項7】
前記第2の数の意味クラスの各々に対する前記第1の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方と関連付けられた前記重み配分は、ジャッカードメトリック、ダイス係数メトリック、ハミング距離メトリック、マンハッタンメトリック、およびコサインメトリックのうちの1つである、請求項6に記載の方法。
【請求項8】
前記第2のデータ要素に対する前記第1のデータ要素の前記重み配分は、各意味クラスに含まれる要素の数に基づくものである、請求項1に記載の方法。
【請求項9】
前記分割するステップは、
各データクラスタが少なくとも1つの意味クラスを含む複数のデータクラスタを生成するステップであって、データクラスタには実質的に類似したデータ要素が割り当てられる、前記生成するステップ、
をさらに含む、請求項2に記載の方法。
【請求項10】
いくつかの意味クラスが、データクラスタ、品詞、言語同義語集合、およびオントロジのうちの1つまたは複数である、請求項1に記載の方法。
【請求項11】
前記決定するステップは、
前記第2のデータ要素が前記第1のデータ要素の後者である場合について、前記符号化するステップおよび前記計算するステップを繰り返すステップ、
をさらに含む、請求項1に記載の方法。
【請求項12】
前記順序付きデータは、言語データ、医療データ、および画像データのうちの1つである、請求項1に記載の方法。
【請求項13】
前記データクラスタに属する各意味クラスは、前記複数のデータクラスタによって構成される不均質な空間におけるブレードに対応する、請求項9に記載の方法。
【請求項14】
前記意味クラスの各々には固有のメトリックが割り当てられており、前記固有のメトリックは前記左縮約演算および右縮約演算の一方の前記計算において利用される、請求項1に記載の方法。
【請求項15】
順序付きデータを幾何学的に符号化するための装置であって、前記装置は、
回路を含み、前記回路は、複数の意味クラスに基づいて、第1のデータ要素および第2のデータ要素によって構成される部分空間を生成するように構成されており、前記第1のデータ要素は第1の数の意味クラスに含まれており、前記第2のデータ要素は第2の数の意味クラスに含まれており、
前記回路は、前記第1のデータ要素を前記第2のデータ要素に対して、前記第1のデータ要素および前記第2のデータ要素によって構成される前記生成された部分空間が直交するように符号化するように構成されており、前記符号化は、前記第2のデータ要素を含む第2の集合に対する前記第1のデータ要素を含む第1の集合の左縮約および右縮約の一方を計算することによって行われ、
前記回路は、前記第2のデータ要素に対する前記第1のデータ要素の重み配分を計算するように構成されており、前記重み配分は、前記第2の数の意味クラスに対して前記第1の数の意味クラスの各々について行われ、
前記回路は、前記第1のデータ要素および前記第2のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するように構成されており、前記優勢な意味クラスは最大重み配分を有する、
装置。
【請求項16】
前記回路は、非類似度メトリックに基づいてデータを複数の意味クラスに分割するようにさらに構成されている、請求項15に記載の装置。
【請求項17】
前記回路は、前記第1のデータ要素と前記第2のデータ要素との意味的距離を求めることによって前記非類似度メトリックを計算するようにさらに構成されており、前記意味的距離は、前記データのオントロジの最上層と最下層との固定距離に基づいて導出される、請求項16に記載の装置。
【請求項18】
前記回路は、前記第1の数の意味クラスの各意味クラスについて前記第2の数の意味クラスの各意味クラスに対して符号化を行うように構成されていることによって、第1のデータ要素を符号化するようにさらに構成されており、前記第2の数の意味クラスの各意味クラスは、前記第1の数の意味クラスの各意味クラスとは異なる、請求項15に記載の装置。
【請求項19】
前記回路は、前記第1のデータ要素が前記第2のデータ要素の後者であることに対応する第1のメトリックを計算するように構成されていることによって第1のデータ要素を符号化するようにさらに構成されており、前記第1のメトリックは、前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項15に記載の装置。
【請求項20】
前記第2のデータ要素に対する前記第1のデータ要素の前記重み配分は、前記第2の数の意味クラスの各々に対する前記第1の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項15に記載の装置。
【請求項21】
前記第2の数の意味クラスの各々に対する前記第1の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方と関連付けられた前記重み配分は、ジャッカードメトリック、ダイス係数メトリック、ハミング距離メトリック、マンハッタンメトリック、およびコサインメトリックのうちの1つである、請求項20に記載の装置。
【請求項22】
前記第2のデータ要素に対する前記第1のデータ要素の前記重み配分は、各意味クラスに含まれる要素の数に基づくものである、請求項15に記載の装置。
【請求項23】
前記回路は、前記データを、各データクラスタが少なくとも1つの意味クラスを含む複数のデータクラスタを生成することによって分割するように構成されており、データクラスタには実質的に類似したデータ要素が割り当てられる、請求項16に記載の装置。
【請求項24】
いくつかの意味クラスが、データクラスタ、品詞、言語同義語集合、およびオントロジのうちの1つまたは複数である、請求項15に記載の装置。
【請求項25】
前記回路は、前記第2のデータ要素が前記第1のデータ要素の後者である場合について、前記符号化および前記計算を繰り返すようにさらに構成されている、請求項15に記載の装置。
【請求項26】
前記順序付きデータは、言語データ、医療データ、および画像データのうちの1つである、請求項16に記載の装置。
【請求項27】
前記データクラスタに属する各意味クラスは、前記複数のデータクラスタによって構成される不均質な空間におけるブレードに対応する、請求項23に記載の装置。
【請求項28】
前記意味クラスの各々には固有のメトリックが割り当てられており、前記固有のメトリックは前記左縮約演算および右縮約演算の一方の前記計算において利用される、請求項15に記載の装置。
【請求項29】
コンピュータによって実行されると、前記コンピュータに、順序付きデータを幾何学的に符号化する方法を実行させるコンピュータプログラム命令を含む非一時的なコンピュータ可読媒体であって、前記方法は、
複数の分割された意味クラスに基づいて、第1のデータ要素および第2のデータ要素によって構成される部分空間を生成するステップであって、前記第1のデータ要素は第1の数の分割された意味クラスに含まれており、前記第2のデータ要素は第2の数の分割された意味クラスに含まれている、前記生成するステップと、
回路が、前記第1のデータ要素を前記第2のデータ要素に対して、前記第1のデータ要素および前記第2のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第2のデータ要素を含む第2の集合に対する前記第1のデータ要素を含む第1の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第2のデータ要素に対する前記第1のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第2の数の意味クラスに対して前記第1の数の意味クラスの各々について行われる、前記計算するステップと、
前記第1のデータ要素および前記第2のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するステップであって、前記優勢な意味クラスは最大重み配分を有する、前記決定するステップと、
を含む、非一時的なコンピュータ可読媒体。
【請求項30】
前記方法は、
非類似度メトリックに基づいてデータを複数の意味クラスに分割するステップ、
をさらに含む、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項31】
前記分割するステップは、
前記第1のデータ要素と前記第2のデータ要素との意味的距離を求めることによって前記非類似度メトリックを計算するステップであって、前記意味的距離は、前記データのオントロジの最上層と最下層との固定距離に基づいて導出される、前記計算するステップ、 をさらに含む、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項32】
前記符号化するステップは、前記第1の数の意味クラスの各意味クラスについて前記第2の数の意味クラスの各意味クラスに対して行われ、前記第2の数の意味クラスの各意味クラスは前記第1の数の意味クラスの各意味クラスとは異なる、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項33】
前記符号化するステップは、
前記第1のデータ要素が前記第2のデータ要素の後者であることに対応する第1のメトリックを計算するステップであって、前記第1のメトリックは、前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、前記計算するステップ、
をさらに含む、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項34】
前記第2のデータ要素に対する前記第1のデータ要素の前記重み配分は、前記第2の数の意味クラスの各々に対する前記第1の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方のスカラー倍として計算される、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項35】
前記第2の数の意味クラスの各々に対する前記第1の数の意味クラスの各々の前記左縮約演算および前記右縮約演算の一方と関連付けられた前記重み配分は、ジャッカードメトリック、ダイス係数メトリック、ハミング距離メトリック、マンハッタンメトリック、およびコサインメトリックのうちの1つである、請求項34に記載の非一時的なコンピュータ可読媒体。
【請求項36】
前記第2のデータ要素に対する前記第1のデータ要素の前記重み配分は、各意味クラスに含まれる要素の数に基づくものである、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項37】
前記分割するステップは、
各データクラスタが少なくとも1つの意味クラスを含む複数のデータクラスタを生成するステップであって、データクラスタに実質的に類似したデータ要素が割り当てられる、前記生成するステップ、
をさらに含む、請求項30に記載の非一時的なコンピュータ可読媒体。
【請求項38】
いくつかの意味クラスが、データクラスタ、品詞、言語同義語集合、およびオントロジのうちの1つまたは複数である、請求項37に記載の非一時的なコンピュータ可読媒体。
【請求項39】
前記決定するステップは、
前記第2のデータ要素が前記第1のデータ要素の後者である場合について、前記符号化するステップおよび前記計算するステップを繰り返すステップ、
をさらに含む、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項40】
前記順序付きデータは、言語データ、医療データ、および画像データのうちの1つである、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項41】
前記データクラスタに属する各意味クラスは、前記複数のデータクラスタによって構成される不均質な空間におけるブレードに対応する、請求項37に記載の非一時的なコンピュータ可読媒体。
【請求項42】
前記意味クラスの各々には固有のメトリックが割り当てられており、前記固有のメトリックは前記左縮約演算および右縮約演算の一方の前記計算において利用される、請求項29に記載の非一時的なコンピュータ可読媒体。
【請求項43】
コンピューティングデバイスに含まれる回路によって実行される、順序付きデータを幾何学的に符号化する方法であって、前記方法は、
複数の意味クラスに基づいて、第1のデータ要素および第2のデータ要素によって構成される部分空間を生成するステップであって、前記第1のデータ要素は第1の数の意味クラスに含まれており、前記第2のデータ要素は第2の数の意味クラスに含まれている、前記生成するステップと、
回路が、前記第1のデータ要素を前記第2のデータ要素に対して、前記第1のデータ要素および前記第2のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第2のデータ要素を含む第2の集合に対する前記第1のデータ要素を含む第1の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第2のデータ要素に対する前記第1のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第2の数の意味クラスに対して前記第1の数の意味クラスの各々について行われる、前記計算するステップと、
回路が、前記計算された重み配分に基づいて前記符号化された部分空間に索引付けするステップと、
を含む、方法。
【請求項44】
コンピューティングデバイスに含まれる回路によって実行される、順序付きデータを幾何学的に符号化する方法であって、前記方法は、
複数の意味クラスに基づいて、第1のデータ要素および第2のデータ要素によって構成される部分空間を生成するステップであって、前記第1のデータ要素は第1の数の意味クラスに含まれており、前記第2のデータ要素は第2の数の意味クラスに含まれている、前記生成するステップと、
回路が、前記第1のデータ要素を前記第2のデータ要素に対して、前記第1のデータ要素および前記第2のデータ要素によって構成される前記生成された部分空間が直交するように符号化するステップであって、前記符号化は、前記第2のデータ要素を含む第2の集合に対する前記第1のデータ要素を含む第1の集合の左縮約および右縮約の一方を計算することによって行われる、前記符号化するステップと、
回路が、前記第2のデータ要素に対する前記第1のデータ要素の重み配分を計算するステップであって、前記重み配分は、前記第2の数の意味クラスに対して前記第1の数の意味クラスの各々について行われる、前記計算するステップと、
回路が、前記計算された重み配分に基づいて前記符号化された部分空間の中から部分空間を選択するステップと、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、参照によりその全内容が本明細書に組み入れられる、2014年12月10日に出願された米国仮特許出願第62/090198号に基づくものであり、その優先権を主張するものである。
【0002】
本明細書に記載する実施形態は、一般に、関連した重み付き順序付きデータ配列をサブシンボリックコードとして符号化するためのフレームワークに関する。サブシンボリックコードは、探索、索引付け、クラスタ化、データ変換および/またはデータ翻訳といった操作を実行するためのシームレスなフレームワークを提供する。
【背景技術】
【0003】
ここで提供する背景説明は、本開示の文脈を一般的に提示することを目的とするものである。この背景の項に記載されている範囲内の本発明者らの研究、および、通常は、出願の時点において先行技術とみなされない本説明の局面については、明示的黙示的を問わず、本開示に対する先行技術と認めない。
【0004】
高次元データを符号化し、解釈することは難しい。一手法では、対象とするデータがより高次元の空間内の埋め込まれた非線形多様体上にあると仮定することによってデータを単純化する。多様体が十分に低次元のものである場合には、データを低次元空間で視覚化することができる。しかし、現在利用可能なすべてのデータ処理技術は、空間が均質であること、および空間ごとにただ1つの多様体しか存在しないことを必要とする(ゆえに仮定する)。
【0005】
さらに、現在利用可能なすべてのデータ処理技術では、何らかの形の基礎をなす近接行列および従来のベクトル空間の手法、例えば、潜在意味解析、主成分分析、多次元尺度構成法、ニューラルネットワーク、およびすべての前述のデータ処理手法の変形を用いる。さらに、そうしたデータ処理方法の大きな欠点は、データ間の順序付き関係が対称距離測定値として作られることである。よって、そうしたデータ処理技術のフレームワークでは、データの元の順序に依存した特性が失われる。例えば、「人間が犬を噛んだ」のような表現を、「犬が人間を噛んだ」のような表現と識別できない。
【0006】
したがって、フレームワークがおそらくは不均質な空間内の複数の多様体をサポートし、各多様体または複数の多様体が、より高次元の空間内で固有の姿勢、向き、および立場を有しうるような方法でデータ関係を表し、処理することができるフレームワークが求められている。
【発明の概要】
【0007】
本開示の一態様は、おそらくは不均質な空間内の複数の多様体をサポートすることができる、幾何学的代数の手法を実施することによってデータ関係を表し、処理するフレームワークを提供する。さらに、各多様体は、より高次元の空間内で固有の姿勢(すなわち、多様体のピッチ、ヨー、およびロール)、向き、ならびに立場(すなわち、ある多様体と他の多様体との関係)を有していてよい。
【0008】
本開示は、データ間の関係が順序付けられ、順序付き関係が対応するデータの非類似度測定値に基づいて符号化される、データを符号化する技術を提供する。さらに、4分の1回転操作(すなわち、Π/2回転)で、ベクトル空間の一般化において、すなわちクリフォード代数およびその最新の変形である幾何学的代数においてデータ順序を符号化する。その際に、データのクラスタを、より一般的な意味クラスのメンバとみなすことができる。例えば、特定の物語のすべての単語およびそれらの単語の順序を、その名前を物語の題名とする意味クラスとみなすことができる(例えば、サー・アーサー・コナン・ドイルによるシャーロック・ホームズについてのすべての物語に「シャーロック・ホームズ」という意味クラスでラベル付けすることができ、各物語に物語の題名でラベル付けすることができ、順序付きの単語集合を多様体とみなすことができる)。
【0009】
したがって、本開示は、「人間が犬を噛んだ」と「犬が人間を噛んだ」といった表現を容易に区別すると共に、意味クラスも区別し、それによって、幾何学的形態とみなされる意味クラスの間でデータを解釈し、解析する能力を提供することができるデータ表現を提供する。本開示はいかなる特定の種類のデータにも限定されないことを理解されたい。本明細書に記載するデータ符号化プロセスの特徴はむしろ、画像データ、言語データ、医療データ、または(探索や類推検索といった)順序の維持およびパターンベースの計算処理が望ましい任意の種類のデータを符号化するのに用いることができる。
【0010】
一実施形態によれば、データを幾何学的に符号化する方法が記載されており、本方法は、コンピューティングデバイスに含まれる回路によって実行され、本方法は、非類似度メトリックに基づいてデータを複数の意味クラスに分割するステップと、複数の分割された意味クラスに基づいて、第1のデータ要素および第2のデータ要素によって構成される部分空間を生成するステップであって、第1のデータ要素は第1の数の分割された意味クラスに含まれており、第2のデータ要素は第2の数の分割された意味クラスに含まれている、生成するステップと、回路が、第1のデータ要素を第2のデータ要素に対して、第1のデータ要素および第2のデータ要素によって構成される生成された部分空間が直交するように符号化するステップであって、符号化は、第1の数の意味クラスの各意味クラスについて、第1の数の意味クラスの各意味クラスと等しくない第2の数の意味クラスの各意味クラスに対して行われる、符号化するステップと、回路が、第2のデータ要素に対する第1のデータ要素の重み配分を計算するステップであって、重み配分は、第1の数の意味クラスおよび第2の数の意味クラスの各々について行われる、ステップと、第1のデータ要素および第2のデータ要素の順序付きシーケンスに対応する優勢な意味クラスを決定するステップであって、優勢な意味クラスは最大重み配分を有する、ステップと、を含む。
【0011】
以上の各段落は概説として提供したものであり、添付の特許請求の範囲を限定するためのものではない。記載する実施形態、およびさらなる利点は、以下の詳細な説明を添付の図面と併せて読めば最もよく理解されるであろう。
【0012】
例として提案する本開示の様々な実施形態を、以下の図を参照して詳細に説明する。図面において、類似した参照番号は類似した要素を指す。
【図面の簡単な説明】
【0013】
図1】ロジェ・シソーラスを用いた例示的なデータ表現および分割を示す図である。
図2】一実施形態による、ベクトルと二重ベクトルとの縮約積を示す図である。
図3】重み付き順序付きデータを符号化するために行われるステップを示す流れ図である。
図4】一実施形態によるコンピューティングデバイスを示すブロック図である。
【発明を実施するための形態】
【0014】
次に図面を参照する。図面において、類似した参照番号は、複数の図面にわたって同一の部品または対応する部品を指示する。したがって、以上の考察では、単に、本開示の例示的な実施形態を開示し、説明しているにすぎない。当業者は理解するように、本開示は、その趣旨または本質的特徴から逸脱することなく、他の特定の形態として具体化されてもよい。したがって、本開示は例示のためのものであり、本発明および他の請求項の範囲を限定するためのものではない。本開示は、本明細書の教示の容易に認識できる変形を含めて、前述の請求の用語の範囲を、いかなる発明の主題も公衆に放棄されないように、一部定義するものである。
【0015】
図1を見ると、ロジェ・シソーラスを用いた例示的なデータ表現および分割が示されている。ロジェ・シソーラスは6つの主要なクラスで構成されている。各クラスは複数のディビジョンで構成され、各ディビジョンは(1つまたは複数の)セクションをさらに含むことができる。各クラスは、個々の「意味クラスタ」または意味的にリンクした単語についての1000を超える分岐を含むツリーとして概念化することができる。これらの単語は、厳密には同義語ではないが、意味の色や含意、または概念のスペクトルと見ることができる。最も一般的な単語の1つが、そのクラスの見出し語としてスペクトルを代表するために選択され、その見出し語でグループ全体がラベル付けされる。
【0016】
具体的には、ロジェ・シソーラスは以下の6つのクラスで構成されている。クラスI−抽象的関係を表す単語;クラスII−空間に関連する単語;クラスIII−物質に関連する単語;クラスIV−知的能力に関連する単語;クラスV−自発的な力、個人的、社会的意志に関連する単語;ならびにクラスVI−感情および道徳的な力に関連する単語。
【0017】
図1には、クラスV(すなわち、(2)とラベル付けされている、自発的な力、個人的、社会的意志に関連する単語)のルートオントロジ(「roget_ontology」、(1)とラベル付けされている)が示されている。このクラスは、それぞれ、意志、個人、一般的な意志、および文脈とラベル付けされた部分空間(3)〜(6)を含む。加えて、図1には、名詞(8)というカテゴリの(9)とラベル付けされた見出し語「harvest」も示されている。具体的には、後述するように、一実施形態では、「harvest」単語というは、データセット要素のリスト(10)を含むのではなく、意味クラスに対応している。意味クラス内のエントリのリスト(10)は、そのリストに割り振られたケース索引618によって識別し、さらなる処理に用いることができる。
【0018】
「harvest」という単語(9)は、「interest」という単語(10)を含む図示の単語スペクトルを特徴付ける。したがって、ロジェ・シソーラスは、部分空間を集合体空間内でシームレスに表現することができるフレームワークを提供し、接続(11)で示すように、部分空間内で(対応するケース索引618によって識別される)データセット要素を分配する機構をさらに提供する。具体的には、前述のように、618のデータ要素は、「good」という単語(7)と厳密には同義ではないが、意味の含意または概念のスペクトルと見ることができる。
【0019】
本開示の一実施形態によれば、データは、オントロジもしくは辞書、注釈付きスキーム、またはデータ間の非類似度を識別する任意の他の手段を参照して、非類似度を用いて分割することができる。他方、データ間の関係は、基礎をなす意味クラス関係を表現し、残るのが、データ間の反対称重み付き測定値(すなわち、メトリック)による、いずれかの意味クラスに関連したデータ間の全構成要素の非類似度になるように、ある意味クラスの最も異なった部分を別の意味クラスの最も異なった部分からどのようにして取り出すことができるかによって定義されることを理解されたい。
【0020】
具体的には、一実施形態では、データを分割するためにクラスタ解析技術を実装することができる。クラスタ解析は、データの分類に用いられる教師なし学習技術である。データ要素は、距離または非類似度関数に基づくデータ要素の近接集合体を表す、クラスタと呼ばれるグループに分割される。同一の要素対は、ゼロの距離または非類似度を有し、他のすべての要素対は正の距離または非類似度を有する。さらに、表Iに示すように、分割されるべきデータは、データ要素のリスト、または要素およびラベルに索引付けする規則とすることができることを理解されたい。
【0021】
【表1】
【0022】
さらに、前述のように、クラスタ化技術は任意のデータセットに適用することができる。ただし、特定の集合内の各要素がその他の要素からどのくらい離れているかを特徴付けるための尺度が必要であることに留意されたい。そうした尺度は、1対のデータ要素間の重み付き測定値に対応する。具体的には、データ要素間の距離を生成する関数が必要であり、この関数はデータの型に基づいて決定されてよい。
【0023】
例えば、数値データ要素の場合、関数は、ユークリッド距離、マンハッタン距離、チェス盤距離、ブレイ・カーチス距離、コサイン距離、相関距離などのうちの1つであってもよい。同様に、ブール型のデータの場合、距離関数はマッチング非類似度関数、ジャッカード非類似度、ユール非類似度、ラッセル・ラオ非類似度、ダイス非類似度などのうちの1つであってよく、文字列型のデータ要素の場合、距離関数は、編集距離関数、ハミング距離関数、ダムラウ・レーベンシュタイン距離関数のうちの1つであってよい。
【0024】
一実施形態によれば、非類似度メトリックに基づいてデータを分割する好ましい機構は、参照によりその全体が本明細書に組み込まれる米国特許出願第13/418021号明細書に記載されているようなデータクラスタ化機構によって行うことができる。
【0025】
幾何学的代数では、本明細書で「ブレード」と呼ぶ、空間Vのより高次元の有向部分空間が計算の基本要素である。さらに、本開示では、k−ブレードという用語を、k次元の均質な部分空間を表すのに用いる。ベクトルa1∧a2…∧akの外積は、その引き数が反対称的、結合的、線形である。外積を、a1∧a2∧a3...∧akと表記し、k−ブレードと呼ぶ。ベクトルの外積は、外積はスカラー値量であることを強制されず、そのため、外積には、k次元の部分空間要素の「姿勢」(すなわち、ベクトルのピッチ、ロール、およびヨー)ならびに向きと、そのより高次元の空間内での大きさとを表す能力がある、という点でベクトルの一般的な行列式計算とは異なることを理解されたい。
【0026】
外積は、「張る部分空間」の概念に計算上の意味を与えることを理解されたい。ブレードの幾何学的性質は、異なるグレードのメトリック尺度間(すなわち、多重ベクトル間)に関係があることを示す。よって、ベクトルの縮約積は、対称ではないブレード間の関係に対応し、次の定義で示すように結合的ではない。すべてのCについて、(A∧B)*C=A*(B_|C)、式中、*は幾何スカラー積であり、_|は左縮約積である。この定義は、右縮約積「|_」)を用いて双対形式で書くこともできることを理解されたい。一実施形態によれば、縮約積はΠ/2回転(すなわち1/4回転)を含み、回転は非可換であるため、この性質を用いてデータにおける順序を回転のシーケンスとして表すことができる。
【0027】
次に図2を見ると、一実施形態による、ベクトルと二重ベクトルとの縮約積が示されている。二重ベクトルは2つのベクトルの外積演算を行うことによって形成されることに留意されたい。二重ベクトルは、有向平面セグメントと解釈することができる。例えば、二重ベクトルa∧bは、エッジaおよびエッジbを有する平行四辺形の面積と等しい大きさを有し、aとbとで張られる平面の姿勢を有し、aをbと位置合わせするはずの回転の意味である向きを有する。
【0028】
具体的には、図2を参照すると、平面B((1)とラベル付けされている)は、2つのベクトルの外積演算によって形成される二重ベクトルを表す。さらに、ベクトルX((2)とラベル付けされている)は、より高次元の空間におけるベクトルを表す。X’((4)とラベル付けされている)とX”とは、ベクトルXの水平射影と垂直射影とに対応している。図2に示すように、ベクトルXの水平射影X’は、二重ベクトルの平面内にあることに留意されたい。(3)とラベル付けされたベクトルXと二重ベクトルBとの縮約積(X_|Bで表される)は、射影X’に直交している。
【0029】
図2に示すように、記号「_|」は縮約内積を表す。任意の多重ベクトルa、b、およびcとスカラーλおよびβについて、以下の法則および公理のセットが適用される。
【0030】
スカラー内積:λ_|β=λβ
ベクトルおよびスカラー:a_|β=0
スカラーおよびベクトル:λ_|b=λb
ベクトル:a_|b=ab
ベクトルおよび多重ベクトルa_|(b∧c)=(a_|b)∧c−b∧(a_|c)
分配法則(a∧b)_|c=a_|(b_|c)
内積を2つのベクトルに適用すると、結果は線形代数のドット積とまったく同じになることに留意されたい。しかし、より高いグレードのブレードを用いて内積を適用すると、ブレードのグレードが低下する結果となる。
【0031】
一実施形態によれば、各クラスタは、データの集合体を表す。さらに、各データは複数のクラスタで出現してよい。各データは、クラスタの集合体の配分(すなわち重み)として扱われる。具体的には、各クラスタは幾何学的代数における基本ブレードである。例えば、WordNetやロジェ・シソーラス、他の同様のテキストリソースといった辞書およびリソースを符号化する際には、クラスタは、単語が同種の意味を共有する、本明細書で「synset」と呼ぶ同義語集合に対応する。加えて、クラスタを、名詞、動詞、形容詞といった型に分類することもでき、各クラスタをsynsetにさらに分割することもできる。一実施形態によれば、以下の表IIに示す対応関係を利用することができる。
【0032】
【表2】
【0033】
前述のように、特定の重要な(すなわちデータとしての単語の順序における)意味的極性を有するデータクラスタの例を、シソーラス、オントロジまたは辞書において見出すことができる。(図4を参照して後述する)本開示の方法を用いるために、データは、そうしたクラスタを文法型およびsynsetとして用いて基本ブレードを構築するために分割される。したがって、一実施形態では、表IIに示す対応関係を、以下の表IIIに示すように詳述することができる。
【0034】
【表3】
【0035】
したがって、本開示の一実施形態では、基本ブレードは、単語、そのクラスタにおける相対位置、およびクラスタに割り当てられた意味クラスによって決定される。ブレードが非退化である(すなわち、直交成分を有する)ことが保証されなければならないことに留意されたい。よって、各縮約積は、メトリック(例えば、ジャッカードメトリック、ダイス係数、コサインメトリック、または他の類似した選択肢)がユーザによって定義され、または供給されることを必要とする。
【0036】
一実施形態では、ベクトル「a」と、ベクトル「b」と「c」との外積によって形成される二重ベクトル「B」(すなわち、B=b∧c)との内積は、以下の性質が成り立つ。
【0037】
左縮約:a_|B=1/2[aB−Ba]
右縮約:B|_a=1/2[Ba−aB]
およびa_|B=−B|_a
a・bは幾何積の0−グレード部分であることに留意されたい。a・bのグレードはaとbとのグレードの差である。この性質を外挿することにより、aとBとの内積は幾何積aBになり、そのグレードはaとBとのグレードの差である。左縮約は幾何積aBの反対称部分であり、右縮約はBaの反対称部分である。よって、二重ベクトルB=b∧cとベクトルaとの左縮約a_|Bを実際に評価するためには、縮約は既知の積として表現されなければならない。このために、縮約および外積を幾何積として表現することにより、a_|b∧c=a・bc−a・cbが得られる。
【0038】
図2の非限定に示すように、a_|b∧cはベクトルであり、b∧c平面にあり、ベクトル「a」と直交することに留意されたい。a_|b∧cの幾何学的意味は、「a」はベクトルであり、平面b∧cにおいて「a」の正射影を1/4回転だけ回転させ、その結果を「bc」だけさらに拡大することによって得ることができる、というものである。よって、一実施形態では、縮約積は、ロータ変換のプロキシに対応し、当業者であれば、ベクトルと二重ベクトルとの縮約積の下のベクトルの成分を、二重ベクトルの平面におけるベクトルの成分とのサンドイッチ積(すなわち、ロータRおよびベクトルvの場合には、サンドイッチ積RvRになる)における1/4回転ロータとして構築できることを示すことができる。
【0039】
一実施形態では、次のように本開示の様々な距離関数がメトリックを得るために縮約の計算に埋め込まれる。幾何学的代数には2個のブレードがあるので、N次元の任意の代数について、ブレードを表すのに2個の2進ビットを利用することができ、またはコンフォーマルモデルを用いる際に、2(N+2)ビットを利用することができることになる。したがって、内側の縮約積のメトリック部分を表すための、ジャッカード距離、ダイス係数、ハミングまたはマンハッタンメトリックなどといった距離関数と共に、幾何学的代数内で2進ビットのベクトルコードを利用して外積部分を表すことができることになる。
【0040】
一実施形態によれば、2つの部分空間は、それら部分空間の埋め込みデータが、それぞれ、部分空間内でのそれらの存在およびそれらのソースブレード(すなわち、それらが由来するクラスタ)から計算された距離測定値に従って「相関」し、または「関係」している場合、意味的距離(SD)によって関連付けられる。2つの部分空間が異なる場合、類似度を定めるためにt−ノルムを計算することができる。t−ノルム積および最小値は、ルカーシェビッチt−ノルム法によって計算することができる。したがって、文を部分空間と考えると、1つの埋め込みによって、2文間の意味尺度を表現し、それらのクラスに基づいて類推を提供するために最大尺度を有する意味クラス間を関連付けることができる。
【0041】
例えば、ロジェ1911シソーラスをソースとして用い、本開示のデータ表現のシステムおよび方法において周知のシソーラスを符号化すると、「若い女の子」と「かわいい花」との間で計算により、2つの入力文の関係としての「若さおよび美しさ」という意味クラス結果が生み出される。
【0042】
加えて、複数の異なるクラスタに同一のラベルを有するデータ点が存在している場合、例えば、あるクラスタ内の「bank」という単語が、それぞれ特定の意味で、他のクラスタにおいても出現する場合には、部分空間が相対順序で他のデータによって構成されている場合に、これらの意味を区別することができる。というのは、当該単語が用いられている文を分類する意味クラスと文脈が等価になるからである。
【0043】
例えば、「bank」という単語は、文において他の単語と共に「bank(銀行)の窓口係が預金を現金で受け取った」として用いられている場合、「漁師がbank(河岸)から川に釣り糸を投げた」という文の場合とは異なるbankの射影を生み出す。また、あるクラスタに固有のある特定のデータは、このデータがただ1つの特定の意味でのみ用いられることを指示する。さらに、英語の「bank」という単語には明らかに、例えば、金融機関、横方向の傾斜、川のそばの地面、飛行機の動き、ビリヤードの試合でのショットなど、様々な意味があるが、特定の文において他の単語と一緒に出現する場合には、縮約積は、「bank」のような単語を、それが金銭または川の文脈について出現するか否かから文脈的に区別できるように、他の単語が由来する空間の影響に基づき、異なる文脈(すなわち、部分空間の向き)を出力として生成することになる。
【0044】
以下では、縮約技術によってデータを幾何学的に符号化するプロセス300の説明を、図3を参照して詳細に行う。一実施形態によれば、図3に示すプロセスは、1つまたは複数の専用処理回路(図4を参照して後述する)を含むコンピューティングデバイス上で実施することができる。
【0045】
プロセス300は、ステップS301で開始し、そこで、コンピューティングデバイスが受け取った入力データが、非類似度メトリックに基づいて意味クラスに分割される(ステップS303)。前述のように、意味クラスを生成するのにクラスタ解析技術のいずれか1つを利用してよい。
【0046】
プロセスはステップS305に進み、そこで、分割された意味クラスに基づき、第1のデータ要素(A)および第2のデータ要素(B)について部分空間が作成される。例えば、第1のデータ要素Aは意味クラス(MA)の分割された集合Xに属すると考えると、Aの同義語集合(すなわち、ステップS303で作成されたsynset/ブレード)は、Aをそのメンバとする(S303で作成された)すべてのクラスから得られる。例えば、第1のデータ要素が「bank」という単語であると考えると、bankのsynsetは、「bank」をそのメンバとするすべてのクラス、例えば、「金融機関」というクラス、「地理的特徴」というクラスなどから得られる。同様に、第2のデータ要素(B)のsynsetも、Bをそのメンバとするすべてのクラスから得られる。
【0047】
プロセスは次いでステップS307に進み、そこで、第1のデータ要素と第2のデータ要素とが同じ意味クラスに属するかどうか判定するための問合せが行われる。問合せに対する回答が肯定的である場合、プロセスはステップS317に進む。問合せに対する回答が否定的である場合には、プロセスはステップS309に進む。一実施形態では、ステップS307の問合せを行うことにより、有利には、ブレードが非退化である(すなわち、直交成分を有する)ことを保証することができる。
【0048】
ステップS309のプロセスでは、(A)および(B)によって構成される部分空間が、それぞれ、(A)および(B)を含むすべての警戒クラスについて直交するように、第1のデータ要素(A)を第2のデータ要素(B)に対して符号化する。一実施形態では、第1のデータ要素(A)は第2のデータ要素(B)に対して、(A)が(B)に先行する(すなわち、(A)を(B)の後者として有し、S(A)で表される)場合、(A)および(B)が出現するすべてのクラスについて、Bの意味クラスに対するAの意味クラスの、数量S(A)=A*(X_|Y)を計算することによって符号化される。具体的には、S(A)は、集合Xおよび集合Yの左縮約のスカラー倍として計算される。
【0049】
プロセスは次いでステップS311に進み、そこで、第1のデータ要素(A)が第2のデータ要素(B)に先行する場合の重み(WT(A)で表される)が、WT(A)=A*(MA_|MB)として計算される。具体的には、ステップS311で、(B)に対する(A)の重み配分、すなわち、意味クラスMBおよび意味クラスMAの左縮約のスカラー倍が計算される。一実施形態では、(B)に対する(A)の重みは、意味クラスの各々における要素数を求めることによって計算することができる。
【0050】
プロセスは次いでステップS313に進み、そこで、第2のデータ要素(B)が第1のデータ要素(A)に対して符号化される。一実施形態では、(A)に対する(B)の符号化は、上述の(B)に対する(A)の符号化と同様の方法で行うことができる。
【0051】
その後、ステップS315のプロセスでは、ステップS3111で計算した最大重み尺度に基づいて優勢な意味クラスを決定する。具体的には、対応する意味クラスを選択するために、シーケンス「AB」の文脈を伴う優勢なクラスとして、重みの結果の最大尺度が決定される。例えば、シーケンスABが「lending bank(貸出銀行)」または「financial bank(金融銀行)」である場合には、「bank」という単語を含む優勢な意味クラスは「金融機関」であると判定される。対照的に、シーケンスABが「river bank(河岸)」である場合には、「bank」という単語を含む優勢な意味クラスは「地理的特徴」であると判定される。
【0052】
さらに、ステップS317で、処理すべき次のデータ要素(C)が存在するかどうか判定するための問合せが行われる。ステップS317の問合せへの回答が肯定的である場合には、プロセスはステップS319に進み、そこで、これまでに作成された部分空間S(AB)を用いて次のデータ要素(C)が処理されて、順序ABCはS(AB)S(C)になる。言い換えると、ステップS309〜ステップS315に示すプロセスがデータ要素(C)について繰り返され、その後、プロセスはステップS317到達して、次のデータ要素が存在するかどうか判定する。
【0053】
ステップS317での問合せへの回答が否定的である場合、プロセスはステップS321に進み、そこで、これまでに計算された優勢なクラスが出力され、その後プロセス300は終了する。
【0054】
前述のように、上述の実施形態の各機能は、1つまたは複数の処理回路によって実現されてもよい。処理回路は、プロセッサが回路を含む、プログラムされたプロセッサ(例えば、図4のプロセッサ403)を含む。また処理回路は、特定用途向け集積回路(ASIC)や記載した機能を果たすように配置された従来の回路構成要素といったデバイスも含む。回路は、回路の処理を改善し、人間によっても、本発明の実施形態の特徴を欠いた汎用コンピュータによってさえも不可能な方法でデータが処理されることを可能にする上述の機能および特徴を実現するように特に設計し、またはプログラムすることができる。
【0055】
上述の様々な特徴は、コンピュータシステム(またはプログラマブルロジック)といったコンピューティングデバイスによって実現することができる。図4に、そうしたコンピュータシステム401を示す。図4のコンピュータシステム401は、特定の専用マシンであってよい。一実施形態において、コンピュータシステム401は、プロセッサ403がベクトル縮約を計算するようにプログラムされている場合には、特定の専用マシンである。
【0056】
コンピュータシステム401は、磁気ハードディスク407や、リムーバブル・メディア・ドライブ408(例えば、フロッピー・ディスク・ドライブ、読取り専用コンパクト・ディスク・ドライブ、読取り/書込みコンパクト・ディスク・ドライブ、コンパクト・ディスク・ジュークボックス、テープドライブ、リムーバブル光磁気ドライブ)といった、情報および命令を記憶するための1つまたは複数の記憶装置を制御するためにバス402に結合されたディスクコントローラ406を含む。記憶装置は、適切なデバイスインターフェース(例えば、小型コンピュータ・システム・インターフェース(SCSI)、統合ドライブエレクトロニクス(IDE)、拡張IDE(E−IDE)、ダイレクト・メモリ・アクセス(DMA)、ウルトラDMA)を用いてコンピュータシステム801に追加することができる。
【0057】
コンピュータシステム401は、専用論理回路(例えば、特定用途向け集積回路(ASIC))または構成可能な論理回路(例えば、シンプル・プログラマブル・ロジック・デバイス(SPLD)、コンプレックス・プログラマブル・ロジック・デバイス(CPLD)、フィールド・プログラマブル・ゲート・アレイ(FPGA))含んでいてもよい。
【0058】
コンピュータシステム401は、コンピュータユーザへの情報表示を目的としてディスプレイ410を制御するためにバス402に結合されたディスプレイコントローラ409を含んでいてもよい。コンピュータシステムは、コンピュータユーザと対話し、プロセッサ403に情報を提供するための、キーボード411やポインティングデバイス412といった入力装置を含む。ポインティングデバイス412は、例えば、方向情報およびコマンド選択をプロセッサ403に伝え、ディスプレイ410上のカーソル移動を制御するための、マウス、トラックボール、タッチ・スクリーン・センサの場合の指、ポインティングスティックとすることができる。
【0059】
プロセッサ403は、メインメモリ404といったメモリに含まれる1つまたは複数の命令の1つまたは複数のシーケンスを実行する。そうした命令は、ハードディスク407やリムーバブル・メディア・ドライブ408といった別のコンピュータ可読媒体からメインメモリ404に読み込むことができる。メインメモリ404に含まれる命令のシーケンスを実行するために、多重処理構成の1つまたは複数のプロセッサが用いられてもよい。代替の実施形態では、ソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて配線による回路が用いられてもよい。よって、実施形態は、ハードウェア回路とソフトウェアのいかなる特定の組み合わせにも限定されない。
【0060】
上述のように、コンピュータシステム401は、本開示の教示のいずれかに従ってプログラムされた命令を保持し、本明細書に記載するデータ構造、表、レコード、または他のデータを記憶するための少なくとも1つのコンピュータ可読媒体またはメモリを含む。コンピュータ可読媒体の例は、コンパクトディスク、ハードディスク、フロッピーディスク、テープ、光磁気ディスク、PROM(EPROM、EEPROM、フラッシュEPROM)、DRAM、SRAM、SDRAM、または任意の他の磁気媒体、コンパクトディスク(例えばCD−ROM)、または任意の他の光媒体、パンチカード、紙テープ、または穴のパターンを有する他の物理的媒体である。
【0061】
本開示は、コンピュータシステム401を制御し、本発明を実施するための1台または複数の装置を駆動し、コンピュータシステム401が人間のユーザと対話することを可能にするための、コンピュータ可読媒体のいずれか1つまたはそれらの組み合わせに記憶されたソフトウェアを含む。そうしたソフトウェアには、それだけに限らないが、デバイスドライバ、オペレーティングシステム、およびアプリケーションソフトウェアが含まれる。そうしたコンピュータ可読媒体は、本発明の任意の部分を実施する際に実行される処理の全部または一部(処理が分散されている場合)を実行するための本開示のコンピュータプログラム製品をさらに含む。
【0062】
本発明の実施形態のコンピュータ・コード・デバイスは、それだけに限らないが、スクリプト、解釈可能プログラム、ダイナミック・リンク・ライブラリ(DLL)、Javaクラス、および完全な実行可能プログラムを含む、任意の解釈可能コード機構または実行可能コード機構であってよい。さらに、本発明の実施形態の処理の各部分は、性能、信頼性、および/またはコストを改善するために分散されていてもよい。
【0063】
本明細書で用いる「コンピュータ可読媒体」という用語は、実行のためにプロセッサ403に命令を提供することに関与する任意の非一時的媒体を指す。コンピュータ可読媒体は、それだけに限らないが、不揮発性媒体や揮発性媒体を含む多くの形を取ることができる。不揮発性媒体には、例えば、ハードディスク407やリムーバブル・メディア・ドライブ408のような、光ディスク、磁気ディスク、光磁気ディスクが含まれる。揮発性媒体には、メインメモリ404のようなダイナミックメモリが含まれる。これに対して、伝送媒体には、バス402を構成するワイヤを含む、同軸ケーブル、銅線および光ファイバが含まれる。また伝送媒体は、電波通信や赤外線データ通信時に生成されるような、音響波や光波の形を取ってもよい。
【0064】
様々な形態のコンピュータ可読媒体が、実行のためにプロセッサ403に1つまたは複数の命令の1つまたは複数のシーケンスを搬送するのに関与することができる。例えば、命令は、最初はリモートコンピュータの磁気ディスク上で保持される。リモートコンピュータは、本開示の全部または一部を実施するための命令をダイナミックメモリにリモートでロードし、それらの命令を、モデムを用いて電話回線で送信することができる。コンピュータシステム401にとってローカルなモデムが、電話回線上のデータを受信し、バス402にデータを乗せる。バス402は、メインメモリ404にデータを搬送し、そこからプロセッサ403が命令を取り出して実行する。メインメモリ404が受け取った命令は、任意選択で、プロセッサ403が実行する前または後に、記憶装置407または408に記憶されてもよい。
【0065】
コンピュータシステム401は、バス402に結合された通信インターフェース413も含む。通信インターフェース413は、例えば、ローカル・エリア・ネットワーク(LAN)415や、インターネットなどの別の通信ネットワーク416に接続されたネットワークリンク414に結合する双方向データ通信を提供する。例えば、通信インターフェース413は、任意のパケット交換LANに接続するためのネットワーク・インターフェース・カードである。別の例として、通信インターフェース413は、総合サービス・ディジタル・ネットワーク(ISDN)カードであってもよい。無線リンクを実装することもできる。任意のそうした実装において、通信インターフェース413は、様々な種類の情報を表すディジタル・データ・ストリームを搬送する電気信号、電磁信号または光信号を送受信する。
【0066】
ネットワークリンク414は、通常、1つまたは複数のネットワークを介して他のデータデバイスにデータ通信を提供する。例えば、ネットワークリンク414は、ローカルネットワーク415(例えば、LAN)を介して、または通信ネットワーク416を介して通信サービスを提供するサービスプロバイダが運用する設備を介して、別のコンピュータへの接続を提供する。ローカルネットワーク414および通信ネットワーク416は、例えば、ディジタル・データ・ストリームを搬送する電気信号、電磁信号または光信号、および関連付けられた物理層(例えば、CAT5ケーブル、同軸ケーブル、光ファイバなど)を用いる。コンピュータシステム401との間でディジタルデータを搬送する、様々なネットワークを通る信号、およびネットワークリンク414上の、通信インターフェース413を通る信号は、ベースバンド信号または搬送波ベースの信号として実施することができる。
【0067】
ベースバンド信号は、ディジタルデータを、ディジタル・データ・ビットのストリームを記述する変調されていない電気パルスとして運び、この場合、「ビット」という用語は、シンボルを意味するように広義に解釈するべきであり、各シンボルは少なくとも1つまたは複数の情報ビットを運ぶ。ディジタルデータは、導電性媒体上を伝播する、または伝播媒体を介して電磁波として送信される振幅偏移変調信号、位相偏移変調信号および/または周波数偏移変調信号といった搬送波を変調するのに用いられてもよい。よって、ディジタルデータは、「有線」通信チャネルを介して変調されていないベースバンドデータとして送信され、かつ/または、搬送波を変調することによって、ベースバンドとは異なる所定の周波数帯域内で送信される。コンピュータシステム401は、(1つまたは複数の)ネットワーク415、416、ネットワークリンク414および通信インターフェース413を介して、プログラムコードを含むデータを送受信することができる。さらに、ネットワークリンク414は、携帯情報端末(PDA)、ラップトップコンピュータ、携帯電話といったモバイル機器417へのLAN415を介した接続を提供することができる。
【0068】
本開示の態様は、例として提案する本開示の特定の実施形態と併せて説明されているが、それらの例に対する代替、改変、および変形が行われてもよい。さらに、本明細書および添付の特許請求の範囲で用いる、単数形の「a」、「an」および「the」は、文脈上明らかに他に意味に解されるのでない限り、複数形の指示対象を含むものであることに留意すべきである。
図1
図2
図3
図4