(57)【特許請求の範囲】
【請求項１】
入力されたマルチモーダルである学習信号の各々について、特徴データを抽出する学習特徴抽出部と、
前記学習特徴抽出部において抽出した前記学習信号の各々の特徴データに基づいて、前記特徴データから共通の符号への変換テーブルを作成する学習部と、
入力されたシングルモーダル又はマルチモーダルである蓄積信号の各々について、特徴データを抽出する蓄積特徴抽出部と、
前記蓄積信号の各々について、前記蓄積特徴抽出部により抽出した前記蓄積信号の特徴データと、前記学習部により作成した変換テーブルとに基づいて、前記蓄積信号の特徴データを前記符号を用いた量子化データへ変換した蓄積量子化データを取得する蓄積特徴量子化部と、
前記蓄積信号の各々について、前記蓄積特徴量子化部により取得した前記蓄積信号の蓄積量子化データと前記蓄積信号の属性とを対応付けてデータベースに登録し、前記データベースを作成するデータベース作成部と、
を含む、学習装置。
【請求項２】
入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出する目的特徴抽出部と、
前記目的信号の各々について、前記目的特徴抽出部により抽出した前記目的信号の特徴データと、請求項１記載の学習装置において作成された変換テーブルとに基づいて、前記目的信号の特徴データを前記符号を用いた量子化データへ変換した目的量子化データを取得する目的特徴量子化部と、
前記目的信号の各々について、前記目的特徴量子化部により取得された前記目的信号の目的量子化データに基づいて、前記学習装置において作成されたデータベースから、前記目的量子化データに対応する前記蓄積量子化データに対応付けられている前記属性を探索する探索部と、
を含む、探索装置。
【請求項３】
前記蓄積特徴量子化部は、前記蓄積信号の特徴データに、前記学習信号の前記マルチモーダルに含まれるモーダルに対応するデータが欠損している場合には、前記蓄積信号の特徴データの前記欠損している部分にゼロを埋めた特徴データと、前記変換テーブルとに基づいて、前記蓄積量子化データを取得し、又は、前記蓄積信号の特徴データと、前記変換テーブルとに基づいて、前記変換テーブルに格納されている前記特徴データの、前記欠損している部分に対応するデータを無視して、前記蓄積量子化データを取得し、又は、前記蓄積信号の特徴データの前記欠損している部分に、対応する前記学習信号の特徴データの代表値を埋めた特徴データと、前記変換テーブルとに基づいて、前記蓄積量子化データを取得する請求項１記載の学習装置。
【請求項４】
前記目的特徴量子化部は、前記目的信号の特徴データに、前記学習信号の前記マルチモーダルに含まれるモーダルに対応するデータが欠損している場合には、前記目的信号の特徴データの前記欠損している部分にゼロを埋めた特徴データと、前記変換テーブルとに基づいて、前記目的量子化データを取得し、又は、前記目的信号の特徴データと、前記変換テーブルとに基づいて、前記変換テーブルに格納されている前記特徴データの、前記欠損している部分に対応するデータを無視して、前記目的量子化データを取得し、又は、前記目的信号の特徴データの前記欠損している部分に、対応する前記学習信号の特徴データの代表値を埋めた特徴データと、前記変換テーブルとに基づいて、前記目的量子化データを取得する請求項２記載の探索装置。
【請求項５】
前記学習信号は、センサデータ又はメディアデータを２つ以上含み、
前記蓄積信号は、センサデータ又はメディアデータを１つ以上含み、
前記目的信号は、センサデータ又はメディアデータを１つ以上含む請求項２又は４記載の探索装置。
【請求項６】
学習特徴抽出部と、学習部と、蓄積特徴抽出部と、蓄積特徴量子化部と、データベース作成部とを含む、学習装置における学習方法であって、
前記学習特徴抽出部は、入力されたマルチモーダルである学習信号の各々について、特徴データを抽出し、
前記学習部は、前記学習特徴抽出部において抽出した前記学習信号の各々の特徴データに基づいて、前記特徴データから共通の符号への変換テーブルを作成し、
前記蓄積特徴抽出部は、入力されたシングルモーダル又はマルチモーダルである蓄積信号の各々について、特徴データを抽出し、
前記蓄積特徴量子化部は、前記蓄積信号の各々について、前記蓄積特徴抽出部により抽出した前記蓄積信号の特徴データと、前記学習部により作成した変換テーブルとに基づいて、前記蓄積信号の特徴データを前記符号を用いた量子化データへ変換した蓄積量子化データを取得し、
前記データベース作成部は、前記蓄積信号の各々について、前記蓄積特徴量子化部により取得した前記蓄積信号の蓄積量子化データと前記蓄積信号の属性とを対応付けてデータベースに登録し、前記データベースを作成する
学習方法。
【請求項７】
目的特徴抽出部と、目的特徴量子化部と、探索部とを含む、探索装置における探索方法であって、
前記目的特徴抽出部は、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、
前記目的特徴量子化部は、前記目的信号の各々について、前記目的特徴抽出部により抽出した前記目的信号の特徴データと、請求項６記載の学習方法において作成された変換テーブルとに基づいて、前記目的信号の特徴データを前記符号を用いた量子化データへ変換した目的量子化データを取得し、
前記探索部は、前記目的信号の各々について、前記目的特徴量子化部により取得された前記目的信号の目的量子化データに基づいて、前記学習装置において作成されたデータベースから、前記目的量子化データに対応する前記蓄積量子化データに対応付けられている前記属性を探索する
探索方法。
【請求項８】
コンピュータを、請求項１若しくは３に記載の学習装置の各部として機能させるためのプログラム。
【請求項９】
コンピュータを、請求項２、請求項４、若しくは請求項５に記載の探索装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチモーダルな信号を探索するための学習装置、探索装置、方法、及びプログラムに関するものである。
【背景技術】
【０００２】
従来、マルチモーダルな信号を探索する方法として、時系列データである蓄積信号から、時系列データである目的信号に類似した箇所を探索する方法がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４３５８２２９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、従来の方法では、複数のモーダルを使用した場合において、一部のモーダルが欠損していた場合に、マルチモーダルな信号を探索することができないという問題がある。
【０００５】
本発明では、上記問題点を解決するために成されたものであり、一部のモーダルが欠損していてもマルチモーダルな信号を探索することができる学習装置、探索装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、第１の発明に係る学習装置は、入力されたマルチモーダルである学習信号の各々について、特徴データを抽出する学習特徴抽出部と、前記学習特徴抽出部において抽出した前記学習信号の各々の特徴データに基づいて、前記特徴データから共通の符号への変換テーブルを作成する学習部と、入力されたシングルモーダル又はマルチモーダルである蓄積信号の各々について、特徴データを抽出する蓄積特徴抽出部と、前記蓄積信号の各々について、前記蓄積特徴抽出部により抽出した前記蓄積信号の特徴データと、前記学習部により作成した変換テーブルとに基づいて、前記蓄積信号の特徴データを前記符号を用いた量子化データへ変換した蓄積量子化データを取得する蓄積特徴量子化部と、前記蓄積信号の各々について、前記蓄積特徴量子化部により取得した前記蓄積信号の蓄積量子化データと前記蓄積信号の属性とを対応付けてデータベースに登録し、前記データベースを作成するデータベース作成部と、を含んで構成されている。
【０００７】
第２の発明に係る学習方法は、学習特徴抽出部と、学習部と、蓄積特徴抽出部と、蓄積特徴量子化部と、データベース作成部とを含む、学習装置における学習方法であって、前記学習特徴抽出部は、入力されたマルチモーダルである学習信号の各々について、特徴データを抽出し、前記学習部は、前記学習特徴抽出部において抽出した前記学習信号の各々の特徴データに基づいて、前記特徴データから共通の符号への変換テーブルを作成し、前記蓄積特徴抽出部は、入力されたシングルモーダル又はマルチモーダルである蓄積信号の各々について、特徴データを抽出し、前記蓄積特徴量子化部は、前記蓄積信号の各々について、前記蓄積特徴抽出部により抽出した前記蓄積信号の特徴データと、前記学習部により作成した変換テーブルとに基づいて、前記蓄積信号の特徴データを前記符号を用いた量子化データへ変換した蓄積量子化データを取得し、前記データベース作成部は、前記蓄積信号の各々について、前記蓄積特徴量子化部により取得した前記蓄積信号の蓄積量子化データと前記蓄積信号の属性とを対応付けてデータベースに登録し、前記データベースを作成する。
【０００８】
第１及び第２の発明によれば、学習特徴抽出部により、入力されたマルチモーダルである学習信号の各々について、特徴データを抽出し、学習部により、抽出した学習信号の各々の特徴データに基づいて、特徴データから共通の符号への変換テーブルを作成し、蓄積特徴抽出部により、入力されたシングルモーダル又はマルチモーダルである蓄積信号の各々について、特徴データを抽出し、蓄積特徴量子化部により、蓄積信号の各々について、抽出した蓄積信号の特徴データと、作成した変換テーブルとに基づいて、蓄積信号の特徴データを符号を用いた量子化データへ変換した蓄積量子化データを取得し、データベース作成部により、蓄積信号の各々について、取得した蓄積信号の蓄積量子化データと蓄積信号の属性とを対応付けてデータベースに登録し、データベースを作成する。
【０００９】
このように、入力されたマルチモーダルである学習信号の各々について、特徴データを抽出し、抽出した学習信号の各々の特徴データに基づいて、変換テーブルを作成し、入力されたシングルモーダル又はマルチモーダルである蓄積信号の各々について、特徴データを抽出し、蓄積信号の各々について、抽出した蓄積信号の特徴データと、作成した変換テーブルとに基づいて、蓄積量子化データを取得し、データベース作成部により、蓄積信号の各々について、取得した蓄積信号の蓄積量子化データと蓄積信号の属性とを対応付けてデータベースに登録し、データベースを作成することにより一部のモーダルが欠損していてもマルチモーダルな信号を探索することができるデータベースを構築することができる。
【００１０】
また、第１の発明に係る学習装置において、前記蓄積特徴量子化部は、前記蓄積信号の特徴データに、前記学習信号の前記マルチモーダルに含まれるモーダルに対応するデータが欠損している場合には、前記蓄積信号の特徴データの前記欠損している部分にゼロを埋めた特徴データと、前記変換テーブルとに基づいて、前記蓄積量子化データを取得し、又は、前記蓄積信号の特徴データと、前記変換テーブルとに基づいて、前記変換テーブルに格納されている前記特徴データの、前記欠損している部分に対応するデータを無視して、前記蓄積量子化データを取得し、又は、前記蓄積信号の特徴データの前記欠損している部分に、対応する前記学習信号の特徴データの代表値を埋めた特徴データと、前記変換テーブルとに基づいて、前記蓄積量子化データを取得してもよい。
【００１１】
第３の発明に係る探索装置は、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出する目的特徴抽出部と、前記目的信号の各々について、前記目的特徴抽出部により抽出した前記目的信号の特徴データと、請求項１記載の学習装置において作成された変換テーブルとに基づいて、前記目的信号の特徴データを前記符号を用いた量子化データへ変換した目的量子化データを取得する目的特徴量子化部と、前記目的信号の各々について、前記目的特徴量子化部により取得された前記目的信号の目的量子化データに基づいて、前記学習装置において作成されたデータベースから、前記目的量子化データに対応する前記蓄積量子化データに対応付けられている前記属性を探索する探索部と、を含んで構成されている。
【００１２】
第４の発明に係る探索方法は、目的特徴抽出部と、目的特徴量子化部と、探索部とを含む、探索装置における探索方法であって、前記目的特徴抽出部は、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、前記目的特徴量子化部は、前記目的信号の各々について、前記目的特徴抽出部により抽出した前記目的信号の特徴データと、第３の発明の学習方法において作成された変換テーブルとに基づいて、前記目的信号の特徴データを前記符号を用いた量子化データへ変換した目的量子化データを取得し、前記探索部は、前記目的信号の各々について、前記目的特徴量子化部により取得された前記目的信号の目的量子化データに基づいて、前記学習装置において作成されたデータベースから、前記目的量子化データに対応する前記蓄積量子化データに対応付けられている前記属性を探索する。
【００１３】
第３及び第４の発明によれば、目的特徴抽出部により、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、目的特徴量子化部により、目的信号の各々について、抽出した目的信号の特徴データと、第１の発明に係る学習装置において作成された変換テーブルとに基づいて、目的量子化データを取得し、探索部により、目的信号の各々について、取得された目的信号の目的量子化データに基づいて、学習装置において作成されたデータベースから、目的量子化データに対応する蓄積量子化データに対応付けられている属性を探索する。
【００１４】
このように、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、目的信号の各々について、抽出した目的信号の特徴データと、作成された変換テーブルとに基づいて、目的量子化データを取得し、目的信号の各々について、取得された目的信号の目的量子化データに基づいて、作成されたデータベースから、目的量子化データに対応する蓄積量子化データに対応付けられている属性を探索することにより一部のモーダルが欠損していてもマルチモーダルな信号を探索することができる。
【００１５】
また、第３の発明に係る探索装置において、前記目的特徴量子化部は、前記目的信号の特徴データに、前記学習信号の前記マルチモーダルに含まれるモーダルに対応するデータが欠損している場合には、前記目的信号の特徴データの前記欠損している部分にゼロを埋めた特徴データと、前記変換テーブルとに基づいて、前記目的量子化データを取得し、又は、前記目的信号の特徴データと、前記変換テーブルとに基づいて、前記変換テーブルに格納されている前記特徴データの、前記欠損している部分に対応するデータを無視して、前記目的量子化データを取得し、又は、前記目的信号の特徴データの前記欠損している部分に、対応する前記学習信号の特徴データの代表値を埋めた特徴データと、前記変換テーブルとに基づいて、前記目的量子化データを取得してもよい。
【００１６】
また、第３の発明に係る探索装置において、前記学習信号は、センサデータ又はメディアデータを２つ以上含み、前記蓄積信号は、センサデータ又はメディアデータを１つ以上含み、前記目的信号は、センサデータ又はメディアデータを１つ以上含んでもよい。
【００１７】
また、本発明のプログラムは、コンピュータを、上記の学習装置、又は探索装置を構成する各部として機能させるためのプログラムである。
【発明の効果】
【００１８】
以上説明したように、本発明の学習装置、方法、及びプログラムによれば、入力されたマルチモーダルである学習信号の各々について、特徴データを抽出し、抽出した学習信号の各々の特徴データに基づいて、変換テーブルを作成し、入力されたシングルモーダル又はマルチモーダルである蓄積信号の各々について、特徴データを抽出し、蓄積信号の各々について、抽出した蓄積信号の特徴データと、作成した変換テーブルとに基づいて、蓄積量子化データを取得し、データベース作成部により、蓄積信号の各々について、取得した蓄積信号の蓄積量子化データと蓄積信号の属性とを対応付けてデータベースに登録し、データベースを作成することにより一部のモーダルが欠損していてもマルチモーダルな信号を探索することができるデータベースを構築することができる。
【００１９】
また、本発明の探索装置、方法、及びプログラムによれば、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、目的信号の各々について、抽出した目的信号の特徴データと、作成された変換テーブルとに基づいて、目的量子化データを取得し、目的信号の各々について、取得された目的信号の目的量子化データに基づいて、作成されたデータベースから、目的量子化データに対応する蓄積量子化データに対応付けられている属性を探索することにより一部のモーダルが欠損していてもマルチモーダルな信号を探索することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１の実施形態に係るマルチモーダル信号探索装置の機能的構成を示すブロック図である。
【図２】本発明の第１の実施形態に係るマルチモーダル信号探索装置における学習信号処理ルーチンのフローチャート図である。
【図３】本発明の第１の実施形態に係るマルチモーダル信号探索装置における蓄積信号処理ルーチンのフローチャート図である。
【図４】本発明の第１の実施形態に係るマルチモーダル信号探索装置における探索処理ルーチンのフローチャート図である。
【図５】本発明の第２の実施形態に係るマルチモーダル信号探索装置の機能的構成を示すブロック図である。
【図６】本発明の第２の実施形態に係るマルチモーダル信号探索装置における蓄積信号処理ルーチンのフローチャート図である。
【図７】本発明の第２の実施形態に係るマルチモーダル信号探索装置における探索処理ルーチンのフローチャート図である。
【図８】本発明の第３の実施形態に係るマルチモーダル信号探索装置の機能的構成を示すブロック図である。
【図９】本発明の第３の実施形態に係るマルチモーダル信号探索装置における蓄積信号処理ルーチンのフローチャート図である。
【図１０】本発明の第３の実施形態に係るマルチモーダル信号探索装置における探索処理ルーチンのフローチャート図である。
【図１１】ウェアラブルなモーダルを用いたデータ収集の一例を示す図である。
【図１２】外部に設置されたモーダルを用いたデータ収集の一例を示す図である。
【図１３】実験結果の一例を示す図である。
【図１４】実験結果の一例を示す図である。
【発明を実施するための形態】
【００２１】
以下、図面を参照して本発明の実施形態を詳細に説明する。
【００２２】
＜本発明の第１の実施形態に係るマルチモーダル信号探索装置の構成＞
まず、本発明の第１の実施形態に係るマルチモーダル信号探索装置の構成について説明する。図１に示すように、本発明の第１の実施形態に係るマルチモーダル信号探索装置１００は、ＣＰＵと、ＲＡＭと、後述する学習信号処理ルーチン、蓄積信号処理ルーチン、及び探索処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。このマルチモーダル信号探索装置１００は、機能的には図１に示すように学習信号取得部１０と、蓄積信号取得部１２と、目的信号取得部１４と、演算部２０と、出力部９０とを含んで構成されている。
【００２３】
学習信号取得部１０は、少なくとも２つ以上の、学習に使用するマルチモーダルな信号（以後、学習信号とする。）を取得し、学習特徴抽出部２２に出力する。ここで、マルチモーダルな信号とは、例えば、マイクを用いて集音した音声信号データ（又は音響信号データ）、カメラを用いて撮影した画像信号データ、ウェアラブルまたは環境に設置されたセンサ、具体的には、加速度センサ、ジャイロセンサ、地磁気センサ、照度センサ、圧力センサ、近接センサ、温度センサ、湿度センサ、心拍・心電計、気圧センサ、ＧＰＳ、及び深度センサなどを用いて収集した加速度、角加速度、地磁気、照度、圧力、近接度、温度、湿度、心拍数・心電図、気圧、ＧＰＳデータ、及び深度地図などのセンサ信号データである。また、文も一つのモーダルとして用いてもよく、この場合には文字データを信号データとして用いる。なお、第１の実施形態においては、マルチモーダルな学習信号として音声信号データと、画像信号データとを用いることとする。また、計測機器を用いて収集されるセンサ信号データをセンサデータとし、文字データはメディアデータの一種とする。また、センサ信号データは、上記の例に限定されず、他のセンサ信号データを用いてもよい。また、メディアデータは、上記文字データに限定されず、他のメディアデータを用いてもよい。
【００２４】
蓄積信号取得部１２は、少なくとも１つ以上の、後述するデータベースに蓄積するシングルモーダル、又はマルチモーダルな信号（以後、蓄積信号とする。）を取得し、蓄積特徴抽出部３０に出力する。なお、第１の実施形態においては、蓄積信号は、学習信号として取得されたモーダルと同種、及び同数のモーダルが取得される場合と、学習信号として取得されたモーダルの各々のうち、一部を欠損したモーダルの各々が取得される場合とがある。また、第１の実施形態においては、蓄積信号の各々に、当該蓄積信号に対応する属性データが付加されているものとする。なお、属性データと蓄積データとの対応関係を明確にすることができる場合には、付加されていることには限定されず、別途属性データを属性付与部３４に入力してもよい。ここで、属性データとは、データを表すのに有効な情報のことで、例えば、データの取得した環境やデータの中身などに関する説明やタグなどを表す。例えば、ダンスデータであれば、ダンスの技や構成、又は演者のタイプなどに関する情報が該当する。また、蓄積信号そのものを属性データとして用いてもよい。例えば、ダンスデータであれば、ダンスを撮影、録音した画像信号、音響信号データを属性データとして用いてもよい。
【００２５】
例えば、第１の実施の形態においては、学習信号は、音声信号データのモーダルと、画像信号データのモーダルとからなるマルチモーダルであることから、蓄積信号として、同様の音声信号データのモーダルと、画像信号データのモーダルとからなるマルチモーダルを取得する場合と、音声信号データのモーダル及び画像信号データのモーダルの一方を取得する場合とがある。
【００２６】
目的信号取得部１４は、少なくとも１つ以上の、クエリとなるシングルモーダル、又はマルチモーダルな信号（以後、目的信号とする。）を取得し、目的特徴抽出部４０に出力する。なお、目的信号についても、上述した蓄積信号と同様に、学習信号として取得されたモーダルと同種、及び同数のモーダルが取得される場合と、学習信号として取得されたモーダルの各々のうち、一部を欠損したモーダルの各々が取得される場合とがある。
【００２７】
演算部２０は、学習特徴抽出部２２と、学習部２４と、変換テーブル記憶部２６と、蓄積特徴抽出部３０と、蓄積特徴量子化部３２と、属性付与部３４と、データベース作成部３６と、データベース記憶部３８と、目的特徴抽出部４０と、目的特徴量子化部４２と、探索部４４とを含んで構成されている。
【００２８】
学習特徴抽出部２２は、学習信号取得部１０から入力された学習信号の各々について、当該学習信号から特徴データを抽出し、学習部２４に出力する。具体的には、学習信号に含まれる各モーダルについて特徴データを抽出する。なお、抽出された特徴データに含まれるデータの各々は、後述の学習部２４における処理として必要な最小単位分とする。
【００２９】
ここで、特徴データを抽出するとは、音声信号データ（又は、音響信号データ）に対しては、まず、信号データを、指定したサンプリング周波数でリサンプリングする。例えば、サンプリング周波数を８０００Ｈｚとしてリサンプリングを行う。この際、前処理として、例えば、係数を０．７６としたプリエンファシスによって高域強調を行ってもよい。その後、一定の窓幅で信号を切り出すという処理を、一定間隔ずらしながら行う。パラメータとしては、例えば、窓幅を１０２４サンプル、シフト幅を１００サンプルとする。そして、切り出した個々の信号データに対して、離散フーリエ変換を行うことによって、短時間周波数スペクトルを得る。なお、音声信号の周波数スペクトルは、低周波領域にノイズが含まれることが多いので、得られた周波数スペクトルの一部を用いてもよい。例えば、低周波領域から６５番目のデータから、５１２番目のデータまでを用いる。ここで得られた短時間周波数スペクトルを時系列方向に並べることによって、時系列ベクトルを取得する。第１の実施形態においては、離散フーリエ変換を行う例を挙げたが、パワースペクトルへの変換方法として離散コサイン変換を用いてもよい。また、特徴データとして、他の公知の方法、例えば、音声信号データから得られるスペクトラル包絡、基本周波数の時間変化情報などを用いてもよい。
【００３０】
また、画像信号データに対しては、まず、前処理として、指定したフレームレートで動画をリサンプリングする。例えば、フレームレートを１５として、リサンプリングを行う。この際、特徴抽出の処理スピードを向上するために、画像サイズの縮小処理を実行してもよい。例えば、縦方向４８ピクセル、横方向６４ピクセルに縮小する。次に、動画中の各画像について、画像領域を一定の間隔でブロックに分割し、各ブロック内でＲＧＢそれぞれについて平均値を算出することで、各画像について特徴ベクトルを取得する。パラメータとしては、縦方向に１２分割、横方向に１６分割する。動画の場合、画像信号データが時系列にわたって続くので、上記特徴データの抽出を、各画像に対して適用し、つなぎ合わせることによって、時系列ベクトルを取得する。第１の実施形態においては、ブロック領域内のＲＧＢデータを用いる例を挙げたが、他にも、公知の手法であるScale-Invariant Feature Transform (SIFT)（非特許文献１：David G. Lowe. Object recognition from local scale-invariant features. In Proceedings of the International Conference on Computer Vision, 1999.）などの局所記述子を画像の特徴データとして用いてもよい。
【００３１】
また、加速度センサ、ジャイロセンサ、地磁気センサによって得られた９軸のセンサデータ、あるいは、心拍・心電計を用いて得られた心拍・心電データに対しては、各軸について特徴データの抽出を行う。まず、前処理として一定のサンプリング周波数でリサンプリングを行う。例えば、サンプリング周波数を２００Ｈｚとしてリサンプリングを行う。上記処理に加えて、前処理として、平滑化などのフィルタリング処理を行い、ノイズ除去処理を実行してもよい。次に、時間軸上で、一定の窓幅で信号を切り出すという処理を、信号の先端から終端に向けて、一定間隔ずらしながら行う。パラメータとしては、例えば、窓幅を１秒、シフト幅を１秒とする。そして、切り出した個々の信号データに対して、離散コサイン変換を行うことによって、短時間周波数スペクトルを得る。ここで得られた短時間周波数スペクトルを時系列方向に並べることによって、時系列ベクトルを取得する。第１の実施形態においては、離散コサイン変換を用いる例を挙げたが、パワースペクトルへの変換方法として、離散フーリエ変換を行ってもよい。また、センサ信号データのピーク位置情報を特徴データとして用いてもよい。また、上記では、各軸について特徴データを抽出する例を挙げたが、３軸センサの場合は、各軸のセンサデータの２乗和のルートをとることによって、センサ値の大きさを求め、その値について前記と同様の処理を行ってもよい。
【００３２】
また、深度センサから得られた深度データに対しては、公知の手法を用いて、深度データを用いて、人体の骨格モデルを求め、各関節の軌跡データについて周波数解析を行うことによって、特徴データを抽出する。また、文中の文字データに対しては、英語の場合は、文字の区切り目であるスペースやピリオド、カンマなどの情報を元にして、文に出現する単語情報を特徴データとして取得する。また、照度センサ、圧力センサ、近接センサ、温度センサ、湿度センサ、気圧センサ、及びＧＰＳから得られた照度データ、圧力データ、近接度データ、温度データ、湿度データ、気圧データ、及びＧＰＳデータに対しては、公知の手法を用いて、任意の特徴データを抽出する。
【００３３】
なお、上述した特徴データの抽出方法は、特に限定されず、他の公知の手法を用いてもよい。また、特徴データのスケールは、個々のモーダルごとに異なるので、特徴データの抽出の後処理として、特徴データの中心化や正規化を行い、モーダル間の差異の緩和を行ってもよい。
【００３４】
学習部２４は、学習特徴抽出部２２から入力された学習信号の各々の特徴データに基づいて、学習信号として取得されたモーダルの組み合わせにおいて、特徴データを共通の符号（或いは番号）へ変換する変換テーブルを作成し、変換テーブル記憶部２６に記憶する。第１の実施の形態においては、学習信号の各々に含まれる各モーダルの音声信号のモーダル、及び画像信号のモーダルの組み合わせについての変換テーブルを作成する。なお、第１の実施の形態においては、音声信号のモーダル、及び画像信号のモーダルの２つのモーダルの組み合わせについて、変換テーブルを作成する場合について説明したが、これに限定されるものではない。例えば、変換テーブルを作成するモーダルの組み合わせに用いるモーダルの数は限定されない。これは、音声特徴データと画像特徴データのように２つのモーダルを組み合わせてもよく、また、音声特徴データと画像特徴データ、加速度特徴データのように３つのモーダルを組み合わせもよいことを表す。そのため、あらゆるモーダルの組み合わせに対応させて変換テーブルを作成することができる。なお、学習部２４において作成される変換テーブルに対応するモーダルの組み合わせは予め定義しておくものとする。
【００３５】
具体的には、変換テーブルは、例えば、公知の方法であるＫ‐ｍｅａｎｓ法に基づくＬＢＧアルゴリズムにより代表ベクトルをＶｋ求め、代表ベクトルに番号ｋを付与することによって作成する。そのため、変換テーブルは、代表ベクトルＶｋに近い特徴ベクトルを番号ｋに変換するためのテーブルとすることができる。ここで、ｋ=１，２，・・・，Ｋであり、Ｋは、代表ベクトルの数を表し、例えば、Ｋ＝１００とする。Ｋ‐ｍｅａｎｓ法も複数種類あるが、例えば、Ｅｌｋａｎアルゴリズムを用いる。また、Ｋ‐ｍｅａｎｓ法は初期値に依存する方法なので、初期値を設定する必要があるが、これについては、例えば、ランダムな値を用いる。Ｋ‐ｍｅａｎｓでは、初期値からはじめ、収束するまで反復処理を行うが、繰り返し回数については、例えば、５０回を上限とする。なお、第１の実施形態において、音声モーダルの特徴データの次元がＤｘであり、画像モーダルの特徴データの次元がＤｙであるとすると、第１の実施形態における代表ベクトルＶｋの次元は、Ｄｘ＋Ｄｙとなる。ここで、各モーダルの優先順位は予め定義されており、第１の実施形態においては音声モーダルの後に画像モーダルの要素が並ぶということが予め定義されているものとする。そのため、代表ベクトルＶｋの次元は、Ｄｘ＋Ｄｙとなる。
【００３６】
変換テーブル記憶部２６には、学習部２４において作成された変換テーブルが記憶されている。第１の実施形態においては、Ｋ＝１００であるため、１００個の代表ベクトルＶｋと番号ｋとの組み合わせが格納されているものとする。
【００３７】
蓄積特徴抽出部３０は、蓄積信号取得部１２から入力された蓄積信号の各々について、当該蓄積信号から特徴データを抽出し、蓄積特徴量子化部３２へ出力する。なお、蓄積特徴抽出部３０における、蓄積信号からの特徴データの抽出方法は、上述した学習特徴抽出部２２と同様であるため、詳細な説明は省略する。
【００３８】
蓄積特徴量子化部３２は、蓄積信号の各々について、蓄積特徴抽出部３０において抽出した当該蓄積信号の特徴データと、変換テーブル記憶部２６に記憶されている変換テーブルとに基づいて、当該蓄積信号に含まれる最小処理単位毎の特徴データを量子化データへ変換し、変換された量子化データの各々に基づいて、蓄積量子化データを生成し、属性付与部３４に出力する。ここで、量子化は、上述した代表ベクトルＶｋのうち最も近い代表ベクトルに対応する番号ｋを量子化値（量子化データ）として使用する。なお、対象となる蓄積信号において、変換テーブルの対象であるモーダルの組み合わせのうち、少なくとも１つ以上のモーダルを欠損している場合には、当該欠損しているモーダルに対応する蓄積信号の特徴データの値にゼロを埋める。
【００３９】
具体的には、対象となる蓄積信号に含まれる各モーダルの特徴データの先頭から、各モーダルの最小処理単位データ同士を組み合わせたデータを処理特徴データとする。また、当該処理特徴データと変換テーブルに含まれる各代表ベクトルＶｋとの距離を算出し、距離が最小となる代表ベクトルＶｋを決定し、当該決定した代表ベクトルＶｋに対応するｋを変換テーブルから量子化データとして取得する。当該処理を蓄積信号に含まれる各モーダルの特徴データの先頭から、最小処理単位毎に処理が可能な範囲まで繰り返す。そして、繰り返し処理において取得した各ｋの値に基づいて、ｋの値についてのヒストグラムを当該蓄積信号の蓄積量子化データとして作成する。なお、当該ヒストグラムの単位は、例えば、確率分布を表し、各ｋの個数の各々を、取得したｋの総数で割った値を用いる事とする。
【００４０】
例えば、前記変換テーブルを２つのモーダルを組み合わせて作成した場合について、１つの処理特徴データを量子化データに変換する場合について説明する。変換テーブルの対象となるモーダルの組み合わせが２つのモーダルである場合において、一方のモーダルＭ１の特徴データの次元をＤ１、他方のモーダルＭ２の特徴データの次元をＤ２とすると、変換テーブルの代表ベクトルＶｋの次元は、Ｄ１＋Ｄ２となる（モーダルＭ１の後にモーダルＭ２が続くことが予め定義されている）。蓄積信号に含まれるモーダルが、変換テーブルの対象となるモーダルの各々と一致する場合には、当該蓄積特徴データ内のある時刻ｔのベクトルＷｔの次元は、Ｄ１＋Ｄ２となり、代表ベクトルＶｋの次元と一致するので、ＷｔとＶｋとの距離をそのまま計算し、その値が最も小さくなるようなｋを求めることで、量子化データを取得することができる。ここで、距離を計算するとき、例えばＬ２距離を用いる。他にも、Ｌ１距離やハミング距離など公知の任意の距離評価尺度を用いてもよい。モーダルに不足がある場合、例えば、一つ目のモーダルＭ１を欠損している場合は、前記蓄積特徴データ内のｔ番目のベクトルＷｔ（２）の次元は、Ｄ２次元となり、代表ベクトルＶｋと比較すると、最初のＤ１次元が欠損していることになる。第１の実施形態においては、欠損している部分については、ゼロを埋めることによって対処する。つまり、ゼロがＤ１個並んだベクトルとＷｔ（２）とをつなげたベクトルと、代表ベクトルＶｋとの距離を計算し、その値が最も小さくなるようなｋを求めることで、量子化データを取得する。なお、上記の例は１つ目のモーダルが欠損したときについて説明したが、２つ目のモーダルが欠損した場合についても同様に処理を行うことにより対応できる。
【００４１】
属性付与部３４は、蓄積信号の各々について、蓄積特徴量子化部３２から入力された当該蓄積信号の蓄積量子化データと、当該蓄積信号の属性データとを紐付けてデータベース作成部３６に出力する。
【００４２】
データベース作成部３６は、属性付与部３４から入力された蓄積信号各々についての、蓄積量子化データと属性データとの組み合わせを、データベース記憶部３８に記憶されているデータベースに登録する。
【００４３】
データベース記憶部３８には、蓄積量子化データと属性データとの組み合わせの各々が記憶されているデータベースが記憶されている。
【００４４】
目的特徴抽出部４０は、目的信号取得部１４から入力された目的信号の各々について、当該目的信号から特徴データを抽出し、目的特徴量子化部４２へ出力する。なお、目的特徴抽出部４０における、目的信号からの特徴データの抽出方法は、上述した学習特徴抽出部２２と同様であるため、詳細な説明は省略する。
【００４５】
目的特徴量子化部４２は、目的信号の各々について、目的特徴抽出部４０において抽出された当該目的信号の特徴データと、変換テーブル記憶部２６に記憶されている変換テーブルとに基づいて、当該目的信号に含まれる最小処理単位毎の特徴データを量子化データへ変換し、変換された量子化データの各々に基づいて、目的量子化データを生成し、探索部４４に出力する。なお、目的信号の特徴データを目的量子化データへ変換する方法は、上述した蓄積特徴量子化部３２における蓄積信号の特徴データを蓄積量子化データへ変換する方法と同様の処理であるため、詳細な説明は省略する。
【００４６】
探索部４４は、目的信号の各々について、目的特徴量子化部４２において取得した当該目的信号の目的量子化データと、データベース記憶部３８に記憶されているデータベースとに基づいて、当該目的信号の属性を探索し、探索結果を出力部９０から出力する。
【００４７】
具体的には、目的信号の各々について、当該目的信号の目的量子化データであるヒストグラムと、データベースに含まれる蓄積量子化データであるヒストグラムの各々との一致度を計算し、当該一致度が予め定められた閾値を超えた場合に、両ヒストグラムが一致すると判定し、一致すると判定された蓄積量子化データに対応する属性データをデータベースから取得し、当該属性データを、当該目的信号の属性データとして出力部９０から出力する。ここで、一致度は、例えば、Ｌ１距離によって評価する。この一致度の評価方法は、特定の距離評価尺度に限定されず、Ｌ２距離、ハミング距離など公知の任意の距離評価尺度を用いてよい。また、蓄積量子化データと付与された属性について、ロジスティック回帰やサポートベクターマシンなどを用いて、識別関数をあらかじめ学習し、その学習した評価関数を用いて、目的量子化データに対応する前記属性データを出力してもよい。また、複数の蓄積量子化データについて一致すると判定された場合には、一致度が一番高い（例えば、一番距離が小さい）蓄積量子化データに対応する属性データを出力部９０から出力してもよいし、対応する属性データを距離が小さい順に並びかえた結果を出力部９０から出力してもよい。また、閾値を用いず、計算された一致度順に対応する属性データを並べ替えた結果を出力部９０から出力してもよい。
【００４８】
＜本発明の第１の実施形態に係るマルチモーダル信号探索装置の作用＞
次に、本発明の第１の実施形態に係るマルチモーダル信号探索装置１００の作用について説明する。マルチモーダル信号探索装置１００は、学習信号取得部１０によって学習信号の各々が取得されると、マルチモーダル信号探索装置１００によって、図２に示す学習信号処理ルーチンが実行される。また、マルチモーダル信号探索装置１００は、蓄積信号取得部１２によって蓄積信号を受け付けると、マルチモーダル信号探索装置１００によって、図３に示す蓄積信号処理ルーチンが実行される。また、マルチモーダル信号探索装置１００は、目的信号取得部１４によって目的信号を受け付けると、マルチモーダル信号探索装置１００によって、図４に示す探索処理ルーチンが実行される。
【００４９】
始めに、図２に示す学習信号処理について説明する。
【００５０】
まず、図２に示す学習信号処理ルーチンのステップＳ１００で、受け付けた学習信号の各々のうち、処理対象となる学習信号を決定する。
【００５１】
次に、ステップＳ１０２で、処理対象の学習信号について特徴データを抽出する。
【００５２】
次に、ステップＳ１０４で、受け付けた全ての学習信号について、ステップＳ１０２の処理を終了したか否かを判定する。受け付けた全ての学習信号について、ステップＳ１０２の処理を終了したと判定した場合には、学習信号処理は、ステップＳ１０６へ移行する。一方、受け付けた全ての学習信号について、ステップＳ１０２の処理を終了していないと判定した場合には、学習信号処理は、ステップＳ１００へ移行し、処理対象となる学習信号を変更し、ステップＳ１０２〜ステップＳ１０４までの処理を繰り返す。
【００５３】
次に、ステップＳ１０６で、ステップＳ１０２において取得した受け付けた学習信号各々の特徴データに基づいて、変換テーブルを作成し、変換テーブル記憶部２６に記憶し、学習信号処理ルーチンを終了する。
【００５４】
次に、図３に示す蓄積信号処理ルーチンについて説明する。
【００５５】
まず、図３に示す蓄積信号処理ルーチンのステップＳ１２０で、変換テーブル記憶部２６に記憶されている変換テーブルを読み込む。
【００５６】
次に、ステップＳ１２２で、受け付けた蓄積信号の各々のうち、処理対象となる蓄積信号を決定する。
【００５７】
次に、ステップＳ１２４で、処理対象となる蓄積信号について、上述のステップＳ１０２と同様に特徴データを抽出する。
【００５８】
次に、ステップＳ１２６で、処理対象となる蓄積信号について、ステップＳ１２４において取得した特徴データから処理対象となる最小単位を決定する。
【００５９】
次に、ステップＳ１２８で、処理対象となる蓄積信号について、上述のステップＳ１０６において取得した変換テーブルの対象となる全てのモーダルを含むか否かを判定する。蓄積信号に、対象となる全てのモーダルを含む場合には、蓄積信号処理は、ステップＳ１３２へ移行する。一方、蓄積信号に、対象となる全てのモーダルを含まない場合（一部欠損している）場合には、蓄積信号処理は、ステップＳ１３０へ移行する。
【００６０】
次に、ステップＳ１３０で、ステップＳ１２４において取得した、処理対象となる最小単位の特徴データの欠損部分に対応している部分の要素にゼロを埋める。
【００６１】
次に、ステップＳ１３２で、ステップＳ１２４において取得した、又はステップＳ１３０においてゼロを埋めた処理対象となる最小単位の特徴データと、ステップＳ１２０において取得した変換テーブルとに基づいて、処理対象となる最小単位に対応する量子化データであるｋの値を決定する。
【００６２】
次に、ステップＳ１３４で、処理対象となる蓄積信号の全ての最小単位についてステップＳ１２８〜ステップＳ１３２までの処理を終了したか否かを判定する。全ての最小単位についてステップＳ１２８〜ステップＳ１３２までの処理を終了したと判定した場合には、蓄積信号処理は、ステップＳ１３６へ移行する。一方、全ての最小単位についてステップＳ１２８〜ステップＳ１３２までの処理を終了していないと判定した場合には、蓄積信号処理は、ステップＳ１２６へ移行し、処理対象となる最小単位を変更し、ステップＳ１２８〜ステップＳ１３４までの処理を繰り返す。
【００６３】
次に、ステップＳ１３６で、処理対象となる蓄積信号について、ステップＳ１３２において取得した当該蓄積信号に含まれる最小単位毎のｋの値の各々に基づいて、蓄積量子化データを生成する。
【００６４】
次に、ステップＳ１３８で、処理対象となる蓄積信号について、ステップＳ１３６において取得した蓄積量子化データと当該蓄積信号に付加されている属性データとを紐づける。
【００６５】
次に、ステップＳ１４０で、ステップＳ１３８において取得した蓄積量子化データと属性データとの組み合わせをデータベース記憶部３８に記憶されているデータベースに記憶する。
【００６６】
次に、ステップＳ１４２で、受け付けた全ての蓄積信号について、ステップＳ１２４〜ステップＳ１４０までの処理を終了したか否かを判定する。全ての蓄積信号について、ステップＳ１２４〜ステップＳ１４０までの処理を終了したと判定した場合には、蓄積信号処理ルーチンは終了する。一方、全ての蓄積信号について、ステップＳ１２４〜ステップＳ１４０までの処理を終了していないと判定した場合には、蓄積信号処理ルーチンは、ステップＳ１２２へ移行し、処理対象となる蓄積信号を変更し、ステップＳ１２４〜ステップＳ１４２までの処理を繰り返す。
【００６７】
次に、図４に示す探索処理ルーチンについて説明する。
【００６８】
まず、図４に示す探索処理ルーチンのステップＳ１５０で、変換テーブル記憶部２６に記憶されている変換テーブルを読み込む。
【００６９】
次に、ステップＳ１５２で、データベース記憶部３８に記憶されているデータベースを読み込む。
【００７０】
次に、ステップＳ１５４で、受け付けた目的信号の各々のうち、処理対象となる目的信号を決定する。
【００７１】
次に、ステップＳ１５６で、処理対象となる目的信号について、上述のステップＳ１０２と同様に特徴データを抽出する。
【００７２】
次に、ステップＳ１５８で、処理対象となる目的信号について、ステップＳ１５６において取得した特徴データから処理対象となる最小単位を決定する。
【００７３】
次に、ステップＳ１６０で、処理対象となる目的信号について、上述のステップＳ１０６において取得した変換テーブルの対象となる全てのモーダルを含むか否かを判定する。目的信号に、対象となる全てのモーダルを含む場合には、探索処理は、ステップＳ１６４へ移行する。一方、目的信号に、対象となる全てのモーダルを含まない場合（一部欠損している）場合には、探索処理は、ステップＳ１６２へ移行する。
【００７４】
次に、ステップＳ１６２で、ステップＳ１５６において取得した、処理対象となる最小単位の特徴データの欠損部分に対応している部分の要素にゼロを埋める。
【００７５】
次に、ステップＳ１６４で、ステップＳ１５６において取得した、又はステップＳ１６２においてゼロを埋めた処理対象となる最小単位の特徴データと、上述のステップＳ１５０において取得した変換テーブルとに基づいて、処理対象となる最小単位に対応する量子化データであるｋの値を決定する。
【００７６】
次に、ステップＳ１６６で、処理対象となる目的信号の全ての最小単位についてステップＳ１６０〜ステップＳ１６４までの処理を終了したか否かを判定する。全ての最小単位についてステップＳ１６０〜ステップＳ１６２までの処理を終了したと判定した場合には、探索処理は、ステップＳ１６８へ移行する。一方、全ての最小単位についてステップＳ１６０〜ステップＳ１６４までの処理を終了していないと判定した場合には、探索処理は、ステップＳ１５８へ移行し、処理対象となる最小単位を変更し、ステップＳ１６０〜ステップＳ１６６までの処理を繰り返す。
【００７７】
次に、ステップＳ１６８で、処理対象となる目的信号について、ステップＳ１６４において取得した当該目的信号に含まれる最小単位毎のｋの値の各々に基づいて、目的量子化データを生成する。
【００７８】
次に、ステップＳ１７０で、処理対象となる目的信号について、ステップＳ１６８において取得した当該目的信号の目的量子化データと、ステップＳ１５２において取得したデータベースとに基づいて、当該目的信号に対応する属性データを探索する。
【００７９】
次に、ステップＳ１７２で、処理対象となる目的信号について、ステップＳ１７０において取得した属性データを探索結果として出力部９０から出力する。
【００８０】
次に、ステップＳ１７４で、受け付けた全ての目的信号について、ステップＳ１５６〜ステップＳ１７２までの処理を終了したか否かを判定する。全ての目的信号について、ステップＳ１５６〜ステップＳ１７２までの処理を終了したと判定した場合には、探索処理ルーチンは終了する。一方、全ての目的信号について、ステップＳ１５６〜ステップＳ１７２までの処理を終了していないと判定した場合には、探索処理ルーチンは、ステップＳ１５４へ移行し、処理対象となる目的信号を変更し、ステップＳ１５６〜ステップＳ１７４までの処理を繰り返す。
【００８１】
以上説明したように、本発明の第１の実施形態に係るマルチモーダル信号探索装置によれば、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、目的信号の各々について、抽出した目的信号の特徴データと、作成された変換テーブルとに基づいて、目的量子化データを取得し、目的信号の各々について、取得された目的信号の目的量子化データに基づいて、作成されたデータベースから、目的量子化データに対応する蓄積量子化データに対応付けられている属性を探索することにより一部のモーダルが欠損していてもマルチモーダルな信号を探索することができる。
【００８２】
また、シングルモーダル、又はマルチモーダルな信号を対象のモーダルのあらゆる組み合わせで共通の符号への変換テーブルを用いて量子化することで、一部のモーダルが欠損していても探索することを可能とし、対応する属性データを取得することができる。
【００８３】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００８４】
次に、第２の実施形態に係るマルチモーダル信号探索装置について説明する。
【００８５】
第２の実施形態においては、蓄積信号、又は目的信号の一部に欠損が生じている場合には、当該欠損部分を無視して蓄積量子化データ、及び目的量子化データを生成する点が、第１の実施形態と異なる。なお、第１の実施形態に係るマルチモーダル信号探索装置と同様の構成及び作用については、同一の符号を付して説明を省略する。
【００８６】
＜第２の実施形態に係るマルチモーダル信号探索装置の構成＞
次に、本発明の第２の実施形態に係るマルチモーダル信号探索装置の構成について説明する。図５に示すように、本発明の第２の実施形態に係るマルチモーダル信号探索装置２００は、ＣＰＵと、ＲＡＭと、後述する学習信号処理ルーチン、蓄積信号処理ルーチン、及び探索処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。このマルチモーダル信号探索装置２００は、機能的には図５に示すように学習信号取得部１０と、蓄積信号取得部１２と、目的信号取得部１４と、演算部２２０と、出力部９０とを含んで構成されている。
【００８７】
演算部２２０は、学習特徴抽出部２２と、学習部２４と、変換テーブル記憶部２６と、蓄積特徴抽出部３０と、蓄積特徴量子化部２３２と、属性付与部３４と、データベース作成部３６と、データベース記憶部３８と、目的特徴抽出部４０と、目的特徴量子化部２４２と、探索部４４とを含んで構成されている。
【００８８】
蓄積特徴量子化部２３２は、蓄積信号の各々について、蓄積特徴抽出部３０において抽出された当該蓄積信号の特徴データと、変換テーブル記憶部２６に記憶されている変換テーブルとに基づいて、当該蓄積信号に含まれる最小処理単位毎の特徴データを量子化データへ変換し、変換された量子化データの各々に基づいて、蓄積量子化データを生成し、属性付与部３４に出力する。対象となる蓄積信号において、変換テーブルの対象であるモーダルの組み合わせのうち、少なくとも１つ以上のモーダルを欠損している場合には、当該欠損しているモーダルに対応する蓄積信号の特徴データの部分を無視する。
【００８９】
例えば、前記変換テーブルを２つのモーダルを組み合わせて作成した場合について、１つの処理特徴データを量子化データに変換する場合について説明する。変換テーブルの対象となるモーダルの組み合わせが２つのモーダルである場合において、一方のモーダルＭ１の特徴データの次元をＤ１、他方のモーダルＭ２の特徴データの次元をＤ２とすると、変換テーブルの代表ベクトルＶｋの次元は、Ｄ１＋Ｄ２となる（モーダルＭ１の後にモーダルＭ２が続くことが予め定義されている）。蓄積信号に含まれるモーダルが、変換テーブルの対象となるモーダルの各々と一致する場合には、当該蓄積特徴データ内のｔ番目のベクトルＷｔの次元は、Ｄ１＋Ｄ２となり、代表ベクトルＶｋの次元と一致するので、ＷｔとＶｋとの距離をそのまま計算し、その値が最も小さくなるようなｋを求めることで、量子化データを取得することができる。モーダルに不足がある場合、例えば、一つ目のモーダルＭ１を欠損している場合は、前記蓄積特徴データ内のある時刻ｔのベクトルＷｔ（２）の次元は、Ｄ２次元となり、代表ベクトルＶｋと比較すると、最初のＤ１次元が欠損していることになる。第２の実施形態においては、欠損している部分については、無視することによって対処する。つまり、Ｗｔ（２）と、ＶｋのＤ１＋１次元目からＤ１＋Ｄ２次元目までの距離を計算し、その値が最も小さくなるようなｋを求めることで、量子化データを取得する。なお、上記の例は１つ目のモーダルが欠損したときについて説明したが、２つ目のモーダルが欠損した場合についても同様に処理を行うことにより対応できる。
【００９０】
目的特徴量子化部２４２は、目的信号の各々について、目的特徴抽出部４０において抽出された当該目的信号の特徴データと、変換テーブル記憶部２６に記憶されている変換テーブルとに基づいて、当該目的信号に含まれる最小処理単位毎の特徴データを量子化データへ変換し、変換された量子化データの各々に基づいて、目的量子化データを生成し、探索部４４に出力する。なお、目的信号の特徴データを目的量子化データへ変換する方法は、上述した蓄積特徴量子化部２３２における蓄積信号の特徴データを蓄積量子化データへ変換する方法と同様の処理であるため、詳細な説明は省略する。
【００９１】
なお、第２の実施形態に係るマルチモーダル信号探索装置の他の構成については、第１の実施形態に係るマルチモーダル信号探索装置の構成と同様であるため、説明を省略する。
【００９２】
＜本発明の第２の実施形態に係るマルチモーダル信号探索装置の作用＞
次に、本発明の第２の実施形態に係るマルチモーダル信号探索装置２００の作用について説明する。マルチモーダル信号探索装置２００は、学習信号取得部１０によって学習信号の各々が取得されると、マルチモーダル信号探索装置によって、図２に示す学習信号処理ルーチンが実行される。また、マルチモーダル信号探索装置２００は、蓄積信号取得部１２によって蓄積信号を受け付けると、マルチモーダル信号探索装置２００によって、図６に示す蓄積信号処理ルーチンが実行される。また、マルチモーダル信号探索装置２００は、目的信号取得部１４によって目的信号を受け付けると、マルチモーダル信号探索装置２００によって、図７に示す探索処理ルーチンが実行される。なお、第２の実施形態に係る学習信号処理ルーチンについては、第１の実施形態に係る学習信号処理ルーチンと同様である為、説明を省略する。
【００９３】
始めに、図６に示す蓄積信号処理ルーチンについて説明する。
【００９４】
図６に示す蓄積信号処理ルーチンのステップＳ２００で、ステップＳ１２４において取得した処理対象となる最小単位の特徴データと、ステップＳ１２０において取得した変換テーブルとに基づいて、欠損しているモーダルに対応する特徴データの部分を無視して量子化データであるｋの値を決定する。
【００９５】
ステップＳ２０２で、ステップＳ１２４において取得した処理対象となる最小単位の特徴データと、ステップＳ１２０において取得した変換テーブルとに基づいて、処理対象となる最小単位に対応する量子化データであるｋの値を決定する。
【００９６】
なお、第２の実施形態に係る蓄積信号処理ルーチンの他の処理については、第１の実施形態に係る蓄積信号処理ルーチンと同様であるため説明を省略する。
【００９７】
次に、図７に示す探索処理ルーチンについて説明する。
【００９８】
図７に示す探索処理ルーチンのステップＳ２２０で、ステップＳ１５６において取得した処理対象となる最小単位の特徴データと、ステップＳ１５０において取得した変換テーブルとに基づいて、欠損しているモーダルに対応する特徴データの部分を無視して量子化データであるｋの値を決定する。
【００９９】
ステップＳ２２２で、ステップＳ１５６において取得した処理対象となる最小単位の特徴データと、ステップＳ１５０において取得した変換テーブルとに基づいて、処理対象となる最小単位に対応する量子化データであるｋの値を決定する。
【０１００】
なお、第２の実施形態に係る探索処理ルーチンの他の処理については、第１の実施形態に係る探索処理ルーチンと同様であるため説明を省略する。
【０１０１】
以上説明したように、本発明の第２の実施形態に係るマルチモーダル信号探索装置によれば、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、目的信号の各々について、抽出した目的信号の特徴データと、作成された変換テーブルとに基づいて、目的信号の一部が欠損している場合には、当該部分を無視するように目的量子化データを取得し、目的信号の各々について、取得された目的信号の目的量子化データに基づいて、作成されたデータベースから、目的量子化データに対応する蓄積量子化データに対応付けられている属性を探索することにより一部のモーダルが欠損していてもマルチモーダルな信号を探索することができる。
【０１０２】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０１０３】
次に、第３の実施形態に係るマルチモーダル信号探索装置について説明する。
【０１０４】
第３の実施形態においては、蓄積信号、又は目的信号の一部に欠損が生じている場合には、当該欠損部分に、対応する学習信号の特徴データの代表値を埋めて、蓄積量子化データ、及び目的量子化データを生成する点が、第１、第２の実施形態と異なる。なお、第１、第２の実施形態に係るマルチモーダル信号探索装置と同様の構成及び作用については、同一の符号を付して説明を省略する。
【０１０５】
＜第３の実施形態に係るマルチモーダル信号探索装置の構成＞
次に、本発明の第３の実施形態に係るマルチモーダル信号探索装置の構成について説明する。図８に示すように、本発明の第３の実施形態に係るマルチモーダル信号探索装置３００は、ＣＰＵと、ＲＡＭと、後述する学習信号処理ルーチン、蓄積信号処理ルーチン、及び探索処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。このマルチモーダル信号探索装置３００は、機能的には図８に示すように学習信号取得部１０と、蓄積信号取得部１２と、目的信号取得部１４と、演算部３２０と、出力部９０とを含んで構成されている。
【０１０６】
演算部３２０は、学習特徴抽出部２２と、学習部２４と、変換テーブル記憶部２６と、蓄積特徴抽出部３０と、蓄積特徴量子化部３３２と、属性付与部３４と、データベース作成部３６と、データベース記憶部３８と、目的特徴抽出部４０と、目的特徴量子化部３４２と、探索部４４とを含んで構成されている。
【０１０７】
蓄積特徴量子化部３３２は、蓄積信号の各々について、蓄積特徴抽出部３０において抽出された当該蓄積信号の特徴データと、変換テーブル記憶部２６に記憶されている変換テーブルとに基づいて、当該蓄積信号に含まれる最小処理単位毎の特徴データを量子化データへ変換し、変換された量子化データの各々に基づいて、蓄積量子化データを生成し、属性付与部３４に出力する。対象となる蓄積信号において、変換テーブルの対象であるモーダルの組み合わせのうち、少なくとも１つ以上のモーダルを欠損している場合には、当該欠損しているモーダルに対応する学習信号の特徴データの代表値を埋める。代表値とは、基本統計量の一つで分布全体を一つの数で表したものであり、例えば、平均値、中央地、最頻値、最小値、最大値などである。
【０１０８】
例えば、前記変換テーブルを２つのモーダルを組み合わせて作成した場合について、１つの処理特徴データを量子化データに変換する場合について説明する。変換テーブルの対象となるモーダルの組み合わせが２つのモーダルである場合において、一方のモーダルＭ１の特徴データの次元をＤ１、他方のモーダルＭ２の特徴データの次元をＤ２とすると、変換テーブルの代表ベクトルＶｋの次元は、Ｄ１＋Ｄ２となる（モーダルＭ１の後にモーダルＭ２が続くことが予め定義されている）。蓄積信号に含まれるモーダルが、変換テーブルの対象となるモーダルの各々と一致する場合には、当該蓄積特徴データ内のある時刻ｔのベクトルＷｔの次元は、Ｄ１＋Ｄ２となり、代表ベクトルＶｋの次元と一致するので、ＷｔとＶｋとの距離をそのまま計算し、その値が最も小さくなるようなｋを求めることで、量子化データを取得することができる。モーダルに不足がある場合、例えば、一つ目のモーダルＭ１を欠損している場合は、前記蓄積特徴データ内のｔ番目のベクトルＷｔ（２）の次元は、Ｄ２次元となり、代表ベクトルＶｋと比較すると、最初のＤ１次元が欠損していることになる。第３の実施形態においては、欠損している部分については、対応する学習信号データの特徴データの代表値を埋めることによって対処する。この代表値は、学習信号の特徴データの次元ごと求められ、各次元で求めた代表値をつなげることにより、Ｄ１次元のベクトルを得る。このＤ１次元のベクトルとＷｔ（２）とをつなげたベクトルと、代表ベクトルＶｋとの距離を計算し、その値が最も小さくなるようなｋを求めることで、量子化データを取得する。なお、上記の例は１つ目のモーダルが欠損したときについて説明したが、２つ目のモーダルが欠損した場合についても同様に処理を行うことにより対応できる。
【０１０９】
目的特徴量子化部３４２は、目的信号の各々について、目的特徴抽出部４０において抽出された当該目的信号の特徴データと、変換テーブル記憶部２６に記憶されている変換テーブルとに基づいて、当該目的信号に含まれる最小処理単位毎の特徴データを量子化データへ変換し、変換された量子化データの各々に基づいて、目的量子化データを生成し、探索部４４に出力する。なお、目的信号の特徴データを目的量子化データへ変換する方法は、上述した蓄積特徴量子化部３３２における蓄積信号の特徴データを蓄積量子化データへ変換する方法と同様の処理であるため、詳細な説明は省略する。
【０１１０】
なお、第３の実施形態に係るマルチモーダル信号探索装置の他の構成については、第１の実施形態に係るマルチモーダル信号探索装置の構成と同様であるため、説明を省略する。
【０１１１】
＜本発明の第３の実施形態に係るマルチモーダル信号探索装置の作用＞
次に、本発明の第３の実施形態に係るマルチモーダル信号探索装置３００の作用について説明する。マルチモーダル信号探索装置３００は、学習信号取得部１０によって学習信号の各々が取得されると、マルチモーダル信号探索装置によって、図２に示す学習信号処理ルーチンが実行される。また、マルチモーダル信号探索装置３００は、蓄積信号取得部１２によって蓄積信号を受け付けると、マルチモーダル信号探索装置３００によって、図９に示す蓄積信号処理ルーチンが実行される。また、マルチモーダル信号探索装置３００は、目的信号取得部１４によって目的信号を受け付けると、マルチモーダル信号探索装置３００によって、図１０に示す探索処理ルーチンが実行される。なお、第３の実施形態に係る学習信号処理ルーチンについては、第１の実施形態に係る学習信号処理ルーチンと同様である為、説明を省略する。
【０１１２】
始めに、図９に示す蓄積信号処理ルーチンについて説明する。
【０１１３】
図９に示す蓄積信号処理ルーチンのステップＳ３００で、ステップＳ１２４において取得した、処理対象となる最小単位の特徴データの欠損部分に対応している部分の要素に、対応する学習信号の特徴データの代表値を埋める。
【０１１４】
なお、第３の実施形態に係る蓄積信号処理ルーチンの他の処理については、第１の実施形態に係る蓄積信号処理ルーチンと同様であるため説明を省略する。
【０１１５】
次に、図１０に示す探索処理ルーチンについて説明する。
【０１１６】
図１０に示す探索処理ルーチンのステップＳ３２０で、ステップＳ１５６において取得した、処理対象となる最小単位の特徴データの欠損部分に対応している部分の要素に、対応する学習信号の特徴データの代表値を埋める。
【０１１７】
なお、第３の実施形態に係る探索処理ルーチンの他の処理については、第１の実施形態に係る探索処理ルーチンと同様であるため説明を省略する。
【０１１８】
以上説明したように、本発明の第３の実施形態に係るマルチモーダル信号探索装置によれば、入力されたシングルモーダル又はマルチモーダルである目的信号の各々について、特徴データを抽出し、目的信号の各々について、抽出した目的信号の特徴データと、作成された変換テーブルとに基づいて、目的信号の一部が欠損している場合には、当該部分に対応する学習信号の特徴データの代表値を埋めるように目的量子化データを取得し、目的信号の各々について、取得された目的信号の目的量子化データに基づいて、作成されたデータベースから、目的量子化データに対応する蓄積量子化データに対応付けられている属性を探索することにより一部のモーダルが欠損していてもマルチモーダルな信号を探索することができる。
【０１１９】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０１２０】
例えば、第１、第２、及び第３の実施形態においては、学習処理、蓄積処理、及び探索処理が１つの装置において行われる場合について説明したが、これに限定されるものではない。例えば、学習処理、及び蓄積処理を学習装置において行い、探索処理を学習装置とは別の探索装置として構成してもよい。
【０１２１】
また、第１、第２、及び第３の実施形態においては、蓄積信号、又は目的信号の一部が欠損している場合、実施形態毎に０を埋める処理、無視する処理、又は、学習信号の特徴データの代表値を埋める処理の何れかを実行するよう説明したが、これに限定されるものではない。例えば、蓄積信号、又は目的信号の一部が欠損している場合、０を埋める処理、無視する処理、及び学習信号の特徴データの代表値を埋める処理のいずれか適当な処理を処理毎に任意に選択してもよい。
【０１２２】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能であるし、ネットワークを介して提供することも可能である。
【０１２３】
＜実験例＞
実際に、上記の第１、第２、及び第３の実施形態に係るマルチモーダル信号探索装置における処理を実データに対して適用した例について以下で説明する。まず、実験では、ヒップホップダンスを対象としてデータ収集を行った。データ収集は、２タイプ行い、一つ目は、図１１にようにウェアラブルなモーダルを用いたデータ収集、もう一つは、図１２のように外部に設置されたモーダルを用いたデータ収集である。なお、図１１の例においては、取得されるデータ等と部位等との組み合わせを表している。図１１、及び図１２のように本実験では、様々なモーダルでデータを収集しており、全ての組み合わせにおいて、発明技術を適用することができるが、検証では、画像信号データ、音声信号データ、加速度センサデータを対象にした。画像信号データは、演者の正面に設置した固定カメラを用いて収集したものを用い、音声信号データは、スピーカで流したダンスの曲をカメラに付属しているマイクによって収集したものを用い、加速度センサデータは、演者の頭頂部、胴部、両手首部、両足首部に装着したウェアラブルデバイスを用いて収集したものを使用した。
【０１２４】
モーダルの種類としては、画像信号データが１種類、音声信号データが１種類、加速度センサデータが６種類の計８種類あり、これらの信号データの中から、１つ、または、２つを組み合わせたものをシングルモーダルデータ、または、マルチモーダルデータとみなし、蓄積信号、学習信号、目的信号の入力として用いた。ダンスは、全部で４つのパートで構成されており、どのパートに所属しているかという情報を属性データとして用いた。つまり、本実験では、シングルモーダルまたはマルチモーダルな信号を元に得た蓄積量子化データと、パートに関する属性データがセットとして、データベースに登録されており、目的信号が与えられた時には、そのデータベースを元にして、目的信号がどの属性を持つか、すなわち、どのパートに属するかということが出力として得られる。なお、実験に用いたデータの分割方法について述べると、４つのパートのうち、１つのパートのデータを学習信号として用い、変換テーブルの作成を行うために用いた。そして、残りの３つのパートは、蓄積信号、目的信号として用い、これらについて一致度の評価を行った。つまり、実験の評価対象は、３つのパートのうち、適切なパートを当てられるかどうかであり、ランダムに予測した場合、１/３の確率で当たる問題である。また、データ収集の際に、演者は２回同一のダンスを踊ったが、１回目の演技を蓄積信号、２回目の演技を目的信号として用いた。
【０１２５】
実験では、目的信号、蓄積信号、及び学習信号に用いるモーダルの組み合わせを変えて、比較検証を行った。本実験では、マルチモーダルデータとしては、２つのモーダルを組み合わせたものを想定している。以下では、表記上の都合として、一つ目のモーダルをモーダルＭ１、二つ目のモーダルをモーダルＭ２とする。なお、今回は、８種類のモーダルを用いている。２つのモーダルデータの組み合わせ数については、どちらのモーダルの取得時間を基準にして、結合するかということも考慮すると、８Ｐ２＝５６通りになる。
【０１２６】
比較を行った９パターンは以下の通りである。
【０１２７】
（１）目的信号、蓄積信号、学習信号いずれもモーダルＭ１のデータのみを用いるパターン。
（２）目的信号、蓄積信号、学習信号いずれもモーダルＭ２のデータのみを用いるパターン。
（３）目的信号、蓄積信号、学習信号いずれもモーダルＭ１とモーダルＭ２を組み合わせたデータを用いるパターン。
（４）学習信号は、モーダルＭ１とモーダルＭ２を組み合わせたデータを用い、目的信号、蓄積信号はモーダルＭ１のみを用いるパターン。なお、目的特徴量子化部分および蓄積特徴量子化部で量子化をする際に、モーダルの不足が生じるが、その不足分については、値を無視する。
（５）学習信号は、モーダルＭ１とモーダルＭ２を組み合わせたデータを用い、目的信号、蓄積信号はモーダルＭ２のみを用いるパターン。なお、目的特徴量子化部分および蓄積特徴量子化部で量子化をする際に、モーダルの不足が生じるが、その不足分については、値を無視する。
（６）学習信号は、モーダルＭ１とモーダルＭ２を組み合わせたデータを用い、目的信号、蓄積信号はモーダルＭ１のみを用いるパターン。なお、目的特徴量子化部分および蓄積特徴量子化部で量子化をする際に、モーダルの不足が生じるが、その不足分については、ゼロを埋める。本実験では、特徴データの抽出の後処理として、中心化を行っているため、ゼロを埋めることは、特徴データの代表値の一つである平均値を埋めることに対応する。
（７）学習信号は、モーダルＭ１とモーダルＭ２を組み合わせたデータを用い、目的信号、蓄積信号はモーダルＭ２のみを用いるパターン。なお、目的特徴量子化部分および蓄積特徴量子化部で量子化をする際に、モーダルの不足が生じるが、その不足分については、ゼロを埋める。本実験では、特徴データの抽出の後処理として、中心化を行っているため、ゼロを埋めることは、特徴データの代表値の一つである平均値を埋めることに対応する。
（８）学習信号は、モーダルＭ１とモーダルＭ２を組み合わせたデータを用い、目的信号はモーダルＭ１のみ、蓄積信号はモーダルＭ２のみを用いるパターン。この場合、目的特徴量子化部分および蓄積特徴量子化部で量子化をする際に、モーダルの不足が生じるが、その不足分については、値を無視する。
（９）学習信号は、モーダルＭ１とモーダルＭ２を組み合わせたデータを用い、目的信号はモーダルＭ２のみ、蓄積信号はモーダルＭ１のみを用いるパターン。この場合、目的特徴量子化部分および蓄積特徴量子化部で量子化をする際に、モーダルの不足が生じるが、その不足分については、値を無視する。
【０１２８】
上記９パターンのうち、（８）と（９）に関しては、目的信号と、蓄積信号のモーダルが完全に異なり、クロスモーダルに検索するパターンである。結果を図１３にまとめる。これは、モーダルの５６通りの組み合わせについて、精度の平均をとった値である。なお、平均をとった場合、パターン（１）（２）、（４）（５）、（６）（７）、（８）（９）は、同じ組み合わせについて評価をしていることになるが、符号テーブルを作成する際に用いるＫ‐ｍｅａｎｓについては、初期値依存性があり、ここにランダム性があるため、必ずしも一致していない。
【０１２９】
今回の実験で対象としている問題は、３つのパートのうち該当するパートを当てるという問題であり、ランダムに答えを選択した場合、精度は、１／３＝０.３３になる。これと、図１３の（１）から（９）の結果を比較すると、いずれも、０.３３を上回る値となっており、発明技術の有効性が分かる。
【０１３０】
また、頭頂部のウェアラブルデバイスをモーダルＭ１として用い、胴部のウェアラブルデバイスをモーダルＭ２として用いた場合の結果を、図１４に示す。図１４では、上段が、左からパターン（１）から（３）の結果を表し、中段が、左からパターン（４）から（６）の結果を表し、下段が、左からパターン（７）から（９）の結果を表す。各々の混同行列は、縦軸が、目的信号の属するパートを表し、横軸が蓄積信号の属するパートを表す。この結果例では、いずれも精度は、１００％となっており、発明技術の有効性が分かる。なお、図１４の数字の値は距離を表すため、値が小さい程、一致度が高いことを表す。
【符号の説明】
【０１３１】
１０   学習信号取得部
１２   蓄積信号取得部
１４   目的信号取得部
２０   演算部
２２   学習特徴抽出部
２４   学習部
２６   変換テーブル記憶部
３０   蓄積特徴抽出部
３２   蓄積特徴量子化部
３４   属性付与部
３６   データベース作成部
３８   データベース記憶部
４０   目的特徴抽出部
４２   目的特徴量子化部
４４   探索部
９０   出力部
１００ マルチモーダル信号探索装置
２００ マルチモーダル信号探索装置
２２０ 演算部
２３２ 蓄積特徴量子化部
２４２ 目的特徴量子化部
３００ マルチモーダル信号探索装置
３２０ 演算部
３３２ 蓄積特徴量子化部
３４２ 目的特徴量子化部
【図１】
0006397385.tif 000002
【図２】
0006397385.tif 000003
【図３】
0006397385.tif 000004
【図４】
0006397385.tif 000005
【図５】
0006397385.tif 000006
【図６】
0006397385.tif 000007
【図７】
0006397385.tif 000008
【図８】
0006397385.tif 000009
【図９】
0006397385.tif 000010
【図１０】
0006397385.tif 000011
【図１１】
0006397385.tif 000012
【図１２】
0006397385.tif 000013
【図１３】
0006397385.tif 000014
【図１４】
0006397385.tif 000015