(58)【調査した分野】(Int.Cl.,DB名)
第1対象データに関して所定の第1処理手順に従い演算することによって第1検索条件が成り立っているか否かを推定可能な第1モデルに従い、あるデータに対して前記第1モデルを適用することによって、前記所定の第1処理手順にて算出される第1演算結果を算出する第1演算手段と、
第2対象データに関して所定の第2処理手順に従い演算することによって、前記第1検索条件とは異なる第2検索条件が成り立っているか否かを推定可能な第2モデルに従い、前記あるデータに対して前記第2モデルを適用することによって、前記所定の第2処理手順にて算出される第2演算結果を算出する第2演算手段と、
第3対象データに前記第1モデルが適用された場合に前記第1モデルにおいて算出される演算結果と、前記第3対象データに前記第2モデルが適用された場合に前記第2モデルにおいて算出される演算結果とに対して、所定の第3処理手順に従い演算することによって、前記第3対象データに関して、前記第1演算結果と、前記第2演算結果とに対して、前記第1検索条件、及び、前記第2検索条件が、ともに、成り立っているか否かを推定可能な第3モデルを適用することによって、前記あるデータに関して、前記第1検索条件、及び、前記第2検索条件が成り立つか否かを推定する第3演算手段と
を備え、
前記所定の第1処理手順、及び、前記所定の第2処理手順は、Convolutional Neural Networkであり、
前記所定の第3処理手順は、Supervised Semantic Indexingである
データ推定装置。
前記第1演算結果及び前記第2演算結果と、前記第1検索条件及び前記第2検索条件が成り立っているか否かを表す第3ラベルとの間の関係性を推定可能な前記第3モデルを作成する適合度モデル算出手段
をさらに備える請求項1に記載のデータ推定装置。
第1対象データに関して所定の第1処理手順に従い演算することによって第1検索条件が成り立っているか否かを推定可能な第1モデルに従い、あるデータに対して前記第1モデルを適用することによって、前記所定の第1処理手順にて算出される第1演算結果を算出し、
第2対象データに関して所定の第2処理手順に従い演算することによって、前記第1検索条件とは異なる第2検索条件が成り立っているか否かを推定可能な第2モデルに従い、前記あるデータに対して前記第2モデルを適用することによって、前記所定の第2処理手順にて算出される第2演算結果を算出し、
第3対象データに前記第1モデルが適用された場合に前記第1モデルにおいて算出される演算結果と、前記第3対象データに前記第2モデルが適用された場合に前記第2モデルにおいて算出される演算結果とに対して、所定の第3処理手順に従い演算することによって、前記第3対象データに関して、前記第1演算結果と、前記第2演算結果とに対して、前記第1検索条件、及び、前記第2検索条件が、ともに成り立っているか否かを推定可能な第3モデルを適用することによって、前記あるデータに関して、前記第1検索条件、及び、前記第2検索条件が成り立つか否かを推定し、
前記所定の第1処理手順、及び、前記所定の第2処理手順は、Convolutional Neural Networkであり、
前記所定の第3処理手順は、Supervised Semantic Indexingである
データ推定方法。
第1対象データに関して所定の第1処理手順に従い演算することによって第1検索条件が成り立っているか否かを推定可能な第1モデルに従い、あるデータに対して前記第1モデルを適用することによって、前記所定の第1処理手順にて算出される第1演算結果を算出する第1演算機能と、
第2対象データに関して所定の第2処理手順に従い演算することによって、前記第1検索条件とは異なる第2検索条件が成り立っているか否かを推定可能な第2モデルに従い、前記あるデータに対して前記第2モデルを適用することによって、前記所定の第2処理手順にて算出される第2演算結果を算出する第2演算機能と、
第3対象データに前記第1モデルが適用された場合に前記第1モデルにおいて算出される演算結果と、前記第3対象データに前記第2モデルが適用された場合に前記第2モデルにおいて算出される演算結果とに対して、所定の第3処理手順に従い演算することによって、前記第3対象データに関して、前記第1演算結果と、前記第2演算結果とに対して、前記第1検索条件、及び、前記第2検索条件が、ともに成り立っているか否かを推定可能な第3モデルを適用することによって、前記あるデータに関して、前記第1検索条件、及び、前記第2検索条件が成り立つか否かを推定する第3演算機能と
をコンピュータに実現させ、
前記所定の第1処理手順、及び、前記所定の第2処理手順は、Convolutional Neural Networkであり、
前記所定の第3処理手順は、Supervised Semantic Indexingである
データ推定プログラム。
前記第1演算結果及び前記第2演算結果と、前記第1検索条件及び前記第2検索条件が成り立っているか否かを表す第3ラベルとの間の関係性を推定可能な前記第3モデルを作成する適合度モデル算出機能
をさらに備える請求項9に記載のデータ推定プログラム。
【発明を実施するための形態】
【0016】
次に、本発明を実施する実施形態について図面を参照しながら詳細に説明する。
【0017】
<第1の実施形態>
図1を参照しながら、本発明の第1の実施形態に係るデータ推定装置600が有する構成について詳細に説明する。
図1は、本発明の第1の実施形態に係るデータ推定装置600が有する構成を示すブロック図である。
【0018】
本発明の第1の実施形態に係るデータ推定装置600は、大別して、画像情報記憶部100と、ラベル入力部200と、特徴量作成部310と、適合度作成部320と、フレーム情報作成部410と、適合度特徴量作成部420と、ラベル選択部500とを有する。
【0019】
画像情報記憶部100は、学習画像情報記憶部101と、表示画像情報記憶部102と、未処理画像情報記憶部103とを有する。ラベル入力部200は、制御部201と、ラベル情報記憶部202と、画像ラベル記憶部203とを有する。特徴量作成部310は、特徴量モデル作成部311と、モデル情報記憶部312と、特徴量算出部313と、特徴情報記憶部314とを有する。適合度作成部320は、適合度学習情報作成部321と、適合度学習情報記憶部322と、適合度モデル作成部323と、適合度モデル情報記憶部324と、適合度算出部325と、適合度情報記憶部326とを有する。フレーム情報作成部410は、フレーム作成部411と、フレーム情報記憶部412とを有する。適合度特徴量作成部420は、特徴量作成部421と、適合度判定情報記憶部422とを有する。ラベル選択部500は、ラベル判定部501と、予測ラベル情報記憶部502とを有する。
【0020】
次に、
図7乃至
図9を参照しながら、第1の実施形態に係るデータ推定装置600に入力される情報の例について説明する。
図7は、学習画像情報記憶部101に格納されている学習画像情報を概念的に表す図である。
図8は、表示画像情報記憶部102に格納されている表示画像情報を概念的に表す図である。
図9は、未処理画像情報記憶部103に格納されている未処理画像情報を概念的に表す図である。
【0021】
図7に例示された学習画像情報を参照すると、学習画像情報は、動画データを識別可能な動画データ識別子(以降、識別子を「ID」と表す)と、動画データに関して推定(予測、判定)する内容を表す属性とが関連付けされている。学習画像情報は、動画データIDに、さらに、該動画データIDが表す動画データが関連付けされていてもよい。
【0022】
たとえば、
図7に例示された学習画像情報においては、動画データID「V1002」と、属性「帽子をかぶった人がいるか否かが判定される」とが関連付けされている。これは、動画データID「V1002」が表す動画データに対して、
図10を参照しながら後述するように、検索条件「帽子をかぶった人がいるか」が成り立つか否かを表すラベルが入力される場合に制御部201が表示する動画データであることを表す。
【0023】
学習画像情報記憶部101には、検索対象に対して成り立つ検索条件(以降、「対象検索条件」と表す)に関してフレーム(画像データ)が検索される場合に、該対象検索条件が緩和された検索条件に関するラベルを推定可能なモデルを作成する基となる動画データが格納されている。学習画像情報に、「帽子をかぶった人がいるか否か」を表すラベルが付与されることによって、たとえば、
図14、または、
図15を参照しながら説明するような算出値を算出する基となるデータが算出される。
【0024】
尚、学習画像情報は、さらに、異なる項目に関連付けされていてもよく、上述した例に限定されない。また、学習画像情報は、
図11に例示されたラベル情報におけるラベルIDを含んでいてもよく、この場合には、ラベル情報記憶部202に格納されているラベルIDに関するラベルが入力される。以降、説明の便宜上、学習画像情報には、動画データが含まれているとする。また、検索条件が成り立っているかが判定される対象は、動画データはではなく、動画データに含まれているフレーム(画像データ)であるとする。
【0025】
図8に例示された表示画像情報を参照すると、表示画像情報は、動画データを識別可能な動画データIDと、対象検索条件が成り立つか否かを表すラベルが付与される予定であるものの、まだ付与されていないことを表す属性とが関連付けされている。さらに、表示画像情報は、動画データIDに、該動画データIDが表す動画データが関連付けされていてもよい。
【0026】
たとえば、
図8に例示された表示画像情報においては、動画データID「V3002」と、属性「対象検索条件が成り立つか否かが判定される」とが関連付けされている。これは、動画データID「V3002」が表す動画データに対して、
図10を参照しながら後述するように、対象検索条件が成り立つか否かを表すラベルが入力される場合に、動画データID「V3002」に関する画像情報が、制御部201が表示する画像データを含んでいることを表す。
【0027】
尚、表示画像情報は、さらに、異なる項目に関連付けされていてもよく、上述した例に限定されない。また、表示画像情報は、
図11に例示されたラベル情報におけるラベルIDを含んでいてもよく、この場合には、ラベル情報記憶部202に格納されているラベルIDに関するラベルが入力される。以降、説明の便宜上、表示画像情報には、動画データが含まれているとする。
【0028】
図9に例示された未処理画像情報を参照すると、未処理画像情報は、画像データを識別可能な動画データIDと、ラベルが付与されていないことを表す属性とが関連付けされている。さらに、表示画像情報は、動画データIDに、該動画データIDが表す動画データが関連付けされていてもよい。
【0029】
たとえば、
図9に例示された未処理画像情報においては、動画データID「V4002」と、属性「ラベル付けされていない画像データ」とが関連付けされている。これは、動画データID「V4002」が表す動画データに対して、
図5を参照しながら後述するように、ラベルが推定(予測)されていない状態を表す。
【0030】
尚、未処理画像情報は、さらに、異なる項目に関連付けされていてもよく、上述した例に限定されない。未処理画像情報は、さらに、異なる項目に関連付けされていてもよく、上述した例に限定されない。また、未処理画像情報は、
図11に示されたラベル情報におけるラベルIDを含んでいてもよく、この場合には、ラベル情報記憶部202に格納されているラベルIDに関するラベルが入力される。以降、説明の便宜上、未処理画像情報には、動画データが含まれているとする。
【0031】
次に、
図6を参照しながら、対象検索条件について説明する。
図6は、対象検索条件が成り立つデータに関する包含関係を概念的に表す図である。
【0032】
たとえば、対象検索条件が「サングラスをかけ、さらに、赤い服を着た人がいるか」であるとする。この場合に、次に示す、検索条件A乃至検索条件Cは、対象検索条件を緩和することによって算出される検索条件である。すなわち、
○検索条件A:人がいるか、
○検索条件B:赤い服を着た人がいるか、
○検索条件C:サングラスをかけた人がいるか。
【0033】
図6を参照すると、対象検索条件が成り立つデータは、検索条件Bが成り立つデータと、検索条件Cが成り立つデータとの積集合である。また、検索条件Aが成り立つデータは、検索条件Bが成り立つデータ、及び、検索条件Cが成り立つデータを含んでいる。したがって、
○検索条件Bが成り立つデータ、検索条件Cが成り立つデータ、及び、対象検索条件が成り立つデータは、検索条件Aが成り立つデータのサブセットである、
○対象検索条件が成り立つデータは、検索条件Bが成り立つデータ、及び、検索条件Cが成り立つデータ、それぞれのサブセットである、
○検索条件Bが成り立つデータと、検索条件Cが成り立つデータとの間に、包含関係は無い。
【0034】
以降、対象検索条件が緩和された検索条件を「第1検索条件」(たとえば、上述した検索条件B)、及び、「第2検索条件」(たとえば、検索条件C)と表す。尚、対象検索条件が緩和された検索条件は、必ずしも2つである必要はなく、さらに、多くの検索条件であってもよい。対象検索条件が「帽子をかぶり、ジャンパーを着た人がいるか」である場合に、第1検索条件は、たとえば、「帽子をかぶった人がいるか」であり、第2検索条件は、たとえば、「ジャンパーを着た人がいるか」である。この場合に、対象検索条件は、第1検索条件と、第2検索条件とに論理積演算が適用された条件である。
【0035】
次に、
図2を参照しながら、第1の実施形態に係るデータ推定装置600における処理の流れの概略について説明する。
図2は、第1の実施形態に係るデータ推定装置600における処理の流れの概略を示すフローチャートである。
【0036】
第1の実施形態に係るデータ推定装置600における処理は、大別して、ステップS101乃至ステップS105に示された処理が実行される。
【0037】
○ステップS101:第1検索条件が成り立つか否かを表すラベル、及び、第2検索条件が成り立つか否かを表すラベルを入力する、
○ステップS102:第1検索条件に関するラベルと、フレームとの関係性を表すモデル(説明の便宜上、「第1モデル」と表す)、及び、第2検索条件に関するラベルと、フレームとの関係性を表すモデル(説明の便宜上、「第2モデル」と表す)を作成する、
○ステップS103:対象検索条件が成り立つか否かを表すラベルを入力する、
○ステップS104:対象検索条件に関するラベルと、第1モデルに従い算出される算出値(
図14を参照しながら後述する)、及び、第2モデルに従い算出される算出値(
図15を参照しながら後述する)の関係性を表すモデル(説明の便宜上、「適合度モデル」と表す)を作成する、
○ステップS105:作成した適合度モデルに基づき、未処理画像情報に含まれている画像データに関してラベルを推定(予測、判定)する。
【0038】
以降、ステップS101乃至ステップS105に示された各処理について、
図3乃至
図5を参照しながら詳細に説明する。
【0039】
まず、
図10を参照しながら、制御部201によって入出力される場合に介するユーザインターフェース2010について説明し、次に、
図11を参照しながら制御部201が入力するラベル情報について説明する。その後、
図3乃至
図5を参照しながら、ステップS101乃至ステップS105における処理について説明する。
図10は、ユーザインターフェース2010が有する構成の一例を概念的に表す図である。
【0040】
ユーザインターフェース2010は、動画データを表示可能な領域2011と、表示している動画データを操作可能な領域2012と、動画データに含まれている画像データに対して割り当てられたラベルを表す領域2013と、表示している動画データを操作可能な領域2014とを含む。さらに、ユーザインターフェース2010は、動画データに含まれている画像データに対して、各ラベルを入力することが可能な領域2015を含んでいる。
【0041】
矩形2016は、動画データに含まれているすべてのフレーム(画像データ)のうち、領域2011に示されているフレームに関する位置を表している。領域2011に表示される動画データは、矩形2016を横方向にスライドされるのに応じて変化することとする。領域2013には、すべてのフレームのうち、領域2011に示されている動画データに含まれている画像データに対して、領域2015を介して入力されたラベルが表示されている。領域2012における横方向と、領域2013における横方向とは対応しており、それぞれ、動画データに含まれているすべてのフレーム(画像データ)のうち、領域2011に示されているフレームの位置を表している。たとえば、
図10に示された例においては、領域2012に対する矩形2016の位置によって、領域2011には帽子をかぶった人が表示され、さらに、領域2013には、当該フレームに関するラベルが「C01」であることが表示されている。
【0042】
領域2014には、左から順に、動画データを戻す操作、動画データを再生する操作、動画データを停止する操作、及び、動画データを早送りする操作を入力することができる領域が配置されている。
【0043】
次に、
図11を参照しながら制御部201が入力するラベル情報について説明する。
図11は、ラベル情報記憶部202に格納されているラベル情報の一例を概念的に表す図である。
【0044】
ラベル情報記憶部202には、たとえば、動画データに含まれている画像データに関して、ある検索条件が成り立つか否かを表すラベルと、該ラベルを識別可能なラベルIDとが関連付けされたラベル情報が格納されている。ラベル情報記憶部202には、たとえば、第1検索条件「帽子をかぶった人がいるか」に関して、第1検索条件が成り立つ場合を表すラベル「帽子をかぶった人がいる」と、該ラベルを表すラベルID「C01」とが関連付けされたラベル情報が格納されている。さらに、ラベル情報記憶部202には、たとえば、第1検索条件「帽子をかぶった人がいるか」に関して、第1検索条件が成立しなかった場合を表すラベル「帽子をかぶった人がいない」と、該ラベルを表すラベルID「C02」とが関連付けされたラベル情報が格納されている。
【0045】
ラベル情報記憶部202には、さらに、第2検索条件「ジャンパーを着た人がいるか」に関しても、ラベル「ジャンパーを着た人がいる」、及び、ラベル「ジャンパーを着た人がいない」が格納されている。
図11に示されたラベル情報において、ラベル「ジャンパーを着た人がいる」は、ラベルID「C03」に関連付けされている。また、ラベル「ジャンパーを着た人がいない」は、ラベルID「C04」に関連付けされている。
【0046】
次に、
図3を参照しながら、
図2に示されたステップS101、及び、ステップS102における処理について説明する。
図3は、
図2に示されたステップS101、及び、ステップS102における処理の詳細な流れを示すフローチャートである。
【0047】
ラベル入力部200において、制御部201は、学習画像情報記憶部101(
図7に例示)に格納されている1つの学習画像情報を読み取り、読み取った学習画像情報に含まれている動画データを、
図10に例示されているようなユーザインターフェース2010を介して、表示装置(不図示)に表示する(ステップS201)。さらに、制御部201は、ラベル情報(
図11に例示)に基づき、読み取った学習画像情報(
図7に例示)に関するラベルを特定し、特定したラベルを、たとえば、ユーザインターフェース2010における領域2015に表示する。
【0048】
制御部201は、たとえば、ユーザインターフェース2010を介して、画像データに関するラベルを入力する(ステップS202)。この場合に、制御部201は、第1検索条件に関するラベルと、第2検索条件に関するラベルとを、それぞれ入力する。
【0049】
制御部201は、該動画データIDと、該動画データIDが表す動画データにおけるフレームを表すフレームIDと、入力されたラベル(すなわち、当該フレームに対して入力されたラベル)とが関連付けされた画像ラベル情報(
図12に例示)を作成する(ステップS203)。
図12は、画像ラベル記憶部203に格納されている画像ラベル情報の一例を概念的に表す図である。制御部201は、作成した画像ラベル情報を画像ラベル記憶部203に格納する。すなわち、制御部201は、対象検索条件が緩和された第1検索条件に関するラベル(たとえば、ラベル「C01」及びラベル「C02」)と、第2検索条件に関するラベル(たとえば、ラベル「C03」及びラベル「C04」)とを含む画像ラベル情報を作成する。
【0050】
特徴量作成部310において、特徴量モデル作成部311は、画像ラベル記憶部203に格納されている画像ラベル情報(
図12に例示)に基づき、第1検索条件に関するラベルと、該ラベルが割り当てられたフレームとの関係性を表すモデルに含まれている重みを算出する(ステップS204)。同様に、特徴量モデル作成部311は、画像ラベル記憶部203に格納されている画像ラベル情報(
図12に例示)に基づき、第2検索条件に関するラベルと、該ラベルが割り当てられたフレーム(画像データ)との関係性を表すモデルに含まれている重みを算出する(ステップS205)。
【0051】
ステップS204にて、特徴量モデル作成部311は、所定の手順に従い、フレームが有する特徴を表す特徴量(たとえば、HOG特徴量)を算出し、算出した特徴量と、第1検索条件に関するラベルとの関係性を表すモデルを構成している重みを、CNN法等の機械学習法によって算出する(ステップS204)。尚、HOG特徴量は、Histograms_of_Oriented_Gradientsの略称を表す。CNNは、Convolutional_Neural_Networkの略称を表す。特徴量モデル作成部311は、同様な手法によって、算出した特徴量と、第2検索条件に関するラベルとの関係性を表すモデルに含まれている重みを算出する(ステップS205)。すなわち、特徴量モデル作成部311は、第1検索条件に関するラベルを推定可能な第1モデルと、第2検索条件に関するラベルを推定可能な第2モデルとを作成する。
【0052】
次に、特徴量モデル作成部311は、作成したモデルを表すモデルIDと、該モデルに従い推定されるラベルとが関連付けされたモデル情報を作成し(ステップS206)、作成したモデル情報(
図13に例示)をモデル情報記憶部312に格納する。
図13は、モデル情報の一例を概念的に表す図である。モデル情報は、さらに、モデルを表す情報、または、モデルに関連付けされていてもよい。
【0053】
図13に例示されたモデル情報を参照すると、モデルID「M101」と、モデル「帽子をかぶった人がいる」と、ラベルID「C01、C02」とが関連付けされている。これは、第1検索条件「帽子をかぶった人がいるか」に関するラベル(ラベルID「C01」が表すラベル、及び、ラベルID「C02」が表すラベル)に関して、モデルID「M101」が表すモデルを特徴量モデル作成部311が作成したことを表す。
図13に例示されたモデル情報を参照すると、モデルID「M102」と、モデル「ジャンパーを着た人がいる」と、ラベルID「C03、C04」とが関連付けされている。これは、第2検索条件「ジャンパーを着た人がいるか」に関するラベル(ラベルID「C03」が表すラベル、及び、ラベルID「C04」が表すラベル)に関して、モデルID「M102」が表すモデルを特徴量モデル作成部311が作成したことを表す。
【0054】
次に、
図16を参照しながら、CNNによって作成されるモデルの一例について説明する。該モデルは、
図3に示されたステップS306、及び、
図4に示されたステップS404における処理にて作成される特徴量を算出する基となる重みを含んでいる。
図16は、CNNが有する構成の一例を概念的に表す図である。CNNは、後述する所定の第1処理手順、及び、所定の第2処理手順の一例である。
【0055】
CNNは、入力層71と、中間層72と、出力層73とを有する。入力層71と、中間層72と、出力層73とは、それぞれ、ある処理を表すノード74を複数含む。入力層71におけるノード74は、たとえば、上述したHOG特徴量等の特徴量を入力する処理を表す。中間層72、及び、出力層73におけるノード76は、入力された値に対して、ある演算を実行する処理を表す。また、エッジ75は、矢印の方向に、重みを掛け算する処理を表す。各エッジに関する重みは、たとえば、畳み込み処理、Pooling処理等の処理が繰り返し実行されることによって、入力層71に入力された特徴量と、ラベルとの関係から求められる。CNNは、さらに多くのノードを含んでいてもよい。すなわち、CNNは、
図16に示された例に限定されない。
【0056】
所定の第1処理手順、及び、所定の第2処理手順は、必ずしも、1つの手法である必要はなく、上述した例に限定されない。
【0057】
次に、
図4を参照しながら、
図2に示されたステップS103、及び、ステップS104における処理について説明する。
図4は、
図2に示されたステップS103、及び、ステップS104における処理の詳細な流れを示すフローチャートである。
【0058】
制御部201は、表示画像情報記憶部102から、対象検索条件に関するラベルを付与する対象である表示画像情報(
図8に例示)を読み取り、読み取った表示画像情報に関する動画データを、たとえば、
図10に例示されたユーザインターフェース2010を介して、表示装置(不図示)に表示する(ステップS301)。制御部201は、たとえば、
図10に例示されたユーザインターフェース2010を介して入力されたラベル(すなわち、対象検索条件が成り立つか否かを表すラベル)を入力する(ステップS302)。
【0059】
フレーム作成部411は、表示画像情報記憶部102に格納されている表示画像情報(
図8に例示)における動画データを読み取り、読み取った動画データに関するフレームを作成する(ステップS303)。フレーム作成部411は、たとえば、動画データIDがV3000番台の動画データに対して、それぞれ、フレーム(画像データ)を作成する。フレーム作成部411は、該動画データIDに関して、フレームを識別可能なフレームIDを算出し、作成したフレームと、算出したフレームIDとが関連付けされたフレーム情報を作成し、作成したフレーム情報をフレーム情報記憶部412に格納する。この場合に、フレーム作成部411は、作成したフレームに対するラベルを、入力されたラベルに基づき選択する。
【0060】
制御部201は、該動画データIDと、該動画データIDが表す動画データにおけるフレームを表すフレームIDと、入力されたラベル(すなわち、当該フレームに対して入力されたラベル)とが関連付けされた画像ラベル情報(
図17に例示)を作成し(ステップS304)、作成した画像ラベル情報を画像ラベル記憶部203に格納する。
図17は、画像ラベル記憶部203に格納されている画像ラベル情報の一例を概念的に表す図である。
【0061】
特徴量算出部313は、対象検索条件に関連している第1検索条件に関するラベルを推定可能なモデル、及び、該対象検索条件に関連している第2検索条件に関するラベルを推定可能なモデルを、モデル情報記憶部312に格納されているモデル情報(
図13に例示)に基づき特定する(ステップS305)。たとえば、第1検索条件に関するラベルを表すラベルIDが、ラベルID「C01」、及び、ラベルID「C02」であるので、特徴量算出部313は、モデル情報記憶部312に格納されているモデル情報(
図13に例示)に基づき、該ラベルIDに関連付けされたモデルID「M101」を特定する。同様に、第2検索条件に関するラベルを表すラベルIDが、ラベルID「C03」、及び、ラベルID「C04」であるので、特徴量算出部313は、モデル情報記憶部312に格納されているモデル情報(
図13に例示)に基づき、該ラベルIDに関連付けされたモデルID「M102」を特定する。
【0062】
次に、特徴量算出部313は、特定したモデルをフレーム情報記憶部412に格納されているフレームに対して適用する。この処理によって、たとえば、
図16に例示された中間層72における各ノード74にて、該ノードに対して入力されたデータが重み付けされた値に関する総和が算出される。
【0063】
たとえば、特徴量算出部313は、
図13に例示されたモデル情報に基づき、第1検索条件に関するラベルを推定可能なモデルを表すモデルID「M101」を特定する。さらに、特徴量算出部313は、
図17に例示された画像ラベル情報に基づき、ラベルが入力された動画データID「V3001」が表す動画データに含まれているフレームを表すフレームID「1」を特定する。次に、特徴量算出部313は、フレームID「1」が表すフレームに対して、モデルID「M101」が表すモデルを適用する。これによって、
図16に例示された中間層72における各ノード74にて、該ノードに入力されたデータに対する処理が実行され、該処理の結果、算出値が算出される。たとえば、適合度学習情報作成部321は、動画データID「V3001」が表す動画データに含まれているフレームID「1」に、モデルID「M101」が表すモデルを適用する。この処理によって、適合度学習情報作成部321は、たとえば、
図16に例示された中間層72におけるノード74にて算出された値を含む算出値「2、10、182、128、・・・」(
図14に例示)を算出する。同様に、適合度学習情報作成部321は、動画データID「V3001」が表す動画データに含まれているフレームID「1」に、モデルID「M102」が表すモデルを適用する。この処理によって、適合度学習情報作成部321は、たとえば、
図16に例示された中間層72におけるノード74にて算出された値を含む算出値「10、10、175、131、・・・」(
図15に例示)を算出する。
図14、及び、
図15は、特徴情報記憶部314に格納されている特徴情報を概念的に表す図である。適合度学習情報作成部321は、算出した算出値と、該算出値に関するフレームIDと、動画データIDと、モデルIDとが関連付けされた特徴情報を作成し、作成した特徴情報を、特徴情報記憶部314(
図14、及び、
図15に例示)に格納する。
【0064】
適合度学習情報作成部321は、特徴情報記憶部314に格納されている特徴情報のうち、ある動画データIDと、あるフレームIDとに関連付けされた算出値に関して、所定の手順に従い、特徴ベクトルを作成する(ステップS306)。次に、適合度学習情報作成部321は、画像ラベル記憶部203に格納されている画像ラベル情報(
図17に例示)にて、該動画データID、及び、該フレームIDに関連付けされたラベルIDを特定する(ステップS307)。適合度学習情報作成部321は、該動画データIDと、該フレームIDと、作成した特徴ベクトルと、特定したラベルIDと、当該ラベルIDを表すラベルが正しいことを表す正解情報(たとえば、「1」)とが関連付けされた適合度学習情報(
図18に例示)を作成し(ステップS308)、作成した適合度学習情報を適合度学習情報記憶部322に格納する。同様に、適合度学習情報作成部321は、対象検索条件に関するラベルであって、特定した当該ラベルと異なるラベルを表すラベルIDと、該動画データIDと、該フレームIDと、作成した特徴ベクトルと、当該ラベルIDを表すラベルが正しくないことを表す正解情報(たとえば、「0」)とが関連付けされた適合度学習情報(
図18に例示)を作成する(ステップS308)。適合度学習情報作成部321は、作成した適合度学習情報を適合度学習情報記憶部322に格納する。
図18は、適合度学習情報記憶部322に格納されている適合度学習情報の一例を概念的に表す図である。
【0065】
適合度学習情報作成部321は、たとえば、動画データID「V3001」に関する画像情報においてフレームID「1」に関して、特徴情報(
図14に例示)に基づき、モデルID「M101」に関連付けされた算出値「2、10、183、128、・・・」を特定する。モデルID「101」が表すモデルは、たとえば、第1検索条件「帽子をかぶった人がいるか」を推定可能なモデルである。同様に、適合度学習情報作成部321は、たとえば、動画データID「V3001」に関する画像情報において、フレームID「1」が表すフレームに関して、特徴情報(
図15に例示)に基づき、モデルID「M102」に関連付けされた算出値「10、10、175、131、・・・」を算出する。
【0066】
また、モデルID「102」が表すモデルは、たとえば、第2検索条件「ジャンパーを着た人がいるか」を推定可能なモデルである。適合度学習情報作成部321は、読み取った2つの算出値を含む特徴ベクトル「2、10、183、128、・・・、10、10、175、131、・・・」を作成する。
図18に例示されているように、適合度学習情報作成部321は、作成した特徴ベクトルと、動画データID「V3001」と、フレームID「1」と、ラベルID「C05」とが関連付けされた適合度学習情報を作成する(ステップS308)。
【0067】
所定の手順に関して、算出値に含まれている値を並べる順序は、所定の順序であればよく、たとえば、モデルID「M101」が表すモデルに関して算出された算出値の次に、モデルID「M102」が表すモデルに関して算出された算出値が並べられた順序であってもよい。または、該順序は、たとえば、モデルID「M102」が表すモデルに関して算出された算出値の次に、モデルID「M101」が表すモデルに関して算出された算出値が並べられていた順序であってもよい。また、所定の手順は、必ずしも、
図16に例示された中間層72に含まれているすべてのノード74にて処理された値をすべて含んでいる必要はなく、一部の値であってもよい。すなわち、所定の手順は、上述した例に限定されない。
【0068】
適合度学習情報作成部321は、画像ラベル記憶部203(
図17に例示)から、動画データID「V3001」、及び、フレームID「1」に関連付けされたラベルID「C05」を特定する。この場合に、適合度学習情報作成部321は、ラベルID「C05」に関して、正解であることを表す正解情報「1」を作成する。これに対して、適合度学習情報作成部321は、ラベルID「C05」が表すラベルと対を成すラベルID「C06」に関して、正解でないことを表す正解情報「0」を作成する。
【0069】
適合度学習情報作成部321は、上述した処理を、各画像データに関して実行する。
【0070】
次に、適合度モデル作成部323は、適合度学習情報記憶部322に格納されている情報に基づき、たとえば、SSI法に従い、特徴ベクトルと対象検索条件に関するラベルとの間の関係性を表すモデルを作成する(ステップS309)。尚、SSIは、Supervised_Semantic_Indexingの略称を表す。SSIは、後述する所定の第3処理手順の一例である。所定の第3処理手順は、必ずしも、SSIである必要はなく、所定の第1処理手順、または、所定の第2処理手順と同様な処理手順であってもよい。
【0071】
次に、適合度学習情報作成部321は、作成したモデルを表すモデルIDと、ラベルIDとが関連付けされた適合度モデル情報(
図19に例示)を作成し(ステップS310)、作成した適合度モデル情報を適合度モデル情報記憶部324に格納する。適合度モデル情報は、さらに、該ラベル、または、作成したモデルに関連付けされていてもよい。
図19は、適合度モデル情報記憶部324に格納されている適合度モデル情報の一例を概念的に表す図である。
【0072】
たとえば、適合度学習情報作成部321は、対象検索条件に関する第1検索条件「帽子をかぶった人がいるか」と、対象検索条件に関する第2検索条件「ジャンパーを着た人がいるか」とが、ともに成立するラベルを推定可能なモデルを作成する。
【0073】
次に、
図5を参照しながら、
図2に示されたステップS104、及び、ステップS105における処理について詳細に説明する。
図5は、
図2に示されたステップS104、及び、ステップS105における処理の詳細な流れを示すフローチャートである。
【0074】
フレーム作成部411は、未処理画像情報記憶部103に格納されている未処理画像情報(
図9に例示)を読み取り、読み取った未処理画像情報に含まれている動画データに関してフレームを作成し(ステップS401)、作成したフレームをフレーム情報記憶部412に格納する。たとえば、フレーム作成部411は、未処理画像情報記憶部103(
図9に例示)に格納されている、すべての未処理画像情報に関してフレームを作成し、作成したフレームをフレーム情報記憶部412に格納する。
【0075】
特徴量算出部313は、モデル情報記憶部312(
図13に例示)に格納されているモデル情報に基づき、第1検索条件に関するラベルを推定可能なモデル、及び、第2検索条件に関するラベルを推定可能なモデルを特定する(ステップS402)。次に、特徴量算出部313は、フレーム情報記憶部412に格納されているフレームに対して、特定したモデルを、それぞれ、適用する(ステップS403)。この処理によって、
図16に例示されているような中間層72にて算出値が算出される。たとえば、算出値「93、72、112、165、・・・」は、モデルID「M101」が表すモデル(すなわち、第1検索条件に関するラベルを推定可能なモデル)に従って算出される。たとえば、算出値「32、43、112、87、・・・」は、モデルID「M102」が表すモデル(すなわち、第2検索条件に関するラベルを推定可能なモデル)に従って算出される。
【0076】
特徴量作成部421は、所定の手順に従い処理を実行することによって、該算出値に関する特徴ベクトルを算出し(ステップS404)、算出した特徴ベクトルと、該特徴ベクトルを算出する基であるフレームに関する動画データIDと、フレームIDとが関連付けされた適合度判定情報(
図20に例示)を作成する(ステップS405)。
図20は、適合度判定情報記憶部422に格納されている適合度判定情報の一例を概念的に表す図である。
【0077】
特徴量作成部421は、作成した適合度判定情報を特徴情報記憶部314に格納する。たとえば、特徴量算出部313は、動画データID「V4001」に関する画像情報に含まれているフレーム「1」に関して、特徴ベクトル「(93、72、112、165、・・・、32、43、112、87、・・・)」を算出する。
【0078】
適合度算出部325は、適合度判定情報記憶部422に格納されている各特徴ベクトルに対して、対象検索条件に関するラベルを推定可能なモデルを適用することによって、該特徴ベクトルに関して、該ラベルに適合している程度(度合い)を表すラベル適合度を算出する(ステップS406)。適合度算出部325は、算出したラベル適合度と、該ラベル適合度に関する動画データIDと、フレームIDと、モデルIDと、該ラベル適合度に関するラベルIDとが関連付けされた適合度情報(
図21に例示)を作成し、作成した適合度情報を適合度情報記憶部326に格納する。
図21は、適合度情報記憶部326に格納されている適合度情報の一例を概念的に表す図である。具体的に、適合度算出部325は、入力した特徴ベクトルに対して、モデルID「M201」が表すモデルを適用することによって、ラベルID「C05」が表すラベル、及び、ラベルID「C06」が表すラベルに適合している程度を表すラベル適合度を算出する。ラベル適合度は、たとえば、あるラベルである確率を表し、0から1までのいずれかの値である。
【0079】
ラベル判定部501は、適合度情報記憶部326に格納されている適合度情報(
図21に例示)に基づき、あるフレームに関するラベルを選択する(ステップS407)。ラベル判定部501は、選択したラベルと、該あるフレームを表すフレームIDと、該フレームを含む動画データを表す動画データIDとが関連付けされた予想ラベル情報(
図22に例示)を作成し(ステップS408)、作成した予想ラベル情報を予測ラベル情報記憶部502に格納する。
図22は、予測ラベル情報記憶部502に格納されている予想ラベル情報の一例を概念的に表す図である。
【0080】
たとえば、ラベル判定部501は、あるフレームを表すフレームIDに関して、ラベルID「C05」に関して算出されたラベル適合度と、ラベルID「C06」に関して算出されたラベル適合度とを比較し、大きなラベル適合度であるラベルを、該あるフレームに対して付与する。
図21に例示された適合度情報の場合に、動画データID「V4001」、及び、フレームID「1」に関連付けされたデータのうち、ラベルID「C05」に関連付けされたラベル適合度が0.85であり、ラベルID「C06」に関連付けされたラベル適合度が0.15である。したがって、ラベルID「C05」に関するラベル適合度がラベルID「C06」に関するラベル適合度よりも大きな値であるので、ラベル判定部501は、動画データID「V4001」が表す動画データに関するフレームID「1」が表すフレームに対して、ラベルID「C05」が表すラベルを割り当てる。同様に、ラベル判定部501は、適合度情報に含まれている他のフレームに関しても、ラベルを割り当てる処理を実行する。
【0081】
次に、第1の実施形態に係るデータ推定装置600に関する効果について説明する。
【0082】
第1の実施形態に係るデータ推定装置600によれば、対象検索条件が厳しい条件であっても、対象データを正しく判定することができる。
【0083】
この理由は、本願発明者が見出した傾向に従い、データ推定装置600が処理を実行するからである。詳細に説明すると、本願発明者は、以下に示す第1観点よりも、第2観点の方が、分類精度が高いことが多いという傾向を見出した。
【0084】
○第1観点:第1検索条件、及び、第2検索条件(すなわち、対象検索条件)が成り立つか否かを判定するモデルに基づき、ラベルを判定する、
○第2観点:第1検索条件が成り立つか否かを推定可能な第1モデルと、第2検索条件が成り立つか否かを推定可能な第2モデルとを作成する。次に、第1モデルに基づき算出される値と、第2モデルに基づき算出される値とに基づき、第1検索条件、及び、第2検索条件が成り立つか否かを推定可能なモデルを作成する。次に、該作成したモデルに基づきラベルを判定する。
【0085】
データ推定装置600が、第2観点に従い作成されたモデルに基づき処理を行うので、本実施形態に係るデータ推定装置600によれば、対象検索条件が厳しい条件であっても、対象データを正しく判定することができる。
【0086】
すなわち、第1の実施形態に係るデータ推定装置600によれば、対象検索条件が厳しい条件であっても、対象データを正しく判定することができる。
【0087】
第1の実施形態に係るデータ推定装置600によれば、さらに、対象検索条件が厳しい条件であっても、ユーザが、容易に、ラベルを入力することができるという効果を奏する。この理由は、対象検索条件が緩和された条件である第1検索条件、及び、第2検索条件に関するラベルに関して入力し、入力されたラベルに基づき作成されたモデルに従い、対象検索条件に関するラベルを入力するからである。すなわち、ユーザは、比較的、検知しやすい第1検索条件、及び、第2検索条件に関するラベルを入力し、次に、対象検索条件に関するラベルを段階的に入力する。この結果、ユーザがラベル付けする負荷は低減する。
【0088】
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。
【0089】
図23を参照しながら、本発明の第2の実施形態に係るデータ推定装置801が有する構成について詳細に説明する。
図23は、本発明の第2の実施形態に係るデータ推定装置801が有する構成を示すブロック図である。
【0090】
第2の実施形態に係るデータ推定装置801は、第1演算部802と、第2演算部803と、第3演算部804とを有する。
【0091】
データ推定装置801は、以下に示すような第1モデル乃至第3モデルが格納されているモデル記憶部805と接続されている。
【0092】
○第1モデル:第1対象データに関して所定の第1処理手順に従い演算することによって第1検索条件が成り立つか否かを推定可能なモデル、
○第2モデル:第2対象データに関して所定の第2処理手順に従い演算することによって第2検索条件が成り立つか否かを推定可能なモデル、
○第3モデル:第3対象データに対して適用された該第1モデルにおいて算出される演算結果と、第3対象データに対して適用された該第2モデルにおいて算出される演算結果とに関して、所定の第3処理手順に従い演算することによって、第3対象データに関して、第1検索条件、及び、第2検索条件が成り立つか否かを推定可能なモデル。
【0093】
第1の実施形態に示された対象検索条件は、たとえば、第1検索条件と、第2検索条件との論理積である。第3モデルは、たとえば、第1の実施形態に示された対象検索条件に関するラベルを推定可能なモデルを表す。所定の第1処理手順、及び、所定の第2処理手順は、たとえば、
図16に例示されたCNNである。所定の第3処理手順は、たとえば、第1の実施形態に示されたSSI法である。
【0094】
次に、第2の実施形態に係るデータ推定装置801における処理について説明する。
【0095】
第1演算部802は、モデル記憶部805から第1モデルを読み取り、読み取った第1モデルをあるデータに対して適用する。すなわち、第1演算部802は、あるデータに対して、所定の第1処理手順に従い処理を実行することによって、該処理にて算出される第1演算結果を算出する。
【0096】
第2演算部803は、モデル記憶部805から第2モデルを読み取り、読み取った第2モデルをあるデータに対して適用する。すなわち、第2演算部803は、あるデータに対して、所定の第2処理手順に従い処理を実行することによって、該処理にて算出される第2演算結果を算出する。
【0097】
次に、第3演算部804は、モデル記憶部805から第3モデルを読み取る。第3演算部804は、該あるデータに対して第1演算部802が算出した第1演算結果と、該あるデータに対して第2演算部803が算出した第2演算結果とに関して、読み取った第3モデルを適用する。すなわち、第3演算部804は、該あるデータに関する第1演算結果と、該あるデータに関する第2演算結果とに対して、所定の第3処理手順に従い処理を実行することによって、第1検索条件、及び、第2検索条件が成り立つ程度を算出する。
【0098】
第1演算部802は、
図1に示された特徴量作成部310等が有する機能を用いて実現することができる。第2演算部803は、
図1に示された特徴量作成部310等が有する機能を用いて実現することができる。第3演算部804は、
図1に示された適合度特徴量作成部420、及び、適合度作成部320等が有する機能を用いて実現することができる。すなわち、データ推定装置801は、
図1に示されたデータ推定装置600が有する機能を用いて実現することができる。
【0099】
次に、第2の実施形態に係るデータ推定装置801に関する効果について説明する。
【0100】
第2の実施形態に係るデータ推定装置801によれば、対象検索条件が厳しい条件であっても、対象データを正しく判定することができる。
【0101】
この理由は、本願発明者が見出した傾向に従い、データ推定装置801が処理を実行するからである。この理由を詳細に説明すると、本願発明者は、前述した第1観点よりも、第2観点の方が、分類精度が高いことが多いという傾向を見出すことができたからである。データ推定装置801が、第2観点に従い作成されたモデルに基づき処理を行うので、そして、本実施形態に係るデータ推定装置801によれば、対象検索条件が厳しい条件であっても、対象データを正しく判定することができる。
【0102】
(ハードウェア構成例)
上述した本発明の各実施形態におけるデータ推定装置を、1つの計算処理装置(情報処理装置、コンピュータ)を用いて実現するハードウェア資源の構成例について説明する。但し、係るデータ推定装置は、物理的または機能的に少なくとも2つの計算処理装置を用いて実現してもよい。また、係るデータ推定装置は、専用の装置として実現してもよい。
【0103】
図24は、第1の実施形態、または、第2の実施形態に係るデータ推定装置を実現可能な計算処理装置のハードウェア構成例を概略的に示すブロック図である。計算処理装置20は、中央処理演算装置(Central_ProceSSIng_Unit、以降「CPU」と表す)21、メモリ22、ディスク23、不揮発性記録媒体24、通信インターフェース(以降、「通信IF」と表す)27、及び、ディスプレー28を有する。計算処理装置20は、入力装置25、出力装置26に接続可能であってもよい。計算処理装置20は、通信IF27を介して、他の計算処理装置、及び、通信装置と情報を送受信することができる。
【0104】
不揮発性記録媒体24は、コンピュータが読み取り可能な、たとえば、コンパクトディスク(Compact_Disc)、デジタルバーサタイルディスク(Digital_Versatile_Disc)である。また、不揮発性記録媒体24は、ユニバーサルシリアルバスメモリ(USBメモリ)、ソリッドステートドライブ(Solid_State_Drive)等であってもよい。不揮発性記録媒体24は、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体24は、上述した媒体に限定されない。また、不揮発性記録媒体24の代わりに、通信IF27、及び、通信ネットワークを介して、係るプログラムを持ち運びしてもよい。
【0105】
すなわち、CPU21は、ディスク23に記憶されているソフトウェア・プログラム(コンピュータ・プログラム:以下、単に「プログラム」と称する)を、実行する際にメモリ22にコピーし、演算処理を実行する。CPU21は、プログラム実行に必要なデータをメモリ22から読み取る。表示が必要な場合には、CPU21は、たとえば、
図10に例示されたユーザインターフェース等をディスプレー28に出力結果を表示する。外部への出力が必要な場合には、CPU21は、出力装置26に出力結果を出力する。外部からプログラムを入力する場合、CPU21は、入力装置25からプログラムを読み取る。CPU21は、上述した
図1、または、
図23に示す各部が表す機能(処理)に対応するところのメモリ22にあるデータ推定プログラム(
図2乃至
図5)を解釈し実行する。CPU21は、上述した本発明の各実施形態において説明した処理を順次実行する。
【0106】
すなわち、このような場合、本発明は、係るデータ推定プログラムによっても成し得ると捉えることができる。さらに、係るデータ推定プログラムが記録されたコンピュータが読み取り可能な不揮発性の記録媒体によっても、本発明は成し得ると捉えることができる。
【0107】
以上、上述した実施形態を模範的な例として本発明を説明した。しかし、本発明は、上述した実施形態には限定されない。すなわち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。