JP6461773B2 - ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラム - Google Patents

ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラム Download PDF

Info

Publication number
JP6461773B2
JP6461773B2 JP2015233944A JP2015233944A JP6461773B2 JP 6461773 B2 JP6461773 B2 JP 6461773B2 JP 2015233944 A JP2015233944 A JP 2015233944A JP 2015233944 A JP2015233944 A JP 2015233944A JP 6461773 B2 JP6461773 B2 JP 6461773B2
Authority
JP
Japan
Prior art keywords
vector
content
dimensional
dimensional numerical
type
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.)
Active
Application number
JP2015233944A
Other languages
English (en)
Other versions
JP2017102600A (ja
Inventor
豪 入江
豪 入江
隆行 黒住
隆行 黒住
杵渕 哲也
哲也 杵渕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2015233944A priority Critical patent/JP6461773B2/ja
Publication of JP2017102600A publication Critical patent/JP2017102600A/ja
Application granted granted Critical
Publication of JP6461773B2 publication Critical patent/JP6461773B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Description

本発明は、ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラムに係り、特に、高次元数値ベクトルを、低次元バイナリベクトルに変換するベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラムに関する。
通信環境やコンピュータ、分散処理基盤技術の高度・高品質化により、ネットワークに流通するコンテンツ(画像・映像・音声・文書等)の数は膨大なものとなっている。例えば、ある検索エンジンがインデクシングしているウェブページの数は数兆にのぼるといわれている。また、あるサイトでは、日々3.5億の画像がアップロードされていると報告されており、また、あるサイトでは、1分当たり64時間分の映像が新規に公開されているとの報告もある。
このような膨大な量のコンテンツは、利用者にとっては豊富な情報源となる一方で、閲覧したいコンテンツに素早くアクセスすることがますます困難になっているという課題ももたらしている。このような流れの中、閲覧・視聴したいコンテンツを効率的に探し出すためのメディア解析技術への要望がますます高まってきている。
コンテンツの解析においては、類似したコンテンツの発見が重要な役割を果たす。例えば、コンテンツを分類する場合は、同じようなコンテンツは同じカテゴリに分類する。あるいは検索の場合、あるコンテンツをクエリとして与えたとき、このコンテンツに類似したコンテンツを検索することが基本的な要件となる。そのほか、コンテンツ推薦においても利用者がこれまでに閲覧した/閲覧しているコンテンツと類似したコンテンツを発見してこれを推薦したり、コンテンツ要約の場合においても、類似したコンテンツを提示することは冗長であるため、これを発見して省くような処理が必要となる。
ここで、類似コンテンツを発見する典型的な手続きについて説明する。まず、コンテンツをある特徴量によって表現する。次に、特徴量同士の近さを測ることで類似度を計算し、この類似度に基づいて類似コンテンツを発見する。単純な例を挙げれば、コンテンツが画像や映像であれば、画像(映像フレーム)の色ヒストグラムを特徴量としてその類似度を測ることができる。コンテンツが文書であれば、単語の出現頻度をヒストグラム化したもの(Bag−of−Wordsヒストグラムなどと呼ぶ)を特徴量として類似度を測ることができる。いうまでもなく、仮にコンテンツの数が1000あれば、1000のコンテンツそれぞれに対して類似度を計算し、結果類似度の高いコンテンツを類似コンテンツとして拾い上げる必要がある。
しかしながら、前述のように、膨大な量のコンテンツを対象にした場合、下記2つの重要な課題がある。第1の課題は、計算時間とメモリを大量に消費することである。第2の課題は、同一種別の類似コンテンツのみしか対象とできないことである。
通常、コンテンツの特徴量(ベクトル)の次元は高次元になることが多く、その類似度の計算には膨大な時間を要する。一般に、文書のBag−of−Wordsヒストグラムの次元は、単語の種類(語彙)と同次元になる。画像の色ヒストグラムのような単純な特徴量であっても、一般に数百〜数千次元の実数値ベクトルとなるし、最近用いられるスパース表現やフィッシャーカーネルに基づく特徴表現では、数十万〜数百万次元のベクトルとなることもあり得る。さらに、全てのコンテンツの組に対してその類似度を計算する必要があるため、どのような類似度計算手段を用いようとも、特徴量の次元がD、コンテンツがN個あったとするとO(DN)の計算量を要する。また、即時検索を実行するためには、特徴量あるいはその類似度をメモリに蓄積しておくことが好ましいが、これを行うためにはO(N)のメモリが必要となる。このように、億を超えるオーダのコンテンツを扱う必要がある昨今においては、非現実的な時間とメモリを要するのである。
さらに、昨今のコンテンツは、単一種別のみで流通することは稀である。例えば、通常ウェブページには文書や画像が混在しているし、映像や音声が付加されていることも少なくない。これらのコンテンツは、メディアの種別こそ異なるものの、あるコンテキストに即しながら相互に関連した内容を持つことが多い。然るに、例えば文書に類似した文書だけでなく、関連する画像や映像、音声に至るまで、メディアの隔たり無く類似したコンテンツを発見できることが好ましい。
しかしながら、これは上記通常のやり方では不可能である。コンテンツの類似度を測るためには、コンテンツを表現する特徴量が同一である必要があるが、メディアの種別が異なる以上、同一の特徴量で記述することが不可能であるためである。検索エンジンなどにおいては、キーワード検索によって画像や映像などを検索することができるが、これは「同一ウェブページに共起している単語と画像なら類似している」といったごく単純な仮定に基づくものであって、文書の内容と画像の内容を評価しているわけではない。
このような問題を解決するために、従来からいくつかの発明がなされ、開示されている。
例えば、特許文献1に開示されている技術では、コンテンツの特徴量と、異なる2つのコンテンツを関連付けるべきか否かを示す関連情報(正解データ)に基づいてベクトル量子化器を求め、このベクトル量子化器を基に、特徴量を低ビットなバイナリベクトルに変換する。
また、非特許文献1に開示されている技術では、近接する任意の2つのコンテンツ(特徴量)において、元の特徴量の類似度と衝突確率が等しくなるようなベクトル量子化器を求め、これにより特徴量をバイナリベクトルに変換することで、効率的に類似コンテンツを発見することができる。
また、非特許文献2に開示されている技術は、非特許文献1と同様、特徴量をバイナリベクトルに変換する方法について開示している。非特許文献1とは異なり、非特許文献2の技術では、特徴量の分布を捉え、その分布に対して最適なバイナリベクトルを生成する。具体的には、特徴量空間における多様体構造を捉え、その多様体構造を最適に保存するバイナリ空間への非線形な埋め込みを求めることで、元の高次元な特徴量を、低ビットなバイナリベクトルに変換する。そのバイナリベクトルの類似性を評価することで、高速な類似コンテンツ発見を実現することができる。
また、非特許文献3に開示されている技術は、2つの異なる種類のメディアに対する特徴量(例えば画像と文書)の分布、および、異種メディア間の相関関係が、それぞれ最適に保存されるようなバイナリベクトルを生成する。
特開2013−68884号公報
M. Datar, N. Immorlica, P. Indyk, V.S. Mirrokni,"Locality-Sensitive Hashing Scheme based on p-Stable Distributions",In Proceedings of the Twentieth Annual Symposium on Computational Geometry,2004,p.253-262. 入江 豪、Zhenguo Li、Shih−Fu Chang、「構造を保存するハッシング」、画像の認識・理解シンポジウム、2013. 入江 豪、新井 啓之、谷口 行信、「幾何構造を保存するクロスモーダルハッシング」、画像の認識・理解シンポジウム、2014.
特許文献1及び非特許文献1、2に開示されている技術では、元のコンテンツをコンパクトなバイナリベクトルに変換することで、非常に高精度かつ高速な類似コンテンツの発見を可能にしていた。しかしながら、いずれの技術も異なるメディアの類似コンテンツを相互に発見することのできるものではない。
また、非特許文献3に開示されている技術では、異種コンテンツ間の特徴量の相関を最適に保存するようなバイナリベクトルへと変換することで、例えば画像と類似する文書を探すことを実現している。しかしながら、バイナリベクトルで類似コンテンツを発見する際には、元の特徴量同時の相関を保存するのみでは不十分である。なぜならば、バイナリベクトルは元の特徴量よりも遥かに情報量が小さく、結果として元の特徴量をバイナリベクトルに変換することにより大きな情報損失が生じるが、この技術はその損失に対しては何ら補償するものではなく、結果として十分な精度を得ることができなかった。
然るに、現在に至るまで、いずれの技術によっても、高精度でありながら、高速かつ省メモリであり、かつ異なるメディアの類似コンテンツデータを相互に発見することはできないという問題がある。
本発明は、上記の事情を鑑みてなされたもので、写像及び量子化による情報の損失と異なる種別のコンテンツ間の関係とを考慮して、ベクトル量子化を行うことができるベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラムを提供することを目的とする。
上記の目的を達成するために本発明に係るベクトル量子化器生成方法は、特徴抽出手段、及び写像計算手段を含むベクトル量子化器生成装置におけるベクトル量子化器生成方法であって、前記特徴抽出手段が、コンテンツの種別毎に、前記種別のコンテンツの各々について、前記コンテンツから前記種別に応じた高次元数値ベクトルを特徴量として抽出するステップと、前記写像計算手段が、前記特徴抽出手段によって前記コンテンツの種別毎に抽出された前記コンテンツの各々についての前記高次元数値ベクトルと、種別が異なるコンテンツ間の組み合わせの各々に対して予め付与された関係指示子と基づいて、前記コンテンツの種別毎に求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる低次元数値ベクトルと前記高次元数値ベクトルを量子化することにより得られる低次元バイナリベクトルとの相関を表す第1の相関、及び前記関係指示子が付与された、前記種別が異なるコンテンツ間の組み合わせの各々について求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる前記低次元数値ベクトル間の相関を表す第2の相関とに基づいて、前記コンテンツの種別毎に前記写像を計算し、前記コンテンツの種別毎に、前記計算した前記写像を用いた、前記高次元数値ベクトルを、低次元バイナリベクトルに変換するためのベクトル量子化器を生成するステップと、を含んで構成されている。
本発明に係るベクトル量子化器生成装置は、コンテンツの種別毎に、前記種別のコンテンツの各々について、前記コンテンツから前記種別に応じた高次元数値ベクトルを特徴量として抽出する特徴抽出手段と、前記特徴抽出手段によって前記コンテンツの種別毎に抽出された前記コンテンツの各々についての前記高次元数値ベクトルと、種別が異なるコンテンツ間の組み合わせの各々に対して予め付与された関係指示子と基づいて、前記コンテンツの種別毎に求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる低次元数値ベクトルと前記高次元数値ベクトルを量子化することにより得られる低次元バイナリベクトルとの相関を表す第1の相関、及び前記関係指示子が付与された、前記種別が異なるコンテンツ間の組み合わせの各々について求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる前記低次元数値ベクトル間の相関を表す第2の相関とに基づいて、前記コンテンツの種別毎に前記写像を計算し、前記コンテンツの種別毎に、前記計算した前記写像を用いた、前記高次元数値ベクトルを、低次元バイナリベクトルに変換するためのベクトル量子化器を生成する写像計算手段と、を含んで構成されている。
上記ベクトル量子化器生成方法及び上記ベクトル量子化器生成装置における、前記写像計算手段は、前記第1の相関と前記第2の相関との線形結合により求められる値が大きくなるように、前記コンテンツの種別毎に前記写像を計算するようにすることができる。
本発明に係るベクトル量子化方法は、特徴抽出手段、及びベクトル量子化手段を含むベクトル量子化装置におけるベクトル量子化方法であって、前記特徴抽出手段が、コンテンツから前記コンテンツの種別に応じた高次元数値ベクトルを特徴量として抽出するステップと、前記ベクトル量子化手段が、前記特徴抽出手段によって抽出された前記コンテンツの前記高次元数値ベクトルと、上記のベクトル量子化器生成方法によって生成された前記コンテンツの種別に応じた前記ベクトル量子化器とに基づいて、前記コンテンツの前記高次元数値ベクトルを、前記低次元バイナリベクトルに変換するステップと、を含んで構成されている。
本発明に係るベクトル量子化装置は、コンテンツから前記コンテンツの種別に応じた高次元数値ベクトルを特徴量として抽出する特徴抽出手段と、前記特徴抽出手段によって抽出された前記コンテンツの前記高次元数値ベクトルと、上記のベクトル量子化器生成方法によって生成された前記コンテンツの種別に応じた前記ベクトル量子化器とに基づいて、前記コンテンツの前記高次元数値ベクトルを、前記低次元バイナリベクトルに変換するベクトル量子化手段と、を含んで構成されている。
本発明のプログラムは、本発明のベクトル量子化器生成方法、又は本発明のベクトル量子化方法の各ステップをコンピュータに実行させるためのプログラムである。
以上説明したように、本発明のベクトル量子化器生成方法、装置、及びプログラムによれば、高次元数値ベクトルに対して写像を行うことにより得られる低次元数値ベクトルと高次元数値ベクトルを量子化することにより得られる低次元バイナリベクトルとの相関を表す第1の相関、及び関係指示子が付与された、種別が異なるコンテンツ間の組み合わせの各々について求められる、高次元数値ベクトルに対して写像を行うことにより得られる低次元数値ベクトル間の相関を表す第2の相関とに基づいて、コンテンツの種別毎に写像を計算し、計算した写像を用いた、高次元数値ベクトルを低次元バイナリベクトルに変換するためのベクトル量子化器を生成することにより、写像及び量子化による情報の損失と異なる種別のコンテンツ間の関係とを考慮して、ベクトル量子化を行うことができるベクトル量子化器を生成することができる、という効果が得られる。
また、本発明のベクトル量子化方法、装置、及びプログラムによれば、コンテンツの高次元数値ベクトルと、生成されたコンテンツの種別に応じたベクトル量子化器とに基づいて、コンテンツの高次元数値ベクトルを、低次元バイナリベクトルに変換することにより、写像及び量子化による情報の損失と異なる種別のコンテンツ間の関係とを考慮して、ベクトル量子化を行うことができる、という効果が得られる。
本発明の第1の実施の形態に係る情報処理装置の構成を示す概略図である。 特徴空間におけるベクトル量子化を説明するための説明図である。 画像特徴量空間における特徴量と文書特徴量空間における特徴量との関係指示子を説明するための説明図である。 本発明の第1の実施の形態に係る情報処理装置における写像計算処理ルーチンの内容を示すフローチャートである。 本発明の第1の実施の形態に係る情報処理装置におけるベクトル量子化処理ルーチンの内容を示すフローチャートである。 本発明の第2の実施の形態に係る情報処理システムの構成を示す概略図である。 低次元バイナリベクトルによって対応付けられたコンテンツの一例を示す図である。
<概要>
本発明の実施の形態は、大量のコンテンツデータの中から、類似コンテンツデータを発見するためのものである。
具体的には、本発明の実施の形態では、画像同士、文書同士などといった、同一の種別(以下、単に種別と称する。)のコンテンツのみならず、画像から文書、画像から音声などのように、関連する異なる種別のコンテンツ同士を、高速かつ省メモリでありながらも高精度に発見することができるよう、情報損失を最小限に抑えるように、コンテンツの特徴量をバイナリベクトルへとベクトル量子化する。また、本発明の実施の形態では、コンテンツの特徴量をバイナリベクトルへとベクトル量子化するためのベクトル量子化器の生成及びベクトル量子化を行う情報処理装置に、本発明を適用した場合を例に説明する。
以下、図面を参照して本発明の実施の形態を詳細に説明する。
<第1の実施の形態>
<システム構成>
本発明の第1の実施の形態に係る情報処理装置1は、ベクトル量子化器を生成し、生成されたベクトル量子化器を用いてベクトル量子化を行う。この情報処理装置1は、CPUと、RAMと、後述する写像計算処理ルーチン及びベクトル量子化処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図1に示すように、情報処理装置1は、入力部2と、演算部3と、出力部4とを備えている。
また、図1に示すコンテンツデータベース5には、複数のコンテンツが格納されている。コンテンツデータベース5には、少なくともコンテンツ自体、あるいは、当該コンテンツの所在を一意に示すアドレスが格納されている。コンテンツは、例えば、文書であれば文書ファイル、画像であれば画像ファイル、音であれば音ファイル、映像であれば映像ファイルなどであり、好ましくは、コンテンツデータベース5には、更に、各コンテンツのメディアの種別とそれ自体を一意に識別可能な識別子が格納されているものとする。
さらに、コンテンツデータベース5には、複数種別のメディアが含まれているものとし(例えば、画像と文書等)、種別が異なるコンテンツ間の組み合わせの各々に対して、相互の関係を示す関係指示子が予め付与されている。関係指示子は、異なる種別のコンテンツ間の内容の関係性を表すものであり、最も単純には関係がある2つのコンテンツの識別子を記述したものでよい。内容の関連性を決定する手段は問わず、人手によって与えるもの、機械的に与えられるもの、あるいはその双方によるもの、いずれでもよい。
例えば、関係指示子を人手により与える場合には、例えば、“画像3”の識別子を持つ3番目の画像と、“文書8”の識別子を持つ8番目の文書の内容が、人手で見て相互に関連している場合には、関係指示子として{“画像3”、“文書8”}のペアを指し示す情報をコンテンツデータベース5に格納しておけばよい。
また、関係指示子が機械的に与えられる場合の例としては、空間的、あるいは、時刻的な共起を使う方法がある。例えば、空間的な共起としてはWebページから画像を収集するような場合があげられる。最も単純には、同一Webページ内に存在する画像と文書は関連していると見做し、人手の場合と同様に関係指示子を与えてもよい。あるいは、Webページ上の周辺にある画像と文書同士は関連していると見做し、関係指示子を与えてもよい。
あるいは、同一の場所に存在するコンテンツは関連していると見做してもよい。例えば、博物館における展示物とその解説パネルなどがそれにあたる。あるいは、画像に写りこんでいる文字を認識し、この文字と画像が関連していると見做してもよい。
また、例えば映像中、時刻的に近接する画像フレームと音声は時刻的に共起していると見做して関連しているとしてもよい。このように、関係指示子が機械的に与えられる場合、人手をかけることなく関係指示子が得られるというメリットがある。
ここで、関係指示子は、必ずしもコンテンツデータベース5に格納されている全てのコンテンツに対して与えられている必要はなく、コンテンツデータベース5に格納されている一部のコンテンツに対して与えられていてもよい。
コンテンツデータベース5には、その他、メタデータとして、例えばコンテンツの内容を表現するもの(コンテンツのタイトル、概要文、キーワード)、コンテンツのフォーマットに関するもの(コンテンツのデータ量、サムネイル等のサイズ)などを含んでいてもよい。
また、コンテンツデータベース5は、情報処理装置1の内部にあっても外部にあっても構わず、通信手段は任意の公知のものを用いることができるが、本実施の形態においては、外部にあるものとして、通信手段は、インターネット、TCP/IPにより通信するよう接続されているものとする。コンテンツデータベース5は、いわゆるRDBMS(Relational Database Management System)などで構成されているものとしてもよい。
情報処理装置1は、外部と通信手段を介して接続され、入力部2、出力部4を介して相互に情報通信する。例えば、コンテンツデータベース5と接続され、これに登録されたコンテンツに基づいてベクトル量子化器を生成する写像計算処理を実行する。また、外部から入力されたコンテンツを入力し、生成したベクトル量子化器を用いてコンテンツを低次元バイナリベクトルに変換するベクトル量子化処理を行う。
情報処理装置1の各部、及びコンテンツデータベース5は、演算処理装置、記憶装置等を備えたコンピュータやサーバ等により構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは情報処理装置1が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。もちろん、その他いかなる構成要素についても、単一のコンピュータやサーバによって実現しなければならないものではなく、ネットワークによって接続された複数のコンピュータに分散して実現してもよい。
次に、図1に示す情報処理装置1の各部について説明する。
入力部2は、コンテンツデータベース5から、複数のコンテンツと、複数のコンテンツ各々についての種別と、種別が異なるコンテンツ間の組み合わせの各々に対して予め付与された関係指示子とを取得する。また、入力部2は、ベクトル量子化対象のコンテンツと、当該コンテンツの種別との入力を受け付ける。
演算部3は、特徴抽出部30と、写像計算部32と、ベクトル量子化器記憶部34と、ベクトル量子化部36とを備えている。
特徴抽出部30は、入力部2によって取得したコンテンツの種別毎に、当該種別の複数のコンテンツの各々について、コンテンツから種別に応じた高次元数値ベクトルを特徴量として抽出する。
また、特徴抽出部30は、入力部2によって受け付けたベクトル量子化対象としてのコンテンツから種別に応じた高次元数値ベクトルを特徴量として抽出する。
特徴抽出部30における特徴量を抽出する処理は、コンテンツの種別に依存する。例えば、コンテンツが文書であるか、画像であるか、音であるか、映像であるかによって、抽出するまたは抽出できる特徴量は変化する。ここで、各種別に対してどのような特徴量を抽出するかは、本実施の形態の要件として重要ではなく、一般に知られた公知の特徴抽出処理を用いてよい。具体的には、あるコンテンツから抽出された次元を持つ数値ベクトルであれば、あらゆる特徴量に対して有効である。したがって、ここでは、本実施形態に適する、各種コンテンツに対する特徴抽出処理の一例を説明する。
コンテンツが文書である場合には、文書中に出現する単語の出現頻度を用いることができる。例えば、公知の形態素解析を用いて、名詞、形容詞等に相当する単語ごとに、その出現頻度を計数すればよい。この場合、各文書の特徴量は、単語種別と同じだけの次元を持つ高次元数値ベクトルとして表現される。
あるいは、下記の参考文献1や参考文献2に記載の単語ベクトルを用いてもよい。
[参考文献1]T. Mikolov, I. Sutskever, K. Chen, G. Corrado, J. Dean, “Distributed Representations of Words and Phrases and their Compositionality ", Proceedings of Advances in Neural Information Processing Systems, 2014.
[参考文献2]J. Pennington, R. Socher, C. D. Manning, “Glove: Global Vectors for Word Representation ", Proceedings of Conference on Empirical Methods in Natural Language Processing, 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に記載のフィッシャーカーネルに基づく特徴表現などを利用してもよい。
[参考文献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]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.
なお、結果として生成される特徴量は、いずれの場合にも、符号長の符号数に依存した長さを持つ実数値ベクトルになる。
コンセプト特徴とは、画像中に含まれる物体や、画像が捉えているイベントのことである。任意のものを用いてよいが、例を挙げれば、「海」、「山」、「ボール」などのようなものである。もし、ある画像に「海」が映っていた場合、その画像は「海」コンセプトに帰属する画像であるという。その画像が、各コンセプトに帰属するか否かは、コンセプト識別器を用いて判断することができる。通常、コンセプト識別器はコンセプト毎に一つ用意され、画像の特徴量を入力として、その画像があるコンセプトに帰属しているか否かを帰属レベルとして出力する。コンセプト識別器は、予め学習して獲得しておくものであり、決められた画像特徴、例えば先に述べた局所特徴と、予め人手によって、その画像がどのコンセプトに帰属しているかを表した正解ラベルとの関係を学習することによって獲得する。学習器としては、例えばサポートベクターマシンなどを用いればよい。コンセプト特徴は、各コンセプトへの帰属レベルをまとめてベクトルとして表現することで得ることができる。また、畳み込みニューラルネットワーク(Convolutional Neural Network)を用いても構わない。この場合、生成される特徴量はコンセプトの数と同数の次元を持つベクトルとなる。
景観特徴は、画像の風景や場面を表現した特徴量である。例えば参考文献7に記載のGIST記述子を用いることができる。GIST記述子は画像を領域分割し、各領域に対して一定のオリエンテーションを持つフィルタを掛けたときの係数によって表現されるが、この場合、生成される特徴量は、フィルタの種類(分割する領域の数とオリエンテーションの数)に依存した長さのベクトルとなる。
[参考文献7]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
コンテンツが音である場合には、音高特徴、音圧特徴、スペクトル特徴、リズム特徴、発話特徴、音楽特徴、音イベント特徴などを抽出する。音高特徴は、例えばピッチを取るものとすればよい。
音圧特徴としては、音声波形データの振幅値を用いるものとしてもよいし、短時間パワースペクトルを求め、任意の帯域の平均パワーを計算して用いるものとしてもよい。いずれにしても、音圧を計算するバンドの数に依存した長さのベクトルとなる。
スペクトル特徴としては、例えばメル尺度ケプストラム係数(MFCC:Mel-Frequency Cepstral Coefficients)を用いることができる。
リズム特徴としては、例えばテンポを抽出すればよい。テンポを抽出するには、例えば下記の参考文献8に記載される方法などを用いることができる。
[参考文献8]E.D. Scheirer, “Tempo and Beat Analysis of Acoustic Musical Signals ”, Journal of Acoustic Society America, Vol. 103, Issue 1, pp.588-601, 1998
発話特徴、音楽特徴は、それぞれ、発話の有無、音楽の有無を表す。発話・音楽の存在する区間を発見するには、例えば下記の参考文献9に記載される方法などを用いればよい。
[参考文献9]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
音イベント特徴としては、例えば、笑い声や大声などの感情的な音声、あるいは、銃声や爆発音などの環境音の生起などを用いるものとすればよい。このような音イベントを検出するには、例えば下記の参考文献10に記載される方法などを用いればよい。
[参考文献10]国際公開第2008/032787号
コンテンツが映像である場合、映像は、一般に画像と音のストリームであるから、上記説明した画像特徴と音特徴を用いることができる。映像中のどの画像、音情報を分析するかについては、例えば、予め映像をいくつかの区間に分割し、その区間ごとに1つの画像、音から特徴抽出を実施する。
映像を区間に分割するには、予め決定しておいた一定の間隔で分割するものとしてもよいし、例えば下記の参考文献11に記載される方法などを用いて、映像が不連続に切れる点であるカット点によって分割するものとしてもよい。
[参考文献11]Y. Tonomura, A. Akutsu, Y. Taniguchi, and G. Suzuki, “Structured Video Computing”, IEEE Multimedia, pp.34-43, 1994
映像を区間に分割する場合には、望ましくは、上記の後者の方法を採用する。映像区間分割処理の結果として、区間の開始点(開始時刻)と終了点(終了時刻)が得られるが、この時刻毎に別々の特徴量として扱えばよい。
上記説明した特徴量の中から、一つあるいは複数を利用してもよいし、その他の公知の特徴量を用いるものとしてもよい。上記のいずれの方法によっても、次元を持つ高次元数値ベクトルを得ることができる。
写像計算部32は、特徴抽出部30によってコンテンツの種別毎に抽出された、コンテンツの各々についての高次元数値ベクトルと、入力部2により取得された関係指示子と基づいて、高次元数値ベクトルを低次元バイナリベクトルに変換するためのベクトル量子化器を生成する。なお、低次元バイナリベクトルの次元数は、高次元数値ベクトルの次元数よりも小さい。
具体的には、写像計算部32は、コンテンツの種別毎に求められる、高次元数値ベクトルに対してコンテンツの種別に応じた写像を行うことにより得られる低次元数値ベクトルと高次元数値ベクトルを量子化することにより得られる低次元バイナリベクトルとの相関を表す第1の相関、及び関係指示子が付与された、種別が異なるコンテンツ間の組み合わせの各々について求められる、高次元数値ベクトルに対してコンテンツの種別に応じた写像を行うことにより得られる低次元数値ベクトル間の相関を表す第2の相関とに基づいて、コンテンツの種別毎に写像を計算し、コンテンツの種別毎に、計算した当該写像を用いたベクトル量子化器を生成する。
写像計算について、以下、詳細に説明する。特徴抽出部30によって得られた特徴量は高次元数値ベクトルである。種別mのコンテンツiから抽出された高次元数値ベクトルをxm,i∈RDmと表す。種別mのコンテンツの高次元数値ベクトル次元はDである。
このとき、写像計算部32は、種別mに対して、hm,k:RDm→{−1,1}(k=1,2,…,B)となるベクトル量子化器の集合を求める。{−1,1}と{0,1}は情報量という観点で本質的に差異がないことに注意すれば、各ベクトル量子化器hによって、高次元数値ベクトルxm,i∈RDmは0または1を取るバイナリ値に量子化されるから、種別mの高次元数値ベクトルxm,iは、B個のベクトル量子化器集合H={hm,1,hm,2,・・・,hm,B}によってB個のバイナリ値、すなわち、Bビットの低次元バイナリベクトルに変換されることになる。以降、誤解のない場合、ベクトル量子化器集合も単にベクトル量子化器と呼称する。
本発明の実施の形態の目的は、ベクトル量子化器により得られる低次元バイナリベクトルによって、異なる種別のコンテンツ同士であっても類似度の計測を可能にしたうえ、さらに時間のかかる類似度計算を省略することである。したがって、ここで生成するベクトル量子化器と、それにより生成される低次元バイナリベクトルは、次の2つの性質(A)(B)を持つ。
(A)ベクトル量子化した後の低次元バイナリベクトルが、元の特徴量(高次元数値ベクトル)に対して情報損失が小さいこと。
(B)異なる種別の特徴量(高次元数値ベクトル)のうち、関係指示子が関連性を示すペアについては、低次元バイナリベクトルの距離が近くなること。
ベクトル量子化器は実質的に関数の形態をとる。この関数の形態は任意のものを取って構わないが、本実施の形態の一例では、以下の(1)式で示す線形写像に基づくベクトル量子化器を適用する。
Figure 0006461773
ここで、sign(x)は符号関数であり、x≧0のとき1、x<0のとき−1をとる関数である。また、wm,k∈RDk、bm,k∈Rのパラメータである。このベクトル量子化器において、未知のパラメータはwm,kとbm,kとの二つだけである。
ここで、仮にxm,i(i=1,2,・・・,N)が平均0に正規化されているとき、bm,k=0としても一般性を失わない。xm,iを0に正規化するには、xm,iの平均を、各xm,iから減算すればよいのであり、これはxm,i∈RDkにおいて常に可能であることから、bm,k=0と決定できる。したがって、以降、xm,iの平均は0に正規化されているとし、上記(1)式を以下の(2)式のように定義しなおして説明する。
Figure 0006461773
このベクトル量子化器の定義によれば、関数φm,k内にあるパラメータwm,kを定めることで、ベクトル量子化器を一意に定めることができる。したがって、写像計算部32による処理の目的は、この写像wm,k(k=1,2,…,B)を求めることである。
ここで、上記(2)式のように規定されるベクトル量子化器の意味は、幾何的には図2を用いて説明できる。図2には、特徴量空間RDm上に、種別mの各コンテンツ(i=1,2,・・・,N)から抽出された高次元数値ベクトルxm,i(i=1,2,・・・,N)が分布している。上記図2では、便宜上2次元のように図示しているが、実際にはD次元の空間である。ここでベクトル量子化器を構成するφm,k(x)は、この特徴量空間上の原点を通る直線(実際はD−1次元の超平面)を表す。hm,k(x)は、本質的には符号関数であるから、その値は、高次元数値ベクトルの点がこの直線φm,k(x)のどちら側にあるかによって、1または0をとる。すなわち、上記(2)式によって定義されるベクトル量子化器41は、特徴量空間を直線によって1と0の2つの領域に分割する関数である。ここで、wm,kはこの直線の傾きに対応し、wm,kが変化すれば、分割する角度が変化することになる。前述した2つの性質、すなわち、
(A)ベクトル量子化した後の低次元バイナリベクトルが、元の特徴量(高次元数値ベクトル)に対して情報損失が小さいこと。
(B)異なる種別の特徴量(高次元数値ベクトル)のうち、関係指示子が関連性を示すペアについては、低次元バイナリベクトルの距離が近くなること。
に合うベクトル量子化器となるように、wm,kを求めるには、以下の(A’)及び(B’)の性質を満たすようにすればよい。
(A’)各種別において、hm,k(x)=1(またはhm,k(x)=0)にベクトル量子化されたコンテンツ(高次元数値ベクトル)群については、φm,k(x)=1(またはφm,k(x)=−1)に近くなるように直線を決定する(すなわち、wm,kを決める)。
(B’)なおかつ、異なる種別において、関係指示子が示す関連するコンテンツ同士が、低次元バイナリベクトルの空間において近い値を持つようにする。
まず、上記(A’)の性質を満たすためには、hm,k(x)=1であればφm,k(x)=1に近く、またhm,k(x)=0であればφm,k(x)=−1に近くなればよい。これは言いかえれば、hm,k(x)の値とφm,k(x)の値が近くなるようにwm,kを求めればよいことになる。
続いて、上記(B’)の性質を満たすための方法を説明する。例えば、コンテンツの種別が画像と文書である場合について、図3を用いて説明する。図3の例では、画像特徴量を丸、文書特徴量を三角で表している。仮に、それぞれの画像と文書の特徴量空間において、上記(A’)の性質を満たすような直線51、52がそれぞれ得られているとし、さらに、関係指示子によって破線53〜56で示す関係が得られているとする。このとき、直線51、52によって分離されている画像および文書特徴量のうち、関係指示子によって示される関係のある画像/文書特徴量同士が、互いに同じ低次元バイナリベクトルを持つようにベクトル量子化器のパラメータwm,kを求めればよいことになる。例えば、図3の例では白丸と白三角(△)、黒丸と黒三角(▲)がそれぞれ同じ低次元バイナリベクトルを持てばよい。
以上示した2つの考えに基づき、本実施形態の一例では、前述の(A’)と(B’)の2つの性質を満たすパラメータwm,kを求める。
説明の簡単のため、コンテンツの種別は2つ、例えば画像と文書とし、m=1のとき画像、m=2のとき文書を表すものとする。もちろん、いかに説明する実施形態の一例は、その他の種別、あるいは、種別が3以上の場合に対しても同様に適用できるものである。
以下では、便宜上、画像特徴量x(i=1,2,・・・,N)および文書特徴量x(i=1,2,・・・,N)を並べた行列X={x1,1,・・・,x1,N1}、X={x2,1,・・・,x2,N2}を定義する。さらに、画像特徴量のためのベクトル量子化器のパラメータw1,k(k= 1,2,…,B)および文書特徴量のためのベクトル量子化器のパラメータw2,k(k= 1,2,…,B)を並べた行列W={w1,1,・・・,w1,B}、W={w2,1,・・・,w2,B}を定義する。
まず上記(A’)の性質を満たすようにするには、以下の(3)式が小さくなるようにをW求めればよい。
Figure 0006461773
ここで、qm,iは、xm,iをベクトル量子化した際の低次元バイナリベクトルである。この式の意味は、符号関数を取ってベクトル量子化する前の低次元数値ベクトル(φm,k(x)に相当)と、符号関数を取ってベクトル量子化された後の低次元バイナリベクトル(hm,k(x))との距離を表している。従って、これを小さくすることで、先に述べた(A’)の性質を満たすようなベクトル量子化器を得ることができる。上記(3)式は、
Figure 0006461773
という条件の下、以下の(5)式のように展開できる。
Figure 0006461773
ここで、Qは低次元バイナリベクトルqm,i(i=1,2,・・・,N)を並べた行列Xである。従って、上記(3)式を小さくすることは、以下の(6)式を大きくすることに他ならない。
Figure 0006461773
上記(6)式は、高次元数値ベクトルに対してコンテンツの種別に応じた写像を行うことにより得られ、かつ符号関数によりベクトル量子化される前の低次元数値ベクトル(φm,k(x)に相当)と、高次元数値ベクトルが符号関数によりベクトル量子化された後の低次元バイナリベクトル(hm,k(x))との第1の相関を表している。上記第1の相関は、コンテンツの種別毎に求められる。
続いて、上記(B’)の性質を満たすようにするには、以下の(7)式が小さくなるようにWおよびWを求めればよい。
Figure 0006461773
ここで、Rmlは種別mと種別lとの関係指示子により指示される関係を示す行列である。例えば、RmlをN×Nの行列とし、関係指示子により関係があるとされている要素のみ1、それ以外の要素を0とすればよい。
上記(7)式では、関係指示子によって関係があるとされた高次元数値ベクトルのペアを、変換先で同一の値にするよう要請するものである。上記式は、Rmlのij要素が1であった場合、種別mのi番目の高次元数値ベクトルxm,iと種別lのj番目の高次元数値ベクトルxl,jのペアについて、それぞれ上記(2)式によって与えられるベクトル量子化器により低次元に写像された値の距離を表している。したがって、これを小さくするようにWおよびWを求めることで、異なる種別においても、関係指示子が示す関連するコンテンツ同士については、低次元バイナリベクトルの空間において近い値を持つようにすることができる。上記(7)式は、
Figure 0006461773
という条件の下、以下の(9)式のように展開できる。
Figure 0006461773
従って、上記(7)式を小さくすることは、以下の(10)式を大きくすることに他ならない。
Figure 0006461773
上記(10)式は、関係指示子が付与された、2つの種別のコンテンツ間の組み合わせの各々についての、それぞれ上記(2)式によって与えられるベクトル量子化器によって、高次元数値ベクトルに対してコンテンツの種別に応じた写像を行うことにより得られる低次元数値ベクトル間の相関を表す第2の相関を表している。上記第2の相関は、コンテンツの種別の組み合わせ毎に求められる。
以上のように定義された上記(6)式および上記(10)式をまとめると、下記の問題が得られる。
Figure 0006461773
ここで、λ,λはそれぞれ所与の定数であり、例えば双方1などとすればよい。上記(11)式の目的関数は、上記(6)式および上記(10)式の2つの相関の線形結合であると言い換えることができる。従って、写像計算部32は、上記(11)式に示すように、上記(6)式の第1の相関と上記(10)式の第2の相関との線形結合により求められる値が大きくなるように、コンテンツの種別m毎に写像Wを計算する。
なお、本実施の形態の一例では、上記(11)式の線形結合の場合を例にあげたが、広く一般の多項演算(例えば、積、商、対数和、指数和)、あるいは統計量(例えば、平均、中央値、最頻値、最小値、最大値)などを用いてもよい。
この問題は非凸最適化問題であり、そのままでは解くことができない。しかしながら、未知変数行列であるW,W,Q,Qのうち、任意の3つを固定した元では凸であるので、公知の交互最適化、並びに公知の線形計画法によってこれらを求めることができる。
このようにして求めたWおよびWは、ベクトル量子化(符号関数)による情報損失を小さくしつつ、かつ、関係指示子によって関係があるとされる異種メディアを可能な限り同じ低次元バイナリベクトルに変換するものである。したがって、目的としていた2つの性質(A)、(B)を最適に満たすようなWおよびWを得ることができる。
新たな低次元バイナリベクトルを生成する際には、上記(2)式を計算すればよいだけである。この計算に必要となるメモリ量は、wm,kとxm,iそれぞれを格納するに必要なメモリ量のみであり、仮に、特徴量が浮動小数点表示であり、次元Dが100の場合800B程度、仮に次元Dが100000程度になったとしても高々800KBと、現存する一般的なコンピュータにおいても極めて容易に蓄積できるメモリ量に抑えることができる。したがって、この方法によって、高速かつ省メモリな低次元バイナリベクトルへの量子化が可能である。
ベクトル量子化器記憶部34には、写像計算部32によって生成されたベクトル量子化器が格納される。すなわち、具体的には、全てのコンテンツの種別mにおける{W}が、ベクトル量子化器記憶部34に記憶される。
ベクトル量子化部36は、特徴抽出部30によって抽出されたベクトル量子化対象のコンテンツの高次元数値ベクトルと、ベクトル量子化器記憶部34も格納されたコンテンツの種別に応じたベクトル量子化器とに基づいて、コンテンツの高次元数値ベクトルを低次元バイナリベクトルに変換する。
前述の写像計算処理が済んでいれば、ベクトル量子化器記憶部34には、コンテンツの種別毎にB組のベクトル量子化器が格納されている。これを用いれば、上記(2)式にしたがって、特徴量で表現された任意のコンテンツを、Bビット以下の低次元バイナリベクトルで表現することができる。
出力部4は、ベクトル量子化部36によって生成された低次元バイナリベクトルを、結果として出力する。
<情報処理装置の作用>
次に、本実施の形態に係る情報処理装置1の作用について説明する。情報処理装置1は、ベクトル量子化器を生成する写像計算処理と、特徴量である高次元数値ベクトルを低次元バイナリベクトルに変換するベクトル量子化処理を実行する。以下、これら2つの処理について説明する。
<写像計算処理ルーチン>
まず、情報処理装置1が、コンテンツデータベース5に格納された複数のコンテンツを取得すると、情報処理装置1によって、図4に示す写像計算処理ルーチンが実行される。写像計算処理ルーチンは、実際にコンテンツをベクトル量子化する前に、少なくとも1度実行される処理である。
まず、ステップS100において、入力部2は、コンテンツデータベース5に格納されている複数のコンテンツと、複数のコンテンツ各々の種別と、種別が異なるコンテンツ間の組み合わせの各々に対して予め付与された関係指示子とを受け付ける。
ステップS102において、特徴抽出部30は、コンテンツの種別毎に、上記ステップS100で取得された当該種別の複数のコンテンツの各々について、種別に応じた高次元数値ベクトルを特徴量として抽出する。
ステップS104において、写像計算部32は、上記ステップS102でコンテンツの種別毎に抽出された、コンテンツの各々についての高次元数値ベクトルと、上記ステップS100で受け付けた関係指示子と基づいて、上記(11)式に従って、コンテンツの種別毎に、高次元数値ベクトルを低次元バイナリベクトルに変換するためのベクトル量子化器を生成する。
ステップS106において、写像計算部32は、上記ステップS104でコンテンツの種別毎に生成されたベクトル量子化器を、ベクトル量子化器記憶部34へ格納して、写像計算処理ルーチンを終了する。
以上の処理により、コンテンツデータベース5に格納された複数のコンテンツと関係指示子とから、種別毎に応じたベクトル量子化器を生成することができる。
<ベクトル量子化処理ルーチン>
次に、ベクトル量子化対象としてのコンテンツが情報処理装置1に入力されると、情報処理装置1によって、図5に示すベクトル量子化処理ルーチンが実行される。ベクトル量子化処理ルーチンは、ベクトル量子化器記憶部34に格納されたベクトル量子化器を用いてコンテンツデータの特徴量をベクトル量子化する処理である。
まず、ステップS200において、入力部2は、ベクトル量子化対象としてのコンテンツと、当該コンテンツの種別との入力を受け付ける。
ステップS202において、特徴抽出部30は、上記ステップS200で受け付けたコンテンツから種別に応じた高次元数値ベクトルを特徴量として抽出する。
ステップS204において、ベクトル量子化部36は、上記ステップS202で抽出されたコンテンツの高次元数値ベクトルと、ベクトル量子化器記憶部34も格納されたコンテンツの種別に応じたベクトル量子化器とに基づいて、コンテンツの高次元数値ベクトルを低次元バイナリベクトルに変換する。
ステップS206において、出力部4は、ベクトル量子化部36によって生成された低次元バイナリベクトルを、結果として出力して、ベクトル量子化処理ルーチンを終了する。
以上の処理により、入力されたコンテンツに対して、コンテンツの種別によらず低次元バイナリベクトルを求めることができる。
以上説明したように、本発明の実施の形態に係る情報処理装置によれば、コンテンツの種別毎に抽出されたコンテンツの各々についての高次元数値ベクトルと、関係指示子とに基づいて、高次元数値ベクトルに対して写像を行うことにより得られる低次元数値ベクトルと高次元数値ベクトルを量子化することにより得られる低次元バイナリベクトルとの相関を表す第1の相関、及び関係指示子が付与された、種別が異なるコンテンツ間の組み合わせの各々について求められる、高次元数値ベクトルに対して写像を行うことにより得られる低次元数値ベクトル間の相関を表す第2の相関とに基づいて、コンテンツの種別毎に写像を計算し、計算した写像を用いた、高次元数値ベクトルを低次元バイナリベクトルに変換するためのベクトル量子化器を生成することにより、写像及び量子化による情報の損失と異なる種別のコンテンツ間の関係とを考慮して、ベクトル量子化を行うことができるベクトル量子化器を生成することができる。
また、本発明の実施の形態に係る情報処理装置によれば、コンテンツの高次元数値ベクトルと、生成されたコンテンツの種別に応じたベクトル量子化器とに基づいて、コンテンツの高次元数値ベクトルを、低次元バイナリベクトルに変換することにより、写像及び量子化による情報の損失と異なる種別のコンテンツ間の関係とを考慮して、ベクトル量子化を行うことができる。
本発明の実施の形態において、第1の相関は、コンテンツを表す低次元数値ベクトルの持つ情報量が、低次元バイナリベクトルに量子化された後にどの程度保持されているかを表し、また、第2の相関は、異なる種別のコンテンツ同士が互いにどの程度関連しているかを表している。然るに、これら第1、第2の相関の線形結合の値が大きくなるように求めたベクトル量子化器は、精度劣化の主要因となる情報損失を最小限に抑えつつ、関連する異なる種別のコンテンツを発見することができるものとなる。
また、画像から文書、画像から音声などのように、関連する異なる種別のコンテンツを、高速かつ省メモリでありながらも高精度に発見することができるよう、情報損失を最小限に抑えるように、コンテンツの特徴量である高次元数値ベクトルを低次元バイナリベクトルへとベクトル量子化することができる。
また、これにより、相互に異なる種別でありながら、関連するコンテンツ同士を、高速かつ省メモリでありながらも高精度に発見することが可能となる。
また、本発明の実施の形態に係る情報処理装置は、画像から文書、画像から音声などのように、関連する異なる種別のコンテンツ同士を、高速かつ省メモリでありながらも高精度に発見するためのベクトル量子化器の生成及びバイナリベクトルの生成を行うことが不可欠な用途に適用することができる。
<第2の実施の形態>
<システム構成>
次に、図6を参照して、本発明の第2の実施の形態について説明する。なお、第1の実施の形態と同様の構成となる部分については、同一符号を付して説明を省略する。
上記第1の実施の形態において、写像計算部とベクトル量子化部とは分離可能であり、例えば、上記図1に示した情報処理装置1以外にも、サーバ―クライアント装置構成を取ることもできる。
第2の実施の形態では、サーバ装置とクライアント装置とで情報処理システムを構成する点が、第1の実施の形態と異なっている。第2の実施の形態では、類似コンテンツの検索を実施する情報処理システムに、本発明を適用させた場合を例に説明する。
本発明の第2の実施の形態に係る情報処理システム200は、図6に示すように、サーバ装置7と、クライアント装置13とを備えている。
図6に示すサーバ装置7は、CPUと、RAMと、各処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。サーバ装置7は、図6に示すように、入力部8、演算部9、出力部10を備えている。また、演算部9は、特徴抽出部90、写像計算部92、ベクトル量子化器記憶部94、及びベクトル量子化部96を備えている。また、コンテンツデータベース11には、複数のコンテンツが格納されている。さらに、コンテンツデータベース5には、異なる種別のメディアが含まれ、各コンテンツに対して相互の関係を示す関係指示子が対応づけられている。
また、図6に示すクライアント装置13は、CPUと、RAMと、各処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。クライアント装置13は、図6に示すように、入力部14、演算部15、出力部16を備えている。また、演算部15は、特徴抽出部150、ベクトル量子化器記憶部154、及びベクトル量子化部156を備える。
ここで、サーバ装置7とクライアント装置13において、共通する構成要素(入力部、特徴抽出部、ベクトル量子化器記憶部、ベクトル量子化部)はそれぞれ同一の機能を有するように構成し、また、上記図1に記載した各構成要素と同一名称のものは、上記図1の場合と同一の機能を有するものとしてよい。さらに、ベクトル量子化記憶部の内容は、それぞれ何らかの通信手段で適宜同期されているものとする。
図6に示す装置構成における処理動作は下記の通りである。まずサーバ装置7は、上記説明した処理と同様の処理を行って、適宜、ベクトル量子化器を生成してベクトル量子化器記憶部94に格納し、クライアント装置13のベクトル量子化器記憶部154と同期させる。さらに、コンテンツデータベース11中のコンテンツに対して、上記説明した処理と同様の処理を行って、低次元バイナリベクトルを生成し、低次元バイナリベクトルとコンテンツとを対応付けて、コンテンツデータベース11に格納しておく。
一方、クライアント装置13は、入力部14によって、利用者からの検索要求、すなわち、新規コンテンツの入力を受け付けたら、当該コンテンツに対して低次元バイナリベクトルを生成し、出力部16からサーバ装置7の入力部8へと当該低次元バイナリベクトルを出力する。
クライアント装置13から低次元バイナリベクトルを受けた場合、サーバ装置7は、当該低次元バイナリベクトルを用いて、コンテンツデータベース11に対して検索を行い、低次元バイナリベクトルに基づいて類似コンテンツを発見し、その結果をクライアント装置13へと出力する。
最後に、クライアント装置13は、サーバ装置7より受け取った検索結果を利用者に出力する。
このように構成することで、サーバ装置7で写像計算処理を実施し、クライアント装置13ではベクトル量子化処理のみを実施するように構成することができる。
なお、第2の実施の形態に係る情報処理システム200の他の構成及び作用については、第1の実施の形態と同様であるため、説明を省略する。
この構成を取るメリットを説明する。一般に、クライアント装置(PC、携帯端末等)は、サーバ装置と比較して演算能力に乏しいため、写像計算処理のように演算量が比較的多い処理には適さない場合がある。この構成にすれば、写像計算処理は演算能力の高いサーバ装置で適宜実施し、クライアント装置では演算量の少ないベクトル量子化処理だけを実施することができる。
さらに、通常、ネットワークを介した通信によってデータ容量の多い情報を伝送する場合、伝送時間が掛かるという問題があるが、当該構成によって、伝送するのは情報量の小さい低次元バイナリベクトルのみでよくなり、検索に対する即応性を高めることができる。
以上説明したように、前述したベクトル量子化器と低次元バイナリベクトルとを用いることにより、画像同士、文書同士などといった、同一の種別のコンテンツのみならず、画像から文書、画像から音声などのように、関連する異なる種別のコンテンツ同士を、高速かつ省メモリでありながらも高精度に発見することが可能になる。
また、この構成により、省メモリであることから、例えば、メモリ量の小さいモバイル端末(スマートフォンやタブレット)での利用も可能となる。また、高速であることから、実時間性の要求される利用に対しても対応可能である。これらの効果を活用した具体的な利用シーンとして、街中を歩いているときに気になる場所や商品をモバイル端末で写真撮影し、類似した場所・商品を検索することが可能になる。
[実施例]
次に、第1の実施の形態で説明した処理により生成したベクトル量子化器によって、類似コンテンツを高速かつ省メモリに検索する実施例の一例について説明する。例えば、コンテンツデータベース5に、N個の画像特徴量X={x1,1,・・・,x1,N1}とN個の文書特徴量X={x2,1,・・・,x2,N2}とが格納されているとし、これらの特徴量は全て上記(2)式に基づいて低次元バイナリベクトルQ={q1,1,・・・,q1,N1}およびQ={q2,1,・・・,q2,N2}に変換されているものとする。このとき、目的はX、Xいずれにも含まれない特徴量x1,aあるいはx2,aに対して類似するコンテンツをXおよびXの中から発見することである。
まず、上記(2)式に基づいて、特徴量である高次元数値ベクトルx1,aあるいはx2,aを低次元バイナリベクトルq1,aあるいはq2,aに変換しておく。最も単純には、図7に示すハッシュテーブルを用いる方法がある。まず、コンテンツデータベース5に登録されている低次元バイナリベクトルYおよびYによって、図7に示すようなルックアップテーブルを構成する。このテーブルでは、ある低次元バイナリベクトルと、その低次元バイナリベクトルに変換された特徴量(コンテンツデータ識別子)を対応づけて格納しており、低次元バイナリベクトルが与えられた際に、それと同一の低次元バイナリベクトルを取るコンテンツを即時発見することができる。ここで、本発明の実施の形態により生成される低次元バイナリベクトルにおいては、コンテンツの種別に寄らず、関連するもの、類似するものを同一の低次元バイナリベクトルに変換できることが特徴である。すなわち、例えば、低次元バイナリベクトル「0000」を指定した場合、それに対応づけられた画像と文書(画像1、文書3・・・)を、コンテンツの種別に寄らずに直ちに発見できるのである。同様に、このテーブルを利用すれば、低次元バイナリベクトルqあるいはqに対応したコンテンツを即座に発見することが可能となる。
この方法によれば、コンテンツデータベース5に登録された画像、文書の数N、Nに寄らず、ほぼ一定の時間で高速に、かつ、元の特徴量(高次元数値ベクトル)をメモリに保持する必要がないため、省メモリに類似コンテンツを発見できるという利点がある。
また、別の方法として、ハミング距離による距離計算を利用することができる。すなわち、低次元バイナリベクトルq1,aあるいはq2,aと、QおよびQに含まれるN+N個の低次元バイナリベクトルとの距離を計算し、距離の小さいものを類似コンテンツとして得るものである。低次元バイナリベクトルはバイナリであるため、距離計算は例えばハミング距離で計算することができるが、ハミング距離はXOR(排他的論理和)とpopcnt演算(すなわち、バイナリ列のうち、1となっているビットの数を数える演算)のみで計算できること、および、低次元バイナリベクトルは通常少数のバイナリ値で表現できることから、元の高次元数値ベクトルで距離計算する場合に比べ、遥かに高速に演算できる。
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。本実施形態の主要な特徴を満たす範囲内において、任意の用途と構成を取ることができることは言うまでもない。
例えば、上記第1の実施の形態における、写像計算部32と、ベクトル量子化部36とを別々の装置として構成してもよい。その場合には、写像計算部32を含んでベクトル量子化器生成装置を構成し、ベクトル量子化部36を含んでベクトル量子化装置を構成する。
また、本実施の形態の情報処理装置及び情報処理システムは、ベクトル量子化器記憶部34を備えている場合について説明したが、例えばベクトル量子化器記憶部34が情報処理装置及び情報処理システムの外部装置に設けられ、情報処理装置及び情報処理システムは、外部装置と通信手段を用いて通信することにより、ベクトル量子化器記憶部34を参照するようにしてもよい。
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
例えば、前述した実施形態における写像計算部、ベクトル量子化部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、PLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されるものであってもよい。
また、上述の情報処理装置及び情報処理システムは、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。
1 情報処理装置
2,8,14 入力部
3,9,15 演算部
4,10,16 出力部
5,11 コンテンツデータベース
7 サーバ装置
13 クライアント装置
30,90,150 特徴抽出部
32,92 写像計算部
34,94,154 ベクトル量子化器記憶部
36,96,156 ベクトル量子化部
41 ベクトル量子化器
200 情報処理システム

Claims (6)

  1. 特徴抽出手段、及び写像計算手段を含むベクトル量子化器生成装置におけるベクトル量子化器生成方法であって、
    前記特徴抽出手段が、コンテンツの種別毎に、前記種別のコンテンツの各々について、前記コンテンツから前記種別に応じた高次元数値ベクトルを特徴量として抽出するステップと、
    前記写像計算手段が、前記特徴抽出手段によって前記コンテンツの種別毎に抽出された前記コンテンツの各々についての前記高次元数値ベクトルと、種別が異なるコンテンツ間の組み合わせの各々に対して予め付与された関係指示子と基づいて、
    前記コンテンツの種別毎に求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる低次元数値ベクトルと前記高次元数値ベクトルを量子化することにより得られる低次元バイナリベクトルとの相関を表す第1の相関、及び前記関係指示子が付与された、前記種別が異なるコンテンツ間の組み合わせの各々について求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる前記低次元数値ベクトル間の相関を表す第2の相関とに基づいて、前記コンテンツの種別毎に前記写像を計算し、前記コンテンツの種別毎に、前記計算した前記写像を用いた、前記高次元数値ベクトルを、低次元バイナリベクトルに変換するためのベクトル量子化器を生成するステップと、
    を含むベクトル量子化器生成方法。
  2. 前記写像計算手段は、前記第1の相関と前記第2の相関との線形結合により求められる値が大きくなるように、前記コンテンツの種別毎に前記写像を計算する
    請求項1に記載のベクトル量子化器生成方法。
  3. 特徴抽出手段、及びベクトル量子化手段を含むベクトル量子化装置におけるベクトル量子化方法であって、
    前記特徴抽出手段が、コンテンツから前記コンテンツの種別に応じた高次元数値ベクトルを特徴量として抽出するステップと、
    前記ベクトル量子化手段が、前記特徴抽出手段によって抽出された前記コンテンツの前記高次元数値ベクトルと、請求項1又は請求項2に記載のベクトル量子化器生成方法によって生成された前記コンテンツの種別に応じた前記ベクトル量子化器とに基づいて、前記コンテンツの前記高次元数値ベクトルを、前記低次元バイナリベクトルに変換するステップと、
    を含むベクトル量子化方法。
  4. コンテンツの種別毎に、前記種別のコンテンツの各々について、前記コンテンツから前記種別に応じた高次元数値ベクトルを特徴量として抽出する特徴抽出手段と、
    前記特徴抽出手段によって前記コンテンツの種別毎に抽出された前記コンテンツの各々についての前記高次元数値ベクトルと、種別が異なるコンテンツ間の組み合わせの各々に対して予め付与された関係指示子と基づいて、
    前記コンテンツの種別毎に求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる低次元数値ベクトルと前記高次元数値ベクトルを量子化することにより得られる低次元バイナリベクトルとの相関を表す第1の相関、及び前記関係指示子が付与された、前記種別が異なるコンテンツ間の組み合わせの各々について求められる、前記高次元数値ベクトルに対して前記コンテンツの種別に応じた写像を行うことにより得られる前記低次元数値ベクトル間の相関を表す第2の相関とに基づいて、前記コンテンツの種別毎に前記写像を計算し、前記コンテンツの種別毎に、前記計算した前記写像を用いた、前記高次元数値ベクトルを、低次元バイナリベクトルに変換するためのベクトル量子化器を生成する写像計算手段と、
    を含むベクトル量子化器生成装置。
  5. コンテンツから前記コンテンツの種別に応じた高次元数値ベクトルを特徴量として抽出する特徴抽出手段と、
    前記特徴抽出手段によって抽出された前記コンテンツの前記高次元数値ベクトルと、請求項4に記載のベクトル量子化器生成装置によって生成された前記コンテンツの種別に応じた前記ベクトル量子化器とに基づいて、前記コンテンツの前記高次元数値ベクトルを、前記低次元バイナリベクトルに変換するベクトル量子化手段と、
    を含むベクトル量子化装置。
  6. 請求項1又は請求項2に記載のベクトル量子化器生成方法、又は請求項3に記載のベクトル量子化方法の各ステップをコンピュータに実行させるためのプログラム。
JP2015233944A 2015-11-30 2015-11-30 ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラム Active JP6461773B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015233944A JP6461773B2 (ja) 2015-11-30 2015-11-30 ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015233944A JP6461773B2 (ja) 2015-11-30 2015-11-30 ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラム

Publications (2)

Publication Number Publication Date
JP2017102600A JP2017102600A (ja) 2017-06-08
JP6461773B2 true JP6461773B2 (ja) 2019-01-30

Family

ID=59015481

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015233944A Active JP6461773B2 (ja) 2015-11-30 2015-11-30 ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラム

Country Status (1)

Country Link
JP (1) JP6461773B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020086692A (ja) * 2018-11-20 2020-06-04 株式会社東芝 情報処理装置、情報処理方法及びプログラム
JP7259451B2 (ja) * 2019-03-22 2023-04-18 富士通株式会社 消費電力予測プログラム、消費電力予測方法、および消費電力予測装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7542966B2 (en) * 2002-04-25 2009-06-02 Mitsubishi Electric Research Laboratories, Inc. Method and system for retrieving documents with spoken queries
JP5344715B2 (ja) * 2008-11-07 2013-11-20 国立大学法人北海道大学 コンテンツ検索装置およびコンテンツ検索プログラム
JP5596648B2 (ja) * 2011-09-26 2014-09-24 日本電信電話株式会社 ハッシュ関数生成方法、ハッシュ関数生成装置、ハッシュ関数生成プログラム
JP5592337B2 (ja) * 2011-11-18 2014-09-17 日本電信電話株式会社 コンテンツ変換方法、コンテンツ変換装置及びコンテンツ変換プログラム
US9208219B2 (en) * 2012-02-09 2015-12-08 Stroz Friedberg, LLC Similar document detection and electronic discovery
EP2976727A1 (en) * 2013-03-18 2016-01-27 The Echo Nest Corporation Cross media recommendation
JP6104209B2 (ja) * 2014-04-08 2017-03-29 日本電信電話株式会社 ハッシュ関数生成方法、ハッシュ値生成方法、装置、及びプログラム

Also Published As

Publication number Publication date
JP2017102600A (ja) 2017-06-08

Similar Documents

Publication Publication Date Title
Yu et al. Deep cross-modal correlation learning for audio and lyrics in music retrieval
JP6104209B2 (ja) ハッシュ関数生成方法、ハッシュ値生成方法、装置、及びプログラム
JP6397378B2 (ja) 特徴量生成方法、特徴量生成装置、及び特徴量生成プログラム
JP5592337B2 (ja) コンテンツ変換方法、コンテンツ変換装置及びコンテンツ変換プログラム
Zhou et al. Multiple distance-based coding: toward scalable feature matching for large-scale web image search
JP6368677B2 (ja) 写像学習方法、情報圧縮方法、装置、及びプログラム
JP5596648B2 (ja) ハッシュ関数生成方法、ハッシュ関数生成装置、ハッシュ関数生成プログラム
US11615132B2 (en) Feature amount generation method, feature amount generation device, and feature amount generation program
Wang et al. Beauty product image retrieval based on multi-feature fusion and feature aggregation
Guan et al. On-device mobile visual location recognition by using panoramic images and compressed sensing based visual descriptors
JP2016066012A (ja) ハッシュ関数生成方法、ハッシュ値生成方法、装置、及びプログラム
JP6373292B2 (ja) 特徴量生成装置、方法、及びプログラム
JP6152032B2 (ja) ハッシュ関数生成方法、ハッシュ値生成方法、ハッシュ関数生成装置、ハッシュ値生成装置、ハッシュ関数生成プログラム及びハッシュ値生成プログラム
JP6461773B2 (ja) ベクトル量子化器生成方法、ベクトル量子化方法、装置、及びプログラム
JP6134246B2 (ja) ハッシュ関数生成方法、ハッシュ値生成方法、ハッシュ関数生成装置、ハッシュ値生成装置、ハッシュ関数生成プログラム及びハッシュ値生成プログラム
Hong et al. Content-based video-music retrieval using soft intra-modal structure constraint
JP6364387B2 (ja) 特徴量生成装置、方法、及びプログラム
CN116821781A (zh) 分类模型的训练方法、文本分析方法及相关设备
CN114281919A (zh) 基于目录树的节点添加方法、装置、设备以及存储介质
JP2015201041A (ja) ハッシュ関数生成方法、ハッシュ値生成方法、装置、及びプログラム
Amiriparian et al. Humans inside: cooperative big multimedia data mining
Shao et al. Music auto-tagging based on the unified latent semantic modeling
JP2015079333A (ja) ハッシュ関数生成方法、ハッシュ値生成方法、ハッシュ関数生成装置、ハッシュ値生成装置、ハッシュ関数生成プログラム及びハッシュ値生成プログラム
Garg et al. On-Device Document Classification using multimodal features
Du et al. A Low Overhead Progressive Transmission for Visual Descriptor Based on Image Saliency.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171221

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181120

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181226

R150 Certificate of patent or registration of utility model

Ref document number: 6461773

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150