JP2015228083A - 特徴ベクトル変換装置及びコンテンツ検索装置 - Google Patents

特徴ベクトル変換装置及びコンテンツ検索装置 Download PDF

Info

Publication number
JP2015228083A
JP2015228083A JP2014112797A JP2014112797A JP2015228083A JP 2015228083 A JP2015228083 A JP 2015228083A JP 2014112797 A JP2014112797 A JP 2014112797A JP 2014112797 A JP2014112797 A JP 2014112797A JP 2015228083 A JP2015228083 A JP 2015228083A
Authority
JP
Japan
Prior art keywords
matrix
variance
feature vector
dimensional
rotation
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.)
Pending
Application number
JP2014112797A
Other languages
English (en)
Inventor
康太 石川
Kota Ishikawa
康太 石川
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.)
Denso IT Laboratory Inc
Original Assignee
Denso IT Laboratory Inc
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 Denso IT Laboratory Inc filed Critical Denso IT Laboratory Inc
Priority to JP2014112797A priority Critical patent/JP2015228083A/ja
Publication of JP2015228083A publication Critical patent/JP2015228083A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 高速なバイナリエンコーディングを行うことができる特徴ベクトル変換装置を提供する。【解決手段】 特徴ベクトル変換装置10は、学習用特徴ベクトルの分散共分散行列を算出する分散共分散行列算出部11と、分散共分散行列算出部11にて算出された分散共分散行列に基づいて、変換行列を生成する変換行列生成部12と、変換行列生成部12にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換部13とを備えている。変換行列生成部12は、学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各次元ペアに対応する2次元分散共分散行列を回転変換する各2次元回転行列の要素を含むn?nの対回転行列を、分散共分散行列を更新しながら繰り返し算出して、変換行列を生成する。【選択図】 図1

Description

