JPWO2013136528A1 - 評価サーバ、評価プログラム及び評価方法 - Google Patents

評価サーバ、評価プログラム及び評価方法 Download PDF

Info

Publication number
JPWO2013136528A1
JPWO2013136528A1 JP2014504607A JP2014504607A JPWO2013136528A1 JP WO2013136528 A1 JPWO2013136528 A1 JP WO2013136528A1 JP 2014504607 A JP2014504607 A JP 2014504607A JP 2014504607 A JP2014504607 A JP 2014504607A JP WO2013136528 A1 JPWO2013136528 A1 JP WO2013136528A1
Authority
JP
Japan
Prior art keywords
data
collation
calculated
time
database
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.)
Granted
Application number
JP2014504607A
Other languages
English (en)
Other versions
JP5954407B2 (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
Publication of JPWO2013136528A1 publication Critical patent/JPWO2013136528A1/ja
Application granted granted Critical
Publication of JP5954407B2 publication Critical patent/JP5954407B2/ja
Expired - Fee Related 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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • 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
    • 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/2453Query optimisation
    • G06F16/24532Query optimisation of parallel queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/95Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/96Management of image or video recognition tasks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Collating Specific Patterns (AREA)

Abstract

本願の開示する評価サーバ(100)は、一つの態様において、生成部(132)と、算出部(133)と、配分部(135)とを備える。生成部(132)は、データベース内のデータから、そのデータと照合される照合データを生成する。算出部(133)は、生成された照合データとデータベース内の複数のデータのそれぞれとの照合にかかる照合時間を、データベース内のデータごとに算出する。配分部(135)は、算出された照合時間に基づいて、データベース内の複数のデータをグループに配分する。

Description

本発明は、評価サーバ、評価プログラム及び評価方法に関する。
従来、入力データとデータベース内に蓄積されたデータとを照合する技術が存在する。例えば、ユーザの指先から取得される指紋データを用いてユーザを認証する指紋認証においては、ユーザの指先から取得された指紋データと、データベースに予め登録された指紋データとを照合することで、認証結果が出力される。
また、例えば、ネットワークに接続された複数の記憶装置を集中管理する分散データベースにおいて、データの参照に要した時間を記憶装置ごとに予め記録しておき、その参照時間に応じてデータの格納場所を割り当てる技術が存在する。
また、例えば、データベースを検索するための検索条件をSQL(Structured Query Language)検索文として生成するシステムが存在する。このシステムにおいて、生成したSQL検索文を用いて検索を実行し、検索に要した時間をSQL検索文ごとに表示する技術が存在する。
特開平4−15839号公報 特開2001−282799号公報
ところで、上記の従来技術には、認証に長い時間がかかってしまうという問題がある。例えば、上記の指紋認証においては、数百万人分、あるいは数千万人分といった規模の指紋データがデータベースに登録されることがある。このため、ユーザが指紋認証を利用する場合には、指先から読み取った指紋データと、登録済みの全ての指紋データとを一つ一つ照合することとなるので、認証に長い時間がかかってしまう。
また、例えば、データベースに登録される指紋データを複数の記憶装置に分散させ、複数の計算サーバに照合する処理を並列で実行させることが考えられる。しかしながら、この場合、認証結果を出力するためには、並列で実行させた全ての照合処理が完了するまで待つこととなるため、一つでも照合処理の完了が遅延してしまうと、認証に長い時間がかかってしまう。
なお、この問題は、上記の指紋認証に限らず、例えば、声紋や手のひらの静脈パターン、眼球の虹彩など、指紋以外の生体情報を用いる生体認証を行う場合にも同様に生じる問題である。さらに、この問題は、生体認証に限られるものでもなく、例えば、入力データとデータベース内のデータとが照合される場合に広く生じ得る問題である。
開示の技術は、上記に鑑みてなされたものであって、認証にかかる時間を短縮することができる評価サーバ、評価プログラム及び評価方法を提供することを目的とする。
本願の開示する技術は、一つの態様において、生成部と、算出部と、配分部とを備える。生成部は、データベース内のデータから、そのデータと照合される照合データを生成する。算出部は、生成された照合データとデータベース内の複数のデータのそれぞれとの照合にかかる照合時間を、データベース内のデータごとに算出する。配分部は、算出された照合時間に基づいて、データベース内の複数のデータをグループに配分する。
本願の開示する技術の一つの態様によれば、認証にかかる時間を短縮することができるという効果を奏する。
図1は、実施例1に係る評価サーバの機能的構成を示すブロック図である。 図2は、指紋テーブルに記憶される情報の一例を示す図である。 図3は、照合時間テーブルに記憶される情報の一例を示す図である。 図4は、配分テーブルに記憶される情報の一例を示す図である。 図5は、指紋データのデータ構造の一例について説明するための図である。 図6は、疑似クエリQ[0]を生成する処理について説明するための図である。 図7は、照合時間を算出する処理について説明するための図である。 図8は、照合時間を算出する処理について説明するための図である。 図9は、指紋データをグループに配分する処理を説明するための図である。 図10は、実施例1に係る評価サーバの処理手順を示すフローチャートである。 図11は、実施例2に係る評価サーバの機能的構成を示すブロック図である。 図12は、実施例2に係る評価サーバの処理手順を示すフローチャートである。 図13は、実施例3に係る評価サーバの機能的構成を示すブロック図である。 図14は、実施例3に係る評価サーバの処理手順を示すフローチャートである。 図15は、評価プログラムを実行するコンピュータを示す図である。
以下に、本願の開示する評価サーバ、評価プログラム及び評価方法の実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。また、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
なお、以下の実施例では、一例として、開示の技術を、ユーザの指先から取得される指紋データを用いてユーザを認証する指紋認証に適用する場合を説明するが、開示の技術はこれに限定されるものではない。例えば、開示の技術は、声紋や手のひらの静脈パターン、眼球の虹彩など、指紋以外の生体情報を用いる生体認証にも同様に適用可能である。さらに、開示の技術は、生体認証に限って適用されるものでもなく、例えば、入力データとデータベース内のデータとを照合する場合や、データベース内のデータから入力データに最も類似するデータを検索する場合などにも広く適用可能である。
実施例1に係る評価サーバ100の機能的構成について説明する。実施例1に係る評価サーバ100は、登録済みの各指紋データについて、照合時間の照合のための指紋データを生成する。評価サーバ100は、生成した指紋データと登録済みの指紋データとの照合時間をそれぞれ算出し、算出した照合時間が均等になるように指紋データをグループに配分する。このため、評価サーバ100は、照合処理が並列で実行される際に、グループ単位で照合処理を実行させることができるので、照合にかかる負荷を均一化することができ、認証にかかる時間を短縮することができる。
図1は、実施例1に係る評価サーバの機能的構成を示すブロック図である。図1に示すように、評価サーバ100は、ネットワーク5を介して、操作端末10と、DB(Database)サーバ20と、計算サーバ30a,30b,30cとにそれぞれ接続される。
なお、ネットワーク5としては、有線又は無線を問わず、インターネット(Internet)、LAN(Local Area Network)やVPN(Virtual Private Network)などの任意の種類の通信網を採用しても良い。また、以下では、計算サーバ30a,30b,30cの各装置を区別無く総称する場合には、計算サーバ30と記載する。
また、図1に示した例では、評価サーバ100に操作端末10と、DBサーバ20と、3つの計算サーバ30とが接続される場合を示したが、図示の構成に限定されるものではない。すなわち、評価サーバ100には、それぞれ任意数の操作端末10、DBサーバ20及び計算サーバ30が接続されて良い。また、評価サーバ100は、負荷分散のため、複数のサーバ装置により構築されても良い。
操作端末10は、評価サーバ100を管理する管理者によって操作される端末であり、例えば、パーソナルコンピュータ、ワークステーションなどに対応する。例えば、操作端末10は、管理者から評価サーバ100に処理を開始させる指示の入力を受け付け、受け付けた指示の入力を評価サーバ100に送信する。
DBサーバ20は、指紋認証を利用するユーザの指紋データを記憶する情報管理装置である。例えば、DBサーバ20は、操作端末10によって登録された指紋データを記憶する。一態様としては、DBサーバ20は、後述の指紋テーブル121を記憶する。なお、図1に示した例では、1つのDBサーバ20が、指紋認証を利用する全てのユーザの指紋データを記憶する場合を説明したが、開示の技術はこれに限定されるものではなく、例えば、複数のDBサーバ20が複数のユーザの指紋データを分散して記憶しても良い。
計算サーバ30は、指紋認証を行うサーバ装置である。例えば、計算サーバ30は、図示しないユーザ端末から受信した指紋データと、DBサーバ20に記憶された登録済みの指紋データとを照合することで、ユーザを認証する。
ここで、ユーザ端末について説明する。ユーザ端末は、指紋認証を利用するユーザによって操作される端末であり、例えば、パーソナルコンピュータ、携帯電話及びスマートフォンなどに対応する。例えば、ユーザ端末は、指紋の画像データを読み取るための指紋センサを備え、指紋認証を利用するユーザの指先から指紋の画像データを読み取り、読み取った画像データから指紋データを生成する。この指紋データとは、照合アルゴリズムに応じて画像データから生成されるものであり、例えば、マニューシャ方式の照合アルゴリズムでは、画像データから抽出された指紋の隆線の端点や分岐点のパターンを指す。そして、指紋認証を利用するユーザを登録する場合には、ユーザ端末は、ユーザの指紋データをDBサーバ20へ送信し、送信した指紋データをDBサーバ20に登録する。また、指紋認証によってユーザを認証する場合には、ユーザ端末は、ユーザの指紋データを計算サーバ30へ送信する。また、例えば、ユーザ端末は、計算サーバ30から認証結果を受信する。そして、ユーザ端末は、受信した認証結果を表示したり、認証結果に応じた処理を実行したりする。一態様としては、ユーザ端末は、認証に成功したユーザに対して所定の情報へのアクセスを許可したり、所定の場所への通行を許可したりする。なお、登録済みの指紋データと照合するためにユーザ端末によって送信される指紋データを、「クエリ」とも称する。また、ここでは、マニューシャ方式の照合アルゴリズムが適用された場合を説明したが、開示の技術はこれに限定されるものではなく、例えば、パターンマッチング方式や周波数解析方式の照合アルゴリズムも適用可能である。
例えば、計算サーバ30は、クエリと登録済みの指紋データとを並列処理によって照合する。一態様としては、計算サーバ30は、クエリとの照合対象となる指紋データをDBサーバ20から取得し、取得した指紋データを図示しない内部メモリに記憶する。このとき、計算サーバ30は、複数の計算サーバ30で全てのユーザの指紋データを記憶するように、各々の計算サーバ30が複数の指紋データを分散して記憶する。そして、操作端末10からクエリを受信すると、各々の計算サーバ30は、受信したクエリと、自装置の内部メモリに記憶した指紋データとを照合し、照合結果を予め指定された、複数の計算サーバ30のうちの1つに送信する。各々の計算サーバ30から照合結果が送信されると、照合結果を受信した計算サーバ30は、受信した照合結果を集計して認証結果を生成し、認証結果をユーザ端末へ送信する。
評価サーバ100は、DBサーバ20に登録済みの指紋データから、各指紋データの照合にかかる時間を算出するための疑似的なクエリである擬似クエリを生成する。評価サーバ100は、生成した擬似クエリと、登録済みの指紋データとの照合時間を、登録済みの指紋データごとに算出する。評価サーバ100は、算出した照合時間が均等になるように、登録済みの指紋データを各グループに配分する。このため、評価サーバ100は、照合処理が並列で実行される際に、照合にかかる負荷を均一化することができ、認証にかかる時間を短縮することができる。
図1に示すように、この評価サーバ100は、通信制御部110と、記憶部120と、制御部130とを有する。通信制御部110は、例えば、操作端末10と、DBサーバ20と、計算サーバ30と、評価サーバ100との間で送受信される各種情報に関する通信を制御する。一態様としては、通信制御部110は、ネットワークインタフェースカード(NIC:Network Interface Card)である。
記憶部120は、例えば、指紋テーブル121と、照合時間テーブル122と、配分テーブル123とを有する。記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子、ハードディスク装置や光ディスク装置などの記憶装置に対応する。
指紋テーブル121は、指紋認証を利用するユーザの指紋データを記憶する。例えば、指紋テーブル121は、後述の取得部131によって格納される。また、例えば、指紋テーブル121は、後述の生成部132及び算出部133によって参照される。
一態様としては、指紋テーブル121は、ユーザIDと、指紋データとが対応付けられたデータを記憶する。この「ユーザID」は、ユーザを識別するための識別子を指す。また、「指紋データ」は、ユーザの指紋データを指す。
図2は、指紋テーブルに記憶される情報の一例を示す図である。図2に示す例では、指紋テーブル121は、ユーザID「ユーザ[1]」と、指紋データ「ユーザ[1]の指紋データ」とが対応付けられたデータを記憶する。また、図2に示す例では、指紋テーブル121は、他の指紋データについても同様に、ユーザIDと指紋データとが対応付けられたデータを記憶する。
照合時間テーブル122は、擬似クエリと登録済みの指紋データとの照合時間を記憶する。例えば、照合時間テーブル122は、算出部133及び特徴量算出部134によって各種情報が格納される。また、例えば、照合時間テーブル122は、生成部132、特徴量算出部134及び配分部135によって参照される。
一態様としては、照合時間テーブル122は、ユーザIDと、擬似クエリとの照合時間と、平均値と、分散値とが対応付けられたデータを記憶する。この「擬似クエリとの照合時間」は、擬似クエリと登録済みの指紋データとの照合時間を指す。また、「平均値」は、擬似クエリとの照合時間の指紋データごとの平均値を指す。また、「分散値」は、擬似クエリとの照合時間の指紋データごとの分散値を指す。
図3は、照合時間テーブルに記憶される情報の一例を示す図である。図3の1行目のレコードには、ユーザID「ユーザ[1]」と、擬似クエリQ[0]との照合時間「T[0][1]」と、擬似クエリQ[min1]との照合時間「T[min1][1]」・・・とが対応付けられている。これは、ユーザ[1]の指紋データと擬似クエリQ[0]との照合時間がT[0][1]であり、ユーザ[1]の指紋データと擬似クエリQ[min1]との照合時間がT[min1][1]であることを示す。また、図3の1行目のレコードには、他の擬似クエリについても同様に、ユーザ[1]の指紋データと擬似クエリとの照合時間が対応付けられている。また、図3の1行目のレコードには、平均値「T[1]ave」と、分散値「T[1]var」とが対応付けられている。これは、ユーザ[1]の指紋データとそれぞれの擬似クエリとの照合時間の平均値がT[1]aveであり、ユーザ[1]の指紋データとそれぞれの擬似クエリとの照合時間の分散値がT[1]varであることを示す。また、照合時間テーブル122は、他のユーザIDについても同様に、ユーザIDと、擬似クエリとの照合時間と、平均値と、分散値とが対応付けられたデータを記憶する。
配分テーブル123は、グループと、各グループに配分された指紋データとの対応関係を記憶する。例えば、配分部135によって格納される。
一態様としては、この「チャンクID」は、チャンクを識別するための識別子を指す。なお、チャンクとは、ひとまとまりのデータのことであり、ここでは、グループに配分された指紋データの最小単位を指す。
図4は、配分テーブルに記憶される情報の一例を示す図である。図4に示す例では、配分テーブル123は、チャンクID「チャンク[1]」と、ユーザID「ユーザ[3]、ユーザ[42]、ユーザ[55]・・・」とが対応付けられたデータを記憶する。これは、チャンク[1]には、ユーザ[3]の指紋データと、ユーザ[42]の指紋データと、ユーザ[55]の指紋データ・・・とが配分されたことを示す。また、配分テーブル123は、他のチャンクIDについても同様に、チャンクIDと、各チャンクに配分された指紋データとの対応関係を記憶する。
制御部130は、取得部131と、生成部132と、算出部133と、特徴量算出部134と、配分部135とを有する。制御部130の機能は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路により実現することができる。また、制御部130の機能は、例えば、CPU(Central Processing Unit)が所定のプログラムを実行することで実現することができる。
取得部131は、処理対象となる指紋データをDBサーバ20から取得する。例えば、取得部131は、評価サーバ100を管理する管理者から評価サーバ100に処理を開始させる指示の入力を操作端末10から受信すると、処理対象となる指紋データを含む指紋テーブル121をDBサーバ20から取得する。そして、取得部131は、取得した指紋データを記憶部120に格納する。
生成部132は、データベース内のデータから、そのデータと照合される照合データを生成する。例えば、生成部132は、指紋テーブル121に記憶された指紋データから、各指紋データの照合にかかる時間を算出するための疑似的なクエリである擬似クエリを生成する。なお、指紋データは、データの一例であり、疑似クエリは、照合データの一例である。
例えば、生成部132は、指紋テーブル121に記憶された指紋データに含まれる各要素の平均値を算出し、算出した平均値を各要素に含む平均データを疑似クエリQ[0]として生成する。そして、生成部132は、疑似クエリQ[0]を算出部133へ出力する。
ここで、図5及び図6を用いて、生成部132が疑似クエリQ[0]を算出する処理について説明する。図5は、指紋データのデータ構造の一例について説明するための図である。図5に示すように、例えば、指紋データ5aは、複数の要素5bを含む多次元配列データとして定義される。この要素5bは、例えば、要素5bごとに予め規定された条件で指紋の画像データから抽出された指紋の隆線の端点や分岐点のパターンに対応する。なお、ここでは、指紋データ5aが10個の要素5bを含む場合を例示したが、開示の技術はこれに限定されるものではなく、指紋データ5aは、任意の数の要素5bを含んでいても良い。
図6は、疑似クエリQ[0]を生成する処理について説明するための図である。図6に示すように、生成部132は、複数の指紋データ5aの要素5bごとに、対応する要素6aの平均値6bを算出する。そして、生成部132は、算出した要素5bごとの平均値6bを要素として含む平均データ6cを疑似クエリQ[0]として生成する。なお、ここでは、生成部132が指紋データに含まれる各要素の平均値を算出することで疑似クエリQ[0]を生成する場合を例示したが、開示の技術はこれに限定されるものではない。例えば、生成部132は、指紋テーブル121に記憶された指紋データから一つの指紋データをランダムに選択し、選択した指紋データを疑似クエリQ[0]として用いても良い。
また、例えば、生成部132は、算出部133によって算出された指紋データごとの照合時間のうち、最小の照合時間が算出された指紋データを特定する。そして、生成部132は、特定した指紋データを疑似クエリとして算出部133へ出力する。
ここで、生成部132が登録済みの指紋データから擬似クエリを生成するのは、認証が行われる場合には、登録済みの指紋データと似通った指紋データがクエリとして入力される可能性が高いと考えられるからである。これは、実際に入力されるクエリに似通った疑似クエリを生成するという趣旨である。
図1の説明に戻る。算出部133は、生成された照合データとデータベース内の複数のデータのそれぞれとの照合にかかる照合時間を、そのデータごとに算出する。例えば、算出部133は、生成部132によって生成された疑似クエリと、指紋テーブル121に記憶された各指紋データとを照合し、照合時間を指紋データごとに測定する。そして、算出部133は、測定した照合時間を照合時間テーブル122に格納する。算出部133は、所定数の照合時間を測定するまで、疑似クエリと各指紋データとの照合時間を測定する。そして、算出部133は、所定数の照合時間を測定した場合に、測定した所定数の照合時間を特徴量算出部134へ出力する。
図7及び図8を用いて、生成部132及び算出部133によって照合時間を算出する処理について説明する。図7及び図8は、照合時間を算出する処理について説明するための図である。
図7に示すように、算出部133は、生成部132によって疑似クエリQ[0]が生成されると、ユーザ[1]〜[n]までの各ユーザの指紋データと、疑似クエリQ[0]との照合時間T[0][1]〜T[0][n]を算出する。そして、算出部133は、疑似クエリQ[0]との照合時間T[0][1]〜T[0][n]を照合時間テーブル122に格納する。
疑似クエリQ[0]との照合時間T[0][1]〜T[0][n]が照合時間テーブル122に格納されると、生成部132は、照合時間T[0][1]〜T[0][n]のうち、最小の照合時間が算出された指紋データを次の疑似クエリとして特定する。一例として、照合時間T[0][1]〜T[0][n]のうち、最小の照合時間がT[0][2]である場合には、生成部132は、ユーザ[2]の指紋データを次の疑似クエリQ[min1]として特定する。生成部132は、特定した疑似クエリQ[min1]を算出部133へ出力する。
生成部132によって疑似クエリQ[min1]が特定されると、算出部133は、図8に示すように、ユーザ[1]〜[n]までの各ユーザの指紋データと、疑似クエリQ[min1]との照合時間T[min1][1]〜T[min1][n]を算出する。そして、算出部133は、疑似クエリQ[min1]との照合時間T[min1][1]〜T[min1][n]を照合時間テーブル122に格納する。これ以降、疑似クエリとの照合時間が照合時間テーブル122に格納されるごとに、生成部132は、算出された照合時間のうち、最小の照合時間が算出された指紋データを次の疑似クエリとして特定する。一例としては、生成部132は、疑似クエリQ[0]〜Q[minv]までの[v+1]個の疑似クエリを特定する。また、算出部133は、生成部132によって疑似クエリが特定されるごとに、各ユーザの指紋データと、疑似クエリとの照合時間を算出する。一例としては、算出部133は、各ユーザの指紋データについて、疑似クエリQ[0]〜Q[minv]との照合時間T[0][1]〜T[minv][n]を算出する。そして、算出部133は、所定数[v+1]の照合時間を算出すると、算出した照合時間T[0][1]〜T[minv][n]を特徴量算出部134へ出力する。
ここで、算出部133が複数の疑似クエリを用いて照合時間を算出するのは、照合対象となる2つのデータの組み合わせに依存して照合時間が変化してしまうからである。これは、複数の疑似クエリを用いて照合時間を算出することで、指紋データごとの照合時間が特定の値に偏ってしまうことを防ぐという趣旨である。また、複数の疑似クエリを生成するために、算出された照合時間のうち最小の照合時間が算出された指紋データを用いるのは、異なる性質の指紋データを疑似クエリとすることができるからである。これは、同様の性質の指紋データばかりが疑似クエリとして生成されてしまい、指紋データごとの照合時間が特定の値に偏ってしまうことを防ぐという趣旨である。
図1の説明に戻る。特徴量算出部134は、複数の照合時間から特徴量を算出する。例えば、特徴量算出部134は、算出部133によって算出された照合時間から、照合時間の平均値と照合時間の分散値とを指紋データごとに算出する。特徴量算出部134は、算出した平均値及び分散値を照合時間テーブル122に格納する。なお、照合時間の平均値及び照合時間の分散値は、特徴量の一例である。
一態様としては、特徴量算出部134は、照合時間T[0][1]〜T[minv][1]までの和を算出し、算出した和を所定数[v+1]で除算することで、ユーザ[1]の照合時間の平均値T[1]aveを算出する。また、特徴量算出部134は、照合時間T[0][1]〜T[minv][1]と平均値T[1]aveとの差をそれぞれ算出し、算出したそれぞれの差の2乗の和を所定数[v+1]で除算することで、ユーザ[1]の照合時間の分散値T[1]varを算出する。特徴量算出部134は、平均値T[1]ave及び分散値T[1]varを照合時間テーブル122に格納する。また、特徴量算出部134は、他のユーザIDの照合時間についても同様に、平均値T[n]ave及び分散値T[n]varを算出し、算出した値を照合時間テーブル122に格納する。
配分部135は、算出された照合時間に基づいて、データベース内の複数のデータをグループに配分する。例えば、特徴量算出部134によって算出された特徴量同士を比較し、特徴量が近い指紋データほど特徴量が遠い指紋データに比べて異なるグループに配分する。そして、配分部135は、グループと、各グループに配分された指紋データとの対応関係を配分テーブル123に格納する。
図9は、指紋データをグループに配分する処理を説明するための図である。図9に示すように、例えば、配分部135は、特徴量算出部134によって算出された平均値及び分散値を2軸とする座標上にユーザの指紋データを配置する。そして、配分部135は、座標上で、ユーザの指紋データのクラスタリングを行い、クラスタに含まれる指紋データの数が所定数になった場合に、そのクラスタに含まれるデータをチャンクに配分する。図9に示す例では、例えば、クラスタ9aに含まれるユーザの指紋データは、他の指紋データと比較して平均値及び分散値が近い値となる。このため、配分部135は、クラスタ9aに含まれるユーザの指紋データを異なるチャンクに配分する。一例としては、配分部135は、クラスタ9aに含まれるユーザの指紋データの数がチャンク数の整数倍となった場合に、ユーザの指紋データを各チャンクに均等に配分する。そして、配分部135は、チャンクIDと、各チャンクに配分された指紋データのユーザIDとの対応関係を配分テーブル123に格納する。なお、配分部135は、チャンク数の整数倍となった場合にのみ配分するものではなく、整数倍より多ければ、各チャンクへ配分してもよい。この場合、配分部135は、各チャンクへ配分した後に、未配分の指紋データを適切なチャンクへ配分することとなる。また、配分部135が指紋データをクラスタリングする方法は、上記の方法に限定されるものではなく、既存のいかなるクラスタリング方法でも適用可能である。
また、例えば、配分部135は、指紋データが配分されたチャンクの数が均等になるように、チャンクをそれぞれの計算サーバ30に配分する。一態様としては、配分部135は、指紋データが配分されたチャンクの数を計算サーバ30の数で除算し、それぞれの計算サーバ30に配分するチャンクの数を算出する。配分部135は、算出した数のチャンクをそれぞれの計算サーバ30に配分する。配分部135は、それぞれの計算サーバ30に配分したチャンクに含まれるユーザIDを、それぞれの計算サーバ30へ送信する。このため、配分部135は、それぞれの計算サーバ30における照合時間が同程度になるように、それぞれの計算サーバ30に登録済みの指紋データを取得させることができる。
次に、実施例1に係る評価サーバの処理手順について説明する。図10は、実施例1に係る評価サーバの処理手順を示すフローチャートである。図10に示す処理は、例えば、取得部131が、評価サーバ100に処理を開始させる指示の入力を操作端末10から受信したことを契機として実行される。
図10に示すように、取得部131は、処理タイミングになると(ステップS101肯定)、処理対象となる指紋データをDBサーバ20から取得する(ステップS102)。生成部132は、取得部131によって取得された指紋データから、擬似クエリQ[0]を生成する(ステップS103)。
算出部133は、生成部132によって生成された疑似クエリとの照合時間を算出する(ステップS104)。そして、算出部133は、所定数の照合時間を算出するまで(ステップS105否定)、算出した照合時間のうち最小の照合時間が算出された指紋データを特定し(ステップS106)、ステップS104の処理に移行する。
算出部133によって所定数の照合時間が算出されると(ステップS105肯定)、特徴量算出部134は、照合時間の平均値及び分散値を指紋データごとに算出する(ステップS107)。配分部135は、特徴量算出部134によって算出された平均値及び分散値に基づいて、指紋データをグループに配分する(ステップS108)。そして、配分部135は、グループと、各グループに配分された指紋データとの対応関係を配分テーブル123に格納する(ステップS109)。
次に、実施例1に係る評価サーバの効果について説明する。実施例1に係る評価サーバ100は、DBサーバ20に記憶された指紋データから、その指紋データと照合される照合データを生成する。評価サーバ100は、生成した照合データとDBサーバ20に記憶された複数の指紋データのそれぞれとの照合にかかる照合時間を、指紋データごとに算出する。評価サーバ100は、算出した照合時間に基づいて、DBサーバ20に記憶された複数の指紋データをグループに配分する。このため、評価サーバ100は、照合処理が並列で実行される際に、照合にかかる負荷を均一化することができ、認証にかかる時間を短縮することができる。
例えば、評価サーバ100は、各グループに含まれる各指紋データの照合時間が均等になるように、各指紋データをグループに配分することができる。よって、評価サーバ100は、グループの数が均等になるように指紋データをそれぞれの計算サーバ30に取得させることで、それぞれの計算サーバ30にかかる負荷を同程度にすることができる。したがって、評価サーバ100は、それぞれの計算サーバ30に並列で実行させる照合処理の一部が遅延するという事態を防ぐことができる結果、認証にかかる時間を短縮することができる。
上記の実施例では、登録済みの指紋データの正規化にかかる時間を考慮しない場合を説明した。すなわち、指紋認証では、ユーザの指紋データをDBサーバ20に登録する際に、指紋センサで読み取った指紋の向きが回転した状態で登録されてしまうことがある。この場合、登録済みの指紋データを正規化してから照合することとなるが、上記の実施例では、この正規化にかかる時間を考慮せず、正規化にかかる時間を含む照合時間を算出する場合を説明した。しかし、開示の技術は、登録済みの指紋データの正規化にかかる時間を考慮した上で照合時間を算出する場合にも適用できる。そこで、実施例2では、登録済みの指紋データの正規化にかかる時間を考慮した上で照合時間を算出する場合について説明する。なお、実施例2では、クエリ又は疑似クエリと、登録済みの指紋データとを照合する際に、登録済みの指紋データの指紋の回転角度を調整することを正規化と呼ぶが、登録済みの指紋データの種々の属性を調整する処理であれば、何れの処理であっても良い。
実施例2に係るに係る評価サーバ200の機能的構成について説明する。図11は、実施例2に係る評価サーバの機能的構成を示すブロック図である。図11に示すように、評価サーバ200は、通信制御部110と、記憶部120と、制御部210とを有する。このうち、図11に示す通信制御部110及び記憶部120の機能は、図1に示した通信制御部110及び記憶部120の機能とそれぞれ同様である。なお、以下では、上記の実施例1と同様の機能を発揮する機能部については同一の符号を付し、その説明を省略することとする。
制御部210は、取得部131と、生成部211と、算出部212と、特徴量算出部134と、配分部135とを有する。このうち、図11に示す取得部131、特徴量算出部134及び配分部135の機能は、図1に示した取得部131、特徴量算出部134及び配分部135の機能とそれぞれ同様である。
生成部211は、図1に示した生成部132と同様の機能を有し、さらに、データを正規化するための複数パターンの照合データを生成する。例えば、生成部211は、生成した1つの疑似クエリに対して、指紋データを正規化するための複数パターンの疑似クエリを生成する。生成部211は、生成した複数パターンの疑似クエリを算出部212に出力する。
例えば、生成部211は、指紋認証においてシステム設計上保証されている回転角を所定数u+1等分に分割し、1つの疑似クエリQ[minv]を生成するごとに、u+1パターンの疑似クエリQ[minv][0]〜Q[minv][u]を生成する。生成部211は、疑似クエリQ[minv][0]〜Q[minv][u]を算出部212に出力する。
一態様として、システム設計上±10度の回転角が許容されている場合には、生成部211は、その疑似クエリを±1度ずつ回転させた20パターンの疑似クエリQ[minv][1]〜Q[minv][20]を生成する。このため、算出部212は、回転させる前のパターンの疑似クエリQ[minv][0]を加えて、21パターンの疑似クエリを生成することとなる。そして、生成部211は、1つの疑似クエリQ[minv]を生成するごとに、生成した疑似クエリQ[minv][0]〜Q[minv][20]を算出部212に出力する。
算出部212は、図1に示した算出部133と同様の機能を有し、さらに、データベース内の複数のデータのそれぞれと、生成部211によって生成された複数パターンの照合データのそれぞれとの照合にかかる照合時間を算出する。そして、算出部212は、算出した複数パターンの照合時間から照合時間を一つ選択し、選択した算出時間を照合時間テーブル122に格納する。例えば、算出部212は、算出した複数パターンの照合時間のうちの最大値と最小値との差分が閾値未満の場合には、データについて算出された算出時間を選択する。また、例えば、算出部212は、算出した複数パターンの照合時間のうちの最大値と最小値との差分が閾値以上の場合には、最大値となったパターンの照合時間を選択する。
例えば、算出部212は、生成部211によって生成されたu+1パターンの疑似クエリQ[minv][0]〜Q[minv][u]のそれぞれと、指紋テーブル121に記憶されたユーザ[1]〜[n]それぞれの指紋データとの照合時間を差出する。一例として、算出部212は、ユーザ[n]の指紋データと、疑似クエリQ[minv][0]〜Q[minv][u]との照合時間TC[0]〜TC[u]を算出する。そして、算出部212は、算出した照合時間TC[0]〜TC[u]のうち、最大値と最小値との差分qを算出する。そして、算出部212は、差分qが閾値未満の場合には、正規化前の疑似クエリQ[minv][0]について算出された照合時間TC[0]を選択する。一方、算出部212は、差分qが閾値以上の場合には、最大値となったパターンの照合時間を選択する。一例として、照合時間TC[0]〜TC[u]のうち照合時間TC[3]が最大値であった場合には、照合時間TC[3]を選択する。なお、ここでは、差分qが閾値以上の場合に、最大値となったパターンの照合時間が選択される場合を説明したが、これに限定されるものではなく、例えば、算出した照合時間TC[0]〜TC[u]の平均値を算出し、算出した平均値を照合時間テーブル122に格納しても良い。
次に、実施例2に係る評価サーバの処理手順について説明する。図12は、実施例2に係る評価サーバの処理手順を示すフローチャートである。図12に示す処理は、例えば、取得部131が、評価サーバ200に処理を開始させる指示の入力を操作端末10から受信したことを契機として実行される。
図12に示すように、取得部131は、処理タイミングになると(ステップS201肯定)、処理対象となる指紋データをDBサーバ20から取得する(ステップS202)。生成部211は、取得部131によって取得された指紋データから、擬似クエリQ[0]を生成する(ステップS203)。
生成部211は、生成した1つの疑似クエリに対して、複数パターンの疑似クエリを生成する(ステップS204)。例えば、生成部211は、疑似クエリQ[0]に対して、u+1パターンの疑似クエリQ[0][0]〜Q[0][u]を生成する。また、例えば、生成部211は、疑似クエリQ[minv]に対して、u+1パターンの疑似クエリQ[minv][0]〜Q[minv][u]を生成する。
算出部212は、生成部211によって生成された複数パターンの疑似クエリについて、それぞれのパターンに対応する照合時間を算出する(ステップS205)。例えば、算出部212は、ユーザ[n]の指紋データと、疑似クエリQ[minv][0]〜Q[minv][u]との照合時間TC[0]〜TC[u]を算出する。
そして、算出部212は、算出した複数パターンの照合時間から照合時間を一つ選択する(ステップS206)。例えば、算出部212は、算出した照合時間TC[0]〜TC[u]のうち、最大値と最小値との差分qを算出する。そして、算出部212は、差分qが閾値未満の場合には、正規化前の疑似クエリQ[minv][0]について算出された照合時間TC[0]を選択する。一方、算出部212は、差分qが閾値以上の場合には、最大値となったパターンの照合時間を選択する。一例として、照合時間TC[0]〜TC[u]のうち照合時間TC[3]が最大値であった場合には、照合時間TC[3]を選択する。
そして、算出部212は、所定数の照合時間を照合時間テーブル122に格納するまで(ステップS207否定)、格納した照合時間のうち最小の照合時間が算出された指紋データを特定し(ステップS208)、ステップS204の処理に移行する。
算出部212によって所定数の照合時間が格納されると(ステップS207肯定)、特徴量算出部134は、照合時間の平均値及び分散値を指紋データごとに算出する(ステップS209)。配分部135は、特徴量算出部134によって算出された平均値及び分散値に基づいて、指紋データをグループに配分する(ステップS210)。そして、配分部135は、グループと、各グループに配分された指紋データとの対応関係を配分テーブル123に格納する(ステップS211)。
次に、実施例2に係る評価サーバの効果について説明する。実施例2に係る評価サーバ200は、データを正規化するための複数パターンの照合データを生成する。評価サーバ200は、データベース内の複数のデータのそれぞれと、生成した複数パターンの照合データのそれぞれとの照合にかかる照合時間を算出する。このため、評価サーバ200は、登録済みの指紋データの正規化にかかる時間を考慮した上で照合時間を評価することができる。
なお、実施例2では、正規化にかかる時間を考慮した上で照合時間を算出する場合の例として指紋データを例示したが、開示の技術はこれに限定されるものではない。例えば、声紋認証における時間方向に伸縮した音声データの正規化にかかる時間を考慮する場合、あるいは、静脈認証における回転した画像データの正規化にかかる時間を考慮する場合などにも適用可能である。
上記の実施例では、グループに未配分の指紋データをグループに配分する場合を説明した。しかしながら、グループに指紋データが配分された後に、ユーザの指紋データを追加登録する場合や削除する場合、あるいは生体情報の経年変化を考慮して更新する場合がある。この場合、各グループの照合にかかる負荷が変化してしまうので、グループに配分済みの指紋データを再配分することとなるが、開示の技術は、この場合にも適用できる。そこで、実施例3では、グループに配分済みの指紋データを再配分する場合について説明する。
実施例3に係るに係る評価サーバ300の機能的構成について説明する。図13は、実施例3に係る評価サーバの機能的構成を示すブロック図である。図13に示すように、評価サーバ300は、通信制御部110と、記憶部310と、制御部320とを有する。このうち、図13に示す通信制御部110の機能は、図1に示した通信制御部110の機能と同様である。
記憶部310は、例えば、指紋テーブル121と、疑似クエリテーブル311と、照合時間テーブル122と、配分テーブル123とを有する。このうち、図13に示す指紋テーブル121、照合時間テーブル122及び配分テーブル123の機能は、図1に示した指紋テーブル121、照合時間テーブル122及び配分テーブル123の機能とそれぞれ同様である。
疑似クエリテーブル311は、前回生成された疑似クエリを記憶する。例えば、疑似クエリテーブル311は、生成部132によって生成された疑似クエリQ’[0]、疑似クエリQ’[min1]、疑似クエリQ’[min2]・・・疑似クエリQ’[minv]を記憶する。また、例えば、疑似クエリテーブル311は、生成部132によって疑似クエリが生成されるごとに、生成された疑似クエリが生成部132によって格納される。
制御部320は、取得部131と、生成部132と、算出部321と、特徴量算出部322と、判定部323と、配分部324とを有する。このうち、図13に示す取得部131及び生成部132の機能は、図1に示した取得部131及び生成部132の機能とそれぞれ同様である。
算出部321は、図1に示した算出部133と同様の機能を有する。さらに、算出部321は、疑似クエリテーブル311に前回生成された疑似クエリが記憶されている場合に、前回生成されたそれぞれの疑似クエリと、指紋テーブル121に記憶された各指紋データとの照合時間を指紋データごとに算出する。例えば、算出部321は、疑似クエリQ’[0]、疑似クエリQ’[min1]・・・疑似クエリQ’[minv]と、ユーザ[1]〜[n]までの各ユーザの指紋データとの照合時間T’[0][1]〜T’[0][n]を指紋データごとに算出する。
特徴量算出部322は、図1に示した特徴量算出部134と同様の機能を有する。さらに、特徴量算出部322は、前回生成された疑似クエリとの照合時間が算出部133によって算出されると、前回生成された疑似クエリとの照合時間の平均値と照合時間の分散値とを指紋データごとに算出する。
一態様としては、特徴量算出部322は、照合時間T’[0][1]〜T’[minv][1]までの和を算出し、算出した和を所定数[v+1]で除算することで、ユーザ[1]の照合時間の平均値T’[1]aveを算出する。また、特徴量算出部322は、照合時間T’[0][1]〜T’[minv][1]と平均値T’[1]aveとの差をそれぞれ算出し、算出したそれぞれの差の2乗の和を所定数[v+1]で除算する。これにより、特徴量算出部322は、ユーザ[1]の照合時間の分散値T’[1]varを算出する。特徴量算出部322は、平均値T’[1]ave及び分散値T’[1]varを判定部323に出力する。また、特徴量算出部322は、他のユーザIDの照合時間についても同様に、平均値T’[n]ave及び分散値T’[n]varを算出し、算出した値を判定部323及び配分部324に出力する。
判定部323は、算出された第1照合時間と、前回配分した際に生成された照合データとデータベース内の複数のデータのそれぞれとの照合にかかる第2照合時間とを比較し、比較結果に基づいて、データをグループに配分するか否かを判定する。例えば、判定部323は、チャンクごとに、前回算出された照合時間と、今回算出した照合時間とを比較して、比較結果に基づいて、指紋データをグループに配分するか否かを判定する。
例えば、判定部323は、チャンクIDと、各チャンクに現在配分されている指紋データのユーザIDとの対応関係を配分テーブル123から取得する。そして、判定部323は、チャンクごとに、現在配分されている指紋データの照合時間の平均値を算出する。一例としては、判定部323は、チャンク[1]について、チャンク[1]に含まれるユーザ[3]の照合時間T’[3]ave、ユーザ[42]の照合時間T’[42]ave・・・の和を算出する。そして、判定部323は、算出した和をチャンク[1]に含まれる指紋データの数で除算して、Txave’[1]を算出する。
また、判定部323は、照合時間T[0][1]〜T[minv][n]に基づいて、各チャンクに配分される指紋データのユーザIDを、配分部324から取得する。そして、判定部323は、チャンクごとに、配分される指紋データの照合時間の平均値を算出する。一例としては、判定部323は、チャンク[1]について、チャンク[1]に含まれるユーザ[3]の照合時間T[3]ave、ユーザ[42]の照合時間T[42]ave・・・の和を算出する。そして、判定部323は、算出した和をチャンク[1]に含まれる指紋データの数で除算して、Txave[1]を算出する。
そして、判定部323は、チャンク[1]について算出されたTxave’[1]とTxave’[1]との差分を算出し、算出した差分を閾値と比較する。また、判定部323は、他のチャンク[m]についても同様に、Txave’[m]とTxave’[m]とを算出し、算出したTxave’[m]とTxave’[m]と差分を閾値と比較する。そして、判定部323は、算出した差分が閾値以上となったチャンクの数が所定数を超えた場合に、配分すると判定する。判定部323は、判定結果を配分部324に出力する。
配分部324は、図1に示した配分部135と同様の機能を有する。さらに、配分部324は、判定部323によって配分すると判定された場合に、指紋データをグループに配分する。
次に、実施例3に係る評価サーバの処理手順について説明する。図14は、実施例3に係る評価サーバの処理手順を示すフローチャートである。図14に示す処理は、例えば、取得部131が、評価サーバ300に処理を開始させる指示の入力を操作端末10から受信したことを契機として実行される。
図14に示すように、評価サーバ300は、処理タイミングになると(ステップS301肯定)、照合時間算出処理を実行する(ステップS302)。この照合時間算出処理は、図10に示したステップS102〜S107までの処理に対応するので、説明を省略することとする。
算出部321は、疑似クエリテーブル311に前回生成された疑似クエリが記憶されている場合には(ステップS303肯定)、前回生成されたそれぞれの疑似クエリと、各指紋データとの照合時間を指紋データごとに算出する(ステップS304)。なお、疑似クエリテーブル311に前回生成された疑似クエリが記憶されていない場合には(ステップS303否定)、ステップS308の処理に移行する。
続いて、特徴量算出部322は、前回生成された疑似クエリとの照合時間の平均値及び分散値を指紋データごとに算出する(ステップS305)。判定部323は、チャンクごとに、前回算出された照合時間と、今回算出した照合時間とを比較する(ステップS306)。判定部323は、比較結果に基づいて、指紋データをグループに配分するか否かを判定する(ステップS307)。
判定部323によって配分すると判定された場合には(ステップS307肯定)、配分部135は、特徴量算出部134によって算出された平均値及び分散値に基づいて、指紋データをグループに配分する(ステップS308)。そして、配分部135は、グループと、各グループに配分された指紋データとの対応関係を配分テーブル123に更新する(ステップS309)。
一方、判定部323によって配分しないと判定された場合には(ステップS307否定)、評価サーバ300は、処理を終了する。
次に、実施例3に係る評価サーバの効果について説明する。実施例3に係る評価サーバ300は、算出された第1照合時間と、前回配分した際に生成された照合データとデータベース内の複数のデータのそれぞれとの照合にかかる第2照合時間とを比較する。評価サーバ300は、比較結果に基づいて、データをグループに配分するか否かを判定する。このため、評価サーバ300は、グループに配分済みの指紋データを、ユーザの指紋データを追加登録する場合や削除する場合、あるいは生体情報の経年変化を考慮して再配分することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、その他の実施例にて実施されても良い。そこで、以下では、その他の実施例について説明する。
例えば、上記の実施例では、開示の技術を指紋認証に適用した場合を説明したが、開示の技術はこれに限定されるものではない。他の例としては、開示の技術は、声紋や手のひらの静脈パターン、眼球の虹彩など、指紋以外の生体情報を用いる生体認証、入力音声に最も類似の音声データを検索する音声検索、入力画像に最も類似の画像データを検索する画像検索などに適用されても良い。
また、例えば、上記の実施例では、生成部132が、算出部133によって算出された照合時間から最小又は最大の照合時間が算出された指紋データを繰り返し特定することで、複数の疑似クエリを生成する場合を説明した。しかし、開示の技術はこれに限定されるものではない。例えば、生成部132は、指紋テーブル121に記憶された指紋データから複数の指紋データをランダムに選択し、選択した各々の指紋データを疑似クエリとして生成しても良い。
また、上記の実施例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上述文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図1,11,13に示した評価サーバ100,200.300の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、評価サーバ100,200.300の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
図15は、評価プログラムを実行するコンピュータの一例を示す図である。図15に示すように、コンピュータ400は、各種演算処理を実行するCPU401と、ユーザからデータの入力を受け付ける入力装置402と、モニタ403とを有する。また、コンピュータ400は、記憶媒体からプログラム等を読み取る媒体読み取り装置404と、他の装置と接続するためのインターフェース装置405と、他の装置と無線により接続するための無線通信装置406とを有する。また、コンピュータ400は、各種情報を一時記憶するRAM(Random Access Memory)407と、ハードディスク装置408とを有する。また、各装置401〜408は、バス409に接続される。
ハードディスク装置408には、図1,11,13に示した生成部132,211、算出部133,212,321及び配分部135,324との各処理部と同様の機能を有する診療情報入力プログラムが記憶される。また、ハードディスク装置408には、評価プログラムを実現するための各種データが記憶される。
CPU401は、ハードディスク装置408に記憶された各プログラムを読み出して、RAM407に展開して実行することで、各種の処理を行う。また、これらのプログラムは、コンピュータを図1,11,13に示した生成部132,211、算出部133,212,321及び配分部135,324として機能させることができる。
なお、上記の評価プログラムは、必ずしもハードディスク装置408に記憶されている必要はない。例えば、コンピュータが読み取り可能な記録媒体に記憶されたプログラムを、コンピュータ400が読み出して実行するようにしても良い。コンピュータが読み取り可能な記録媒体は、例えば、CD−ROMやDVDディスク、USB(Universal Serial Bus)メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等に接続された装置にこのプログラムを記憶させておき、コンピュータ400がこれらからプログラムを読み出して実行するようにしても良い。
100,200,300 評価サーバ
110 通信制御部
120,310 記憶部
121 指紋テーブル
122 照合時間テーブル
123 配分テーブル
130,210,320 制御部
131 取得部
132,211 生成部
133,212,321 算出部
134,322 特徴量算出部
135,324 配分部
311 疑似クエリテーブル
323 判定部
400 コンピュータ
401 CPU
402 入力装置
403 モニタ
404 媒体読み取り装置
405 インターフェース装置
406 無線通信装置
407 RAM
408 ハードディスク装置
409 バス

Claims (21)

  1. データベース内のデータから、当該データと照合される照合データを生成する生成部と、
    生成された照合データと前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を前記データごとに算出する算出部と、
    算出された照合時間に基づいて、前記データベース内の複数のデータをグループに配分する配分部と
    を備えることを特徴とする評価サーバ。
  2. 前記生成部は、前記データを正規化するための複数パターンの前記照合データを生成し、
    前記算出部は、前記データベース内の複数のデータのそれぞれと、前記複数パターンの照合データのそれぞれとの照合にかかる照合時間を、前記データごとに算出することを特徴とする請求項1に記載の評価サーバ。
  3. 複数の照合時間から特徴量を算出する特徴量算出部をさらに備え、
    前記生成部は、前記照合データを複数生成し、
    前記算出部は、生成された複数の照合データのそれぞれと、前記データベース内の複数のデータのそれぞれとの照合にかかる複数の照合時間を前記データごとに算出し、
    前記特徴量算出部は、前記データごとに、算出された複数の照合時間から特徴量を算出し、
    前記配分部は、算出された特徴量同士を比較し、特徴量が近いデータほど特徴量が遠いデータに比べて異なるグループに配分することを特徴とする請求項1に記載の評価サーバ。
  4. 前記算出部によって算出された照合時間のうち最小又は最大の照合時間が算出されたデータを前記生成部に特定させ、前記生成部によって特定されたデータと、前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を当該データごとに算出させる制御部をさらに備え、
    前記生成部は、算出された照合時間のうち最小又は最大の照合時間が算出されたデータを特定し、
    前記算出部は、特定されたデータと、前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を当該データごとに算出し、
    前記制御部は、前記算出部によって所定数の照合時間が算出されるまで、前記算出部によって算出された照合時間のうち最小又は最大の照合時間が算出されたデータを前記生成部に特定させ、前記生成部によって特定されたデータと、前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を当該データごとに算出させ、
    前記特徴量算出部は、算出された所定数の照合時間を用いて、前記データごとに特徴量を算出することを特徴とする請求項3に記載の評価サーバ。
  5. 前記特徴量算出部は、前記特徴量として、前記照合時間の平均値と前記照合時間の分散値とを前記データごとに算出し、
    前記配分部は、算出された平均値及び分散値を2軸とする座標上に前記複数のデータを配置し、当該座標上で前記データのクラスタリングを行い、クラスタに含まれる前記データの数が所定数になった場合に、当該クラスタに含まれるデータをグループに配分することを特徴とする請求項3に記載の評価サーバ。
  6. 算出された第1照合時間と、前回配分した際に生成された照合データと前記データベース内の複数のデータのそれぞれとの照合にかかる第2照合時間とを比較し、比較結果に基づいて、前記データを前記グループに配分するか否かを判定する判定部をさらに備え、
    前記配分部は、前記データを前記グループに配分すると判定された場合に、当該データを当該グループに配分することを特徴とする請求項1〜5のいずれか一つに記載の評価サーバ。
  7. 前記生成部は、前記データベース内の複数のデータに含まれる各要素の平均値を算出し、算出した平均値を各要素に含む平均データを生成し、
    前記算出部は、生成された平均データと前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を前記データごとに算出することを特徴とする請求項1〜5のいずれか一つに記載の評価サーバ。
  8. コンピュータに、
    データベース内のデータから、当該データと照合される照合データを生成し、
    生成された照合データと前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を前記データごとに算出し、
    算出された照合時間に基づいて、前記データベース内の複数のデータをグループに配分する
    各処理を実行させることを特徴とする評価プログラム。
  9. 前記生成する処理は、前記データを正規化するための複数パターンの前記照合データを生成し、
    前記照合時間を算出する処理は、前記データベース内の複数のデータのそれぞれと、前記複数パターンの照合データのそれぞれとの照合にかかる照合時間を、前記データごとに算出することを特徴とする請求項8に記載の評価プログラム。
  10. 複数の照合時間から特徴量を算出する処理を前記コンピュータにさらに実行させ、
    前記生成する処理は、前記照合データを複数生成し、
    前記照合時間を算出する処理は、生成された複数の照合データのそれぞれと、前記データベース内の複数のデータのそれぞれとの照合にかかる複数の照合時間を前記データごとに算出し、
    前記特徴量を算出する処理は、前記データごとに、算出された複数の照合時間から特徴量を算出し、
    前記配分する処理は、算出された特徴量同士を比較し、特徴量が近いデータほど特徴量が遠いデータに比べて異なるグループに配分することを特徴とする請求項8に記載の評価プログラム。
  11. 前記生成する処理は、算出された照合時間のうち最小又は最大の照合時間が算出されたデータを特定し、
    前記照合時間を算出する処理は、特定されたデータと、前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を当該データごとに算出し、
    前記照合時間を算出する処理によって所定数の照合時間が算出されるまで、前記照合時間を算出する処理によって算出された照合時間のうち最小又は最大の照合時間が算出されたデータを前記生成する処理に特定させ、前記生成する処理によって特定されたデータと、前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を当該データごとに算出させ、
    前記特徴量を算出する処理は、算出された所定数の照合時間を用いて、前記データごとに特徴量を算出することを特徴とする請求項10に記載の評価プログラム。
  12. 前記特徴量を算出する処理は、前記特徴量として、前記照合時間の平均値と前記照合時間の分散値とを前記データごとに算出し、
    前記配分する処理は、算出された平均値及び分散値を2軸とする座標上に前記複数のデータを配置し、当該座標上で前記データのクラスタリングを行い、クラスタに含まれる前記データの数が所定数になった場合に、当該クラスタに含まれるデータをグループに配分することを特徴とする請求項10に記載の評価プログラム。
  13. 算出された第1照合時間と、前回配分した際に生成された照合データと前記データベース内の複数のデータのそれぞれとの照合にかかる第2照合時間とを比較し、比較結果に基づいて、前記データを前記グループに配分するか否かを判定する処理を前記コンピュータにさらに実行させ、
    前記配分する処理は、前記データを前記グループに配分すると判定された場合に、当該データを当該グループに配分することを特徴とする請求項8〜12のいずれか一つに記載の評価プログラム。
  14. 前記生成する処理は、前記データベース内の複数のデータに含まれる各要素の平均値を算出し、算出した平均値を各要素に含む平均データを生成し、
    前記照合時間を算出する処理は、生成された平均データと前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を前記データごとに算出することを特徴とする請求項8〜12のいずれか一つに記載の評価プログラム。
  15. コンピュータによって実行される評価方法であって、
    前記コンピュータが、
    データベース内のデータから、当該データと照合される照合データを生成し、
    生成された照合データと前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を前記データごとに算出し、
    算出された照合時間に基づいて、前記データベース内の複数のデータをグループに配分する
    各処理を実行することを特徴とする評価方法。
  16. 前記生成する処理は、前記データを正規化するための複数パターンの前記照合データを生成し、
    前記照合時間を算出する処理は、前記データベース内の複数のデータのそれぞれと、前記複数パターンの照合データのそれぞれとの照合にかかる照合時間を、前記データごとに算出することを特徴とする請求項15に記載の評価方法。
  17. 複数の照合時間から特徴量を算出する処理を前記コンピュータにさらに実行させ、
    前記生成する処理は、前記照合データを複数生成し、
    前記照合時間を算出する処理は、生成された複数の照合データのそれぞれと、前記データベース内の複数のデータのそれぞれとの照合にかかる複数の照合時間を前記データごとに算出し、
    前記特徴量を算出する処理は、前記データごとに、算出された複数の照合時間から特徴量を算出し、
    前記配分する処理は、算出された特徴量同士を比較し、特徴量が近いデータほど特徴量が遠いデータに比べて異なるグループに配分することを特徴とする請求項15に記載の評価方法。
  18. 前記生成する処理は、算出された照合時間のうち最小又は最大の照合時間が算出されたデータを特定し、
    前記照合時間を算出する処理は、特定されたデータと、前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を当該データごとに算出し、
    前記照合時間を算出する処理によって所定数の照合時間が算出されるまで、前記照合時間を算出する処理によって算出された照合時間のうち最小又は最大の照合時間が算出されたデータを前記生成する処理に特定させ、前記生成する処理によって特定されたデータと、前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を当該データごとに算出させ、
    前記特徴量を算出する処理は、算出された所定数の照合時間を用いて、前記データごとに特徴量を算出することを特徴とする請求項17に記載の評価方法。
  19. 前記特徴量を算出する処理は、前記特徴量として、前記照合時間の平均値と前記照合時間の分散値とを前記データごとに算出し、
    前記配分する処理は、算出された平均値及び分散値を2軸とする座標上に前記複数のデータを配置し、当該座標上で前記データのクラスタリングを行い、クラスタに含まれる前記データの数が所定数になった場合に、当該クラスタに含まれるデータをグループに配分することを特徴とする請求項17に記載の評価方法。
  20. 算出された第1照合時間と、前回配分した際に生成された照合データと前記データベース内の複数のデータのそれぞれとの照合にかかる第2照合時間とを比較し、比較結果に基づいて、前記データを前記グループに配分するか否かを判定する処理を前記コンピュータがさらに実行し、
    前記配分する処理は、前記データを前記グループに配分すると判定された場合に、当該データを当該グループに配分することを特徴とする請求項15〜19のいずれか一つに記載の評価方法。
  21. 前記生成する処理は、前記データベース内の複数のデータに含まれる各要素の平均値を算出し、算出した平均値を各要素に含む平均データを生成し、
    前記照合時間を算出する処理は、生成された平均データと前記データベース内の複数のデータのそれぞれとの照合にかかる照合時間を前記データごとに算出することを特徴とする請求項15〜19のいずれか一つに記載の評価方法。
JP2014504607A 2012-03-16 2012-03-16 評価サーバ、評価プログラム及び評価方法 Expired - Fee Related JP5954407B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/056941 WO2013136528A1 (ja) 2012-03-16 2012-03-16 評価サーバ、評価プログラム及び評価方法

Publications (2)

Publication Number Publication Date
JPWO2013136528A1 true JPWO2013136528A1 (ja) 2015-08-03
JP5954407B2 JP5954407B2 (ja) 2016-07-20

Family

ID=49160493

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014504607A Expired - Fee Related JP5954407B2 (ja) 2012-03-16 2012-03-16 評価サーバ、評価プログラム及び評価方法

Country Status (3)

Country Link
US (1) US20150006534A1 (ja)
JP (1) JP5954407B2 (ja)
WO (1) WO2013136528A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015170101A (ja) 2014-03-06 2015-09-28 富士通株式会社 生体認証装置、方法及びプログラム
JP6318980B2 (ja) 2014-08-26 2018-05-09 富士通株式会社 データ配置プログラム、データ配置方法およびデータ配置装置
JP6435939B2 (ja) * 2015-03-18 2018-12-12 富士通株式会社 データ分類プログラム、データ分類方法およびデータ分類装置
JP2016194755A (ja) 2015-03-31 2016-11-17 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US11443055B2 (en) * 2019-05-17 2022-09-13 Microsoft Technology Licensing, Llc Information sharing in a collaborative, privacy conscious environment
US11546334B2 (en) * 2019-07-29 2023-01-03 Citrix Systems, Inc. Client device configuration for remote digital workspace access

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268104A (ja) * 2005-03-22 2006-10-05 Nec Corp 指紋照合システム、指紋照合処理装置および指紋照合処理方法
JP2010244287A (ja) * 2009-04-06 2010-10-28 Sony Corp 待ち行列管理装置、待ち行列管理方法、プログラムおよび生体認証管理システム
WO2011111104A1 (ja) * 2010-03-10 2011-09-15 富士通株式会社 生体認証システムの負荷分散装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653249B2 (en) * 2004-11-17 2010-01-26 Eastman Kodak Company Variance-based event clustering for automatically classifying images
US7930573B2 (en) * 2007-09-18 2011-04-19 International Business Machines Corporation Workload apportionment according to mean and variance
US8892558B2 (en) * 2007-09-26 2014-11-18 International Business Machines Corporation Inserting data into an in-memory distributed nodal database
US9853986B2 (en) * 2007-12-28 2017-12-26 Entit Software Llc Clustering event data by multiple time dimensions
US8621476B2 (en) * 2008-12-15 2013-12-31 Korea Advanced Institute Of Science And Technology Method and apparatus for resource management in grid computing systems
US9619474B2 (en) * 2011-03-31 2017-04-11 EMC IP Holding Company LLC Time-based data partitioning

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268104A (ja) * 2005-03-22 2006-10-05 Nec Corp 指紋照合システム、指紋照合処理装置および指紋照合処理方法
JP2010244287A (ja) * 2009-04-06 2010-10-28 Sony Corp 待ち行列管理装置、待ち行列管理方法、プログラムおよび生体認証管理システム
WO2011111104A1 (ja) * 2010-03-10 2011-09-15 富士通株式会社 生体認証システムの負荷分散装置

Also Published As

Publication number Publication date
WO2013136528A1 (ja) 2013-09-19
US20150006534A1 (en) 2015-01-01
JP5954407B2 (ja) 2016-07-20

Similar Documents

Publication Publication Date Title
JP5954407B2 (ja) 評価サーバ、評価プログラム及び評価方法
CN109842611B (zh) 身份验证方法、装置、计算机设备和存储介质
JP4952125B2 (ja) 負荷分散装置
US9208302B2 (en) Multi-factor authentication using biometric data
US8682297B2 (en) Seamlessly authenticating device users
US10848466B2 (en) Method, server and storage medium for data distribution
US11586714B2 (en) Verification request authentication machine
WO2013051019A4 (en) Evolved biometric system with enhanced feature and method for the same
WO2018145546A1 (zh) 一种鉴权方法、装置及存储介质
US9721087B1 (en) User authentication
JP2015170101A (ja) 生体認証装置、方法及びプログラム
US9565019B1 (en) Secure and anonymous distributed authentication
KR20190095067A (ko) 블록체인 기반의 머클트리를 이용한 정보 관리 방법, 이를 이용한 서버 및 단말
CN113779536A (zh) 一种用户访问方法、系统、电子设备及介质
WO2020057226A1 (zh) 算法下载方法、设备以及相关产品
US11711216B1 (en) Systems and methods for privacy-secured biometric identification and verification
CN112364307B (zh) 软件授权方法及相关设备
JP6411321B2 (ja) 認証手段選択装置、認証手段選択方法、およびプログラム
US20200028847A1 (en) Authentication method and authentication device
JP5458713B2 (ja) 認証装置、認証方法、認証プログラム
US20200242225A1 (en) Biometric Authentication Using Molecular Snapshots
CN107517177B (zh) 接口授权的方法和装置
US20180026967A1 (en) Information processing apparatus, security system, and non-transitory computer readable medium
CN115632886B (zh) 基于区块链的电子证照获取方法、系统及装置
US20240106823A1 (en) Sharing a biometric token across platforms and devices for authentication

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151228

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: 20160517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160530

R150 Certificate of patent or registration of utility model

Ref document number: 5954407

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees