"セマンティックオブジェクトの第1の表現またはビューを、前記セマンティックオブジェクトを表現する第1のバイナリハッシュコードの形式で特徴付けし、前記セマンティックオブジェクトを表現する第2のバイナリハッシュコードの形式における同一のセマンティックオブジェクトの第2の表現またはビューの特徴付けしたバージョンと比較すると、前記第1および第2のバイナリハッシュコードが、前記オブジェクトが同一のオブジェクトであることを示す類似度を表すようにするコンピュータ実行プロセスであって、前記プロセスは、同性質のセマンティックオブジェクトのペアを入力するステップであって、前記同性質のセマンティックオブジェクトのペアは、前記第1および第2の表現またはビューで提示される同一のセマンティックオブジェクトを含む、入力するステップと、同性質のセマンティックオブジェクトの各ペアのそれぞれのセマンティックオブジェクトを特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップと、前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、前記第1の表現またはビューに対する所定数の変換と、前記第2の表現またはビューに対する同数の変換とを確立するステップであって、前記第1または第2の表現またはビューの内の一方に対して確立される変換は、前記表現またはビューを表すセマンティックオブジェクトを表現する特徴ベクトルに適用されると、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードを作成し、前記第1または第2の表現またはビューの内の他方に対して確立された変換を、前記他方の表現またはビューを表す同一のセマンティックオブジェクトを表現する特徴ベクトルに適用する時に作成される前記セマンティックオブジェクトを表現する前記第2のバイナリハッシュコードと、前記第1のバイナリハッシュコードは実質上類似する、確立するステップと、前記第1の表現またはビューに対して確立された変換を使用して、前記第1の表現またはビューを表すセマンティックオブジェクトを、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードとして特徴付けするステップとを含む処理動作をコンピュータを使用して実行することを含むことを特徴とするプロセス。前記第1の表現またはビューに対して確立された変換を使用して、前記第1の表現またはビューを表すセマンティックオブジェクトを、前記セマンティックオブジェクトを表現する第1のバイナリハッシュコードの形式で特徴付けするステップの処理動作は、前記セマンティックオブジェクトを、前記第1の表現またはビューを表す同性質のセマンティックオブジェクトの各ペアにおける前記セマンティックオブジェクトに適用されるものと同じ特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップと、前記第1の表現またはビューに対して確立された変換のそれぞれについて、前記変換を前記セマンティックオブジェクトを表現する特徴ベクトルに適用し、その結果をバイナリ化し、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードのビットを作成するステップと、前記作成されたビットを所定の順序で連結し、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードを作成するステップとの動作を含むことを特徴とする請求項1に記載のプロセス。同性質のセマンティックオブジェクトの各ペアのそれぞれのセマンティックオブジェクトを特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップの処理動作は、バイナリ特徴ベクトルまたは実数値特徴ベクトルの内の1つを作成するステップの動作を含むことを特徴とする請求項1に記載のプロセス。同性質のセマンティックオブジェクトの各ペアのそれぞれのセマンティックオブジェクトを特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップの処理動作は、次元縮小技術を使用して低次元の表現を作成するステップの動作を含むことを特徴とする請求項3に記載のプロセス。前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立するステップの処理動作は、正準相関分析を使用して、前記第1および第2の表現またはビューのそれぞれの候補の変換を計算するステップと、前記第1の表現またはビューに対する第1の変換セットを、前記第1の表現またはビューについて計算された候補の変換から確立し、前記第2の表現またはビューに対する第2の変換セットを、前記第2の表現またはビューについて計算された候補の変換から確立するステップであって、セマンティックオブジェクトの同性質のペアのそれぞれに対して、前記第1の変換セットを、前記第1の表現またはビューを表すセマンティックオブジェクトの前記同性質のペアのセマンティックオブジェクトを表現する特徴ベクトルに適用し、かつ、前記第2の変換セットを、前記第2の表現またはビューを表すセマンティックオブジェクトの前記同性質のペアのセマンティックオブジェクトを表現する特徴ベクトルに適用すると、セマンティックオブジェクトの前記同性質のペアの全てについて作成される、結果として得られる第1および第2のバイナリハッシュコードの間の総ハミング距離を最小化する、確立するステップとの動作を含むことを特徴とする請求項1に記載のプロセス。前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立するステップの処理動作は、前記第1の変換セットを、作成される前記第1のバイナリハッシュコードのビットのほぼ半分が第1の二進値を表し、かつ残りのビットが他方の二進値を表すという制約を示すように、確立するステップと、前記第2の変換セットを、作成される前記第2のバイナリハッシュコードのビットのほぼ半分が前記第1の二進値を表し、かつ残りのビットが他方の二進値を表すという制約を示すように、確立するステップとの動作をさらに含むことを特徴とする請求項5に記載のプロセス。前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立するステップの処理動作は、前記第1の変換セットを、作成される前記第1のバイナリハッシュコードのビットが無相関であるという制約を示すように確立するステップと、前記第2の変換セットを、作成される前記第2のバイナリハッシュコードのビットが無相関であるという制約を示すように確立するステップとをさらに含むことを特徴とする請求項6に記載のプロセス。検索可能なデータベースを作成するためのコンピュータ実行プロセスであって、前記データベース内の項目は、第1の表現またはビューを表すセマンティックオブジェクトであり、前記データベースに含まれるセマンティックオブジェクトと同一であるが第2の表現またはビューを表すセマンティックオブジェクトを、前記検索可能なデータベースに対して検索クエリとして提示すると、前記検索クエリの前記セマンティックオブジェクトに対応する、前記第1の表現またはビューを表すセマンティックオブジェクトの識別を含む出力を行い、前記プロセスは、前記第1の表現またはビューに対する所定数の変換と、前記第2の表現またはビューに対する同数の変換とを確立するステップであって、前記第1または第2の表現またはビューの内の一方に対して確立される変換を、前記表現またはビューを表すセマンティックオブジェクトを表現する特徴ベクトルに適用すると、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードを作成し、前記第1または第2の表現またはビューの内の他方に対して確立された変換を、前記他方の表現またはビューを表す同一のセマンティックオブジェクトを表現する特徴ベクトルに適用する時に作成される前記セマンティックオブジェクトを表現する第2のバイナリハッシュコードと、前記第1のバイナリハッシュコードは実質上類似する、確立するステップと、前記第1の表現またはビューに対して確立された変換を使用して、前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードの形式で特徴付けするステップであって、前記データベースに含まれるセマンティックオブジェクトを特徴付ける前記第1のバイナリコードは、前記データベース内の他のセマンティックオブジェクトを特徴付ける前記第1のバイナリコードと実質上異なる、特徴付けするステップと、前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを、前記データベースにおける、それぞれに対応するセマンティックオブジェクトにそれぞれ関連付けるステップとを含む処理動作をコンピュータを使用して実行することを含むことを特徴とするプロセス。検索クエリが第2の表現またはビューを表すデータベースに入力される時は常に、前記検索クエリを表現する特徴ベクトルを生成するステップと、前記第2の表現またはビューに対して確立される変換のそれぞれについて、前記変換を前記検索クエリを表現する特徴ベクトルに適用し、その結果をバイナリ化し、前記検索クエリを表現する前記第2のバイナリハッシュコードのビットを作成するステップと、前記作成されたビットを所定の順序で連結して、前記検索クエリを表現する前記第2のバイナリハッシュコードを作成するステップと、前記検索クエリを表現する前記第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、前記データベースに含まれるセマンティックオブジェクト単数または複数を発見するステップと、前記検索クエリを表現する前記第2のバイナリハッシュコードに対して所定の類似度を表すことが発見された第1のバイナリハッシュコードを有する、前記データベースに含まれる一致するセマンティックオブジェクト単数または複数の識別を出力するステップとを含む処理動作をさらに含むことを特徴とする請求項8に記載のプロセス。前記検索クエリを表現する第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、前記データベースに含まれるセマンティックオブジェクト単数または複数を発見するステップの処理動作は、前記検索クエリを表現する前記第2のバイナリハッシュコードと前記データベースに含まれる前記セマンティックオブジェクトのそれぞれに関連する前記第1のバイナリハッシュコードとの間のハミング距離の値をそれぞれ計算するステップと、第1のバイナリハッシュコードと前記検索クエリを表現する前記第2のバイナリハッシュコードとの間の最小であるハミング距離を表す第1のバイナリハッシュコードを有する、前記データベースに含まれる前記セマンティックオブジェクト単数または複数を発見するステップとの動作を含むことを特徴とする請求項9に記載のプロセス。前記検索クエリを表現する第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、前記データベースに含まれるセマンティックオブジェクト単数または複数を発見するステップの処理動作は、前記検索クエリを表現する前記第2のバイナリハッシュコードと前記データベースに含まれる前記セマンティックオブジェクトのそれぞれに関連する前記第1のバイナリハッシュコードとの間のハミング距離の値をそれぞれ計算するステップと、第1のバイナリハッシュコードと前記検索クエリを表現する前記第2のバイナリハッシュコードとの間の、ハミング距離の閾値よりも小さいハミング距離を表す第1のバイナリハッシュコードを有する、前記データベースに含まれる前記セマンティックオブジェクト単数または複数を発見するステップとの動作を含むことを特徴とする請求項9に記載のプロセス。前記データベースに入力される検索クエリは、単一のセマンティックオブジェクトに組み合わされた複数のセマンティックオブジェクトを含み、前記データベースに含まれる前記セマンティックオブジェクトの内の少なくとも一部が、単一のセマンティックオブジェクトに組み合わされた複数のセマンティックオブジェクトであることを特徴とする請求項9に記載のプロセス。前記データベースに入力された検索クエリは、複数のセマンティックオブジェクトを含み、前記特徴ベクトルの生成、変換の適用およびバイナリ化、連結、発見ならびに出力の処理動作を、前記検索クエリの前記複数のセマンティックオブジェクトのそれぞれに対して繰り返し、前記プロセスは、重み付き二部グラフを構築するステップであって、前記検索クエリのセマンティックオブジェクトのそれぞれは、前記グラフの第1のノードセットを形成し、前記検索クエリのセマンティックオブジェクトのそれぞれに対して出力された識別された一致するセマンティックオブジェクト単数または複数が前記グラフの第2のノードセットを形成する、構築するステップと、前記第1のノードセットに関連する前記セマンティックオブジェクトのそれぞれのバイナリハッシュコードと、前記第2のノードセットに関連する前記セマンティックオブジェクトのそれぞれのバイナリハッシュコードとの間の類似度を、既知でない場合にそれぞれ計算するステップと、前記第1のノードセットに関連する各セマンティックオブジェクトと、前記第2のノードセットに関連するセマンティックオブジェクトとの間に、それらのバイナリハッシュコードに基づくセマンティックオブジェクト間の類似度が閾値と交差する場合に、エッジを割り当てるステップであって、前記エッジの重みを前記類似度と等しく設定する、割り当てるステップと、前記グラフにおける最大重み付き二部グラフマッチングを求めるステップと、前記マッチングの重みを計算するステップと、前記マッチングの重みを、前記第1および第2のノードセット間のノード数の差に基づき正規化するステップとの処理動作をさらに含むことを特徴とする請求項9に記載のプロセス。前記データベースに含まれるセマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを、前記データベースにおける、それぞれに対応するセマンティックオブジェクトにそれぞれ関連付けるステップの処理動作は、前記データベースに含まれる前記セマンティックオブジェクトに対応するデータベースディレクトリを含むハッシュテーブルを確立するステップと、前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを前記ハッシュテーブルに追加するステップと、前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを、前記ハッシュテーブル内における、それぞれに対応するデータベースディレクトリエントリに関連付けるステップとの動作を含むことを特徴とする請求項8に記載のプロセス。第1の言語による人の名前を前記名前を表現する第1のバイナリハッシュコードの形式で特徴付けし、第2の言語による同一の名前を前記名前を表現する第2のバイナリハッシュコードの形式で特徴付けしたバージョンと比較すると、前記第1および第2のバイナリハッシュコードは、それらの名前が同一の名前であることを示す類似度を表すコンピュータ実行プロセスであって、同性質の名前のペアを入力するステップであって、前記同性質の名前の各ペアは、前記第1および第2の言語で提示される人の名前を含み、同性質の名前の各ペアは異なる名前に対応する、入力するステップと、同性質の名前の各ペアを特徴抽出にかけ、前記名前を表現するバイナリ特徴ベクトルを作成するステップと、前記同性質の名前のペアを表現する特徴ベクトルに基づき、前記第1の言語に対する所定数の変換と、前記第2の言語に対する同数の変換とを確立するステップであって、前記第1または第2の言語の内の一方に対して確立された変換を、前記言語による名前を表現する特徴ベクトルに対して適用すると、前記名前を表現する前記第1のバイナリハッシュコードを作成し、前記第1または第2の言語の内の他方に対して確立された変換を、前記他方の言語による同一の名前を表現する特徴ベクトルに適用する時に作成し、前記名前を表現する前記第2のバイナリハッシュコードと、前記第1のバイナリハッシュコードが実質上類似する、確立するステップと、前記第1の言語に対して確立された変換を使用して、第1の言語による人の名前を前記名前を表現する前記第1のバイナリハッシュコードとして特徴付けるステップとを含む処理動作をコンピュータを使用して実行することを含むことを特徴とするプロセス。セマンティックオブジェクトの特徴付け、および、データベースディレクトリのインデックス化と検索でのその使用についての以下の説明において、本明細書の一部を形成する添付の図面に対する参照がなされ、図面には、例として、特徴付けを実践することができる特定の実施形態を示す。他の実施形態を利用しても良いこと、また、本技術の範囲から逸脱することなく構造的変更がなされても良いことは理解されるであろう。1.0セマンティックオブジェクトの特徴付け一般に、セマンティックオブジェクトの特徴付けはコンピュータに実装される技術であって、セマンティックオブジェクトの第1の表現またはビューを第1のバイナリハッシュコードの形式で特徴付けし、同一のセマンティックオブジェクトの第2の表現またはビューを第2のバイナリハッシュコードの形式で特徴付けしたバージョンと比較すると、オブジェクトが同一のオブジェクトであることを示す類似度を、第1および第2のバイナリハッシュコードが表すようにする技術である。図1を参照すると、本セマンティックオブジェクトの特徴付けの一実施形態では、まず、同性質のセマンティックオブジェクトのペアを入力する動作を含む100。1つのペアの同性質のセマンティックオブジェクトを、第1および第2の表現またはビューで提示される同一のセマンティックオブジェクトとして定義する。例えば、セマンティックオブジェクトが人名に対応する場合、同性質の名前のペアは2つの異なる言語で提示される同一の名前とすることができる。さらに、ある言語で該言語に関連する文字体系を採用する場合、該言語で示される人名をその関連する文字体系で提示することができる。なお、採用される同性質のペアの数は含まれるセマンティックオブジェクトのタイプに依存する。人名の場合、1万から1万5千のペアが適切なペアの数であることが分かっている。同性質のオブジェクトの各ペアのそれぞれのセマンティックオブジェクトを、次に特徴抽出にかけ、セマンティックオブジェクトを表現する特徴ベクトルを作成する102。この特徴抽出については、本説明の後の章でより詳細に記載する。相関および最適化の方法を採用して、同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立する104。この手続きについても、後の章でより詳細に記載する。しかし、一般に、第1または第2の表現またはビューの内の一方に対して確立される変換は、その表現またはビューを表すセマンティックオブジェクトを表現する特徴ベクトルに適用すると、該セマンティックオブジェクトを表現する第1のバイナリハッシュコードを作成する。第1もしくは第2の表現またはビューの内の他方に対して確立された変換を、他方の表現またはビューを表す同一のセマンティックオブジェクトを表現する特徴ベクトルに適用すると作成されるセマンティックオブジェクトを表現する第2のバイナリハッシュコードと、第1のバイナリハッシュコードは実質上類似する。なお、一実装において、正準相関分析を相関法として採用する。次に、第1の表現またはビューに対して確立される変換を使用して、第1の表現またはビューを表すセマンティックオブジェクトを、該セマンティックオブジェクトを表現する第1のバイナリハッシュコードとして特徴付ける106。図2を参照すると、一実装において、この最後の動作には、まず、セマンティックオブジェクトを、第1の表現またはビューを表した同性質のセマンティックオブジェクトの各ペアにおけるセマンティックオブジェクトに適用されるものと同じ特徴抽出にかけ、セマンティックオブジェクトを表現する特徴ベクトルを作成する動作200が含まれる。次に、第1の表現またはビューに対して確立された変換の内の前回選択されなかった変換を選択する202。選択された変換を、セマンティックオブジェクトを表現する特徴ベクトルに適用し、その結果をバイナリ化し、セマンティックオブジェクトを表現する第1のバイナリハッシュコードのビットを作成する204。次に、第1の表現またはビューに対して確立された全ての変換を選択しかつ処理したかどうかを判定する206。全ての変換を選択および処理していない場合、動作202を、206を介して繰り返す。全ての変換を選択かつ処理すると、各変換により作成されたビットを所定の順序で連結し、セマンティックオブジェクトを表現する第1のバイナリハッシュコードを作成する208。上に示したように、セマンティックオブジェクトの特徴付けは、セマンティックオブジェクトが人名であること、表現またはビューが2つの異なる言語および、場合により2つの異なる文字体系タイプであることに関与して良い。そのような実装には重要な利点がある。例えば、特徴付けを使用してデータベースディレクトリをインデックス化および検索するという文脈においては、データベースディレクトリは英語であるが、ユーザが英語以外の言語でさらには異なる文字体系を採用する言語の検索クエリを使用してデータベースを検索することを望むことが想定される。セマンティックオブジェクトの特徴付けをそのようなクロス言語検索に適用し、第1の言語によるデータベースディレクトリでの名前を、その名前についての言語および文字体系独自の表現を使用して特徴付ける。そして、第2の言語および可能性のある異なる文字体系による検索クエリを、同一の言語および文字体系独自の様式で特徴付けすることができる。このため、ユーザは第2の言語によるクエリをサブミットし、データベースの言語による一致結果を取得することができる。従って、データベースの言語との任意の非精通性または2つの言語間の発音上の相違は無視される。ここで、セマンティックオブジェクトが人名であり、表現またはビューが2つの異なる言語および、場合により2つの異なる文字体系タイプであるセマンティックオブジェクトの特徴付けの一実装について説明する。一般に、本実装では、第1の言語による人名を該名前を表現する第1のバイナリハッシュコードの形式で特徴付けし、第2の言語による同一の名前を該名前を表現する第2のバイナリハッシュコードの形式で特徴付けしたバージョンと比較すると、第1および第2のバイナリハッシュコードが、それらの名前が同一の名前であることを示す類似度を表すようにする。さらに特に、図3を参照すると、本実装では、まず、同性質の名前のペアを入力する動作300を含み、同性質の名前のペアを、第1および第2の言語および、場合により異なる文字体系で提示される同一の名前として定義する。次に、同性質の名前の各ペアのそれぞれの名前を特徴抽出にかけ、該名前を表現する特徴ベクトルを作成する302。そして、上述の相関および最適化の方法を採用して同性質の名前のペアを表現する特徴ベクトルに基づき、第1の言語に対する所定数の変換と、第2の言語に対する同数の変換とを確立する304。両言語の内の一方に対して確立された変換は、その言語による名前を表現する特徴ベクトルに適用されると、該名前を表現する第1のバイナリハッシュコードを作成する。他方の言語に対して確立された変換を該他方の言語による同一の名前を表現する特徴ベクトルに適用すると作成される、該名前を表現する第2のバイナリハッシュコードと、第1のバイナリハッシュコードは実質上類似する。次に、第1の言語に対して確立される変換を使用して、第1の言語による名前を、該名前を表現する第1のバイナリハッシュコードとして特徴付ける306。ここで図4を参照すると、一実装において、この最後の動作には、まず名前を、第1の言語による同性質の名前の各ペアにおける名前に適用されるものと同じ特徴抽出にかけ、名前を表現する特徴ベクトルを作成する動作400が含まれる。次に、第1の表現またはビューに対して確立された変換の内前回選択されなかった変換を選択される402。選択された変換を、人名を表現する特徴ベクトルに適用し、その結果をバイナリ化し、名前を表現する第1のバイナリハッシュコードのビットを作成する404。次に、第1の言語に対して確立された全ての変換を選択しかつ処理したかどうかを判定する406。全ての変換を選択および処理していない場合、動作402を、406を介して繰り返す。全ての変換を選択および処理すると、各変換により作成されたビットを所定の順序で連結し、人名を表現する第1のバイナリハッシュコードを作成する408。ここで、上述のセマンティックオブジェクトの特徴付けおよび検索の態様について、以下の章でより詳細に説明する。1.1特徴ベクトル同一のセマンティックオブジェクトの2つの表現/ビューを直接使用するのではなく、フォーマット、言語、文字体系などに関して独自の特徴表現を採用する。そのような独自の表現を取得するために、特徴ベクトルを各オブジェクトのビューごとに形成する。オブジェクトに適切な任意の特色付けの方法を採用して特徴ベクトルを生成することができる。例えば、人名の場合、文字nグラムを特徴として抽出しバイナリ化して、バイナリ特徴ベクトルを形成することができる。なお、利用可能な可能性のある特色付けの方法はこれだけではない。例えば、名前から抽出された音節を特徴として使用することも可能であり、特徴ベクトルをバイナリ化するのではなく実数で構成することもできる。主成分分析または任意の他の次元縮小技術を特徴ベクトルに対して使用することにより、低次元の表現を求めることも可能である。さらに特に、図5を参照すると、同性質の名前の各ペアにおけるそれぞれの名前を特徴抽出にかけ、名前を表現するバイナリ特徴ベクトルを作成する動作には、各言語それぞれについて、最初にその言語による所定数の名前から所定の特徴を抽出して、その言語に特有の特徴のセットを作成する動作500が含まれる。次に、抽出された特徴について所定の順序を確立する502。次に、作成されている特徴ベクトルのビット位置を、確立された順序で各抽出された特徴と同等とみなす504。対象としている言語による同性質の名前の各ペアから前回選択されなかった名前を選択し506、対象としている言語に特有の特徴のセット内にある特徴に対応する、選択された名前に存在する所定の特徴のそれぞれを識別する508。そして、選択された名前の中に発見された特徴に対応するビット位置に第1の二進値を割り当て、かつ、選択された名前の中に発見されない特徴に対応するビット位置に第2の二進値を割り当てるように、選択された名前の特徴ベクトルを生成する510。次に、対象としている言語による同性質の名前の各ペアから、名前が選択され処理されたかどうを判定する512。名前が選択され処理されていないと判定された場合、動作506を、512を介して繰り返す。そうでない場合、対象としている言語について手続きは終了し、他方の言語による名前を処理する。一実装において、Kビットのハッシュ関数は、例えば、セマンティックオブジェクトの第1の表現またはビューにはg、セマンティックオブジェクトの第2の表現またはビューにはhとすると、以下のようにK個の1ビットハッシュ関数で構成される。後に説明するように、各1ビットハッシュ関数を、セマンティックオブジェクトを入力として取るように設計し、それを1または-1または、同じように1または0のどちらかにハッシュする。K個の1ビットハッシュ関数のそれぞれを用いてオブジェクトをハッシュし、ビットを1つに連結することにより、オブジェクトを表現するKビットバイナリコードを作成する。セマンティックオブジェクトをバイナリコードとして表現することには、従来のハミング距離計算を使用して2つのバイナリ表現の間の類似度を判定することができるなど、多くの利点がある。後により詳細に説明するように、これにより検索をより速くより効率的に行い、特に大きなデータベースでは影響がある。訓練データ内の同性質のオブジェクト例えば、名前間のハミング距離を最小化するハッシュ関数gおよびhを求めることが課題である。より詳細には、同性質のオブジェクトで構成される訓練データから上述のK個の1ビットハッシュ関数を学習することが、タスクである。このタスクは以下の最適化問題として提示することができる。これは、計算上簡素化された最小化の定式では、となり、ここで、Nは同性質のオブジェクトのペアの数であり、xiは対象としている同性質のオブジェクト例えば、英語バージョンの人名の第1のビューについての特徴ベクトルであり、yiは対象としている同性質のオブジェクト例えば、カンナダ語バージョンの人名の他方のビューについての特徴ベクトルである。加えて、ハッシュ関数は、制約として符号化されるある有利な特性を有することが望ましい。第一に、ハッシュ関数は、得られるバイナリハッシュコードの作成されたビットの内、約50が1となり、残りが-1となる、集約的な結果を出すことができる。以下の通りである。かつさらに、有利なことに、得られるバイナリハッシュコードの作成されるビットは無相関である。従って、かつここで、かつである。計算上さらに簡単に1ビットハッシュ関数を得るために、線形緩和を採用し、以下のようになる。かつここで、AおよびBは変換を表す。従って、最終的な形式では、最適化問題は以下のように定式化することができる。これは、さらに上述の集約される制約および無相関のビット制約を受け、ここで以下のように定式化することができる。かつ変換AおよびBは、2つの異なる表現またはビュー例えば、2つの異なる言語による類似するオブジェクト例えば、人名が、Kビットのハッシュ関数によって類似するバイナリハッシュコードにマッピングされる、というものである。そのような変換を、上述の同性質のオブジェクト訓練セットおよび相関法を使用して、学習することが可能である。一実施形態において、特徴ベクトルのグループのそれぞれの同性質のオブジェクトのペアを、同一のセマンティックオブジェクトの2つの表現またはビューとしてみなすことにより、正準相関分析CCAを採用して変換AおよびBを求めることが可能である。より詳細には、2つのビューを有する多変量データのサンプルを考えると、CCAは、2つのビューの予測の間の相関が最大になるように各ビューについて線形変換を求める。多変量データのサンプルを考える。ここで、およびはオブジェクトの2つのビューである。かつとする。XおよびYを集約する、すなわち、ゼロ平均を持つと仮定する。aおよびbは2つの方向であるとする。すると、Xを方向aに投影して、を得ることができる。ここで、である。同様に、Yを方向bに射影して射影関数VviNi1を求める。ここで、である。CCAの目的は、射影関数UおよびVを最大限に相関するように、方向のペアa;bを求めることである。これを、以下の最適化問題を解決することにより達成する。上述の方程式13の目的関数は、以下の一般固有値問題を解決することにより最大化可能である。次の基底ベクトルは、基本制約の直交性を目的関数に加えることにより求めることができる。基底ベクトルの数はmin{RankX,RankY}程度に高くすることができるが、実際は、より少ない数の最初に生成された基底ベクトル最上基底ベクトルと称するを使用し、これは射影関数の相関がこれらのベクトルには高く、残りのベクトルには低いためである。加えて、最上基底ベクトルの内、方程式12を順次最大化するものを採用し、上述の集約的および無相関のビット制約に適合させることが望ましい。この目的のため、AおよびBを、CCAにより計算される第1のK個K>0例えば、32の基底ベクトルとする。従って、AおよびBは次のように表すことができる。かつ上記を考慮して図6を参照すると、一実装において、同性質のセマンティックオブジェクトを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換を確立する動作には、まず、CCAを使用して第1および第2の表現またはビューのそれぞれの候補の変換を計算する動作が含まれる600。そして、第1の表現またはビューに対する第1の変換セットを、第1の表現またはビューについて計算された候補の変換から確立し、第2の表現またはビューに対する第2の変換セットを、第2の表現またはビューについて計算された候補の変換から確立する602。確立された変換は、セマンティックオブジェクトの同性質のペアごとに、第1の変換セットを、第1の表現またはビューを表すセマンティックオブジェクトの同性質のペアのセマンティックオブジェクトを表現する特徴ベクトルに適用し、かつ、第2の変換セットを、第2の表現またはビューを表すセマンティックオブジェクトの同性質のペアのセマンティックオブジェクトを表現する特徴ベクトルに適用すると、セマンティックオブジェクトの同性質のペアの全てについて作成され、結果と生じる第1および第2のバイナリハッシュコードの間の総ハミング距離を最小化するようにする。加えて、第1の変換セットを、作成される第1のバイナリハッシュコードのビットのほぼ半分が第1の二進値を表し、かつ残りのビットが他方の二進値を表すという制約を示すように確立する。同様に、第2の変換セットを、作成される第2のバイナリハッシュコードのビットのほぼ半分が第1の二進値を表し、かつ残りのビットが他方の二進値を表すという制約を示すように確立する。さらに、第1の変換セットを、作成される第1のバイナリハッシュコードのビットが無相関であるという制約を示すように確立し、かつ、第2の変換セットうぃ、作成される第2のバイナリハッシュコードが無相関であるという制約を示すように確立する。1.3バイナリハッシュコードの生成同性質のオブジェクト訓練ペアから計算された変換AおよびBを、1ビットハッシュ関数として採用し、変換を作成するために使用される表現/ビュー例えば、言語に関連するセマンティックオブジェクト例えば、人名を表現する特徴ベクトルから、バイナリハッシュコードを作成する。従って、上述の例において、Aを使用して、人の英語での名前を表現する特徴ベクトルからバイナリハッシュコードを作成することができ、Bを使用して、人のカンナダ語での名前を表現する特徴ベクトルからバイナリハッシュコードを作成することができる。ここで、の時、ここで、の時、なお、バイナリ化sgn関数は、必要に応じて、j<0の時に-1値の代わりに0ビット値を返すことができる。2.0ディレクトリのインデックス化および検索上述の様式で作成される各バイナリハッシュコードは、ハッシュコードの作成に使用される変換に関連する表現またはビュー例えば、言語によるセマンティックオブジェクト例えば、人名のデータベースディレクトリに、加えることができる。これにより、検索可能なデータベースを作成するが、このデータベースおいては、データベース内の項目が第1の表現またはビューを表すセマンティックオブジェクトであり、第2の表現またはビューを表すセマンティックオブジェクトを、該検索可能なデータベースに対して検索クエリとして提示すると、検索クエリのセマンティックオブジェクトに対応する、データベースからの任意のセマンティックオブジェクトの識別を含む出力が行われる。上記は、最初にデータベースのディレクトリをインデックス化することにより達成することができる。一般に、セマンティックオブジェクトのディレクトリ例えば、人名のディレクトリを前提とすると、一実施形態において、以下のようにインデックス化が可能である。まず、ディレクトリ内のリストアップされた各オブジェクトについて、その特徴ベクトルを上述のように形成する。次に、対になった2つの表現/ビュー例えば、英語-カンナダ語の内のディレクトリの特定の表現/ビュー例えば、英語に対して展開されたKビットハッシュ関数を、各オブジェクトについてKビットバイナリコードを計算するために使用する。このハッシュ関数は、他方の表現/ビュー例えば、カンナダ語のバイナリコードの計算に使用される随伴する関数を有する。そして、各オブジェクトのリストを、オブジェクトに関連するオブジェクトのバイナリコードと共に、キーとしてハッシュテーブルに挿入する。より詳細には、図7を参照すると、第1の表現またはビュー用に確立された変換を使用して、第1の表現またはビューを表す、データベースに含まれるセマンティックオブジェクトを、該セマンティックオブジェクトを表現する第1のバイナリハッシュコードの形式で特徴付ける700。なお、本手続きの一実装を、図2およびそれに付随する説明において概説する。次に、データベースに含まれるセマンティックオブジェクトを特徴付ける第1のバイナリハッシュコードを、データベース内の対応するセマンティックオブジェクトにそれぞれ関連付ける702。図8を参照すると、一実装において、この最後の動作には、まず、データベースに含まれるセマンティックオブジェクトに対応するデータベースディレクトリのエントリを有するハッシュテーブルを確立する動作800が含まれる。次に、データベースに含まれるセマンティックオブジェクトそれぞれを特徴付ける第1のバイナリハッシュコードを、ハッシュテーブルに追加し802、それぞれを、ハッシュテーブル内のその対応するデータベースディレクトリエントリに関連付ける804。ディレクトリ内のセマンティックオブジェクトのリストを、上述のようにインデックス化すると、ディレクトリはクエリを使用した検索が可能となる。このクエリは、表現/ビューのどちらか例えば、英語またはカンナダ語とすることができる。より詳細には、クエリを入力し、クエリの表現/ビューに適切な手続きを使用して、最初に特徴ベクトルをクエリから生成する。次に、クエリの表現/ビューに対して当てられるKビットハッシュ関数を使用して、クエリの特徴ベクトルからKビットバイナリコードを計算する。次に、ハッシュテーブル内の各キーに対するクエリのKビットバイナリコードの類似度を計算する。なお、クエリが、ディレクトリのインデックス化に使用されるKビットハッシュ関数に関連する同一の表現またはビュー例えば、英語である上記の例においては、これは、単一言語による検索と等しく、スペル訂正の目的に有用である。上記を考慮して図9を参照すると、一実装において、検索クエリを上述の第2の表現またはビューを表すデータベースに入力すると900、該検索クエリを表現する特徴ベクトルが生成される902。そして、第2の表現またはビューに対して確立された変換の内の前回選択されなかった変換を選択する904。選択された変換を、検索クエリの特徴ベクトルに適用し、その結果をバイナリ化し、検索クエリを表現する第2のバイナリハッシュコードのビットを作成する906。次に、全ての変換を選択したかどうかを判定する908。全ての変換を選択していない場合、動作904を、908を介して繰り返す。全ての変換を選択しかつ適用すると、変換により作成されたビットを、所定の順序で連結し、検索クエリを表現する第2のバイナリハッシュコードを作成する910。次に、検索クエリを表現する第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、データベースに含まれるセマンティックオブジェクト単数または複数を発見する912。検索クエリを表現する第2のバイナリハッシュコードに対して所定の類似度を表すことが発見された第1のバイナリハッシュコードを有する、一致するセマンティックオブジェクト単数または複数の識別を出力する914。なお、類似度には任意の適切な測定値を採用することが可能であるが、一実装において、ハミング距離を測定値として使用する。ハミング距離を使用することは、クエリおよびインデックスキーの両方がバイナリコードであるため、適切であり、ハミング距離を使用して、素早くかつ容易に2つのバイナリコードを比較することが可能である。ディレクトリ内のセマンティックオブジェクトおよびクエリをバイナリコードとして表現すること、ならびに、ハミング距離を類似度の測定値として使用することには、かなりの利点がある。ディレクトリ内に数百万のオブジェクトをリストアップする場合でも、ハミング距離をクエリと各キーの間で別々に計算する総当たりの比較を採用することが可能であり、全体の手続きに1秒かからないであろう。従って、ディレクトリの検索は速く、別段必要が無い限り、より高機能の類似度測定値および比較の方法を採用する必要はない。次に、クエリと各キーの間で計算される類似度を、最も近接するマッチングキー単数または複数の識別に使用する。一実装において、最も近接したマッチングキーだけを識別するまたは、関連がある場合は最も近接する複数のマッチングキー。しかし、代替の実装において、クエリに対する類似度が類似閾値と交差する全てのキーを識別する。なお、ハミング距離の場合、距離が所定の距離以下である全てのキーを識別することができる。閾値は、関係するセマンティックオブジェクトのタイプおよび検索に求められる精度に依存する。一実装において、類似閾値を、上位の5から10個の結果が識別されて出力されるように、設定することができる。3.0複数部分オブジェクトの特徴付けおよび検索ここまで、本明細書に記載されるセマンティックオブジェクトの特徴付けでは、単一部分セマンティックオブジェクトの特徴付けを扱っている。例えば、単一の単語から成る名前などである。しかし、これを拡張させて、複数の単語から成る名前などの、複数部分オブジェクトを扱うことができる。一般的な例としては、人の姓と名がある。これは2つの単語から成る名前を構成する。人名を探してディレクトリを検索する場合、そのフルネームの使用を有利とすることができる。一実装において、オブジェクトを構成する複数の部分を、それらの部分を組み合わせることによる単一の部分オブジェクトと見なすことができる。例えば、人の姓と名は簡単に1つの単語に組み合わせ、その形式で特徴付けすることが可能である。複数の部分オブジェクトが組み合わされて、複数の部分クエリを用いて単一の部分形式で特徴付けされる、ディレクトリにおける検索を実行するためには、そのクエリの部分を、特徴付けおよびサブミットする前に組み合わせる。しかし、代替の実施形態において、複数の部分セマンティックオブジェクトの各部分を、特徴付けし、別々にインデックス化する。そして、複数の部分オブジェクトのクエリの個々の部分を別々に特徴付けし、各部分について戻される類似度測定値を組み合わせて全体の類似度測定値を作成する。一実装において、これを、複数部分オブジェクトのクエリの各部分について戻される類似度測定値から重み付き二部グラフを構築することにより達成する。図10を参照すると、この後者の実施形態の一実装において、複数のセマンティックオブジェクトから構成される検索クエリを入力する1000。次に、上述した図9の手続きを、検索クエリの複数のセマンティックオブジェクトのそれぞれに対して実行する。従って、検索クエリ内の各セマンティックオブジェクトに対して、一致するセマンティックオブジェクト単数または複数の識別を出力する1002。次に、重み付き二部グラフを構築する1004。このグラフでは、検索クエリのセマンティックオブジェクトのそれぞれが、第1のノードセットを形成し、また、検索クエリのセマンティックオブジェクトのそれぞれに対して出力され識別された一致するセマンティックオブジェクト単数または複数が、第2のノードセットを形成する。加えて、第1のノードセットに関連する各セマンティックオブジェクトと、第2のノードセットに関連するセマンティックオブジェクトとの間には、それらのセマンティックオブジェクトバイナリハッシュコードに基づく該セマンティックオブジェクト間の計算された類似度が閾値と交差する場合に、エッジを割り当てる。エッジの重みを、エッジが接続するノード間の類似度と等しく設定する。グラフを構築すると、グラフにおける最大重み付き二部グラフマッチングを求め1006、このマッチングの重みを計算する1008。次に、マッチングの重みを、第1のノードセットと第2のノードセットの間のノード数の差に基づき正規化する1010。wをグラフGにおける最大重み付き二部マッチングの重みとする。EとHとの間の類似度は、以下のように定義することができる。方程式36の右辺の分子には、かなりの数の高品質のマッチングを個々のレベルで有する名前のペアが好ましく、一方、分母は不均衡な長さを有するペアには不利に働く。なお、実際は、IとJは両者とも小さく、従って最大重み付き二部マッチングは非常に簡単に求めることができる。さらに、二部グラフにおける最大のエッジの重みは無視できるほど小さい。従って、実際には貪欲マッチングアルゴリズムでも十分である。4.0コンピューティング環境ここで、本明細書に記載されるセマンティックオブジェクトの特徴付けおよび検索の実施形態の一部を実装することができる、適切なコンピューティング環境の簡単な概要について説明する。技術的な実施形態は、多数の汎用または専用のコンピューティングシステム環境または構成を用いて操作可能である。適切な周知のコンピューティングシステム、環境、および/または、構成の例に含まれるものには、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップの装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたは装置の内のいずれかを含む分散コンピューティング環境、などがあるが、これに限定しない。図11には、適切なコンピューティングシステム環境の例を示す。コンピューティングシステム環境は、適切なコンピューティング環境の単なる一例にすぎず、本明細書に記載される実施形態の使用または機能性の範囲について任意の制限を示唆することを意図しない。また、コンピューティング環境は、例示の動作環境において例示される構成要素の内の任意の1つまたは組み合わせに関する任意の依存性または要件を有するものとして解釈されるべきでもない。図11を参照すると、本明細書に記載される実施形態を実装するための一例のシステムには、コンピューティング装置10などのコンピューティング装置を含む。最も基本的な構成において、コンピューティング装置10には典型的には、少なくとも1つの処理装置12およびメモリ14を含む。コンピューティング装置の厳密な構成およびタイプに依存して、メモリ14は揮発性RAMなど、不揮発性ROM、フラッシュメモリなどまたはその2つの何らかの組み合わせとすることができる。この最も基本的な構成を、図11に点線16で示す。加えて、装置10は、追加の特徴/機能性を有することができる。例えば、装置10は、磁気また光のディスクまたはテープを含むがこれに限定されない追加の記憶装置着脱可能および/または着脱不能を含むことができる。そのような追加の記憶装置を、着脱可能記憶装置18および着脱不能記憶装置20により図11に示す。コンピュータ記憶媒体には、揮発性および不揮発性、着脱可能および着脱不能の、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報を記憶するための任意の方法または技術で実装される媒体を含む。メモリ14、着脱可能記憶装置18、および着脱不能記憶装置20は、全てコンピュータ記憶媒体の例である。コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリ、もしくは他のメモリ技術、CD-ROM、DVDdigitalversatilediskもしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、所望の情報の記憶に使用可能、かつ、装置10がアクセス可能な任意の他の媒体、を含むがこれに限定しない。任意のそのようなコンピュータ記憶媒体は装置10の一部とすることができる。装置10はまた、装置と他の装置との通信を可能にする通信接続単数または複数22を含むことができる。装置10はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置、カメラ、などの入力装置単数または複数24を有しても良い。ディスプレイ、スピーカ、プリンタなどの出力装置単数または複数26を、含むことができる。これらの装置全ては、従来技術において周知であり、ここで詳細に検討する必要はない。本明細書に記載されるセマンティックオブジェクトの特徴付けおよび検索の実施形態は、プログラムモジュールなどの、コンピューティング装置により実行されるコンピュータ実行可能命令の一般的な文脈でさらに説明することができる。一般に、プログラムモジュールには、特定のタスクを実行または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造など、を含む。本明細書に記載される実施形態はまた、タスクを通信ネットワークを介してリンクされるリモート処理装置により実行する分散コンピューティング環境において実践することができる。分散コンピューティング環境において、プログラムモジュールを、メモリ記憶装置を含むローカルおよびリモート両方のコンピュータ記憶媒体に配置させることができる。5.0他の実施形態セマンティックオブジェクトと表現またはビューとの、上で説明した名前-言語の例以外のある他の例には、セマンティックオブジェクトがユーザによりクエリされるエンティティであり、2つの表現またはビューがこのエンティティに関連するウェブページからの画像特徴とテキスト特徴であるという場合を含む。従って、同一のセマンティックオブジェクトについて、マルチモーダル検索の操作を向上させるために使用可能な2つのビューが存在する。別の例は、セマンティックオブジェクトが文書であり、2つの表現またビューが第1の言語による文書と第2の言語による文書である場合である。2つの言語による配列された同性質の文書のセットからハッシュ関数を学習後、ハッシュ関数を使用してどちらかの言語による文書コレクションをクロス言語検索することが可能である。さらに別の例には、セマンティックオブジェクトが単語であり、その2つのビューがその単語の文字配列と音素配列であるものがある。発音辞書からハッシュ関数を学習後、該ハッシュ関数を使用して、テキスト中の未知語を探して辞書における最も近い音素配列を検索することができる。本記載全体にわたる、上述の実施形態の内のいずれかまたは全てを、所望の任意の組み合わせで使用して追加の混合実施形態を形成することができる。加えて、主題は、構造的特徴および/または方法論的動作に特有の言語で記載されたが、添付の請求項に定義される主題が、必ずしも上述の特定の特徴または動作に限定されないことは理解されるべきである。むしろ、上述の特定の特徴および動作は、請求項を実装する例示の形式として開示される。"