(57)【要約】【課題】発話文の単語列に対して、次に現れる単語を精度よく予測することが可能な言語モデルを学習する言語モデル学習装置を提供する。【解決手段】言語モデル学習装置１は、予め学習したキャプション生成モデルを用いて、発話文に関連する画像から当該画像の内容を示す複数のキャプションを生成するキャプション生成手段１００と、複数のキャプションをベクトル化して統合することでキャプション統合ベクトルを生成するとともに、発話文を構成する単語ごとにベクトル化して入力単語ベクトルを生成し、言語モデルへの入力データを生成するモデル入力データ生成手段１２と、発話文の文頭から文末まで、当該発話文を構成する単語に対応する入力単語ベクトルと発話文に対応するキャプション統合ベクトルとに基づいて言語モデルを学習する学習手段１３と、を備える。【選択図】図１
2019219827.tif 000002
【特許請求の範囲】
【請求項１】
発話文を構成する単語と当該発話文に関連する画像とで構成される複数の学習データにより、再帰型ニューラルネットワークの言語モデルを学習する言語モデル学習装置であって、
予め学習したニューラルネットワークのキャプション生成モデルを用いて、前記画像から当該画像の内容を示す複数のキャプションを生成するキャプション生成手段と、
前記キャプション生成手段で生成された複数のキャプションをベクトル化して統合することでキャプション統合ベクトルを生成するとともに、前記発話文を構成する単語ごとにベクトル化して入力単語ベクトルを生成し、前記言語モデルへの入力データを生成するモデル入力データ生成手段と、
前記発話文を構成する単語に対応する前記入力単語ベクトルと、前記発話文に対応するキャプション統合ベクトルとに基づいて、当該単語に続く次単語を教師データとして、前記言語モデルを学習する学習手段と、
を備えることを特徴とする言語モデル学習装置。
【請求項２】
前記言語モデルとして、入力層に２つのベクトルを入力する再帰型ニューラルネットワークを用い、
前記モデル入力データ生成手段は、前記発話文を構成する単語に対応する前記入力単語ベクトルと、前記発話文に対応した前記キャプション統合ベクトルとを、単語ごとに、それぞれ個別に前記学習手段に出力し、
前記学習手段は、前記入力単語ベクトルと前記キャプション統合ベクトルとから、前記言語モデルを学習することを特徴とする請求項１に記載の言語モデル学習装置。
【請求項３】
前記言語モデルとして、入力層に１つのベクトルを入力する再帰型ニューラルネットワークを用い、
前記モデル入力データ生成手段は、前記発話文の文頭記号の前に、前記キャプション統合ベクトルを追加して、前記学習手段に出力し、
前記学習手段は、入力されるベクトルの順に、前記言語モデルを学習することを特徴とする請求項１に記載の言語モデル学習装置。
【請求項４】
前記キャプション生成手段で生成される複数のキャプションを、前記発話文との間でベクトル表現が類似する順に入れ替えるリランキング手段を、さらに備え、
前記モデル入力データ生成手段が、前記複数のキャプションを、前記発話文と類似するキャプションほど重みを大きくして統合することを特徴とする請求項１から請求項３のいずれか一項に記載の言語モデル学習装置。
【請求項５】
コンピュータを、請求項１から請求項４のいずれか一項に記載の言語モデル学習装置として機能させるための言語モデル学習プログラム。
【請求項６】
請求項１から請求項４のいずれか一項に記載の言語モデル学習装置で学習した言語モデルを用いて、発話文に関連する画像から当該発話文を構成する単語の次単語を推定する単語推定装置であって、
予め学習したニューラルネットワークのキャプション生成モデルを用いて、前記画像から当該画像の内容を示す複数のキャプションを生成するキャプション生成手段と、
前記キャプション生成手段で生成された複数のキャプションをベクトル化して統合することでキャプション統合ベクトルを生成するとともに、前記発話文を構成する単語ごとにベクトル化して入力単語ベクトルを生成し、前記言語モデルへの入力データを生成するモデル入力データ生成手段と、
前記言語モデルを用いて、前記入力単語ベクトルと前記キャプション統合ベクトルとに基づいて、入力された単語に続く次単語を推定する推定手段と、
を備えることを特徴とする単語推定装置。
【請求項７】
コンピュータを、請求項６に記載の単語推定装置として機能させるための単語推定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、言語モデルを学習するための言語モデル学習装置およびそのプログラム、ならびに、言語モデルを用いて接続単語を推定する単語推定装置およびそのプログラムに関する。
【背景技術】
【０００２】
音声認識は、生放送番組の音声の字幕作成や、記者や番組ディレクターが取材してきた音声の書き起こし作成などに幅広く利用されている。これらの音声は、コールセンターの問い合わせのように特定の製品に話題が限定されるような音声とは異なり、あらゆるドメイン（話題）を含むとともに、そのドメインも移り変わっていく音声である。
このような種々のドメインの音声に対して、高精度に認識を行う手法として、言語モデルの入力に番組情報を付加する手法が開示されている（特許文献１、非特許文献１参照）。
【０００３】
言語モデルは、ある単語列が与えられたときに次に現れる単語を予測するモデルである。特許文献１等の手法は、言語モデルを再帰型ニューラルネットワーク（Recurrent Neural Network：以下、ＲＮＮと略す場合がある）で構成した言語モデルを用いている。ＲＮＮは、中間層（隠れ層）が再帰構造となっているニューラルネットワーク（ＮＮ）である。ＲＮＮ言語モデル（ＲＮＮ−ＬＭ〔Language Model〕）は、文頭から直前までの単語列の情報から、次の単語を予測するモデルである。ＲＮＮ−ＬＭは、直前の単語のみを明示的にＲＮＮの入力とし、それよりも前に現れた単語の情報に関しては中間層に符号化された状態で格納されて利用される。
【０００４】
特許文献１等の手法は、ＲＮＮ−ＬＭの入力に、単語だけでなく番組名等の番組情報を付加することで、番組ごとに変動する単語列の出現確率を学習したモデルとしている。
このように、特許文献１等の手法は、番組情報のようなドメインの傾向がわかる情報を明示することで言語モデルの精度を向上させている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１８−０８４６２７号公報
【非特許文献】
【０００６】
【非特許文献１】萩原，伊藤，一木，三島，佐藤，小林、“マルチタスク学習によるドメイン適応言語モデル”、日本音響学会春季研究発表会講演論文集（２０１７）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１、非特許文献１の手法は、ＲＮＮ−ＬＭの入力にドメインの情報を付加することで、豊富なドメインを含む発話に対しても高精度な言語モデルを構築することができる。
しかし、ドメインは常に既知であるわけではない。例えば、取材映像はまだ放送に利用されていないため番組名等の番組情報が未定であり、従来手法を利用するためには、利用者が自らドメインを指定する手間が生じてしまう。また、新番組の場合、番組名等の学習データが存在していないため、これまで蓄積した学習データで学習した言語モデルを利用することができないという問題がある。
【０００８】
そこで、本発明は、ドメインが未知の発話文の単語列に対して、次に現れる単語を精度よく予測する言語モデルを学習する言語モデル学習装置およびそのプログラム、ならびに、その言語モデルを用いて次単語を推定する単語推定装置およびそのプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００９】
前記課題を解決するため、本発明に係る言語モデル学習装置は、発話文を構成する単語と当該発話文に関連する画像とで構成される複数の学習データにより、再帰型ニューラルネットワークの言語モデルを学習する言語モデル学習装置であって、キャプション生成手段と、モデル入力データ生成手段と、学習手段と、を備える構成とした。
【００１０】
かかる構成において、言語モデル学習装置は、キャプション生成手段によって、予め学習したニューラルネットワークのキャプション生成モデルを用いて、画像から当該画像の内容を示す複数のキャプション（説明文）を生成する。このキャプションは、発話文に関連し、ドメインを推定するための素材となる。
【００１１】
そして、言語モデル学習装置は、モデル入力データ生成手段によって、キャプション生成手段で生成された複数のキャプションをベクトル化して統合することでキャプション統合ベクトルを生成する。また、言語モデル学習装置は、モデル入力データ生成手段によって、発話文を構成する単語ごとにベクトル化して入力単語ベクトルを生成する。
これによって、モデル入力データ生成手段は、言語モデルへの入力データを生成する。
【００１２】
そして、言語モデル学習装置は、学習手段によって、発話文を構成する単語に対応する入力単語ベクトルと、発話文に対応するキャプション統合ベクトルとに基づいて、当該単語に続く次単語を教師データとして、言語モデルを学習する。これによって、言語モデルは、発話文の連続する単語以外に、当該発話文に関連する画像の特徴に応じて、モデルパラメータが学習されることになる。
なお、言語モデル学習装置は、コンピュータを、前記したキャプション生成手段、モデル入力データ生成手段、学習手段として機能させるための言語モデル学習プログラムで動作させることができる。
【００１３】
また、前記課題を解決するため、本発明に係る単語推定装置は、言語モデル学習装置で学習した言語モデルを用いて、発話文を構成する単語の次単語を、当該発話文に関連する画像から推定する単語推定装置であって、キャプション生成手段と、モデル入力データ生成手段と、推定手段と、を備える構成とした。
【００１４】
かかる構成において、単語推定装置は、キャプション生成手段によって、予め学習したニューラルネットワークのキャプション生成モデルを用いて、画像から当該画像の内容を示す複数のキャプション（説明文）を生成する。このキャプションは、発話文に関連し、ドメインを推定するための素材となる。
【００１５】
そして、単語推定装置は、モデル入力データ生成手段によって、キャプション生成手段で生成された複数のキャプションをベクトル化して統合することでキャプション統合ベクトルを生成する。また、単語推定装置は、モデル入力データ生成手段によって、発話文を構成する単語ごとにベクトル化して入力単語ベクトルを生成する。
これによって、モデル入力データ生成手段は、言語モデルへの入力データを生成する。
そして、単語推定装置は、推定手段によって、言語モデルを用いて、入力単語ベクトルとキャプション統合ベクトルとに基づいて、入力された単語に続く次単語を推定する。
【発明の効果】
【００１６】
本発明は、以下に示す優れた効果を奏するものである。
本発明によれば、発話文の単語列とともに、当該発話文に関連する画像の特徴であるキャプションに基づいて、言語モデルを学習することができる。
これによって、本発明は、ドメインが未知な場合でも、発話文に関連する画像から、ドメインの素材となる情報を加味して言語モデルを学習することができ、言語モデルの推定精度を向上させることができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１実施形態に係る言語モデル学習装置の構成を示すブロック構成図である。
【図２】キャプション生成手段が生成するキャプション（説明文）の例を説明するための説明図である。
【図３】本発明の第１実施形態に係る言語モデル学習装置が学習する言語モデルの構成例を説明するための説明図である。
【図４】本発明の第１実施形態に係る言語モデル学習装置の動作を示すフローチャートである。
【図５】本発明の第１実施形態に係る単語推定装置の構成を示すブロック構成図である。
【図６】本発明の第１実施形態に係る単語推定装置の動作を示すフローチャートである。
【図７】本発明の第２実施形態に係る言語モデル学習装置の構成を示すブロック構成図である。
【図８】本発明の第２実施形態に係る言語モデル学習装置が学習する言語モデルの構成例を説明するための説明図である。
【図９】本発明の第２実施形態に係る言語モデル学習装置の動作を示すフローチャートである。
【図１０】本発明の第２実施形態に係る単語推定装置の構成を示すブロック構成図である。
【図１１】本発明の第２実施形態に係る単語推定装置の動作を示すフローチャートである。
【図１２】本発明の第３実施形態に係る言語モデル学習装置の構成を示すブロック構成図である。
【図１３】リランキング手段でキャプション（説明文）の順位を入れ替える例を説明するための説明図である。
【図１４】本発明の第３実施形態に係る単語推定装置の構成を示すブロック構成図である。
【図１５】本発明の第４実施形態に係る言語モデル学習装置の構成を示すブロック構成図である。
【図１６】本発明の第４実施形態に係る単語推定装置の構成を示すブロック構成図である。
【図１７】参考例の実施形態に係る言語モデル学習装置の構成を示すブロック構成図である。
【図１８】参考例の実施形態に係る単語推定装置の構成を示すブロック構成図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施形態について図面を参照して説明する。
＜第１実施形態＞
［言語モデル学習装置の構成］
まず、図１を参照して、本発明の第１実施形態に係る言語モデル学習装置１の構成について説明する。
【００１９】
言語モデル学習装置１は、テキストデータである発話文と、当該発話文に関連した画像とから、言語モデルを学習するものである。言語モデルは、ある単語の次に続く単語の出現確率を出力するものである。言語モデル学習装置１は、言語モデルとして、再帰型ニューラルネットワークの言語モデル（ＲＮＮ−ＬＭ）を学習する。
【００２０】
発話文は、言語モデルを学習するための学習データである。例えば、発話文は、テレビ番組の字幕テキストまたは書き起こし、会議音声、取材音声等の書き起こし等の音声認識の対象となる分野に関連する文の単語列である。なお、発話文は、単語列の前後に文頭記号と文末記号とを含む。
この発話文は、図示を省略した形態素解析手段で解析された単語ごとに、順次、言語モデル学習装置１のモデル入力データ生成手段１２に入力され、当該単語の次に続く単語（次単語）については、さらに、教師データとして学習手段１３に入力される。
【００２１】
画像は、発話文と対となる言語モデルを学習するための学習データである。この画像は、発話文に関連したイメージデータである。例えば、画像は、発話文を発話したときのテレビ番組、映画等の画像である。この画像は、静止画像であってもよいし、動画像であってもよい。この画像は、言語モデル学習装置１の画像特徴解析手段１０に入力される。
【００２２】
図１に示すように、言語モデル学習装置１は、画像特徴解析手段１０と、キャプション生成モデル記憶手段１１と、モデル入力データ生成手段１２と、学習手段１３と、言語モデル記憶手段１４と、を備える。
【００２３】
画像特徴解析手段１０は、発話文に関連する画像を入力し、入力画像の特徴を解析するものである。画像特徴解析手段１０は、キャプション生成手段１００を備える。
キャプション生成手段１００は、画像の特徴として、画像の内容を示すキャプション（説明文）を生成するものである。
キャプション生成手段１００は、キャプション生成モデル記憶手段１１に記憶されている、画像からテキストデータであるキャプションをニューラルネットワークにより生成する学習済みのモデル（キャプション生成モデル）を用いて、入力された画像から複数のキャプションを生成する。
例えば、キャプション生成手段１００は、図２に示すような画像Ｇが入力された場合、「ストライプの服を着た女性がいます」、「部屋に大きな窓があります」、「女性が料理をしています」、「コンロの上に鍋があります」等のキャプションを生成する。
【００２４】
キャプション生成手段１００は、予め定めた数（例えば、１０文）のキャプションを、モデル入力データ生成手段１２に出力する。なお、キャプション生成モデルとして、信頼度順にキャプションを生成するモデルを用いる場合、キャプション生成手段１００は、信頼度の上位から予め定めた数（例えば、１０文）のキャプションを、モデル入力データ生成手段１２に出力することとしてもよい。
【００２５】
キャプション生成モデル記憶手段１１は、画像から、当該画像のキャプションを生成する予め学習されたキャプション生成モデルを記憶するものである。キャプション生成モデル記憶手段１１は、半導体メモリ等の一般的な記憶媒体で構成することができる。
キャプション生成モデルは、畳み込みニューラルネットワーク（ＣＮＮ：Convolutional Neural Network）により画像内の物体を認識し、ＲＮＮにより画像内の物体からキャプションを生成するモデルである。
キャプション生成モデルには、以下の参考文献に示すような公知の技術を用いることができる。
（参考文献）
Subhashini Venugopalan, Marcus Rohrbach, Jeff Donahue, Raymond Mooney, Trevor Darrell, and Kate Saenko. Sequence to sequence - video to text. In ICCV, 2015.
【００２６】
モデル入力データ生成手段１２は、言語モデルの入力層への入力となるデータを生成するものである。モデル入力データ生成手段１２は、入力単語ベクトル生成手段１２０と、キャプションベクトル生成手段１２１と、を備える。
【００２７】
入力単語ベクトル生成手段１２０は、順次入力される発話文の単語ごと（文頭記号、文末記号を含む）に、言語モデルの入力となるベクトル（入力単語ベクトル）を生成するものである。
具体的には、入力単語ベクトル生成手段１２０は、単語ごとに、該当する単語の成分のみを“１”、他を“０”とした語彙数分（数万程度）の次元の１−ｈｏｔベクトルを生成する。
【００２８】
この言語モデルに入力する入力単語ベクトルは、語彙数分の次元のベクトルである必要はなく、１−ｈｏｔベクトルを予め定めた次元（数百程度）のベクトルに写像したものを用いることが、言語モデルの学習にかかる演算を減らす意味で好ましい。例えば、入力単語ベクトル生成手段１２０は、ｗｏｒｄ２ｖｅｃ、ＧｌｏＶｅ（Global Vectors for Word Representation）等によって、入力単語ベクトルの次元数を数万程度から数百程度に変換する。
なお、入力単語ベクトル生成手段１２０は、後記するキャプション統合ベクトルとの整合性から、入力単語ベクトルの成分の最大値または総和が“１”となるように正規化することが好ましい。
入力単語ベクトル生成手段１２０は、生成した入力単語ベクトルを、学習手段１３に出力する。
【００２９】
キャプションベクトル生成手段１２１は、画像特徴解析手段１０で生成されたキャプションから、言語モデルの入力となるベクトル（キャプション統合ベクトル）を生成するものである。
具体的には、キャプションベクトル生成手段１２１は、画像特徴解析手段１０から入力される複数のキャプションごとに、キャプションに含まれる単語の成分を“１”、キャプションに含まれない単語の成分を“０”とした語彙数分（数万程度）次元のベクトル（キャプションベクトル）を生成する。
【００３０】
キャプションベクトル生成手段１２１は、入力単語ベクトルと同様に、キャプションベクトルを数百程度の次元数のベクトルに変換する。なお、キャプションベクトルには、複数の単語を含んでいるため、キャプションベクトル生成手段１２１は、単語ごとに、それぞれ数百程度の次元数のベクトルに変換した後、ベクトルを加算し、単語数で除算する。
【００３１】
そして、キャプションベクトル生成手段１２１は、複数のキャプションベクトルを足し合わせることで、キャプションベクトルを統合したベクトル（キャプション統合ベクトル）を生成する。
なお、キャプションが信頼度順に生成されている場合、キャプションベクトル生成手段１２１は、キャプションベクトルを、対応するキャプションの信頼度が高いほど大きい重みが付くように傾斜を付けて足し合わせることで、キャプションベクトルを統合したベクトル（キャプション統合ベクトル）を生成することとしてもよい。
例えば、キャプションの信頼度の順位をｎ（ｎ＝１〜１０；１が信頼度最大）としたとき、キャプションベクトル生成手段１２１は、キャプションから生成したキャプションベクトルの成分に（１１−ｎ）を乗算して、キャプションベクトルの成分ごとに足し合わせることで、キャプション統合ベクトルを生成する。
なお、キャプションベクトル生成手段１２１は、キャプション統合ベクトルの成分の最大値または総和が“１”となるように正規化することが好ましい。
【００３２】
キャプションベクトル生成手段１２１は、生成したキャプション統合ベクトルを、学習手段１３に出力する。ただし、キャプションベクトル生成手段１２１は、発話文の先頭を示す文頭記号から発話文の末尾を示す文末記号まで、同じキャプション統合ベクトルを出力することとする。
【００３３】
学習手段１３は、モデル入力データ生成手段１２で生成されたデータ（入力単語ベクトル、キャプション統合ベクトル）をＲＮＮの入力とし、発話文の単語の次に続く単語の出現確率を出力する言語モデルを学習するものである。
【００３４】
ここで、図３を参照して、言語モデルの構成例について説明する。図３に示す言語モデルは、一般的なＲＮＮの言語モデルの入力に画像特徴となるキャプション統合ベクトルを入力する構造としている。
図３に示すように、学習手段１３が学習する言語モデルＭは、入力層Ｌ１と、中間層Ｌ２と、出力層Ｌ３とで構成され、中間層Ｌ２の出力が再帰的に中間層Ｌ２の入力となる再帰型ニューラルネットワーク（ＲＮＮ）である。
【００３５】
入力層Ｌ１には、入力単語ベクトルｗｉとキャプション統合ベクトルｑｉとがそれぞれ独立して入力される。ここで、ｉは１〜ｎの整数であって、ｗ１は発話文の文頭記号に対応する入力単語ベクトル、ｗ２〜ｗｎ−１は発話文の単語に対応する入力単語ベクトル、ｗｎは発話文の文末記号に対応する入力単語ベクトルである。また、キャプション統合ベクトルは、発話文に対応する１つのベクトルであって、ｑ１＝ｑ２＝…＝ｑｎである。
【００３６】
中間層Ｌ２には、入力層Ｌ１で入力された入力単語ベクトルｗｉおよびキャプション統合ベクトルｑｉと、１単語前の中間層Ｌ２の出力ベクトルｖｉ−１とが学習対象であるモデルパラメータ（重み係数）に応じて重み付き加算され、中間層Ｌ２から出力ベクトルｖｉが出力される。
【００３７】
出力層Ｌ３からは、中間層Ｌ２から出力される出力ベクトルｖｉが学習対象であるモデルパラメータ（重み係数）に応じて重み付き加算され、語彙数分次元の出現単語ベクトルｗｉ＋１の各成分に、入力された単語の次に続く単語の出現確率Ｐ（ｗｉ＋１｜ｗｉ，ｖｉ−１，ｑｉ）を出力する。
【００３８】
なお、図３では、入力単語ベクトルｗｉと出力単語ベクトルｗｉ＋１とを、同じ語彙数分次元のベクトルとしているが、前記した通り、入力単語ベクトルｗｉは、語彙数分次元よりも次元数は少ない。
また、図３では、言語モデルＭをＲＮＮとして構成しているが、中間層Ｌ２において、ＲＮＮの改良型であるＬＳＴＭ（Long short-term memory）を用いてもよい。
図１に戻って、言語モデル学習装置１の構成について説明を続ける。
【００３９】
学習手段１３は、モデル入力データ生成手段１２で生成された入力単語ベクトルと、キャプションベクトル生成手段１２１で生成されたキャプション統合ベクトルとを、図３に示した言語モデルＭに入力し、教師データである次単語に対応する出力単語ベクトルの成分が“１”、他の成分が“０”となるように、言語モデルＭのモデルパラメータを学習する。なお、言語モデルのモデルパラメータを学習するには、一般的な誤差逆伝播法（Back Propagation）を用いればよい。
学習手段１３は、学習した言語モデルを言語モデル記憶手段１４に記憶する。
【００４０】
言語モデル記憶手段１４は、学習手段１３で学習された言語モデルＭ（図３参照）を記憶するものである。この言語モデル記憶手段１４は、ハードディスク、半導体メモリ等の一般的な記憶装置で構成することができる。
【００４１】
以上説明したように、言語モデル学習装置１は、発話文に対応する画像特徴（キャプション）を対応付けて、言語モデルを学習する構成とした。これによって、生成された言語モデルは、画像特徴と対応付けて次単語を推定する言語モデルとなり、次単語を推定する精度を高めることができる。
なお、言語モデル学習装置１は、コンピュータを、前記した各手段として機能させるためのプログラム（言語モデル学習プログラム）で動作させることができる。
【００４２】
［言語モデル学習装置の動作］
次に、図４を参照（構成については適宜図１参照）して、本発明の第１実施形態に係る言語モデル学習装置１の動作について説明する。
この言語モデル学習装置１には、予め単語に区分された発話文と、当該発話文に対応する画像とが、学習データとして入力される。
【００４３】
ステップＳ１において、画像特徴解析手段１０のキャプション生成手段１００は、キャプション生成モデル記憶手段１１に予め記憶されている学習済みのニューラルネットワークであるキャプション生成モデルを用いて、入力画像から、画像特徴として複数のキャプションを生成する。
【００４４】
ステップＳ２において、モデル入力データ生成手段１２のキャプションベクトル生成手段１２１は、ステップＳ１で生成された複数のキャプションから、キャプションに含まれる単語の成分を“１”、キャプションに含まれない単語の成分を“０”としたキャプションベクトルを生成する。このとき、キャプションベクトル生成手段１２１は、数万程度の次元数のキャプションベクトルを数百程度の次元数に写像することとする。
【００４５】
ステップＳ３において、キャプションベクトル生成手段１２１は、さらに、単語ごとのキャプションベクトルを成分ごとに足し合わせ、正規化することで、キャプション統合ベクトルを生成する。
【００４６】
ステップＳ４において、モデル入力データ生成手段１２の入力単語ベクトル生成手段１２０は、ステップＳ１で入力される画像に関連した発話文を単語ごとに入力し、該当する単語の成分のみを“１”、他を“０”とした語彙数分（数万程度）の次元の１−ｈｏｔベクトルを生成する。このとき、入力単語ベクトル生成手段１２０は、数万程度の次元数の１−ｈｏｔベクトルを数百程度の次元数の入力単語ベクトルに写像することとする。
【００４７】
ステップＳ５において、学習手段１３は、ステップＳ３で生成されたキャプション統合ベクトル、および、ステップＳ４で生成された入力単語ベクトルを入力し、現時点の単語の次の単語である次単語（教師データ）を出力するように、言語モデルを学習する。
ここで、発話文の単語として文末記号がまだ入力されていない場合（ステップＳ６でＮｏ）、言語モデル学習装置１は、ステップＳ４に戻って動作を続ける。
一方、発話文の単語として文末記号が入力された場合（ステップＳ６でＹｅｓ）、言語モデル学習装置１は、ステップＳ７に動作を進める。
【００４８】
ここで、学習データの入力が終了していない場合（ステップＳ７でＮｏ）、言語モデル学習装置１は、ステップＳ１に戻って、次の発話文および画像を学習データとして学習動作を続ける。
一方、学習データの入力が終了した場合（ステップＳ７でＹｅｓ）、言語モデル学習装置１は、動作を終了する。
【００４９】
［単語推定装置の構成］
次に、図５を参照して、本発明の第１実施形態に係る単語推定装置２の構成について説明する。
単語推定装置２は、言語モデル学習装置１（図１参照）で生成された言語モデルを用いて、入力単語の次に続く単語を出現確率とともに推定するものである。
この単語推定装置２は、図示を省略した音声認識装置内に備えられ、音声認識装置が音声認識を行う際に、ある単語の次に続く単語の出現確率を求める際に用いられる。
【００５０】
単語推定装置２に入力される単語は、音声認識装置内で音声を音響モデルで音響分析し、単語辞書を用いて変換された単語列（発話文）の認識候補となる単語（認識仮説）である。
また、単語推定装置２に入力される画像は、音声に対応した画像（テレビ番組、映画等の画像）であって、例えば、発話中の任意の時点の静止画像、あるいは、発話の開始から終了までの時間区間の動画像である。
【００５１】
図５に示すように、単語推定装置２は、画像特徴解析手段１０と、キャプション生成モデル記憶手段１１と、モデル入力データ生成手段１２と、言語モデル記憶手段２０と、推定手段２１と、を備える。
画像特徴解析手段１０、キャプション生成モデル記憶手段１１およびモデル入力データ生成手段１２は、図１で説明した言語モデル学習装置１の構成と同じであるため、説明を省略する。
【００５２】
言語モデル記憶手段２０は、言語モデル学習装置１で学習された言語モデル（ＲＮＮ−ＬＭ）を記憶するものである。この言語モデル記憶手段２０は、ハードディスク、半導体メモリ等の一般的な記憶装置で構成することができる。
【００５３】
推定手段２１は、モデル入力データ生成手段１２で生成されたデータ（入力単語ベクトル、キャプション統合ベクトル）をＲＮＮの入力とし、現時点までに入力された単語の次に続く単語を出現確率とともに推定するものである。
具体的には、推定手段２１は、言語モデル記憶手段２０に記憶されている図３で説明した言語モデルＭにおいて、入力単語ベクトルｗｉとキャプション統合ベクトルｑｉとを独立して入力し、再帰型ニューラルネットワークの演算を行うことで、単語の出現確率を示す出力単語ベクトルｗｉ＋１を生成する。
推定手段２１は、出力単語ベクトルの最大成分に対応する単語と、その成分（出現確率）とを、推定結果として外部に出力する。
【００５４】
以上説明したように、単語推定装置２は、画像特徴と対応付けて次単語を推定する言語モデルによって次単語を推定する構成とした。これによって、単語推定装置２は、単語以外の特徴から次単語を推定することができ、次単語を精度よく推定することができる。
なお、単語推定装置２は、コンピュータを、前記した各手段として機能させるためのプログラム（単語推定プログラム）で動作させることができる。
【００５５】
［単語推定装置の動作］
次に、図６を参照（構成については適宜図５参照）して、本発明の第１実施形態に係る単語推定装置２の動作について説明する。
この単語推定装置２には、音声の認識候補となる発話文の単語が順次入力されとともに、音声の発話中に対応する画像が入力される。
また、言語モデル記憶手段２０には、予め学習された言語モデルが記憶されているものとする。
【００５６】
図６のステップＳ１１からＳ１４までの動作は、図４で説明した言語モデル学習装置１の動作のステップＳ１からＳ４までの動作と同じであるため、説明を省略する。
ステップＳ１５において、推定手段２１は、ステップＳ１３で生成されたキャプション統合ベクトル、および、ステップＳ１４で生成された入力単語ベクトルを言語モデルに入力し、現時点の単語の次の単語である次単語とその出現確率とを推定する。
ここで、単語として文末記号がまだ入力されていない場合（ステップＳ１６でＮｏ）、単語推定装置２は、ステップＳ１４に戻って動作を続ける。
一方、単語として文末記号が入力された場合（ステップＳ１６でＹｅｓ）、単語推定装置２は、動作を終了する。
【００５７】
＜第２実施形態＞
［言語モデル学習装置の構成］
次に、図７を参照して、本発明の第２実施形態に係る言語モデル学習装置１Ｂの構成について説明する。
言語モデル学習装置１（図１参照）は、図３に示すように入力層Ｌ１に、入力単語ベクトルとキャプション統合ベクトルとを独立したベクトルとして入力する言語モデルＭを学習する構成とした。
図７に示す言語モデル学習装置１Ｂは、単語ごとの連続する入力単語ベクトルの先頭に、キャプション統合ベクトルを追加して、言語モデルの入力層に入力するベクトルを１つとした構成とする。
【００５８】
図７に示すように、言語モデル学習装置１Ｂは、画像特徴解析手段１０と、キャプション生成モデル記憶手段１１と、モデル入力データ生成手段１２Ｂと、学習手段１３Ｂと、言語モデル記憶手段１４Ｂと、を備える。
画像特徴解析手段１０およびキャプション生成モデル記憶手段１１は、図１で説明した言語モデル学習装置１と同じ構成であるため、説明を省略する。
【００５９】
モデル入力データ生成手段１２Ｂは、言語モデルの入力層への入力となるデータを生成するものである。モデル入力データ生成手段１２Ｂは、入力単語ベクトル生成手段１２０Ｂと、キャプションベクトル生成手段１２１Ｂと、を備える。
【００６０】
入力単語ベクトル生成手段１２０Ｂは、順次入力される発話文の単語ごとに、言語モデルの入力となるベクトル（入力単語ベクトル）を生成するものである。
なお、入力単語ベクトル生成手段１２０Ｂは、キャプションベクトル生成手段１２１Ｂで生成されるキャプション統合ベクトルを、発話文の文頭箇所に追加して入力単語ベクトルとして出力する。
【００６１】
具体的には、入力単語ベクトル生成手段１２０Ｂは、入力単語ベクトル生成手段１２０（図１参照）と同様、単語ごとに、該当する単語の成分のみを“１”、他を“０”とした語彙数分（数万程度）の次元の１−ｈｏｔベクトルを生成する。なお、入力単語ベクトル生成手段１２０Ｂは、１−ｈｏｔベクトルを予め定めた次元（数百程度）のベクトルに写像して入力単語ベクトルとすることが好ましい。この場合、入力単語ベクトル生成手段１２０Ｂは、入力単語ベクトルの成分の最大値が“１”となるように正規化する。
ここで、入力単語ベクトル生成手段１２０Ｂは、入力される単語列（文頭記号、文末記号を含む）を、順次、入力単語ベクトルに変換するが、文頭記号に対応するベクトルの前に、キャプションベクトル生成手段１２１Ｂで生成されたキャプション統合ベクトルを、入力単語ベクトルとして追加する。
入力単語ベクトル生成手段１２０Ｂは、生成した入力単語ベクトルを、学習手段１３Ｂに出力する。
【００６２】
キャプションベクトル生成手段１２１Ｂは、画像特徴解析手段１０で生成されたキャプションから、言語モデルの入力となるベクトルを生成するものである。
具体的には、キャプションベクトル生成手段１２１Ｂは、画像特徴解析手段１０から入力される複数のキャプションごとに、キャプションに含まれる単語の成分を“１”、キャプションに含まれない単語の成分を“０”とした語彙数分（数万程度）次元のベクトル（キャプションベクトル）を生成する。
キャプションベクトル生成手段１２１Ｂは、入力単語ベクトルと同様に、キャプションベクトルを数百程度の次元数（入力単語ベクトルと同じ次元数）のベクトルに変換する。なお、キャプションベクトルには、複数の単語を含んでいるため、キャプションベクトル生成手段１２１Ｂは、キャプションベクトル生成手段１２１と同様、単語ごとに、それぞれ数百程度の次元数のベクトルに変換した後、ベクトルを加算し、単語数で除算する。
【００６３】
そして、キャプションベクトル生成手段１２１Ｂは、複数のキャプションベクトルを足し合わせることで、キャプションの内容を統合したキャプション統合ベクトルを生成する。なお、キャプションが信頼度順に生成されている場合、キャプションベクトル生成手段１２１Ｂは、キャプションベクトルを、対応するキャプションの信頼度が高いほど大きい重みが付くように傾斜を付けて足し合わせることで、キャプション統合ベクトルを生成することとしてもよい。
また、キャプションベクトル生成手段１２１Ｂは、入力単語ベクトルとのスケールを揃えるように、キャプション統合ベクトルの成分の最大値が“１”となるように正規化する。
このように、キャプションベクトル生成手段１２１Ｂが生成するキャプション統合ベクトルは、入力単語ベクトルとスケールを揃えるため、入力単語ベクトルと同じ次元数で、成分の最大値が“１”となるように正規化されている点が、キャプションベクトル生成手段１２１（図１）が生成するキャプション統合ベクトルとは異なる。
キャプションベクトル生成手段１２１Ｂは、生成したキャプション統合ベクトルを、入力単語ベクトル生成手段１２０Ｂに出力する。
【００６４】
ここで、図８を参照して、モデル入力データ生成手段１２Ｂが生成するモデル入力データである入力単語ベクトルについて説明する。
図８は、モデル入力データ生成手段１２Ｂが生成する、言語モデルＭＢの入力層Ｌ１に入力する入力単語ベクトルｗ１，ｗ２，…，ｗｎを示している。
【００６５】
入力単語ベクトルｗ１は、キャプションベクトル生成手段１２１Ｂが生成したキャプション統合ベクトルである。例えば、入力単語ベクトルｗ１は、キャプションである「女性が料理をしています」の個々の単語に対応する成分を“１”、他の成分を“０”としたベクトルである。
入力単語ベクトルｗ２は、文頭記号を示すベクトルである。
入力単語ベクトルｗ３…は、入力単語ベクトル生成手段１２０Ｂが生成した発話文の単語ごとの入力単語ベクトルである。例えば、入力単語ベクトルｗ３は、単語「フライ」に対応する成分のみを“１”、他の成分を“０”としたベクトルである。
入力単語ベクトルｗｎは、文末記号を示すベクトルである。
【００６６】
なお、ここでは、入力単語ベクトルを、語彙数分次元のベクトルとしているが、前記した通り、入力単語ベクトルｗｉは、語彙数分次元よりも少ない次元数に写像したベクトルである。
また、ここでは、入力単語ベクトルｗ１のキャプション統合ベクトルを、「女性が料理をしています」の一文のみの例で示しているが、実際は、複数のキャプションが統合されたものである。
【００６７】
このように、モデル入力データ生成手段１２Ｂは、キャプション統合ベクトルを、文頭記号の入力単語ベクトルの前に追加する。
これによって、モデル入力データ生成手段１２Ｂは、画像特徴であるキャプションを、単語列に付加することができる。
図７に戻って、言語モデル学習装置１Ｂの構成について説明を続ける。
【００６８】
学習手段１３Ｂは、モデル入力データ生成手段１２Ｂで生成された入力単語ベクトルをＲＮＮの入力とし、発話文の単語の次に続く単語の出現確率を出力する言語モデルを学習するものである。
図８に示すように、学習手段１３Ｂが学習する言語モデルＭＢは、入力層Ｌ１と、中間層Ｌ２と、出力層Ｌ３とで構成され、中間層Ｌ２の出力が再帰的に中間層Ｌ２の入力となる再帰型ニューラルネットワーク（ＲＮＮ）である。
言語モデルＭＢは、入力層Ｌ１への入力が１つのベクトルのみである点以外は、言語モデルＭ（図３）と同じである。
【００６９】
学習手段１３Ｂは、モデル入力データ生成手段１２Ｂで生成された入力単語ベクトルを、図８に示した言語モデルＭＢに入力し、教師データである次単語に対応する出力単語ベクトルの成分が“１”、他の成分が“０”となるように、言語モデルＭＢのモデルパラメータを学習する。
なお、学習手段１３Ｂは、入力単語ベクトルが前の発話文における文末記号である場合、すべての成分が“０”となるベクトルを教師データとして学習する。また、学習手段１３Ｂは、入力単語ベクトルがキャプション統合ベクトルの場合、文頭記号を教師データとして学習する。また、学習手段１３Ｂは、入力単語ベクトルが文頭記号である場合、発話文の先頭の単語を教師データとして学習し、以降、発話文の次単語を順次教師データとして学習する。
この言語モデルのモデルパラメータを学習するには、一般的な誤差逆伝播法を用いればよい。
学習手段１３は、学習した言語モデルを言語モデル記憶手段１４Ｂに記憶する。
【００７０】
言語モデル記憶手段１４Ｂは、学習手段１３Ｂで学習された言語モデルＭＢ（図８参照）を記憶するものである。この言語モデル記憶手段１４Ｂは、ハードディスク、半導体メモリ等の一般的な記憶装置で構成することができる。
【００７１】
以上説明したように、言語モデル学習装置１Ｂは、発話文に対応する画像特徴（キャプション）を、発話文の先頭に付加して、言語モデルを学習する構成とした。これによって、生成された言語モデルは、画像特徴と対応付けて次単語を推定する言語モデルとなり、次単語を推定する精度を高めることができる。
なお、言語モデル学習装置１Ｂは、コンピュータを、前記した各手段として機能させるためのプログラム（言語モデル学習プログラム）で動作させることができる。
【００７２】
［言語モデル学習装置の動作］
次に、図９を参照（構成については適宜図７参照）して、本発明の第２実施形態に係る言語モデル学習装置１Ｂの動作について説明する。ここでは、図４の言語モデル学習装置１の動作との相違点を主に説明する。
【００７３】
ステップＳ２０〜Ｓ２２は、図４のステップＳ１〜Ｓ３と同じ動作である。
ただし、ステップＳ２２において、入力単語ベクトルのスケールと揃えるため、キャプション統合ベクトルの成分の最大値が“１”となるように正規化しておく。
ステップＳ２３において、学習手段１３Ｂは、ステップＳ２２で生成されたキャプション統合ベクトルを入力単語ベクトルとして入力し、文頭記号を教師データとして言語モデルを学習する。
【００７４】
ステップＳ２４において、モデル入力データ生成手段１２Ｂの入力単語ベクトル生成手段１２０Ｂは、ステップＳ２０で入力される画像に関連した発話文を単語ごとに入力し、該当する単語の成分のみを“１”、他を“０”とした語彙数分（数万程度）の次元の１−ｈｏｔベクトルを生成する。このとき、入力単語ベクトル生成手段１２０Ｂは、数万程度の次元数の１−ｈｏｔベクトルを数百程度の次元数の入力単語ベクトルに写像することとする。ただし、ステップＳ２４において、キャプション統合ベクトルとスケールを揃えるため、入力単語ベクトルの成分の最大値が“１”となるように正規化しておく。
【００７５】
ステップＳ２５において、学習手段１３Ｂは、ステップＳ２４で生成された入力単語ベクトルを入力し、現時点の単語の次の単語である次単語を教師データとして言語モデルを学習する。ただし、入力単語ベクトルが文末記号に対応するベクトルである場合、すべての成分が“０”となるベクトルを教師データとして言語モデルを学習する。
【００７６】
ここで、発話文の単語として文末記号がまだ入力されていない場合（ステップＳ２６でＮｏ）、言語モデル学習装置１Ｂは、ステップＳ２４に戻って動作を続ける。
一方、発話文の単語として文末記号が入力された場合（ステップＳ２６でＹｅｓ）、言語モデル学習装置１Ｂは、ステップＳ２７に動作を進める。
【００７７】
ここで、学習データの入力が終了していない場合（ステップＳ２７でＮｏ）、言語モデル学習装置１Ｂは、ステップＳ２０に戻って、次の発話文および画像を学習データとして学習動作を続ける。
一方、学習データの入力が終了した場合（ステップＳ２７でＹｅｓ）、言語モデル学習装置１Ｂは、動作を終了する。
【００７８】
［単語推定装置の構成］
次に、図１０を参照して、本発明の第２実施形態に係る単語推定装置２Ｂの構成について説明する。
単語推定装置２Ｂは、言語モデル学習装置１Ｂ（図７参照）で生成された言語モデルを用いて、入力単語の次に続く単語を出現確率とともに推定するものである。
この単語推定装置２Ｂは、単語推定装置２（図５参照）と同様、図示を省略した音声認識装置内に備えられ、音声認識装置が音声認識を行う際に、ある単語の次に続く単語の出現確率を求める際に用いられる。
【００７９】
図１０に示すように、単語推定装置２Ｂは、画像特徴解析手段１０と、キャプション生成モデル記憶手段１１と、モデル入力データ生成手段１２Ｂと、言語モデル記憶手段２０Ｂと、推定手段２１Ｂと、を備える。
画像特徴解析手段１０、キャプション生成モデル記憶手段１１およびモデル入力データ生成手段１２Ｂは、図７で説明した言語モデル学習装置１Ｂの構成と同じであるため、説明を省略する。
【００８０】
言語モデル記憶手段２０Ｂは、言語モデル学習装置１Ｂで学習された言語モデル（ＲＮＮ−ＬＭ）を記憶するものである。この言語モデル記憶手段２０Ｂは、ハードディスク、半導体メモリ等の一般的な記憶装置で構成することができる。
【００８１】
推定手段２１Ｂは、モデル入力データ生成手段１２Ｂで生成されたデータ（入力単語ベクトル）をＲＮＮの入力とし、現時点までに入力された単語の次に続く単語を出現確率とともに推定するものである。
具体的には、推定手段２１Ｂは、言語モデル記憶手段２０Ｂに記憶されている図８で説明した言語モデルＭＢにおいて、入力単語ベクトルｗｉを入力し、再帰型ニューラルネットワークの演算を行うことで、単語の出現確率を示す出力単語ベクトルｗｉ＋１を生成する。
推定手段２１Ｂは、出力単語ベクトルの最大成分に対応する単語と、その成分（出現確率）とを、推定結果として外部に出力する。
【００８２】
以上説明したように、単語推定装置２Ｂは、画像特徴と対応付けて次単語を推定する言語モデルによって次単語を推定する構成とした。これによって、単語推定装置２Ｂは、単語以外の特徴から次単語を推定することができ、次単語を精度よく推定することができる。
なお、単語推定装置２Ｂは、コンピュータを、前記した各手段として機能させるためのプログラム（単語推定プログラム）で動作させることができる。
【００８３】
［単語推定装置の動作］
次に、図１１を参照（構成については適宜図１０参照）して、本発明の第２実施形態に係る単語推定装置２Ｂの動作について説明する。ここでは、図９の言語モデル学習装置１Ｂの動作との相違点を主に説明する。
【００８４】
ステップＳ３０からＳ３２までの動作は、図９で説明した言語モデル学習装置１ＢのステップＳ２０からＳ２２までの動作と同じであるため、説明を省略する。
ステップＳ３３において、推定手段２１Ｂは、ステップＳ３２で生成されたキャプション統合ベクトルを入力単語ベクトルとして言語モデルに入力し、文頭記号の出現確率を推定する。
ステップＳ３４は、図９のステップＳ２４と同じ動作である。
ステップＳ３５において、推定手段２１Ｂは、ステップＳ３４で生成された入力単語ベクトルを言語モデルに入力し、現時点の単語の次の単語である次単語とその出現確率とを推定する。
【００８５】
ここで、単語として文末記号がまだ入力されていない場合（ステップＳ３６でＮｏ）、単語推定装置２Ｂは、ステップＳ３４に戻って動作を続ける。
一方、単語として文末記号が入力された場合（ステップＳ３６でＹｅｓ）、単語推定装置２Ｂは、動作を終了する。
【００８６】
＜第３実施形態＞
［言語モデル学習装置］
次に、図１２を参照して、本発明の第３実施形態に係る言語モデル学習装置１Ｃについて説明する。
言語モデル学習装置１（図１参照）は、画像特徴として、画像のキャプションとして、予め学習したキャプション生成モデルが出力する信頼度の上位から予め定めた数のキャプションを、モデル入力データ生成手段１２に出力する構成とした。
図１２に示す言語モデル学習装置１Ｃは、画像のキャプションを、発話文に類似するキャプションの信頼度を高くする（リランキングする）構成とする。
【００８７】
図１２に示すように、言語モデル学習装置１Ｃは、画像特徴解析手段１０Ｃと、キャプション生成モデル記憶手段１１と、モデル入力データ生成手段１２と、学習手段１３と、言語モデル記憶手段１４と、を備える。
画像特徴解析手段１０Ｃ以外の構成は、図１で説明した言語モデル学習装置１と同じ構成であるため、説明を省略する。
【００８８】
画像特徴解析手段１０Ｃは、発話文に関連する画像を入力し、入力画像の特徴を解析するものである。
画像特徴解析手段１０Ｃは、キャプション生成手段１００と、リランキング手段１０１と、を備える。キャプション生成手段１００は、図１で説明した言語モデル学習装置１と同じ構成であるため、説明を省略する。
【００８９】
リランキング手段１０１は、キャプション生成手段１００で生成された複数のキャプションを、発話文の意味に近い順に優先度をつける（リランキングする）ものである。
例えば、キャプション生成手段１００が、図１３に示すような画像Ｇを入力し、「ストライプの服を着た女性がいます」、「部屋に大きな窓があります」、「女性が料理をしています」、「コンロの上に鍋があります」等のキャプションを生成したとする。
また、ここで、発話文が「フライが揚がりました」であったとする。
この場合、例えば、「女性が料理をしています」が、「フライが揚がりました」に対して最も意味が近いものとなる。
そこで、リランキング手段１０１は、より発話文に意味が近いキャプションの順に、例えば、図１３の例の場合、「女性が料理をしています」、「コンロの上に鍋があります」、「部屋に大きな窓があります」、「ストライプの服を着た女性がいます」のように優先度の順位を入れ替える。
【００９０】
なお、発話文とキャプションとで意味の近さの度合いは、発話文のベクトル表現とキャプションのベクトル表現との類似度（ベクトル同士のなす角度の近さを示すコサイン類似度）を用いればよい。
具体的には、リランキング手段１０１は、発話文およびキャプションのそれぞれの単語列において、単語ごとの分散表現ベクトルから、単語列の分散表現ベクトルを平均化することで、発話文およびキャプションのそれぞれのベクトル表現を生成する。
【００９１】
なお、分散表現ベクトルは、意味が近い（分散の特徴が近い）単語を近いベクトルに対応させて、単語を有限の高次元（例えば、数百次元）の数値ベクトルで表現したものである。この分散表現ベクトルは、例えば、ｗｏｒｄ２ｖｅｃ、ＧｌｏＶｅ等の一般的な手法により生成したものを用いることができる。
そして、リランキング手段１０１は、コサイン類似度によって、キャプションの順位を入れ替える。
リランキング手段１０１は、優先度の順位を入れ替えたキャプションを、モデル入力データ生成手段１２に出力する。
【００９２】
以上説明したように、言語モデル学習装置１Ｃは、発話文に意味が近い画像特徴（キャプション）を対応付けて、言語モデルを学習する構成とした。これによって、生成された言語モデルは、意味が近い画像特徴と対応付けて次単語を推定する言語モデルとなり、次単語を推定する精度を高めることができる。
また、言語モデル学習装置１Ｃは、コンピュータを、前記した各手段として機能させるためのプログラム（言語モデル学習プログラム）で動作させることができる。
【００９３】
なお、言語モデル学習装置１Ｃの動作は、図４で説明した言語モデル学習装置１の動作のステップＳ１において、リランキング手段１０１がキャプションの順位を発話文の意味に近い順に入れ替える動作を付加すればよい。他の動作は、図４で説明した言語モデル学習装置１の動作と同じであるため、説明を省略する。
【００９４】
［単語推定装置］
次に、図１４を参照して、本発明の第３実施形態に係る単語推定装置２Ｃについて説明する。
単語推定装置２Ｃは、言語モデル学習装置１Ｃ（図１２参照）で生成された言語モデルを用いて、入力単語の次に続く単語を出現確率とともに推定するものである。
この単語推定装置２Ｃは、単語推定装置２（図５参照）と同様、図示を省略した音声認識装置内に備えられ、音声認識装置が音声認識を行う際に、ある単語の次に続く単語の出現確率を求める際に用いられる。
【００９５】
図１４に示すように、単語推定装置２Ｃは、画像特徴解析手段１０Ｃと、キャプション生成モデル記憶手段１１と、モデル入力データ生成手段１２と、言語モデル記憶手段２０と、推定手段２１と、を備える。
画像特徴解析手段１０Ｃは、図１２で説明した言語モデル学習装置１Ｃの構成と同じであり、キャプション生成モデル記憶手段１１、モデル入力データ生成手段１２、言語モデル記憶手段２０および推定手段２１は、図５で説明した単語推定装置２の構成と同じであるため、説明を省略する。
また、単語推定装置２Ｃは、コンピュータを、前記した各手段として機能させるためのプログラム（単語推定プログラム）で動作させることができる。
【００９６】
なお、単語推定装置２Ｃの動作は、図６で説明した単語推定装置２の動作のステップＳ１において、リランキング手段１０１がキャプションの順位を発話文の意味に近い順に入れ替える動作を付加すればよい。他の動作は、図６で説明した単語推定装置２の動作と同じであるため、説明を省略する。
【００９７】
＜第４実施形態＞
第３実施形態に係る言語モデル学習装置１Ｃおよび単語推定装置２Ｃは、それぞれ、第１実施形態に係る言語モデル学習装置１（図１）および単語推定装置２（図５）の画像特徴解析手段１０にリランキング手段１０１を付加する構成とした。
【００９８】
このリランキング手段１０１は、第２実施形態に係る言語モデル学習装置１Ｂ（図７）および単語推定装置２Ｂ（図１０）の画像特徴解析手段１０に付加して構成してもよい。
例えば、言語モデル学習装置１Ｂ（図７）にリランキング手段１０１を付加する場合、図１５に示す言語モデル学習装置１Ｄとして構成すればよい。
また、単語推定装置２Ｂ（図１０）にリランキング手段１０１を付加する場合、図１６に示す単語推定装置２Ｄとして構成すればよい。
言語モデル学習装置１Ｄおよび単語推定装置２Ｄの構成および動作は、言語モデル学習装置１Ｂ（図７），１Ｃ（図１２）および単語推定装置２Ｂ（図１０），２Ｃ（図１４）の構成および動作と重複するため、説明を省略する。
【００９９】
＜参考例の実施形態＞
第１〜第４実施形態では、言語モデルを学習する際、および、言語モデル用いて次単語を推定する際に、発話文に対応する画像特徴として、キャプションを言語モデルの入力として用いる構成とした。
しかし、この画像特徴は、キャプション以外にも、画像内に含まれる物体の特徴を用いてもよい。以下、キャプションの代わりに物体の特徴を用いる言語モデル学習装置および単語推定装置の例について説明する。
【０１００】
［言語モデル学習装置］
図１７に、参考例の実施形態に係る言語モデル学習装置１Ｅの構成を示す
図１７に示すように、言語モデル学習装置１Ｅは、画像特徴解析手段１０Ｅと、物体認識モデル記憶手段１１Ｅと、モデル入力データ生成手段１２Ｅと、学習手段１３Ｅと、言語モデル記憶手段１４Ｅと、を備える。
【０１０１】
画像特徴解析手段１０Ｅは、発話文に関連する画像を入力し、入力画像の特徴を解析するものである。画像特徴解析手段１０Ｅは、画像特徴量抽出手段１００Ｅを備える。
画像特徴量抽出手段１００Ｅは、画像内の物体を認識する予め学習済みのニューラルネットワークのモデル（物体認識モデル）を用いて、画像特徴量を抽出するものである。
画像特徴量抽出手段１００Ｅは、物体認識モデル記憶手段１１Ｅに記憶されている物体認識モデルに、画像のデータを入力し、物体認識モデルの中間層または出力層のデータを画像特徴量として抽出する。
画像特徴量抽出手段１００Ｅは、抽出した画像特徴量をモデル入力データ生成手段１２Ｅに出力する。
【０１０２】
物体認識モデル記憶手段１１Ｅは、画像から、当該画像内の物体を認識する予め学習された物体認識モデルを記憶するものである。物体認識モデル記憶手段１１Ｅは、半導体メモリ等の一般的な記憶媒体で構成することができる。
この物体認識モデルは、ＶＧＧ１６等の一般的物体認識モデルを、当該言語モデルの分野、例えば、発話文と同じ分野の画像によって転移学習したものを用いることができる。
なお、このような一般的物体認識モデルでは、中間層または出力層のデータとして抽出される画像特徴量は、１０００次元程度のデータとなる。
【０１０３】
モデル入力データ生成手段１２Ｅは、言語モデルの入力層への入力となるデータを生成するものである。モデル入力データ生成手段１２Ｅは、入力単語ベクトル生成手段１２０と、画像特徴ベクトル生成手段１２１Ｅと、を備える。
入力単語ベクトル生成手段１２０は、図１で説明した言語モデル学習装置１と同じ構成であるため説明を省略する。
【０１０４】
画像特徴ベクトル生成手段１２１Ｅは、画像特徴解析手段１０で抽出された画像特徴量から、言語モデルの入力となるベクトル（画像特徴ベクトル）を生成するものである。
画像特徴ベクトル生成手段１２１Ｅは、画像特徴解析手段１０で抽出された１０００次元程度の高次元のデータから、言語モデルの入力層の予め定めた次元数（数百程度）の画像特徴ベクトルを生成する。なお、この次元数の圧縮は、一般的なＰＣＡ（主成分分析）等により行うことができる。
画像特徴ベクトル生成手段１２１Ｅは、生成した画像特徴ベクトルを、学習手段１３Ｅに出力する。ただし、画像特徴ベクトル生成手段１２１Ｅは、発話文の先頭を示す文頭記号から発話文の末尾を示す文末記号まで、同じ画像特徴ベクトルを出力することとする。
【０１０５】
学習手段１３Ｅは、モデル入力データ生成手段１２Ｅで生成されたデータ（入力単語ベクトル、画像特徴ベクトル）をＲＮＮの入力とし、発話文の単語の次に続く単語の出現確率を出力する言語モデルを学習するものである。
学習手段１３Ｅが学習する言語モデルは、図３で説明した言語モデルＭの入力層Ｌ１に入力するキャプション統合ベクトルを画像特徴ベクトルに代えたモデルである。
【０１０６】
言語モデル記憶手段１４Ｅは、学習手段１３Ｅで学習された言語モデルを記憶するものである。この言語モデル記憶手段１４Ｅは、ハードディスク、半導体メモリ等の一般的な記憶装置で構成することができる。
【０１０７】
以上説明したように、言語モデル学習装置１Ｅは、画像特徴と対応付けて次単語を推定する言語モデルを学習するができる。
なお、言語モデル学習装置１Ｅの動作は、図４で説明した言語モデル学習装置１の動作において、キャプションの代わりに物体認識モデルにおける画像特徴量を用いる点が異なる以外、基本的な流れは同じであるため、説明を省略する。
【０１０８】
［単語推定装置］
図１８に、参考例の実施形態に係る単語推定装置２Ｅの構成を示す
図１８に示すように、単語推定装置２Ｅは、画像特徴解析手段１０Ｅと、物体認識モデル記憶手段１１Ｅと、モデル入力データ生成手段１２Ｅと、言語モデル記憶手段２０Ｅと、推定手段２１Ｅと、を備える。
画像特徴解析手段１０Ｅ、物体認識モデル記憶手段１１Ｅおよびモデル入力データ生成手段１２Ｅは、図１４で説明した言語モデル学習装置１Ｅの構成と同じであるため、説明を省略する。
【０１０９】
言語モデル記憶手段２０Ｅは、言語モデル学習装置１Ｅで学習された言語モデル（ＲＮＮ−ＬＭ）を記憶するものである。この言語モデル記憶手段２０Ｅは、ハードディスク、半導体メモリ等の一般的な記憶装置で構成することができる。
【０１１０】
推定手段２１Ｅは、言語モデル記憶手段２０Ｅに記憶されている言語モデルを用いて、モデル入力データ生成手段１２Ｅで生成されたデータ（入力単語ベクトル、画像特徴ベクトル）をＲＮＮの入力とし、現時点までに入力された単語の次に続く単語を出現確率とともに、出力単語ベクトルとして推定するものである。
推定手段２１は、出力単語ベクトルの最大成分に対応する単語と、その成分（出現確率）とを、推定結果として外部に出力する。
【０１１１】
以上説明したように、単語推定装置２Ｅは、単語以外の特徴から次単語を推定することができ、次単語を精度よく推定することができる。
なお、単語推定装置２Ｅの動作は、図６で説明した単語推定装置２の動作において、キャプションの代わりに物体認識モデルにおける画像特徴量を用いる点が異なる以外、基本的な流れは同じであるため、説明を省略する。
【符号の説明】
【０１１２】
１，１Ｂ，１Ｃ，１Ｄ，１Ｅ  言語モデル学習装置
１０，１０Ｃ          画像特徴解析手段
１００                キャプション生成手段
１００Ｅ              画像特徴量抽出手段
１０１                リランキング手段
１１                  キャプション生成モデル記憶手段
１１Ｅ                物体認識モデル記憶手段
１２，１２Ｂ，１２Ｅ  モデル入力データ生成手段
１２０，１２０Ｂ      入力単語ベクトル生成手段
１２１，１２１Ｂ      キャプションベクトル生成手段
１２１Ｅ              画像特徴ベクトル生成手段
１３，１３Ｂ          学習手段
１４，１４Ｂ          言語モデル記憶手段
２，２Ｂ，２Ｃ，２Ｄ，２Ｅ  単語推定手段
２０，２０Ｂ          言語モデル記憶手段
２１，２１Ｂ          推定手段
【図１】
2019219827.tif 000003
【図２】
2019219827.tif 000004
【図３】
2019219827.tif 000005
【図４】
2019219827.tif 000006
【図５】
2019219827.tif 000007
【図６】
2019219827.tif 000008
【図７】
2019219827.tif 000009
【図８】
2019219827.tif 000010
【図９】
2019219827.tif 000011
【図１０】
2019219827.tif 000012
【図１１】
2019219827.tif 000013
【図１２】
2019219827.tif 000014
【図１３】
2019219827.tif 000015
【図１４】
2019219827.tif 000016
【図１５】
2019219827.tif 000017
【図１６】
2019219827.tif 000018
【図１７】
2019219827.tif 000019
【図１８】
2019219827.tif 000020