本発明は、コンテンツの特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換装置等に関するものである。
従来、画像や文章などの情報検索分野で、各情報を示す特徴ベクトルの距離に基づいて、クエリベクトルに最も近い特徴ベクトルを検索する技術である最近傍探索技術が知られている。最近傍探索技術の中でも、計算負荷を軽減するための技術として、近年盛んに研究されているのが、近似最近傍探索である。
近似最近傍探索によれば、クエリベクトルと検索対象となる特徴ベクトルとのユークリッド距離の算出等、負荷の高い計算を相当程度省略することができる。中でも、線形バイナリハッシングを行った上で近似最近傍探索を行う手法は、高速処理が可能で、メモリを節約できる手法として知られている(例えば、非特許文献1を参照)。この手法は、例えば、まず、データベースに含まれる各点を次式によりバイナリベクトルに変換する。
そして、検索対象となる各バイナリベクトルのうち、バイナリコード化したクエリベクトルとのハミング距離(2つのバイナリコードの対応する位置にある異なるビットの個数)が小さいバイナリベクトルを複数抽出した上で、それらのバイナリベクトルに対応する特徴ベクトルとクエリベクトルとのユークリッド距離等に基づき、類似のコンテンツを特定する。なお、式(1)において、Aは、変換行列、xは特徴ベクトル、tは平行移動ベクトルである。
Gong,Y.,Lazebnik,S.,Gordo,A.,Perronnin,F.: Iterative auantization: A procrustean approach to learning binary codes for large−scale image retrieval. TPAMI 35(12)(December 2013) 2916−2929 Gong,Y.,Kumar,S.,Rowley,H.A.,Lazebnik,S.: Learning Binary Codes for High−Dimentional Data Using Bilinear Projections. In: CVPR. (2013) 484−491
ところが、従前の線形バイナリハッシングにおいては、n次の特徴ベクトルについて、式(1)の変換行列は、n×nの密行列となるため、特徴ベクトルをバイナリ化するだけでもn2回の積和演算が必要となり、nが1万次元以上の高次元になると、極めて大きな計算負荷がかかる。したがって、線形バイナリハッシングが高次元の特徴ベクトルの検索に適用されることはほとんどなかった。これに対して、近時、高次元の特徴ベクトルの変換・検索に適用可能な手法として、双線形なバイナリハッシング法である、BPBC(Bilinear Projection Binary Codes)が提案されている(非特許文献2を参照)。しかしながら、BPBCは、典型的には、図10に示すように、n次元の特徴ベクトルを128×(n/128)の行列型に折り畳み、128×128及び(n/128)×(n/128)の2つの変換行列を掛け合わせた上でサイン関数を適用する手法である。したがって、この手法によっても、エンコーディングに要する計算量はO(n2)となるから、特徴ベクトルが高次元になると、相当の計算負荷がかかることに変わりはない。
本発明は、上記の問題に鑑みてなされたものであり、特徴ベクトルが高次元の場合でも、高速なバイナリエンコーディングを行うことができる特徴変換装置等を提供することを目的とする。
本発明の特徴ベクトル変換装置は、特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換装置であって、n次元の学習用特徴ベクトルの分散共分散行列を算出する分散共分散行列算出部と、前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成する変換行列生成部と、前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換部とを備え、前記変換行列生成部は、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各次元ペアに対応する2次元分散共分散行列を回転変換する各2次元回転行列の要素を含むn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成する構成を有している。
この構成によれば、2次元回転行列の要素を2つ次元のペアの数だけ含む複数個の対回転行列を含む、バイナリコーディングのための変換行列が生成される。対回転行列は、特徴ベクトルがn次元の場合、高々4個の非ゼロ要素からなる2次元回転行列を次元のペアの数だけ含む行列であり、非ゼロ要素の数は、高々2nまたは2(n―1)となる。また、logn個程度の対回転行列による操作を行なえば、十分な精度を得られることが分かっている。したがって、変換行列全体でも、非ゼロ要素は合計O(nlogn)であり、特徴ベクトルが高次元では極めて疎となるので、特徴ベクトルが高次元でも、高速なバイナリコーディングが可能となる。
本発明の特徴ベクトル変換装置は、特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換装置であって、n次元の学習用特徴ベクトルの分散共分散行列を算出する分散共分散行列算出部と、前記分散共分散行列を更新する分散共分散行列更新部と、前記分散共分散行列算出部にて算出され、または前記分散共分散行列更新部にて更新された分散共分散行列の対角成分である各分散値をランダムに、または、所定の順序でソートする置換行列であるソート行列を生成するソート行列生成部と、前記学習用特徴ベクトルの1からnまでの次元のうち、前記ソート行列に基づいて決定される2つの次元のペアに対応する2次元分散共分散行列を回転変換する2次元回転行列を、n/2または(n−1)/2個の各ペアについて算出する2次元回転行列算出部と、前記2次元回転行列生成部にて生成された各前記2次元回転行列の要素を、前記ソート行列によるソート結果に対応するように並べたn×nの対回転行列を生成する対回転行列生成部と、前記ソート行列及び前記対回転行列を所定個数組み合わせた変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換部とを備え、前記分散共分散行列更新部は、前記ソート行列と前記対回転行列が1つずつ生成されるたびに、前記ソート行列と前記対回転行列を用いて、前記分散共分散行列を繰り返し更新する構成を有している。
この構成によれば、置換行列であるソート行列と、2次元回転行列の要素を2つ次元のペアの数だけ並べた対回転行列を所定個数組み合わせた、バイナリコーディングのための変換行列が生成される。置換行列は、各行・各列の成分の1つが1で、他が全て0となる行列であり、他の行列との乗算の前後で非ゼロの数を増加させないという性質を有する。また、生成される対回転行列は、特徴ベクトルがn次元の場合、高々4個の非ゼロ要素からなる2次元回転行列を次元のペアの数(n/2または(n−1)/2)だけ並べた行列であり、非ゼロ要素の数は、高々2nまたは2(n―1)となる。すなわち、この構成によれば、1個のソート行列と1個の対回転行列の組み合わせに含まれる非ゼロ要素は高々2nである。また、logn個程度の対回転行列による操作を行なえば、十分な精度を得られることが分かっている。したがって、変換行列全体でも、非ゼロ要素は合計O(nlogn)であり、特徴ベクトルが高次元では極めて疎となるので、特徴ベクトルが高次元でも、高速なバイナリコーディングが可能となる。
本発明の特徴ベクトル変換装置において、前記2次元回転行列における回転角度は、当該2つの次元の分散値が等しくなる角度である等分散角度、および/または、前記2次元分散共分散行列の主成分軸の傾き角度に基づいて算出されてよい。
データが正規分布に従っているとき、各2次元回転行列に対応する、各次元ペアについて、2つの次元の分散値が等しくなる角度である等分散角度においては、バイナリコーディングの量子化誤差が最小化される。また、ペアを構成する2つの次元を座標軸とした場合において、第1主成分軸または第2主成分軸の、いずれかの座標軸に対する傾き角度が0°となるとき、バイナリコードのエントロピーは最大となる。そして、量子化誤差が小さいほど、また、バイナリコードのエントロピーは大きいほど、精度の良いコーディングであるとされる。したがって、この構成によれば、等分散角度、主成分軸の傾き角度の少なくともいずれか一方が考慮されて変換行列が生成され、精度よくバイナリコーディングを行うことができる。これは、データ分布が正規分布でない場合も同様である。
本発明の特徴ベクトル変換装置において、前記2次元回転行列における回転角度は、前記等分散角度θiso、前記主成分軸の傾き角度θpca、0以上1以下の設定値λを用いて、θiso+λ(θpca−θiso)により算出されてよい。
本願発明者の分析によれば、データが正規分布に従っているとき、等分散角度まで2次元分散共分散行列を回転すると量子化誤差もエントロピーも最小となり、第1主成分軸または第2主成分軸の、いずれかの座標軸に対する傾き角度が0°である場合、量子化誤差もエントロピーも最大となる。上述のように、量子化誤差が小さいほど、また、バイナリコードのエントロピーは大きいほど、精度の良いコーディングであるとされる。すなわち、量子化誤差とエントロピーは、バイナリコーディングの精度に関して、トレードオフの関係にある。したがって、この構成によれば、量子化誤差とエントロピーのバランスが考慮されて変換行列が生成され、精度よくバイナリコーディングを行うことができる。これは、データ分布が正規分布でない場合も同様である。
本発明の特徴ベクトル変換装置において、前記2次元回転行列における回転角度が、前記2次元分散共分散行列の主成分軸の傾き角度、または、当該2つの次元の分散値が等しくなる角度である等分散角度のいずれかであってよい。
この構成によれば、変換行列は、量子化誤差の最小化を考慮した、ソート行列と対回転行列の組み合わせからなる第1のグループと、エントロピーの最大化を考慮した、ソート行列と対回転行列の組み合わせからなる第2グループとにより構成されることになる。このような構成により、量子化誤差とエントロピーとのバランスがとれた変換行列が生成されるため、精度よくバイナリコーディングを行うことができる。
本発明の特徴ベクトル変換装置において、前記2つの次元のペアは、前記各分散値を降順または昇順でソートした場合における順序に基づき、nが偶数のとき、(1番目の分散値、n番目の分散値)、(2番目の分散値、n−1番目の分散値)、・・・(n/2番目の分散値、(n+2)/2番目の分散値)であり、nが奇数のとき、(1番目の分散値、n番目の分散値)、(2番目の分散値、n−1番目の分散値)、・・・((n−1)/2番目の分散値、(n+3)/2番目の分散値)のペアであってよい。
この構成によれば、1回の対回転行列による操作で、各ペア間で分散値の差はより小さくなり、少ない回数でより等分散な状態とすることができるので、変換行列に含まれる対回転行列の数を少なくすることもできる。したがって、精度良いバイナリコーディングを、さらに高速に行うことができる。
本発明のコンテンツ検索装置は、クエリコンテンツと類似のコンテンツを検索するコンテンツ検索装置であって、n次元の学習用特徴ベクトルの分散共分散行列を算出する分散共分散行列算出部と、前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成する変換行列生成部と、前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換部と、前記特徴ベクトル変換部にて変換された、前記クエリコンテンツに対応するバイナリベクトルと、検索対象コンテンツに対応するバイナリベクトルとのハミング距離に基づき、類似コンテンツを検索するコンテンツ検索部とを備え、前記変換行列生成部は、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各前記学習用特徴ベクトルを、前記ペアを構成する2つの次元を座標軸とする各平面内において回転変換する各2次元回転行列の要素を含むn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成する構成を有している。
本発明の特徴ベクトル変換方法は、特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換装置が実行する特徴ベクトル変換方法であって、n次元の学習用特徴ベクトルの分散共分散行列を算出するステップと、前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成するステップと、前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換するステップとを備え、前記変換行列を生成するステップにおいては、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各前記学習用特徴ベクトルを、前記ペアを構成する2つの次元を座標軸とする各平面内において回転変換する各2次元回転行列の要素を含むn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成する。
本発明のプログラムは、特徴ベクトルをバイナリベクトルに変換するためのプログラムであって、コンピュータに、n次元の学習用特徴ベクトルの分散共分散行列を算出するステップと、前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成するステップと、前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換するステップとを実行させ、前記変換行列を生成するステップにおいては、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各前記学習用特徴ベクトルを、前記ペアを構成する2つの次元を座標軸とする各平面内において回転変換する各2次元回転行列の要素を含むn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成する。
本発明によれば、非ゼロ要素の極めて少ない変換行列が生成されるので、特徴ベクトルが高次元でも、高速なバイナリエンコーディングを行うことができる。
本発明の実施の形態における特徴ベクトル変換装置及びコンテンツ検索装置の構成を示すブロック図 本発明の第1の実施の形態の特徴ベクトル変換装置により生成された変換行列の一例を示す図 (a)、(b) 2次元回転行列の概念を説明するための図 (a)〜(e) 対回転行列の概念を説明するための図 本発明の実施の形態におけるコンテンツ検索装置の動作フロー図 本発明の第1の実施の形態における特徴ベクトル変換装置の変換行列生成までの動作フロー図 量子化誤差とエントロピーとの関係を説明するための図 本発明の第2の実施の形態の特徴ベクトル変換装置により生成された変換行列の一例を示す図 本発明の第2の実施の形態における特徴ベクトル変換装置の変換行列生成までの動作フロー図 従来技術によるバイナリハッシングの一例を説明するための図
以下、本発明の実施の形態の特徴ベクトル変換装置及びコンテンツ検索装置について、図面を参照しながら説明する。
(第1の実施の形態)
図1は、本発明の第1の実施の形態のコンテンツ検索装置の構成を示すブロック図である。図1に示すように、第1の実施の形態のコンテンツ検索装置1は、特徴ベクトル変換装置10と、コンテンツベクトル記憶部20と、コンテンツ検索部30とを備える。特徴ベクトル変換装置10は、学習用特徴ベクトルから、以下の式(2)における変換行列Aを算出する。そして、入力されたクエリベクトルを式(2)を用いてバイナリベクトルに変換する。式(2)において、xはクエリベクトル、tは平行移動ベクトルであり、本実施の形態においては、特徴ベクトルの平均データである。また、Yは、得られるバイナリベクトルである。
コンテンツベクトル記憶部20は、多数のコンテンツの特徴ベクトル及びそのバイナリベクトルが記憶されるデータベースである。各コンテンツの特徴ベクトルは、特徴ベクトル変換装置10にて生成された変換行列Aを用いてバイナリベクトルに変換されている。なお、各コンテンツの特徴ベクトルは、学習用特徴ベクトルの少なくとも一部と同一であってもよい。コンテンツ検索部30は、特徴ベクトル変換装置10にてバイナリコード化されたクエリベクトルと、コンテンツベクトル記憶部20に記憶されるコンテンツのバイナリベクトルとのハミング距離を算出する。そして、ハミング距離が近い所定数のコンテンツバイナリベクトルを抽出し、これらのバイナリベクトルに対応する特徴ベクトルとクエリベクトルとのユークリッド距離に基づいて、クエリベクトルに最も近いコンテンツベクトルを特定し、検索結果として出力する。
特徴ベクトル変換装置10は、分散共分散行列算出部11と、変換行列生成部12と、特徴ベクトル変換部13とを備える。分散共分散行列算出部11は、学習用特徴ベクトルから、分散共分散行列Cを算出する。分散共分散行列とは、ベクトルの要素間の共分散値(対角成分を構成する同一要素同士については分散値)を要素とする行列であり、対角成分に関して対称となる。例えば、学習用特徴ベクトルの次数が4であるとすると、分散共分散行列Cも4×4となり、以下の(3)式のように表現できる。
なお、分散共分散行列は、学習用特徴ベクトルの個数をm個、平均ベクトルをtとすると、次式により求められる。
変換行列生成部12は、式(2)における変換行列Aを生成する。特徴ベクトル変換部13は、生成された変換行列Aを用いて、入力されたクエリベクトルをバイナリベクトルに変換する。図2は、特徴ベクトル変換装置10にて生成された、変換行列の一例を示す模式図である。図2に示すように、第1の実施の形態において、変換行列Aは、ソート行列Sと対回転行列Rを組み合わせたベーシックローテーションを複数個組み合わせて構成される。ソート行列Sは、クエリベクトルxの各次元を並び替えるための置換行列である。対回転行列Rは、ソート行列Sによる並び替え後のクエリベクトルxを回転変換する行列であり、後述のように、クエリベクトルxを2次元ずつ回転変換する2次元回転行列を組み合わせて構成される。図2において、黒い部分は非ゼロ要素、白い部分は、ゼロ要素であることを示す。後に詳述するが、特徴ベクトル変換装置10にて生成される変換行列Aは、非ゼロ要素の少ない、極めて疎な行列である。
図1に戻り、変換行列生成部12は、ソート行列生成部121と、2次元回転行列算出部122と、対回転行列生成部123と、分散共分散行列更新部124とを備える。ソート行列生成部121は、分散共分散行列算出部11にて算出された分散共分散行列Cの対角成分を降順でソートする。ソート行列生成部121は、また、当該ソート結果に基づいて、特徴ベクトルに対する乗算により、特徴ベクトルの要素を降順にソートするソート行列Sを算出する。ソート行列Sは、各行・各列の成分の1つが1で、他が全て0となる置換行列である。したがって、例えば、(3)式において、4つの分散値σ11、σ22、σ33、σ44の大きさが、σ22>σ33>σ11>σ44であり、この順に分散値がソートされる場合、次式のように、特徴ベクトル(x1、x2、x3、x4)を、(x2、x3、x1、x4)と並べ替えるソート行列S(4行×4列)が一意に決まる。図2に示すように、変換行列Aには、ソート行列が複数個含まれ、ソート行列生成部12は、ソート行列の生成を繰り返し行う。
2次元回転行列算出部122は、ソート行列によるソート結果に基づいて決定される次元ペアに対応する2次元分散共分散行列を所定の角度回転させる2次元回転行列rを算出する。次元ペアは、具体的には、以下のようにして決定される。例えば、(3)式においては、4つの分散値σ11、σ22、σ33、σ44は、それぞれ、特徴ベクトルの1番目の次元、2番目の次元、3番目の次元、4番目の次元の分散値にそれぞれ対応している。そして、(3)式において、σ22>σ33>σ11>σ44であるとすると、最も大きいσ22に対応する2番目の次元と、最も小さいσ44に対応する4番目の次元とが1つのペアとなり、2番目に大きいσ33に対応する3番目の次元と、2番目に小さいσ11に対応する1番目の次元が1つのペアとなる。
2次元回転行列算出部122は、このように決定された次元ペアを構成する2つの次元について、分散共分散行列Cを角度θ(λ)だけ回転させる回転行列を算出する。この2次元回転行列rは、次元ペアの数(次元数nが偶数の場合はn/2、奇数の場合は(n−1)/2)だけ生成される。上述の例では、2番目の次元と4番目の次元のペア及び3番目の次元と1番目の次元のペアが生成されている。そこで、この例の場合には、これら2つのペアに対応して、2つの2次元分散共分散行列を、それぞれ、角度θ24(λ)、角度θ31(λ)だけ回転変換する2つの2次元回転行列r24及びr31が生成されることになる。まずは、それぞれの次元ペアに対応する2×2の分散共分散行列C24及びC31を、(3)式から次のように求める。
一方、2次元回転行列r24及びr31は、回転角度θ24(λ)、角度θ31(λ)を用いて、以下のように表すことができる。
ところで、2次元のデータの分布が正規分布(ガウス分布)に従っているとき、データ分布は、2次元平面上で楕円形状で表すことができ、その輪郭線(2次元ガウス楕円)は、もとのデータの分散共分散行列により定義されることが知られている。つまり、2次元回転行列r24及びr31により、2次元分散共分散行列C24及びC31を、それぞれ、角度θ24(λ)、角度θ31(λ)回転変換することは、分散共分散行列C24及びC31により定義されるガウス楕円を各2次元平面上で角度θ24(λ)、角度θ31(λ)回転させることを意味する。そして、ガウス分布の分散共分散行列が定義する楕円の長軸が、横軸に対して45°の角度をなす場合、2次元平面の横軸及び縦軸に相当する2つの次元の分散値が等しくなる(Isotropic=等分散状態となる)ことが知られている。つまり、分散共分散行列C24及びC31により定義される楕円が図3(a)、(b)に示すようなものであった場合、これらの楕円を、それぞれ、θiso_24、θiso_31だけ回転すれば、σ22=σ44、σ33=σ11となる。後に詳述するが、本願の発明者は、分散共分散行列における全ての分散値が等しくなる場合、バイナリ化による量子化誤差が最小となることを見出した。したがって、次元ペアに対応する楕円を45°の角度まで2次元回転して2つの値を均一化する処理を、学習用データから算出された分散共分散行列における全分散値が全て均一になるまで繰り返し行えば、量子化誤差を最小化し、精度よくバイナリコーディングを行うことができる。
さらに、本願の発明者は、データが正規分布に従っているとき、バイナリ化による量子化誤差を最小化する角度において、バイナリコードのエントロピーは最小となること、及び、楕円の長軸(2次元分散共分散行列の第1主成分)または短軸(2次元分散共分散行列の第2主成分)が、横軸または縦軸に対して0°の角度をなすとき、エントロピーが最大となること、を見出した。一般に、バイナリコードのエントロピーが大きいほど、つまり、バイナリコードの独立性が高いほど、精度の良いコーディングであるとされているため、コーディング精度に関し、量子化誤差とエントロピーとは、いわゆるトレードオフの関係にあることを意味する。したがって、例えば、図3に示す楕円を回転する角度を、量子化誤差とエントロピーのバランスがとれるような角度に設定すれば、精度よくバイナリコーディングを行うことができる変換行列Aを生成することができる。そこで、第1の実施の形態では、角度θ(λ)を、θiso及びθpca(楕円で示されるガウス分布の第1主成分軸の傾き角度)を用いて、以下の式(4)により決定する。なお、λは、ユーザにより設定されるパラメータであり、0≦λ≦1の間の値をとる。
θiso_24、θpca_24、θiso_31、θpca_31は、分散値を用いて以下のように求めることができ、この値を用いて、θ24(λ)、θ31(λ)を求めることができる。
したがって、λを設定すれば、2次元回転行列r24及びr31も、それぞれ、具体的に求めることができる。
図1に戻り、対回転行列生成部123は、2次元回転行列算出部122にて算出された2次元回転行列の要素及び0要素を、ソート行列Sによるソート結果に対応するように並べた、n×nの対回転行列Rを生成する。上述の例では、2次元回転行列算出部122にて算出されたr24及びr31は、それぞれ、特徴ベクトルを、ペアになった2つの次元(2、4)、(3、1)に着目して、別個に回転させる行列である。対回転行列生成部123にて生成される対回転行列Rは、これらの2次元回転行列rを組み合わせて1回のソーティングで生成された全ての次元ペアについて一度に回転を行う行列である。
ただし、前述のように、最終的に生成される変換行列は、ソート行列Sと、対回転行列Rを、所定個組み合わせて構成される。そして、変換される特徴ベクトルには、先にソート行列Sが乗算されることになる。したがって、対回転行列Rは、2次元回転行列rの各要素が、ソート行列Sによるソート後の特徴ベクトルに対応するように決定される。上述の例では、ソート行列Sにより、特徴ベクトルは、(x2、x3、x1、x4)とソートされるので、回転行列Rは、以下のとおりとなる。図2に示すように、変換行列Aは、複数の対回転行列Rを含むので、対回転行列生成部123は、対回転行列の生成を繰り返し行う。
分散共分散行列更新部124は、ソート行列Sと対回転行列Rが1つずつ生成されるたびに、ソート行列Sと対回転行列Rを用いて、分散共分散行列Cを繰り返し更新する。これは、対回転行列Rの乗算により、各分散値の具体的値は変化するため、ソート行列生成部121にて、2回目以降、分散値の降順ソートを行う場合には、直前のベーシック・ローテーション適用後の分散共分散行列の分散値を用いる必要があるからである。具体的には、1個目のソート行列S1、1個目の対回転行列R1が生成されたとすると、分散共分散行列更新部124は、C´=R1×S1×C×S1T×R1Tとして、分散共分散行列を更新する。そして、ソート行列生成部121は、この更新された分散共分散行列C´の分散値ソートを行い、2個目のソート行列を生成する。このようにして、分散共分散行列更新部124は、分散共分散行列の更新を繰り返し行う。
図2を用いて説明したように、変換行列Aは、ソート行列Sと対回転行列Rの1個ずつのペア(ベーシック・ローテーション)からなり、本実施の形態では、変換行列Aには、このベーシック・ローテーションがlog2n個含まれる。図4(a)から(d)は、分散共分散行列算出部11にて算出された分散共分散行列Cの対角成分である各分散値を模式的に示す図である。上述の例においては、ソート行列生成部121により、分散値は、図4(a)に示された状態から、図4(b)に示す状態にソートされた。そして、対回転行列生成部123にて生成された対回転行列R(ここでは、λ=0とする。)を用いた回転により、σ22=σ44、σ33=σ11となるので、分散値は図4(b)の状態から図4(c)の状態となる。図4(c)の状態からもう一回、ソート行列生成部121における分散値のソート及び対回転行列生成部123にて生成された対回転行列Rによる回転を施すと、図4(d)の状態となり、分散共分散行列Cの全分散値は等しくなる。このように、1回のベーシック・ローテーションの操作で、2次元ずつ分散値が均一になるので、特徴ベクトル及び分散共分散行列がn次元(n=2k)であれば、log2n回操作を繰り返すことで、全分散値が等しくなる。このとき、量子化誤差が最小となることは上述のとおりである。また、n≠2kのとき、さらには、λ≠0のときにも、本願発明者の実験によれば、log2n回の操作で、十分な等分散性を確保することができ、精度よくバイナリコーディングを行うことができる変換行列Aを生成できることが分かっている。このため、本実施の形態では、ベーシック・ローテーションをlog2n個組み合わせて変換行列Aを生成している。
なお、図4において、仮に、σ22とσ33、σ11とσ44のペアを生成したとすると、図4(b)の状態からベーシック・ローテーションを1回適用すると、図4(e)の状態になる。図4(c)においては、図4(e)と比べて、次元ペア相互間で、より等分散な状態となっている。すなわち、図4(c)のように、最大分散値と最小分散値、2番目に大きい分散値と2番目に小さい分散値・・・を組み合わせて次元ペアを生成することで、より速く等分散性を確保することができる。これにより、例えば、変換行列Aに含まれるベーシック・ローテーションの数を減らすこともでき、さらに高速にバイナリコーディングを行うことができる。
上述した4次元の場合の例からも明らかなように、ベーシック・ローテーション1回の操作の非ゼロ要素は、高々2n、ベーシック・ローテーションの個数はlogn個であり、変換行列全体でも、非ゼロ要素数は、合計O(nlogn)にすぎないから、特徴ベクトルが1万次元以上の高次元の場合には、変換行列Aは極めて疎となる。したがって、特徴ベクトル変換部13における変換時の積和演算の回数が極めて少ない、高速なエンコードが可能となる。従来技術(BPBC)では、非ゼロ要素数は、O(n2)程度であるから、例えば、65536次元の場合、本実施の形態の特徴ベクトル変換装置10によれば、25倍程度高速に、特徴ベクトルの変換を行うことができる。
次に、本実施の形態の特徴ベクトル変換装置10及びコンテンツ検索装置1の動作フローについて説明する。図5は、コンテンツ検索装置1の動作フロー図である。まず、変換行列Aが生成され(ステップS1)、クエリベクトルが変換行列Aを用いて変換され、クエリバイナリベクトルが生成される(ステップS2)。このクエリバイナリベクトルとコンテンツバイナリベクトルの代表ベクトルとのハミング距離が算出され(ステップS3)、このハミング距離に基づいてクエリベクトルに近い複数のベクトルが抽出され、それらの検索候補とクエリベクトルとのユークリッド距離に基づいて、最も近い特徴ベクトルをもつコンテンツが特定される(ステップS4)。
図6は、特徴ベクトル変換装置10による変換行列の生成までの動作フロー図である。まず、学習用特徴ベクトルから、分散共分散行列Cが算出される(ステップS11)。次に、分散値がソートされて、ソート行列が生成され(ステップS12)、さらに、次元ペアが生成され(ステップS13)、2次元回転行列rが生成される(ステップS14)。続いて、ステップS13にて生成された全ての次元ペア(特徴ベクトルの次元が偶数のときはn/2個、奇数のときは(n−1)/2個)について、2次元回転行列rが算出されたか否かが判定される(ステップS15)。全ての次元ペアについて2次元回転行列rが算出された場合には(ステップS15にてYes)、対回転行列Rを生成する(ステップS16)。ステップS17では、分散共分散行列Cが更新される。そして、ベーシック・ローテーションがlog2n個生成されたか否かが判定され(ステップS18)、log2n個生成されるまで、ステップS12からの処理が繰り返される。
以上、説明したように、第1の実施の形態の特徴ベクトル変換装置10によれば、学習用特徴ベクトル(n次)から分散共分散行列Cが算出される。このCの分散値を降順にソートして、ソート行列Sが算出されるとともに、2つの次元のペアが生成される。また、次元ペアについての2×2の分散共分散行列から算出された2次元回転行列rを組み合わせた対回転行列Rが生成される。そして、1つのソート行列Sと1つの対回転行列Rをベーシック・ローテーションとし、log2n個のベーシック・ローテーションからなる変換行列Aが生成される。各ソート行列S、各対回転行列Rとも疎行列であり、しかも、ソート行列Sは、他の行列との乗算の前後で非ゼロ要素が増加しない置換行列であるため、このようにして生成される変換行列Aは、非ゼロ要素が極めて少ない。したがって、特徴ベクトルが非常に高次元となっても、高速に特徴ベクトルをバイナリベクトルに変換することができる。
さらに、第1の実施の形態の特徴ベクトル変換装置は、対回転行列Rを生成する際、トレードオフの関係にある量子化誤差とエントロピーのバランスがとれるような回転角度を決定することができるため、このような対回転行列Rを含む変換行列Aを用いて、精度よくバイナリコーディングを行うことができる。
(理論的背景)
上述のように、第1の実施の形態では、量子化誤差はアイソトロピック(分散均一)の状態で最小化されるとの前提の下、変換行列Aを構成する1つのベーシック・ローテーションの中で、量子化誤差とエントロピーとのバランスをとるように回転角度を決定した。以下では、その理論的背景について説明する。
バイナリ変換前後の量子化誤差は、変換前の特徴ベクトルをx、変換後の特徴ベクトルをb(x)、データの個数をN個とすると、以下のように定義される。
データが2次元であると仮定し、データ分布が任意分布関数p(x)で表されるとき、平均量子化誤差は、以下のように記述することができる。
これは、一般的には、次のように計算することができる。
ここで、p1(・)、p2(・)は、それぞれ、x1、x2についての周辺分布である。
データ分布がガウス分布であると仮定すると、量子化誤差は、さらに次のように記述することができる。
上式において、Σは分散共分散行列である。回転変換の下で、上式を最小化すると、アイソトロピック解(σ11=σ22)が得られる。したがって、データがガウス分布に従っているとき、アイソトロピックになるような変換は、量子化誤差を最小化することが分かる。ここではデータが2次元であると仮定しているが、このような結果は、データがより高次元である場合にも、そのまま当てはまる。
他方で、コーディング精度の他の指標の1つである、バイナリコードのエントロピーも、データがガウス分布に従うと仮定すると、2次元の場合については、解析的に計算可能である。ガウス分布の対称性から、(1、1)及び(−1、1)のバイナリコードの確率のみ算出すれば十分であり、これらは、それぞれ、以下のとおりである。
なお、λ1、λ2は、分散共分散行列の固有値であり、λ1≧λ2である。また、θは、2次元ガウス楕円の第1主成分軸の横軸に対する角度である。2次元バイナリコードのエントロピーは、次のように表すことができる。
図7(a)、(b)は、それぞれ、以上のようにして得られた量子化誤差及びエントロピーと角度θとの関係を示すグラフである。図7に示すように、量子化誤差が最小化されるとき(θ=π/4)、エントロピーも最小化され、量子化誤差が最大化されるとき(θ=0)、エントロピーも最大化されることが分かる。すなわち、量子化誤差とエントロピーとは、トレードオフの関係にある。本発明の第1の実施の形態及び後述する第2の実施の形態の特徴ベクトル変換装置は、このような解析結果に基づき、変換行列の生成を行うものである。なお、実際のデータ分布が正規分布であるとは限らないが、上記の理論は、近似的に、あらゆるデータ分布の性質を表すものとして解釈可能である。したがって、上記の理論に基づいた、本発明の第1及び第2の実施の形態の特徴ベクトル変換装置も、データが正規分布であるか否かにかかわらず利用可能であり、また、精度よくバイナリコーディングを行うことができる。
(第2の実施の形態)
次に、本発明の第2の実施の形態の特徴ベクトル変換装置及びコンテンツ検索装置について説明する。第1の実施の形態の特徴ベクトル変換装置は、1つのベーシック・ローテーションの中で、量子化誤差とエントロピーとのバランスを考慮して、変換行列Aを生成した。これに対し、第2の実施の形態の特徴ベクトル変換装置は、変換行列Aを構成するベーシック・ローテーションを、量子化誤差の最小化を考慮した第1グループと、エントロピーの最大化を考慮した第2グループに分け、これらの2種のベーシック・ローテーションを組み合わせることにより、全体で量子化誤差とエントロピーとのバランスをとるものである。
第2の実施の形態の特徴ベクトル変換装置及びコンテンツ検索装置の構成は、図1に示す、第1の実施の形態の特徴ベクトル変換装置及びコンテンツ検索装置と同様である。そこで、以下では、各構成について、第1の実施の形態と同じ番号を用いて説明する。
ソート行列生成部121は、第1のグループのベーシック・ローテーションについては、第1の実施の形態と同様に、降順で分散共分散行列Cの分散値をソートし、ソート行列Sを算出する。一方、第2のグループのベーシック・ローテーションについては、分散共分散行列Cの分散値のランダムソートを行い、ソート行列Sを算出する。
2次元回転行列算出部122は、第1のグループのベーシック・ローテーションについては、次元ペアに対応する2次元ガウス楕円の回転後の長軸の傾き角度が45°となるように、回転角度を決定し、2次元回転行列rを算出する。この回転角度は、図2のθisoであり、上述したように、分散が均一となる角度である。一方、2次元回転行列算出部122は、第2のグループのベーシック・ローテーションについては、次元ペアに対応する2次元ガウス楕円の回転後の長軸の傾き角度が0°となるように、回転角度を決定し、2次元回転行列rを算出する。この回転角度は、図2のθpcaであり、上述したように、エントロピーが最大になる角度である。なお、上述のように、第2の実施の形態では、分散値の降順ソートとランダムソートが行われる。このため、分散値の降順ソートが行われる第1のグループのベーシック・ローテーションについては、第1の実施の形態と同様に、分散値の最大値と最小の分散値に対応する次元ペア、2番目に大きい分散値と2番目に小さい分散値に対応する次元ペア・・・が生成される。一方、分散値のランダムソートが行われる第2のグループのベーシック・ローテーションについては、ランダムソートの結果に基づき、ランダムにペアが生成される。
対回転行列生成部123は、第1の実施の形態と同様に、2次元回転行列rから対回転行列Rを生成する。このようにして、第2の実施の形態では、変換行列生成部12は、第1のグループ、第2のグループ、それぞれについて、ソート行列Sと対回転行列Rを組み合わせ、変換行列Aを生成する。なお、生成された変換行列は、図8に示すように、式(2)において、特徴ベクトルxに先に乗算される側に第1のグループのベーシックローテーションが、後に乗算される側に第2のグループのベーシック・ローテーションが配置される。
第2の実施の形態では、変換行列Aは、第1のグループのベーシック・ローテーションをlog2n個と、第2のベーシックローテーションをk個組み合わせて構成される。すなわち、第1の実施の形態に比べて、k回だけ、ベーシックローテーションの適用回数が増加する。kは、学習により、精度や他の基準を最大化するように決定されるが、典型的には、O(log2n)回程度でも、十分高精度な変換を行うことができる。したがって、k個のベーシック・ローテーションの追加に伴う非ゼロ要素の増加は極めて小さく、第1の実施の形態と同様に、極めて高速にバイナリコーディングを行うことができる。
図9は、第2の実施の形態の特徴ベクトル変換装置10の動作フロー図である。図9に示すステップのうち、ステップS201からS208までが第1のグループのベーシック・ローテーションの生成に相当し、ステップS209からステップS215までが第2のグループのベーシック・ローテーションの生成に対応する。ステップS201からステップS208まで、及びステップS209からステップS215までのフローは、第1の実施の形態の特徴ベクトル変換装置10の動作フローと概略同様である。ただし、ステップS202では、分散値のソートは降順で行い、ステップS209では、分散値のランダムソートを行う。また、ステップS204にて算出される2次元回転行列の回転角度は、θisoであり、ステップS211にて算出される2次元回転行列の回転角度は、θpcaである。
以上、説明したように、第2の実施の形態の特徴ベクトル変換装置によっても、1つのソート行列Sと1つの対回転行列Rをベーシック・ローテーションとし、log2n+k個のベーシック・ローテーションからなる変換行列Aが生成される。このようにして生成される変換行列Aは、SもRも疎行列であり、また、置換行列であるSをRに乗じても非ゼロ要素数は増えないため、非ゼロ要素が極めて少ない。したがって、特徴ベクトルが非常に高次元となっても、高速に特徴ベクトルをバイナリベクトルに変換することができる。
さらに、第2の実施の形態の特徴ベクトル変換装置は、変換行列Aを構成するベーシック・ローテーションを、量子化誤差の最小化を考慮した第1グループと、エントロピーの最大化を考慮した第2グループに分け、これらの2種のベーシック・ローテーションを組み合わせることにより、全体で量子化誤差とエントロピーとのバランスをとることができるため、精度よくバイナリコーディングを行うことができる。
(変形例)
上記第1及び第2の実施の形態では、分散値を所定の順序でソートする場合の一例として、降順ソートする場合について説明したが、昇順でソートしてもよいし、他の基準にしたがってソートしてもよい。また、上記の実施の形態では、分散共分散行列の算出の一例を挙げて説明したが、他の手法により分散共分散行列を算出してもよい。さらに、第1及び第2の実施の形態では、コンテンツ検索装置が式(2)の平行移動ベクトルtが、特徴ベクトルの平均データである場合について説明したが、中央値等その他のデータを用いてもよい。
上記第1及び第2の実施の形態では、ソート行列Sを生成し、ソート結果に基づいて次元のペアを生成したが、ソート行列を生成せずに、次元のペアを任意の基準に従い、決定してもよい。この場合でも、2次元回転行列rの各要素は、対応する次元ペアに応じて、対回転行列Rにおける位置が一意に決まる。また、第1及び第2の実施の形態において、θpcaとして、2次元ガウス楕円の第1主成分軸と横軸に対する傾き角を用いたが、これに限らず、いずれかの主成分軸と縦軸または横軸のなす角であればよい。
第1の実施の形態では、次元数nが4の場合を具体例に挙げて説明したが、第1及び第2の実施の形態において、それ以外の次元数を適用可能であることは言うまでもない。なお、次元数nが奇数の場合には、次元のペアは(n−1)/2個生成され、対回転行列における、ペアを構成しない残り1個の次元に対応する対角成分として、「1」、非対角成分として「0」が挿入されてよい。すなわち、当該ベーシック・ローテションにおいては、その残りの1個の次元について回転を行わない。具体的には、例えば、次元数が5で、次元2と4、次元1と5でペアが生成された場合、対回転行列において、ソート行列によるソート結果に対応して3行3列の位置の値は「1」であり、3行1、2、4、5列の値は、それぞれ0となる。
また、生成された次元ペアについて、回転変換を行う必要のない場合(例えば、第2の実施の形態の第1のベーシック・ローテーションのグループを生成する場合において、ペアを構成する2つの次元の分散値がもともと同一であった場合等)、当該ペアに対応する2次元回転行列は、単位行列となり、当該ペアに対応する対角成分に「1」、当該ペアに対応する非対角成分に「0」が挿入される。さらに、次元のペアの数は、n/2個あるいは(n−1)/2個に限られない。2次元回転行列を生成する次元のペアの数はこれより少なくてもよく、ペアを構成しない次元については、当該ベーシック・ローテーションにおいて、回転を行わずに、対応する対角成分に「1」、対応する非対角成分に「0」を挿入してよい。この場合において、ベーシック・ローテーションの生成回数を増やすことにより、等分散性を高めてもよい。
第2の実施の形態では、エントロピーの最大化を考慮した第2のグループについて、ランダムソートを行い、ランダムにペアを生成する場合について説明したが、ソートは他の手法で行われてもよい。また、第1のグループにおいて、ランダムソートを行い、ランダムペアを生成してもよい。
本発明は高速なバイナリエンコーディングを行うことができるという効果を有し、特徴ベクトル変換装置等として有用である。
1 コンテンツ検索装置
10 特徴ベクトル変換装置
11 分散共分散行列生成部
12 変換行列生成部
121 ソート行列生成部
122 2次元回転行列算出部
123 対回転行列生成部
124 分散共分散行列更新部
13 特徴ベクトル変換部
20 コンテンツベクトル記憶部
30 コンテンツ検索部

Claims (9)

  1. 特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換装置であって、
    n次元の学習用特徴ベクトルの分散共分散行列を算出する分散共分散行列算出部と、
    前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成する変換行列生成部と、
    前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換部と
    を備え、
    前記変換行列生成部は、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各次元ペアに対応する2次元分散共分散行列を回転変換する各2次元回転行列の要素を含むn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成する特徴ベクトル変換装置。
  2. 特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換装置であって、
    n次元の学習用特徴ベクトルの分散共分散行列を算出する分散共分散行列算出部と、
    前記分散共分散行列を更新する分散共分散行列更新部と、
    前記分散共分散行列算出部にて算出され、または前記分散共分散行列更新部にて更新された分散共分散行列の対角成分である各分散値をランダムに、または、所定の順序でソートする置換行列であるソート行列を生成するソート行列生成部と、
    前記学習用特徴ベクトルの1からnまでの次元のうち、前記ソート行列に基づいて決定される2つの次元のペアに対応する2次元分散共分散行列を回転変換する2次元回転行列を、n/2または(n−1)/2個の各ペアについて算出する2次元回転行列算出部と、
    前記2次元回転行列生成部にて生成された各前記2次元回転行列の要素を、前記ソート行列によるソート結果に対応するように並べたn×nの対回転行列を生成する対回転行列生成部と、
    前記ソート行列及び前記対回転行列を所定個数組み合わせた変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換部と
    を備え、
    前記分散共分散行列更新部は、前記ソート行列と前記対回転行列が1つずつ生成されるたびに、前記ソート行列と前記対回転行列を用いて、前記分散共分散行列を繰り返し更新する特徴ベクトル変換装置。
  3. 前記2次元回転行列における回転角度は、当該2つの次元の分散値が等しくなる角度である等分散角度、および/または、前記2次元分散共分散行列の主成分軸の傾き角度に基づいて算出される請求項1または2に記載の特徴ベクトル変換装置。
  4. 前記2次元回転行列における回転角度は、前記等分散角度θiso、前記主成分軸の傾き角度θpca、0以上1以下の設定値λを用いて、θiso+λ(θpca−θiso)により算出される請求項3に記載の特徴ベクトル変換装置。
  5. 前記2次元回転行列における回転角度が、前記2次元分散共分散行列の主成分軸の傾き角度、または、当該2つの次元の分散値が等しくなる角度である等分散角度のいずれかである請求項1または2に記載の特徴ベクトル変換装置。
  6. 前記2つの次元のペアは、前記各分散値を降順または昇順でソートした場合における順序に基づき、nが偶数のとき、(1番目の分散値、n番目の分散値)、(2番目の分散値、n−1番目の分散値)、・・・(n/2番目の分散値、(n+2)/2番目の分散値)であり、nが奇数のとき、(1番目の分散値、n番目の分散値)、(2番目の分散値、n−1番目の分散値)、・・・((n−1)/2番目の分散値、(n+3)/2番目の分散値)のペアである、請求項1から5のいずれかに記載の特徴ベクトル変換装置。
  7. クエリコンテンツと類似のコンテンツを検索するコンテンツ検索装置であって、
    n次元の学習用特徴ベクトルの分散共分散行列を算出する分散共分散行列算出部と、
    前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成する変換行列生成部と、
    前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換部と、
    前記特徴ベクトル変換部にて変換された、前記クエリコンテンツに対応するバイナリベクトルと、検索対象コンテンツに対応するバイナリベクトルとのハミング距離に基づき、類似コンテンツを検索するコンテンツ検索部と
    を備え、
    前記変換行列生成部は、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各次元ペアに対応する分散共分散行列を回転変換する各2次元回転行列の要素を並べたn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成するコンテンツ検索装置。
  8. 特徴ベクトルをバイナリベクトルに変換する特徴ベクトル変換装置が実行する特徴ベクトル変換方法であって、
    n次元の学習用特徴ベクトルの分散共分散行列を算出するステップと、
    前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成するステップと、
    前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換するステップと
    を備え、
    前記変換行列を生成するステップにおいては、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各次元ペアに対応する分散共分散行列を回転変換する各2次元回転行列の要素を並べたn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成する特徴ベクトル変換方法。
  9. 特徴ベクトルをバイナリベクトルに変換するためのプログラムであって、コンピュータに、
    n次元の学習用特徴ベクトルの分散共分散行列を算出するステップと、
    前記分散共分散行列算出部にて算出された前記分散共分散行列に基づいて、変換行列を生成するステップと、
    前記変換行列生成部にて生成された変換行列を用いて、入力された特徴ベクトルをバイナリベクトルに変換するステップと
    を実行させ、
    前記変換行列を生成するステップにおいては、前記学習用特徴ベクトルの1からnまでの各次元の2つずつを組み合わせて1個以上の次元のペアを生成し、各次元ペアに対応する分散共分散行列を回転変換する各2次元回転行列の要素を並べたn×nの対回転行列を、前記分散共分散行列を更新しながら繰り返し算出して、前記変換行列を生成するプログラム。
JP2014112797A 2014-05-30 2014-05-30 特徴ベクトル変換装置及びコンテンツ検索装置 Pending JP2015228083A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014112797A JP2015228083A (ja) 2014-05-30 2014-05-30 特徴ベクトル変換装置及びコンテンツ検索装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014112797A JP2015228083A (ja) 2014-05-30 2014-05-30 特徴ベクトル変換装置及びコンテンツ検索装置

Publications (1)

Publication Number Publication Date
JP2015228083A true JP2015228083A (ja) 2015-12-17

Family

ID=54885531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014112797A Pending JP2015228083A (ja) 2014-05-30 2014-05-30 特徴ベクトル変換装置及びコンテンツ検索装置

Country Status (1)

Country Link
JP (1) JP2015228083A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021103557A (ja) * 2020-04-08 2021-07-15 百度在綫網絡技術(北京)有限公司 マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品
US11586703B2 (en) 2018-02-08 2023-02-21 Nec Corporation Feature transformation apparatus and method, and recording medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11586703B2 (en) 2018-02-08 2023-02-21 Nec Corporation Feature transformation apparatus and method, and recording medium
JP2021103557A (ja) * 2020-04-08 2021-07-15 百度在綫網絡技術(北京)有限公司 マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品
JP7256834B2 (ja) 2020-04-08 2023-04-12 バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド マルチメディアコンテンツの検索方法、マルチメディアコンテンツの検索装置、電子デバイス、記憶媒体及びコンピュータプログラム製品
US11663260B2 (en) 2020-04-08 2023-05-30 Baidu Online Network Technology (Beijing) Co., Ltd. Method and apparatus for searching multimedia content device, and storage medium

