WO2014118980A1 - 情報変換方法、情報変換装置および情報変換プログラム - Google Patents
情報変換方法、情報変換装置および情報変換プログラム Download PDFInfo
- Publication number
- WO2014118980A1 WO2014118980A1 PCT/JP2013/052418 JP2013052418W WO2014118980A1 WO 2014118980 A1 WO2014118980 A1 WO 2014118980A1 JP 2013052418 W JP2013052418 W JP 2013052418W WO 2014118980 A1 WO2014118980 A1 WO 2014118980A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- hyperplane
- vector
- value
- information conversion
- particle
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
Abstract
情報変換装置(10)は、多次元空間内における単位球面上に存在する粒子の位置ベクトルを特徴量ベクトル空間を分割する超平面の法線ベクトルとする。また、情報変換装置(10)は、超平面を評価する所定の評価関数を単位球面上に粒子が存在する確率を示す確率密度関数として、単位球面上における複数の粒子の位置を確率密度関数の値に応じて移動させる。そして、情報変換装置(10)は、移動させた各粒子の位置ベクトルを超平面の法線ベクトルとみなして特徴量ベクトルをバイナリ列に変換する。
Description
本発明は、情報変換方法、情報変換装置および情報変換プログラムに関する。
従来、指紋、画像、音声などのデータの特徴を示す特徴量ベクトルを用いて類似するデータを検索する際に、厳密性を緩和することで、検索処理を高速化する技術が知られている。このような技術の一例として、特徴量ベクトル間の距離関係を保持したまま特徴量ベクトルをバイナリ列に変換し、バイナリ列同士のハミング距離を計算することで、計算コストを削減する方法が知られている。
また、特徴量ベクトルの距離関係を保持しつつ特徴量ベクトルをバイナリ列に変換する手法の一例として、LSH(Locality-Sensitive Hashing)の技術が知られている。例えば、情報処理装置は、特徴量ベクトル空間を分割する複数の超平面を設定し、各超平面の法線ベクトルと特徴量ベクトルとの内積がそれぞれ正であるか負であるかを示すバイナリ列に特徴量ベクトルを変換する。すなわち、情報処理装置は、超平面を用いて特徴量ベクトル空間を複数の領域に分割し、分割された領域のうちどの領域に特徴量ベクトルが属するかを示すバイナリ列に特徴量ベクトルを変換する。
ここで、データの登録を行った個人を特定するID等、各データに類似性を示すラベルが付与される場合は、新たに登録されるデータの分類を容易にするため、各データをラベルごとに分類する超平面を設定するのが望ましい。このため、同じラベルが付与されたデータペアと異なるラベルが付与されたデータペアとを用いて、各データをラベルごとに分類する超平面の組を学習する技術が知られている。
例えば、情報処理装置は、分類対象となる特徴量ベクトルから、同じラベルが付与された2つの特徴量ベクトル(以下、正例ペアと記載する)と、異なるラベルが付与された2つの特徴量ベクトル(以下、負例ペアと記載する)とを選択する。そして、情報処理装置は、正例ペア間のハミング距離が近くなり、負例ペア間のハミング距離が遠くなるように超平面の組を繰り返し最適化することで、各データをラベルごとに分類する超平面の組を学習する。
M. Datar, N. Immorlica, P. Indyk, V. S. Mirrokni: Locality-Sensitive Hashing Scheme Based on p-Stable Distributions, Proceedings of the twentieth annual symposium on Computational geometry (SCG 2004)
M. Norouzi and D. Fleet: Minimal Loss hashing for compact binary codes, Proceedings of the 28th International Conference on Machine Learning (ICML '11) (2011)
ここで、バイナリ列に変換した際の距離関係の精度を向上させるには、設定する超平面の数を増加させればよい。しかし、上述した超平面の組を学習する技術では、超平面の数を増加させると、超平面の組を最適化する際の計算量が増加するので、各データをラベルごとに分類する超平面の組を学習するのが困難になるという問題がある。
一方、複数の超平面を個別に最適化した場合は、特徴量ベクトル空間を同じように分割する超平面を学習し易いので、距離関係の精度が劣化してしまう。
1つの側面では、本発明は、超平面の組を容易に最適化することを目的とする。
1つの側面では、情報変換装置は、多次元空間内における単位球面上に存在する粒子の位置ベクトルを特徴量ベクトル空間を分割する超平面の法線ベクトルとする。また、情報変換装置は、超平面を評価する所定の評価関数を単位球面上に粒子が存在する確率を示す確率密度関数として、単位球面上における複数の粒子の位置を確率密度関数の値に応じて移動させる。そして、情報変換装置は、移動させた各粒子の位置ベクトルを超平面の法線ベクトルとみなして特徴量ベクトルをバイナリ列に変換する。
1つの実施形態では、超平面の組を容易に最適化することができる。
以下に添付図面を参照して本願に係る情報変換方法、情報変換装置および情報変換プログラムについて説明する。
以下の実施例1では、図1を用いて、情報変換装置を有する検索システムの一例を説明する。図1は、実施例1に係る検索システムを説明するための図である。図1に示すように、検索システム1は、クライアント装置2、情報変換装置10、情報検索装置20を有する。
また、情報変換装置10は、学習データ記憶部11、データペア生成部12、粒子位置算出部13、変換行列生成部14を有する。また、情報検索装置20は、検索対象データベース記憶部21、バイナリ変換部23、バイナリデータベース記憶部22、検索処理部24を有する。
図1に示す検索システム1は、クライアント装置2からクエリデータを受信すると、検索対象データベース記憶部21から、クエリデータの近傍データを検索する。そして、検索システム1は、クエリデータの近傍に類似するデータが登録されているか否かをクライアント装置2へ通知するシステムである。具体的には、検索システム1は、情報変換装置10が生成した変換行列を用いて、情報検索装置20が検索対象となるデータをバイナリ列に変換し、変換後のバイナリ列を用いて、クエリデータの近傍データを検索する。
ここで、検索システム1が検索対象とするデータは、例えば、画像や音声などのデータであり、指紋のパターンや静脈のパターンを用いた生体認証における生体データである。すなわち、検索システム1は、クライアント装置2に入力された利用者の生体データをクエリデータとして受信すると、利用者の生体データが登録されているか否かを判別するシステムである。
なお、画像や音声の特徴量は様々なものが提案されているが、検索システム1は、特定の特徴量に依存するものではないため、任意の特徴量を用いることができる。例えば、画像の特徴量として一般的に用いられているSIFT特徴量やSURF特徴量などを用いることもできる。これらの特徴量は画像中の局所的な情報を特徴量ベクトルとして用いることで、隠れや変動に対してロバストな特徴量であることが知られているが、このような特徴量を示す任意の形式の特徴量ベクトルを用いてよい。
図2は、生体認証の一例を説明するための図である。なお、図2に示す例では、利用者のID(Identification)等の情報が入力されず、利用者のIDを用いた生体データの絞込みを行わないIDレスの1:N認証における処理を示す。図2に示すように、検索システム1は、複数の利用者が登録した登録生体データを複数記憶する。
そして、検索システム1は、クライアント装置2からクエリデータとして、生体データを受信すると、入力された生体データの特徴量を示す特徴量ベクトルを抽出し、抽出した特徴量ベクトルと類似する特徴量ベクトルを有する登録生体データを検索する。すなわち、検索システム1は、クエリデータを入力した利用者の登録生体データが登録されているか否かを判別する。
また、検索システム1は、特徴量ベクトルを所定のビット長のバイナリ列に変換する変換行列を生成し、生成した変換行列を用いて、登録生体データの特徴量ベクトルをバイナリ列に変換する。また、検索システム1は、クエリデータとして入力された生体データにおける特徴量ベクトルを所定のビット長のバイナリ列に変換し、登録生体データの特徴量ベクトルを変換したバイナリ列とのハミング距離を算出する。
そして、検索システム1は、ハミング距離が所定の閾値以下となる登録生体データを検索対象の候補として抽出する。その後、情報検索装置1は、検索した登録生体データとクエリデータとして入力された生体データとの厳密なマッチング処理を実行し、実行結果をクライアント装置2に出力する。
このように、検索システム1は、検索対象となる登録生体データの特徴を示す特徴量ベクトルを所定のバイナリ列に変換し、クエリデータの特徴量ベクトルを変換したバイナリ列とのハミング距離を算出することにより、検索対象とするデータの絞込みを行う。そして、検索システム1は、絞り込んだデータとクエリデータとのマッチングを行うことで、生体認証におけるマッチングを行う。
なお、入力された生体データや登録生体データが画像である場合には、特徴量ベクトルは、例えば、画像中の特定領域における隆線の方向や長さ、勾配、隆線の終端や分岐などの特徴的な点の密度や座標の数値をベクトル化したものとなる。また、入力された生体データや登録生体データが音声である場合には、特徴量ベクトルは、例えば、周波数成分の分布、強度、ピーク値などの数値をベクトル化したものとなる。
以下、情報変換装置10が実行する処理、および情報検索装置20が実行する処理について説明する。図1に戻り、情報変換装置10は、学習データ記憶部11が記憶する学習データを用いて、特徴量ベクトルを所定のビット長のバイナリ列に変換する変換行列を生成し、生成した変換行列を情報検索装置20に通知する。
ここで、変換行列とは、特徴量ベクトル空間を複数の領域に分割する超平面の法線ベクトルを行成分として有する行列であり、情報検索装置20が特徴量ベクトルをバイナリ列に変換する際に用いる行列である。例えば、情報検索装置20は、変換行列と特徴量ベクトルとの積を算出する。そして、情報検索装置20は、算出した積の各成分について、値が正であるか負であるかを判別し、正の値である場合は「1」、負の値である場合は「0」としたバイナリ列を生成する。つまり、情報検索装置20は、変換行列を用いて、各特徴量ベクトルが、超平面によって複数の領域に分割された特徴量ベクトル空間のうち、どの領域に属しているかを示すバイナリ列に特徴量ベクトルを変換する。
ここで、新たに登録されるデータの分類を容易にするため、各データをラベルごとに分類する超平面を設定するのが望ましい。また、バイナリ列は、特徴量ベクトルが各超平面のどちら側に位置するかを示す情報であるため、類似する超平面を設定した場合は、冗長なビット列が増えてしまい、距離関係の精度が劣化する。このため、各超平面がそれぞれ特徴量ベクトル空間を異なる領域に分割するよう設定されるのが望ましい。
ここで、同じラベルが付与された特徴量ベクトルの組である正例ペアと、異なるラベルが付与された特徴量ベクトルの組である負例ペアとを用いて、設定した複数の超平面を同時に評価することで、超平面を最適化する手法が考えられる。しかしながら、複数の超平面を同時に最適化させるには、計算量が多くなる結果、超平面の組を学習するのが困難となっていた。
そこで、情報変換装置10は、超平面と同じ次元数を有する単位球面上に、設定する超平面と同数の粒子を配置し、超平面を評価するための評価関数を単位球面上に粒子が存在する確率を示す確率密度関数とみなして各粒子をランダムウォークさせる。そして、情報変換装置10は、ランダムウォークさせた結果、確率密度関数が極大値を取る位置に移動した粒子の位置ベクトルを超平面の法線ベクトルとみなす。
ここで、図3は、ランダムウォークによる効果を説明するための図である。なお、図3に示す例では、超平面と同じ次元数を有する単位球を2次元に投影した例について記載した。例えば、情報変換装置10は、図3中(A)で示す単位球面上に、図3中(B)で示す粒子を配置する。また、情報変換装置10は、図3中(C)で示すように、超平面を評価する評価関数を確率密度関数とみなす。そして、情報変換装置10は、単位球面上の粒子をランダムウォークさせる。
このようなランダムウォークを行った場合は、粒子は、確率密度関数が極大値を取る位置に留まりやすい。このため、情報変換装置10は、図3中(D)で示すように、ランダムウォークにより確率密度関数が極大値を取る位置に移動した粒子の位置ベクトルを超平面の法線ベクトルとみなすことで、評価関数が極大値を取る超平面の法線ベクトルを求めることができる。
また、単位球面上に複数の粒子を無作為に配置し、各粒子をそれぞれランダムウォークさせた場合は、各粒子は、初期配置の近傍にある確率密度関数が極大値を取る位置に留まりやすい。すなわち、ランダムウォークの結果、各粒子は、同じ位置に移動する確率が低くなる。
そこで、情報変換装置10は、単位球面上に複数の粒子を配置し、超平面を評価する評価関数を確率密度関数とみなして各粒子を個別にランダムウォークさせる。すなわち、情報変換装置10は、単位球面上の複数の粒子の位置ベクトルを超平面の法線ベクトルとみなし、評価関数を確率密度関数とみなして、マルコフ連鎖モンテカルロ法によるサンプリングを行う。そして、情報変換装置10は、各粒子が移動した位置の位置ベクトルを超平面の法線ベクトルとみなすことで、超平面の組について評価関数の最適化問題を解かずとも、容易に超平面の組を最適化することができる。また、情報変換装置10は、可積分な非負の関数を評価関数に適用することができる。
次に、情報変換装置10が有する学習データ記憶部11、データペア生成部12、粒子位置算出部13、変換行列生成部14が実行する処理について説明する。図1に戻り、学習データ記憶部11は、情報変換装置が超平面を学習するための学習データを記憶する。
具体的には、学習データ記憶部11は、学習データとして、利用者ごとに、複数の特徴量ベクトルを記憶する。ここで、学習データ記憶部11が記憶する特徴量ベクトルは、後述する検索対象データベース記憶部21が記憶する特徴量ベクトルの一部である。すなわち、学習データ記憶部11は、検索システム1に登録された登録生体データの特徴量ベクトルの一部を記憶する。
ここで、図4は、学習データ記憶部が記憶するデータの一例を説明するための図である。図4に示すように、学習データ記憶部11は、データID(Identification)と特徴量ベクトルとラベルとを対応付けて記憶する。ここで、データIDとは、各データに付与されるデータの識別子である。また、ラベルとは、各特徴量ベクトルの類似性を示す情報であり、例えば、各特徴量ベクトルの元となる生体データ等を登録した利用者を示す情報である。
例えば、図4に示す例では、学習データ記憶部11は、データID「1」で示される特徴量ベクトルであって、ラベル「A」が付与された4000次元の浮動小数点データ「a、b、c…」を特徴量ベクトルとして記憶する。また、学習データ記憶部11は、データID「2」で示される特徴量ベクトルであって、ラベル「B」が付与された4000次元の浮動小数点データ「d、e、f…」を特徴量ベクトルとして記憶する。
図1に戻り、データペア生成部12は、学習データ記憶部11が記憶する学習データから、超平面を学習する際に用いるデータペアを収集する。具体的には、データペア生成部12は、学習データ記憶部11が記憶する特徴量ベクトルのうち、同じラベルが付与された2つの特徴量ベクトルである正例ペアを複数選択する。また、データペア生成部12は、学習データ記憶部11が記憶する特徴量ベクトルのうち、異なるラベルが付与された2つの特徴量ベクトルである負例ペアを複数選択する。そして、データペア生成部12は、選択した正例ペアと負例ペアとを粒子位置算出部13に出力する。
粒子位置算出部13は、所定の評価関数を確率密度関数とみなして超平面と同じ次元数を有する単位球面上で複数の粒子をランダムウォークさせ、確率密度関数が極大値となる位置の位置ベクトルを算出する。詳細には、データペア生成部12から正例ペアと負例ペアとを受信する。また、粒子位置算出部13は、超平面と同じ次元数を有する単位球面上に、設定する超平面と同数の粒子をランダムに配置する。そして、粒子位置算出部13は、単位球面上に配置した粒子ごとに以下のマルコフ連鎖モンテカルロ処理(MCMC:Markov chain Monte Carlo methods)を実行する。
まず、粒子位置算出部13は、現在の粒子の位置ベクトルを法線ベクトルとする超平面について、データペア生成部12から受信した正例ペアと負例ペアとを用いて、評価関数の値を算出する。次に、粒子位置算出部13は、粒子の移動先となる候補位置を抽出する。なお、候補位置を抽出する処理の内容としては、所定の距離だけ移動させる方法や、メトロポリス・ヘイスティングス法を用いて、提案分布から候補位置を抽出する方法が考えられる。
次に、粒子位置算出部13は、抽出した候補位置の位置ベクトルを法線ベクトルとする超平面について、データペア生成部12から受信した正例ペアと負例ペアとを用いて、評価関数の値を算出する。詳細には、粒子位置算出部13は、候補位置の位置ベクトルを法線ベクトルとする超平面が特徴量ベクトルを分割していない正例ペアの数を計数する。また、粒子位置算出部13は、候補位置の位置ベクトルを法線ベクトルとする超平面が特徴量ベクトルを分割する負例ペアの数を計数する。そして、粒子位置算出部13は、計数した正例ペアの数と負例ペアの数とを用いて、超平面を評価する値、すなわち評価関数の値を算出する。
また、粒子位置算出部13は、候補位置の位置ベクトルを法線ベクトルとする超平面について算出した評価関数の値を、現在の粒子の位置ベクトルを法線ベクトルする超平面について算出した評価関数の値で除算した値を算出する。その後、粒子位置算出部13は、0以上1以下の値を取る乱数を算出し、算出した値が乱数よりも大きい場合は、候補位置を新たな粒子の位置とする。すなわち、粒子位置算出部13は、ランダム性を考慮しつつ、評価関数の値が大きくなる位置に粒子を移動させる。
ここで、図5は、MCMC処理の内容を説明するための図である。なお、図5では、理解を容易にするため、単位球面上の各位置を1次元に投影して横軸方向に射影し、評価関数U(x)の値を縦軸方向に取り、U(x)の値をプロットした。例えば、粒子位置算出部13は、図5中(E)に示す粒子を移動させる候補位置として、図5中(F)に示す位置を選択する。
そして、粒子位置算出部13は、候補位置の位置ベクトルを超平面の法線ベクトルとして、評価関数U(x)の値を求める。次に、粒子位置算出部13は、候補位置の位置ベクトルを超平面の法線ベクトルとして算出した評価関数U(x)の値を、現在位置の位置ベクトルを超平面の法線ベクトルして算出した評価関数U(x)の値で除算した値を算出する。そして、粒子位置算出部13は、除算結果が0以上1以下の乱数よりも大きいか判定する。
ここで、図5中(E)に示す粒子は、U(x)の値が極大値を取る位置に配置されているので、候補位置におけるU(x)の値は、現在位置におけるU(x)の値よりも低くなる。このため、除算結果は、1以下の値となり、乱数よりも小さくなる可能性が高い。このため、図5中(E)に示す粒子は、図5中(F)に移動する可能性が低い。
同様に、図5中(E)に示す粒子の候補位置として図5中(H)に示す位置を選択した場合にも、評価関数の値が低くなるので、候補位置に移動する可能性が低い。この結果、図5中(E)に示す粒子は、ランダムウォークの結果、他の位置に移動する確率が低く、評価関数の極大値に留まる可能性が高い。
一方、図5中(G)に示す粒子をランダムウォークさせた場合について考える。例えば、図5に示す例では、図5中(G)に示す粒子の候補位置を図5中(I)に示す位置とすると、評価関数U(x)の値が現在の値よりも低くなる。一方、図5中(G)に示す粒子の候補位置を図5中(J)に示す位置とすると、評価関数U(x)の値が現在よりも高くなる。ここで、候補位置における評価関数U(x)の値が現在位置における評価関数U(x)の値よりも高い場合は、除算結果が1以上となるので、候補位置が図5中(G)に示す粒子の新たな位置となる。この結果、図5中(G)に示すように、評価関数U(x)が極大値とならない位置の粒子は、ランダムウォークの結果U(x)が極大値となる位置方向に移動しやすい。
このように、複数の粒子を単位球面上に配置し、各粒子をそれぞれ個別にランダムウォークさせた場合は、各粒子が同じ位置に移動していく可能性が低く、評価関数が極大値を取る位置に各粒子が移動していく可能性が高い。そこで、粒子位置算出部13は、複数の粒子を単位球面上に配置してそれぞれ個別にランダムウォークさせ、各粒子の位置ベクトルを超平面の法線ベクトルとすることで、評価関数が極大値を取り、かつ類似しない超平面の組を容易に算出することができる。また、粒子位置算出部13は、評価関数を微分可能な形式で得られない場合にも、評価関数が極大値を取るであろう法線ベクトルの組を容易に算出することができる。
なお、粒子位置算出部13は、正例ペアの間に超平面が入るとき値が小さく、負例ペアの間に超平面が入るときは値が大きくなる性質を有する任意の評価関数を確率密度関数とみなして利用することができる。そこで、以下の説明では、粒子位置算出部13が利用する評価関数の複数の例を説明する。
例えば、粒子位置算出部13は、超平面が分割した2つの領域のうち、いずれか一方の領域に両方の特徴量ベクトルが含まれている正例ペアの数を計数する。詳細には、粒子位置算出部13は、法線ベクトルと正例ペアに含まれる各特徴量ベクトルの角度をそれぞれθ1(p)、θ2(p)とし、cos(θ1(p))×cos(θ2(p))が正の値となる正例ペアの数を「#PP+」とする。
また、粒子位置算出部13は、データペア生成部12から受信した負例ペアのうち、粒子の位置ベクトルを法線ベクトルとする超平面が、特徴量ベクトルを異なる領域に分けている負例ペアの個数を計数する。詳細には、粒子位置算出部13は、法線ベクトルと負例ペアに含まれる各特徴量ベクトルの角度をそれぞれθ1(p)、θ2(p)とする。そして、粒子位置算出部13は、cos(θ1(p))×cos(θ2(p))が負の値となる負例ペアの数を「#NP-」とする。
また、粒子位置算出部13は、以下の式(1)を用いて変数xの値を算出する。すなわち、粒子位置算出部13は、いずれか一方の領域に両方の特徴量ベクトルが含まれている正例ペアの数と、特徴量ベクトルが異なる領域に分けてられている負例ペアの個数との合計を算出する。その後、評価関数U(x)=exp(x/T)の値を算出する。ここで、Tは、任意のパラメータであり、例えば「1」である。
また、粒子位置算出部13は、いずれか一方の領域に両方の特徴量ベクトルが含まれている正例ペアの数の割合と、特徴量ベクトルが異なる領域に分けてられている負例ペアの数の割合とを用いて評価関数の値を算出してもよい。例えば、粒子位置算出部13は、データペア生成部12から受信した正例ペアの数を「#PP」とし、データペア生成部12から受信した負例ペアの数を「#NP」とする。
そして、粒子位置算出部13は、以下の式(2)を用いて変数xの値を算出し、評価関数U(x)=exp(x/T)の値を算出する。
また、粒子位置算出部13は、他の式を用いて、評価関数の値を算出してもよい。例えば、粒子位置算出部13は、cos(θ1(p))+cos(θ2(p))の絶対値を全ての正例ペアについて算出し、算出した絶対値の合計をDとする。また、粒子位置算出部13は、cos(θ1(p))-cos(θ2(p))の絶対値を全ての負例ペアについて算出し、算出した絶対値の合計をEとする。
そして、粒子位置算出部13は、算出したDとEとの合計をxの値とし、評価関数U(x)=exp(x/T)の値を算出する。すなわち、粒子位置算出部13は、以下の式(3)を用いて変数xを算出し、算出した変数xの値を用いて、評価関数U(x)の値を算出する。
また、粒子位置算出部13は、式(3)について、式(2)と同様に、割合を考慮してもよい。例えば、粒子位置算出部13は、cos(θ1(p))+cos(θ2(p))の絶対値を全ての正例ペアについて算出し、算出した絶対値の合計をDとする。また、粒子位置算出部13は、cos(θ1(p))-cos(θ2(p))の絶対値を全ての負例ペアについて算出し、算出した絶対値の合計をEとする。
そして、粒子位置算出部13は、算出したDを正例ペアの数「#PP」で除算した値とEを負例ペアの数「#NP」で除算した値との合計をxの値とし、評価関数U(x)の値を算出する。すなわち、粒子位置算出部13は、以下の式(4)を用いて変数xを算出し、算出した変数xの値を用いて、評価関数U(x)の値を算出する。
このように、粒子位置算出部13は、粒子の位置ベクトルを超平面の法線ベクトルとみなし、超平面が正例ペアを同じ領域に含める数と負例ペアを異なる領域に分割する数とに応じて値が増加する評価関数の値を算出する。そして、粒子位置算出部13は、算出した評価関数の値を確率密度関数の値とし、確率密度関数が大きくなる方向へ、単位球面上の各粒子を移動させる。この結果、粒子位置算出部13は、超平面の組について、評価関数の最適値問題を解かずとも、評価関数の値がそれぞれ極大となり、かつ類似しない超平面の組の法線ベクトル、すなわち最適化された超平面の組による変換行列を算出することができる。
なお、粒子位置算出部13は、各粒子に対して、上述したランダムウォーク処理を所定の回数だけ実行し、確率密度関数が極大値となる位置に各粒子を移動させる。その後、粒子位置算出部13は、各粒子の位置ベクトルを変換行列生成部14に出力する。
図1に戻って、変換行列生成部14は、粒子位置算出部13が算出した位置ベクトルを受信すると、受信した位置ベクトルをまとめた行列、すなわち変換行列を生成する。例えば、変換行列生成部14は、複数の位置ベクトルを受信し、受信した各位置ベクトルを行ベクトルとする変換行列を生成する。そして、変換行列生成部14は、生成した変換行列を情報検索装置20のバイナリ変換部23に出力する。
次に、情報検索装置20が実行する処理について説明する。検索対象データベース記憶部21は、検索対象となるデータ、すなわち、登録生体データの特徴量ベクトルを記憶する。具体的には、検索対象データベース記憶部21は、学習データ記憶部11と同様のデータを記憶する。なお、検索対象データベース記憶部21は、学習データ記憶部11が記憶するデータを含む、より多くのデータを記憶しても良い。
また、バイナリデータベース記憶部22は、所定の変換行列を用いて特徴量ベクトルを変換したバイナリ記号と、変換前のデータIDとを対応付けて記憶する。
図1に戻って、バイナリ変換部23は、情報変換装置10の変換行列生成部14から変換行列を受信した場合は、受信した変換行列を用いて、検索対象データベース記憶部21が記憶する特徴量ベクトルをバイナリ列に変換する。そして、バイナリ変換部23は、変換後のバイナリ列を、変換元の特徴量ベクトルと対応付けられたデータIDと対応付けて、バイナリデータベース記憶部22に格納する。
検索処理部24は、クライアント装置2からクエリデータを受信すると、受信したクエリデータの特徴量を示す特徴量ベクトルを抽出し、抽出した特徴量ベクトルを所定の変換行列でバイナリ列に変換する。そして、検索処理部24は、バイナリデータベース記憶部22が記憶するバイナリ列のうち、ハミング距離が所定の値以下となるバイナリ列、すなわち、クエリデータの近傍候補となる特徴量ベクトルのバイナリ列を検索する。
その後、検索処理部24は、検索したバイナリ列の変換元である特徴量ベクトルを検索対象データベース記憶部21から取得する。そして、検索処理部24は、取得した特徴量ベクトルに、クエリデータから抽出した特徴量ベクトルと一致する特徴量ベクトルや、ユークリッド距離が所定の閾値以下となる特徴量ベクトルが存在する場合は、以下の処理を実行する。すなわち、検索処理部24は、クエリデータが登録生体データに一致する旨をクライアント装置2へ送信する。
一方、検索処理部24は、取得した特徴量ベクトルに、クエリデータから抽出した特徴量ベクトルと一致する特徴量ベクトルや、ユークリッド距離が所定の閾値以下となる特徴量ベクトルが存在しない場合は、以下の処理を実行する。すなわち、検索処理部24は、クエリデータが登録生体データに一致しない旨をクライアント装置2へ送信する。この結果、クライアント装置2は、クエリデータを入力した利用者の生体認証を行うことができる。
例えば、データペア生成部12、粒子位置算出部13、変換行列生成部14、バイナリ変換部23、検索処理部24とは、電子回路である。ここで、電子回路の例として、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路、またはCPU(Central Processing Unit)やMPU(Micro Processing Unit)などを適用する。
また、学習データ記憶部11、検索対象データベース記憶部21、バイナリデータベース記憶部22とは、RAM(Random Access Memory)、フラッシュメモリ(flash memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。
次に、図6を用いて、情報変換装置10が実行する処理の流れについて説明する。図6は、情報変換装置が実行する処理の流れを説明するためのフローチャートである。なお、図6に示す例では、情報変換装置10は、単位球面上にn個の粒子1~nを配置した例について説明する。まず、情報変換装置10は、ステップS102以降の処理を所定の回数だけ処理したか否かを判定する(ステップS101)。
そして、情報変換装置10は、ステップS102以降の処理を所定の回数だけ処理していないと判定した場合は(ステップS101否定)、学習データ記憶部11から、正例ペアと負例のペアとを複数選択する(ステップS102)。次に、情報変換装置10は、以降の処理を全ての粒子1~nに対して処理したか否かを判定する(ステップS103)。そして、情報変換装置10は、全ての粒子に対して処理していないと判定した場合は(ステップS103否定)、粒子iについてマルコフ連鎖モンテカルロ処理を実行する(ステップS104)。
続いて、情報変換装置10は、iの値に1を加算し(ステップS105)、ステップS103の処理を再度行う。また、情報変換装置10は、全ての粒子1~nについてステップS104を実行した場合は(ステップS103肯定)、再度ステップS101を実行する。そして、情報変換装置10は、ステップS102以降の処理を所定の回数だけ処理した場合は(ステップS101肯定)、各粒子の位置ベクトルを法線ベクトルとした超平面の変換行列を生成し(ステップS106)、処理を終了する。
次に、図7を用いて、図6中ステップS104に示したマルコフ連鎖モンテカルロ処理(MCMC処理)の流れについて説明する。図7は、MCMC処理の流れを説明するためのフローチャートである。なお、図7に示す例では、粒子iについてMCMC処理を実行する例について記載した。
まず、情報変換装置10は、メトロポリス・ヘイスティングス法を用いて、提案分布から粒子iの候補位置を抽出する(ステップS201)。次に、情報変換装置10は、現在の粒子iの位置での評価関数の値を計算し(ステップS202)、ステップS202の計算結果を「A」とする(ステップS203)。次に、情報変換装置10は、粒子iの候補位置での評価関数の値を計算し(ステップS204)、ステップS204の計算結果を「B」とする(ステップS205)。また、情報変換装置10は、「0」以上「1」以下の値を取る乱数Cを抽出し(ステップS206)、「B」を「A」で除算した値が「C」よりも大きいか否かを判定する(ステップS207)。
そして、情報変換装置10は、「B」を「A」で除算した値が「C」よりも大きい場合は(ステップS207肯定)、粒子iの位置を候補位置に変更し(ステップS208)、処理を終了する。すなわち、情報変換装置10は、粒子iの移動についてのランダム性を考慮しつつ、候補位置での評価関数の値が現在の評価関数の値よりも大きいか否かを判定する。そして、情報変換装置10は、候補位置での評価関数の値が現在の評価関数の値よりも大きい場合は、粒子iの移動についてのランダム性を考慮しつつ、候補位置に粒子iを移動させる。一方、情報変換装置10は、情報変換装置10は、「B」を「A」で除算した値が「C」以下となる場合は(ステップS207否定)、そのまま処理を終了する。
次に、図8~図11を用いて、情報変換装置10が図7中ステップS202、ステップS204に示す評価関数の値の計算を行う処理の流れについて説明する。まず、図8を用いて、情報変換装置10が式(1)を用いて、評価関数の値の計算を行う処理の流れについて説明する。
図8は、評価関数の値の計算を行う処理の流れを説明する第1のフローチャートである。例えば、情報変換装置10は、粒子の位置ベクトルを法線ベクトルとする。そして、情報変換装置10は、法線ベクトルと正例ペアに含まれる各特徴量ベクトルの角度θ1(p)、θ2(p)について、cos(θ1(p))×cos(θ2(p))が正の値となる正例ペアの数を「#PP+」とする(ステップS301)。また、情報変換装置10は、法線ベクトルと負例ペアに含まれる各特徴量ベクトルの角度θ1(p)、θ2(p)について、cos(θ1(p))×cos(θ2(p))が負の値となる負例ペアの数を「#NP-」とする(ステップS302)。そして、情報変換装置10は、「#PP+」と「#NP-」との和を用いて評価関数の値を算出し(ステップS303)、処理を終了する。
次に、図9を用いて、情報変換装置10が式(2)を用いて、評価関数の値の計算を行う処理の流れについて説明する。図9は、評価関数の値の計算を行う処理の流れを説明する第2のフローチャートである。なお、図9中ステップS401は、図8中ステップS301と同じ処理であり、図9中ステップS402は、図8中ステップS302と同じ処理であるため、説明を省略する。
例えば、情報変換装置10は、データペア生成部12から受信した正例ペアの数を「#PP」とし、データペア生成部12から受信した負例ペアの数を「#NP」とする(ステップS403)。そして、情報変換装置は、「#PP+」を「#PP」で除算した値と、「#NP-」を「#NP」で除算した値との合計を用いて評価関数の値を算出し(ステップS404)、処理を終了する。
次に、図10を用いて、情報変換装置10が式(3)を用いて、評価関数の値の計算を行う処理の流れについて説明する。図10は、評価関数の値の計算を行う処理の流れを説明する第3のフローチャートである。
例えば、情報変換装置10は、法線ベクトルと正例ペアの各特徴量ベクトルの角度θ1(p)、θ2(p)についてcos(θ1(p))+cos(θ2(p))の絶対値を全ての正例ペアについて算出し、算出した絶対値の合計をDとする(ステップS501)。また、情報変換装置10は、法線ベクトルと負例ペアの各特徴量ベクトルの角度θ1(p)、θ2(p)についてcos(θ1(p))-cos(θ2(p))の絶対値を全ての負例ペアについて算出し、算出した絶対値の合計をEとする(ステップS502)。そして、情報変換装置10は、算出したDとEとの合計を用いて、評価関数の値を算出し(ステップS503)、処理を終了する。
次に、図11を用いて、情報変換装置10が式(4)を用いて、評価関数の値の計算を行う処理の流れについて説明する。図11は、評価関数の値の計算を行う処理の流れを説明する第4のフローチャートである。なお、図11中のステップS601は、図10中のステップS501と同じ処理であり、図11中のステップS602は、図10中のステップS502と同じ処理であるため、説明を省略する。
例えば、情報変換装置10は、データペア生成部12から受信した正例ペアの数を「#PP」とし、データペア生成部12から受信した負例ペアの数を「#NP」とする(ステップS603)。そして、情報変換装置は、「D」を「#PP」で除算した値と、「E」を「#NP」で除算した値との和から評価関数の値を算出し(ステップS604)、処理を終了する。
[実施例1の効果]
上述したように、情報変換装置10は、多次元空間内における単位球面上に存在する粒子の位置ベクトルを特徴量ベクトル空間を分割する超平面の法線ベクトルとし、評価関数を単位球面上に粒子が存在する確率を示す確率密度関数とみなす。そして、情報変換装置10は、単位球面上における複数の粒子の位置をランダムウォークにより評価関数が極大値を取る位置に移動させる。その後、情報変換装置10は、各粒子の位置ベクトルを超平面の法線ベクトルとみなす。このため、情報変換装置10は、設定する超平面の数を増加させた場合にも、各超平面が個別の最適解を束ねたものではない超平面の組を容易に最適化することができる。
上述したように、情報変換装置10は、多次元空間内における単位球面上に存在する粒子の位置ベクトルを特徴量ベクトル空間を分割する超平面の法線ベクトルとし、評価関数を単位球面上に粒子が存在する確率を示す確率密度関数とみなす。そして、情報変換装置10は、単位球面上における複数の粒子の位置をランダムウォークにより評価関数が極大値を取る位置に移動させる。その後、情報変換装置10は、各粒子の位置ベクトルを超平面の法線ベクトルとみなす。このため、情報変換装置10は、設定する超平面の数を増加させた場合にも、各超平面が個別の最適解を束ねたものではない超平面の組を容易に最適化することができる。
また、情報変換装置10は、粒子を移動させる候補位置における位置ベクトルを法線ベクトルとみなした際の評価関数の値を、現在の位置における位置ベクトルを法線ベクトルとみなした際の評価関数の値で除算した価とを算出する。そして、情報変換装置10は、算出した値が、0以上1以下の乱数よりも大きい場合は、粒子の位置を候補位置へ移動させる。このため、情報変換装置10は、評価関数の値が極大値となる位置へ粒子を移動させることができる。また、情報変換装置10は、粒子の移動についてランダム性を保持するので、評価関数の値が局所的な極大値に収束してしまうのを防ぐことができる。
また、情報変換装置10は、粒子を単位球面上でランダムウォークさせる処理を所定の回数だけ繰り返し実行する。このため、情報変換装置10は、各法線ベクトルがより極大値に近い超平面、すなわちより最適化された超平面の組を求めることができる。
また、情報変換装置10は、正例ペアと負例ペアとを選択する。そして、情報変換装置10は、正例ペアが異なる領域に分割される場合は、値が減少し、負例ペアが異なる領域に分割される場合は、値が増加する評価関数を確率密度関数とみなす。このため、情報変換装置10は、ラベルごとに各特徴量ベクトルを分類する超平面の組を算出することができる。
また、情報変換装置10は、超平面によって分割された一方の領域に両方の特徴量ベクトルが含まれている正例ペアの数「#PP+」と、超平面によって2つの特徴量ベクトルが異なる領域に分割されている負例ペアの数「#NP-」とを計数する。そして、情報変換装置10は、「#PP+」と「#NP-」との和を指数とし、ネイピア数を底とする評価関数を用いる。このため、情報変換装置10は、ラベルごとに各特徴量ベクトルを分類する超平面の組を算出することができる。
また、情報変換装置10は、「#PP+」を正例ペアの数「#PP」で除算した値と「#NP-」を負例ペアの数「#NP」で除算した値との和を指数とし、ネイピア数を底とする評価関数を用いる。このため、情報変換装置10は、超平面が適切に分類するデータと超平面が適切に分類できなかったデータとの割合に応じて、超平面の組を最適化することができる。
また、情報変換装置10は、正例ペアに含まれる各特徴量ベクトルと法線ベクトルとの間の角度のコサイン値の和の絶対値を取った値を全ての正例ペアについて加算する。また、情報変換装置10は、負例ペアに含まれる各特徴量ベクトルと法線ベクトルとの間の角度のコサイン値の差分の絶対値を取った値を全ての負例ペアについて加算する。そして、情報変換装置は、正例ペアについて加算した値と、負例ペアについて加算した値との和を指数とし、ネイピア数を底とする評価関数を用いる。このため、情報変換装置10は、正例ペア全体と負例ペア全体とをどれだけ適切に分割できるか等、大局的な分類を行う超平面の組を算出することができる。
また、情報変換装置は、正例ペアについて加算した値を正例ペアの数で除算した値と、負例ペアについて加算した値を負例ペアの数で除算した値との和を指数とし、ネイピア数を底とする評価関数を用いる。このため、情報変換装置10は、正しい分類が行われた正例ペア、および負例ペアの割合を考慮しつつ、大局的な分類を行う超平面の組を算出することができる。
これまで本発明の実施例について説明したが実施例は、上述した実施例以外にも様々な異なる形態にて実施されてよいものである。そこで、以下では実施例2として本発明に含まれる他の実施例を説明する。
(1)特徴量ベクトルの選択について
上述した情報変換装置10は、同一のラベルが付与された2つの特徴量ベクトルを正例ペアとして選択し、異なるラベルが付与された2つの特徴量ベクトルを負例ベクトルとして選択する。しかしながら、実施例はこれに限定されるものではない。例えば、情報変換装置10は、任意の数の特徴量ベクトルを含む正例ペア、および負例ペアを選択することができる。
上述した情報変換装置10は、同一のラベルが付与された2つの特徴量ベクトルを正例ペアとして選択し、異なるラベルが付与された2つの特徴量ベクトルを負例ベクトルとして選択する。しかしながら、実施例はこれに限定されるものではない。例えば、情報変換装置10は、任意の数の特徴量ベクトルを含む正例ペア、および負例ペアを選択することができる。
また、情報変換装置10は、3以上の特徴量ベクトルを含むデータセットを学習データ記憶部11から取得する。そして、情報変換装置10は、取得したデータセットから正例ペアおよび負例ペアを生成し、生成した正例ペアおよび負例ペアを用いて評価関数の値を算出してもよい。
また、上述した情報変換装置10は、全粒子に対してMCMC処理を実行するたびに、正例ペアと負例ペアとを選択しなおした。しかし、実施例はこれに限定されるものではなく、例えば、情報変換装置10は、1つの粒子に対してMCMC処理を実行するたびに、正例ペアと負例ペアとを選択しなおしてもよい。
(2)実施形態について
上述した情報変換装置10は、情報検索装置20とは独立した装置である。しかし、実施例はこれに限定されるものではなく、例えば、情報検索装置20に情報変換装置10の機能を含めることとしてもよい。また、情報変換装置10は、情報検索装置20のバイナリ変換部23が実行する機能を有し、稼働中の情報検索装置が記憶する特徴量ベクトルについて、変換行列を生成し、生成した変換行列を用いてバイナリ列を生成する処理を実行してもよい。また、情報変換装置10が発揮する機能は、いわゆるクラウドシステムによって発揮されてもいい。
上述した情報変換装置10は、情報検索装置20とは独立した装置である。しかし、実施例はこれに限定されるものではなく、例えば、情報検索装置20に情報変換装置10の機能を含めることとしてもよい。また、情報変換装置10は、情報検索装置20のバイナリ変換部23が実行する機能を有し、稼働中の情報検索装置が記憶する特徴量ベクトルについて、変換行列を生成し、生成した変換行列を用いてバイナリ列を生成する処理を実行してもよい。また、情報変換装置10が発揮する機能は、いわゆるクラウドシステムによって発揮されてもいい。
(3)数式について
情報変換装置10が重要度を算出するために使用した数式は、あくまで一例であり、情報変換装置10は、任意の形式の数式を用いることができる。すなわち、情報変換装置10は、特徴量ベクトルの距離関係や、特徴量ベクトルが付与されたラベルに応じて、特徴量ベクトルをバイナリ列に投影できる変換行列を求めることができるのであれば、任意の数式を用いることとしてもよい。また、情報変換装置10は、変換行列を求める際のパラメータ等をさらに設定してもよく、他の評価関数を用いてもよい。
情報変換装置10が重要度を算出するために使用した数式は、あくまで一例であり、情報変換装置10は、任意の形式の数式を用いることができる。すなわち、情報変換装置10は、特徴量ベクトルの距離関係や、特徴量ベクトルが付与されたラベルに応じて、特徴量ベクトルをバイナリ列に投影できる変換行列を求めることができるのであれば、任意の数式を用いることとしてもよい。また、情報変換装置10は、変換行列を求める際のパラメータ等をさらに設定してもよく、他の評価関数を用いてもよい。
(4)プログラム
ところで、実施例1に係る情報変換装置10は、ハードウェアを利用して各種の処理を実現する場合を説明した。しかし、実施例はこれに限定されるものではなく、あらかじめ用意されたプログラムを情報変換装置10が有するコンピュータで実行することによって実現するようにしてもよい。そこで、以下では、図12を用いて、実施例1に示した情報変換装置10と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図12は、情報変換プログラムを実行するコンピュータの一例を説明するための図である。
ところで、実施例1に係る情報変換装置10は、ハードウェアを利用して各種の処理を実現する場合を説明した。しかし、実施例はこれに限定されるものではなく、あらかじめ用意されたプログラムを情報変換装置10が有するコンピュータで実行することによって実現するようにしてもよい。そこで、以下では、図12を用いて、実施例1に示した情報変換装置10と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図12は、情報変換プログラムを実行するコンピュータの一例を説明するための図である。
図12に例示されたコンピュータ100は、ROM(Read Only Memory)110、HDD(Hard Disk Drive)120、RAM(Random Access Memory)130、CPU(Central Processing Unit)140がバス160で接続される。また、図12に例示されたコンピュータ100は、パケットを送受信するためのI/O(Input Output)150を有する。
HDD120は、学習データ記憶部11と同様のデータが格納された特徴量ベクトルテーブル121を記憶する。また、RAM130には、情報変換プログラム131があらかじめ保持される。CPU140が情報変換プログラム131をRAM130から読み出して実行することによって、図12に示す例では、情報変換プログラム131は、情報変換プロセス141として機能するようになる。なお、情報変換プロセス141は、図1に示したデータペア生成部12、粒子位置算出部13、変換行列生成部14と同様の機能を発揮する。
なお、本実施例で説明した情報変換プログラムは、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM(Compact Disc Read Only Memory)、MO(Magneto Optical Disc)、DVD(Digital Versatile Disc)などのコンピュータで読取可能な記録媒体に記録される。また、このプログラムは、コンピュータによって記録媒体から読み出されることによって実行することもできる。
1 検索システム
2 クライアント装置
10 情報変換装置
11 学習データ記憶部
12 データペア生成部
13 粒子位置算出部
14 変換行列生成部
20 情報検索装置
21 検索対象データベース記憶部
22 バイナリデータベース記憶部
23 バイナリ変換部
24 検索処理部
2 クライアント装置
10 情報変換装置
11 学習データ記憶部
12 データペア生成部
13 粒子位置算出部
14 変換行列生成部
20 情報検索装置
21 検索対象データベース記憶部
22 バイナリデータベース記憶部
23 バイナリ変換部
24 検索処理部
Claims (10)
- 多次元空間内における単位球面上に存在する粒子の位置ベクトルを特徴量ベクトル空間を分割する超平面の法線ベクトルとし、当該超平面を評価する所定の評価関数を前記単位球面上に粒子が存在する確率を示す確率密度関数として、前記単位球面上における複数の粒子の位置を前記確率密度関数の値に応じて移動させ、
前記移動させた各粒子の位置ベクトルを前記超平面の法線ベクトルとみなして前記特徴量ベクトルをバイナリ列に変換する
処理を情報変換装置が実行することを特徴とする情報変換方法。 - 前記単位球面上における複数の粒子の位置を移動させる処理は、
前記粒子の移動先候補を抽出し、
前記移動先候補に前記粒子を移動させた際の位置ベクトルを前記超平面の法線ベクトルとして算出した前記評価関数の値を、前記粒子の現在の位置ベクトルを前記超平面の法線ベクトルとして算出した前記評価関数の値で除算した値を算出し、
前記算出した値が0以上1以下となる乱数よりも大きい場合は、前記抽出した移動先候補に前記粒子を移動させ、前記算出した値が前記乱数以下となる場合は、前記粒子を移動させない処理であることを特徴とする請求項1に記載の情報変換方法。 - 前記粒子を前記単位球面上で複数の粒子の位置を移動させる処理を所定の回数繰り返し実行することを特徴とする請求項1または2に記載の情報変換方法。
- 同じラベルが付与された特徴量ベクトルのペアを正例ペアとして選択し、
異なるラベルが付与された特徴量ベクトルのペアを負例ペアとして選択し、
前記正例ペアに含まれる2つの特徴量ベクトルを前記超平面が異なる領域に分割する場合は、値が減少し、前記負例ペアに含まれる2つの特徴量ベクトルを前記超平面が異なる領域に分割する場合は、値が増加する評価関数を前記確率密度関数として、前記複数の粒子を前記単位球面上で移動させることを特徴とする請求項1または2に記載の情報変換方法。 - 複数の前記正例ペアと複数の前記負例ペアとを選択し、
前記正例ペアのうち、前記超平面によって分割された一方の領域に両方の特徴量ベクトルが含まれている正例ペアの数と、前記負例ペアのうち、前記超平面によって2つの特徴量ベクトルが異なる領域に分割されている負例ペアの数との和を指数とし、ネイピア数を底とする評価関数を前記確率密度関数とすることを特徴とする請求項4に記載の情報変換方法。 - 複数の前記正例ペアと複数の前記負例ペアとを選択し、
前記正例ペアのうち、前記超平面によって分割された一方の領域に両方の特徴量ベクトルが含まれている正例ペアの比率と、前記負例ペアのうち、前記超平面によって2つの特徴量ベクトルが異なる領域に分割されている負例ペアの比率との和を指数とし、ネイピア数を底とする評価関数を前記確率密度関数とすることを特徴とする請求項4に記載の情報変換方法。 - 複数の前記正例ペアと複数の前記負例ペアとを選択し、
前記正例ペアに含まれる一方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値と、他方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値とを加算して絶対値を取った値を全ての前記正例ペアについて加算し、
前記負例ペアに含まれる一方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値と、他方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値との差分の絶対値を取った値を全ての前記負例ペアについて加算し、
前記正例ペアについて加算した値と前記負例ペアについて加算した値との和を指数とし、ネイピア数を底とする評価関数を前記確率密度関数とすることを特徴とする請求項4に記載の情報変換方法。 - 複数の前記正例ペアと複数の前記負例ペアとを選択し、
前記正例ペアに含まれる一方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値と、他方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値とを加算して絶対値を取った値を全ての前記正例ペアについて加算し、
前記負例ペアに含まれる一方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値と、他方の特徴量ベクトルと前記超平面の法線ベクトルとの間の角度のコサイン値との差分の絶対値を取った値を全ての前記負例ペアについて加算し、
前記正例ペアについて加算した値を前記正例ペアの数で除算した値と、前記負例ペアについて加算した値を前記負例ペアの値で除算した値との和を指数とし、ネイピア数を底とする評価関数を前記確率密度関数とすることを特徴とする請求項4に記載の情報変換方法。 - 多次元空間内における単位球面上に存在する粒子の位置ベクトルを特徴量ベクトル空間を分割する超平面の法線ベクトルとし、当該超平面を評価する所定の評価関数を前記単位球面上に粒子が存在する確率を示す確率密度関数とみなして、前記単位球面上における複数の粒子を移動させた位置を算出する算出部と、
前記算出部が算出した各粒子の位置を示す位置ベクトルを前記超平面の法線ベクトルとみなして前記特徴量ベクトルをバイナリ列に変換する変換部と
を有することを特徴とする情報変換装置。 - コンピュータに、
多次元空間内における単位球面上に存在する粒子の位置ベクトルを特徴量ベクトル空間を分割する超平面の法線ベクトルとし、当該超平面を評価する所定の評価関数を前記単位球面上に粒子が存在する確率を示す確率密度関数として、前記単位球面上における複数の粒子の位置を、前記確率密度関数の値に応じて移動させ、
前記移動させた各粒子の位置ベクトルを前記超平面の法線ベクトルとみなして前記特徴量ベクトルをバイナリ列に変換する
処理を実行させることを特徴とする情報変換プログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/052418 WO2014118980A1 (ja) | 2013-02-01 | 2013-02-01 | 情報変換方法、情報変換装置および情報変換プログラム |
EP13874037.8A EP2953064B1 (en) | 2013-02-01 | 2013-02-01 | Information conversion method, information conversion device, and information conversion program |
JP2014559467A JP6004016B2 (ja) | 2013-02-01 | 2013-02-01 | 情報変換方法、情報変換装置および情報変換プログラム |
US14/814,014 US9704100B2 (en) | 2013-02-01 | 2015-07-30 | Authentication method, authentication device, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2013/052418 WO2014118980A1 (ja) | 2013-02-01 | 2013-02-01 | 情報変換方法、情報変換装置および情報変換プログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/814,014 Continuation US9704100B2 (en) | 2013-02-01 | 2015-07-30 | Authentication method, authentication device, and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014118980A1 true WO2014118980A1 (ja) | 2014-08-07 |
Family
ID=51261722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2013/052418 WO2014118980A1 (ja) | 2013-02-01 | 2013-02-01 | 情報変換方法、情報変換装置および情報変換プログラム |
Country Status (4)
Country | Link |
---|---|
US (1) | US9704100B2 (ja) |
EP (1) | EP2953064B1 (ja) |
JP (1) | JP6004016B2 (ja) |
WO (1) | WO2014118980A1 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016095594A (ja) * | 2014-11-12 | 2016-05-26 | 株式会社東芝 | 算出装置、方法及びプログラム |
CN106815589A (zh) * | 2015-12-01 | 2017-06-09 | 财团法人工业技术研究院 | 特征描述方法及应用其的特征描述器 |
JP2018042045A (ja) * | 2016-09-06 | 2018-03-15 | 日本電気株式会社 | 照合システムと方法とプログラム |
WO2020100289A1 (ja) * | 2018-11-16 | 2020-05-22 | 富士通株式会社 | 類似度計算装置、類似度計算方法および類似度計算プログラム |
JP2021068004A (ja) * | 2019-10-18 | 2021-04-30 | 国立研究開発法人産業技術総合研究所 | 識別補助データ生成技術及び識別情報抽出技術 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102289419B1 (ko) * | 2017-06-26 | 2021-08-12 | 한국전자통신연구원 | 바이오메트릭을 이용한 사용자의 인증 방법 및 장치 |
US10452958B2 (en) * | 2017-10-06 | 2019-10-22 | Mitsubishi Electric Research Laboratories, Inc. | System and method for image comparison based on hyperplanes similarity |
US10824452B2 (en) * | 2017-10-18 | 2020-11-03 | Bank Of America Corporation | Computer architecture for emulating adjustable correlithm object cores in a correlithm object processing system |
US10915337B2 (en) * | 2017-10-18 | 2021-02-09 | Bank Of America Corporation | Computer architecture for emulating correlithm object cores in a correlithm object processing system |
US10810026B2 (en) * | 2017-10-18 | 2020-10-20 | Bank Of America Corporation | Computer architecture for emulating drift-away string correlithm objects in a correlithm object processing system |
US10810028B2 (en) * | 2017-10-18 | 2020-10-20 | Bank Of America Corporation | Computer architecture for detecting members of correlithm object cores in a correlithm object processing system |
US10789081B2 (en) * | 2017-10-18 | 2020-09-29 | Bank Of America Corporation | Computer architecture for emulating drift-between string correlithm objects in a correlithm object processing system |
US10860349B2 (en) * | 2018-03-26 | 2020-12-08 | Bank Of America Corporation | Computer architecture for emulating a correlithm object processing system that uses portions of correlithm objects and portions of a mapping table in a distributed node network |
US11372823B2 (en) * | 2019-02-06 | 2022-06-28 | President And Fellows Of Harvard College | File management with log-structured merge bush |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006252333A (ja) | 2005-03-11 | 2006-09-21 | Nara Institute Of Science & Technology | データ処理方法、データ処理装置およびそのプログラム |
JP2007004458A (ja) | 2005-06-23 | 2007-01-11 | National Institute Of Information & Communication Technology | 二項関係抽出装置,二項関係抽出処理を用いた情報検索装置,二項関係抽出処理方法,二項関係抽出処理を用いた情報検索処理方法,二項関係抽出処理プログラム,および二項関係抽出処理を用いた情報検索処理プログラム |
JP2010061176A (ja) | 2006-11-22 | 2010-03-18 | Nec Corp | テキストマイニング装置、テキストマイニング方法、および、テキストマイニングプログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150169644A1 (en) * | 2013-01-03 | 2015-06-18 | Google Inc. | Shape-Gain Sketches for Fast Image Similarity Search |
-
2013
- 2013-02-01 EP EP13874037.8A patent/EP2953064B1/en active Active
- 2013-02-01 JP JP2014559467A patent/JP6004016B2/ja active Active
- 2013-02-01 WO PCT/JP2013/052418 patent/WO2014118980A1/ja active Application Filing
-
2015
- 2015-07-30 US US14/814,014 patent/US9704100B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006252333A (ja) | 2005-03-11 | 2006-09-21 | Nara Institute Of Science & Technology | データ処理方法、データ処理装置およびそのプログラム |
JP2007004458A (ja) | 2005-06-23 | 2007-01-11 | National Institute Of Information & Communication Technology | 二項関係抽出装置,二項関係抽出処理を用いた情報検索装置,二項関係抽出処理方法,二項関係抽出処理を用いた情報検索処理方法,二項関係抽出処理プログラム,および二項関係抽出処理を用いた情報検索処理プログラム |
JP2010061176A (ja) | 2006-11-22 | 2010-03-18 | Nec Corp | テキストマイニング装置、テキストマイニング方法、および、テキストマイニングプログラム |
Non-Patent Citations (8)
Title |
---|
KENGO TERASAWA ET AL.: "Spherical LSH for Approximate Nearest Neighbor Search on Unit Hypersphere, Algorithms and Data Structures", LECTURE NOTES IN COMPUTER SCIENCE, vol. 4619, 2007, pages 27 - 38, XP019097380 * |
KENJI NAGATA ET AL.: "On the behavior of average of acceptance rate for Metropolis algorithm", IEICE TECHNICAL REPORT, vol. 111, no. 275, 2 November 2011 (2011-11-02), pages 237 - 242, XP008177561 * |
M. DATAR; N. IMMORLICA; P. INDYK; V. S. MIRROKNI: "Locality-Sensitive Hashing Scheme Based on p-Stable Distributions", PROCEEDINGS OF THE TWENTIETH ANNUAL SYMPOSIUM ON COMPUTATIONAL GEOMETRY (SCG, 2004 |
M. NOROUZI; D. FLEET: "Minimal Loss hashing for compact binary codes", PROCEEDINGS OF THE 28TH INTERNATIONAL CONFERENCE ON MACHINE LEARNING, 2011 |
MAKIKO KONOSHIMA ET AL.: "Locality-Sensitive Hashing with Margin Based Feature Selection", ARXIV, pages 1 - 9, XP055214950, Retrieved from the Internet <URL:http://arxiv.org/pdf/1209.5833v2> * |
MAKIKO KONOSHIMA ET AL.: "Locality-Sensitive Hashing With Margin Based Feature Selection", IEICE TECHNICAL REPORT, vol. 112, no. 83, 12 June 2012 (2012-06-12), pages 41 - 47, XP055214947 * |
See also references of EP2953064A4 |
TERUO NAKATSUMA: "Nyumon Bayes", TOKEIGAKU, 10 June 2007 (2007-06-10), pages 162 - 175, XP008177563 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016095594A (ja) * | 2014-11-12 | 2016-05-26 | 株式会社東芝 | 算出装置、方法及びプログラム |
CN106815589A (zh) * | 2015-12-01 | 2017-06-09 | 财团法人工业技术研究院 | 特征描述方法及应用其的特征描述器 |
JP2018042045A (ja) * | 2016-09-06 | 2018-03-15 | 日本電気株式会社 | 照合システムと方法とプログラム |
WO2020100289A1 (ja) * | 2018-11-16 | 2020-05-22 | 富士通株式会社 | 類似度計算装置、類似度計算方法および類似度計算プログラム |
JPWO2020100289A1 (ja) * | 2018-11-16 | 2021-11-04 | 富士通株式会社 | 類似度計算装置、類似度計算方法および類似度計算プログラム |
JP2021068004A (ja) * | 2019-10-18 | 2021-04-30 | 国立研究開発法人産業技術総合研究所 | 識別補助データ生成技術及び識別情報抽出技術 |
JP7416400B2 (ja) | 2019-10-18 | 2024-01-17 | 国立研究開発法人産業技術総合研究所 | 識別補助データ生成技術及び識別情報抽出技術 |
Also Published As
Publication number | Publication date |
---|---|
EP2953064B1 (en) | 2022-07-06 |
JPWO2014118980A1 (ja) | 2017-01-26 |
EP2953064A4 (en) | 2017-05-10 |
JP6004016B2 (ja) | 2016-10-05 |
EP2953064A1 (en) | 2015-12-09 |
US20160034821A1 (en) | 2016-02-04 |
US9704100B2 (en) | 2017-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6004016B2 (ja) | 情報変換方法、情報変換装置および情報変換プログラム | |
US8676725B1 (en) | Method and system for entropy-based semantic hashing | |
JP5346279B2 (ja) | 検索による注釈付与 | |
US8515956B2 (en) | Method and system for clustering datasets | |
JP6004015B2 (ja) | 学習方法、情報処理装置および学習プログラム | |
JP2013206187A (ja) | 情報変換装置、情報検索装置、情報変換方法、情報検索方法、情報変換プログラム、情報検索プログラム | |
WO2013129580A1 (ja) | 近似最近傍探索装置、近似最近傍探索方法およびそのプログラム | |
WO2014109127A1 (ja) | インデックス生成装置及び方法並びに検索装置及び検索方法 | |
JP5862413B2 (ja) | 情報変換規則生成プログラム、情報変換規則生成装置および情報変換規則生成方法 | |
Jun | A forecasting model for technological trend using unsupervised learning | |
CN113656373A (zh) | 构建检索数据库的方法、装置、设备以及存储介质 | |
Sanchez et al. | Fast trajectory clustering using hashing methods | |
JP5518757B2 (ja) | 文書分類学習制御装置、文書分類装置およびコンピュータプログラム | |
US9792561B2 (en) | Learning method, information conversion device, and recording medium | |
US10121085B2 (en) | Information processing apparatus and method of searching for similar data | |
Wang et al. | Revealing the fog-of-war: A visualization-directed, uncertainty-aware approach for exploring high-dimensional data | |
TW201243627A (en) | Multi-label text categorization based on fuzzy similarity and k nearest neighbors | |
CN108764991B (zh) | 基于K-means算法的供应链信息分析方法 | |
JP2008299616A (ja) | 文書分類装置、文書分類方法、プログラム及び記録媒体 | |
Zhong et al. | A fast clonal selection algorithm for feature selection in hyperspectral imagery | |
Nguyen et al. | Topic model kernel classification with probabilistically reduced features | |
Ding et al. | Probabilistic model supported rank aggregation for the semantic concept detection in video | |
Bruno et al. | Asymmetric learning and dissimilarity spaces for content-based retrieval | |
Hidayati et al. | The Influence of User Profile and Post Metadata on the Popularity of Image-Based Social Media: A Data Perspective | |
Singh et al. | Database Knowledge Discovery Combining Cluster Analysis and Classification Using Data Mining |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13874037 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2014559467 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2013874037 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |