(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-04-12
(45)【発行日】2023-04-20
(54)【発明の名称】畳み込みニューラルネットワーク学習装置およびそのプログラム
(51)【国際特許分類】
G06N 3/08 20230101AFI20230413BHJP
G06N 3/04 20230101ALI20230413BHJP
G06T 7/00 20170101ALI20230413BHJP
【FI】
G06N3/08
G06N3/04
G06T7/00 350C
(21)【出願番号】P 2019108418
(22)【出願日】2019-06-11
【審査請求日】2022-05-10
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】遠藤 伶
(72)【発明者】
【氏名】河合 吉彦
【審査官】青木 重徳
(56)【参考文献】
【文献】特開2017-58877(JP,A)
【文献】米国特許第9552549(US,B1)
【文献】中国特許出願公開第109726682(CN,A)
【文献】渡邊 滉大 ほか,RGB画像とオプティカルフローを用いた3DCNNによる手話認識に関する検討,電子情報通信学会技術研究報告 [online],日本,情報処理学会,2019年03月07日,Vol.118 No.501 ,p.251-255
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/08
G06N 3/04
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
動画を構成する静止画をラベル列に翻訳するCNNとRNNとを連結した動画翻訳ニューラルネットワークに用いられる前記CNNを事前学習する畳み込みニューラルネットワーク学習装置であって、
学習データである前記動画から前記静止画を順次切り出す静止画切り出し手段と、
前記CNNを用いて、前記静止画切り出し手段が切り出した前記静止画から、全ラベル数に対応する次元数のラベル確率分布を生成するラベル確率分布生成手段と、
前記ラベル確率分布生成手段が生成した複数のラベル確率分布から、ラベルごとに最大の確率値を選択し、ラベル最大値列を生成する最大値選択手段と、
前記学習データである前記動画に対応する正解データであるラベル列と、前記最大値選択手段で生成したラベル最大値列との誤差を計算する誤差計算手段と、
前記誤差計算手段が計算した前記誤差を小さくする方向に前記CNNのパラメータを更新するパラメータ更新手段と、
を備えることを特徴とする畳み込みニューラルネットワーク学習装置。
【請求項2】
前記ラベル確率分布生成手段は、
前記静止画切り出し手段が切り出した前記静止画を前記CNNに入力し、前記全ラベル数に対応する次元数の数値列を画像特徴として抽出する特徴量抽出手段と、
前記特徴量抽出手段が抽出した前記画像特徴の数値列を正規化し、前記ラベル確率分布を生成する特徴量正規化手段と、
を備えることを特徴とする請求項1に記載の畳み込みニューラルネットワーク学習装置。
【請求項3】
前記ラベル確率分布生成手段は、前記静止画に前記動画を特定するための補助情報を付加するようにして前記CNNに入力することを特徴とする請求項1または請求項2に記載の畳み込みニューラルネットワーク学習装置。
【請求項4】
前記静止画切り出し手段11から順次切り出される静止画間の変位を示すオプティカルフローを計算するオプティカルフロー計算手段をさらに備え、
前記ラベル確率分布生成手段は、前記静止画に前記オプティカルフローを付加するようにして前記CNNに入力することを特徴とする請求項1から請求項3のいずれか一項に記載の畳み込みニューラルネットワーク学習装置。
【請求項5】
前記CNNは複数枚の静止画から画像特徴を抽出する3次元CNNであって、
前記静止画切り出し手段は、前記動画から予め定めた数ごとに静止画を切り出し、
前記ラベル確率分布生成手段は、前記静止画切り出し手段が切り出した数ごとに静止画を前記3次元CNNに入力することを特徴とする請求項1から請求項4のいずれか一項に記載の畳み込みニューラルネットワーク学習装置。
【請求項6】
コンピュータを、請求項1から請求項5のいずれか一項に記載の畳み込みニューラルネットワーク学習装置として機能させるための畳み込みニューラルネットワーク学習プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、動画翻訳ニューラルネットワークに用いるCNNを事前学習する畳み込みニューラルネットワーク学習装置およびそのプログラムに関する。
【背景技術】
【0002】
近年、いわゆる機械学習技術のひとつであるニューラルネットワーク/ディープラーニングを利用し、動画を翻訳(ラベル列に変換)する技術が提案されている(非特許文献1参照)。この技術によって、動画をその動画の内容を表す文章に変換したり、手話動画を音声言語に変換したり、といった翻訳処理を実現することができる。
【0003】
この動画翻訳のネットワークの構造には、画像認識等で使われる畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)と、翻訳技術等で使われるリカレントニューラルネットワーク(RNN:Recurrent Neural Network)とを連結した
図10に示すような構造を用いるのが一般的である。
従来の動画翻訳ニューラルネットワークNは、
図10に示すように、動画Vを構成するフレームである静止画(F
1,F
2,F
3,…,F
N)をCNNに入力し、画像特徴の列(静止画特徴シーケンスF
S)を生成する。そして、動画翻訳ニューラルネットワークNは、静止画特徴シーケンスF
Sを、順次、RNNに入力することで、翻訳結果であるラベルの列(ラベルシーケンスL
S)を出力する。例えば、手話動画を単語に変換する手話翻訳であれば、動画翻訳ニューラルネットワークNは、動画Vとして手話動画を入力し、手話に対応するラベル(単語等)を出力する。
【0004】
この動画翻訳ニューラルネットワークNを学習するには、
図11に示すように、動画Vとラベル列(L
1,L
2,…)とが対になった学習データが大量に必要となる。
この場合、通常、動画翻訳ニューラルネットワークNには、入力データとして動画Vを入力し、正解データとしてラベル列(L
1,L
2,…)を出力するように、CNNおよびRNNのパラメータを学習する。
【0005】
しかし、このようなCNNとRNNとを連結した動画翻訳ニューラルネットワークNを学習するには、ニューラルネットワーク全体の構造が複雑化し、学習時間が膨大になるため、このCNNおよびRNNの学習が困難である。
そこで、従来は、上述したCNNおよびRNNを同時に学習するのではなく、物体認識用のデータでCNNを事前に学習し、動画翻訳ニューラルネットワークNを学習する手法が用いられている。
【0006】
従来のCNNを事前に学習する手法は、
図12に示すように、動画を構成するフレームである静止画F
1,F
2,…,F
Nに、それぞれ単独のラベルを正解データとして対応付けた学習データを用いる。例えば、
図12の例では、「明日」を示す手話動作中の静止画F
1,F
2,…には、それぞれ同じラベルL
1として[明日]を対応付け、異なる動作である「です」を示す手話動作中の静止画F
Nには、ラベルL
4として[です]を対応付けて学習を行う。
すなわち、従来のCNNの事前学習は、
図11に示した動画とラベル列とをペアとする学習データから、各ラベルに対応する範囲に動画を区切って、
図12に示した静止画と単独のラベルとをペアとする学習データを別途作成して、学習を行っている。
【先行技術文献】
【非特許文献】
【0007】
【文献】Necati Cihan Camgoz and Simon Hadfield and Oscar Koller and Hermann Ney and Richard Bowden., ”Neural Sign Language Translation,”IEEE Conference on Computer Vision and Pattern Recognition(CVPR),2018.
【発明の概要】
【発明が解決しようとする課題】
【0008】
上述したように従来の手法は、静止画と単独のラベルとをペアとした学習データが必要となる。
しかしながら、この学習データを生成するには、動画とラベル列とをペアとする元の学習データから、各ラベルに対応する範囲に動画を区切る必要があり、膨大な人手がかかってしまう。そのため、このような学習データを事前に準備することは困難であるという問題がある。
さらに、必ずしもラベルごとに動画を区切ることができない場合がある。例えば、手話では右手と左手とで別個の意味を表現する場合には、1つの静止画に複数のラベルが対応することになるため、静止画と単独のラベルとをペアとした学習データを生成することができないという問題がある。
【0009】
本発明は、このような問題に鑑みてなされたものであり、動画翻訳ニューラルネットワークに用いるCNNを、動画とラベル列とのペアから、直接学習することが可能な畳み込みニューラルネットワーク学習装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【0010】
前記課題を解決するため、本発明に係る畳み込みニューラルネットワーク学習装置は、動画を構成する静止画をラベル列に翻訳するCNNとRNNとを連結した動画翻訳ニューラルネットワークに用いられるCNNを事前学習する畳み込みニューラルネットワーク学習装置であって、静止画切り出し手段と、ラベル確率分布生成手段と、最大値選択手段と、誤差計算手段と、パラメータ更新手段と、を備える構成とした。
【0011】
かかる構成において、畳み込みニューラルネットワーク学習装置は、静止画切り出し手段によって、学習データである動画から静止画を順次切り出す。
そして、畳み込みニューラルネットワーク学習装置は、ラベル確率分布生成手段によって、CNNを用いて、静止画切り出し手段が切り出した静止画から、全ラベル数に対応する次元数のラベル確率分布を生成する。この全ラベル数は、動画翻訳ニューラルネットワークが翻訳する単語等のラベルの数に相当する。
【0012】
そして、畳み込みニューラルネットワーク学習装置は、最大値選択手段によって、ラベル確率分布生成手段が生成した複数のラベル確率分布から、ラベルごとに最大の確率値を選択し、ラベル最大値列を生成する。このラベル最大値列は、学習データの1つの動画を構成するすべての静止画から選択したものであるため、1つの静止画に複数のラベルが対応することができない場合でも、動画全体を翻訳した際に含まれるラベルを示す指標となる。
そして、畳み込みニューラルネットワーク学習装置は、誤差計算手段によって、学習データである動画に対応する正解データであるラベル列と、最大値選択手段が生成したラベル最大値列との誤差を計算する。
【0013】
そして、畳み込みニューラルネットワーク学習装置は、パラメータ更新手段によって、誤差計算手段が計算した誤差を小さくする方向にCNNのパラメータを、例えば、確率的勾配降下法により更新する。
これによって、CNNは、動画を構成する複数の静止画から、当該動画の翻訳結果に含まれるラベル列を画像特徴として抽出するように学習されることになる。
なお、CNNの入力には、動画を特定するための補助情報を静止画に付加してもよい。この場合、ラベル確率分布生成手段は、CNNを用いて、補助情報の特徴を付加したラベル確率分布を生成することになる。
【0014】
また、本発明は、コンピュータを、前記畳み込みニューラルネットワーク学習装置として機能させるための畳み込みニューラルネットワーク学習プログラムで実現することもできる。
【発明の効果】
【0015】
本発明は、以下に示す優れた効果を奏するものである。
本発明によれば、静止画と単独のラベルとをペアとした学習データを生成することなく、動画とラベル列とのペアから、動画翻訳ニューラルネットワークに用いるCNNを事前学習することができる。
そのため、本発明は、静止画と単独のラベルとを対応付けることができない動画からでも、CNNを学習することができる。
【図面の簡単な説明】
【0016】
【
図1】本発明の実施形態に係るCNN学習装置の構成を示すブロック構成図である。
【
図2】
図1のCNN学習装置のデータの流れを説明するための模式図である。
【
図3】正解データであるラベル列の一例を説明するための説明図である。
【
図4】
図1の最大値選択手段の処理を説明するための説明図である。
【
図5】本発明の実施形態に係るCNN学習装置の動作を示すフローチャートである。
【
図6】CNNの変形例を説明するために説明図である。
【
図7】本発明の実施形態に係るCNN学習装置の変形例(その1)の構成を示すブロック構成図である。
【
図8】本発明の実施形態に係るCNN学習装置の変形例(その2)の構成を示すブロック構成図である。
【
図9】
図8のCNN学習装置のデータの流れを説明するための模式図である。
【
図10】従来の動画翻訳ニューラルネットワークの構造を説明するための説明図である。
【
図11】従来の動画翻訳ニューラルネットワークを学習するための学習データを説明するための説明図である。
【
図12】従来の動画翻訳ニューラルネットワークのCNNを事前学習するための学習データを説明するための説明図である。
【発明を実施するための形態】
【0017】
以下、本発明の実施形態について図面を参照して説明する。
<CNN学習装置の構成>
まず、
図1,
図2を参照して、本発明の実施形態に係るCNN学習装置1の構成について説明する。なお、
図2は、CNN学習装置1のデータの流れを示し、
図1のCNN学習装置1の構成の説明において適宜参照する。
【0018】
CNN学習装置(畳み込みニューラルネットワーク学習装置)1は、動画翻訳ニューラルネットワークN(
図10参照)に用いるCNNを事前に学習するものである。
CNN学習装置1は、予め学習データとして対応付けられた、動画Vとそれに対応するラベル列L
CとからCNNを学習する。なお、動画Vおよびそれに対応するラベル列L
Cは、図示を省略した記憶手段に記憶され、CNN学習装置1が順次読み込んで学習を行う。
【0019】
ラベル列L
Cは、動画Vを翻訳した正解データである。例えば、ラベル列L
Cは、動画Vを手話動画としたとき、手話の意味を示すテキストのラベルを示すデータである。
このラベル列L
Cは、すべてのラベルの数を要素とし、動画Vを翻訳したラベルの位置に“1”をセットし、他のラベルの位置に“0”をセットした数値列である。
例えば、動画Vの翻訳結果を「明日の天気です」とした場合、ラベル列L
Cは、
図3に示すように、[明日]、[の]、[天気]、[です]の各ラベル位置に対応するビット値を“1”、その他のラベル位置のビット値を“0”とした数値列(ビット列)である。
【0020】
なお、ラベルの単位は、使用する動画翻訳ニューラルネットワークと同じ単位とする。例えば、動画翻訳ニューラルネットワークが使用するラベルを単語単位とした場合、ラベル列LCは、全単語のうち、対応する単語の位置のみに“1”をセットする。なお、ラベルの単位は、必ずしも単語である必要はない。例えば、頻出するフレーズを1ラベルとして区分したものを用いてもよい。これによって、ラベル数を減らして学習を行うことができる。
【0021】
図1に示すように、CNN学習装置1は、モデル記憶手段10と、静止画切り出し手段11と、ラベル確率分布生成手段12と、最大値選択手段13と、誤差計算手段14と、パラメータ更新手段15と、を備える。
【0022】
モデル記憶手段10は、学習対象であるCNNとして、CNNの構造およびパラメータを記憶するものである。このモデル記憶手段10は、半導体メモリ等の一般的な記憶媒体で構成することができる。
CNNは、畳み込み層、全結合層を含み、全ラベル数に対応する次元数の数値列として画像特徴を抽出する畳み込みニューラルネットワークのモデルであって、例えば、VGG(Visual Geometry Group)や、ResNet等の一般的なモデルを用いることができる。
なお、CNNのパラメータの初期値は、予め定めた固定値であってもよいし、予め乱数によって生成された乱数値であってもよい。
モデル記憶手段10に記憶されているCNN(構造およびパラメータ)は、ラベル確率分布生成手段12によって参照される。また、CNNのパラメータは、パラメータ更新手段15によって更新される。
【0023】
静止画切り出し手段11は、動画Vから静止画を切り出すものである。この静止画切り出し手段11は、動画Vから、動画を構成するフレームを静止画として順次切り出す。
静止画切り出し手段11は、切り出した静止画(フレーム)を、ラベル確率分布生成手段12に出力する。
【0024】
なお、動画Vとしてカラー動画を用いる場合、静止画切り出し手段11は、動画Vから、RGB、Lab等の3チャンネルのフレームを切り出して、ラベル確率分布生成手段12に出力する。また、動画Vとしてモノクロ動画を用いる場合、静止画切り出し手段11は、動画Vから1チャンネルのフレームを切り出して、ラベル確率分布生成手段12に出力する。
また、静止画切り出し手段11は、パラメータ更新手段15から、静止画切り出しを指示された場合、再度、同じ動画から静止画を順次切り出して、ラベル確率分布生成手段12に出力する。
【0025】
ラベル確率分布生成手段12は、CNNを用いて、静止画切り出し手段11から入力される静止画から、全ラベル数に対応する次元数のラベル確率分布を生成するものである。
ラベル確率分布生成手段12は、特徴量抽出手段120と、特徴量正規化手段121と、を備える。
【0026】
特徴量抽出手段120は、モデル記憶手段10に記憶されているCNNを用いて、静止画切り出し手段11から入力される静止画から、画像特徴を抽出するものである。
特徴量抽出手段120は、モデル記憶手段10に記憶されているCNNのパラメータによりCNNの演算を行うことで、静止画から全ラベル数に対応する次元数の数値列を画像特徴として抽出する。
特徴量抽出手段120は、抽出した画像特徴を特徴量正規化手段121に出力する。
【0027】
特徴量正規化手段121は、特徴量抽出手段120で抽出された画像特徴を、予め定めた基準で正規化するものである。
特徴量正規化手段121は、全ラベル数に対応する次元数の数値列である画像特徴を、その総和が“1”となるように正規化する。例えば、特徴量正規化手段121は、ソフトマックス(Softmax)関数を用いて、画像特徴を正規化する。
これによって、特徴量正規化手段121は、静止画の画像特徴から、当該静止画が表すラベル別の確率分布(ラベル確率分布)を生成することができる。
特徴量正規化手段121は、生成したラベル確率分布を最大値選択手段13に出力する。
【0028】
このラベル確率分布生成手段12は、
図2に示すように、1つの動画Vに対して、動画Vを構成するフレームである静止画F
1,F
2,…,F
Nから、順次、CNNにより画像特徴を抽出し、ソフトマックス(Softmax)関数の演算を行うことで、静止画の数だけ、ラベル確率分布L
Pを生成する。
【0029】
最大値選択手段13は、ラベル確率分布生成手段12で生成された複数のラベル確率分布から、ラベルごとに最大の確率値を選択し、ラベル最大値列を生成するものである。ラベル最大値列の要素数は、個々のラベル確率分布と同じ、全ラベル数に対応する次元数である。
これによって、最大値選択手段13は、1つの動画V全体において、特徴を表す度合いが大きいラベルを選択することができる。
最大値選択手段13は、ラベル最大値列を誤差計算手段14に出力する。
【0030】
ここで、
図4を参照して、最大値選択手段13の処理について具体的に説明する。
図4の例では、説明を簡単にするため、静止画の数を“2”、ラベルの数を“3”として説明する。
ここでは、静止画F
1から生成されたラベル確率分布L
P1は、ラベル[A]の確率が“0.2”、ラベル[B]の確率が“0.6”、ラベル[C]の確率が“0.2”であったとする。また、静止画F
2から生成されたラベル確率分布L
P2は、ラベル[A]の確率が“0.1”、ラベル[B]の確率が“0.5”、ラベル[C]の確率が“0.4”であったとする。
【0031】
この場合、最大値選択手段13は、ラベル[A]については確率値の大きいラベル確率分布L
P1から“0.2”を選択する。また、最大値選択手段13は、ラベル[B]については確率値の大きいラベル確率分布L
P1から“0.6”を選択する。また、最大値選択手段13は、ラベル[C]については確率値の大きいラベル確率分布L
P2から“0.4”を選択する。これによって、最大値選択手段13は、確率値の最大値のみで構成したラベル最大値列L
MAXを生成する。
この最大値選択手段13は、
図2に示すように、静止画F
1,F
2,…,F
Nから生成された複数のラベル確率分布L
Pから、それぞれラベルごとに確率値の最大値を選択することで、1つのラベル最大値列L
MAXを生成する。
図1に戻って、CNN学習装置1の構成について説明を続ける。
【0032】
誤差計算手段14は、最大値選択手段13で生成されたラベル最大値列と、動画Vに対応する正解データであるラベル列LCとの誤差を計算するものである。
なお、誤差計算手段14の誤差の計算手法は、どのような手法でも構わない。例えば、誤差計算手段14は、ラベルごとにバイナリ交差エントロピを計算してもよいし、最小2乗誤差を計算してもよい。
誤差計算手段14は、計算した誤差をパラメータ更新手段15に出力する。
【0033】
パラメータ更新手段15は、誤差計算手段14で計算された誤差に基づいて、モデル記憶手段10に記憶されているCNNのパラメータを更新するものである。
具体的には、パラメータ更新手段15は、誤差計算手段14で計算された誤差を小さくする方向にパラメータを修正する。このパラメータの修正には、例えば、確率的勾配降下法(SGD:Stochastic Gradient Descent)、Adam(Adaptive moment estimation)法等、一般的な最適化手法を用いることができる。
パラメータを修正した場合、パラメータ更新手段15は、静止画切り出し手段11に、静止画切り出しを指示する。これによって、CNN学習装置1は、更新されたパラメータを用いて、再度、ラベル確率分布生成手段12においてラベル確率分布を生成し、最大値選択手段13においてラベル最大値を生成し、誤差計算手段14において新たに誤差を計算する。
【0034】
なお、パラメータ更新手段15は、誤差計算手段14で計算された誤差をメモリ等の記憶媒体(不図示)に記憶し、前回の誤差との差が予め定めた閾値以下となるまで、パラメータを更新する。
すなわち、パラメータ更新手段15は、
図2に示すように、ラベル最大値列L
MAXとラベル列L
Cとの誤差の変動が閾値以下となるまで、CNNのパラメータを繰り返し更新する。このパラメータ更新の終了条件は、誤差変動が閾値以下になった場合に限定されず、予め定めた回数更新した場合としてもよい。
なお、1つの動画について、誤差の変動が閾値以下となった場合、CNN学習装置1は、他の学習データである動画Vとラベル列L
Cとのペアにより、CNNの学習を行う。
【0035】
以上説明したようにCNN学習装置1を構成することで、CNN学習装置1は、動画を構成する静止画に単独のラベルを対応付けることなく、動画Vと正解データであるラベル列LCとのペアから、動画翻訳ニューラルネットワークに用いるCNNを学習することができる。
なお、CNN学習装置1は、コンピュータを、前記した各手段として機能させるためのCNN学習プログラムで動作させることができる。
【0036】
<CNN学習装置の動作>
次に、
図5を参照(構成については適宜
図1参照)して、本発明の実施形態に係るCNN学習装置1の動作について説明する。なお、モデル記憶手段10には、学習対象であるCNNが記憶され、CNNのパラメータには、予め初期値が設定されているものとする。
【0037】
ステップS10において、静止画切り出し手段11は、動画Vから、動画を構成するフレームを静止画として切り出す。例えば、動画Vがカラー動画の場合、静止画切り出し手段11は、動画Vから、3チャンネルのフレームを順次静止画として切り出す。
ステップS11において、ラベル確率分布生成手段12は、モデル記憶手段10に記憶されているCNNにより、ステップS10で切り出された静止画から、ラベル確率分布を生成する。
具体的には、ラベル確率分布生成手段12の特徴量抽出手段120は、モデル記憶手段10に記憶されているCNNを用いて、ステップS10で切り出された静止画から、全ラベル数に対応する次元数の数値列を画像特徴として抽出する。そして、ラベル確率分布生成手段12の特徴量正規化手段121は、ソフトマックス関数を用いて、画像特徴を正規化し、ラベル確率分布を生成する。
【0038】
ステップS12において、ラベル確率分布生成手段12は、ステップS10で切り出されたすべての静止画に対して、ラベル確率分布を生成したか否かを判定する。
ここで、まだ、すべての静止画に対してラベル確率分布を生成していない場合(ステップS12でNo)、CNN学習装置1は、ステップS11に戻って、他の静止画について、ラベル確率分布を生成する。
【0039】
一方、すべての静止画に対してラベル確率分布を生成した場合(ステップS12でYes)、ステップS13において、最大値選択手段13は、ステップS11で生成されたすべての静止画に対するラベル確率分布から、ラベルごとに最大の確率値を選択し、ラベル最大値列を生成する。
【0040】
ステップS14において、誤差計算手段14は、ステップS13で生成されたラベル最大値列と、正解データであるラベル列LCとの誤差を計算する。例えば、誤差計算手段14は、誤差としてバイナリ交差エントロピを計算する。
ステップS15において、パラメータ更新手段15は、ステップS14で計算された誤差と前回計算された誤差との差が予め定めた閾値以下であるか否かを判定する。このとき、パラメータ更新手段15は、ステップS14で計算された誤差をメモリ等の記憶媒体に記憶し(ステップとして図示せず)、次回の判定に利用する。なお、前回の誤差が存在しない場合、パラメータ更新手段15は、ステップS16に動作を進める。
【0041】
ここで、誤差の差が閾値よりも大きい場合(ステップS15でNo)、ステップS16において、パラメータ更新手段15は、モデル記憶手段10に記憶されているCNNのパラメータを、確率的勾配降下法等により更新する。そして、CNN学習装置1は、ステップS10に戻って、同じ動画Vから静止画を順次切り出すことで、順次学習を行う。
【0042】
一方、誤差の差が閾値以下の場合(ステップS15でYes)、CNN学習装置1は、1つの動画Vとラベル列LCとを用いた学習を終了する。
なお、CNN学習装置1は、これ以降、学習データとして、他の動画Vとラベル列LCとの対を用いて順次同様の学習を行うが、図示を省略する。
以上の動作によって、CNN学習装置1は、動画Vと正解データであるラベル列LCとのペアから、動画翻訳ニューラルネットワークに用いるCNNを学習することができる。
【0043】
<変形例>
以上、本発明の実施形態について説明したが、本発明は、この実施形態に限定されるものではない。
【0044】
<変形例1>
例えば、動画翻訳ニューラルネットワークN(
図10参照)に用いるCNNが、静止画以外の情報を含んで画像特徴を抽出する場合、CNN学習装置1は、同じ構造のCNNを学習する。
具体的には、
図6に示すように、CNNが、静止画F(3チャンネル〔RGB等〕)と動画Vの種類を示す補助情報H(1チャンネル)とから画像特徴を抽出する場合、ラベル確率分布生成手段12(特徴量抽出手段120)は、静止画切り出し手段11で切り出される静止画Fに、補助情報Hを付加して画像特徴を抽出すればよい。
【0045】
なお、補助情報Hは、動画の内容を特定する情報であって、例えば、動画に映っている人物を特定する情報、動画のジャンル(アニメ、ドラマ、ニュース等)を特定する情報等である。
補助情報Hを、人物を特定する情報とする場合、特徴量抽出手段120は、静止画Fと同じ大きさの補助情報Hのすべての画素位置に、人物を特定する値(例えば、“1”等)を設定する。これによって、CNNは、特定の人物の特徴をより正確に抽出することが可能になる。
【0046】
また、補助情報Hとして、オプティカルフローを用いてもよい。その場合、CNN学習装置1は、
図7に示すように、静止画切り出し手段11が時系列に順次切り出す静止画から、静止画間の変位(変位ベクトル)を求めるオプティカルフロー計算手段16をさらに備えたCNN学習装置1Bとすればよい。この場合、特徴量抽出手段120は、静止画Fと、オプティカルフロー計算手段16が計算する補助情報H(2チャンネル:水平方向の変位、垂直方向の変位)であるオプティカルフローとを用いて画像特徴を抽出する。これによって、CNNは、動きの特徴をより正確に抽出することが可能になる。
【0047】
<変形例2>
ここでは、ラベル確率分布生成手段12を、特徴量抽出手段120と、特徴量正規化手段121とで構成した。
しかし、学習対象である動画翻訳ニューラルネットワークN(
図10参照)のCNNの最終段にソフトマックス層が含まれている場合、CNNが出力する画像特徴は、ラベル確率分布となる。
この場合、ラベル確率分布生成手段12は、構成から特徴量正規化手段121を省略すればよい。
【0048】
<変形例3>
ここでは、CNNとして、1枚の静止画から画像特徴を抽出する2次元CNNを用いたが、複数枚の静止画から画像特徴を抽出する3次元CNN(3DCNN)を用いてもよい。もちろん、この場合、学習対象である動画翻訳ニューラルネットワークのCNNも3DCNNとする。
【0049】
CNNとして3DCNNを用いたCNN学習装置1Cの構成を
図8に示す。
図8に示すように、CNN学習装置1Cは、モデル記憶手段10Bと、静止画切り出し手段11Bと、ラベル確率分布生成手段12と、最大値選択手段13と、誤差計算手段14と、パラメータ更新手段15と、を備える。
モデル記憶手段10Bおよび静止画切り出し手段11B以外の構成は、
図1で説明したCNN学習装置1と同じ構成であるため、説明を省略する。
【0050】
モデル記憶手段10Bは、学習対象である3DCNNとして、3DCNNの構造およびパラメータを記憶するものである。このモデル記憶手段10Bは、モデル記憶手段10と記憶するモデルが異なるだけである。
【0051】
静止画切り出し手段11Bは、動画Vから静止画を切り出すものである。この静止画切り出し手段11Bは、動画Vから、動画を構成する静止画を予め定めた数ごとに順次切り出す。なお、静止画の切り出しは、複数の静止画ごとに区切って切り出してもよいし、一部重なりを設けて切り出してもよい。
【0052】
例えば、
図9に示すように、静止画切り出し手段11Bは、動画Vから静止画F
1~F
16,F
9~F
24,…を順次切り出す。この場合、静止画切り出し手段11Bは、静止画を16枚ごと、前後8枚の静止画を重ねて切り出すことになる。もちろん、静止画切り出し手段11が切り出す静止画の枚数の単位は、16枚に限定されず、8枚、32枚等であってもよい。
なお、
図9に示すCNN学習装置1Cのデータの流れは、CNNが3DCNNとなって、3DCNNに入力する静止画の数が異なるだけで、
図2で説明した流れと同じである。
このように、CNN学習装置1Cは、3DCNNを学習することで、空間方向の特徴だけでなく、時間方向の特徴を抽出するCNNを学習することができる。
【符号の説明】
【0053】
1,1B,1C CNN学習装置(畳み込みニューラルネットワーク学習装置)
10,10B モデル記憶手段
11,11B 静止画切り出し手段
12 ラベル確率分布生成手段
120 特徴量抽出手段
121 特徴量正規化手段
13 最大値選択手段
14 誤差計算手段
15 パラメータ更新手段
16 オプティカルフロー計算手段