Similar Documents

Publication Publication Date Title
Imani et al. Bric: Locality-based encoding for energy-efficient brain-inspired hyperdimensional computing
US8428397B1 (en) Systems and methods for large scale, high-dimensional searches
US10853738B1 (en) Inference circuit for improving online learning
WO2016033708A1 (en) Apparatus and methods for image data classification
CN107636639B (zh) 快速的正交投影
CN112801280A (zh) 视觉深度自适应神经网络的一维卷积位置编码方法
CN114021696A (zh) 用于高保真图像变换的条件轴向变换层
JP2008234479A (ja) 画像高品質化装置、方法、及びプログラム
US11874866B2 (en) Multiscale quantization for fast similarity search
Chen et al. Learning Deep Unsupervised Binary Codes for Image Retrieval.
Morris et al. Locality-based encoder and model quantization for efficient hyper-dimensional computing
WO2019092868A1 (ja) 情報処理装置、情報処理方法及びコンピュータ読み取り可能な記録媒体
Le Tan et al. DeepVQ: A deep network architecture for vector quantization
Yu et al. Hope: Hierarchical object prototype encoding for efficient object instance search in videos
US20200074277A1 (en) Fuzzy input for autoencoders
JP2015228083A (ja) 特徴ベクトル変換装置及びコンテンツ検索装置
Paisitkriangkrai et al. A scalable stagewise approach to large-margin multiclass loss-based boosting
Fleuret et al. Pattern recognition from one example by chopping
Zhang et al. Spectral error correcting output codes for efficient multiclass recognition
JP2012043437A (ja) 画像処理方法及び画像処理装置
US11816909B2 (en) Document clusterization using neural networks
Mohamed et al. Deep sparse dictionary-based representation for 3D non-rigid shape retrieval
US11914678B2 (en) Input encoding for classifier generalization
JP5962405B2 (ja) 認証プログラム、認証方法及び認証装置
Fang Applications of deep neural networks to protein structure prediction

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20151113