JP2012178095A - 高精度な類似検索システム - Google Patents

高精度な類似検索システム Download PDF

Info

Publication number
JP2012178095A
JP2012178095A JP2011041268A JP2011041268A JP2012178095A JP 2012178095 A JP2012178095 A JP 2012178095A JP 2011041268 A JP2011041268 A JP 2011041268A JP 2011041268 A JP2011041268 A JP 2011041268A JP 2012178095 A JP2012178095 A JP 2012178095A
Authority
JP
Japan
Prior art keywords
pivot
data
score
registration
learning
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
JP2011041268A
Other languages
English (en)
Other versions
JP5465689B2 (ja
Inventor
Takao Murakami
隆夫 村上
Kenta Takahashi
健太 高橋
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2011041268A priority Critical patent/JP5465689B2/ja
Priority to EP12153718A priority patent/EP2492826A1/en
Priority to US13/369,634 priority patent/US20120221574A1/en
Priority to CN2012100288861A priority patent/CN102693258A/zh
Publication of JP2012178095A publication Critical patent/JP2012178095A/ja
Application granted granted Critical
Publication of JP5465689B2 publication Critical patent/JP5465689B2/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/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • 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/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes

Landscapes

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

Abstract

【課題】高精度な類似検索を実現する。
【解決手段】
pivot決定部によって登録用データからpivotを決定し、生データを取得し、前記生データから特徴量を抽出し、前記特徴量同士の距離或いは類似度としてスコアを計算し、前記pivotに対する前記スコアを用いて索引用ベクトルを生成し、前記索引用ベクトル同士の距離或いは類似度としてΔスコアを計算し、学習用データを用いて、回帰係数を含むnon−pivot毎のパラメータを学習し、検索用データと前記non−pivotとの前記Δスコアと前記回帰係数を用いて、ロジスティック回帰により事後確率の大きい順に前記non−pivotの選択順序を決定し、前記検索用データと前記登録用データとの前記スコアを基に、検索結果を出力する。
【選択図】 図1

Description

本発明は、入力された非構造化データに類似するものを検索する方法およびシステムに関する。
入力された画像、動画、音楽、文書、バイナリデータ、生体情報などの非構造化データに対して、それに類似する非構造化データを検索することを類似検索と呼ぶ。類似検索は、一般には、生の非構造化データ(以後、生データと呼ぶ)から、距離計算(或いは類似度計算)のために用いられる特徴量と呼ばれる情報を抽出し、特徴量同士の不一致度合いを示す距離が小さいもの(或いは、特徴量同士の一致度合いを示す類似度が大きいもの)ほど類似していると見なすことで行なわれる。特徴量同士の距離(或いは類似度)をスコアと呼ぶ。
例えば、検索時に入力された生データ(以後、検索用データと呼ぶ)とデータベースに登録されている生データ(以後、登録用データと呼ぶ)との距離(或いは類似度)を計算し、距離が小さい順(或いは類似度が大きい順)にk個登録用データを選択し、それらに関する情報を検索結果として出力する方法(k−Nearest Neighbor Search)や、距離(或いは類似度)が閾値rより小さい(或いは大きい)登録用データに関する情報を検索結果として出力する方法(Range Search)がある。
このとき、登録用データの総数をNとすると、全ての登録用データに対してスコアを計算する場合、N回のスコア計算が必要となる。一般に、スコア計算には大きな時間が必要とされるので、登録用データ数Nが増加すれば、それにほぼ比例して検索時間がかかるようになる。これに対して、あらかじめ登録用データ同士のスコアを計算しておき、これを用いてスコアを計算する登録用データの選択順序を決定し、途中で登録用データとのスコアの計算を止めることで、スコアを計算する回数を削減する距離索引(Distance−based Indexing)が提案されている。
例えば、E.CHAVEZ,K.FIGUEROA and G.NAVARRO,“Effective Proximity Retrieval by Ordering Permutations,”IEEE Trans. on Pattern Analysis and Machine Intelligence,Vol.30,No.9,pp.1647−1658(2008)(非特許文献1)では、検索前にN個の登録用データから、例えばランダムに、M個(M<N)の登録用データ(以後、pivotと呼ぶ)を選択し、各登録用データと各pivotとの距離を計算し、これを用いて検索時に用いるベクトル(以後、第1の索引用ベクトルと呼ぶ)を登録用データ毎に求めておき、検索時には入力された検索用データと各pivotとの距離を計算して検索用データの第2の索引用ベクトルを求めた後、第1と第2の索引用ベクトル同士の距離の小さい順となるように残りの登録用データ(以後、non−pivotと呼ぶ)の選択順序を決定している。索引用ベクトルとして、非特許文献1では距離の小さい順にpivotのIDを並べたベクトルを求めている。
E.CHAVEZ,K.FIGUEROA and G.NAVARRO,"Effective Proximity Retrieval by Ordering Permutations,"IEEE Trans. on Pattern Analysis and Machine Intelligence,Vol.30,No.9,pp.1647−1658(2008)
非特許文献1では、第1と第2の索引用ベクトル同士の距離の小さい順となるようにnon−pivotとの選択順序を決定している。しかしながら、この方法では、途中でnon−pivotとのスコアの計算を止めたときに、検索用データからのスコアが閾値rより小さいにも関わらず、スコアが計算されずに終わる(即ち、検索漏れとなる)non−pivotの個数の期待値を減らすという観点、即ち、検索の精度という観点で改良の余地があった。
本発明の目的は、スコアが計算されずに検索漏れとなるnon−pivotの個数の期待値を理論的に最小化することにある。
上記目的を達成するために、登録用データからpivotを決定するpivot決定部と、生データを取得する生データ取得部と、前記生データから特徴量を抽出する特徴量抽出部と、前記特徴量同士の距離或いは類似度としてスコアを計算するスコア計算部と、前記pivotに対する前記スコアを用いて索引用ベクトルを生成する索引用ベクトル生成部と、前記索引用ベクトル同士の距離或いは類似度としてΔスコアを計算するΔスコア計算部と、学習用データを用いて、回帰係数を含むnon−pivot毎のパラメータを学習するnon−pivot毎パラメータ学習部と、入力された検索用データと前記non−pivotとの前記Δスコアと前記回帰係数を用いて、ロジスティック回帰により事後確率の大きい順に前記non−pivotの選択順序を決定するnon−pivot選択順序決定部と、前記検索用データと前記登録用データとの前記スコアを基に、検索結果を出力する検索結果出力部と、前記登録用データの前記特徴量と、前記登録用データのうちどれが前記pivotであるかが記されたpivot情報と、前記non−pivot毎の前記索引用ベクトルから構成されるインデックスと、前記non−pivot毎のパラメータを保持するデータベースを持つことを特徴とする。
本発明によれば、non−pivot毎の回帰係数を用いて、ロジスティック回帰により、事後確率の大きい順にnon−pivotの選択順序を決定する。このようにすることで、検索用データからのスコアが閾値rより小さいにも関わらず、スコアが計算されずに検索漏れとなるnon−pivotの個数の期待値を理論的に最小化することが可能となる。その結果、精度が大幅に向上するという効果が得られる。
本発明の第一の実施形態の機能構成を示すブロック図である。 本発明の第一、第二の実施形態のハードウェア構成を示すブロック図である。 本発明の第一の実施形態の登録処理を示すフロー図である。 本発明の第一、第二の実施形態の補助情報生成処理を示すフロー図である。 本発明の第一の実施形態の検索処理を示すフロー図である。 特徴量空間とインデックスを示す概略図である。 本発明の第二の実施形態の機能構成を示すブロック図である。 本発明の第二の実施形態の登録処理を示すフロー図である。 本発明の第二の実施形態の検索処理を示すフロー図である。
以下、図面を参照して、1つ目の実施形態について説明する。
本実施形態の類似検索システムは、ユーザが画像を入力し、システムがサーバ端末内のデータベースから類似する画像を検索する類似画像検索システムである。画像の代わりに動画、音楽、文書、バイナリデータなどの非構造化データを用いるようにしても良い。本実施形態の類似検索システムでは、画像の特徴量としてカラーヒストグラムを用い、スコアとして特徴量同士のユークリッド距離を用いる。
本実施形態の類似検索システムでは、あらかじめN個の登録データからM個をpivotとして選択する。pivotの選択方法としては、例えばランダムに選ぶ方法がある。次に、残りの各登録データ(各non−pivot)と各pivotとのスコアを計算し、これを基に検索時に用いる第1の索引用ベクトルをnon−pivot毎に求める。検索時には、入力された検索用データと各pivotとのスコアを計算し、これを基に検索用データの第2の索引用ベクトルを求める。索引用ベクトルは、各non−pivotと検索用データの位置関係を、直接スコアを求めることなく知る手がかりとなるベクトルである。一般に、検索用データと各登録用データとのスコア計算には大きな時間が必要とされるが、索引用ベクトル同士の距離(或いは類似度)(以後、Δスコアと呼ぶ)を用いてnon−pivotの選択順序を決定し、non−pivotとのスコア計算をT(<N−M)回行った後(Tは、あらかじめシステム管理者などが定めた上限値)、non−pivotとのスコア計算を途中で止めることで、スコアを計算する回数を削減する(即ち高速に検索を行う)ことが可能となる。
索引用ベクトルとしては、各pivotとのスコアで構成されるベクトル(以後、スコアベクトルと呼ぶ)であっても良いし、距離(或いは類似度)の小さい順(或いは大きい順)にpivotのIDを並べたベクトル(以後、順列ベクトルと呼ぶ)であっても良い。各non−pivotの第1の索引用ベクトルをまとめたものを、インデックスと呼ぶ。
図6に、特徴量空間における検索用データQと各登録用データX、X、・・・、Xの例を示す。但し、X、X、・・・、Xはpivot、XM+1、XM+2、・・・、Xはnon−pivotを表す。ここでは2つのクラスタが形成されており、お互いのクラスタは大きく離れている。また、特徴量の次元数は非常に高く、特徴量同士のスコアを計算するのに大きな時間がかかる。
図6(a1)(a2)に、索引用ベクトルとしてそれぞれスコアベクトル、順列ベクトルを用いた場合における検索用データの第2の索引用ベクトルと、インデックスの例を示す。但し、スコアとしては特徴量同士のユークリッド距離を用いている。
例えば、図6(a1)では、XM+1とXとのスコアは70となっており、XM+1のスコアベクトルSM+1は、SM+1=(70,28,1053,・・・,43)となっている。また、図6(a2)では、XM+1と各pivotとのスコアの中で、最も小さいスコアを実現したpivotがXとなっており、XM+1のは、TM+1=(X,XM−1,・・・,Xとなっている。
また、Δスコア(索引用ベクトル同士の距離或いは類似度)としては、索引用ベクトルとしてスコアベクトルを用いた場合では、例えば市街地距離、ユークリッド距離などが考えられ、順列ベクトルを用いた場合では、例えばSpearman Rhoなどが考えられる。また、上述した距離を距離としてとり得る値の最大値から差し引いたものなどを、類似度として用いるようにしても良い。
例えば、索引用ベクトルとしてスコアベクトルを用い、Δスコアとしてユークリッド距離を用いた場合、検索用データのスコアベクトルS、登録用データXのスコアベクトルSとのユークリッド距離をD(S,S)とすると、
Figure 2012178095
で表される。ここで、S(z)はスコアベクトルSにおけるz番目の要素を表す。図6(a1)の場合では、D(S,SM+1)=(78−70)+(95−28)+・・・+(39−43)と計算できる。
また、索引用ベクトルとして順列ベクトルを用い、ΔスコアとしてSpearman Rhoを用いた場合、検索用データの順列ベクトルT、登録用データXの順列ベクトルTとのSpearman RhoをDρ(T,T)とすると、
Figure 2012178095
で表される。ここで、T(z)は順列ベクトルTにおけるz番目の要素の添え字の数字を表す。例えば、T=(X,X,X,・・・,Xであれば、T(1)=2、T(2)=M、T(3)=1、・・・、T(M)=3である。また、T −1(i)は要素Xが順列ベクトルTの中で何番目の要素であるかを表す。例えば、T=(X,X,X,・・・,Xであれば、T −1(1)=2、T −1(2)=3、T −1(3)=M、・・・、T −1(M)=1である。図6(a2)の場合では、Dρ(T,TM+1)=(1−3)+(2−1)+・・・+(M−M)と計算できる。
本実施形態の類似検索システムの第1の特徴は、各non−pivotの索引用ベクトルサイズ(索引用ベクトルの次元数)を、あらかじめ用意しておいたデータ(学習用データ)を用いて、検索前に一意に決定(学習)する点にある。但し、索引用ベクトルサイズを学習する方法の詳細については、後述する。
図6(b1)(b2)に、索引用ベクトルとしてそれぞれスコアベクトル、順列ベクトルを用いた場合において、学習したnon−pivot毎の索引用ベクトルサイズの分だけ、索引用ベクトルを持つようにしたときのインデックスの例を示す。このとき、索引用ベクトルとしてスコアベクトルを用いる場合は、スコアベクトルとしてはスコアの小さい順、或いは大きい順にスコアベクトルサイズ分の要素を持つように配列し直し、該当するスコアがどのpivotに対するものかが分かるように、同じ長さの順列ベクトルも保持するようにしておく。
例えば、図6(b1)では、XM+1のスコアベクトルサイズは3と学習されており、スコアベクトルSM+1=(28,43,70)を順列ベクトルTM+1=(X,X,Xと合わせて保持しておく。図6(b2)では、XM+1の順列ベクトルサイズは2と学習されており、順列ベクトルTM+1は、TM+1=(X,Xとなっている。図6(b1)(b2)において、塗り潰されている箇所はデータベースに保存しない。
このように、本実施例では、学習用データを用いて、non−pivot毎に索引用ベクトルサイズを学習し、各non−pivotの索引用ベクトルは、当該non−pivotの索引用ベクトルサイズの分だけ保存する。このようにすることで、non−pivot毎に索引用ベクトルサイズを減らすことが可能となる。その結果、データベースに保存するインデックスのサイズを減らすことができるため、システムの軽量化が実現できるという効果が得られる。但し、索引用ベクトルサイズを学習する方法の詳細については、後述する。
尚、この場合におけるΔスコアは、索引用ベクトルとしてスコアベクトルを用い、Δスコアとしてユークリッド距離を用いた場合、検索用データのスコアベクトルS、登録用データXのスコアベクトルS(順列ベクトルはT、スコアベクトルサイズはZ)とのユークリッド距離をD(S,S,T,Z)とすると、
Figure 2012178095
で表される。図6(b1)の場合では、D(S,SM+1,T,Z)=(95−28)+(39−43)+・・・+(78−70)と計算できる。
また、索引用ベクトルとして順列ベクトルを用い、ΔスコアとしてSpearman Rhoを用いた場合、検索用データの順列ベクトルT、登録用データXの順列ベクトルT(順列ベクトルサイズはZ)とのSpearman RhoをDρ(T,T,Z)とすると、
Figure 2012178095
で表される。図6(a2)の場合では、Dρ(T,TM+1,Z)=(1−3)+(2−1)と計算できる。
このように、本実施例では検索用データとnon−pivotとの、索引用ベクトルサイズ分のΔスコア(即ち、Z次元ベクトル同士の距離)を計算する。このようにすることで、pivotの数(M個)分のΔスコア(即ち、M次元ベクトル同士の距離)を計算する場合と比べて、Δスコアの計算時間が短くて済む。その結果、速度が向上するという効果が得られる。
本実施形態の類似検索システムの第2の特徴は、このようにして各non−pivotに対するΔスコアΔSq,M+1、・・・、Δq,Nが得られた後、ロジスティック回帰を用いて、検索用データからのスコアsq,iが閾値rより小さいという事後確率P(sq,i<r|ΔSq,i)(M+1≦i≦N)の大きい順にnon−pivotの選択順序を決定する点にある。事後確率P(sq,i<r|ΔSq,i)は、ベイズの定理を用いて以下のように変形できる。
Figure 2012178095
但し、σ( )はロジスティックシグモイド関数であり、aは、
Figure 2012178095
である。ロジスティックシグモイド関数σ( )は単調増加の関数であるため、aの大きい順にnon−pivotの選択順序を決定すれば、事後確率P(sq,i<r|ΔSq,i)の大きい順にnon−pivotの選択順序を決定できることになる。aは、ロジスティック回帰を用いて求めることができる。ロジスティック回帰では、aを、
Figure 2012178095
と近似的に求める。wi,1とwi,0は、non−pivot毎のロジスティック回帰の回帰係数である(M+1≦i≦N)。回帰係数としては、non−pivot共通の値を用いる方法も考えられるが、回帰係数は厳密にはnon−pivot毎に異なる値をとるため、non−pivot毎の回帰係数を用いた方が、aをより厳密に求めることが可能となる。また、数7より、aはΔスコアΔSq,iに対して1回の掛け算と1回の足し算を行うことで近似的に求めることができるので、aの計算にはほとんど時間がかからない。回帰係数は、索引用ベクトルサイズと同様、あらかじめ用意しておいたデータ(学習用データ)を用いて、検索前に一意に決定(学習)しておく。但し、回帰係数を学習する方法の詳細については、後述する。
ここで、各non−pivotに対するΔスコアΔSq,M+1、・・・、ΔSq,Nの集合をΔとし、その後、選択順序がe(1≦e≦N−M)番目と決定されたnon−pivotをXm(e)(M+1≦m(e)≦N)とすると、non−pivotとのスコアをT(<N−M)回計算した後、検索用データからのスコアが閾値rより小さいにも関わらず、スコアが計算されずに終わる(即ち、検索漏れとなる)non−pivotの個数の期待値は、
Figure 2012178095
と表せる。但し、2行目から3行目の近似は、non−pivotXm(e)の事後確率に最も大きな影響を与えるのは、Xm(e)に対するΔスコアΔSq,m(e)であることを用いている。数8は、まだスコアの計算を行っていないnon−pivotXm(e)の事後確率P(sq,m(e)<r|ΔSq,m(e))の総和で近似できているが、この総和は事後確率P(sq,m(e)<r|ΔSq,m(e))の大きい順にnon−pivotとのスコアをT回計算したときに最小化することができる。
従って、本実施例では、non−pivot毎の回帰係数を用いて、ロジスティック回帰により、事後確率の大きい順にnon−pivotの選択順序を決定するが、このようにすることで、検索用データからのスコアが閾値rより小さいにも関わらず、スコアが計算されずに検索漏れとなるnon−pivotの個数の期待値を理論的に最小化することが可能となる。その結果、精度が大幅に向上するという効果が得られる。但し、回帰係数を学習する方法の詳細については、後述する。
図1に本実施形態の類似検索システムの構成例を示す。本実施形態では、生データは画像である。
このシステムは、ユーザから取得した登録情報をサーバ端末へ送信する登録端末100と、登録情報を保存し、登録情報から補助情報を生成し、登録情報と補助情報を用いて検索用の生データに対する類似検索を行なうサーバ端末200と、ユーザが入力した検索用の生データをサーバ端末200に送信するクライアント端末300と、ネットワーク400から構成される。
登録端末100とサーバ端末200とクライアント端末300は、それぞれ1台でも良いし、複数台存在しても良い。また、登録端末100はサーバ端末200と同一の端末であっても良いし、クライアント端末300と同一の端末であっても良い。また、登録端末100は無くても良い。また、サーバ端末200はクライアント端末300と同一の端末であっても良い。ネットワーク400は、WANやLANなどのネットワーク、USBやIEEE1394などを用いた機器間の通信、或いは携帯電話網やBlueToothなどの無線通信を用いても良い。
例えば、登録端末100は企業内の複数のPC、サーバ端末200は企業が運用するデータセンタ内の1台のサーバ、クライアント端末300は複数のユーザの個人PC、ネットワーク400はインターネットとする構成にし、企業内の従業員が画像の登録を行うようにする運用が考えられる。このとき、登録端末100をデータセンタ内のサーバにして、サーバ管理者が画像の登録を行うようにしても良い。または、登録端末100をユーザの個人PCにして、ユーザが画像の登録を行うようにしても良い。または、登録端末100を持たずに、サーバ端末200がインターネットから自動的に収集するようにしても良い。または、登録端末100とサーバ端末200とクライアント端末300をユーザの個人PCにして、個人PC内で画像の登録、補助情報生成、検索を行うようにしても良い。
登録端末100は、生データを取得する生データ取得部101と、通信I/F102とから構成される。
サーバ端末200は、N個の登録用データの中からM個のpivotを決定するpivot決定部201と、生データから特徴量を抽出する特徴量抽出部202と、特徴量同士の距離(或いは類似度)としてスコアを計算するスコア計算部203と、non−pivotまたは検索用データのpivotに対するスコアを用いて索引用ベクトルを生成する索引用ベクトル生成部204と、索引用ベクトル同士の距離(或いは類似度)(以後、Δスコアと呼ぶ)を計算するΔスコア計算部205と、学習用データを用いて、non−pivot毎のパラメータを学習するnon−pivot毎パラメータ学習部206と、入力された検索用データとnon−pivotとのΔスコアを用いて前記non−pivotの選択順序を決定するnon−pivot選択順序決定部207と、検索用データと登録用データとのスコアを基に、検索結果を出力する検索結果出力部208と、通信I/F209と、データベース210とから構成される。
データベース210は、マスタデータ220を保持する。マスタデータ220は、各登録ユーザの登録情報230と、補助情報240を保持する。登録情報230は、登録用データ毎に、登録用データID231と、生データ232と、特徴量233を保持する。補助情報240は、登録用データのうちどれがpivotであるかが記されたpivot情報241と、インデックス242と、non−pivot毎のパラメータ250を保持する。インデックス242は、non−pivot毎に、索引用ベクトル243を保持する。non−pivot毎のパラメータ250は、non−pivot毎に、索引用ベクトルサイズ251と、ロジスティック回帰で用いる回帰係数252を保持する。
クライアント端末300は、生データを取得する生データ取得部301と、通信I/F302とから構成される。
図2に、本実施形態における登録端末100、サーバ端末200、クライアント端末300のハードウェア構成を示す。これらの端末は、図のようにCPU500と、メモリ501と、HDD502と、入力装置503と、出力装置504と、通信装置505とから構成することができる。
図3に、本実施形態における登録の処理手順およびデータの流れを示す。
登録端末100は、ユーザから登録用の生データを取得する(ステップS101)。
登録端末100は、登録用の生データをサーバ端末200に送信する(ステップS102)。
サーバ端末200は、登録用の生データから登録用の特徴量を抽出する(ステップS103)。
サーバ端末200は、登録用データに固有の登録用データID231と、登録用の生データ232と、登録用の特徴量233とから構成される登録情報230を、データベース210に保存する(ステップS104)。
図4に、本実施形態における補助情報生成の処理手順およびデータの流れを示す。本処理は、登録処理を行なってから検索処理を行なうまでの間に行なう。例えば、登録直後、或いは登録を行なった日の夜間に行なうなどの方法が考えられる。また、本処理は補助情報を新規生成する場合と、前回の補助情報生成時以来、追加された登録用データの分について補助情報を更新する場合の2通りの場合がある。
サーバ端末200は、補助情報を新規生成する場合は各登録用ユーザの登録情報230を、補助情報を更新する場合は追加された登録情報230をデータベース210から取得する(ステップS201)。
サーバ端末200は、補助情報を新規生成する場合、N個の登録情報230の生データ232の中からM個のpivotを新たに決定する(ステップS202)。補助情報を更新する場合は、このステップを省略し、追加された登録情報230の生データ232をnon−pivotとする。pivotの決定方法は、ランダムに選択する方法や、pivotを選択するたびに、それまでに決定したpivotとのスコア或いはΔスコアの総和が最小(或いは最大)となるものをpivotとする、などの方法がある。
サーバ端末200は、補助情報を新規生成する場合はN−M個の各non−pivotに対して、補助情報を更新する場合は追加された各non−pivotに対して、各pivotとのスコアを求めて索引用ベクトル243を生成する。(ステップS203)。
サーバ端末200は、補助情報を新規生成する場合はN−M個の各non−pivotに対して、補助情報を更新する場合は追加された各non−pivotに対して、索引用ベクトルサイズ251とロジスティック回帰で用いる回帰係数252で構成されるパラメータ250を、あらかじめ用意しておいたデータ(学習用データ)を用いて一意に決定(学習)する(ステップS204)。索引用ベクトルサイズ251と回帰係数252で構成されるパラメータ250の学習方法の詳細は後述する。
サーバ端末200は、補助情報を新規生成する場合は登録用データのうちどれがpivotであるかが記されたpivot情報241と、N−M個の各non−pivotの索引用ベクトル243から構成されるインデックス242と、学習したnon−pivot毎の索引用ベクトルサイズ251と回帰係数252で構成されるパラメータ250とを補助情報240として、データベース210に保存する。補助情報を更新する場合は生成された索引用ベクトル243をデータベース210のインデックス242に追加し、学習したnon−pivot毎の索引用ベクトルサイズ251と回帰係数252をパラメータ250に追加する。このとき、各non−pivotの索引用ベクトル243は、当該non−pivotの索引用ベクトルサイズ251の分を保存、或いは追加する(ステップS205)。
図5に、本実施形態における検索の処理手順およびデータの流れを示す。
サーバ端末200は、データベース210からマスタデータ220を取得する(ステップS301)。
クライアント端末300は、ユーザから検索用の生データを取得する(ステップS302)。
クライアント端末300は、検索用の生データをサーバ端末200に送信する(ステップS303)。
サーバ端末200は、検索用の生データから検索用の特徴量を抽出する(ステップS304)。
サーバ端末200は、検索用データと各pivotとのスコアを計算する(ステップS305)。
サーバ端末200は、検索用データと各pivotとのスコアを基に、検索用データの索引用ベクトルを生成する(ステップS306)。
サーバ端末200は、検索用データの索引用ベクトルと、non−pivot毎の索引用ベクトルから構成されるインデックス242と、non−pivot毎の索引用ベクトルサイズ251を用いて、検索用データとnon−pivotとのΔスコアを、各non−pivotに対して計算する(ステップS307)。
サーバ端末200は、各non−pivotに対するΔスコアΔSq,M+1、・・・、Δq,Nを基に、non−pivot毎のロジスティック回帰の回帰係数wi,1とwi,0を用いて、検索用データからのスコアsq,iが閾値rより小さい事後確率P(sq,i<r|ΔSq,i)(M+1≦i≦N)と単調増加の関係にある値aを数7によって求め、aの大きい順にnon−pivotの選択順序を決定する。(ステップS308)。
サーバ端末200は、検索用データとnon−pivotとのスコア計算回数tを0に初期化する(ステップS309)。
サーバ端末200は、検索用データとステップS308で決定したnon−pivotの選択順序に従って選択したnon−pivotとのスコアを計算する(ステップS310)。
サーバ端末200は、検索用データとnon−pivotとのスコア計算回数tを1増やす(ステップS311)。
サーバ端末200は、検索用データとnon−pivotとのスコア計算回数tが上限値T以下であればステップS310に、上限値Tより大きければステップS313に進む(ステップS312)。
サーバ端末200は、クライアント端末300に検索結果の生データ232を送信する(ステップS313)。このとき、スコアの小さい順(或いは大きい順)にk個登録用データを選択し、それらを検索結果とする方法(k−Nearest Neighbor Search)を採用しても良いし、スコアが閾値rより小さい(或いは大きい)登録用データを検索結果とする方法(Range Search)を採用しても良い。
クライアント端末300は、検索結果の生データ232を表示する(ステップS314)。
以下、ステップS204において、各non−pivotに対して索引用ベクトルサイズ251と回帰係数252で構成されるパラメータ250を学習データを用いて学習する方法について、その詳細を述べる。学習用データとしては、パラメータを学習する当該non−pivot以外のN−1個のnon−pivotを用いても良いし、或いは登録用データとは別にあらかじめ用意しておいたデータを用いても良い。
まず、索引用ベクトルサイズZをある値に固定したときの回帰係数wi,1、wi,0の学習方法を述べる。学習用データをQ、Q、・・・、QN’とする(N’は学習用データの個数)。また、学習用データQj(1≦j≦N’)とnon−pivotX(M+1≦i≦N)とのΔスコアをΔSj,iとし、各学習用データQj(1≦j≦N’)のnon−pivotXに対するΔスコアの集合を、
Figure 2012178095
とする。
例えば、索引用ベクトルとしてスコアベクトルを用い、Δスコアとしてユークリッド距離を用いた場合は、ΔSj,iはD(Sqj,S,T,Z)と表すことができ(Sqjは学習用データQのスコアベクトル)、数3によって計算できる。索引用ベクトルとして順列ベクトルを用い、ΔスコアとしてSpearman Rhoを用いた場合、ΔSj,iはDρ(Tqj,T,Z)であり(Tqjは学習用データQの順列ベクトル)、数4によって計算できる。
さらに、学習用データQj(1≦j≦N’)とnon−pivotX(M+1≦i≦N)とのスコアsj,iが閾値rより小さい場合に1、それ以外の場合に0をとるラベルをLjiとし、各学習用データQj(1≦j≦N’)のnon−pivotXに対するラベルの集合を、
Figure 2012178095
とする。
またさらに、non−pivotXの回帰係数を、wi,1、wi,0を並べて、
Figure 2012178095
とベクトルの形で表すことにする。本実施例では、non−pivotXに対するΔスコアの集合ΔSとラベルの集合Lを回帰係数wの学習に用いる。
回帰係数の学習方法としては、最大事後確率(Maximum A Posterior)推定、最尤(Maximum Likelihood)推定を用いる方法がある。non−pivotXに対するΔスコアの集合ΔSとラベルの集合Lを用いて、最大事後確率推定により回帰係数wを学習する場合、
Figure 2012178095
とパラメータw MAPを求め、これを学習結果とする。但し、2行目から4行目の変形にかけてはベイズの定理を用いており、4行目から5行目の変形にかけてはΔSとwが互いに独立である(即ち、P(ΔS|w)=P(ΔS))と仮定している。5行目から6行目の変形にかけてはP(ΔS)がwによらず一定であることを用いている。また、argmax f(x)はf(x)を最大にするxを示す。最尤推定により回帰係数wを学習する場合、
Figure 2012178095
とパラメータw MLを求め、これを学習結果とする。
数12と数13に示されているように、最大事後確率推定では、回帰係数wの事前確率P(w)も考慮して回帰係数を学習する点が最尤推定と異なる。このように、最大事後確率推定では回帰係数の事前確率を考慮することで、学習用データの数が少ない場合においても、最尤推定より頑健に回帰係数を学習できるという特長を持っている。特に、本実施例では、1をとるラベルLjiの数(即ち、non−pivotXと類似している学習用データQの数)が一般には非常に少ないため、最尤推定では回帰係数を適切に学習できない可能性がある。このような場合でも、最大事後確率推定であれば回帰係数をより適切に学習できる。
P(L|ΔS,w)は、
Figure 2012178095
と求めることができる。但し、1行目から2行目にかけてはラベルLjiが、学習用データQとnon−pivotXとのスコアsj,iが閾値rより小さい場合に1、それ以外の場合に0をとり、ΔスコアΔSj,iに依存することを用いている。また、aj,iは、
Figure 2012178095
であり、前述のロジスティック回帰を用いることで、
Figure 2012178095
と求めることができる。
P(w)は、例えば平均ベクトル0、分散共分散行列Σの正規分布を仮定し、
Figure 2012178095
と求める方法がある。Σは適当な値をあらかじめ設定する方法や、学習用データを基に経験ベイズ法を用いて自動的に決定する方法などがある。また、0以外の平均ベクトルを用いても良いし、分布モデルとして指数分布やガンマ分布など、正規分布以外のものを用いても良い。
このとき、最大事後確率推定或いは最尤推定によって求める(即ち、数16或いは数17を最大化する)回帰係数w MAP或いはw MLは、例えばニュートン−ラフソン法を用いて算出できる。これは、回帰係数wの最大事後確率推定値w MAP或いは最尤推定値w MLを、以下の手順で逐次的に求める手法である。
1.wの初期値w (0)を適当に設定する。例えば、w (0)=0とする。τ←0とする。
2.以下のようにw (τ+1)を求める。τは逐次計算の回数である。
Figure 2012178095
但し、E(w (τ))は事後確率、或いは尤度の負の対数をとったものである。∇は微分演算子ベクトルである。これを誤差関数と呼ぶ。最大事後確率推定の場合は、
Figure 2012178095
であり、最尤推定の場合は、
Figure 2012178095
である。また、∇E(w (τ))、∇∇E(w (τ))はそれぞれE(w (τ))の1階微分の列ベクトル、2階微分の行列である。例えば、最大事後確率推定の場合において、数14、数16、数17を用いた場合、
Figure 2012178095
Figure 2012178095
のように求めることができる。但し、
Figure 2012178095
Figure 2012178095
である。
3.w (τ+1)と(w (τ))との差が十分小さい、或いはτがある一定値を超えたらw (τ+1)をw MAP或いはw MLとして終了する。そうでなければ、τ←τ+1として、2.に戻る。
次に、索引用ベクトルサイズZの学習方法を述べる。これは、索引用ベクトルサイズZを様々な値(例えば、1からMまでの値)に変えて上記の操作を行い、その中で誤差関数がなるべく小さくなるw MAP或いはw MLとそれを実現したZを、学習結果とすれば良い。このようにすれば、精度の観点で最も優れたパラメータを求めることが可能となる。
或いは、インデックスのサイズがある一定値以下となるうち、誤差関数のnon−pivotに対する総和がなるべく小さくなるように、non−pivot毎のパラメータを学習するようにしても良い。これは、インデックスのサイズがある一定値以下となる範囲内で、各non−pivotのZを様々な値に変えてみて、誤差関数のnon−pivotに対する総和が最も大きくなるときのw MAPとそれを実現したZを学習結果とすれば良い(M+1≦i≦N)。このようにすることで、補助情報のサイズに要求値を設けたとき、それを満たす範囲内で精度の観点で最も優れた性能を実現することが可能となる。
また、本実施例では、ラベルLji(1≦j≦N’,M+1≦i≦N)を求めるために計(N−M)×N’個のスコアを計算する必要があり、一般にはこれに大きな時間がかかる。そこで、non−pivot毎に、各学習用データ(N’個)とのΔスコアを求め、その小さい順にν’(<N’)個の学習用データを選択し(ν’は、あらかじめシステム管理者などが定めた値)、それらを学習に用いるようにしても良い。Δスコアが小さい学習用データはnon−pivotと類似している可能性が高いため、このようにすることでラベルLjiの数が1をとる(即ち、non−pivotXと類似している)学習用データQがなるべく減らないようにしつつ、学習に必要なスコアの計算回数を計(N−M)×ν’個まで減らすことが可能となる。その結果、学習が高速に行えるようになる、という効果が得られる。
また、例えば図6のように登録用データが特徴量空間上で幾つかのクラスタを形成している場合、索引用ベクトルサイズなどのパラメータは各クラスタで似た、或いは同じ値をとる可能性がある。
従って、本実施例では、non−pivotに対してクラスタリングを行い、得られたクラスタ毎にパラメータの一部或いは全部が共通となるように、non−pivot毎のパラメータを学習するようにしても良い。クラスタリングの手法としては、最短距離法、最長距離法、群平均法、ウォード法などの階層的手法を用いても良いし、K平均法などの非階層的手法を用いても良い。このようにクラスタ毎に共通のパラメータを学習することで、パラメータのサイズを減らすことが可能となる。その結果、システムのさらなる軽量化が実現できるという効果が得られる。
また、本実施例において登録用データを学習用データとして用いる場合、登録用データが追加されたとき、学習用データの索引用ベクトルサイズが小さいためにパラメータの学習がうまく行えなくなる可能性がある。しかしながら、上記のようにクラスタ毎に共通のパラメータを学習すれば、登録用データが追加されたときにおいても、当該登録用データが属するクラスタに共通のパラメータを用いることで、容易にパラメータの学習を行うことが可能となる。
以下、図面を参照して、2つ目の実施形態について説明する。本実施形態の類似検索システムは、認証を試みるユーザ(以後、認証ユーザ)が生体情報を入力し、システムがクライアント端末内のデータベースから類似する生体情報を検索することで、認証ユーザがデータベースに登録されているユーザ(以後、登録ユーザ)のうち誰か(或いは誰でもないか)を識別し、その結果に基づいて認証を行なう生体識別システムである。
図7に本実施形態の生体識別システムの構成例を示す。ここでは、図1と異なる点について述べる。本実施形態では、生データは生体情報である。
このシステムは、ユーザから取得した生体情報の特徴量をサーバ端末へ送信する登録端末100と、登録情報を保存し、登録情報から補助情報を生成し、登録情報と補助情報を用いて認証用の特徴量に対する生体識別を行なうサーバ端末200と、グループIDとユーザが入力した認証用の特徴量をサーバ端末200に送信するクライアント端末300と、ネットワーク400から構成される。
例えば、企業内の情報アクセス制御システム、或いは勤怠管理システムであれば、登録端末100は企業内の複数のPC、サーバ端末200は企業が運用するデータセンタ内の1台のサーバ、クライアント端末300は複数の従業員のPC、ネットワーク400はインターネットとする構成にする方法が考えられる。また、企業内の入退室管理システムであれば、登録端末100とサーバ端末200とクライアント端末300を同一の入退室管理装置とする構成にする方法が考えられる。グループID221は、ユーザの所属する事業所に固有の値となるようにしても良いし、クライアント端末300毎、或いは拠点毎に固有の値となるように設定しても良い。前者の場合、ユーザが認証時にグループIDを入力する運用が考えられる。後者の場合、ユーザは認証時にグループIDを入力しなくても良い。
登録端末100は、グループIDとユーザ名を取得するグループID・ユーザ名取得部103と、生データから特徴量を抽出する特徴量抽出部104をさらに持つ。
サーバ端末200は、特徴量抽出部202を持たず、グループ絞込み部209aを持ち、グループID毎にマスタデータ220を持つ。マスタデータ220は、グループID221を持つ。登録情報230は、生データ232を持たず、登録用データ毎にユーザ名234を持つ。
生体情報の特徴量としては、例えば指紋であればマニューシャ、虹彩であれば虹彩コード、声紋であればケプストラムなどが考えられる。また、2つの生体情報同士のスコアとしては、指紋であれば対応するマニューシャの数や割合、虹彩であればハミング距離、声紋であればマハラノビス距離などが考えられる。
クライアント端末300は、グループIDを取得するグループID取得部303と、生データから特徴量を抽出する特徴量抽出部304をさらに持つ。
本実施形態における登録端末100、サーバ端末200、クライアント端末300のハードウェア構成は図2と同じである。
図8に、本実施形態における登録処理の処理手順およびデータの流れを示す。図8のステップS101は、図3のステップS101と同じである。
登録端末100は、ユーザからグループIDとユーザ名を取得する(ステップS101a)。
登録端末100は、登録用の生データから登録用の特徴量を抽出する(ステップS102a)。
登録端末100は、グループIDとユーザ名と登録用の特徴量をサーバ端末200に送信する(ステップS103a)。
サーバ端末200は、当該グループIDに対応するマスタデータ220がデータベース210にあれば、登録用データに固有の登録用データID231と、ユーザ名234と、登録用の特徴量233とから構成される登録情報230を、そのマスタデータ220に追加する。マスタデータ220がなければ、当該グループID221と、登録用データに固有の登録用データID231と、ユーザ名234と、登録用の特徴量233とから構成される登録情報230を新しく作成する(ステップS104a)。
本実施形態における補助情報生成処理の処理手順およびデータの流れは図4と同じである。但し、グループID毎に本処理を行う。登録情報230の数Nと、pivotの数MはグループID毎に異なっていても良い。
図9に、本実施形態における検索処理の処理手順およびデータの流れを示す。図9のステップS302、S305〜S312、S314は、図3のステップS302、S305〜S312、S314と同じである。
サーバ端末200は、データベース210からグループID毎にマスタデータ220を取得する(ステップS301a)。
クライアント端末300は、ユーザからグループIDを取得する(ステップS302a)。グループIDは、クライアント端末300毎、或いは拠点毎に固有の値になるようにしても良く、この場合はユーザから取得しなくても良い。
クライアント端末300は、検索用の生データから検索用の特徴量を抽出する(ステップS303a)。
クライアント端末300は、グループIDと検索用の特徴量をサーバ端末200に送信する(ステップS304a)。
サーバ端末200は、取得したグループIDに対応するマスタデータを検索対象とする。以後のステップでは検索対象としたマスタデータについて行う(ステップS305a)。
このように、本実施例ではグループIDを用いた登録用データの絞込みを行う。これによって、スコアを計算する登録用データの数を大幅に減らすことが可能となる。その結果、速度が一層向上するという効果が得られる。
サーバ端末200は、クライアント端末300に検索結果の登録用データに対応するユーザ名234を送信する(ステップS313a)。
クライアント端末300は、検索結果の登録用データに対応するユーザ名234を表示する(ステップS314a)。
本発明は、画像、動画、音楽、文書、バイナリデータ、生体情報などの非構造化データの類似検索を行なう任意のアプリケーションに対して適用可能である。例えば、類似画像検索システム、類似動画検索システム、類似音楽検索システム、類似文書検索システム、ファジーハッシュを用いた類似ファイル検索システム、情報アクセス制御システム、勤怠管理システム、入退室管理システムなどへの適用が可能である。
100 登録端末
101 生データ取得部
102 通信I/F
103 グループID・ユーザ名取得部
104 特徴量抽出部
200 サーバ端末
201 pivot決定部
202 特徴量抽出部
203 スコア計算部
204 索引用ベクトル生成部
205 Δスコア計算部
206 non−pivot毎パラメータ学習部
207 non−pivot選択順序決定部
208 検索結果出力部
209 通信I/F
209a グループ絞込み部
210 データベース
220 マスタデータ
221 グループID
230 登録情報
231 登録用データID
232 生データ
233 特徴量
234 ユーザ名
240 補助情報
241 pivot情報
242 インデックス
250 non−pivot毎のパラメータ
251 索引用ベクトルサイズ
252 回帰係数
300 クライアント端末
301 生データ取得部
302 通信I/F
303 グループID取得部
304 特徴量抽出部
400 ネットワーク
500 CPU
501 メモリ
502 HDD
503 入力装置
504 出力装置
505 通信装置

Claims (15)

  1. 登録用データからpivotを決定するpivot決定部と、
    生データを取得する生データ取得部と、
    前記生データから特徴量を抽出する特徴量抽出部と、
    前記特徴量同士の距離或いは類似度としてスコアを計算するスコア計算部と、
    前記pivotに対する前記スコアを用いて索引用ベクトルを生成する索引用ベクトル生成部と、
    前記索引用ベクトル同士の距離或いは類似度としてΔスコアを計算するΔスコア計算部と、
    学習用データを用いて、回帰係数を含むnon−pivot毎のパラメータを学習するnon−pivot毎パラメータ学習部と、
    検索用データと前記non−pivotとの前記Δスコアと前記回帰係数を用いて、ロジスティック回帰により事後確率の大きい順に前記non−pivotの選択順序を決定するnon−pivot選択順序決定部と、
    前記検索用データと前記登録用データとの前記スコアを基に、検索結果を出力する検索結果出力部と、
    前記登録用データの前記特徴量と、前記登録用データのうちどれが前記pivotであるかが記されたpivot情報と、前記non−pivot毎の前記索引用ベクトルから構成されるインデックスと、前記non−pivot毎のパラメータを保持するデータベースを持つ
    ことを特徴とする類似検索システム。
  2. 前記non−pivot毎パラメータ学習部は、
    索引用ベクトルサイズを含むnon−pivot毎のパラメータを学習する
    ことを特徴とする請求項1に記載の類似検索システム。
  3. 前記non−pivot毎パラメータ学習部は、
    誤差関数がなるべく小さくなるように、前記索引用ベクトルサイズを含むnon−pivot毎の前記パラメータを学習する
    ことを特徴とする請求項2に記載の類似検索システム。
  4. 前記non−pivot毎パラメータ学習部は、
    前記インデックスのサイズがある一定値以下となるうち、誤差関数の前記non−pivotに対する総和がなるべく小さくなるように、前記索引用ベクトルサイズを含むnon−pivot毎の前記パラメータを学習する
    ことを特徴とする請求項2に記載の類似検索システム。
  5. 前記non−pivot毎パラメータ学習部は、
    最大事後確率推定により前記non−pivot毎の前記パラメータを学習する
    ことを特徴とする請求項1ないし4に記載の類似検索システム。
  6. 前記non−pivot毎パラメータ学習部は、
    最尤推定により前記non−pivot毎の前記パラメータを学習する
    ことを特徴とする請求項1ないし5に記載の類似検索システム。
  7. 前記non−pivot毎パラメータ学習部は、
    前記non−pivot毎に、前記学習用データとのΔスコアを計算し、前記Δスコアを用いて学習に用いる前記学習用データを選択する
    ことを特徴とする請求項1ないし6に記載の類似検索システム。
  8. 前記non−pivot毎パラメータ学習部は、
    前記学習用データとして前記登録用データを用いる
    ことを特徴とする請求項1ないし7に記載の類似検索システム。
  9. 前記non−pivot毎パラメータ学習部は、
    前記学習用データとして前記登録用データとは別にあらかじめ用意しておいたデータを用いる
    ことを特徴とする請求項1ないし7に記載の類似検索システム。
  10. 前記non−pivot毎パラメータ学習部は、
    前記non−pivotに対してクラスタリングを行い、得られたクラスタ毎に前記パラメータの一部或いは全部が共通となるように、前記non−pivot毎の前記パラメータを学習する
    ことを特徴とする請求項1ないし9に記載の類似検索システム。
  11. 前記索引用ベクトル生成部は、
    前記索引用ベクトルとして順列ベクトルを生成する
    ことを特徴とする請求項1ないし10に記載の類似検索システム。
  12. 前記索引用ベクトル生成部は、
    前記索引用ベクトルとしてスコアベクトルを生成する
    ことを特徴とする請求項1ないし10に記載の類似検索システム。
  13. グループIDを用いて前記登録用データの絞込みを行うグループ絞込み部を持ち、
    前記データベースは、
    前記グループIDを保持する
    ことを特徴とする請求項1ないし12に記載の類似検索システム。
  14. 登録端末によって、クライアント端末から送信された生データに対して類似検索を行うサーバ端末における高精度な類似検索方法において、
    前記生データから抽出した特徴量で構成される登録用データを生成し、
    前記登録用データからpivotを選択し、
    前記特徴量同士の距離或いは類似度として定義したスコアを計算し、
    前記pivotに対する前記スコアを用いて索引用ベクトルを生成し、
    前記索引用ベクトル同士の距離或いは類似度として定義したΔスコアを計算し、
    予め用意された学習用データを用いて、前記登録用データから前記pivotとして選択されなかったnon−pivot毎の回帰係数を含むパラメータを学習し、
    入力された検索用データと前記non−pivotとの前記Δスコアと前記回帰係数を用いて、ロジスティック回帰により事後確率の大きい順に前記non−pivotの選択順序を決定し、
    前記検索用データと前記登録用データとの前記スコアを基に、検索結果を出力し、
    前記登録用データの前記特徴量と、前記登録用データのうちどれが前記pivotであるかが記されたpivot情報と、前記non−pivot毎の前記索引用ベクトルから構成されるインデックスと、前記non−pivot毎のパラメータをデータベースに保持することを特徴とする高精度な類似検索方法。
  15. 前記選択順序の決定の際に、前記学習用データを用いて、前記回帰係数を含むnon−pivot毎のパラメータを学習し、前記検索用データと前記non−pivotとの前記Δスコアと前記回帰係数を用いて、ロジスティック回帰により事後確率の大きい順に前記non−pivotの選択順序を決定することを特徴とする請求項14に記載の高精度な類似検索方法。
JP2011041268A 2011-02-28 2011-02-28 高精度な類似検索システム Expired - Fee Related JP5465689B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2011041268A JP5465689B2 (ja) 2011-02-28 2011-02-28 高精度な類似検索システム
EP12153718A EP2492826A1 (en) 2011-02-28 2012-02-02 High-accuracy similarity search system
US13/369,634 US20120221574A1 (en) 2011-02-28 2012-02-09 High-accuracy similarity search system
CN2012100288861A CN102693258A (zh) 2011-02-28 2012-02-09 高精度的类似检索系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011041268A JP5465689B2 (ja) 2011-02-28 2011-02-28 高精度な類似検索システム

Publications (2)

Publication Number Publication Date
JP2012178095A true JP2012178095A (ja) 2012-09-13
JP5465689B2 JP5465689B2 (ja) 2014-04-09

Family

ID=45562814

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011041268A Expired - Fee Related JP5465689B2 (ja) 2011-02-28 2011-02-28 高精度な類似検索システム

Country Status (4)

Country Link
US (1) US20120221574A1 (ja)
EP (1) EP2492826A1 (ja)
JP (1) JP5465689B2 (ja)
CN (1) CN102693258A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015207818A (ja) * 2014-04-17 2015-11-19 株式会社日立製作所 異常検知装置及び異常検知システム
JP2017126330A (ja) * 2015-12-31 2017-07-20 ダッソー システムズDassault Systemes 予測型モデルに基づく推薦
CN112347282A (zh) * 2020-11-12 2021-02-09 四川长虹电器股份有限公司 基于原生JavaScript实现查找相似度最高图片的方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10754744B2 (en) 2016-03-15 2020-08-25 Wisconsin Alumni Research Foundation Method of estimating program speed-up in highly parallel architectures using static analysis
CN107423309A (zh) * 2016-06-01 2017-12-01 国家计算机网络与信息安全管理中心 基于模糊哈希算法的海量互联网相似图片检测系统及方法
KR101758219B1 (ko) * 2017-01-24 2017-07-14 김훈 수치정보 검색이 가능한 수치정보 관리장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002544530A (ja) * 1999-05-14 2002-12-24 エクソンモービル リサーチ アンド エンジニアリング カンパニー 多変量較正を最適化するための方法
JP2010072896A (ja) * 2008-09-18 2010-04-02 Kddi Corp 多クラスsvmのためのsv削減方法
JP2010152725A (ja) * 2008-12-25 2010-07-08 Rakuten Inc 実在店舗検索サーバ及び実在店舗検索方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6468476B1 (en) * 1998-10-27 2002-10-22 Rosetta Inpharmatics, Inc. Methods for using-co-regulated genesets to enhance detection and classification of gene expression patterns
JP2005107743A (ja) * 2003-09-29 2005-04-21 Nec Corp 学習システム
JP5120254B2 (ja) * 2006-07-06 2013-01-16 旭硝子株式会社 クラスタリングシステムおよび欠陥種類判定装置
JP4274221B2 (ja) * 2006-10-02 2009-06-03 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002544530A (ja) * 1999-05-14 2002-12-24 エクソンモービル リサーチ アンド エンジニアリング カンパニー 多変量較正を最適化するための方法
JP2010072896A (ja) * 2008-09-18 2010-04-02 Kddi Corp 多クラスsvmのためのsv削減方法
JP2010152725A (ja) * 2008-12-25 2010-07-08 Rakuten Inc 実在店舗検索サーバ及び実在店舗検索方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNJ201110015130; 村上 隆夫 他: '照合順序の最適化とスコア融合判定に基づくIDレス生体認証の高速・高精度化' 2011年 暗号と情報セキュリティシンポジウム SCIS2011 [CD-ROM] , 20110125, pp.1-8, 電子情報通信学会情報セキュリティ研究専門委員会 *
JPN6013063256; 村上 隆夫 他: '照合順序の最適化とスコア融合判定に基づくIDレス生体認証の高速・高精度化' 2011年 暗号と情報セキュリティシンポジウム SCIS2011 [CD-ROM] , 20110125, pp.1-8, 電子情報通信学会情報セキュリティ研究専門委員会 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015207818A (ja) * 2014-04-17 2015-11-19 株式会社日立製作所 異常検知装置及び異常検知システム
JP2017126330A (ja) * 2015-12-31 2017-07-20 ダッソー システムズDassault Systemes 予測型モデルに基づく推薦
CN112347282A (zh) * 2020-11-12 2021-02-09 四川长虹电器股份有限公司 基于原生JavaScript实现查找相似度最高图片的方法

Also Published As

Publication number Publication date
CN102693258A (zh) 2012-09-26
US20120221574A1 (en) 2012-08-30
EP2492826A1 (en) 2012-08-29
JP5465689B2 (ja) 2014-04-09

Similar Documents

Publication Publication Date Title
Shanthamallu et al. A brief survey of machine learning methods and their sensor and IoT applications
CN108846422B (zh) 跨社交网络的账号关联方法及系统
JP5465689B2 (ja) 高精度な類似検索システム
CN111695415B (zh) 图像识别方法及相关设备
JP5286297B2 (ja) 生体認証システム
CN109036577B (zh) 糖尿病并发症分析方法及装置
CN111259243B (zh) 基于会话的并行推荐方法及系统
Ilievski et al. Personalized news recommendation based on implicit feedback
Yan et al. Active learning from multiple knowledge sources
CN104112005B (zh) 分布式海量指纹识别方法
WO2023178971A1 (zh) 就医的互联网挂号方法、装置、设备及存储介质
CN110597956B (zh) 一种搜索方法、装置及存储介质
CN113806582B (zh) 图像检索方法、装置、电子设备和存储介质
CN111026877A (zh) 基于概率软逻辑的知识验证模型构建与分析方法
Ertekin et al. Learning to predict the wisdom of crowds
Chen et al. Multiple classifier integration for the prediction of protein structural classes
CN113609388A (zh) 基于反事实用户行为序列生成的序列推荐方法
Dai et al. Sequential behavior prediction based on hybrid similarity and cross-user activity transfer
CN109858031B (zh) 神经网络模型训练、上下文预测方法及装置
CN115222443A (zh) 客户群体划分方法、装置、设备及存储介质
Buskirk et al. Why machines matter for survey and social science researchers: Exploring applications of machine learning methods for design, data collection, and analysis
WO2021174923A1 (zh) 概念词序列生成方法、装置、计算机设备及存储介质
JP5971722B2 (ja) ハッシュ関数の変換行列を定める方法、該ハッシュ関数を利用するハッシュ型近似最近傍探索方法、その装置及びそのコンピュータプログラム
Ng Recent developments in expectation‐maximization methods for analyzing complex data
Kotsiantis Increasing the accuracy of incremental naive Bayes classifier using instance based learning

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131213

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140122

R150 Certificate of patent or registration of utility model

Ref document number: 5465689

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees