<概要>
本発明の実施の形態では、相互に異なるメディア種別であっても、グループ指示子によって緩く関連づけられたコンテンツ同士の関係から、その相関が最も強い最大相関ペアだけを頑健に発見して、これに基づいて写像を更新することで、不確かな関係性を持つコンテンツ同士の中からであっても、より確度の高い低次元特徴量を生成可能であり、その結果、高速かつ省メモリでありながらも高精度な情報処理装置に、本発明を適用した場合について説明する。
本発明の効果を活用した具体的な産業応用上の利用シーンとして、街中を歩いているときに気になる場所や商品をモバイル端末で写真撮影し、類似した場所・商品を検索することが可能になるという利点がある。eコマースサイトにある各商品は、ある商品カテゴリ(例えば「パソコン」、「衣類」など)に属しており、また、商品説明文が付与されていることが常である。また、特定のランドマーク(「東京タワー」)などであれば、例えばWikipedia(商標登録)等のウェブ上に記事があることが多く、そのランドマークを写した画像の他、ランドマーク種別(例えば「ビル」、「モニュメント」など)や、そのランドマークを説明する文書が手に入る。一方で、eコマースサイトのページのどの部分が商品説明文にあたるのか、Wikipediaの記事のどの部分がランドマークについて説明したものであるのかを人手を介さずに特定することは難しい。
本技術の特徴によれば、画像から抽出された特徴量、これに付随する説明文の中から、画像の内容をよく説明する文書を自動的に発見し、これらの関係を捉えた写像および低次元特徴量を生成することが可能になる。結果として、人手を介さずとも、高速・省メモリな検索を実現することが可能になる。
以下、図面を参照して本発明の実施形態を詳細に説明する。なお、本実施の形態は本発明を限定するものではない。なお、本実施の形態では、動画像のことを「映像」といい、静止画像のことを「画像」という。
[第1の実施の形態]
(全体構成)
まず、本実施形態の情報処理装置10の全体構成の一例について説明する。図1は、本実施形態に係る情報処理装置10の構成の一例を示す機能ブロック図である。図1に示すように、情報処理装置10は、入力部20、出力部22、特徴抽出部30、特徴量記憶部32、写像学習部34、写像記憶部36、低次元特徴量生成部38、及び最大相関ペア抽出部40を備える。
また、図1に示すコンテンツデータベース12には、複数のコンテンツが格納されている。コンテンツデータベース12には、少なくともコンテンツ自体、あるいは、当該コンテンツデータの所在を一意に示すアドレスが格納されている。コンテンツは、例えば、文書であれば文書ファイル、画像であれば画像ファイル、音であれば音ファイル、映像であれば映像ファイルなどである。好ましくは、コンテンツデータベース12には、各コンテンツのメディア種別とそれ自体を一意に識別可能な識別子が含まれているものとする。
さらに、コンテンツデータベース12には、異なるメディア種別のメディアが含まれているものとし(例えば、画像と文書等)、各コンテンツに対して、当該コンテンツが所属するグループを表すグループ指示子が関連づけて付与されているものとする。グループ指示子は、例えばグループの識別子を表すようなものであってもよく、各グループは必ずしも意味概念的に記述されている必要はない。例えば、ある画像1が、3番目のグループに属する場合、
画像1:グループ3
として記述すればよい。また、同様に、文書2がグループ3に属する場合、
文書2:グループ3
として記述することができる。グループ指示子を与える手段は問わず、人手によって与えてもよいし、自動的に与えてもよいが、好ましくは、後者の方が人手を介さずに済むため、効率的である。例えば、同一ウェブページ内に出現する画像と文書は同一のグループに属するとしてグループ指示子を与えてもよい。あるいは、メタデータとして、例えばコンテンツの内容を表現するもの(コンテンツのタイトル、概要文、及びキーワード等)、コンテンツのフォーマットに関するもの(コンテンツのデータ量、及びサムネイル等のサイズ等)等を含んでいるような場合には、共通するメタデータやフォーマットを持つものを同一のグループに属するとみなしてもよい。
情報処理装置10は、コンテンツデータベース12と通信手段を介して接続され、入力部20、出力部22を介して相互に情報通信し、コンテンツデータベース12に登録されたコンテンツに基づいて写像を生成する写像生成処理と、生成した写像を用いてコンテンツを元の特徴量よりも低次元な低次元特徴量に変換する情報圧縮処理を行う。
また、コンテンツデータベース12は、情報処理装置10の内部にあっても外部にあっても構わず、通信手段は任意の公知ものを用いることができるが、本実施の形態においては、外部にあるものとして、通信手段は、インターネット、TCP/IPにより通信するよう接続されているものとする。コンテンツデータベース12は、いわゆるRDBMS (Relational Database Management System)等で構成されているものとしてもよい。
なお、情報処理装置10が備える各部、及びコンテンツデータベース12は、演算処理装置、記憶装置等を備えたコンピュータやサーバ等により構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは情報処理装置10が備える記憶装置に記憶されており、記録媒体に記録することも、ンターネット等のネットワークや電話回線等の通信回線を介して提供することも可能である。なお、「記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータやサーバ等に内蔵されるハードディスク等の記憶装置のことをいう。
もちろん、その他いかなる構成要素についても、単一のコンピュータやサーバによって実現しなければならないものではなく、ネットワーク等によって接続された複数のコンピュータやサーバ等に分散して実現してもよい。さらに、情報処理装置10が備える各部の機能をコンピュータやサーバ等にすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。
次に、図1に示す情報処理装置10が備える各部について説明する。
入力部20は、コンテンツデータベース12から、複数のコンテンツのコンテンツデータ、複数のコンテンツ各々についてのメディア種別、及び複数のコンテンツの各々に付与されたグループ指示子を取得する。
特徴抽出部30は、入力部20より取得したコンテンツデータを解析することで、コンテンツのメディア種別毎に、当該メディア種別の複数のコンテンツの各々について、コンテンツを特徴的に表す特徴量を抽出する。また、特徴抽出部30は。抽出した特徴量をグループ指示子と合せて特徴量記憶部32に記憶させる。
特徴抽出部30における特徴量を抽出する処理(以下、「特徴量抽出処理」という)は、コンテンツのメディア種別に依存する。
例えば、コンテンツが文書であるか、画像であるか、音であるか、映像であるかによって、抽出するまたは抽出できる特徴量は変化する。ここで、各メディア種別に対してどのような特徴量を抽出するかは、本発明の要件として重要ではなく、一般に知られた公知の特徴抽出処理を用いてよい。具体的には、あるコンテンツから抽出された次元を持つ数値データ(スカラー又はベクトル)であれば、あらゆる特徴量に対して有効である。したがって、ここでは、本実施形態の一例に適する、各種コンテンツに対する特徴抽出処理の一例を説明する。
コンテンツが文書である場合には、文書中に出現する単語の出現頻度を用いることができる。例えば、公知の形態素解析を用いて、名詞、形容詞等に相当する単語ごとに、その出現頻度を計数すればよい。この場合、各文書の特徴量は、単語種別と同じだけの次元を持つベクトルとして表現される。
あるいは、下記の参考文献1や参考文献2に記載の分散表現方法を用いてもよい。
[参考文献1] Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg Corrado, and Jeffrey Dean. Distributed Representations of Words and Phrases and their Compositionality. In Proceedings of Advances in Neural Information Processing Systems, 2013.
[参考文献2] Quoc Le and Tomas Mikolov. Distributed Representations of Sentences and Documents. In Proceedings of International Conference on Machine Learning, 2014.
また、コンテンツが画像である場合には、例えば、明るさ特徴、色特徴、テクスチャ特徴、景観特徴、あるいはニューラルネット特徴等を抽出する。
明るさ特徴は、HSV色空間におけるV値を数え上げることで、ヒストグラムとして抽出することができる。この場合、各画像の特徴量は、V値の量子化数(例えば、16ビット量子化であれば256諧調)と同数の次元を持つベクトルとして表現される。
色特徴は、L*a*b*色空間における各軸(L*、a*、b*)の値を数え上げることで、ヒストグラムとして抽出することができる。各軸のヒストグラムのビンの数は、例えば、L*に対して4、a*に対して14、b*に対して14等とすればよく、この場合、3軸の合計ビン数は、4×14×14=784、すなわち784次元のベクトルとなる。
テクスチャ特徴としては、濃淡ヒストグラムの統計量(コントラスト)やパワースペクトルなどを求めればよい。あるいは、局所特徴量を用いると、色や動きなどと同様、ヒストグラムの形式で抽出することができるようになるため好適である。局所特徴としては、例えば下記の参考文献3に記載されるSIFT(Scale Invariant Feature Transform )や、下記の参考文献4に記載されるSURF(Speeded Up Robust Features)等を用いることができる。
[参考文献3]D.G. Lowe, “Distinctive Image Features from Scale-Invariant Keypoints ”, International Journal of Computer Vision, pp.91-110, 2004
[参考文献4]H. Bay, T. Tuytelaars, and L.V. Gool, “SURF: Speeded Up Robust Features”, Lecture Notes in Computer Science, vol. 3951, pp.404-417, 2006
これらによって抽出される局所特徴は、例えば128次元の実数値ベクトルとなる。このベクトルを、予め学習して生成しておいた符号帳を参照して、符号に変換し、その符号の数を数え上げることでヒストグラムを生成することができる。この場合、ヒストグラムのビンの数は、符号帳の符号数と一致する。又は、参考文献5に記載のスパース表現や、参考文献6、7に記載のフィッシャーカーネルに基づく特徴表現等を利用してもよい。
[参考文献5] Jinjun Wang, Jianchao Yang, Kai Yu, Fengjun Lv, Thomas Huang, and Yihong Gong, “Locality-constrained Linear Coding for Image Classification”, IEEE Conference on Computer Vision and Pattern Recognition, pp. 3360-3367, 2010.
[参考文献6] Florent Perronnin, Jorge Sanchez, Thomas Mensink, “Improving the Fisher Kernel for Large-Scale Image Classification”, European Conference on Computer Vision, pp. 143-156, 2010.
[参考文献7] Herve Jegou, Florent Perronnin, Matthijs Douze, Jorge Sanchez, Patrick Perez, Cordelia Schmid, “Aggregating Local Image Descriptors into Compact Codes”, IEEE Trans. Pattern Recognition and Machine Intelligence, Vol. 34, No. 9, pp. 1704-1716, 2012.
結果として生成される特徴量は、いずれの場合にも、符号帳の符号数に依存した長さを持つ実数値ベクトルになる。
景観特徴は、画像の風景や場面を表現した特徴量である。例えば参考文献8に記載のGIST記述子を用いることができる。GIST記述子は画像を領域分割し、各領域に対して一定のオリエンテーションを持つフィルタを掛けたときの係数によって表現されるが、この場合、生成される特徴量は、フィルタの種類(分割する領域の数とオリエンテーションの数)に依存した長さのベクトルとなる。
[参考文献8]A. Oliva and A. Torralba, “Building the gist of a scene: the role of global image features in recognition”, Progress in Brain Research, 155, pp.23-36, 2006
ニューラルネット特徴は、画像をニューラルネットに入力することで得られる特徴量である。ニューラルネットとしては、例えば参考文献9に記載のConvolutional Neural Networkを用いればよい。
[参考文献9] A. Krizhevsky, I. Sutskever, and G.E. Hinton. ImageNet classification with deep convolutional neural networks. In Proceedings of Neural Information Processing Systems, 2012.
また、コンテンツが音である場合には、音高特徴、音圧特徴、スペクトル特徴、リズム特徴、発話特徴、音楽特徴、音イベント特徴、あるいはニューラルネット特徴等を抽出する。
音高特徴は、例えばピッチを取るものとすればよく、下記の参考文献10に記載される方法等を用いて抽出することができる。この場合、ピッチを1次元ベクトル(スカラー)として表現するか、あるいはこれをいくつかの次元に量子化しておいてもいい。
[参考文献10]古井貞熙, 「ディジタル音声処理, 4. 9ピッチ抽出」, pp.57-59, 1985
音圧特徴としては、音声波形データの振幅値を用いるものとしてもよいし、短時間パワースペクトルを求め、任意の帯域の平均パワーを計算して用いるものとしてもよい。いずれにしても、音圧を計算するバンドの数に依存した長さのベクトルとなる。
スペクトル特徴としては、例えばメル尺度ケプストラム係数(MFCC:Mel-Frequency Cepstral Coefficients )を用いることができる。
リズム特徴としては、例えばテンポを抽出すればよい。テンポを抽出するには、例えば下記の参考文献11に記載される方法等を用いることができる。
[参考文献11]E.D. Scheirer, “Tempo and Beat Analysis of Acoustic Musical Signals ”, Journal of Acoustic Society America, Vol. 103, Issue 1, pp.588-601, 1998
発話特徴や音楽特徴は、それぞれ、発話の有無、音楽の有無を表す。発話・音楽の存在する区間を発見するには、例えば下記の参考文献12に記載される方法等を用いればよい。
[参考文献12]K. Minami, A. Akutsu, H. Hamada, and Y. Tonomura, “Video Handling with Music and Speech Detection”, IEEE Multimedia, vol. 5, no. 3, pp.17-25, 1998
音イベント特徴としては、例えば、笑い声や大声などの感情的な音声、あるいは、銃声や爆発音等の環境音の生起等を用いるものとすればよい。このような音イベントを検出するには、例えば下記の参考文献13に記載される方法等を用いればよい。
[参考文献13]国際公開第2008/032787号
ニューラルネット特徴としては、音声信号又はその周波数変換を入力として得られるニューラルネットの出力を用いればよい。ニューラルネットとしては、例えば上記参考文献9に記載のConvolutional Neural Networkを用いればよい。
また、コンテンツが映像である場合、映像は、一般に画像と音のストリームであるから、上記説明した画像特徴と音特徴とを用いることができる。映像中のどの画像、音情報を分析するかについては、例えば、予め映像をいくつかの区間に分割し、その区間毎に1つの画像、及び音から特徴抽出を実施する。
映像を区間に分割するには、予め決定しておいた一定の間隔で分割するものとしてもよいし、例えば下記の参考文献14に記載される方法等を用いて、映像が不連続に切れる点であるカット点によって分割するものとしてもよい。
[参考文献15]Y. Tonomura, A. Akutsu, Y. Taniguchi, and G. Suzuki, “Structured Video Computing”, IEEE Multimedia, pp.34-43, 1994
映像を区間に分割する場合には、望ましくは、上記の後者の方法を採用する。映像区間分割処理の結果として、区間の開始点(開始時刻)と終了点(終了時刻)とが得られるが、この時刻毎に別々の特徴量として扱えばよい。
上記説明した特徴量の中から、一つあるいは複数を利用してもよいし、その他の公知の特徴量を用いるものとしてもよい。
写像学習部34は、特徴量記憶部32から読み出した特徴量とメディア種別、並びに、後述する最大相関ペア指示子とに基づいて、メディア種別毎に1つ以上の写像を学習し、写像記憶部36に記憶させる。以下、写像学習部34で行われる処理を「学習処理」という。
具体的には、あるメディア種別mのコンテンツiから抽出された特徴量をxm、i∈RDmと表す。メディア種別mのコンテンツの特徴量次元はDmであり、これは一般に高次元である。写像学習部34、メディア種別mの特徴量を1次元特徴量に変換する写像wm、k:RDm→Rとなる写像の集合を求める。
1つのwm、kによって、特徴量xm、i∈RDmは実数値に写像されるから、写像集合Wm={wm、1、wm、2、・・・、wm、d}によってd<Dm次元のベクトル、すなわち、dの低次元特徴量に変換されることになる。
このような低次元特徴量は、元の高次元特徴量に比べ効率的である。例えば上記参考文献9に記載のニューラルネット特徴の場合、典型的にはDm=4096次元とすることが多いが、これに対し、低次元特徴量はd=64次元などとすればよい。この場合、データ量は1/64となり、計算時間及び必要なメモリ容量共に同じ割合だけ減少する。
本実施の形態の情報処理装置10における目的は、この低次元特徴量によって、異なるメディア種別であっても類似度の計測を可能にすることである。したがって、ここで生成する写像と、それにより生成される低次元特徴量は、次の2つの性質を持つ。
(A)元のコンテンツのメディア種別mにおいて、元の空間RDmでの類似度を表す低次元特徴量へと変換する。すなわち、元の特徴量が類似したコンテンツ同士ほど、低次元特徴量の類似度も高く(距離も近く)なる。
(B)グループ指示子が示すグループが同一のグループの内、異なるメディア種別でありながら相互に関連の強いコンテンツのペアは、低次元特徴量の距離が近くなる。
ここで、相互に関連性の強いペアとは、最大相関ペアのことである。これを発見する手段についての説明は、後述することとし、ここではこのような最大相関ペアはひとまず所与として話を進める(例えば、同一グループに含まれる異種メディア同士のペアの内、ランダムに1つを最大相関ペアと見做すなどとしてもよい)。
本実施の形態の一例では、写像として下記(1)式で示す線形関数に基づく写像を考える。
ここで、wm、k∈RDk、bm、k∈Rは未知のパラメータである。この写像において、未知のパラメータはwm、kとbm、kの二つだけである。
ここで、仮にxm、i(i=1,2,・・・,Nm)が平均0に正規化されているとき、bm、k =0としても一般性を失わない。xm、iを0に正規化するには、xm、iの平均を、各xm、iから減算すればよいのであり、これはxm、i∈RDmにおいて常に可能であることから、bm、k=0と決定できる。したがって、以降、xm,iの平均は0に正規化されているとし、上記(1)式を下記(2)式に定義しなおして説明する。
この写像の定義によれば、関数φm、k内にあるパラメータwm、kを定めることで、写像を一意に定めることができる。
上記(2)式に示すように、本実施の形態における写像は、特徴抽出部30によってコンテンツのメディア種別毎に抽出されたコンテンツの特徴量xmと、写像のパラメータwm,kとの内積を算出し、算出された内積に基づいて、コンテンツのメディア種別毎の特徴量に対応する写像を出力する関数である。したがって、写像学習部34で行われる学習処理の目的は、このwm、k(k=1,2,…, d)を求めることである。
上述した2つの性質、すなわち、
(A)元のメディア種別mにおいて、元の空間RDmでの類似度を表す低次元特徴量へと変換する。すなわち、元の特徴量が類似したコンテンツ同士ほど、低次元特徴量の類似度も高く(距離も近く)なること。
(B)グループ指示子が示すグループが同一のグループの内、異なるメディア種別でありながら相互に関連の強いコンテンツのペアは、低次元特徴量の距離が近くなること。
に合う写像となるように、wm、kを求めたい。
まず、上記(A)の性質を満たすための方法を説明する。求めたいwm、kは、元の特徴量空間を2分割する超平面であると解釈できる。図2を用いて説明する。図2中に示した、白丸(○)と黒丸(●)は特徴量空間上にある特徴量を表す。このとき、wm、kはその値によって、直線61や直線62と見做すことができる。すなわち、より低次元な特徴量で類似するコンテンツをまとめることは、より少ない本数の直線(写像wm、k)で、類似する特徴量を分割することに相当する。
メディアコンテンツにおいては、上述した特徴量のメディア種別によらず、類似したコンテンツ同士の特徴量の分布は滑らかな多様体構造を形成することがよく知られている。多様体構造とは、簡単に言えば滑らかな変化である。分かりやすく、図2と類似する図3を用いて説明すると、これらの特徴量は、大まかに曲線51と曲線52の滑らかに変化する2本の曲線上に分布しており、同じ曲線上の点同士は互いに類似していることが多い。図3中においては、同色であれば互いに類似したコンテンツの特徴量となる。
従って、これらの類似したコンテンツ群が直線の片側に集まるように直線wm、kを引くことで、類似するコンテンツをできる限り少ない本数の直線で分割することが可能になる。図2に示す直線の内、直線61のような直線は好ましくなく、2群の間を通る直線62のような直線を規定する写像のパラメータwm、kを求めればよいことになる。
続いて、上記(B)の性質を満たすための方法を説明する。例えば、コンテンツのメディア種別が画像と文書である場合について、図4を用いて説明する。図4の例では、画像特徴量を丸(○または●)、文書特徴量を三角(△または▲)で表している。仮に、それぞれの画像と文書の特徴量空間において、性質(A)を満たすように、すなわち、多様体構造を分離するような直線71、72がそれぞれ得られているとしよう。加えて、ここでは最大相関ペアが得られているとし、直線73〜76によって結ばれているペア同士が最大相関ペアを示すとする。このとき、直線71、72によって分離されている画像および文書特徴量に対して、直線73〜76で結ばれた最大相関ペアである画像/文書特徴量同士が、互いに近しい低次元特徴量となるように写像のパラメータwm、kを求めればよい。例えば、図4の例では白丸と白三角(△)、黒丸と黒三角(▲)がそれぞれ近しくなるような低次元特徴量に変換できればよい。
以上示した2つの方法に基づき、本実施の形態の一例では、上記(A)及び(B)の2つの性質を満たすパラメータwm、kを求める。本実施の形態の一例では、次の2つの手続きによってwm、kを求める。第1の手続は、コンテンツのメディア種別m毎に、その特徴量空間における多様体構造を捉える。また、第2の手続は、各メディア種別の多様体構造、及び異種メディア種別間の相関に基づいて、wm、kを求める。
以下、それぞれの手続きについて詳述する。
第1の手続きは、コンテンツのメディア種別によらず同じであり、各メディア種別に対してそれぞれ同じ処理を適用すればよい。例えば、上記非特許文献3に記載の公知の方法を用いることができる。以下、上記非特許文献3に記載の方法を説明する。
多様体とは、大まかに言えば滑らかな図形であり、言い換えれば局所的に見ればユークリッドな空間とみなせる。例えば、上記図3に示すような曲線のように、いくつかの直線の集まりとして近似されるようなものであると解釈してもよい。このことは、多様体とは局所的に見れば線形で近似される構造を持つことを表しているのであり、言い換えれば、多様体上の任意の点は、同じ多様体上にあるいくつかの近傍点に基づく、近傍の相対的幾何関係によって表現できることを意味している。
上記非特許文献3では、次の問題を解くことによって多様体を発見する。
ここで、第一項は特徴量xm,iを、そのユークリッド空間上での近傍集合ε(xm,i)に含まれる特徴量インデクスに対応する特徴量の集合{xm、j|j∈ε(xm,i)}によって線形結合で表したときの誤差であり、sm,ijはその際の結合重みである。第二項は、結合重みのベクトルsm,i={sm,i1,・・・,sm,iN}に対して、その要素がスパースであることを要請する、すなわち、ベクトル中のいくつかの限られた要素にのみ非ゼロの値を持つように正則化するスパース項であり、vm,iはxm,iに近いほど小さな値を持つような定数を要素として持つベクトルである。ベクトルvm,iの要素vm,ijは、例えば、下記(4)式のように表わされる。なお、自分自身のベクトルについての重みsi=jは0である。
つまるところ、この問題を解くことによってある特徴量xm,iをできる限り少数の近傍点の線形結合として表した場合の結合重みsm,iを求めることができるが、これは多様体を表現するいくつかの近傍点と、その相対的幾何関係(結合重み)を表しているに他ならない。この問題は、公知のスパース問題ソルバによって解決することができる。例えば、SPAMS(SPArse Modeling Software)などのオープンソースソフトウェアを用いてもよい。
なお、近傍集合ε(xm,i)は、いかなる方法を用いて求めてもよい。最も単純な方法は、各特徴量xm、jに対して、その他全ての点xm、j≠iとのユークリッド距離を求め、近いものからt個を近傍集合とするものである。tは任意の正の整数でよく、例えばt=10などとしてもよい。
しかし、この方法では1つの特徴量に対してその他全ての特徴量との距離を求める必要があるため、未知の特徴量xm、jに対して近傍集合を求めようとすると、O(Nm)の計算時間が掛かるという問題がある。したがって、高速に計算できる手法を用いることが好ましい。例えば、クラスタリングやハッシングによる方法を用いることができる。
クラスタリングを用いる場合、例えばk−means法等により全Nm個の特徴量をクラスタリングし、L個のクラスタ(L<<Nm)と、各クラスタを代表するL個の代表特徴量(クラスタ中心)を求めておく。Lの値は任意の正の整数としてよいが、例えば、L=128等とすればよい。この結果、各特徴量がどのクラスタに属するか、及び、当該クラスタの代表特徴量を得ることができる。この前提のもと、下記の手続きによって、未知の特徴量xm、jに対する近傍集合を得ることができる。まず、特徴量xm、jに対して、L個の代表特徴量との距離を計算し、最も近いクラスタを特定する。次に、当該クラスタに属する全ての特徴量を、近傍集合ε(xm,i)として得る。この処理に必要な計算時間はO(L)であり、L<<Nmであることから、単純な方法に比べて高速に近傍集合を得ることができる。
また、ハッシングを用いる場合、例えば上記非特許文献1等の方法によって、全Nm個の特徴量に対するハッシュ値を求めておく。この前提のもと、未知の特徴量xm、jのハッシュ値を求め、これと同一またはハミング距離上近い値を持つハッシュ値を持つ(すなわち、同一あるいはそれに近接するバケットに属する)全ての特徴量を、近傍集合ε(xm,i)として得ればよい。この処理に必要な計算時間は参照するバケットの数に依存するが、一般に参照バケット数はNmよりも小さいことから、こちらも高速に近傍集合を得ることができる。なお、上記非特許文献1の方法によるハッシュ値は、ユークリッド空間上のコサイン類似度を保存するような写像であり、ユークリッド空間上の角度が近ければ近いほど低次元特徴量(ハッシュ値)が衝突する確率が高くなる。一方で、本実施の形態により生成される低次元特徴量は、ユークリッド空間上ではなく、多様体上の近さ(測地線距離に基づく近さ)を保存するような写像となるのであり、生成される低次元特徴量は特徴量の分布をより正確に捉えたものである。
以上の手続きを、対象とするコンテンツの全てのメディア種別に対して適用すればよい。
次に第2の手続について説明する。
第1の手続きによって得た各メディア種別のsm,i(i=1,2,・・・,Nm)と同様の近傍の相対的幾何関係を求めることによって、wm、kを求める。
簡単にするため、コンテンツのメディア種別は2つ、例えば画像と文書とし、m=1のとき画像、m=2のとき文書を表すものとする。もちろん、以下に説明する実施の形態の一例は、その他のメディア種別、あるいは、コンテンツのメディア種別が3以上の場合に対しても同様に適用できるものである。
具体的には、下記の問題を解決する。便宜上、画像特徴量x1,i(i=1,2,・・・,N1)、及び文書特徴量x2,i(i=1,2,・・・,N2)を並べた行列X1={x1,1,・・・,x1、N1}、X2={x2,1,・・・,x2、N2}を定義する。さらに、画像特徴量のための写像のパラメータw1,k(k=1,2,…,d)、及び文書特徴量のための写像のパラメータw2,k(k=1,2,…,d)を並べた行列W1={w1、1,・・・,w1、d}、W2={w2、1,・・・,w2、d}を定義する。
具体的には、以下の問題を解く。
ここで、Smはそれぞれsm,ijを要素に持つ行列、Rmlはメディア種別mとメディア種別lとの最大相関ペアに基づいて求める行列である。行列RmlのサイズはNm×Nlであり、最大相関ペアである特徴量の組に対応する要素のみ1、その他の要素は0を取る行列である。仮に(xm,i,xl,j)が最大相関ペアであるとしたときRmlのi,j番目の要素は1となる。
Jm(Wm;Xm,Sm)は、それぞれコンテンツのメディア種別mにおける特徴量空間の多様体構造を保存するための関数であり、例えば、下記(6)式のように定義することができる。
上記(6)式における多様体構造は、コンテンツのメディア種別に応じた特徴量が存在する空間である特徴量空間において、コンテンツのメディア種別に応じた特徴量を、当該コンテンツのメディア種別に応じた特徴量の近傍に存在する他のコンテンツのメディア種別に応じた特徴量に対応する写像で表したものである。
上記(6)式は、元々の特徴量空間における多様体構造、すなわち、sm,ijとその線形結合を、下記(7)式の写像
によって変換された先においてもそのまま再構築することを要請するものであり、上記(3)とも相似性を持つものである。すなわち、上記(5)式に代入されたとき、低次元特徴量に変換された先でも元の空間と同様の多様体構造を持つようにWmを決定することができる。
また、Jml(Wm、Wl;Xm,Xl,Rml)は、コンテンツのメディア種別mとメディア種別lとの間の相関関係を保存するための関数であり、例えば、下記のように定義することができる。
上記(8)式では、最大相関ペアである特徴量ペアを、変換先でも類似した値となるように要請するものである。上記(8)式は、メディア種別mのi番目の特徴量xm,iとメディア種別lのj番目の特徴量xl,jのペアについて、それぞれ上記(7)式によって与えられる写像により変換された値を相関行列で重みづけた値となっている。したがって、これを上記(5)式に代入することで、最大相関ペアの距離をできる限り小さくするようにWmを決定することができる。
従って、写像学習部34は、上記(5)式、(6)式、及び(8)式に従って、コンテンツのメディア種別毎に、当該種メディア別の複数のコンテンツの各々について、当該コンテンツのメディア種別に応じた特徴量が存在する空間である特徴量空間において、当該コンテンツのメディア種別に応じた特徴量の近傍に存在する他のコンテンツの特徴量と計算された結合重みとに基づいて求められる、特徴量を写像により変換した低次元特徴量と、当該コンテンツから抽出された特徴量を写像により変換した低次元特徴量との距離が小さくなり、かつ、グループ識別子の各々について、最大相関ペアとして抽出された組み合わせのコンテンツの各々から抽出された特徴量を写像により変換した低次元特徴量の間の距離が小さくなるように、コンテンツのメディア種別毎の特徴量を低次元特徴量に変換するための写像を生成する。
以上のように定義された上記(6)式、及び(8)式を、上記(5)式に代入し、代数変形を適用すると、下記(9)式の問題が得られる。
である。上記(7)式は、WmおよびWl、すなわちPについて凸であるので、Wについて微分して極値を取ることで、次の一般化固有値問題に帰着される。
なお、上記(11)式におけるηは固有値を表す。このような一般化固有値問題の解は、反復法やべき乗法などの公知の方法によって求めることができる。
このようにして求めたWmおよびWlは、元の空間における多様体構造を最適に保存し、かつ、最大相関ペアとなっている異種メディアを近しい低次元特徴量に変換するものである。したがって、目的としていた2つの性質上記(A)及び(B)を最適に満たすようなWmおよびWlを得ることができる。
新たな低次元特徴量を生成する際には、上記(7)式を計算すればよいだけである。この計算に必要となるメモリ量は、wm,kとxm,iそれぞれを格納するに必要なメモリ量のみであり、仮に、特徴量が浮動小数点表示であり、次元Dが100の場合800B程度、仮に次元Dが100000程度になったとしても高々800KBと、現存する一般的なコンピュータにおいても極めて容易に蓄積できるメモリ量に抑えることができる。したがって、この方法によって、多様体の構造を捉えることによる高い精度でありながら、高速かつ省メモリな低次元特徴量生成が可能である。
上記の処理詳細によって生成された写像、すなわち、具体的には、全てのコンテンツのメディア種別における{Wm}は、写像記憶部36に記憶される。
なお、実際の写像生成時(後述する写像生成処理、図5参照)には、一度この学習処理が終了した段階で一度終了判定を実施し、終了条件を満たす場合には低次元特徴量生成部38による低次元特徴量生成処理(詳細後述)及び最大相関ペア抽出部40による最大相関ペア抽出処理(詳細後述)を経て最大相関ペアを更新し、再び学習処理を実施する。
また、低次元特徴量生成部38は、特徴量記憶部32に格納された特徴量を、写像記憶部36に格納されたそのメディア種別に対応する1つ以上の写像に基づいて低次元特徴量に変換し、特徴量記憶部32に記憶させるか、出力部22に出力する。以下では、低次元特徴量生成部38により行われる処理を「低次元特徴量生成処理」という。
低次元特徴量生成部38は、写像学習部34による学習処理が済んでいれば、写像記憶部36には、コンテンツのメディア種別ごとにd組の写像が格納されている。これを用いれば、上記(2)式にしたがって、特徴量で表現された任意のコンテンツを、d次元以下の任意の次元を持つ低次元特徴量で表現することができる。
最大相関ペア抽出部40は、特徴量記憶部32を参照し、同一のグループ指示子が割り当てられたコンテンツ群と、それに対応する低次元特徴量とに基づいて、メディア種別が異なるコンテンツの組み合わせのうち、相関が最大となる最大相関ペアを発見する。また、最大相関ペア抽出部40は、発見した最大相関ペアを表す最大相関ペア指示子をグループ指示子に紐付けて特徴量記憶部32に記憶させる。この情報は、例えば、3番目のグループ(グループ指示子=3)に画像1、画像2、文書1、文書2、文書3があったとし、最大相関ペアは画像2と文書3であったとする。このとき、
グループ3:画像2・文書3
等として記憶しておけばよい。この最大相関ペア指示子は、上述した写像学習部34における学習処理において用いる。
最大相関ペア抽出部40により行われる最大相関ペア抽出処理について具体的に説明する。
上記学習処理では、最大相関ペアは既に得られている(ひとまずランダムに与えられているなど)と仮定して説明を実施した。ここでは、現在得られている写像を用いて、最大相関ペアを更新する手続きについて詳述する。
上述した写像学習部34による学習処理により、全てのコンテンツに対して低次元特徴量を求めることができることは言うまでもない。最大相関ペアは、同一グループに属する異種メディアの内、この相関が最大となるものを発見することによって抽出する。
コンテンツのメディア種別m、lの2種があるとする。各コンテンツが属するグループは、グループ指示子を参照することで分かるので、あるグループgに属するコンテンツ群に対応する低次元特徴量群Ygm={ym,gi}、Ygl={yl,gj}は自明に得ることができる。
Ygm、Yglに含まれる低次元特徴量yi、yjの相関は下記(12)式によって求めることができる。
これを、Ygm、Yglに属する低次元特徴量全ての組み合わせについて求め、最大の値を撮ったペアをグループgの最大相関ペアとすればよい。
以上を全てのグループに対して実施すれば、全てのグループに対する最大相関ペアを求めることができる。
出力部22は、低次元特徴量生成部38で変換した低次元特徴量をコンテンツデータベース12に伝達する。コンテンツデータベース12は、出力部22から伝達された低次元特徴量を格納する。
<情報処理装置10の作用>
次に、本実施の形態の情報処理装置10の作用について説明する。本実施の形態における情報処理装置10は、写像を生成する写像生成処理と、特徴量を低次元特徴量化する情報圧縮を実行する。以下、これら2つの処理について説明する。
<写像生成処理>
まず、写像生成処理について説明する。図5は、写像生成処理の一例の流れを示すフローチャートである。図5に示した写像生成処理は、実際にコンテンツの低次元特徴量を生成する前に、少なくとも1度実施しておく処理である。
まず、ステップS100で入力部20が、コンテンツデータベース12に格納されている複数のコンテンツのコンテンツデータ、複数のコンテンツ各々のメディア種別、複数のコンテンツ各々のグループ指示子を取得する。
次のステップS102で特徴抽出部30が、コンテンツデータに対して、そのメディア種別に即した特徴量を抽出して、メディア種別、グループ指示子と共に特徴量記憶部32に記憶させる。
次のステップS104で写像学習部34が、特徴量とメディア種別、及び最大相関ペア指示子に基づいて1つ以上の写像を生成して、写像記憶部36に記憶させる。
次のステップS106において、終了条件を満たしていれば本写像生成処理を終了する。一方、終了条件を満たしていない場合は、ステップS108へ移行する。なお、ステップS106で判断に用いる終了条件は、例えばステップS104を一定回数(例えば30回等)実施した後としてもよい。
ステップS108で低次元特徴量生成部38が、前記特徴量と前記写像とに基づいて各コンテンツの低次元特徴量を生成し、特徴量記憶部32に記憶させる。
次のステップS110で最大相関ペア抽出部40が、前記グループ指示子と前記低次元特徴量とに基づいて、グループごとに相関が最大となるペアを発見し、特徴量記憶部32に記憶させた後、ステップS104に戻り、処理を繰り返す。
以上の写像生成処理により、コンテンツデータベース12に格納されたコンテンツデータとグループ指示子から写像を生成することができる。
<情報圧縮処理>
次に、情報圧縮処理について説明する。図6は、情報圧縮処理の一例の流れを示すフローチャートである。図6に示す情報圧縮処理は、写像記憶部36に格納された写像を用いてコンテンツの特徴量を低次元特徴量化する処理である。
まず、ステップS200で入力部20が、コンテンツデータベース12あるいは外部から直接コンテンツデータおよびメディア種別を取得する。
次のステップS202で特徴抽出部30が、コンテンツデータに対して、そのメディア種別に即した特徴量を抽出する。
次のステップS204で低次元特徴量生成部38が、写像記憶部36に記憶された、そのコンテンツのメディア種別に対応する1つ以上の写像を用いて、特徴量を低次元特徴量に変換する。
本実施の形態の一例においては、コンテンツのメディア種別によらず、1つの写像につき、特徴量は1次元に変換されるので、写像記憶部36にB個の写像が格納されている場合は、特徴量はB次元の低次元特徴量に変換される。
次のステップS206で出力部22が、低次元特徴量をコンテンツデータベース12に記憶させる。
以上の処理により、入力したコンテンツに対して、メディア種別によらず低次元特徴量を求めることができる。
本実施の形態の情報処理装置10によれば、メディア種別ごとの特徴量空間の多様体構造を捉え、かつ異種メディア種別間の最大相関ペアの関係を保存するようにパラメトリックな写像を生成する。これにより、相互に異なるメディア種別でありながら、関連するコンテンツ同士を、高速かつ省メモリ、かつ高精度に発見することができる。
[第2の実施の形態]
<全体構成>
次に、本発明の第2の実施の形態について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
第2の実施の形態では、ハッシュ関数の種類が第1の実施の形態と異なっている。
上記第1の実施の形態で前述した第2の手続きでは、上記(2)式の形をとる写像の場合において、そのパラメータwm,k(k=1,2,…,B)を求める方法について述べたが、本発明の実施の形態で扱える写像は、何もこの形に限るものではなく、別の形式をとる写像であっても、同様にそのパラメータを決定することができる。
例えば、次のような写像も扱うことができる。
ここで、αm,k,tはパラメータ、κ(xm,t,xm)はカーネル関数である。カーネル関数は、
のような関数であり、さらにNm個の特徴量{xm,1,・・・,xm,Nm}に対して、
及び、任意の実数αi、αjに対して
を満たすような任意の関数である。このような関数は無数に存在するが、例を挙げれば、
等が存在する。ただし、β、γは正の実数値パラメータ、pは整数パラメータであり、適宜決定してよい。
上記(13)式において、bm,kは
(すなわち平均値)で定められる定数なので、上記(13)式は、
と、内積の形に変換できる。ただし、
である。ここで、Tは写像を定める定数である。上記写像、具体的にはカーネルベクトル写像κm(xm)は、T個の特徴量によって定められるが、TはT<Nmの範囲で任意の値に決めてよい。例えば、T=300等として、全特徴量{xm,1,・・・,xm,Nm}の中からランダムにT個選んでもよいし、あるいはK−means等のクラスタリング法を用いて選ばれた代表ベクトルとしてもよい。
このように定義された写像は、カーネル関数の形で定義された非線形写像を扱うことができる。したがって、非線形な関数、すなわち、直線だけでなく、曲線も扱える点で、上記(6)式による写像よりも柔軟な表現が可能であるという利点を持つ。
以下、上記(19)式の形式をとる写像において、そのパラメータαm,kを決定する方法を述べる。ここでも、画像特徴量(m=1)と文書特徴量(m=2)の場合を考え、便宜上、κ1(x1,i)(i= 1,2,…,N1)及びκ2(x2,i)(i= 1,2,…,N2)を並べた行列Κ1={κ1(x1,1),・・・,κ1(x1、N)}、Κ={κ2(x2,1),・・・,κ2(x2,N)}を定義する。さらに、画像特徴量のための写像のパラメータα1,k(k= 1,2,…,d)および文書特徴量のための写像のパラメータα2,k(k= 1,2,…,d)を並べた行列Α1={α1,1,・・・,α1,d}、Α2={α2,1,・・・,α2,d}を定義する。
具体的には、上記(2)式で定義される写像で言うところの上記(5)式に相当する、以下の問題を解く。
Jm(Αm;Κm,Sm)及びJml(Αm、Αl;Κm,Κl,Rml)は、上記(6)式、及び(8)式と同様の理由で、例えば、下記のように定義することができる。
上記(22)式を、上記(5)式に代入し、代数変形を適用すると、下記(23)式の問題が得られる。
ここで、
である。この問題は、上記(9)式の問題と等価であるため、全く同様の手続きで解くことができる。
上記の処理詳細によって生成された写像、すなわち、具体的には、全てのコンテンツのメディア種別における{Αm}およびカーネル関数κm(xm)は、写像記憶部36に記憶される。
なお、第2の実施の形態に係る情報処理装置の他の構成及び作用については、第1の実施の形態と同様であるため、説明を省略する。
[第3の実施の形態]
<システム構成>
次に、図7を参照して、本発明の第3の実施の形態について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
上記第1又は第2の実施の形態において、写像学習部と低次元特徴量生成部とは分離可能であり、例えば、上記図1に示した情報処理装置10以外にも、サーバ―クライアント装置構成を取ることもできる。
第3の実施の形態では、サーバ装置とクライアント装置とで情報処理システムを構成する点が、第1及び第2の実施の形態と異なっている。第3の実施の形態では、類似コンテンツ検索を実施する情報処理システムに、本発明を適用させた場合を例に説明する。具体的には、第3の実施の形態では、eコマースサイトにおける販売促進サービスに本発明を適用させた場合を例に説明する。ユーザが実世界で撮影した商品画像に関連する商品を、eコマースサイトから探し出して当該ユーザに提示することで、ユーザの購買意欲を掻き立て、eコマースサイトの販売に繋げることができる。
第3の実施の形態の情報処理システム100は、図7に示すようにサーバ装置120と、クライアント装置130と、を備えている。
図7に示すサーバ装置120は、eコマースサイト側に設置されており、入力部150、出力部152、特徴抽出部160、特徴量記憶部162、写像学習部164、写像記憶部166、低次元特徴量生成部168、及び最大相関ペア抽出部170を備える。また、コンテンツデータベース112は、商品画像、商品紹介文書、及び意味ラベルとして商品カテゴリが格納されている。
クライアント装置130は、ユーザ端末であり、例えばスマートフォン等で構成されていれば、本発明の技術を実施する上で必要な要件を満たすため、好適である。本クライアント装置130は、入力部180、出力部182、特徴抽出部190、写像記憶部196、及び低次元特徴量生成部198を備える。
ここで、サーバ装置120とクライアント装置130において、共通する構成要素(入力部、特徴抽出部、最大相関ペア抽出部、写像記憶部、低次元特徴量生成部)はそれぞれ同一の機能を有するように構成し、また、図1に記載した各構成要素と同一名称のものは、図1の場合と同一の機能を有するものとしてよい。さらに、低次元特徴量生成部の内容は、それぞれ何らかの通信手段(例えばインターネットやVLAN等)の通信手段で適宜同期されているものとする。
図7に示す装置構成における処理概要は下記の通りである。まずサーバ装置120は、上記説明した処理と同様の処理を以って、適宜写像を生成して写像記憶部166に記憶し、クライアント装置130の写像記憶部196と同期させる。さらに、コンテンツデータベース112中のコンテンツに対して、やはり上記説明した処理と同様の処理を以って、低次元特徴量を生成し、コンテンツデータベース112に記憶しておく。
一方、クライアント装置130は、ユーザからの検索要求、すなわち、撮影した画像である新規コンテンツの入力部180への入力を受け付けたら、低次元特徴量生成部198が当該コンテンツに対して低次元特徴量を生成し、出力部182からサーバ装置120の入力部150へと当該低次元特徴量を伝達する。
クライアント装置130から入力部150が低次元特徴量を受けた場合、サーバ装置120は、当該低次元特徴量を用いて、コンテンツデータベース112へと検索を掛け、低次元特徴量に基づいて類似コンテンツを発見して、その結果を出力部152からクライアント装置130へと伝達する。
最後に、クライアント装置130は、サーバ装置120より受け取った検索結果をユーザに出力する。
このように構成することで、サーバ装置120で写像生成処理を実施し、クライアント装置130では情報圧縮処理のみを実施するように構成することができる。
なお、第3の実施の形態の情報処理システム100の他の構成及び作用については、第1の実施の形態と同様であるため、説明を省略する。
この構成を取るメリットを述べる。一般に、クライアント装置(スマートフォンやPC、携帯端末等)は、サーバ装置と比較して演算能力に乏しいため、写像生成のように演算量が比較的多い処理には適さない場合がある。この構成にすれば、写像生成処理は演算能力の高いサーバ装置で適宜実施し、クライアント装置では演算量の少ない情報圧縮処理だけを実施することができる。さらに、通常、ネットワークを介した通信によってデータ容量の多い情報を伝送する場合、伝送時間が掛かるという問題があるが、当該構成によって、伝送するのは情報量の小さい低次元特徴量のみでよくなり、検索に対する即応性を高めることができる。
また、本実施の形態によれば、従来の技術に開示されているような、画像と文書の全てのペアに対して関係があるとして写像を得る方法に比べ、最大相関ペアを自動的に発見し、それに基づいて写像を得ることができる点で、より精度の高い検索が可能となる。例えば、従来の技術によれば、「赤いスカート」の画像に付随する文書として、「スカート:レッド」等といった商品の見た目を直接記述するような文言だけでなく、ECサイトのタイトル、商品の値段や、在庫数等、必ずしも商品の見た目を表さないような単語も含めて関係を学習してしまう。結果として、同じ値段の全く別の商品や、在庫数が同じ別の商品と類似していると判断されてしまったりするといった誤りを起こしていた。一方で、本実施の形態によれば、画像と文書との間の最も相関の高いペア(この例では画像と「スカート:レッド」の記述)だけを抽出してその関係を反映した写像を得ることができるため、「赤いスカート」を的確に検索することが可能である。
以上の結果、本実施例における販売促進のような、実時間性を要求しつつも、大規模なデータベースを高精度に検索することが求められるサービスを実現することができる点で、本技術の産業応用上のメリットは大きい。
(実施例)
次に、本発明の実施形態の一例により生成した写像によって、類似コンテンツを高速かつ省メモリに検索する実施形態の一例について説明する。
例えば、コンテンツデータベース12に、N1個の画像特徴量X1={x1,1,・・・,x1,N1}とN2個の文書特徴量X2={x2,1,・・・,x2,N2}とが格納されているとし、これらの特徴量は全て上記(2)式に基づいて低次元特徴量Y1={y1,1,・・・,y1,N1}およびY2={y2,1,・・・,y2,N2}に変換されているものとする。このとき、目的はX1、X2いずれにも含まれない特徴量x1,qあるいはx2,qに対して類似するコンテンツをX1およびX2の中から発見することである。
まず、上記(2)式に基づいて、特徴量x1,qあるいはx2,qを低次元特徴量y1,qあるいはy2,qに変換しておく。
類似コンテンツの発見は、低次元特徴量の距離に基づいて実施すればよい。すなわち、y1,qあるいはy2,qと、Y1およびY2に含まれるN1+N2個の低次元特徴量との距離を計算し、距離の小さいものを類似コンテンツとして得るものである。前述の通り、低次元特徴量は元の特徴量に比べ低次元であることから、遥かに高速に演算できる。
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。本実施形態の主要な特徴を満たす範囲内において、任意の用途と構成を取ることができることは言うまでもない。
以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。