JP6607061B2 - 情報処理装置、データ比較方法、およびデータ比較プログラム - Google Patents

情報処理装置、データ比較方法、およびデータ比較プログラム Download PDF

Info

Publication number
JP6607061B2
JP6607061B2 JP2016020424A JP2016020424A JP6607061B2 JP 6607061 B2 JP6607061 B2 JP 6607061B2 JP 2016020424 A JP2016020424 A JP 2016020424A JP 2016020424 A JP2016020424 A JP 2016020424A JP 6607061 B2 JP6607061 B2 JP 6607061B2
Authority
JP
Japan
Prior art keywords
hyperplane
binary value
vector
feature vector
feature
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
JP2016020424A
Other languages
English (en)
Other versions
JP2017138866A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2016020424A priority Critical patent/JP6607061B2/ja
Priority to US15/381,576 priority patent/US10783152B2/en
Publication of JP2017138866A publication Critical patent/JP2017138866A/ja
Application granted granted Critical
Publication of JP6607061B2 publication Critical patent/JP6607061B2/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/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/245Classification techniques relating to the decision surface
    • G06F18/2451Classification techniques relating to the decision surface linear, e.g. hyperplane
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/14Vascular patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Human Computer Interaction (AREA)
  • Vascular Medicine (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、情報処理装置、データ比較方法、およびデータ比較プログラムに関する。
画像や音声、センサーデータなどの非構造データの利活用を考えた場合、それらのデータに対する類似検索は有用である。非構造データの類似検索は、例えば、類似する過去のデータから現状を把握したり、個人認証などの照合をしたりする際に用いられる。
非構造データの類似検索を活用できる技術として、手のひら静脈などの生体認証技術がある。例えば、銀行のATM(Automatic Teller Machine)で静脈認証を行うときは、ATMを操作している人物とキャッシュカードの持ち主が同じであることを照合する。このときは、ATMを操作している人物の静脈データとキャッシュカードの持ち主が過去に登録した静脈データとの1対1の照合が行われる。一方で、災害などでキャッシュカードを紛失した場合は、銀行窓口に来た人物と銀行が保持しているすべてのデータとの照合を行うこととなる。また、企業の入館時にセキュリティーゲートをくぐる際、カードではなく静脈などを用いた生態認証で社員を特定することが考えられる。その場合も、セキュリティーゲートをくぐる人物の静脈データと企業が保持するすべての静脈データとの照合が行われる。ただし、静脈データ同士の照合処理は重く、セキュリティーゲートをくぐる人物の静脈データを、登録されているすべての静脈データと照合したのでは時間が掛かりすぎる。
そこで、登録されているすべての静脈データから特徴ベクトルを抽出しておき、非構造データの類似検索によって、クエリ静脈データから抜き出した特徴ベクトルと類似するデータを複数抜き出すことが考えられる。抜き出された類似データは、その後照合処理に回される。このようにすることで、照合対象のデータ量を削減し、全体の処理時間を短縮できる。なお、全体の処理時間を短縮のためには、類似検索の処理時間が短いことが重要である。
静脈などのデータから特徴ベクトルを抽出すると、高次元ベクトルになることがほとんどである。高次元ベクトルに対する類似検索は効率よく行えず、その処理時間は検索対象の特徴ベクトルのレコード数に線形に依存することが知られている。このような類似検索を高速化する方法として、例えば、高次元空間を超平面で分割し、分割された領域に0,1を付与することで、特徴ベクトルをバイナリ列に変換するものがある。変換されたバイナリ列の間のハミング距離には、元の特徴ベクトル間の類似性が反映される。また、バイナリ列間のハミング距離計算は、特徴ベクトル間の類似性の計算より高速に行える。さらに、バイナリ列はデータ量として非常に小さくとることができるため、特徴ベクトルのバイナリ列をメモリ上に保持しておくことで、処理の高速化が図れる。
このような特徴ベクトルをバイナリ列に変換する技術では、すべての特徴ベクトルが事前にバイナリ列に変換され、計算機に保持される。そして計算機が、クエリとしての静脈データを含む検索要求を取得した際に、第一段階として、クエリをバイナリ列に変換後、バイナリ列間のハミング距離を用いた類似検索により近傍データを取得する。第二段階として、計算機が、近傍データを照合対象として、照合処理を行う。
ところで、超平面により空間を分割した場合、分割面付近にあるデータは、生成されるバイナリ値が、データの持つノイズや超平面の位置の設定のわずかな差に鋭敏に依存する。そのため、上記のような二段階の検索・照合処理では、第一段階で真に特定したい照合データを取りこぼしてしまう恐れがある。特定した照合したいデータを第一段階で取りこぼした場合、第二段階目の照合処理で適切な照合結果を得ることができない。この場合、例えば手のひら静脈認証であれば、誤って本人を拒否してしまうことになる。
真に特定したい照合データの取りこぼしを防ぐため、例えば、変換の際に超平面にマージンを設け、特徴ベクトルをバイナリに変換せずに3値{0,1,*}に変換する方法がある。この方法では、超平面のマージン内にある特徴ベクトルの値は「*」に変換され、「*」をワイルドカード(0,1の両方に一致する)と見なしてハミング距離が計算される。
特開2009−230169号公報 特開2010−287135号公報 特開2011−221689号公報
R. Shinde et al."Similarity Search and Locality Sensitive Hashing using Ternary Content Addressable Memories" SIGMOD '10 Proceedings of the 2010 ACM SIGMOD International Conference on Management of data, June 2010, Pages 375-386
上記のように、超平面にマージンを設ければ、超平面からマージンの範囲内の特徴ベクトルは、超平面で分割された両方の領域のいずれを指定したクエリデータともハミング距離が近くなる。その結果、真に特定したい照合データの取りこぼしを抑止できる。
しかし、超平面にマージンを設けると、照合対象のデータ量が増大し、処理負荷の増大を招く。例えば、3値を保持するメモリは汎用計算機には搭載されておらず、特徴ベクトルを3値{0,1,*}に変換した場合、汎用計算機では効率的なハミング距離の計算が困難である。そこで、ワイルドカードの使用に変えて、1つの特徴ベクトルに対応するバイナリ列のワイルドカードに相当する要素に「0」を割り振ったバイナリ列と「1」を割り振ったバイナリ列とを生成することが考えられる。例えばワイルドカードを用いたバイナリ列(1,*,1)は、(1,0,1)と(1,1,1)との2つのバイナリ列に分かれる。この方法では、ワイルドカードとなる要素がN個(Nは1以上の整数)あると、1つの特徴ベクトルに対し2N個のバイナリ列が生成されてしまう。その結果、類似検索における検索対象のデータ量が肥大化し、処理負荷が増大する。
1つの側面では、本件は、超平面にマージンを設けることによる類似判断の処理負荷の増加を抑止することを目的とする。
1つの案では、以下のような記憶部と演算部とを有する情報処理装置が提供される。
記憶部は、所定の次元数の空間の設けられた第1超平面、第1超平面の法線ベクトルの方向に、第1超平面に対して所定の間隔を開けて平行に設けられた第2超平面、および第1超平面の法線ベクトルの逆方向に、第1超平面に対して所定の間隔を開けて平行に設けられた第3超平面を示す超平面情報を記憶する。
演算部は、第1比較対象データの特徴を空間内の位置で示す第1特徴ベクトルを取得する。次に演算部は、第1特徴ベクトルで示される位置が第2超平面に対して法線ベクトルの方向にあるか否かにより第1バイナリ値を生成する。さらに演算部は、第1特徴ベクトルで示される位置が第3超平面に対して法線ベクトルの方向にあるか否かにより第2バイナリ値を生成する。また演算部は、第2比較対象データの特徴を空間内の位置で示す第2特徴ベクトルを取得する。次に演算部は、第2特徴ベクトルで示される位置が第1超平面に対して法線ベクトルの方向にあるか否かにより第3バイナリ値を生成する。そして演算部は、第1バイナリ値と第3バイナリ値との排他的論理和と、第2バイナリ値と第3バイナリ値との排他的論理和との乗算結果に基づいて、第1比較対象データと第2比較対象データとの類似度を判断する。
1態様によれば、超平面にマージンを設けることによる類似判断の処理負荷の増加が抑止される。
第1の実施の形態に係る情報処理装置の機能構成例を示す図である。 第2の実施の形態のシステム構成例を示す図である。 第2の実施の形態に用いるサーバのハードウェアの一構成例を示す図である。 バイナリ値への変換を幾何学的に表す図である。 ハミング距離の計算例を示す図である。 超平面で分割された領域と各領域に属するベクトルのバイナリ値とを示す図である。 非類似度の計算例を示す図である。 クエリに応じた特徴ベクトルが指す位置から距離「0」の範囲を示す図である。 非類似度の計算例を示す図である。 非類似度の計算例を示す図である。 超平面の位置の決定例を示す図である。 手のひら静脈認証を実施するためのサーバの構成例を示すブロック図である。 境界超平面記憶部のデータ構造の一例を示す図である。 平行超平面記憶部のデータ構造の一例を示す図である。 手のひら静脈DBのデータ構造の一例を示す図である。 超平面生成処理の手順の一例を示すフローチャートである。 データ登録要求に応じたデータ登録処理の一例を示す図である。 データ登録処理の手順の一例を示すフローチャートである。 検索・照合処理の一例を示す図である。 検索・照合処理の手順の一例を示すフローチャートである。
以下、本実施の形態について図面を参照して説明する。なお各実施の形態は、矛盾のない範囲で複数の実施の形態を組み合わせて実施することができる。
〔第1の実施の形態〕
まず、第1の実施の形態について説明する。第1の実施の形態は、検索対象のレコードに対し2種類のバイナリ列を保持し、クエリとして入力されたデータに対して別の種類のバイナリ列を生成し、それらバイナリ列間の演算によって、マージンを持たせた超平面を用いた類似判断を可能とするものである。
図1は、第1の実施の形態に係る情報処理装置の機能構成例を示す図である。情報処理装置10は、記憶部11と演算部12とを有する。
記憶部11は、所定の次元数の空間の設けられた第1超平面HC、第2超平面HR、および第3超平面HLを示す超平面情報11aを記憶する。第1超平面HCには、法線ベクトル8が設定されている。第2超平面HRは、第1超平面HCの法線ベクトル8の方向に、第1超平面HCに対して所定の間隔を開けて平行に設けられている。第3超平面HLは、第1超平面HCの法線ベクトル8の逆方向に、第1超平面HCに対して所定の間隔を開けて平行に設けられている。
演算部12は、第1比較対象データ1の特徴を空間内の位置で示す第1特徴ベクトル2を取得する(ステップS1)。例えば演算部12は、第1比較対象データ1を複数の指標に基づいて解析し、解析指標ごとの数値を算出する。そして演算部12は、算出された複数の数値を要素として有する第1特徴ベクトル2を生成する。
次に演算部12は、第2超平面HRと第3超平面HLとに基づいて第1特徴ベクトルをバイナリ値に変換する処理(バイナリ変換)を行う(ステップS2)。例えば演算部12は、第1特徴ベクトル2で示される位置が第2超平面HRに対して法線ベクトル8の方向にあるか否かにより第1バイナリ値3を生成する。第1特徴ベクトル2で示される位置が第2超平面HRに対して法線ベクトル8の方向にあれば、第1バイナリ値3は「1」となる。逆に第1特徴ベクトル2で示される位置が第2超平面HRに対して法線ベクトル8の逆方向にあれば、第1バイナリ値3は「0」である。同様にして、演算部12は、第1特徴ベクトル2で示される位置が第3超平面HLに対して法線ベクトル8の方向にあるか否かにより第2バイナリ値4を生成する。第1特徴ベクトル2で示される位置が第3超平面HLに対して法線ベクトル8の方向にあれば、第2バイナリ値4は「1」となる。逆に第1特徴ベクトル2で示される位置が第3超平面HLに対して法線ベクトル8の逆方向にあれば、第2バイナリ値4は「0」である。
また、演算部12は、第2比較対象データ5の特徴を前間内の位置で示す第2特徴ベクトル6を取得する(ステップS3)。例えば演算部12は、第2比較対象データ5を複数の指標に基づいて解析し、解析指標ごとの数値を算出する。そして演算部12は、算出された複数の数値を要素として有する第2特徴ベクトル6を生成する。第2比較対象データ5は、例えば予め登録された第1比較対象データ1を検索対象として、第2比較対象データ5と類似するものを検索するためのクエリである。
次に演算部12は、第2超平面HRと第3超平面HLとに基づいて第1特徴ベクトルをバイナリ値に変換する処理(バイナリ変換)を行う(ステップS4)。例えば演算部12は、第2特徴ベクトル6で示される位置が第1超平面HCに対して法線ベクトル8の方向にあるか否かにより第3バイナリ値7を生成する。具体的な生成方法は、第1バイナリ値3を生成する場合と同様である。第2特徴ベクトル6で示される位置が第1超平面HCに対して法線ベクトル8の方向にあれば、第3バイナリ値7は「1」となる。逆に第2特徴ベクトル6で示される位置が第1超平面HCに対して法線ベクトル8の逆方向にあれば、第3バイナリ値7は「0」である。
なお、上記の説明における第1特徴ベクトル2または第2特徴ベクトル6で示される位置とは、所定の点(例えば空間の座標原点)から特徴ベクトル内の各要素の値分だけ各座標軸方向に移動した位置である。また第1超平面HCで区分けされた領域のうち、第1特徴ベクトル2または第2特徴ベクトル6で示される位置を含む領域を、第1特徴ベクトル2または第2特徴ベクトル6が属する領域と呼ぶこととする。
そして、演算部12は、第1バイナリ値3と第3バイナリ値7との排他的論理和と、第2バイナリ値4と第3バイナリ値7との排他的論理和との乗算結果に基づいて、第1比較対象データ1と第2比較対象データ5との類似度を判断する。第1バイナリ値3を「bR」、第2バイナリ値4を「bL」、第3バイナリ値7を「bC」とした場合、「(bR xor bC)×(bL xor bC)」という演算が行われる(xorは、排他的論理和を示す)。この演算結果は、第1比較対象データ1と第2比較対象データ5との距離と捉えることができる。距離が短い(値が小さい)ほど、第1比較対象データ1と第2比較対象データ5とが類似していることを示す。
このような処理により、第1超平面HCで分割された2つの領域にマージンを設け、第1特徴ベクトル2と第2特徴ベクトル6との属する領域の同一性の有無によって、第1比較対象データ1と第2比較対象データ5との類似度を適切に判断することができる。
例えば、第2特徴ベクトル6が図1に示す点q1の位置を示しているとき、第3バイナリ値7は「0」である。この場合、第1バイナリ値3と第2バイナリ値4との少なくとも一方の値が「0」であれば、距離の演算結果は「0」となる。すなわち、第1特徴ベクトル2の示す位置が、図1に示す点a1、点a2、点a3のいずれかであれば、距離は「0」となる。すなわち、点a3の位置は、第1超平面HCで分割された2つの領域のうち、第2特徴ベクトル6が示す位置(点q1)と属する領域が異なるが、第1超平面HCのマージンの範囲内にあるため、属する領域が同じであるとみなされる。
また、第2特徴ベクトル6が図1に示す点q2の位置を示しているとき、第3バイナリ値7は「1」である。この場合、第1バイナリ値3と第2バイナリ値4との少なくとも一方の値が「1」であれば、距離の演算結果は「0」となる。すなわち、第1特徴ベクトル2の示す位置が、図1に示す点a2、点a3、点a4のいずれかであれば、距離は「0」となる。すなわち、点a1の位置は、第1超平面HCで分割された2つの領域のうち、第2特徴ベクトル6が示す位置(点q2)と属する領域が異なるが、第1超平面HCのマージンの範囲内にあるため、属する領域が同じであるとみなされる。
このようなマージンを考慮した類似判断を行うことで、第1超平面HCの近傍において、実際には距離が近い位置を示す特徴ベクトル間を、距離が離れていると誤って判断することを抑止できる。しかも第1の実施の形態では、検索対象となる第1比較対象データ1に対して、空間を分割する境界となる第1超平面HC1つに対して、2つのバイナリ値(2ビット)を設定するだけで済む。そのため、多数の第1超平面HCを設けた場合でも、1つの第1比較対象データ1に対して第1超平面HCの数分のバイナリ値を含むバイナリ列を2つ設定すればよい。そのため、保持しておくバイナリ値の量が過大になることが抑止される。その結果、超平面にマージンを設けることによる類似判断の処理負荷の増加が抑止される。
なお、記憶部11には、多数の第1超平面HCを記憶させておくことができる。その場合、記憶部11は、第1超平面HC、第2超平面HR、および第3超平面HLを含む複数の超平面セットを記憶する。第1超平面HCが複数ある場合、演算部12は、複数の超平面セットそれぞれに対して、第1バイナリ値、第2バイナリ値、第3バイナリ値の生成を行う。また演算部12は、複数の超平面セットそれぞれに対して、第1バイナリ値と第3バイナリ値との排他的論理和と、第2バイナリ値と第3バイナリ値との排他的論理和との乗算を行う。そして演算部12は、複数の超平面セットそれぞれの乗算結果の合計に基づいて、第1比較対象データ1と第2比較対象データ5との類似度を判断する。例えば合計値が小さい程、類似度が高いと判断する。このようにして、空間内を多数の第1超平面HCで領域分割した場合であっても、バイナリ値を用いた演算による効率的な類似判断が行われる。
また、記憶部11に、検索対象とする複数の第1比較対象データ1それぞれから生成した複数の第1特徴ベクトル2を記憶しておくこともできる。複数の第1特徴ベクトル2がある場合、演算部12は、第1超平面HCの位置の最適化を図ることができる。例えば演算部12は、複数の第1特徴ベクトルの平均ベクトルで示される位置を通る第1超平面HCを生成する。さらに演算部12は、生成した第1超平面HCに応じた第2超平面HRおよび第3超平面HLを生成する。そして演算部12は、第1超平面HC、第2超平面HR、および第3超平面HLを示す超平面情報11aを記憶部11に格納する。第1超平面HCが、複数の第1特徴ベクトルの平均ベクトルで示される位置を通るようにすることで、第1超平面HCを境界とする2つの領域に、ほぼ同数の第1特徴ベクトルが属するようにすることができる。
これにより、類似度の判定の信頼性を向上させることができる。すなわち、第1超平面HCによって区分けされた領域の一方に、第1特徴ベクトルがほとんど存在しない場合、大多数の第1特徴ベクトルは同じ領域に属し、距離「0」となる。これでは、第1超平面HCを用いても、処理負荷が増えるだけで、類似度の適切な判定に寄与することができない。それに対して、第1超平面HCを境界とする2つの領域に、ほぼ同数の第1特徴ベクトルが属するようにすることで、第1超平面HCがあることによって、特徴ベクトル間の距離が「1」となる場合と「0」となる場合とが同じ頻度で発生する。その結果、適切は類似度判定を行うことができるようになる。
なお、演算部12は、例えば情報処理装置10が有するプロセッサにより実現することができる。また、記憶部11は、例えば情報処理装置10が有するメモリまたはストレージ装置により実現することができる。
〔第2の実施の形態〕
次に第2の実施の形態について説明する。第2の実施の形態は、手のひら静脈を用いてオフィスへの入室時の本人確認を行うシステムにおいて、真に特定したい照合データの取りこぼしを防止し、かつ本人確認を高速に行えるようにするものである。
図2は、第2の実施の形態のシステム構成例を示す図である。オフィス30の入口付近には、手のひら静脈を読み取る静脈スキャナ31が設置されている。静脈スキャナ31は、ネットワーク20を介してサーバ100に接続されている。静脈スキャナ31は、ドア32に近づいた人の手のひらがかざされると、その手のひらの静脈パターンを読み取る。そして静脈スキャナ31は、静脈パターンを示す静脈データを、ネットワーク20を介してサーバ100に送信する。
サーバ100は、静脈スキャナ31から送られた静脈データと、予め登録された従業員の静脈データとを照合する。照合の結果、いずれかの従業員の静脈データと一致した場合、サーバ100は、ネットワーク20経由でドア32のロック機構を制御し、ロックを解除する。
図3は、第2の実施の形態に用いるサーバのハードウェアの一構成例を示す図である。サーバ100は、プロセッサ101によって装置全体が制御されている。プロセッサ101には、バス109を介してメモリ102と複数の周辺機器が接続されている。プロセッサ101は、マルチプロセッサであってもよい。プロセッサ101は、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)、またはDSP(Digital Signal Processor)である。プロセッサ101がプログラムを実行することで実現する機能の少なくとも一部を、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)などの電子回路で実現してもよい。
メモリ102は、サーバ100の主記憶装置として使用される。メモリ102には、プロセッサ101に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、メモリ102には、プロセッサ101による処理に必要な各種データが格納される。メモリ102としては、例えばRAM(Random Access Memory)などの揮発性の半導体記憶装置が使用される。
バス109に接続されている周辺機器としては、ストレージ装置103、グラフィック処理装置104、入力インタフェース105、光学ドライブ装置106、機器接続インタフェース107およびネットワークインタフェース108がある。
ストレージ装置103は、内蔵した記憶媒体に対して、電気的または磁気的にデータの書き込みおよび読み出しを行う。ストレージ装置103は、コンピュータの補助記憶装置として使用される。ストレージ装置103には、OSのプログラム、アプリケーションプログラム、および各種データが格納される。なお、ストレージ装置103としては、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)を使用することができる。
グラフィック処理装置104には、モニタ21が接続されている。グラフィック処理装置104は、プロセッサ101からの命令に従って、画像をモニタ21の画面に表示させる。モニタ21としては、CRT(Cathode Ray Tube)を用いた表示装置や液晶表示装置などがある。
入力インタフェース105には、キーボード22とマウス23とが接続されている。入力インタフェース105は、キーボード22やマウス23から送られてくる信号をプロセッサ101に送信する。なお、マウス23は、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル、タブレット、タッチパッド、トラックボールなどがある。
光学ドライブ装置106は、レーザ光などを利用して、光ディスク24に記録されたデータの読み取りを行う。光ディスク24は、光の反射によって読み取り可能なようにデータが記録された可搬型の記録媒体である。光ディスク24には、DVD(Digital Versatile Disc)、DVD−RAM、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)などがある。
機器接続インタフェース107は、サーバ100に周辺機器を接続するための通信インタフェースである。例えば機器接続インタフェース107には、メモリ装置25、メモリリーダライタ26、静脈スキャナ28を接続することができる。メモリ装置25は、機器接続インタフェース107との通信機能を搭載した記録媒体である。メモリリーダライタ26は、メモリカード27へのデータの書き込み、またはメモリカード27からのデータの読み出しを行う装置である。メモリカード27は、カード型の記録媒体である。静脈スキャナ28は、人の手のひらの静脈パターンを読み取る装置である。
ネットワークインタフェース108は、ネットワーク20に接続されている。ネットワークインタフェース108は、ネットワーク20を介して、他のコンピュータまたは通信機器との間でデータの送受信を行う。
以上のようなハードウェア構成によって、第2の実施の形態の処理機能を実現することができる。なお、第1の実施の形態に示した情報処理装置10も、図3に示したサーバ100と同様のハードウェアにより実現することができる。
サーバ100は、例えばコンピュータ読み取り可能な記録媒体に記録されたプログラムを実行することにより、第2の実施の形態の処理機能を実現する。サーバ100に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、サーバ100に実行させるプログラムをストレージ装置103に格納しておくことができる。プロセッサ101は、ストレージ装置103内のプログラムの少なくとも一部をメモリ102にロードし、プログラムを実行する。またサーバ100に実行させるプログラムを、光ディスク24、メモリ装置25、メモリカード27などの可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばプロセッサ101からの制御により、ストレージ装置103にインストールされた後、実行可能となる。またプロセッサ101が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
以下、サーバ100における、静脈データの特徴を示す特徴ベクトルを用いた、類似検索について詳細に説明する。
<特徴ベクトルのバイナリ変換>
まず、超平面を用いた、特徴ベクトルのバイナリ列への変換について説明する。静脈データの特徴を示す特徴ベクトルは、例えば浮動小数点数の固定長列として表される。列の長さ(数値の個数)が次元数である。
2つの特徴ベクトル間の類似性は、類似度または非類似度で表すことができる。類似度とは似ているものほど値が大きくなる指標の事を指し、非類似度とは似ているものほど値が小さくなる指標を指す。例えば2つの特徴ベクトル間の類似度として、コサイン類似度を用いることができる。2つの特徴ベクトルが「(2.0,4.1,6.4),(24.2,14.3,96.6)」であるとき、これらの特徴ベクトル間のコサイン類似度は、以下の式で表される。
Figure 0006607061
第2の実施の形態では、このような類似度の計算よりも効率的に類似度を計算するため、特徴ベクトルをバイナリ列へ変換する。ここで、特徴ベクトルをベクトルx、超平面の法線ベクトルをベクトルn、オフセットをd(dは0以上の実数)とする。このとき、超平面の方程式は「ベクトルx・ベクトルn+d=0」である。
特徴ベクトルをバイナリ列に変換する場合、超平面を境界として、特徴ベクトルの次元数を有する多次元空間が分割される。そして、特徴ベクトルが、超平面で分割された2つの領域のうちのどちらに属するのかにより、その特徴ベクトルにバイナリ値が付与される。バイナリ値を付与することは、次式を計算することと同じである。
Figure 0006607061
図4は、バイナリ値への変換を幾何学的に表す図である。図4に示すように、超平面40の法線ベクトルの方向に属する特徴ベクトルには、バイナリ値「1」が付与される。逆に、超平面40の法線ベクトルの方向の反対側に属する特徴ベクトルには、バイナリ値「0」が付与される。
このような操作をB個(Bは1以上の整数)の超平面分行うことで、長さがBのバイナリ列を生成できる。生成されたバイナリ列をベクトルbと表記する。
明確にするために、ベクトルxから生成したバイナリ列「ベクトルb(ベクトルx)」のi番目のビットを、「ベクトルb(ベクトルx)i」と書くと、バイナリ列は以下の式で表される。
Figure 0006607061
i番目の超平面の法線ベクトルをベクトルn(i)、オフセットをd(i)とすると、バイナリ列のi番目のビットの値は以下の式で表される。
Figure 0006607061
このようにして、特徴ベクトルをバイナリ列に変換することができる。バイナリ列同士であれば、式(1)に示したコサイン類似度よりも容易に類似度または非類似度を計算できる。
<非類似度の計算方法>
バイナリ列間の非類似度は、例えばハミング距離で求めることができる。2つのバイナリ列(ベクトルc1とベクトルc2)の間のハミング距離は、バイナリ列内のビット同士の排他的論理和(xor)と、バイナリ列中の1の数を数えるポピュレーションカウントとで計算される。ポピュレーションカウントを「popc()」としたとき、ベクトルc1とベクトルc2とのハミング距離「Hamm()」は、以下の式で表される。
Figure 0006607061
図5は、ハミング距離の計算例を示す図である。図5には、ベクトル(0,0,1,1,1,0,1,1)とベクトル(0,1,1,0,1,1,1,0)とのハミング距離の計算例が示されている。2つのベクトルのビットごとの排他的論理和をとると、2番目、4番目、6番目、8番目の要素の値が「1」となり、それ以外は「0」となる。値の「1」の要素数が4個なので、ポピュレーションカウントは「4」となる。すなわち、ハミング距離は「4」である。
特徴ベクトルのバイナリ列への変換と組み合わせて、特徴ベクトル間の非類似度「Sim()」が以下のように定義される。
Figure 0006607061
このようにして、2つの特徴ベクトル間の非類似度を計算できる。以上が特徴ベクトル間の非類似度を計算する基本技術となる。第2の実施の形態では、超平面にマージンを設けるため、特徴ベクトルのバイナリ変換方法と非類似度の計算方法とについて、工夫が施される。
<マージンを考慮したバイナリ変換>
第2の実施の形態では、空間を分割する超平面(境界超平面)に平行な2つの超平面(平行超平面)が設けられる。ここで、三枚の平行な超平面HL,HC,HRを考える。これらの方程式はそれぞれ以下のようになる。
Figure 0006607061
-,d+は、共に0より大きい実数である。それぞれの超平面から生成されるバイナリへの変換関数をbL,bC,bRとすると、変換関数は以下の式で表される。
Figure 0006607061
Figure 0006607061
Figure 0006607061
空間内を平行な3つの超平面で分けると、空間が4つの領域に分割される。
図6は、超平面で分割された領域と各領域に属するベクトルのバイナリ値とを示す図である。図6には、3つの超平面HL,HC,HRを境界とする領域ごとに点a1,a2,a3,a4が与えられている。図6において、超平面HL,HC,HRは、右側が表(法線ベクトル方法)であり、左側が裏である。点a1,a2,a3,a4は、予めサーバ100内のデータベースに、検索対象のレコードとして登録しておく、社員の静脈データの特徴ベクトルで指し示される点である。検索対象のレコードとして登録しておく特徴ベクトルには、対応する点の位置と超平面HL、HRとの位置関係に基づいてバイナリ値が付与される。すなわち超平面HL、HRの表側にある点にはバイナリ値「1」が付与され、裏側にある点にはバイナリ値「0」が付与される。
例えば、点a1は、超平面HL,HRそれぞれの左(裏側)にあるため、バイナリ値bL,bRとして、共に「0」が付与される。また、点a2は、超平面HLの右(表側)かつ超平面HRの左(裏側)にあるため、バイナリ値bLとして「1」が付与され、バイナリ値bRとして「0」が付与される。
さらにHCの両側の点q1,q2を考える。点q1,q2は、入室しようとする人からクエリとして取得した静脈データの特徴ベクトルで指し示される点である。クエリの特徴ベクトルは、特徴ベクトルで示される位置の点と超平面HCとの位置関係に基づいてバイナリ値が付与される。すなわち超平面HCの表側にある点に応じたバイナリ値は「1」であり、裏側にある点に応じたバイナリ値は「0」である。例えば点q1は超平面HCの左(裏側)にあるため、点q1を示す特徴ベクトルには、バイナリ値bCとして「0」が付与される。また点q2は超平面HCの右(表側)にあるため、点q2を示す特徴ベクトルには、バイナリ値bCとして「1」が付与される。
なお図6の例では点q1の位置はHLの左にあるが、HCより左であればどの位置であっても付与されるバイナリ値に違いはない。同様に、点q2の位置は超平面HRの右にあるが、HCより右であればどの位置であっても付与されるバイナリ値に違いはない。
図6では、1組の超平面(1つの境界超平面と2つの平行超平面)に応じたバイナリ値を示しているが、境界超平面の数分のバイナリ値が特徴ベクトルに付与される。その結果、特徴ベクトルに対応するバイナリ列が生成される。
<マージンを考慮した非類似度の計算>
ここで、クエリに応じた特徴ベクトルxと、データベースに保持されている特徴ベクトルyとの非類似度を、以下のように定義する。
Figure 0006607061
「+」を丸で囲んだ記号は、排他的論理和を示す。
図7は、非類似度の計算例を示す図である。図7には、クエリに応じた特徴ベクトルxが指し示す位置と、データベースに保持されている特徴ベクトルyが指し示す位置との組み合わせに応じた、非類似度の計算結果が示されている。図7の例では、特徴ベクトルxが点q1の位置を示している場合、特徴ベクトルyが点a4の位置を示していれば、非類似度は「1」となり、特徴ベクトルyが点a1〜a3の位置を示していれば、非類似度は「0」である。特徴ベクトルxが点q2を指している場合、特徴ベクトルyが点a1の位置を示していれば、非類似度は「1」となり、特徴ベクトルyが点a2〜a4の位置を示していれば、非類似度は「0」である。
図8は、クエリに応じた特徴ベクトルが指す位置から距離「0」の範囲を示す図である。非類似度MXORを距離の一種だと考えれば、q1,q2から距離が「0」で到達可能な領域は、図8の太線の矢印で示す範囲となる。超平面HLと超平面HRの間がマージン幅である。マージンを設けない場合、点q1,q2それぞれから距離「0」の範囲は、共に超平面HCまでである。
図8では、1つの境界超平面と、その境界超平面に平行な2つの平行超平面について説明したが、境界超平面は複数設けることができる。この場合、境界超平面ごとに、対応する平行超平面が2つずつ生成される。
ここで、1つの境界超平面と2つの平行超平面との3個の平行な超平面を1つの組として考え、B組(Bは、1以上の整数)の超平面セットを与える。この場合、特徴ベクトルには、超平面セットごとのバイナリ値が付与される。B組の超平面セットがあれば、特徴ベクトルには、B個のバイナリ値が付与されることとなる。特徴ベクトルと、その特徴ベクトルに付与されたバイナリ値の並びであるバイナリ列に置き換えることが、特徴ベクトルのバイナリ変換である。
特徴ベクトルをバイナリ変換するための変換関数は、以下のように、ベクトルbL,ベクトルbC,ベクトルbRの3種類が与えられる。
Figure 0006607061
Figure 0006607061
Figure 0006607061
非類似度MXOR(q,a)を用い、マージン付きの非類似度MSim(x,y)が以下の式で定義できる。
Figure 0006607061
マージン付きの非類似度をバイナリ列に関する演算で表すと、以下のように定義できる。
Figure 0006607061
ここで、ある社員の静脈データから予め生成された特徴ベクトルを変更したバイナリ列として、「ベクトルbL(r)=(0,0,1,1,1,0,1,1)」と「ベクトルbR(r)=(0,0,1,0,0,0,0,1)」があるものとする。また、オフィス30に入室しようとする者の静脈データから、クエリとして生成された特徴ベクトルを変換したバイナリ列が「ベクトルbC(q)=(0,1,1,0,1,1,1,0)」であるものとする。このとき、MSim(q,r)の計算は、図9に示すようになる。
図9は、非類似度の計算例を示す図である。図9に示すように、まず、ベクトルbL(r)とベクトルbC(q)とのビットごとの排他的論理和が計算される。同様に、ベクトルbR(r)とベクトルbC(q)とのビットごとの排他的論理和が計算される。そして、2つの排他的論理和演算の結果の、ビットごとの論理積が計算される。論理積の計算結果のうち、値が「1」の要素の数が、予め登録されている社員の静脈データと、入室しようとする者の静脈データとのバイナリ列による非類似度となる。
入室を希望する者の静脈データと、予め登録されている社員の静脈データとのバイナリ列による非類似度が所定値より小さければ、入室を希望する者の静脈データと予め登録されている社員の静脈データとの直接比較が行われる。そして、静脈データの直接比較による類似度に基づいて、入室を希望する者が社員本人か否かが判定される。
図10は、非類似度の計算例を示す図である。図10の例では、社員の手のひら静脈データD1〜D4がレコードとして、予めサーバ100に登録されているものとする。また、3組の超平面セットが設けられている。第1の超平面セットは、超平面HL1,HC1,HR1で構成される。第2の超平面セットは、超平面HL2,HC2,HR2で構成される。第3の超平面セットは、超平面HL3,HC3,HR3で構成される。
図10には、手のひら静脈データD1〜D4それぞれに基づいて生成された特徴ベクトルの多次元空間での位置を、網かかけの丸い図形、または黒丸で示している。図10の例では、手のひら静脈データD1の特徴ベクトルをバイナリ変換すると、バイナリ列L(1,1,1)とバイナリ列R(1,0,1)が生成される。手のひら静脈データD2の特徴ベクトルをバイナリ変換すると、バイナリ列L(1,0,1)とバイナリ列R(0,0,1)が生成される。手のひら静脈データD3の特徴ベクトルをバイナリ変換すると、バイナリ列L(1,1,1)とバイナリ列R(0,0,1)が生成される。手のひら静脈データD4の特徴ベクトルをバイナリ変換すると、バイナリ列L(1,1,1)とバイナリ列R(0,0,0)が生成される。
このとき、クエリQ1〜Q4として手のひら静脈データが入力された場合を考える。図10には、クエリQ1〜Q4それぞれに基づいて生成された特徴ベクトルの多次元空間での位置を、白丸で示している。図10の例では、クエリQ1の特徴ベクトルをバイナリ変換すると、バイナリ列C(1,0,1)が生成される。クエリQ2の特徴ベクトルをバイナリ変換すると、バイナリ列C(0,0,1)が生成される。クエリQ3の特徴ベクトルをバイナリ変換すると、バイナリ列C(1,1,1)が生成される。クエリQ4の特徴ベクトルをバイナリ変換すると、バイナリ列C(0,1,0)が生成される。
このとき各クエリQ1〜Q4と、各レコードとの非類似度を、式(16)に従って計算すると、図10の下段に示す表のようになる。例えばクエリQ1の特徴ベクトルと、レコードとして登録されている手のひら静脈データD4の特徴ベクトルとの間には、境界超平面HC1と境界超平面HC2とが存在する。すなわちクエリQ1の特徴ベクトルと手のひら静脈データD4の特徴ベクトルとは、2つの境界超平面で区分けされた別々の領域に属する。しかし、手のひら静脈データD4の特徴ベクトルが示す位置は、境界超平面HC1と境界超平面HC2とのマージンの範囲内に存在する。そのため、クエリQ1の特徴ベクトルと手のひら静脈データD4の特徴ベクトルとの非類似度は「0」となる。
このように、レコードとして登録されている手のひら静脈の特徴ベクトルが、境界超平面のマージンの範囲内にあれば、その境界超平面の両側の特徴ベクトルとの距離を示すベクトル値が「0」となり、非類似度が低く計算される。その結果、特徴ベクトルが境界超平面の近傍に位置するレコードを、漏らさずに照合対象として抽出できる。
<超平面の位置の決定>
上記のような特徴ベクトルを変換して得られるバイナリ列の各値は、超平面の位置に依存する。特徴ベクトルを適切に分類するためには、超平面を、特徴ベクトルが多数存在している領域を分割するように設定するのが適切である。そこで、第2の実施の形態では、複数の社員の静脈データに応じた特徴ベクトルが登録されている場合、登録済みの特徴ベクトルに応じて超平面の位置を決定する。
図11は、超平面の位置の決定例を示す図である。超平面の位置は、例えばオフセットdの値によって決定される。
超平面HCは特徴ベクトルが分布している領域を分割する。この際、分割した双方の領域にほぼ同数の特徴ベクトルが配置されるように超平面を配置するのが適切である。しかし、データベースに社員の静脈データに応じた特徴ベクトルが格納されていない場合、どこに特徴ベクトルが分布するか分からずない。そのため、超平面HCを配置すべき場所が分からない。そこで、データベースに社員の静脈データに応じた特徴ベクトルが未格納の場合、例えばサーバ100は、法線ベクトルとオフセットをランダムに生成する。
データベースにデータが格納されている場合、特徴ベクトルの分布が分かる。特徴ベクトルの平均ベクトルμは分布の特徴の1つである。超平面HCが平均ベクトルμを含めば、分割した双方の領域にほぼ同数の特徴ベクトルがあることが見込まれる。超平面HCの法線ベクトルn(i)が与えられたとき、超平面が平均ベクトルμを含むには、オフセットを以下の式で調整すればよい。
(i)=−平均ベクトルμ・法線ベクトルn(i)
超平面HCの法線ベクトルを多変量標準正規分布から標本抽出した後、オフセットを前記の式で定めれば、適切な超平面の配置が得られる。オフセットdを更新することで、図11に示すように、超平面HCの表側の特徴ベクトル数と超平面HCの裏側の特徴ベクトル数とが均等になる位置に、超平面HCが配置される。
<サーバ100による個人認証処理の詳細>
以上のような特徴ベクトル間の非類似度判定を用いることで、手のひら静脈を用いた信頼性の高い個人認証を、効率的に実施することができる。
図12は、手のひら静脈認証を実施するためのサーバの構成例を示すブロック図である。サーバ100は、境界超平面記憶部110、平行超平面記憶部120、手のひら静脈データベース(DB)130、超平面生成部141、登録情報特徴抽出部142、登録情報バイナリ変換部143、クエリ特徴抽出部151、クエリバイナリ変換部152、類似検索部153、および静脈照合部154を有している。
境界超平面記憶部110は、特徴ベクトルが配置される多次元空間を2つの領域に分けるときの境界となる超平面(境界超平面)を記憶する。平行超平面記憶部120は、境界超平面に平行な超平面(平行超平面)を記憶する。手のひら静脈DB130は、社員の手のひら静脈に関する情報を記憶する。境界超平面記憶部110、平行超平面記憶部120、および手のひら静脈データベース(DB)130は、メモリ102またはストレージ装置103の記憶領域の一部に構築される。
超平面生成部141は、超平面を生成する。例えば超平面生成部141は、ユーザからの入力に応じて境界超平面を生成し、境界超平面記憶部110に格納する。また超平面生成部141は、平行超平面生成指示が入力されると、境界超平面記憶部110に格納されている境界超平面それぞれに対応する平行超平面を生成する。超平面生成部141は、生成した平行超平面を、平行超平面記憶部120に格納する。
登録情報特徴抽出部142は、静脈スキャナ28から入力された手のひら静脈データを解析し、手のひら静脈パターンの特徴を表す特徴ベクトルを生成する。登録情報特徴抽出部142は、生成した特徴ベクトルを、生成元の手のひら静脈データに関連付けて、手のひら静脈DB130に格納する。また登録情報特徴抽出部142は、生成した特徴ベクトルを、登録情報バイナリ変換部143に送信する。
登録情報バイナリ変換部143は、平行超平面記憶部120に格納されている平行超平面を参照し、平行超平面に基づいて特徴ベクトルをバイナリ列に変換する。登録情報バイナリ変換部143は、生成したバイナリ列を、生成元の特徴ベクトルに関連付けて、手のひら静脈DB130に格納する。
クエリ特徴抽出部151は、静脈スキャナ31から入力された手のひら静脈データを解析し、手のひら静脈パターンの特徴を表す特徴ベクトルを生成する。クエリ特徴抽出部151は、生成した特徴ベクトルを、登録情報バイナリ変換部143に送信する。
クエリバイナリ変換部152は、境界超平面記憶部110に格納されている境界超平面を参照し、境界超平面に基づいて特徴ベクトルをバイナリ列に変換する。クエリバイナリ変換部152は、生成したバイナリ列を類似検索部153に送信する。
類似検索部153は、取得したバイナリ列と類似するバイナリ列を有する手のひら静脈を、手のひら静脈DB130から検索する。類似検索部153は、検索によってヒットした手のひら静脈に含まれる手のひら静脈データを手のひら静脈DB130から抽出し、静脈照合部154に送信する。
静脈照合部154は、手のひら静脈DB130から抽出された手のひら静脈データそれぞれと、静脈スキャナ31から入力された手のひら静脈データとを比較し、同一人物の手のひら静脈データか否かを判断する。同一人物の手のひら静脈データが存在した場合、静脈照合部154は、手のひら静脈による個人認証を成功させ、オフィス30のドア32を解錠する。
このような機能により、サーバ100は、手のひら静脈を用いた個人認証を実施することができる。なお、図12に示した各要素間を接続する線は通信経路の一部を示すものであり、図示した通信経路以外の通信経路も設定可能である。また、図12に示した各要素の機能は、例えば、その要素に対応するプログラムモジュールをコンピュータに実行させることで実現することができる。
次に、図13〜図15を参照して、境界超平面記憶部110、平行超平面記憶部120、手のひら静脈DB130に格納されるデータについて詳細に説明する。
図13は、境界超平面記憶部のデータ構造の一例を示す図である。例えば境界超平面記憶部110は、境界超平面を規定するデータを含む境界超平面データファイル111を有している。境界超平面データファイル111には、境界超平面を規定するレコードが、例えばCSV(Comma-Separated Values)形式で設定される。図13の例では、境界超平面ごとに、超平面番号、法線ベクトル、およびオフセットを有するレコードが登録されている。
図14は、平行超平面記憶部のデータ構造の一例を示す図である。例えば平行超平面記憶部120は、平行超平面を規定するデータを含む平行超平面データファイル121を有している。平行超平面データファイル121には、平行超平面を規定するレコードが、例えばCSV(Comma-Separated Values)形式で設定される。図14の例では、平行超平面の生成元となる境界超平面ごとに、超平面番号、法線ベクトル、オフセットd、オフセットd+、およびオフセットd-を有するレコードが登録されている。オフセットd+により、境界超平面の法線方向に存在する、その境界超平面と平行な平行超平面(超平面HR)が定義される。オフセットd-により、境界超平面の法線方向の逆方向に存在する、その境界超平面と平行な平行超平面(超平面HL)が定義される。およびオフセットd+およびオフセットd-は、2つの平行超平面それぞれの、生成元の境界超平面との距離を示している。
図15は、手のひら静脈DBのデータ構造の一例を示す図である。手のひら静脈DB130は、例えば、手のひら静脈管理テーブル131を有している。手のひら静脈管理テーブル131には、個人ID、手のひら静脈データ、特徴ベクトル、バイナリ列L、およびバイナリ列Rの欄が設けられている。
個人IDの欄には、オフィス30への入室を許可する社員の識別子(個人ID)が設定される。手のひら静脈データの欄には、社員の手のひら静脈データが設定される。特徴ベクトルの欄には、手のひら静脈データを解析して得られた、静脈パターンの特徴を示すベクトル(特徴ベクトル)が設定される。バイナリ列Lの欄には、超平面HLの集合に基づいて特徴ベクトルをバイナリ変換することで得られたバイナリ列(バイナリ列L)が設定される。バイナリ列Rの欄には、超平面HRの集合に基づいて特徴ベクトルをバイナリ変換することで得られたバイナリ列(バイナリ列R)が設定される。
以上のような構成のサーバ100により、手のひら静脈を用いた効率的な本人確認が行われる。本人確認を実施するために、サーバ100では、まず、超平面生成処理が行われる。
図16は、超平面生成処理の手順の一例を示すフローチャートである。以下、図16に示す処理をステップ番号に沿って説明する。なお、図16に示す処理は、超平面生成部141が、システム運用者から超平面生成要求を受け取ったときに開始される。
[ステップS101]超平面生成部141は、システム運用者から超平面生成要求を受け取ると、超平面番号i=1,・・・,Bそれぞれの超平面HCに対し、ステップS102〜S109の処理を実行する。
[ステップS102]超平面生成部141は、多変量標準正規分布から標本抽出した値を、i番目の超平面HCの法線ベクトル(n(i))とする。
[ステップS103]超平面生成部141は、特徴ベクトルが手のひら静脈DB130に格納されているか否かを判断する。特徴ベクトルが格納されていれば、処理がステップS105に進められる。特徴ベクトルが格納されていなければ、処理がステップS104に進められる。
[ステップS104]超平面生成部141は、特徴ベクトルが格納されていない場合、[0,1]上の一様分布から標本抽出した値を、オフセットd(i)とする。その後、処理がステップS107に進められる。
[ステップS105]超平面生成部141は、特徴ベクトルが格納されている場合、それら特徴ベクトルの平均を算出し、平均ベクトルμとする。
[ステップS106]超平面生成部141は、法線ベクトルn(i)と平均ベクトルμの内積の値にマイナスを掛けた値を、オフセットd(i)とする。つまり「d(i)=−ベクトルμ・ベクトルn(i)」が計算される。
[ステップS107]超平面生成部141は、i番目の超平面HR(法線方向側の平行超平面)の法線ベクトルとして、i番目超平面HCの法線ベクトルn(i)と同じものを設定する。そして超平面生成部141は、[0,1]上の一様分布から標本抽出した値を、オフセットd+ (i)とする。
[ステップS108]超平面生成部141は、i番目の超平面HL(法線方向の反対側の平行超平面)の法線ベクトルとして、i番目超平面HCの法線ベクトルn(i)と同じものを設定する。そして超平面生成部141は、[0,1]上の一様分布から標本抽出した値を、オフセットd- (i)とする。
[ステップS109]超平面生成部141は、法線ベクトルn(i)とオフセットd(i)とにより、超平面HCを生成する。また超平面生成部141は、法線ベクトルn(i)、オフセットd(i)、およびオフセットd+ (i)により、超平面HRを生成する。さらに超平面生成部141は、法線ベクトルn(i)、オフセットd(i)、およびオフセットd- (i)により、超平面HLを生成する。
[ステップS110]超平面生成部141は、超平面番号i=1,・・・,Bに対応するB組の超平面セットの生成が完了すると、処理をステップS111に進める。
[ステップS111]超平面生成部141は、生成した超平面を格納する。例えば超平面生成部141は、B個の超平面HCそれぞれを示すレコードを含む境界超平面データファイル111を生成する。超平面HCを示すレコードには、超平面番号、法線ベクトルn(i)、およびオフセットd(i)が含まれている。超平面生成部141は、生成した境界超平面データファイル111を、境界超平面記憶部110に格納する。
また超平面生成部141は、B組の超平面セット(超平面HC,超平面HR,超平面HL)を示すレコードを含む平行超平面データファイル121を生成する。各超平面セットを示すレコードには、超平面番号、法線ベクトルn(i)、オフセットd(i)、オフセットd+ (i)、およびオフセットd- (i)を含む。法線ベクトルn(i)、オフセットd(i)、およびオフセットd+ (i)により、超平面HRが表されている。法線ベクトルn(i)、オフセットd(i)、およびオフセットd- (i)により、超平面HLが表されている。超平面生成部141は、生成した平行超平面データファイル121を、平行超平面記憶部120に格納する。
以上のようにして生成された超平面に基づいて、手のひら静脈データの特徴を表す特徴ベクトルのバイナリ変換が行われる。バイナリ変換は、例えば社員の手のひら静脈データの登録の要求(データ登録要求)の入力時と、オフィス30に入室しようとする者の手のひら静脈データをクエリとした、検索および照合処理の要求(検索・照合要求)の入力時とに実行される。
図17は、データ登録要求に応じたデータ登録処理の一例を示す図である。サーバ100は、データ登録要求を取得すると、例えば静脈スキャナ28から手のひら静脈データ33を取得し、手のひら静脈DB130に格納すると共に、手のひら静脈データ33を登録情報特徴抽出部142に入力する。登録情報特徴抽出部142は、取得した手のひら静脈データ33に示される静脈パターンの特徴を解析し、特徴ベクトルを生成する。登録情報特徴抽出部142は、生成した特徴ベクトルを、手のひら静脈データ33に関連付けて手のひら静脈DB130に登録する。また登録情報特徴抽出部142は、生成した特徴ベクトルを登録情報バイナリ変換部143に送信する。
登録情報バイナリ変換部143は、平行超平面記憶部120を参照し、取得した特徴ベクトルを2つのバイナリ列(バイナリ列LとバイナリR)に変換する。登録情報バイナリ変換部143は、変換によって生成されたバイナリ列を、生成元の特徴ベクトルに関連付けて、手のひら静脈DB130に登録する。
次に、データ登録処理の手順について詳細に説明する。
図18は、データ登録処理の手順の一例を示すフローチャートである。以下、図18に示す処理をステップ番号に沿って説明する。
[ステップS201]サーバ100は、社員の手のひら静脈データを、手のひら静脈スキャナ28で読み取らせ、手のひら静脈スキャナ28から手のひら静脈データを取得する。取得した手のひら静脈データは、手のひら静脈DB130に格納されると共に、登録情報特徴抽出部142に送られる。
[ステップS202]登録情報特徴抽出部142は、手のひら静脈データから静脈のつながりなどを表す特徴量を計算する。そして登録情報特徴抽出部142は、複数の指標によって計算した複数の特徴量それぞれを要素とする特徴ベクトルxを生成する。
[ステップS203]登録情報特徴抽出部142は、生成した特徴ベクトルxを、生成元の手のひら静脈データに関連付けて手のひら静脈DB130に格納する。また登録情報特徴抽出部142は、生成した特徴ベクトルxを、登録情報バイナリ変換部143に送信する。
[ステップS204]登録情報バイナリ変換部143は、特徴ベクトルxを式(12)の入力として、B個の超平面HLによるバイナリ値への変換を行い、長さがBであるバイナリ列Lを生成する。
[ステップS205]登録情報バイナリ変換部143は、特徴ベクトルxを式(14)の入力として、B個の超平面HRによるバイナリ値への変換を行い、長さがBであるバイナリ列Rを生成する。
[ステップS206]登録情報バイナリ変換部143は、生成したバイナリ列Lとバイナリ列Rとを、生成元の特徴ベクトルxに関連付けて、手のひら静脈DB130に格納する。
このようにして、社員の手のひら静脈データに基づく手のひら静脈が、手のひら静脈DB130に登録される。その後、オフィス30への入室を希望する者が、静脈スキャナ31に手をかざすと、検索・照合処理が行われる。
図19は、検索・照合処理の一例を示す図である。静脈スキャナ31で読み取られた手のひら静脈データ34はサーバ100に送られ、クエリ特徴抽出部151と静脈照合部154とに入力される。クエリ特徴抽出部151は、手のひら静脈データから特徴ベクトルを生成し、クエリバイナリ変換部152に送信する。クエリバイナリ変換部152は、境界超平面記憶部110に格納されている超平面に基づいて、取得した特徴ベクトルをバイナリ列Cに変換する。バイナリ変換で生成されたバイナリ列Cは、類似検索部153に送信される。
類似検索部153は、手のひら静脈DB130から、バイナリ列Cとの非類似度が所定値以下となるレコードを検索する。検索でヒットしたレコードは、類似検索結果として静脈照合部154に送信される。静脈照合部154は、類似検索結果に含まれる手のひら静脈データと、静脈スキャナ31で読み取られた手のひら静脈データ34とを照合する。そして、静脈照合部154は、手のひら静脈データ34と同じ人物から読み取られた手のひら静脈データを含むレコードを、照合結果として出力する。
次に、検索・照合処理の手順について詳細に説明する。
図20は、検索・照合処理の手順の一例を示すフローチャートである。以下、図20に示す処理をステップ番号に沿って説明する。
[ステップS301]サーバ100は、オフィス30に入室しようとする者が静脈スキャナ31にかざすと、静脈スキャナ31に手のひら静脈データを読み取らせる。そしてサーバ100は、静脈スキャナ31か手のひら静脈データを取得し、クエリ特徴抽出部151と静脈照合部154とに入力する。
[ステップS302]クエリ特徴抽出部151は、手のひら静脈データから静脈のつながりなどを表す特徴量を計算する。そしてクエリ特徴抽出部151は、複数の指標によって計算した複数の特徴量それぞれを要素とする特徴ベクトルxを生成する。クエリ特徴抽出部151は、生成した特徴ベクトルを、クエリバイナリ変換部152に送信する。
[ステップS303]クエリバイナリ変換部152は、取得した特徴ベクトルを式(13)の入力として、B個の超平面HCによるバイナリ値への変換を行い、長さがBであるバイナリ列Cを生成する。クエリバイナリ変換部152は、生成したバイナリ列Cを、類似検索部153に送信する。
[ステップS304]類似検索部153は、変数iに1を設定する。
[ステップS305]類似検索部153は、手のひら静脈DB130内のi番目のレコード内のバイナリ列Lとバイナリ列Rとを取得する。
[ステップS306]類似検索部153は、バイナリ列C、バイナリ列L、バイナリ列Rを引数として、非類似度MSimBを計算する。具体的には、類似検索部153は、クエリのバイナリ列CをMSimBの第一引数とし、i番目のレコードのバイナリ列LをMSimBの第二引数とし、i番目のレコードのバイナリ列RをMSimBの第三引数として、MSimBを計算する。類似検索部153は、MSimBの計算結果として得られる評価値を、クエリとi番目のレコードとの非類似度とする。
[ステップS307]類似検索部153は、手のひら静脈DB130内に未処理のレコードがあるか否かを判断する。未処理のレコードがあれば、処理がステップS308に進められる。未処理のレコードがなければ、処理がステップS309に進められる。
[ステップS308]類似検索部153は、iに1を加算し、処理をステップS305に進める。
[ステップS309]類似検索部153は、非類似度MSimBの小さい順に、手のひら静脈DB130内のレコードを並べ替える。
[ステップS310]類似検索部153は、上位k件(kは1以上の整数)のレコードそれぞれの個人IDと手のひら静脈データとを類似検索結果として、静脈照合部154に出力する。kの値はシステム運用者が事前に与えられているものとする。
[ステップS311]静脈照合部154は、静脈スキャナ31から取得した手のひら静脈データと類似検索結果のk件の手のひら静脈データとを照合する。そして静脈照合部154は、類似検索結果に含まれる手のひら静脈データのうち、静脈スキャナ31から取得した手のひら静脈データと照合率がもっとも高い手のひら静脈データの個人IDを、照合結果として出力する。このとき静脈照合部154は、例えば照合による一致度を示す数値を照合結果に含めてもよい。また静脈照合部154は、一致度を示す数値が所定の閾値以上の場合、ドア32への解錠信号を出力してもよい。
このようにして、手のひら静脈を用いた個人認証を、効率的に実施することができる。すなわち、第2の実施の形態によれば、汎用の計算機に搭載されているメモリを用いて、ワイルドカードと同様の効果を発揮できるため、適用できる資源の範囲が広がる。ワイルドカードを用いることができるため、取りこぼしを軽減できる。
すなわち、第2の実施の形態では、検索対象のレコードに2種類のバイナリ列を保持しておき、クエリとして入力された手のひら静脈データをバイナリ列に変換し、レコード内のバイナリ列との間の比較により、非類似度を計算することができる。バイナリ列同士の論理演算は、ビット演算とポピュレーションカウントを用い、汎用計算機において高速に実行することができる。その結果、大量のレコードの中から、クエリとして入力された手のひら静脈データに類似するレコードを高速に抽出することが可能となる。
なお、第2の実施の形態では、照合対象のデータが手のひら静脈データの例を示したが、第2の実施の形態の技術は、特徴ベクトルで特徴を表すことができる様々なデータの照合に適用できる。例えば、指紋データ、網膜データなどの生体データ、その他の様々な非構造データの照合に適用可能である。
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。さらに、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
1 第1比較対象データ
2 第1特徴ベクトル
3 第1バイナリ値
4 第2バイナリ値
5 第2比較対象データ
6 第2特徴ベクトル
7 第3バイナリ値
8 法線ベクトル
10 情報処理装置
11 記憶部
11a 超平面情報
12 演算部
C 第1超平面
R 第2超平面
L 第3超平面

