(57)【特許請求の範囲】
【請求項１】
特徴量生成対象のコンテンツを表現する一つ以上の初期特徴量ベクトルが入力されたときに、統合特徴量ベクトルを生成して出力する特徴量生成装置であって、
前記初期特徴量ベクトルの各々を、予め定めた複数の量子と前記複数の量子の各々に対応する代表ベクトルとによって規定される量子化器に基づいて、二つ以上の量子に割り当てる量子化部と、
前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルを求める残差計算部と、
前記量子ごとに計算された残差ベクトルを統合した統合特徴量ベクトルを求め、求められた前記統合特徴量ベクトルに、予め定めた変換行列を適用して無相関化処理を施して得られた前記統合特徴量ベクトルを、前記コンテンツの特徴量として出力する統合部と、
を含み、
前記残差計算部は、前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルの総和を計算し、前記量子ごとに計算された前記残差ベクトルの総和に対して、予め定められた、前記残差ベクトルと同数の次元を持つ射影ベクトルで構成される二つ以上の射影ベクトル行列による変換を施す特徴量生成装置。
【請求項２】
特徴量生成対象のコンテンツを表現する一つ以上の初期特徴量ベクトルが入力されたときに、統合特徴量ベクトルを生成して出力する特徴量生成装置における特徴量生成方法であって、
量子化部が、前記初期特徴量ベクトルの各々を、予め定めた複数の量子と前記複数の量子の各々に対応する代表ベクトルとによって規定される量子化器に基づいて、二つ以上の量子に割り当てるステップと、
残差計算部が、前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルを求めるステップと、
統合部が、前記量子ごとに計算された残差ベクトルを統合した統合特徴量ベクトルを求め、求められた前記統合特徴量ベクトルに、予め定めた変換行列を適用して無相関化処理を施して得られた前記統合特徴量ベクトルを、前記コンテンツの特徴量として出力するステップと、
を含み、
前記残差計算部は、前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルの総和を計算し、前記量子ごとに計算された前記残差ベクトルの総和に対して、予め定められた、前記残差ベクトルと同数の次元を持つ射影ベクトルで構成される二つ以上の射影ベクトル行列による変換を施す特徴量生成方法。
【請求項３】
コンピュータを、請求項１に記載の特徴量生成装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特徴量生成装置、方法、及びプログラムに係り、特に、コンテンツの特徴量ベクトルを得る特徴量生成装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
通信環境やコンピュータ、プロセッサ、分散処理基盤技術の高度化・高品質化により、ネットワークに流通するメディアコンテンツの数は膨大なものとなっている。例えば、ある検索エンジンがインデクシングしているウェブページの数は数兆にのぼるといわれている。また、あるサイトでは、日々３．５億の画像がアップロードされていると報告されており、また、あるサイトでは、１分当たり６４時間分の映像が新規に公開されているとの報告もある。
【０００３】
このような膨大な量のコンテンツは、利用者にとっては豊富な情報源となる一方で、閲覧したいコンテンツに素早くアクセスすることが困難になっているという技術的な課題ももたらしている。このような流れの中、閲覧・視聴したいコンテンツを効率的に探し出すためのメディア解析技術への要望がますます高まってきている。
【０００４】
上記のような用途においては、一般にコンテンツの意味内容に興味があり、意味内容として同一、又は類似したコンテンツを発見する手続きが重要な役割を果たす。ここで言う意味内容とは、コンテンツの内容を表すインスタンスであり、実態を伴い、名称づけできるものを指す。例えば、画像や映像に写っている物体がその代表例である。
【０００５】
例えば、コンテンツを分類する場合を考えると、同じような意味内容を持つコンテンツを同じカテゴリに分類したいことが多い。あるいは検索の場合、あるコンテンツをクエリとして与えたとき、このコンテンツと同一あるいは類似した意味内容を持つコンテンツを検索することが基本的な要件となる。そのほか、コンテンツ推薦においても、利用者がこれまでに閲覧した／閲覧しているコンテンツと意味内容として同一、ないし類似したコンテンツを発見してこれを推薦する。また、コンテンツ要約の場合においても、意味内容に重複のない部分を発見し、これをまとめていく処理が必要となる。
【０００６】
ここで、意味内容が同一、又は類似したコンテンツを発見する典型的な手続きについて解説しておく。まず、各々のコンテンツを一つ以上の特徴量ベクトルの集合によって表現する。次に、互いに異なる二つのコンテンツに含まれる特徴量ベクトル同士の近さを測り、これが近いペア（マッチするペア）が多数含まれているほど、意味内容が近しい、又は、同一のコンテンツであると見做す。
【０００７】
ここで、一つのコンテンツを一つ以上の特徴量ベクトルの集合として表現する理由を、コンテンツが画像で、意味内容が物体である場合を例に説明しよう。なお、意味内容が物体以外のもの、例えば文字や図形、情景や場所などを表す場合も全く同様であり、また、コンテンツが映像である場合にも、映像は画像の系列と考えられるので、この場合にも全く同様である。
【０００８】
画像の例として写真を考えると、例え同一の物体であっても、どの写真にも同じ位置・姿勢（角度など）・大きさで写っているわけではなく、写真によってさまざまな見え方で撮影されているのが普通である。然るに画像から抽出される特徴量は、位置・姿勢・大きさに依らず、不変性を持つことが望ましい。画像一枚全体を表現するような単純な特徴量では、このような不変性を得ることは難しい。例えば各ピクセルの色（ＲＧＢ値）をベクトルに並べたもの等は、位置・姿勢・大きさいずれに対しても不変ではない。一方、一部情報を抽象化したもの、例えば、色ヒストグラム等は、位置や姿勢に対する不変性は持ちうるが、大きさに対しては不変的ではない。また、物体の一部が欠けていたりする場合に対しても脆弱であるし、情報を抽象化している分、精度が劣化しやすい。
【０００９】
一方で、画像の微小な領域を大量に抽出し、各微小領域を表現する一定次元の特徴量ベクトルを得るものとし、この複数の特徴量ベクトルの集合によって画像を表現したとする（局所特徴量などと呼ばれる）。すると、位置・姿勢・大きさ、いずれに対しても不変な特徴量とすることができることが知られている。より具体的には、このように表現された二枚の画像があるとき、各画像を表現する特徴量ベクトルの集合から、それぞれ一サンプルずつを取って比較し、同一性を判定する。同一であると判定できる特徴量ベクトルの組が多ければ、この二枚の画像は同一の物体を含む可能性が高く、小さければ低いと言える。各画像の（微小領域の）特徴量ベクトル同士の比較は、微小領域の位置だけでなく、大きさにも依らない方法で行われる。また、もし特徴量ベクトル自体が姿勢に対して不変性を持つものであるとすれば、このような表現及びその比較は、位置・姿勢・大きさのいずれにも不変なものとなる。このような不変性を持つ特徴量ベクトルを得る方法は数多く知られており、例えば非特許文献１に記載のＳｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ（ＳＩＦＴ）などが存在する。
【００１０】
以上述べた通り、上記典型的な手続きによれば、コンテンツを一つ以上の特徴量ベクトルの集合として表現することで、位置・姿勢・大きさによらず、頑健に、意味内容が同一、又は、近しいコンテンツを発見することができる。
【００１１】
一方で、このような方法は、コンテンツ同士を比較するために、多数の特徴量ベクトルを比較しなければならず、非常に非効率的であるという問題がある。
【００１２】
仮に、コンテンツが１２８次元の特徴量ベクトル１００００個で表現されているとしよう。この時、任意の二つのコンテンツを比較するのに、１００００×１００００×１２８の、計１２８億回の演算を要し、一般的なコンピュータで実行した場合、１０〜１５秒程度の時間を要する。もしコンテンツ数が１００００あったとして、これらの中から意味内容が同一あるいは近しいコンテンツを発見するような場合には、さらにこの１００００倍の時間を要することとなる。
【００１３】
加えて、このような特徴量ベクトルが実数値（４バイト精度）を全てメモリにストアした場合、約５０ギガバイト（ＧＢ）という非常に大きなメモリが必要となる。
【００１４】
以上の問題を鑑み、実用上、高精度かつ高効率に、意味内容が同一又は近しいコンテンツを発見可能にする特徴量生成技術が望まれる。
【００１５】
以上の問題に対して、従来よりいくつかの発明がなされ、開示されてきている。
【００１６】
非特許文献２には、特徴量ベクトルをあらかじめ定められた量子のうち、いずれか一つに割り当てる量子化を行うことによって、同一の物体を含みうる画像を効率的に発見する方法を開示している。予め集めた学習用の画像から、多数の局所特徴量を抽出し、これらをＫ−ｍｅａｎｓ法によってクラスタリングすることで、量子化器（符号張）を学習しておく。この量子化器を用いて、元の画像の特徴量ベクトルをおのおの一つの量子に割り当てられるよう量子化することで、画像は複数の量子によって表現されることになる。結果として、画像と量子の関係は、文書とこれに含まれる単語の関係と等価になるので、文書検索と同じ要領で検索が実行できるようになる。
【００１７】
特許文献１には、非特許文献２に開示されている手続きと同様の手続きを取り、さらに、各量子の出現頻度を複数種類求めることで、より高精度に同一の物体を含む画像を発見することができる方法を開示している。
【００１８】
非特許文献３に開示されている技術は、下記のようなものである。まず、非特許文献２に開示されている手続きと同様に量子化器を学習する。画像を表現する際には、まず、当該画像に含まれる特徴量ベクトルを量子化する。続いて、量子ごとに、当該量子に割り当てられた特徴量ベクトルと、当該量子の代表ベクトルとの残差ベクトルを求め、その総和を求める。最終的に、量子ごとに計算されたこの残差ベクトルを一列に並べたベクトル（すなわち、「量子数×特徴量ベクトル次元数」の次元を持つ）を求め、これを当該画像の表現とする。
【００１９】
非特許文献４には、非特許文献３をさらに改良した技術が開示されている。非特許文献３の技術との違いは次の２点である：量子ごとに残差ベクトルの総和を求めるのではなく、正規化残差ベクトルの総和を求める。また、量子ごとに、正規化残差ベクトルに対して主成分分析（Principal  Component  Analysis：PCA）を適用する。以降、非特許文献３と同様に、量子ごとに計算された正規化残差ベクトルを一列に並べたベクトル（すなわちこちらも、「量子数×特徴量ベクトル次元数」の次元を持つ）を求め、これを当該画像の表現とする。
【先行技術文献】
【特許文献】
【００２０】
【特許文献１】特開２０１４−２２９０６３号公報
【非特許文献】
【００２１】
【非特許文献１】D.G. Lowe, “Distinctive Image Features from Scale-Invariant Keypoints ”, International Journal of Computer Vision, pp.91-110, 2004
【非特許文献２】Josef Sivic, Andrew Zisserman. Video Google: A Text Retrieval Approach to Object Matching in Videos. In Proc. IEEE International Conference on Computer Vision (ICCV). Pages. 1470-1477, 2003.
【非特許文献３】Herve Jegou, Matthijs Douze, Cordelia Schmid, Patrick Perez. Aggregating Local Descriptors into a Compact Image Representation. In Proc. IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Pages. 3304-3311, 2010.
【非特許文献４】Jonathan Delhumeau, Philippe-Henri Gosselin, Herve Jegou, Patrick Perez. Revisiting the VLAD image representation. In Proc. ACM Multimedia. Pages. 653-656, 2013.
【発明の概要】
【発明が解決しようとする課題】
【００２２】
大局的にみれば、既存の技術においては量子化による情報損失の小さい特徴量ベクトルを生成することができず、良好な精度が得られない点が問題である。
【００２３】
先に述べた通り、意味内容が同一のコンテンツを高速に発見するためには、量子化を導入することが効果的であることが知られている。一方で、量子化を導入することで、元の特徴量ベクトルが本来持っていた情報は失われてしまう。結果として、意味内容を正しく表現することができなくなり、精度劣化を引き起こしてしまう。言うまでもなく両者は相反する関係にあり、然るに、精度と効率を両立させるためには、量子化された後であっても、精度に影響を及ぼさないような効果的な特徴量を生成する必要がある。
【００２４】
非特許文献２、及び特許文献１に開示されている技術は、特徴量ベクトルを量子化し、コンテンツを量子の集合として表現することで、非効率的な特徴量ベクトルの比較を省き、処理を効率化することができていた。しかしながら、本来実数値ベクトルとして表現される特徴量ベクトルを単純に量子化するのみでは、量子化による情報損失の影響を直接受けるため、結果として精度が大きく劣化するという問題がある。
【００２５】
また、非特許文献２、特許文献１の技術については、依然として特徴量ベクトルの数分の情報をメモリにストアする必要があったため、量子化しているにもかかわらず、処理が非効率的なままであるという問題も残されている。
【００２６】
一方、非特許文献３、及び非特許文献４の技術は、各量子に割り当てられた特徴量ベクトルと代表ベクトルとの（正規化）残差ベクトルの総和を求めることで、量子化誤差の影響を低減しつつ、メモリ効率の改善を図っている。しかしながら、依然として量子化の方法は各特徴量ベクトルを単一の量子に割り当てる至極単純なものであり、このようにして求められる特徴量ベクトルによって十分な精度を得るには、量子化損失を抑えるために非常に多くの量子を用意しなければならなかった。結果として、最終的に生成される特徴量ベクトルは非常に高次元となり、非効率的な処理になってしまうという問題があった。一例として、１６ビット量子化、すなわち２＾１６＝６５５３６個の量子に量子化する場合、最終的にコンテンツを表現するベクトルの長さは１コンテンツあたり６５５３６×１２８＝８，３８８，６０８次元となる。最悪の場合、情報量にして１コンテンツ当たり３２メガバイト（ＭＢ）、仮にコンテンツ数が１００００であるとすると、必要なメモリ容量は３１２ＧＢにまで膨れ上がることになる。さらに、コンテンツ間の比較を行う場合にも、この非常に高次元な実数値ベクトルの距離を比較することになるので、多大な時間を要してしまう。
【００２７】
以上、概観するに、現在に至るまで、処理時間、メモリ容量の観点での効率的でありながら、意味内容が同一または近しいコンテンツを精度よく発見できるコンテンツの特徴量を生成することができる技術は発明されていなかった。
【００２８】
本発明は、上記問題点を解決するために成されたものであり、処理時間、メモリ容量の観点での効率的でありながら、意味内容が同一又は近しいコンテンツを、精度よく、かつ効率的に発見することができる特徴量を生成することができる特徴量生成装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００２９】
上記目的を達成するために、第１の発明に係る特徴量生成装置は、特徴量生成対象のコンテンツを表現する一つ以上の初期特徴量ベクトルが入力されたときに、統合特徴量ベクトルを生成して出力する特徴量生成装置であって、前記初期特徴量ベクトルの各々を、予め定めた複数の量子と前記複数の量子の各々に対応する代表ベクトルとによって規定される量子化器に基づいて、一つ以上の量子に割り当てる量子化部と、前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルを求める残差計算部と、前記量子ごとに計算された残差ベクトルを統合した統合特徴量ベクトルを求め、求められた前記統合特徴量ベクトルに、予め定めた変換行列を適用して無相関化処理を施して得られた前記統合特徴量ベクトルを、前記コンテンツの特徴量として出力する統合部と、を含んで構成されている。
【００３０】
また、第１の発明に係る特徴量生成装置において、前記残差計算部は、前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルの総和を計算し、前記量子ごとに計算された前記残差ベクトルの総和に対して、予め定められた、前記残差ベクトルと同数の次元を持つ射影ベクトルで構成される一つ以上の射影ベクトル行列による変換を施すようにしてもよい。
【００３１】
第２の発明に係る特徴量生成方法は、特徴量生成対象のコンテンツを表現する一つ以上の初期特徴量ベクトルが入力されたときに、統合特徴量ベクトルを生成して出力する特徴量生成装置における特徴量生成方法であって、量子化部が、前記初期特徴量ベクトルの各々を、予め定めた複数の量子と前記複数の量子の各々に対応する代表ベクトルとによって規定される量子化器に基づいて、一つ以上の量子に割り当てるステップと、残差計算部が、前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルを求めるステップと、統合部が、前記量子ごとに計算された残差ベクトルを統合した統合特徴量ベクトルを求め、求められた前記統合特徴量ベクトルに、予め定めた変換行列を適用して無相関化処理を施して得られた前記統合特徴量ベクトルを、前記コンテンツの特徴量として出力するステップと、を含んで実行することを特徴とする。
【００３２】
また、第２の発明に係る特徴量生成装置において、前記残差計算部が残差ベクトルを求めるステップは、前記量子ごとに、前記量子化部により前記量子に割り当てられた前記初期特徴量ベクトルと、前記量子に対応する前記代表ベクトルとの残差ベクトルの総和を計算し、前記量子ごとに計算された前記残差ベクトルの総和に対して、予め定められた、前記残差ベクトルと同数の次元を持つ射影ベクトルで構成される一つ以上の射影ベクトル行列による変換を施すようにしてもよい。
【００３３】
また、第３の発明に係るプログラムは、コンピュータを、第１の発明に係る特徴量生成装置の各部として機能させるためのプログラムである。
【発明の効果】
【００３４】
本発明の特徴量生成装置、方法、及びプログラムによれば、初期特徴量ベクトルの各々を、一つ以上の量子に割り当て、量子ごとに、量子化部により量子に割り当てられた初期特徴量ベクトルと、量子に対応する代表ベクトルとの残差ベクトルを求め、量子ごとに計算された残差ベクトルを統合した統合特徴量ベクトルを求め、求められた統合特徴量ベクトルに、予め定めた変換行列を適用して無相関化処理を施して得られた統合特徴量ベクトルを、コンテンツの特徴量として出力することにより、処理時間、メモリ容量の観点での効率的でありながら、意味内容が同一又は近しいコンテンツを、精度よく、かつ効率的に発見することができる特徴量を生成することができる、という効果が得られる。
【図面の簡単な説明】
【００３５】
【図１】特徴量ベクトルのベクトル空間における残差ベクトルの一例を表す図である。
【図２】本発明の実施の形態に係る特徴量生成装置の構成を示すブロック図である。
【図３】本発明の実施の形態に係る特徴量生成装置における特徴量生成処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００３６】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００３７】
＜本発明の実施の形態に係る概要＞
【００３８】
まず、本発明の実施の形態における概要を図１の概念図を用いて説明する。
【００３９】
図１は、特徴量ベクトルのベクトル空間である。ｘ１、ｘ２は二つの独立な特徴量ベクトルであり、ｃ１、ｃ２はそれぞれ量子１、量子２に対応する代表ベクトルを表す。上記先行技術では、いずれも特徴量ベクトルは単一の量子（図１の例ではｃ１）によって表現される。この例では、単一の量子からの残差ベクトルのみを用いてｘ１、ｘ２を表現することになる。ｃ１からｘ１、ｘ２への正規化残差ベクトルをそれぞれｒ１１、ｒ１２と表す。しかしながら、ｘ１、ｘ２がｃ１から見て近しい方向に存在する場合、量子化の損失によって量子化後の残差ベクトルｒ１とｒ２は非常に近くなってしまうため両者の違いが見極められないという問題が起こり、先行技術では、この量子化損失を抑えるために非常に多くの量子を用意しなければならなかった。
【００４０】
本発明の実施の形態では、単一の量子ではなく、複数の量子に割り当てて、正規化残差ベクトル、図１の例では、ｃ２からの残差ベクトルｒ２１およびｒ２２を求める。ｃ１からの残差ベクトルとは異なり、ｃ２からの残差ベクトルには大きな違いが生じる。結果として、量子数を増やすことなく、量子化による損失の影響を抑えることができるのである。
【００４１】
一方、ただ複数の量子に割り当てるだけでは、量子間の相関が不必要に増加してしまう。場合によってはこの相関の影響により、最終的な統合後の統合ベクトルの類似度が正しく計算されず、精度が低下する懸念がある。本発明では、統合ベクトルに対して無相関化処理を施すことによってこの相関の影響を消去することによって、コンテンツを精度よく発見することができるのである。
【００４２】
＜＜全体構成＞＞
【００４３】
図２は、本発明の実施形態に係る特徴量生成装置１の構成の一例を示す機能ブロック図である。
【００４４】
図２に示す特徴量生成装置１は、初期特徴量抽出部１１と、量子化部１２と、残差計算部１３、統合部１４とを備え、また記憶装置として記憶部３を備え、予め記憶した量子化器３１、射影ベクトル３２、無相関化写像３３を格納している。
【００４５】
また、特徴量生成装置１は、コンテンツデータベース２と通信手段を介して接続されて相互に情報通信し、コンテンツデータベース２に登録されているコンテンツ２１、または、入力されたコンテンツ４に対して、これらを表現する統合特徴量ベクトル５を生成する。
【００４６】
コンテンツデータベース２は、特徴量生成装置１の内部にあっても外部にあっても構わず、通信手段は任意の公知ものを用いることができるが、本実施の形態においては、外部にあるものとして、通信手段は、インターネット、ＴＣＰ／ＩＰにより通信するよう接続されているものとする。また、コンテンツデータベース２は、いわゆるＲＤＢＭＳ(Ｒｅｌａｔｉｏｎａｌ  Ｄａｔａｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ）などで構成されているものとしてもよい。
【００４７】
コンテンツデータベース２にはコンテンツ２１が格納されているものとする。コンテンツ２１は、主として画像または映像ファイルならびにその集合を想定するが、本発明の実施の形態の要件を満たす範囲で、音ファイル、文書ファイルなど、任意の種類のメディアであってよい。さらに、コンテンツデータベース２には、各コンテンツのファイルに対して、これらそれぞれを一意に識別可能な識別子（例えば、ファイル固有の通し番号によるＩＤ等）が関連づけられており、任意のファイルを参照できるものであるとする。その他、メタデータとして、例えばコンテンツの内容を表現するもの（コンテンツのタイトル、概要文、又はキーワード等）、コンテンツのフォーマットに関するもの（コンテンツのデータ量、サムネイル等のサイズ）などを含んでいても構わないが、本発明の実施においては必須ではない。
【００４８】
また、特徴量生成装置１が備える各部及びコンテンツデータベース２は、演算処理装置、記憶装置等を備えたコンピュータやサーバ等により構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは特徴量生成装置１が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。もちろん、その他いかなる構成要素についても、単一のコンピュータやサーバによって実現しなければならないものではなく、ネットワークによって接続された複数のコンピュータに分散して実現しても構わない。
【００４９】
なお、本発明の実施の形態において必須の構成要素ではないが、本発明の実施の形態に係る特徴量生成装置１により生成された統合特徴量ベクトルを用いてコンテンツ検索を実行する場合には、外部に検索装置６を備える。検索装置６は、特徴量生成装置１、ならびにコンテンツデータベース２と相互に通信可能な形で接続されているものとする。
【００５０】
＜＜処理部＞＞
【００５１】
本実施の形態における特徴量生成装置１の各処理部について説明する。
【００５２】
初期特徴量抽出部１１は、コンテンツデータベース２に格納されたコンテンツ２１、又は、外部から入力されたコンテンツ４を受け取った下で、これを解析し、一つ以上の初期特徴量ベクトルの集合を抽出してコンテンツデータベース２又は量子化部１２に出力する。
【００５３】
量子化部１２は、特徴量生成対象のコンテンツを表現する初期特徴量ベクトルの各々を、記憶部３に格納された、予め定めた複数の量子と複数の量子の各々に対応する代表ベクトルとによって規定される量子化器３１に基づいて、一つ以上の量子に割り当て、出力する。
【００５４】
残差計算部１３は、各々の量子ごとに、当該量子に割り当てられた初期特徴量ベクトルと対応する代表ベクトルとの残差ベクトルを求め、必要に応じて記憶部３に格納された射影ベクトル３２による変換を施したのちに出力する。残差ベクトルを正規化した正規化残差ベクトルを求めるようにしてもよい。
【００５５】
統合部１４は、量子ごとに計算された残差ベクトルを統合した統合特徴量ベクトルを求め、求められた統合特徴量ベクトルに、予め定めた変換行列（無相関化写像３３）を適用して無相関化処理を施して得られた統合特徴量ベクトルを、コンテンツの特徴量として出力する。
【００５６】
検索装置６を備える構成を採る場合には、予めコンテンツデータベース２に格納されたコンテンツ２１に対して、特徴量生成装置１により統合特徴量ベクトルが生成され、同じくコンテンツデータベース２に先の形式で格納されているとする。このとき、検索装置６は、コンテンツ４が利用者より入力されて、特徴量生成装置１により生成・出力された統合特徴量ベクトル５を入力として受け取ると、コンテンツデータベース２に対して検索を行い、検索結果７を出力する。統合特徴量ベクトル５は、当該コンテンツ４に対する統合特徴量ベクトルである。
【００５７】
＜＜処理概要＞＞
【００５８】
次に、本実施の形態における特徴量生成装置１の処理について説明する。本実施の形態における特徴量生成装置１は、初期特徴量ベクトルから統合特徴量ベクトルを生成する処理を実行する。
【００５９】
図３は、処理の流れを示すフローチャートである。
【００６０】
本処理において入力されるコンテンツはコンテンツデータベース２から読み込んでも、外部から入力されても、そのいずれでも構わず、本質的には同じ処理が適用される。以降、簡単のため、外部から入力される場合（図２におけるコンテンツ４が入力された場合）について説明する。
【００６１】
まず、ステップＳ３０１では、初期特徴量抽出部１１が、外部からコンテンツ４を得て、一つ以上の初期特徴量ベクトルを抽出し、量子化部１２に伝達する。
【００６２】
続いて、ステップＳ３０２では、量子化部１２が、ステップＳ３０１で抽出した一つ以上の初期特徴量ベクトルの各々に対して、記憶部３から取得した量子化器３１を適用することで、一つ以上の量子に割り当て、残差計算部１３に出力する。
【００６３】
続いて、ステップＳ３０３では、残差計算部１３が、各々の量子ごとに、当該量子に割り当てられた初期特徴量ベクトルと対応する代表ベクトルとの残差ベクトルを求め、必要に応じて記憶部３に格納された射影ベクトル３２による変換を施したのちに、統合部１４に出力する。なお、残差ベクトルは正規化残差ベクトルを求めるようにしてもよい。
【００６４】
最後に、ステップＳ３０４では、統合部１４が、残差ベクトル（正規化残差ベクトル）を一つに統合して統合特徴量ベクトルを構成し、さらに無相関化写像３３を適用して無相関化したのちに、最終的に得られた統合特徴量ベクトルを検索装置６に出力する。
【００６５】
以上の処理により、入力されたコンテンツ４に対して、統合特徴量ベクトル５を求めることができる。
【００６６】
＜＜各処理の処理詳細＞＞
【００６７】
以降、各処理の詳細処理について、本実施形態における一例を説明する。
【００６８】
［初期特徴量抽出処理］
【００６９】
まず、初期特徴量抽出部１１において、コンテンツの各々に対して、当該コンテンツを表現する一つ以上の初期特徴量ベクトルを抽出する方法について説明する。初期特徴量抽出処理は、コンテンツの種別に依存し、これによって抽出する／できる初期特徴量ベクトルは変化するが、抽出する初期特徴量ベクトルは、コンテンツに対して一義的に定まる、固定の次元を持つベクトルとして表現できるものであれば任意の公知のものを用いてよい。ここでは、コンテンツが画像である場合について述べることとする。
【００７０】
最も好適な例としては、局所特徴量を抽出する。一般に、局所特徴量は、画像から特徴点と呼ばれる領域を検出する特徴点検出法と、領域の画像的特徴を特徴量ベクトルとして記述する記述子の二つによって構成される。例えば非特許文献１に記載のＳＩＦＴは、Ｄｉｆｆｅｒｅｎｃｅ  ｏｆ  Ｇａｕｓｓｉａｎ（ＤｏＧ）と呼ばれる特徴点検出法を用いて特徴点を検出し、各特徴点は輝度値の勾配を表現した記述子によって記述される。これ以外にも様々な特徴点検出法、記述子が一般に知られており、任意のものを用いて構わない。また、必ずしも特徴点検出法に基づいて特徴点を検出する必要はなく、画像中の領域を定めるものであれば任意の手続きを取って構わない。例えば、画像全体を領域とするものとしてもよいし、あるいは画像の高さ・幅に対して一定の割合で（格子状に）領域を取っても構わない。
【００７１】
好ましくはＳＩＦＴのように、領域の位置・姿勢（角度）や、その大きさに対して不変となるような特徴量ベクトルを得ることができる方法を採用することが好ましい。以降、本実施形態の一例ではＳＩＦＴを用いるものとして説明する。ＳＩＦＴを用いた場合、抽出される局所特徴量は通常１２８次元の実数値ベクトルとなる。従って、画像一枚は、特徴点数分の１２８次元実数値ベクトルの集合として表現される。
【００７２】
また、必ずしも局所特徴量を用いる必要はなく、例えば、領域ごとに明るさ特徴、色特徴、又は形状特徴などを抽出しても構わない。
【００７３】
明るさ特徴としては、ＨＳＶ色空間におけるＶ値を数え上げることで、ヒストグラムとして抽出することができる。この場合、各画像はＶ値の量子化数（例えば、１６ビット量子化であれば２５６諧調）と同数の次元を持つベクトルとして表現される。
【００７４】
色特徴としては、Ｌ＊ａ＊ｂ＊色空間における各軸（Ｌ＊、ａ＊、ｂ＊）の値を数え上げることで、ヒストグラムとして抽出することができる。各軸のヒストグラムのビンの数は、例えば、Ｌ＊に対して４、ａ＊に対して１４、ｂ＊に対して１４などとすればよく、この場合、３軸の合計ビン数は、４×１４×１４＝７８４、すなわち７８４次元のベクトルとなる。
【００７５】
形状特徴としては、例えば参考文献１に記載のＨｉｓｔｏｇｒａｍ  ｏｆ  Ｏｒｉｅｎｔｅｄ  Ｇｒａｄｉｅｎｔｓ（ＨＯＧ）として知られる特徴量ベクトルを抽出すればよい。
【００７６】
［参考文献１］Navneet Dalal, Bill Triggs. Histograms of Oriented Gradients for Human Detection. In Proc. IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 886-893, 2005.
【００７７】
また、参考文献２などに記載の、ニューラルネットワークによる特徴量を抽出しても構わない。
【００７８】
［参考文献２］Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton. ImageNet Classification with Deep Convolutional Neural Networks. In Proc. Advances in Neural Information Processing Systems (NIPS). Pages. 1097-1105, 2012.
【００７９】
以上のように、コンテンツを表現する一つ以上の初期特徴量ベクトルを求めることができる。
【００８０】
［統合特徴量ベクトルの生成処理］
【００８１】
次に、統合特徴量ベクトルの生成処理について説明する。統合特徴量ベクトルの生成処理では、量子化処理、残差計算処理、統合処理が行われる。なお、ここで用いる変換器の構成方法については後述する。
【００８２】
あるコンテンツｊから抽出した一つ以上の初期特徴量ベクトルからなる集合｛ｘ｝を、統合特徴量ベクトルに変換する手続きの一例を述べる。
【００８３】
本発明の実施形態の一例においては、変換器である量子化器３１、射影ベクトル３２、及び無相関化写像３３は、いずれも事前に構成されて記憶部３に格納されているものとする。なお、量子化器は量子と代表ベクトルの組を複数備えた符号帳により構成されており、たとえばＫ−ｍｅａｎｓなどの公知のクラスタリング法を用いて構成することができる。また、射影ベクトル、無相関化写像は任意の公知の線形変換（ランダムベクトル、主成分分析、独立成分分析等）、または非線形変換（カーネル主成分分析等）を用いて得ることができるが、本発明の実施形態の一例においては主成分分析を用いて得られた変換行列を射影ベクトル、無相関化写像として用いる。
【００８４】
＜量子化処理＞
量子化部１２の量子化について説明する。量子化とは、量子化器を用いて、各々の初期特徴量ベクトルを、一つ以上の量子に割り当てる処理である。本発明の実施形態の一例による量子化器は、予め定められたＫ個の量子を代表する代表ベクトルによって規定されるものであるため、Ｋ個の量子に量子化する量子化器を求めることは、すなわちＫ個の代表ベクトルを求めるに等しい。Ｋの値は任意の自然数でよいが、例えばＫ＝６４、Ｋ＝２５６、Ｋ＝４０９６などとすればよい。ｋ番目の量子に対応する代表ベクトルをｃｋと表す。この代表ベクトルの次元数は初期特徴量ベクトルと同一である。当該次元をｂと表す。
【００８５】
このような代表ベクトル群を用いれば、任意の初期特徴量ベクトルｘに対する量子を割り当てることができる。すなわち、仮に、Ｐ個の量子を割り当てることを考えるとすると、初期特徴量ベクトルｘに最も距離の近いＰ個の代表ベクトルを求め、その代表ベクトルに対応する量子を割り当てればよい。Ｐは任意の自然数であればよく、例えばＰ＝２、Ｐ＝５などとすればよい。この処理によって、任意の初期特徴量ベクトルに対して量子（及びこれに対応する代表ベクトル）を割り当てることができる。
【００８６】
＜残差計算処理＞
続いて、残差計算部１３の残差計算について説明する。先の量子化を経て、各量子には初期特徴量ベクトルが割り当てられる。あるコンテンツｊについて、仮にｋ番目の量子に初期特徴量ベクトルｘｊｉが割り当てられているとすると、量子化による残差ベクトルｒｊｉｋは（１）式のように定められる。
【００８７】
【数１】
0006373292.tif 000002
【００８８】
なお、上記は通常の残差ベクトルであるが、代わりに（２）式の正規化残差ベクトルを用いても構わない。
【００８９】
【数２】
0006373292.tif 000003
【００９０】
なお、分母のノルムはＬ２ノルムを表す。通常、一つの量子に対して一つ以上の初期特徴量ベクトルが得られている場合が多いので、残差ベクトルｒｊｉｋの和ｒｊｋを求める。
【００９１】
【数３】
0006373292.tif 000004
【００９２】
もし初期特徴量ベクトルが一つも割り当てられていないような量子が存在する場合には、全要素が０を返すものとすればよい。このようにして求められた残差ベクトルの総和の次元は初期特徴量ベクトルの次元と等しく、ｂである。この処理により、ｊ番目のコンテンツについて、ｋ番目の量子ベクトルｒｊｋを求めることができる。全ての量子に対して上記手続きを実行することで、Ｋ個の量子の各々に対してｂ次元の量子ベクトルが得られる。
【００９３】
なお、射影ベクトルを用いて、残差ベクトルの総和に変換を施しても構わない。たとえば、主成分分析によってｅ本の射影ベクトルが得られているとし、これを行列の形に格納してＱｋと表す。Ｑｋはサイズｂ×ｅの行列である。ただし、ｅ≦ｂとし、例えばｂ＝１２８であればｅ＝１２８、ｅ＝６４、ｅ＝３２などとすればよい。
【００９４】
この場合には、（３）式の代わりに、（４）式によって残差ベクトルの総和を求める。
【００９５】
【数４】
0006373292.tif 000005
【００９６】
本実施の形態の一例においては、量子ごとに一つの射影ベクトル行列Ｑｋを用意する場合について説明する。
【００９７】
量子ごとに一つの射影ベクトル行列Ｑｋを用意する場合、上記残差計算部１３は、量子ｋごとに、量子化部１２により量子ｋに割り当てられた初期特徴量ベクトルｘｊｉと、量子ｋに対応する代表ベクトルｃｋとの残差ベクトルｒｊｉｋの総和ｒｊｋを計算し、量子ｋごとに計算された残差ベクトルの総和ｒｋに対して、量子ｋについて予め定められた、残差ベクトルと同数の次元を持つ射影ベクトルで構成される射影ベクトル行列Ｑｋによる変換を施す。
【００９８】
このように量子ごとに一つの射影ベクトル行列Ｑｋを用意することによって、量子ごとにより細やかなコントロールが可能となり、精度を向上させることが可能であるが、一方で、量子数分の射影ベクトル行列を格納しなければならないため、メモリを多く消費するというデメリットも存在する。そこで、すべての量子に対して同一の射影ベクトル行列を用意する（Ｑ１＝Ｑ２＝・・・＝Ｑｅ）とすることによってメモリ使用量を削減しても構わない。
【００９９】
＜統合処理＞
続いて、統合部１４の統合処理について説明する。ｊ番目のコンテンツに対して求めたＫ個の量子に対する残差ベクトルの総和｛ｒｊ１、・・・、ｒｊＫ｝を縦に並べれば、当該ｊ番目のコンテンツをｂ×Ｋ次元の１本のベクトルへと統合した統合ベクトルｖｊとして表現することができる。
【０１００】
【数５】
0006373292.tif 000006
【０１０１】
当該ベクトルの次元はＤ＝Ｋ×ｅである。これ自体を統合特徴量ベクトルとしてもよい。ただし、このようにして得られた統合ベクトルは、要素間の相関が高く、これに基づいて計算される類似度が信頼できない場合がある。そこで、この統合ベクトルに対して無相関化処理を施してこの影響を排除する。
【０１０２】
具体的には、主成分分析によって求めたＤ×ｈの変換行列が得られているとし、これをＡと表す。ただし、ｈ≦Ｄである。（５）式により求めたｖｊに対して、次のように新たなｖｊを求める。
【０１０３】
【数６】
0006373292.tif 000007
【０１０４】
ここで、ｖｊはｊ番目のコンテンツの統合特徴量ベクトル、ＡはサイズＫ×ｈの行列である。
【０１０５】
なお、本発明の実施形態においては、統合特徴量ベクトルｖを持って、最終的な画像の特徴量ベクトルとしているが、一方、より効率的な処理を求めるべく、統合特徴量ベクトルｖをさらに量子化しても構わない。たとえば、最も簡単には２値化することが考えられ、これはｖの符号を取り、ｖの値が正（または０以上）の場合には１を、負の場合には０（または−１）を取るようにすることで、当該統合特徴量ベクトルのよりコンパクトに表現する。このような２値ベクトルの比較はビット演算によって実現でき、実数ベクトルによる比較よりも高速計算できるため、処理時間・メモリ使用量の観点で有利である。
【０１０６】
以上が一つ以上の初期特徴量ベクトルからなる集合｛ｘ｝から、統合特徴量ベクトルｖを求める手順である。
【０１０７】
以上、本発明の実施形態の一例における変換器の構成の一例について詳細に説明した。
【０１０８】
＜＜コンテンツ検索への適用＞＞
【０１０９】
上記説明した本発明の実施の形態に係る特徴量生成装置を、コンテンツ検索に利用する場合の実施の形態の一例について説明する。ここでは、コンテンツが画像である場合について説明する。
【０１１０】
例えば、コンテンツデータベース２に、Ｍ枚のデータベース画像が格納されているとする。変換器である量子化器３１、射影ベクトル３２、及び無相関化写像３３は、記憶部３に格納されているものとし、さらに、上記Ｍ枚のデータベース画像については、上記説明した処理によって既に統合特徴量ベクトルが生成され格納されているものとする。このとき、目的は新たなクエリ画像が利用者から与えられた時に、当該クエリ画像と同一の意味内容を持つようなデータベース画像を検索することである。
【０１１１】
まず、クエリ画像に対して初期特徴量抽出処理を施し、一つ以上の特徴量ベクトルの集合を抽出したとする。この初期特徴量ベクトルの集合に対して先の変換器を適用し、統合特徴量ベクトルを求める。
【０１１２】
続いて検索処理を行う。コンテンツデータベース２に格納された統合特徴量ベクトルの各々と、クエリ画像の統合特徴量ベクトルとの類似度を求める。類似度は、例えば内積、コサイン類似度など、任意の公知の尺度によって求めればよい。この類似度の最も高いものから順に意味内容が同一ないし近いデータベース画像として出力する。あるいは、これを求める際に、公知のインデクシング法を用いても構わない。特に、転置インデクス法は好適である。
【０１１３】
統合特徴量ベクトルは情報量が小さく、低容量であり、少数の演算回数で高速に距離（又は類似度）を計算できることから、効率的に処理できる。また、本発明により得られる統合特徴量ベクトルは、量子化による損失を適切に抑えたものであるがゆえに、精度よくコンテンツを発見することが可能である。
【０１１４】
以上が本発明の実施の形態の一例である。
【０１１５】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【符号の説明】
【０１１６】
１     特徴量生成装置
２     コンテンツデータベース
３     記憶部
４     コンテンツ
５     統合特徴量ベクトル
６     検索装置
７     検索結果
１１   初期特徴量抽出部
１２   量子化部
１３   残差計算部
１４   統合部
２１   コンテンツ
３１   量子化器
３２   射影ベクトル
３３   無相関化写像
【図１】
0006373292.tif 000008
【図２】
0006373292.tif 000009
【図３】
0006373292.tif 000010