JP5661813B2 - セマンティックオブジェクトの特徴付けおよび検索 - Google Patents

セマンティックオブジェクトの特徴付けおよび検索 Download PDF

Info

Publication number
JP5661813B2
JP5661813B2 JP2012556120A JP2012556120A JP5661813B2 JP 5661813 B2 JP5661813 B2 JP 5661813B2 JP 2012556120 A JP2012556120 A JP 2012556120A JP 2012556120 A JP2012556120 A JP 2012556120A JP 5661813 B2 JP5661813 B2 JP 5661813B2
Authority
JP
Japan
Prior art keywords
semantic
hash code
representing
representation
binary hash
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2012556120A
Other languages
English (en)
Other versions
JP2013521574A5 (ja
JP2013521574A (ja
Inventor
ラガヴェンドラ ウドゥパ ウッピナークドゥル
ラガヴェンドラ ウドゥパ ウッピナークドゥル
クマール シャイシャヴ
クマール シャイシャヴ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2013521574A publication Critical patent/JP2013521574A/ja
Publication of JP2013521574A5 publication Critical patent/JP2013521574A5/ja
Application granted granted Critical
Publication of JP5661813B2 publication Critical patent/JP5661813B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Description

本発明は、セマンティックオブジェクトの特徴付けおよび検索に関する。
検索エンジンとは、最も一般的な表現では、1つまたは複数のデータベースに含まれる情報にインデックスを付けるソフトウェアプログラムである。このインデックス化された情報はデータベースのディレクトリ内に記憶されることが多い。そして、検索エンジンは、ユーザに検索クエリを入力させ、その内の用語を採用してディレクトリを介してデータベース内の関連情報を探索する。探索された関連情報はユーザに報告される。
インデックス化される情報のタイプは考え得る任意のものとすることができる。これにはウェブページ、文書、ラベル付き画像などがある。典型的には、情報は特定の言語によるもので、検索クエリも同一の言語で提示される。
加えて、多くの場合、インデックス化された情報の項目は、一般的にセマンティックオブジェクトと称することができ、リストアップされたオブジェクトを介して素早くかつ効果的な検索を行なう方法でディレクトリにおいて特徴付けされる。そのような場合、検索クエリは典型的には、特徴付けされたディレクトリエントリと比較される前に、同じ様式で特徴付けされる。
この要約は、以下の「発明を実施するための形態」でさらに述べる概念を選択して簡略化した形式で紹介するために提供するものである。この要約は、請求の主題の重要な特徴または主要な特徴を確認することを意図しておらず、請求の主題の範囲を決定する際の助けとして使用されることも意図していない。
本明細書に記載されるセマンティックオブジェクトの特徴付けおよび検索に関する実施形態は、一般に、まず、同性質のセマンティックオブジェクトのペアを入力する動作を含む。同性質のセマンティックオブジェクトのペアを、第1および第2の表現またはビューで提示される同一のセマンティックオブジェクトとして定義する。例えば、セマンティックオブジェクトが人名に対応する場合、同性質の名前のペアは、2つの異なる言語、および潜在的には2つの異なる文字体系で提示される同一の名前とすることができる。同性質のオブジェクトの各ペアのそれぞれのセマンティックオブジェクトは、特徴抽出により、セマンティックオブジェクトを表現する特徴ベクトルを作成する。次に、相関および最適化の方法を採用し、同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立する。一般に、第1または第2の表現またはビューの内の一方に対して確立された変換は、当該表現またはビューを表すセマンティックオブジェクトを表現する特徴ベクトルに適用する場合、セマンティックオブジェクトを表現する第1のバイナリハッシュコードを作成するが、第1または第2の表現またはビューの内の他方に対して確立された変換を、他方の表現またはビューを表す同一のセマンティックオブジェクトを表現する特徴ベクトルに適用される時に作成する、当該セマンティックオブジェクトを表現する第2のバイナリハッシュコードと、第1のバイナリハッシュコードは実質上類似する。
第1の表現またはビューに対して確立された変換を使用して、データベースに含まれる、第1の表現またはビューを表すセマンティックオブジェクトを、セマンティックオブジェクトを表現する第1のバイナリハッシュコードの形式で特徴付けする。次に、データベースに含まれるセマンティックオブジェクトを特徴付ける第1のバイナリハッシュコードを、データベースディレクトリ内のその対応するセマンティックオブジェクトにそれぞれ関連付けする。
前述の第2の表現またはビューを表す検索クエリを入力すると、検索クエリを表現する特徴ベクトルを生成する。次に第2の表現またはビューに対して確立された変換のそれぞれを、検索クエリ特徴ベクトルに適用し、結果をバイナリ化し、検索クエリを表現する第2のバイナリハッシュコードのビットを作成する。変換により作成されたビットを、次に、所定の順序で連結し、検索クエリを表現する第2のバイナリハッシュコードを作成する。次に、検索クエリを表現する第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、データベースに含まれるセマンティックオブジェクト(単数または複数)を発見する。次に、その一致するセマンティックオブジェクト(単数または複数)の識別を出力する。
本開示の特定の特徴、態様、および利点は、以下の説明、添付の請求項、および添付の図面を顧慮することで、より良く理解されるであろう。
セマンティックオブジェクトの特徴付けのためのプロセスの一実施形態を全体的に概説するフロー図である。 第1の表現またはビューに対して確立された変換を使用して、第1の表現またはビューを表すセマンティックオブジェクトを第1のバイナリハッシュコードとして特徴づける動作を含む、図1のプロセスの一部の一実装を全体的に概説するフロー図である。 人の名前を特徴付けするためのプロセスの一実施形態を全体的に概説するフロー図である。 第1の言語に対して確立された変換を使用して、第1の言語による人名を第1のバイナリハッシュコードとして特徴付けする動作を含む図3のプロセスの一部の一実装を全体的に概説するフロー図である。 各言語それぞれについて、同性質の名前の各ペアにおけるそれぞれの名前を特徴抽出にかけ、名前を表現するバイナリ特徴ベクトルを作成する動作を含む図3のプロセスの一部の一実装を全体的に概説するフロー図である。 同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立する動作を含む図1のプロセスの一部の一実装を全体的に概説するフロー図である。 データベースのディレクトリをインデックス化するためのプロセスの一実施形態を全体的に概説するフロー図である。 データベースに含まれるセマンティックオブジェクトを特徴付ける第1のバイナリハッシュコードを、データベース内の対応するセマンティックオブジェクトに関連付けする動作を含む図7のプロセスの一部の一実装を全体的に概説するフロー図である。 特徴付けされた検索クエリを使用してデータベースの特徴付けされたディレクトリを検索するためのプロセスの一実施形態を全体的に概説するフロー図である。 特徴付けされた複数部分セマンティックオブジェクト検索クエリを使用してデータベースの特徴付けされたディレクトリを検索するためのプロセスの一実施形態を全体的に概説するフロー図である。 本明細書に記載されるセマンティックオブジェクトの特徴付けおよび検索の実施形態を実装する例示のシステムを構成する汎用コンピューティング装置を示す図である。
セマンティックオブジェクトの特徴付け、および、データベースディレクトリのインデックス化と検索でのその使用についての以下の説明において、本明細書の一部を形成する添付の図面に対する参照がなされ、図面には、例として、特徴付けを実践することができる特定の実施形態を示す。他の実施形態を利用しても良いこと、また、本技術の範囲から逸脱することなく構造的変更がなされても良いことは理解されるであろう。
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グラムを特徴として抽出しバイナリ化して、バイナリ特徴ベクトルを形成することができる。なお、利用可能な可能性のある特色付けの方法はこれだけではない。例えば、名前から抽出された音節を特徴として使用することも可能であり、特徴ベクトルをバイナリ化するのではなく実数で構成することもできる。主成分分析または任意の他の次元縮小技術を特徴ベクトルに対して使用することにより、低次元の表現を求めることも可能である。
Figure 0005661813
さらに特に、図5を参照すると、同性質の名前の各ペアにおけるそれぞれの名前を特徴抽出にかけ、名前を表現するバイナリ特徴ベクトルを作成する動作には、各言語それぞれについて、最初にその言語による所定数の名前から所定の特徴を抽出して、その言語に特有の特徴のセットを作成する動作(500)が含まれる。次に、抽出された特徴について所定の順序を確立する(502)。次に、作成されている特徴ベクトルのビット位置を、確立された順序で各抽出された特徴と同等とみなす(504)。対象としている言語による同性質の名前の各ペアから前回選択されなかった名前を選択し(506)、対象としている言語に特有の特徴のセット内にある特徴に対応する、選択された名前に存在する所定の特徴のそれぞれを識別する(508)。そして、選択された名前の中に発見された特徴に対応するビット位置に第1の二進値を割り当て、かつ、選択された名前の中に発見されない特徴に対応するビット位置に第2の二進値を割り当てるように、選択された名前の特徴ベクトルを生成する(510)。次に、対象としている言語による同性質の名前の各ペアから、名前が選択され処理されたかどうを判定する(512)。名前が選択され処理されていないと判定された場合、動作(506)を、(512)を介して繰り返す。そうでない場合、対象としている言語について手続きは終了し、他方の言語による名前を処理する。
Figure 0005661813
一実装において、Kビットのハッシュ関数は、例えば、セマンティックオブジェクトの第1の表現またはビューにはg、セマンティックオブジェクトの第2の表現またはビューにはhとすると、以下のようにK個の1ビットハッシュ関数で構成される。
Figure 0005661813
Figure 0005661813
後に説明するように、各1ビットハッシュ関数を、セマンティックオブジェクトを入力として取るように設計し、それを+1または−1(または、同じように1または0)のどちらかにハッシュする。K個の1ビットハッシュ関数のそれぞれを用いてオブジェクトをハッシュし、ビットを1つに連結することにより、オブジェクトを表現するKビットバイナリコードを作成する。セマンティックオブジェクトをバイナリコードとして表現することには、従来のハミング距離計算を使用して2つのバイナリ表現の間の類似度を判定することができるなど、多くの利点がある。後により詳細に説明するように、これにより検索をより速くより効率的に行い、特に大きなデータベースでは影響がある。
訓練データ内の同性質のオブジェクト(例えば、名前)間のハミング距離を最小化するハッシュ関数gおよびhを求めることが課題である。より詳細には、同性質のオブジェクトで構成される訓練データから上述のK個の1ビットハッシュ関数を学習することが、タスクである。このタスクは以下の最適化問題として提示することができる。
Figure 0005661813
これは、計算上簡素化された最小化の定式では、
Figure 0005661813
となり、ここで、Nは同性質のオブジェクトのペアの数であり、xiは対象としている同性質のオブジェクト(例えば、英語バージョンの人名)の第1のビューについての特徴ベクトルであり、yiは対象としている同性質のオブジェクト(例えば、カンナダ語バージョンの人名)の他方のビューについての特徴ベクトルである。
加えて、ハッシュ関数は、制約として符号化されるある有利な特性を有することが望ましい。第一に、ハッシュ関数は、得られるバイナリハッシュコードの作成されたビットの内、約50%が+1となり、残りが−1となる、集約的な結果を出すことができる。以下の通りである。
Figure 0005661813
かつ
Figure 0005661813
さらに、有利なことに、得られるバイナリハッシュコードの作成されるビットは無相関である。従って、
Figure 0005661813
かつ
Figure 0005661813
ここで、
Figure 0005661813
かつ
Figure 0005661813
である。
計算上さらに簡単に1ビットハッシュ関数を得るために、線形緩和を採用し、以下のようになる。
Figure 0005661813
かつ
Figure 0005661813
ここで、AおよびBは変換を表す。
従って、最終的な形式では、最適化問題は以下のように定式化することができる。
Figure 0005661813
これは、さらに上述の集約される制約および無相関のビット制約を受け、ここで以下のように定式化することができる。
Figure 0005661813
かつ
Figure 0005661813
変換AおよびBは、2つの異なる表現またはビュー(例えば、2つの異なる言語)による類似するオブジェクト(例えば、人名)が、Kビットのハッシュ関数によって類似するバイナリハッシュコードにマッピングされる、というものである。そのような変換を、上述の同性質のオブジェクト訓練セットおよび相関法を使用して、学習することが可能である。
一実施形態において、特徴ベクトルのグループのそれぞれの同性質のオブジェクトのペアを、同一のセマンティックオブジェクトの2つの表現またはビューとしてみなすことにより、正準相関分析(CCA)を採用して変換AおよびBを求めることが可能である。より詳細には、2つのビューを有する多変量データのサンプルを考えると、CCAは、2つのビューの予測の間の相関が最大になるように各ビューについて線形変換を求める。多変量データのサンプル
Figure 0005661813
を考える。ここで、
Figure 0005661813
および
Figure 0005661813
はオブジェクトの2つのビューである。
Figure 0005661813
かつ
Figure 0005661813
とする。XおよびYを集約する、すなわち、ゼロ平均を持つと仮定する。aおよびbは2つの方向であるとする。すると、Xを方向aに投影して、
Figure 0005661813
を得ることができる。ここで、
Figure 0005661813
である。同様に、Yを方向bに射影して射影関数
V={vi}N i=1
を求める。ここで、
Figure 0005661813
である。CCAの目的は、射影関数UおよびVを最大限に相関するように、方向のペア(a;b)を求めることである。これを、以下の最適化問題を解決することにより達成する。
Figure 0005661813
上述の方程式13の目的関数は、以下の一般固有値問題を解決することにより最大化可能である。
Figure 0005661813
Figure 0005661813
次の基底ベクトルは、基本制約の直交性を目的関数に加えることにより求めることができる。基底ベクトルの数はmin{Rank(X),Rank(Y)}程度に高くすることができるが、実際は、より少ない数の最初に生成された基底ベクトル(「最上」基底ベクトルと称する)を使用し、これは射影関数の相関がこれらのベクトルには高く、残りのベクトルには低いためである。加えて、最上基底ベクトルの内、方程式(12)を順次最大化するものを採用し、上述の集約的および無相関のビット制約に適合させることが望ましい。この目的のため、AおよびBを、CCAにより計算される第1のK個(K>0(例えば、32))の基底ベクトルとする。従って、AおよびBは次のように表すことができる。
Figure 0005661813
かつ
Figure 0005661813
Figure 0005661813
上記を考慮して図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を使用して、人のカンナダ語での名前を表現する特徴ベクトルからバイナリハッシュコードを作成することができる。
Figure 0005661813
Figure 0005661813
Figure 0005661813
ここで、
Figure 0005661813
の時、
Figure 0005661813
Figure 0005661813
ここで、
Figure 0005661813
の時、
Figure 0005661813
Figure 0005661813
Figure 0005661813
なお、バイナリ化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)。
Figure 0005661813
wをグラフGにおける最大重み付き二部マッチングの重みとする。EとHとの間の類似度は、以下のように定義することができる。
Figure 0005661813
方程式(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、DVD(digital versatile disk)もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または、所望の情報の記憶に使用可能、かつ、装置10がアクセス可能な任意の他の媒体、を含むがこれに限定しない。任意のそのようなコンピュータ記憶媒体は装置10の一部とすることができる。
装置10はまた、装置と他の装置との通信を可能にする通信接続(単数または複数)22を含むことができる。装置10はまた、キーボード、マウス、ペン、音声入力装置、タッチ入力装置、カメラ、などの入力装置(単数または複数)24を有しても良い。ディスプレイ、スピーカ、プリンタなどの出力装置(単数または複数)26を、含むことができる。これらの装置全ては、従来技術において周知であり、ここで詳細に検討する必要はない。
本明細書に記載されるセマンティックオブジェクトの特徴付けおよび検索の実施形態は、プログラムモジュールなどの、コンピューティング装置により実行されるコンピュータ実行可能命令の一般的な文脈でさらに説明することができる。一般に、プログラムモジュールには、特定のタスクを実行または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造など、を含む。本明細書に記載される実施形態はまた、タスクを通信ネットワークを介してリンクされるリモート処理装置により実行する分散コンピューティング環境において実践することができる。分散コンピューティング環境において、プログラムモジュールを、メモリ記憶装置を含むローカルおよびリモート両方のコンピュータ記憶媒体に配置させることができる。
5.0 他の実施形態
セマンティックオブジェクトと表現またはビューとの、上で説明した名前−言語の例以外のある他の例には、セマンティックオブジェクトがユーザによりクエリされるエンティティであり、2つの表現またはビューがこのエンティティに関連するウェブページからの画像特徴とテキスト特徴であるという場合を含む。従って、同一のセマンティックオブジェクトについて、マルチモーダル検索の操作を向上させるために使用可能な2つのビューが存在する。別の例は、セマンティックオブジェクトが文書であり、2つの表現またビューが第1の言語による文書と第2の言語による文書である場合である。2つの言語による配列された同性質の文書のセットからハッシュ関数を学習後、ハッシュ関数を使用してどちらかの言語による文書コレクションをクロス言語検索することが可能である。さらに別の例には、セマンティックオブジェクトが単語であり、その2つのビューがその単語の文字配列と音素配列であるものがある。発音辞書からハッシュ関数を学習後、該ハッシュ関数を使用して、テキスト中の未知語を探して辞書における最も近い音素配列を検索することができる。
本記載全体にわたる、上述の実施形態の内のいずれかまたは全てを、所望の任意の組み合わせで使用して追加の混合実施形態を形成することができる。加えて、主題は、構造的特徴および/または方法論的動作に特有の言語で記載されたが、添付の請求項に定義される主題が、必ずしも上述の特定の特徴または動作に限定されないことは理解されるべきである。むしろ、上述の特定の特徴および動作は、請求項を実装する例示の形式として開示される。

Claims (15)

  1. セマンティックオブジェクトを特徴付けるためのコンピュータの動作方法であって、
    前記方法は、セマンティックオブジェクトの第1の表現またはビューを、前記セマンティックオブジェクトを表現する第1のバイナリハッシュコードの形式で特徴付けし、前記セマンティックオブジェクトを表現する第2のバイナリハッシュコードの形式における同一のセマンティックオブジェクトの第2の表現またはビューの特徴付けしたバージョンと比較すると、前記第1および第2のバイナリハッシュコードが、前記オブジェクトが同一のオブジェクトであることを示す類似度を表し、前記方法は、
    同性質のセマンティックオブジェクトのペアを入力するステップであって、前記同性質のセマンティックオブジェクトのペアは、前記第1および第2の表現またはビューで提示される同一のセマンティックオブジェクトを含む、入力するステップと、
    同性質のセマンティックオブジェクトの各ペアのそれぞれのセマンティックオブジェクトを特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップと、
    前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、前記第1の表現またはビューに対する所定数の変換と、前記第2の表現またはビューに対する同数の変換とを確立するステップであって、前記第1または第2の表現またはビューの内の一方に対して確立される変換は、前記表現またはビューを表すセマンティックオブジェクトを表現する特徴ベクトルに適用されると、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードを作成し、前記第1または第2の表現またはビューの内の他方に対して確立された変換を、前記他方の表現またはビューを表す同一のセマンティックオブジェクトを表現する特徴ベクトルに適用する時に作成される前記セマンティックオブジェクトを表現する前記第2のバイナリハッシュコードと、前記第1のバイナリハッシュコードは実質上類似する、確立するステップと、
    前記第1の表現またはビューに対して確立された変換を使用して、前記第1の表現またはビューを表すセマンティックオブジェクトを、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードとして特徴付けするステップと
    を含む方法。
  2. 前記第1の表現またはビューに対して確立された変換を使用して、前記第1の表現またはビューを表すセマンティックオブジェクトを、前記セマンティックオブジェクトを表現する第1のバイナリハッシュコードの形式で特徴付けするステップは、
    前記セマンティックオブジェクトを、前記第1の表現またはビューを表す同性質のセマンティックオブジェクトの各ペアにおける前記セマンティックオブジェクトに適用されるものと同じ特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップと、
    前記第1の表現またはビューに対して確立された変換のそれぞれについて、前記変換を前記セマンティックオブジェクトを表現する特徴ベクトルに適用し、その結果をバイナリ化し、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードのビットを作成するステップと、
    前記作成されたビットを所定の順序で連結し、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードを作成するステップと
    を含む、請求項1に記載の方法。
  3. 同性質のセマンティックオブジェクトの各ペアのそれぞれのセマンティックオブジェクトを特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップは、バイナリ特徴ベクトルまたは実数値特徴ベクトルの内の1つを作成するステップを含む、請求項1に記載の方法。
  4. 同性質のセマンティックオブジェクトの各ペアのそれぞれのセマンティックオブジェクトを特徴抽出にかけ、前記セマンティックオブジェクトを表現する特徴ベクトルを作成するステップは、次元縮小技術を使用して低次元の表現を作成するステップを含む、請求項3に記載の方法。
  5. 前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立するステップは、
    正準相関分析を使用して、前記第1および第2の表現またはビューのそれぞれの候補の変換を計算するステップと、
    前記第1の表現またはビューに対する第1の変換セットを、前記第1の表現またはビューについて計算された候補の変換から確立し、前記第2の表現またはビューに対する第2の変換セットを、前記第2の表現またはビューについて計算された候補の変換から確立するステップであって、セマンティックオブジェクトの同性質のペアのそれぞれに対して、前記第1の変換セットを、前記第1の表現またはビューを表すセマンティックオブジェクトの前記同性質のペアのセマンティックオブジェクトを表現する特徴ベクトルに適用し、かつ、前記第2の変換セットを、前記第2の表現またはビューを表すセマンティックオブジェクトの前記同性質のペアのセマンティックオブジェクトを表現する特徴ベクトルに適用すると、セマンティックオブジェクトの前記同性質のペアの全てについて作成される、結果として得られる第1および第2のバイナリハッシュコードの間の総ハミング距離を最小化する、確立するステップと
    を含む、請求項1に記載の方法。
  6. 前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立するステップは、
    前記第1の変換セットを、作成される前記第1のバイナリハッシュコードのビットのほぼ半分が第1の二進値を表し、かつ残りのビットが他方の二進値を表すという制約を示すように、確立するステップと、
    前記第2の変換セットを、作成される前記第2のバイナリハッシュコードのビットのほぼ半分が前記第1の二進値を表し、かつ残りのビットが他方の二進値を表すという制約を示すように、確立するステップと
    をさらに含む、請求項5に記載の方法。
  7. 前記同性質のセマンティックオブジェクトのペアを表現する特徴ベクトルに基づき、第1の表現またはビューに対する所定数の変換と、第2の表現またはビューに対する同数の変換とを確立するステップは、
    前記第1の変換セットを、作成される前記第1のバイナリハッシュコードのビットが無相関であるという制約を示すように確立するステップと、
    前記第2の変換セットを、作成される前記第2のバイナリハッシュコードのビットが無相関であるという制約を示すように確立するステップと
    をさらに含む、請求項6に記載の方法。
  8. 検索可能なデータベースを作成するためのコンピュータの動作方法であって、前記データベース内の項目は、第1の表現またはビューを表すセマンティックオブジェクトであり、前記データベースに含まれるセマンティックオブジェクトと同一であるが第2の表現またはビューを表すセマンティックオブジェクトを、前記検索可能なデータベースに対して検索クエリとして提示すると、前記検索クエリの前記セマンティックオブジェクトに対応する、前記第1の表現またはビューを表すセマンティックオブジェクトの識別を含む出力を行い、前記方法は、
    前記第1の表現またはビューに対する所定数の変換と、前記第2の表現またはビューに対する同数の変換とを確立するステップであって、前記第1または第2の表現またはビューの内の一方に対して確立される変換を、前記表現またはビューを表すセマンティックオブジェクトを表現する特徴ベクトルに適用すると、前記セマンティックオブジェクトを表現する第1のバイナリハッシュコードを作成し、前記第1または第2の表現またはビューの内の他方に対して確立された変換を、前記他方の表現またはビューを表す同一のセマンティックオブジェクトを表現する特徴ベクトルに適用する時に作成される前記セマンティックオブジェクトを表現する第2のバイナリハッシュコードと、前記第1のバイナリハッシュコードは実質上類似する、確立するステップと、
    前記第1の表現またはビューに対して確立された変換を使用して、前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを、前記セマンティックオブジェクトを表現する前記第1のバイナリハッシュコードの形式で特徴付けするステップであって、前記データベースに含まれるセマンティックオブジェクトを特徴付ける前記第1のバイナリハッシュコードは、前記データベース内の他のセマンティックオブジェクトを特徴付ける前記第1のバイナリハッシュコードと実質上異なる、特徴付けするステップと、
    前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを、前記データベースにおける、それぞれに対応するセマンティックオブジェクトにそれぞれ関連付けるステップと
    を含む方法。
  9. 検索クエリが第2の表現またはビューを表すデータベースに入力されるときは常に、
    前記検索クエリを表現する特徴ベクトルを生成するステップと、
    前記第2の表現またはビューに対して確立される変換のそれぞれについて、前記変換を前記検索クエリを表現する特徴ベクトルに適用し、その結果をバイナリ化し、前記検索クエリを表現する前記第2のバイナリハッシュコードのビットを作成するステップと、
    前記作成されたビットを所定の順序で連結して、前記検索クエリを表現する前記第2のバイナリハッシュコードを作成するステップと、
    前記検索クエリを表現する前記第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、前記データベースに含まれるセマンティックオブジェクト(単数または複数)を発見するステップと、
    前記検索クエリを表現する前記第2のバイナリハッシュコードに対して所定の類似度を表すことが発見された第1のバイナリハッシュコードを有する、前記データベースに含まれる一致するセマンティックオブジェクト(単数または複数)の識別を出力するステップと
    を含む請求項8に記載の方法。
  10. 前記検索クエリを表現する第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、前記データベースに含まれるセマンティックオブジェクト(単数または複数)を発見するステップは、
    前記検索クエリを表現する前記第2のバイナリハッシュコードと前記データベースに含まれる前記セマンティックオブジェクトのそれぞれに関連する前記第1のバイナリハッシュコードとの間のハミング距離の値をそれぞれ計算するステップと、
    第1のバイナリハッシュコードと前記検索クエリを表現する前記第2のバイナリハッシュコードとの間の最小であるハミング距離を表す第1のバイナリハッシュコードを有する、前記データベースに含まれる前記セマンティックオブジェクト(単数または複数)を発見するステップと
    を含む、請求項9に記載の方法。
  11. 前記検索クエリを表現する第2のバイナリハッシュコードに対して所定の類似度を表す第1のバイナリハッシュコードを有する、前記データベースに含まれるセマンティックオブジェクト(単数または複数)を発見するステップは、
    前記検索クエリを表現する前記第2のバイナリハッシュコードと前記データベースに含まれる前記セマンティックオブジェクトのそれぞれに関連する前記第1のバイナリハッシュコードとの間のハミング距離の値をそれぞれ計算するステップと、
    第1のバイナリハッシュコードと前記検索クエリを表現する前記第2のバイナリハッシュコードとの間の、ハミング距離の閾値よりも小さいハミング距離を表す第1のバイナリハッシュコードを有する、前記データベースに含まれる前記セマンティックオブジェクト(単数または複数)を発見するステップと
    を含む、請求項9に記載の方法。
  12. 前記データベースに入力される検索クエリは、単一のセマンティックオブジェクトに組み合わされた複数のセマンティックオブジェクトを含み、前記データベースに含まれる前記セマンティックオブジェクトの内の少なくとも一部が、単一のセマンティックオブジェクトに組み合わされた複数のセマンティックオブジェクトである、請求項9に記載の方法。
  13. 前記データベースに入力された検索クエリは、複数のセマンティックオブジェクトを含み、前記特徴ベクトルの生成、変換の適用およびバイナリ化、連結、発見ならびに出力するステップを、前記検索クエリの前記複数のセマンティックオブジェクトのそれぞれに対して繰り返し、前記方法は、
    重み付き二部グラフを構築するステップであって、前記検索クエリのセマンティックオブジェクトのそれぞれは、前記グラフの第1のノードセットを形成し、前記検索クエリのセマンティックオブジェクトのそれぞれに対して出力された識別された一致するセマンティックオブジェクト(単数または複数)が前記グラフの第2のノードセットを形成する、構築するステップと、
    前記第1のノードセットに関連する前記セマンティックオブジェクトのそれぞれのバイナリハッシュコードと、前記第2のノードセットに関連する前記セマンティックオブジェクトのそれぞれのバイナリハッシュコードとの間の類似度を、既知でない場合にそれぞれ計算するステップと、
    前記第1のノードセットに関連する各セマンティックオブジェクトと、前記第2のノードセットに関連するセマンティックオブジェクトとの間に、それらのバイナリハッシュコードに基づくセマンティックオブジェクト間の類似度が閾値と交差する場合に、エッジを割り当てるステップであって、前記エッジの重みを前記類似度と等しく設定する、割り当てるステップと、
    前記グラフにおける最大重み付き二部グラフマッチングを求めるステップと、
    前記マッチングの重みを計算するステップと、
    前記マッチングの重みを、前記第1および第2のノードセット間のノード数の差に基づき正規化するステップと
    をさらに含む請求項9に記載の方法。
  14. 前記データベースに含まれるセマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを、前記データベースにおける、それぞれに対応するセマンティックオブジェクトにそれぞれ関連付けるステップは、
    前記データベースに含まれる前記セマンティックオブジェクトに対応するデータベースディレクトリを含むハッシュテーブルを確立するステップと、
    前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを前記ハッシュテーブルに追加するステップと、
    前記データベースに含まれる前記セマンティックオブジェクトのそれぞれを特徴付ける前記第1のバイナリハッシュコードを、前記ハッシュテーブル内における、それぞれに対応するデータベースディレクトリエントリに関連付けるステップと
    を含む、請求項8に記載の方法。
  15. 人の名前を特徴付けるためのコンピュータの動作方法であって、
    第1の言語による人の名前を前記名前を表現する第1のバイナリハッシュコードの形式で特徴付けし、第2の言語による同一の名前を前記名前を表現する第2のバイナリハッシュコードの形式で特徴付けしたバージョンと比較すると、前記第1および第2のバイナリハッシュコードは、それらの名前が同一の名前であることを示す類似度を表し、前記方法は、
    同性質の名前のペアを入力するステップであって、前記同性質の名前の各ペアは、前記第1および第2の言語で提示される人の名前を含み、同性質の名前の各ペアは異なる名前に対応する、入力するステップと、
    同性質の名前の各ペアを特徴抽出にかけ、前記名前を表現するバイナリ特徴ベクトルを作成するステップと、
    前記同性質の名前のペアを表現する特徴ベクトルに基づき、前記第1の言語に対する所定数の変換と、前記第2の言語に対する同数の変換とを確立するステップであって、前記第1または第2の言語の内の一方に対して確立された変換を、前記言語による名前を表現する特徴ベクトルに対して適用すると、前記名前を表現する前記第1のバイナリハッシュコードを作成し、前記第1または第2の言語の内の他方に対して確立された変換を、前記他方の言語による同一の名前を表現する特徴ベクトルに適用する時に作成し、前記名前を表現する前記第2のバイナリハッシュコードと、前記第1のバイナリハッシュコードが実質上類似する、確立するステップと、
    前記第1の言語に対して確立された変換を使用して、第1の言語による人の名前を前記名前を表現する前記第1のバイナリハッシュコードとして特徴付けるステップと
    を含む方法。
JP2012556120A 2010-03-01 2011-02-25 セマンティックオブジェクトの特徴付けおよび検索 Active JP5661813B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/715,174 US8543598B2 (en) 2010-03-01 2010-03-01 Semantic object characterization and search
US12/715,174 2010-03-01
PCT/US2011/026358 WO2011109251A2 (en) 2010-03-01 2011-02-25 Semantic object characterization and search

Publications (3)

Publication Number Publication Date
JP2013521574A JP2013521574A (ja) 2013-06-10
JP2013521574A5 JP2013521574A5 (ja) 2014-03-20
JP5661813B2 true JP5661813B2 (ja) 2015-01-28

Family

ID=44505854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012556120A Active JP5661813B2 (ja) 2010-03-01 2011-02-25 セマンティックオブジェクトの特徴付けおよび検索

Country Status (7)

Country Link
US (1) US8543598B2 (ja)
EP (1) EP2542988B1 (ja)
JP (1) JP5661813B2 (ja)
CN (1) CN102782682B (ja)
CA (1) CA2788670C (ja)
HK (1) HK1178277A1 (ja)
WO (1) WO2011109251A2 (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8463053B1 (en) 2008-08-08 2013-06-11 The Research Foundation Of State University Of New York Enhanced max margin learning on multimodal data mining in a multimedia database
US8463797B2 (en) * 2010-07-20 2013-06-11 Barracuda Networks Inc. Method for measuring similarity of diverse binary objects comprising bit patterns
DE102011101154A1 (de) * 2011-05-11 2012-11-15 Abb Technology Ag Verfahren und Einrichtung zur einheitlichen Benennung von gleichen Parametern unterschiedlicher Feldgeräte eines Automatisierungssystems
US9489636B2 (en) * 2012-04-18 2016-11-08 Tagasauris, Inc. Task-agnostic integration of human and machine intelligence
JP5930056B2 (ja) * 2012-09-27 2016-06-08 日本電気株式会社 バイナリデータ変換方法と装置及びプログラム
CN103092828B (zh) * 2013-02-06 2015-08-12 杭州电子科技大学 基于语义分析和语义关系网络的文本相似度度量方法
US9171063B2 (en) 2013-03-13 2015-10-27 Facebook, Inc. Short-term hashes
EP3044702A4 (en) * 2013-09-13 2017-05-10 Fishberg, Keith Amenity, special service and food/beverage search and purchase booking system
US20150278774A1 (en) * 2014-03-31 2015-10-01 Bank Of America Corporation Techniques for hash indexing
US9805099B2 (en) 2014-10-30 2017-10-31 The Johns Hopkins University Apparatus and method for efficient identification of code similarity
JP6712796B2 (ja) * 2015-11-10 2020-06-24 国立大学法人 東京大学 画像を媒介した異言語文書間の学習法及び装置、言語横断文書検索方法及び装置
WO2017099806A1 (en) * 2015-12-11 2017-06-15 Hewlett Packard Enterprise Development Lp Hash suppression
CN105843960B (zh) * 2016-04-18 2019-12-06 上海泥娃通信科技有限公司 基于语义树的索引方法和系统
US10642881B2 (en) * 2016-06-30 2020-05-05 Intel Corporation System architecture for universal emotive autography
CN106502996A (zh) * 2016-12-13 2017-03-15 深圳爱拼信息科技有限公司 一种基于语义匹配的裁判文书检索方法和服务器
US10817774B2 (en) * 2016-12-30 2020-10-27 Facebook, Inc. Systems and methods for providing content
IL258689A (en) 2018-04-12 2018-05-31 Browarnik Abel A system and method for computerized semantic indexing and searching
US11175930B1 (en) * 2018-04-27 2021-11-16 Intuit, Inc. Deducing a requirement to present optional data entry fields based on examining past user input records
US11403327B2 (en) * 2019-02-20 2022-08-02 International Business Machines Corporation Mixed initiative feature engineering
US11797843B2 (en) * 2019-03-06 2023-10-24 Samsung Electronics Co., Ltd. Hashing-based effective user modeling
US11238103B2 (en) 2019-09-13 2022-02-01 Ebay Inc. Binary coding for improved semantic search
CN110674719B (zh) * 2019-09-18 2022-07-26 北京市商汤科技开发有限公司 目标对象匹配方法及装置、电子设备和存储介质
US11163805B2 (en) * 2019-11-25 2021-11-02 The Nielsen Company (Us), Llc Methods, systems, articles of manufacture, and apparatus to map client specifications with standardized characteristics
US20230367974A1 (en) * 2022-05-16 2023-11-16 Microsoft Technology Licensing, Llc Cross-orthography fuzzy string comparisons

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0856175A4 (en) 1995-08-16 2000-05-24 Univ Syracuse SYSTEM AND METHOD FOR RETURNING MULTI-LANGUAGE DOCUMENTS USING A SEMANTIC VECTOR COMPARISON
US6002997A (en) 1996-06-21 1999-12-14 Tou; Julius T. Method for translating cultural subtleties in machine translation
WO1999026235A2 (en) * 1997-11-17 1999-05-27 Telcordia Technologies, Inc. Method and system for determining approximate hamming distance and approximate nearest neighbors in an electronic storage device
GB2337611A (en) 1998-05-20 1999-11-24 Sharp Kk Multilingual document retrieval system
US6311183B1 (en) 1998-08-07 2001-10-30 The United States Of America As Represented By The Director Of National Security Agency Method for finding large numbers of keywords in continuous text streams
US6154747A (en) * 1998-08-26 2000-11-28 Hunt; Rolf G. Hash table implementation of an object repository
US6466901B1 (en) 1998-11-30 2002-10-15 Apple Computer, Inc. Multi-language document search and retrieval system
JP3685660B2 (ja) * 1999-09-13 2005-08-24 沖電気工業株式会社 対訳情報収集装置
US6701014B1 (en) 2000-06-14 2004-03-02 International Business Machines Corporation Method and apparatus for matching slides in video
WO2002086737A1 (en) 2001-04-20 2002-10-31 Wordsniffer, Inc. Method and apparatus for integrated, user-directed web site text translation
US20050216253A1 (en) * 2004-03-25 2005-09-29 Microsoft Corporation System and method for reverse transliteration using statistical alignment
US7693683B2 (en) * 2004-11-25 2010-04-06 Sharp Kabushiki Kaisha Information classifying device, information classifying method, information classifying program, information classifying system
CA2591897C (en) 2005-01-04 2013-03-19 Thomson Global Resources Systems, methods, software, and interfaces for multilingual information retrieval
CN101124579A (zh) * 2005-02-24 2008-02-13 富士施乐株式会社 单词翻译装置、翻译方法以及翻译程序
CN100474301C (zh) * 2005-09-08 2009-04-01 富士通株式会社 基于数据挖掘获取词或词组单元译文信息的系统和方法
US20070185868A1 (en) * 2006-02-08 2007-08-09 Roth Mary A Method and apparatus for semantic search of schema repositories
US8010534B2 (en) * 2006-08-31 2011-08-30 Orcatec Llc Identifying related objects using quantum clustering
KR100775585B1 (ko) * 2006-12-13 2007-11-15 삼성전자주식회사 문자 메시지에 대한 음악 추천 방법 및 그 시스템
KR20090024460A (ko) 2007-09-04 2009-03-09 엘지전자 주식회사 다국어 호환이 가능한 정보 검색 장치 및 방법
EP2201484A4 (en) 2007-09-21 2010-09-22 Google Inc INTERLANGUE RESEARCH
US7917488B2 (en) 2008-03-03 2011-03-29 Microsoft Corporation Cross-lingual search re-ranking
AU2009228204B2 (en) 2008-03-26 2015-01-15 Zonit Structured Solutions, Llc Power distribution systems and methodology
KR101116581B1 (ko) 2008-06-30 2012-03-15 주식회사 한글과컴퓨터 다국어 독음 검색 장치

Also Published As

Publication number Publication date
CN102782682A (zh) 2012-11-14
US8543598B2 (en) 2013-09-24
WO2011109251A2 (en) 2011-09-09
JP2013521574A (ja) 2013-06-10
EP2542988B1 (en) 2018-06-20
EP2542988A4 (en) 2017-01-04
EP2542988A2 (en) 2013-01-09
CN102782682B (zh) 2015-07-29
US20110213784A1 (en) 2011-09-01
CA2788670A1 (en) 2011-09-09
HK1178277A1 (en) 2013-09-06
WO2011109251A3 (en) 2011-12-29
CA2788670C (en) 2017-02-14

Similar Documents

Publication Publication Date Title
JP5661813B2 (ja) セマンティックオブジェクトの特徴付けおよび検索
JP5346279B2 (ja) 検索による注釈付与
CN106844368B (zh) 用于人机对话的方法、神经网络系统和用户设备
CN108280114B (zh) 一种基于深度学习的用户文献阅读兴趣分析方法
WO2020062770A1 (zh) 一种领域词典的构建方法、装置、设备及存储介质
US9659004B2 (en) Retrieval device and method
JP2013521574A5 (ja)
JP2018527656A (ja) 画像の高次元特徴の類似性を比較するための方法及びデバイス
JP2020500371A (ja) 意味的検索のための装置および方法
US8463808B2 (en) Expanding concept types in conceptual graphs
WO2019082362A1 (ja) 単語意味関係推定装置および単語意味関係推定方法
CN110674087A (zh) 文件查询方法、装置及计算机可读存储介质
CN117453861A (zh) 基于对比学习与预训练技术的代码搜索推荐方法和系统
CN112559691A (zh) 语义相似度的确定方法及确定装置、电子设备
JP6495206B2 (ja) 文書概念ベース生成装置、文書概念検索装置、方法、及びプログラム
CN114385777A (zh) 文本数据处理方法、装置、计算机设备和存储介质
JP2011159100A (ja) 逐次類似文書検索装置、逐次類似文書検索方法およびプログラム
JP2010009237A (ja) 多言語間類似文書検索装置及び方法及びプログラム及びコンピュータ読取可能な記録媒体
JP6334491B2 (ja) 概念ベース生成装置、概念検索装置、方法、及びプログラム
CN114723073B (zh) 语言模型预训练、产品搜索方法、装置以及计算机设备
JP2012252392A (ja) キーワードリスト生成プログラム、キーワードリスト生成方法及びキーワードリスト生成装置
CN117709349A (zh) 一种基于多信息融合的短文本命名实体消歧方法
KR20170064683A (ko) 다중 스펙트럴 해싱 및 스케일된 오픈-엔드 동적 타임 워핑에 기반한 허밍 질의 방법 및 시스템
KR20230135372A (ko) Ai기반 자연어처리를 통한 지능형 검색 시스템
JP5995219B2 (ja) 対訳辞書生成装置、方法、及びプログラム

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130712

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130719

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140128

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140128

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140708

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141002

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20141104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141203

R150 Certificate of patent or registration of utility model

Ref document number: 5661813

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250