Claims (5)

  1. 所定の次元数の空間の設けられた第1超平面、前記第1超平面の法線ベクトルの方向に、前記第1超平面に対して所定の間隔を開けて平行に設けられた第2超平面、および前記第1超平面の法線ベクトルの逆方向に、前記第1超平面に対して所定の間隔を開けて平行に設けられた第3超平面を示す超平面情報を記憶する記憶部と、
    第1比較対象データの特徴を前記空間内の位置で示す第1特徴ベクトルを取得し、前記第1特徴ベクトルで示される位置が前記第2超平面に対して前記法線ベクトルの方向にあるか否かにより第1バイナリ値を生成し、前記第1特徴ベクトルで示される位置が前記第3超平面に対して前記法線ベクトルの方向にあるか否かにより第2バイナリ値を生成し、第2比較対象データの特徴を前記空間内の位置で示す第2特徴ベクトルを取得し、前記第2特徴ベクトルで示される位置が前記第1超平面に対して前記法線ベクトルの方向にあるか否かにより第3バイナリ値を生成し、前記第1バイナリ値と前記第3バイナリ値との排他的論理和と、前記第2バイナリ値と前記第3バイナリ値との排他的論理和との乗算結果に基づいて、前記第1比較対象データと前記第2比較対象データとの類似度を判断する演算部と、
    を有する情報処理装置。
  2. 前記記憶部は、前記第1超平面、前記第2超平面、および前記第3超平面を含む複数の超平面セットを記憶しており、
    前記演算部は、前記複数の超平面セットそれぞれに対して、前記第1バイナリ値、前記第2バイナリ値、前記第3バイナリ値の生成、および前記第1バイナリ値と前記第3バイナリ値との排他的論理和と、前記第2バイナリ値と前記第3バイナリ値との排他的論理和との乗算を行い、前記複数の超平面セットそれぞれの乗算結果の合計に基づいて、前記第1比較対象データと前記第2比較対象データとの類似度を判断する、
    請求項1記載の情報処理装置。
  3. 前記記憶部は、さらに、前記第1特徴ベクトルを複数記憶しており、
    前記演算部は、さらに、前記第1特徴ベクトルの平均ベクトルで示される位置を通る前記第1超平面を生成し、生成した前記第1超平面に応じた前記第2超平面および前記第3超平面を生成し、前記第1超平面、前記第2超平面および第3超平面を示す前記超平面情報を前記記憶部に格納する、
    ことを特徴とする請求項1または2に記載の情報処理装置。
  4. コンピュータが、
    所定の次元数の空間の設けられた第1超平面、前記第1超平面の法線ベクトルの方向に、前記第1超平面に対して所定の間隔を開けて平行に設けられた第2超平面、および前記第1超平面の法線ベクトルの逆方向に、前記第1超平面に対して所定の間隔を開けて平行に設けられた第3超平面を示す超平面情報を記憶部に格納し、
    第1比較対象データの特徴を前記空間内の位置で示す第1特徴ベクトルを取得し、
    前記第1特徴ベクトルで示される位置が前記第2超平面に対して前記法線ベクトルの方向にあるか否かにより第1バイナリ値を生成し、
    前記第1特徴ベクトルで示される位置が前記第3超平面に対して前記法線ベクトルの方向にあるか否かにより第2バイナリ値を生成し、第2比較対象データの特徴を前記空間内の位置で示す第2特徴ベクトルを取得し、
    前記第2特徴ベクトルで示される位置が前記第1超平面に対して前記法線ベクトルの方向にあるか否かにより第3バイナリ値を生成し、前記第1バイナリ値と前記第3バイナリ値との排他的論理和と、前記第2バイナリ値と前記第3バイナリ値との排他的論理和との乗算結果に基づいて、前記第1比較対象データと前記第2比較対象データとの類似度を判断する、
    データ比較方法。
  5. コンピュータに、
    所定の次元数の空間の設けられた第1超平面、前記第1超平面の法線ベクトルの方向に、前記第1超平面に対して所定の間隔を開けて平行に設けられた第2超平面、および前記第1超平面の法線ベクトルの逆方向に、前記第1超平面に対して所定の間隔を開けて平行に設けられた第3超平面を示す超平面情報を記憶部に格納し、
    第1比較対象データの特徴を前記空間内の位置で示す第1特徴ベクトルを取得し、
    前記第1特徴ベクトルで示される位置が前記第2超平面に対して前記法線ベクトルの方向にあるか否かにより第1バイナリ値を生成し、
    前記第1特徴ベクトルで示される位置が前記第3超平面に対して前記法線ベクトルの方向にあるか否かにより第2バイナリ値を生成し、第2比較対象データの特徴を前記空間内の位置で示す第2特徴ベクトルを取得し、
    前記第2特徴ベクトルで示される位置が前記第1超平面に対して前記法線ベクトルの方向にあるか否かにより第3バイナリ値を生成し、前記第1バイナリ値と前記第3バイナリ値との排他的論理和と、前記第2バイナリ値と前記第3バイナリ値との排他的論理和との乗算結果に基づいて、前記第1比較対象データと前記第2比較対象データとの類似度を判断する、
    処理を実行させるデータ比較プログラム。
JP2016020424A 2016-02-05 2016-02-05 情報処理装置、データ比較方法、およびデータ比較プログラム Active JP6607061B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016020424A JP6607061B2 (ja) 2016-02-05 2016-02-05 情報処理装置、データ比較方法、およびデータ比較プログラム
US15/381,576 US10783152B2 (en) 2016-02-05 2016-12-16 Information processing apparatus and data comparison method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016020424A JP6607061B2 (ja) 2016-02-05 2016-02-05 情報処理装置、データ比較方法、およびデータ比較プログラム

Publications (2)

Publication Number Publication Date
JP2017138866A JP2017138866A (ja) 2017-08-10
JP6607061B2 true JP6607061B2 (ja) 2019-11-20

Family

ID=59496437

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016020424A Active JP6607061B2 (ja) 2016-02-05 2016-02-05 情報処理装置、データ比較方法、およびデータ比較プログラム

Country Status (2)

Country Link
US (1) US10783152B2 (ja)
JP (1) JP6607061B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190207946A1 (en) * 2016-12-20 2019-07-04 Google Inc. Conditional provision of access by interactive assistant modules
US11436417B2 (en) 2017-05-15 2022-09-06 Google Llc Providing access to user-controlled resources by automated assistants
US10127227B1 (en) 2017-05-15 2018-11-13 Google Llc Providing access to user-controlled resources by automated assistants
US10452958B2 (en) 2017-10-06 2019-10-22 Mitsubishi Electric Research Laboratories, Inc. System and method for image comparison based on hyperplanes similarity
US11023473B2 (en) * 2018-02-09 2021-06-01 Microsoft Technology Licensing, Llc Recurrent binary embedding for information retrieval
WO2020032927A1 (en) 2018-08-07 2020-02-13 Google Llc Assembling and evaluating automated assistant responses for privacy concerns
WO2020100289A1 (ja) * 2018-11-16 2020-05-22 富士通株式会社 類似度計算装置、類似度計算方法および類似度計算プログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002278761A (ja) 2001-03-16 2002-09-27 Hitachi Ltd 否定項を含む相関ルール抽出方法およびシステム
US7356187B2 (en) * 2004-04-12 2008-04-08 Clairvoyance Corporation Method and apparatus for adjusting the model threshold of a support vector machine for text classification and filtering
JP4509860B2 (ja) * 2005-05-25 2010-07-21 株式会社東芝 データ分割装置、データ分割方法およびプログラム
JP5183483B2 (ja) 2005-12-09 2013-04-17 フラウンホファー‐ゲゼルシャフト・ツア・フェルデルング・デア・アンゲヴァンテン・フォルシュング・エー・ファウ データ列の自動比較に用いられる方法およびその装置
US8037120B2 (en) * 2006-12-05 2011-10-11 Analog Devices, Inc. System and method for an efficient comparison operation of multi-bit vectors in a digital logic circuit
US20080195322A1 (en) * 2007-02-12 2008-08-14 The Board Of Regents Of The University Of Texas System Quantification of the Effects of Perturbations on Biological Samples
US8589397B2 (en) * 2007-09-28 2013-11-19 Nec Corporation Data classification method and data classification device
JP2009230169A (ja) 2008-03-19 2009-10-08 Mitsubishi Electric Corp パラメータ決定支援装置
JP2010287135A (ja) 2009-06-12 2010-12-24 Usho Mo データ分類装置、データ分類方法およびその方法をコンピュータに実行させるプログラム
JP2011221689A (ja) 2010-04-07 2011-11-04 Sony Corp 学習装置、学習方法、認識装置、認識方法、およびプログラム
JP2013206187A (ja) 2012-03-28 2013-10-07 Fujitsu Ltd 情報変換装置、情報検索装置、情報変換方法、情報検索方法、情報変換プログラム、情報検索プログラム
JP5862413B2 (ja) 2012-03-28 2016-02-16 富士通株式会社 情報変換規則生成プログラム、情報変換規則生成装置および情報変換規則生成方法
JP2013254339A (ja) * 2012-06-06 2013-12-19 Toyota Motor Corp 言語関係判別装置、言語関係判別プログラム、言語関係判別方法

Also Published As

Publication number Publication date
JP2017138866A (ja) 2017-08-10
US10783152B2 (en) 2020-09-22
US20170228376A1 (en) 2017-08-10

Similar Documents

Publication Publication Date Title
JP6607061B2 (ja) 情報処理装置、データ比較方法、およびデータ比較プログラム
US9720936B2 (en) Biometric matching engine
TWI738011B (zh) 用戶身分確定方法、裝置及電子設備
Bologa et al. Big data and specific analysis methods for insurance fraud detection.
JP6393230B2 (ja) オブジェクト検出方法及び画像検索システム
CN110851461A (zh) 非关系型数据库的审计方法、装置和存储介质
Branitskiy et al. Applying machine learning and parallel data processing for attack detection in IoT
Satish et al. Big data processing with harnessing hadoop-MapReduce for optimizing analytical workloads
Ergezer et al. Time series classification with feature covariance matrices
JP6565661B2 (ja) 画像処理システム、画像類似判定方法および画像類似判定プログラム
US10121085B2 (en) Information processing apparatus and method of searching for similar data
S More et al. Random forest classifier approach for imbalanced big data classification for smart city application domains
Eren et al. Semi-supervised classification of malware families under extreme class imbalance via hierarchical non-negative matrix factorization with automatic model selection
Valliyammai et al. Distributed and scalable Sybil identification based on nearest neighbour approximation using big data analysis techniques
Yeh et al. An efficient content-based time series retrieval system
JP7492088B2 (ja) 重み付き知識移転装置、方法、及びシステム
CN111611251B (zh) 一种数据处理系统
Maruthi Padmaja et al. Class imbalance and its effect on PCA preprocessing
Abinaya et al. Effective Feature Selection For High Dimensional Data using Fast Algorithm
Alharbi et al. Demographic group prediction based on smart device user recognition gestures
Fernández-Saúco et al. Computing anomaly score threshold with autoencoders pipeline
Leghari et al. Online signature verification using deep learning based aggregated convolutional feature representation
Kumar et al. An efficient space partitioning tree approach for indexing and retrieving fingerprint databases
Goldstein Anomaly detection
Medvedev et al. Enhancing Keystroke Biometric Authentication Using Deep Learning Techniques

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181011

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190918

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190924

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191007

R150 Certificate of patent or registration of utility model

Ref document number: 6607061

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150