(57)【要約】【課題】言葉によるデータ合成を可能にする技術を提供する、【解決手段】データ合成装置は、自然言語で記述可能なオブジェクトに関する合成可能なデータである要素オブジェクトを予め蓄積したデータベースと、自然言語の文からコンセプトまたはコンテキストの少なくとも一方を抽出する抽出部と、前記コンセプトまたは前記コンテキストを所定の特徴空間におけるベクトルで表現した特徴ベクトルに変換する変換部と、入力された特徴ベクトルに従って要素オブジェクトを合成するニューラルネットワークモデルを予め保持しており、前記ニューラルネットワークモデルおよび前記特徴ベクトルに基づき、前記データベースから要素オブジェクトを選択し該要素オブジェクトを用いて合成データを生成する合成部と、を有する。【選択図】図２
2019045984.tif 000002
【特許請求の範囲】
【請求項１】
自然言語で記述可能なオブジェクトに関する合成可能なデータである要素オブジェクトを予め蓄積したデータベースと、
自然言語の文からコンセプトまたはコンテキストの少なくとも一方を抽出する抽出部と、
前記コンセプトまたは前記コンテキストを所定の特徴空間におけるベクトルで表現した特徴ベクトルに変換する変換部と、
入力された特徴ベクトルに従って要素オブジェクトを合成するニューラルネットワークモデルを予め保持しており、前記ニューラルネットワークモデルおよび前記特徴ベクトルに基づき、前記データベースから要素オブジェクトを選択し該要素オブジェクトを用いて合成データを生成する合成部と、
を有するデータ合成装置。
【請求項２】
前記要素オブジェクトは、所定の対象物を表現する画像のデータであるオブジェクト画像を含み、
前記合成データは、前記オブジェクト画像により合成される合成画像を含み、
前記ニューラルネットワークモデルは、前記コンセプトと前記コンテキストの少なくとも一方の特徴ベクトルを入力とし、前記データベースからオブジェクト画像を取得し、取得した前記オブジェクト画像を用いて合成画像を生成する、
請求項１に記載のデータ合成装置。
【請求項３】
前記抽出部は、前記文を意味解釈が可能な最小単位である最小エンティティのうち、名詞である最小エンティティに関連するコンセプトを抽出し、前記名詞である最小エンティティと他の最小エンティティとを接続してコンテキストを生成する、請求項１に記載のデータ合成装置。
【請求項４】
前記画像合成部は複数のオブジェクト画像を重ね合わせてまたは並べて配置することにより前記合成画像を生成する、
請求項２に記載のデータ合成装置。
【請求項５】
前記ニューラルネットワークモデルは、ジェネレータとディスクリミネータという互いに敵対する２つのモデルで学習を行うＧｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋｓによるニューラルネットワークモデルであり、前記ジェネレータにより前記合成画像を生成する、
請求項２に記載のデータ合成装置。
【請求項６】
前記ニューラルネットワークモデルの学習に用いるコンセプトを選択するコンセプト選択部と、
前記ニューラルネットワークモデルの学習に用いるコンテキストを生成するコンテキスト生成部と、
前記ニューラルネットワークモデルにより生成された合成画像を評価する判定部と、
を更に有し、
前記変換部が、前記コンセプト選択部により選択された前記コンセプトと、前記コンテキスト生成部により生成された前記コンテキストとを特徴ベクトルに変換し、
前記合成部が、前記ニューラルネットワークモデルおよび前記特徴ベクトルに基づき、前記データベースから要素オブジェクトを選択し該要素オブジェクトを用いて合成データを生成し、
前記判定部が、前記合成データを評価し、
前記合成データが所定の評価を得られなければ前記合成部および前記判定部の処理を繰り返す、
請求項１に記載のデータ合成装置。
【請求項７】
前記要素オブジェクトは、画像の要素となる視覚的な表現を示す視覚表現オブジェクトであり、
前記合成部は、前記特徴ベクトルに基づいて前記視覚表現オブジェクトを組み合わせることにより合成画像を生成する、
請求項１に記載のデータ合成装置。
【請求項８】
前記視覚表現オブジェクトには、前記合成画像に表示する物体の特徴を表すパッチが含まれ、
前記合成部は、前記オブジェクト画像を前記パッチにより修正し、前記修正したオブジェクト画像により合成画像を作成する、
請求項７に記載のデータ合成装置。
【請求項９】
前記合成データを生成する過程で得られた、前記合成データの生成に利用した要素オブジェクトに関する情報を利用してゼロショット学習を行い、前記ニューラルネットワークモデルを更新する更新部を更に有する、請求項１に記載のデータ合成装置。
【請求項１０】
前記更新部は、前記合成データを生成する過程で得られた、前記合成データの生成に利用した要素オブジェクトに関する情報が、前記データベースに蓄積されたオブジェクト画像に与えられていない情報であることを認識すると、前記ゼロショット学習を行うことを決定する、
請求項９に記載のデータ合成装置。
【請求項１１】
要素オブジェクトに関する情報を利用してゼロショット学習を行い、前記ニューラルネットワークモデルを更新する更新部を更に有し、
前記抽出部が、前記ニューラルネットワークモデルの学習のために与えられたサンプル文からコンセプトまたはコンテキストの少なくとも一方を抽出し、
前記変換部が、前記コンセプトまたは前記コンテキストを所定の特徴空間におけるベクトルで表現した特徴ベクトルに変換し、
前記更新部が、前記特徴ベクトルの情報を利用してゼロショット学習を行い、前記ニューラルネットワークモデルを更新する、
請求項１に記載のデータ合成装置。
【請求項１２】
前記更新部が、Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋｓを用いた敵対的訓練によるゼロショット学習により前記ニューラルネットワークモデルを更新する、請求項９または１１に記載のデータ合成装置。
【請求項１３】
入力された特徴ベクトルに従って要素オブジェクトを合成するニューラルネットワークモデルを予め保持し、
自然言語で記述可能なオブジェクトに関する合成可能なデータである要素オブジェクトを予め蓄積したデータベースを備え、
抽出手段が、自然言語の文からコンセプトまたはコンテキストの少なくとも一方を抽出し、
変換手段が、前記コンセプトまたは前記コンテキストを所定の特徴空間におけるベクトルで表現した特徴ベクトルに変換し、
合成手段が、前記ニューラルネットワークモデルおよび前記特徴ベクトルに基づき、前記データベースから要素オブジェクトを選択し、該要素オブジェクトを用いて合成データを生成する、
データ合成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、言葉によるデータ合成を可能にする技術に関する。
【背景技術】
【０００２】
画像と自然言語の言葉を関連付けることにより画像の様々な応用が可能となる。例えば、画像と言葉を関連づけると言葉による画像検索が可能となる。画像と言葉を関連付ける技術として、例えば、画像アノテーション技術がある。画像アノテーション技術は、対象画像の画像領域から特徴量を抽出し、予め特徴を学習しメタデータを付与してある画像の中から対象画像に最も近い特徴量を有する画像を選択し、その画像のメタデータを対象画像に付与する技術である。また、特許文献１には、学習用画像から複数の特徴量を抽出し、バイナリ識別器を用いて複数の特徴量を分類し、識別情報と特徴量とを対応付けるための学習モデルを識別情報及び特徴量の種類毎に作成し、識別情報の条件付確率を求める計算式をシグモイド関数で近似し、識別情報の条件付確率が最大となるようにシグモイド関数のパラメータを最適化することで識別情報毎に学習モデルを最適化する技術が開示されている。それにより、画像に信頼性の高い識別情報を付与することができる。
【０００３】
また画像合成技術として、四角いキャンバスの中に「山」「海」のような言葉を配置して、画像を合成する技術もある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−０３８２４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年では画像の新たな活用が求められている。例えば、言葉で表現した所望の画像を作り出すことも求められる。しかしながら、上述した従来の画像アノテーション技術は、データベースの中から所望の画像を選択するものであり、新たな画像を作り出すことはできない。言葉を配置して画像を合成する技術では、単純な位置関係を表現することはできるが、「走って電車に乗る」といった時間的空間的関係や動作状況を表現することができず、こうした画像を合成することができない。また、従来の画像合成技術では、大量の画像とその画像に対する説明文を学習させることで、テキストから画像を生成するモデルを構築するが、学習データに含まれない未知の事象に対して適切な画像を生成することは困難である。
また、上述した画像と同様に音声やセンサデータなど他の様々なデータも自然言語の言葉と関連付けることができれば、そのデータの活用も大きく広がることが考えられる。
【０００６】
本発明の目的は、言葉によるデータ合成を可能にする技術を提供することである。
【課題を解決するための手段】
【０００７】
本発明の一つの態様に従うデータ合成装置は、自然言語で記述可能なオブジェクトに関する合成可能なデータである要素オブジェクトを予め蓄積したデータベースと、自然言語の文からコンセプトまたはコンテキストの少なくとも一方を抽出する抽出部と、前記コンセプトまたは前記コンテキストを所定の特徴空間におけるベクトルで表現した特徴ベクトルに変換する変換部と、入力された特徴ベクトルに従って要素オブジェクトを合成するニューラルネットワークモデルを予め保持しており、前記ニューラルネットワークモデルおよび前記特徴ベクトルに基づき、前記データベースから要素オブジェクトを選択し該要素オブジェクトを用いて合成データを生成する合成部と、を有する。
【発明の効果】
【０００８】
本発明によれば、特徴ベクトルに従って要素オブジェクトを合成するニューラルネットワークモデルを予め保持し、自然言語の文からコンセプトとコンテキストの少なくとも一方を抽出し、それらを特徴ベクトルに変換し、ニューラルネットワークモデルに基づき要素オブジェクトを合成して合成データを生成するので、自然言語の文で表現されたユーザ所望の合成データを、データベースに蓄積された要素オブジェクトから生成することができる。また、学習に用いていない未知のシーンの画像を生成することができる。
【図面の簡単な説明】
【０００９】
【図１】実施例１による画像合成システムの物理構成を示すブロック図である。
【図２】実施例１による画像合成装置のブロック図である。
【図３】実施例１による画像合成処理のフローチャートである。
【図４】実施例１による画像合成処理のシーケンス図である。
【図５】実施例１による画像合成装置の動作例を示すシーケンス図である。
【図６】実施例２による画像合成装置のブロック図である。
【図７】実施例２による機械学習処理のフローチャートである。
【図８】実施例３による画像合成システムの物理構成を示すブロック図である。
【図９】実施例３による端末のブロック図である。
【図１０】実施例４によるデータベースが蓄積するデータの一例を示す図である。
【図１１】実施例５による画像合成装置のブロック図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について図面を参照して説明する。
【実施例１】
【００１１】
図１は、実施例１による画像合成システムの物理構成を示すブロック図である。図１を参照すると、画像合成システムは、端末１００、画像合成装置２００、およびデータベース３００を有している。端末１００と画像合成装置２００は通信ネットワーク１０１で接続され、画像合成装置２００は通信ネットワーク２０１で接続される。通信ネットワーク１０１は例えばインターネットである。通信ネットワーク２０１は例えばＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。
【００１２】
端末１００は、ユーザ１０が直接利用する情報端末であり、例えば、パーソナルコンピュータ、タブレット端末、スマートフォンなどである。ユーザ１０の指示により、ユーザが所望する合成画像を自然言語で表現した文の情報を画像合成装置２００に送り、文に合った画像の合成を要求する。また、端末１００は、画像合成装置２００が作成した合成画像のデータを画像合成装置２００から受信し、内部の記憶措置（不図示）にデータを記録するとともに合成画像を画面に表示する。
【００１３】
データベース３００は、画像合成に利用する様々な画像のデータを、画像合成装置２００から取得可能に蓄積するデータベースである。データベース３００には、様々な物をそれぞれ表示する画像（オブジェクト画像）のデータが蓄積されている。オブジェクト画像にはその画像に表示されている物を示す情報（ラベル）が付加されている。例えば、オブジェクト画像には、その画像に表示されている物の名称の情報がラベルとして付加されている。
【００１４】
画像合成装置２００は、ユーザ１０が操作する端末１００からの要求に従い、データベース３００に蓄積されたデータを利用して、ユーザ１０の所望する画像（合成画像）を合成する計算機である。
【００１５】
図２は、実施例１による画像合成装置のブロック図である。図２を参照すると、画像合成装置２００は、文処理部２１０、コンセプト抽出部２２０、コンテキスト抽出部２３０、エンベディング変換部２４０、画像合成部２５０、および画像出力部２６０を有している。
【００１６】
文処理部２１０は、端末１００から受信した文を解析し、意味の解釈が可能な最小単位のエンティティ（以下「最小エンティティ」という）変換するとともに各エンティティの品詞を判断する。これにより文はコンセプト抽出部２２０およびコンテキスト抽出部２３０にて処理可能な形式となる。
【００１７】
コンセプト抽出部２２０は、文処理部２１０にて解析された文からコンセプトを抽出する。具体的には例えば、コンセプト抽出部２２０は、文処理部２１０による解析により得られたエンティティのうち、品詞が名詞であるものを入力としコンセプトとして抽出すればよい。
【００１８】
コンセプトは例えば、名詞に対する属性や特徴の関係性を記述したものである。例えば「犬」に対して「動物」「毛」といった関連語句が記述される。
【００１９】
コンテキスト抽出部２３０は、文処理部２１０にて解析された文からコンテキストを抽出する。具体的には例えば、コンテキスト抽出部２３０は、コンセプト抽出部２２０で抽出されたコンセプトをそのままコンテキストとしたもの、文処理部２１０による解析により得られたエンティティのうち動詞など名詞以外の品詞の最小エンティティとコンセプトとを接続したもの、動詞でコンセプトとコンセプトを接続したものをコンテキストとして抽出すればよい。
【００２０】
コンテキストは語句の文章表現の関係性を記述したものである。例えば「犬」と「走る」といった関係性が記述される。
【００２１】
エンベディング変換部２４０は、コンセプトおよびコンテキストを、特徴空間におけるベクトルである特徴ベクトルに変換する。特徴ベクトルにより、コンセプトあるいはコンテキストの意味が表現される。これにより、コンセプトおよびコンテキストの意味を特徴ベクトルにより処理することが可能となる。本実施例では、コンセプトおよびコンテキストの特徴ベクトルがニューラルネットワークモデルの入力となる。
【００２２】
画像合成部２５０は、機械学習により得たニューラルネットワーク（ＮＮ）モデルを予め保持しており、エンベディング変換部２４０で生成されたコンセプトの特徴ベクトルに応じたオブジェクト画像をデータベース３００から取得し、コンセプトおよびコンテキストの特徴ベクトルとＮＮモデルとに基づいてオブジェクト画像を配置することにより合成画像を生成する。例えば、ＮＮモデルは、コンセプトを含むコンテキストの特徴ベクトルを入力とし、合成画像またはその生成方法を出力する。ＮＮモデルでは、入力された特徴ベクトルからレイヤ毎に高次元平面が生成され、最終平面ではコンテキストにおけるコンセプトを解釈した合成画像が出力される。合成画像の生成方法には、例えば、どのオブジェクト画像を用いるか、オブジェクト画像をどのような位置関係に配置するか、などが含まれる。例えば、画像合成部２５０は、ＮＮモデルの出力に従って、コンセプト抽出部２２０で抽出されたコンセプトに対応するオブジェクト画像をデータベース３００から取得し、そのオブジェクト画像を、コンテキスト抽出部２３０で抽出されたコンテキストに基づいて配置することにより合成画像を生成すればよい。
【００２３】
本方式では、コンセプトとコンテキストの両方の特徴と出力画像が紐づけられるようにＮＮモデルが構成されていることを特徴とする。これによりコンセプトのみで学習したＮＮモデルでは合成することができない、事前に関係性が学習されていない対象についても画像を合成することができる。例えば、「雲の中を泳ぐ人」のような、実例のない画像を合成することができる。
【００２４】
画像出力部２６０は、画像合成部２５０で生成された合成画像のデータを端末１００に送信する。
【００２５】
図３は、実施例１による画像合成処理のフローチャートである。図３を参照すると、まずステップＳ２１０にて、文処理部２１０が、端末１００から受信した文を解析する。次にステップＳ２２０にて、コンセプト抽出部２２０が、文処理部２１０にて解析された文からコンセプトを抽出する。続いてステップＳ２３０にて、コンテキスト抽出部２３０が、文処理部２１０にて解析された文からコンテキストを抽出する。
【００２６】
なお、文の複雑さによっては、コンセプトのみを抽出することで画像の合成は可能である。また、ここでは、コンセプトの抽出の次にコンテキストの抽出を行う例を示しているが、この順序に限定されることはない。他の例として、コンセプトとコンテキストを同時に抽出してもよい。
【００２７】
次にステップＳ２４０では、エンベディング変換部２４０が、コンセプトおよびコンテキストを、特徴空間におけるベクトルである特徴ベクトルに変換する。例えば、Ｗｏｒｄ２Ｖｅｃにより個々のコンセプトおよびコンテキストを高次元のベクトル表現されたフィーチャにマッピングすることができる。コンセプトあるいはコンテキストの意味が特徴ベクトルで表現される。これにより、コンセプトおよびコンテキストの意味を演算処理することが可能となる。
【００２８】
更にステップＳ２５０にて、画像合成部２５０が、コンセプトの特徴ベクトルに応じたオブジェクト画像をデータベース３００から取得し、ＮＮモデルを利用して、コンセプトおよびコンテキストの特徴ベクトルに基づき、オブジェクト画像を配置することにより合成画像を生成する。そしてステップＳ２６０にて、画像出力部２６０が、画像合成部２５０で生成された合成画像のデータを端末１００に送信する。
【００２９】
図４は、実施例１による画像合成処理のシーケンス図である。図４を参照すると、ステップＳ５０１にて、端末１００から画像合成装置２００に文が送信される。ステップＳ５０２にて、画像合成装置２００でコンセプトが抽出される。ステップＳ５０３にて、画像合成装置２００からデータベース３００に、抽出されたコンセプトに合う画像が要求される。ステップＳ５０４にて、要求された、コンセプトに合った画像がデータベース３００から画像合成装置２００に返信される。ステップＳ５０５にて、画像合成装置２００でコンテキストが抽出される。ステップＳ５０６にて、コンセプトに合った画像をコンテキストに従って合成した合成画像が生成される。ステップＳ５０７にて、合成画像が画像合成装置２００から端末１００に返送される。
【００３０】
図５は、実施例１による画像合成装置の動作例を示すシーケンス図である。
【００３１】
端末１１０は、ステップＳ６１０にて、ユーザ１０入力した“Man running to train at station.”という文を画像合成装置２００に送信する。
【００３２】
画像合成装置２００では、文を最小エンティティに分割する。そして、画像合成装置２００は、最小エンティティの例に変換された文からコンセプトを抽出する。最小エンティティは、例えば、"Man：A"、"Running：P"、"Train：B"、"at station：C"などである。更に、画像合成装置２００は、それらのコンセプトが存在するコンテキストを文から抽出する。図５の例では以下のようなコンテキストを抽出することができる。これらのコンセプトおよびコンテキストがＮＮモデルの入力となる。ここで、Ａ、Ｂ、Ｃ、Ｐ等のアルファベットはコンセプトあるいはコンテキストに付与される識別符号である。
Man:A
Train:B
At Station:C
Man:A running:P
Man:A running:P Train:B
Train:B at station:C
Man:A running:P at Station:C
【００３３】
画像合成装置２００は、ステップＳ６０２にて、コンセプトを取得し、ステップＳ６０３にて、コンセプトに対応する画像をデータベース３００に要求する。この例では、manとtrainの画像が要求されている。ステップＳ６０４にて、データベース３００から画像合成装置２００に、コンセプトに対応する画像が返信される。この例では、男の画像と駅に停車している電車の画像が返信されている。画像合成装置２００は、ステップＳ６０５にて、コンテキストを取得し、ステップＳ６０６にて、画像を合成する。ここでは、manの画像とtrainの画像を重ね合わせて配置することにより、二次元の合成画像を生成している。画像合成装置２００は、ステップＳ６０７にて、作成した合成画像のデータを端末１００に送信する。画像合成は、コンセプトおよびコンテキスト、コンテキストのみ、あるいはコンセプトのみから合成が可能である。
【００３４】
なお、本実施例では、画像を合成する例を示したが、画像と同様にオーディオデータやセンサデータなど他の様々なデータについても自然言語の言葉と関連付けることができれば、そのデータの活用も大きく広がることが考えられる。様々なデータについて、合成可能なデータである要素オブジェクトを用いて合成データを生成することができる。
【００３５】
以上、説明したように、本実施例による画像合成装置２００は、自然言語で記述可能なオブジェクトに関する合成可能なデータ（画像データ）である要素オブジェクト（オブジェクト画像）を予め蓄積したデータベース３００と、自然言語の文からコンセプトまたはコンテキストの少なくとも一方を抽出する抽出部（コンセプト抽出部２２０、コンテキスト抽出部２３０）と、コンセプトまたはコンテキストを所定の特徴空間におけるベクトルで表現した特徴ベクトルに変換する変換部（エンベディング変換部２４０）と、入力された特徴ベクトルに従って要素オブジェクトを合成するニューラルネットワークモデルを予め保持しており、ニューラルネットワークモデルおよび特徴ベクトルに基づき、データベースから要素オブジェクトを選択しその要素オブジェクトを用いて合成データ（合成画像）を生成する合成部（画像合成部２５０）と、を有している。このように、特徴ベクトルに従って要素オブジェクトを合成するニューラルネットワークモデルを予め保持し、自然言語の文からコンセプトとコンテキストの少なくとも一方を抽出し、それらを特徴ベクトルに変換し、ニューラルネットワークモデルに基づき要素オブジェクトを合成して合成データを生成するので、自然言語の文で表現されたユーザ所望の合成データを、データベースに蓄積された要素オブジェクトから生成することができる。画像についてみると、要素オブジェクトとしてオブジェクト画像をデータベースに予め保持し、自然言語の文からコンセプトとコンテキストの少なくとも一方を抽出し、それらを特徴ベクトルに変換し、ニューラルネットワークモデルに基づきオブジェクト画像を合成して合成画像を生成するので、自然言語の文で表現されたユーザ所望の合成画像タを生成することができる。
【００３６】
また、抽出部は、文を意味解釈が可能な最小単位である最小エンティティのうち、名詞である最小エンティティをコンセプトとし、他の最小エンティティとコンセプトを接続してコンテキストを生成する。名詞をコンセプトとし、コンセプトと他の最小エンティティを接続してコンテキストを生成するので、文で表現された物を解釈して合成データに反映させることができる。
【００３７】
また、画像合成部は複数のオブジェクト画像を重ね合わせてまたは並べて配置することにより前記合成画像を生成する。比較的少ない処理量で合成画像を生成することができる。
【００３８】
また、本実施例では、どのような画像合成方法を用いてもよい。例えば、ニューラルネットワークモデルは、ジェネレータとディスクリミネータという互いに敵対する２つのモデルで学習を行うＧｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋｓによるニューラルネットワークモデルであり、ジェネレータにより合成画像を生成する。ユーザの所望するものに比較的近い合成画像を生成することができる。また、より単純な方法として、複数の画像を組み合わせて配置するコラージュにより合成画像を生成してもよい。
【実施例２】
【００３９】
実施例１は、画像合成システムが学習済みのニューラルネットワークモデルを予め備え、そのＮＮモデルを用いて画像を合成する例を示した。実施例２では、画像合成システムがＮＮモデルを学習し、学習したＮＮモデルを用いて画像を合成する例を示す。
【００４０】
実施例２による画像合成システムは、図１に示した実施例１のものと同様の物理構成を有する。
【００４１】
図６は、実施例２による画像合成装置のブロック図である。実施例２による画像合成装置は、図２に示した実施例１のものとは、コンセプト選択部３１０、コンテキスト生成部３２０、画像判定部３５０、および終了条件判定部３６０を有する点で異なっている。
【００４２】
実施例２による画像合成処理は、図３および図４に示した実施例１のものと同様の処理である。
【００４３】
図７は、実施例２による機械学習処理のフローチャートである。
【００４４】
まず、ステップＳ３１０にて、コンセプト選択部３１０が、様々ある既知のコンセプトから、例えばランダムにあるいは所定の選択方法によりコンセプトを選択する。次に、ステップＳ３２０にて、コンテキスト生成部３２０が、そのコンセプトを含む自然なコンテキストを生成する。例えば、自然言語の様々な文を蓄積しておき、その中から、選択されたコンセプトを含む文をコンテキストとして抽出することにしてもよい。
【００４５】
次に、ステップＳ３３０にて、エンベディング変換部２４０が、コンセプトおよびコンテキストを特徴ベクトルに変換する。このときエンベディング変換部２４０は、実施例１にて説明した画像合成時と同様の方法で、コンセプトおよびコンテキストを特徴ベクトルに変換すればよい。エンベディング変換部２４０で生成された特徴ベクトルは、実施例１にて説明した画像合成時と同様に、画像合成部２５０に提供される。
【００４６】
次に、ステップＳ３４０にて、画像合成部２５０は、コンセプトおよびコンテキストの特徴ベクトルをＮＮモデルに入力することにより合成画像を生成する。このとき画像合成部２５０は、実施例１にて説明した画像合成時と同様の方法で画像合成を行う。
【００４７】
次に、ステップＳ３５０にて、画像判定部３５０が、作成された合成画像が、コンセプトとコンテキストを正しく表現したものとなっているか否か判定する。合成画像がコンセプトおよびコンテキストを正しく表現したものでなければ、ステップＳ３４０に戻って画像合成をやり直す。合成画像がコンセプトおよびコンテキストを正しく表現したものとなっていれば、次に、ステップＳ３６０にて、終了条件判定部３６０が、所定の終了条件が成立しているか否か判定する。終了条件が成立していれば、機械学習処理は終了する。終了条件が成立していなければ、ステップＳ３１０に戻る。終了条件は例えば所定回数だけ機械学習処理がループしたら終了としてもよい。あるいは、所定時間だけ機械学習処理を行ったら終了としてもよい。
【００４８】
なお、本実施例も実施例１と同様に、オーディオデータやセンサデータなど画像データ以外のデータにも適用可能である。
【００４９】
以上説明したように、本実施例では、画像合成装置２００は、ニューラルネットワークモデルの学習に用いるコンセプトを選択するコンセプト選択部３１０と、ニューラルネットワークモデルの学習に用いるコンテキストを生成するコンテキスト生成部３２０と、ニューラルネットワークモデルにより生成された合成画像を評価する判定部（画像判定部３５０）と、を更に有している。そして、変換部（エンベディング変換部２４０）が、コンセプト選択部３１０により選択されたコンセプトと、コンテキスト生成部３２０により生成されたコンテキストとを特徴ベクトルに変換する。合成部（画像合成部２５０）が、ニューラルネットワークモデルおよび特徴ベクトルに基づき、データベース３００から要素オブジェクト（オブジェクト画像）を選択しその要素オブジェクトを用いて合成データを生成する。判定部が、合成データを評価し、合成データが所定の評価を得られなければ合成部および判定部の処理を繰り返す。データ合成装置がデータ合成の機械学習を行うことができるので、ニューラルネットワークモデルを自身で学習して自身で利用するということが可能となる。
【実施例３】
【００５０】
実施例１は、ユーザ１０が端末１００から入力した自然言語の文書に基づいて画像合成装置２００が画像を合成し、端末１００に送信する例を示した。実施例３では、端末が単独で画像合成を行う例を示す。
【００５１】
図８は、実施例３による画像合成システムの物理構成を示すブロック図である。図８を参照すると、画像合成システムは端末１１０のみで構成されている。端末１１０は、例えば、パーソナルコンピュータ、タブレット端末、スマートフォンなどの情報機器である。図９は、実施例３による端末のブロック図である。図９を参照すると、実施例３による端末１１０は、入力部４１０、表示部４２０、データベース記憶部４３０、文処理部２１０、コンセプト抽出部２２０、コンテキスト抽出部２３０、エンベディング変換部２４０、および画像合成部２５０を有している。
【００５２】
文処理部２１０、コンセプト抽出部２２０、コンテキスト抽出部２３０、エンベディング変換部２４０、および画像合成部２５０は、図２に示した実施例１において画像合成装置２００が備えていたものと同様である。
【００５３】
入力部４１０は、ユーザ１０が生成したい画像に関する文を入力する入力操作部である。
【００５４】
表示部４２０は、画像合成部２５０で生成された合成画像を表示する表示部である。
【００５５】
データベース記憶部４３０は、図２のデータベース３００に相当するオブジェクト画像のデータを蓄積する記憶部である。
【実施例４】
【００５６】
実施例１では、データベース３００に多数のオブジェクト画像を蓄積しておき、画像合成部２５０は、データベース３００から特定のオブジェクト画像を取得し、それらのオブジェクト画像を合成することにより合成画像を作成した。オブジェクト画像は、人間、電車、うさぎ、など所定の対象物の画像である。しかし、本発明が実施例１の構成および処理に限定されることはない。視覚表現オブジェクトを組み合わせることにより合成画像を生成するものであればよい。視覚表現オブジェクトには、対象物の画像だけでなく、対象物の外観上の特徴を示すパッチも含まれる。パッチにより画像上で対象物の外観上の特徴を修正することが可能である。特徴は、うさぎの例をとれば、「白い毛皮」「短い脚」「長い耳」などであり、それを、うさぎのオブジェクト画像に、白い毛皮のパッチを組み合わせて「白いウサギ」の画像を生成することができる。
【００５７】
実施例４では、データベース３００に、視覚表現オブジェクトとして、オブジェクト画像の他に、対象物の外観上の詳細な特徴を示すパッチを蓄積しておき、オブジェクト画像とパッチを用いて所望のオブジェクト画像を作成する例を示す。実施例４の画像合成装置２００の基本的な構成は、図２に示した実施例１のものと同様である。実施例４では、画像合成部２５０は、オブジェクト画像とパッチを用いて所望のオブジェクト画像を作成し、その作成したオブジェクト画像を用いて合成画像を作成する。
【００５８】
図１０は、実施例４によるデータベースが蓄積するデータの一例を示す図である。図１０を参照すると、データベース３００には、オブジェクト画像５１０と、それに付随するパッチ５２０が蓄積されている。画像合成部２５０は、ユーザ１０が入力した文から抽出されたコンセプトおよびコンテキストに基づき、ＮＮモデルを用いて、オブジェクト画像をパッチで修正し、修正した画像を組み合わせて合成画像を生成する。
【００５９】
なお、本実施例も、画像データだけでなく、オーディオデータやセンサデータなど他のデータにも適用可能である。
【００６０】
以上説明したように、本実施例によれば、要素オブジェクト（オブジェクト画像）は、画像の要素となる視覚的な表現を示す視覚表現オブジェクトであり、合成部（画像合成部２５０）は、特徴ベクトルに基づいて視覚表現オブジェクトを組み合わせることにより合成画像を生成する。自然言語の文で表現されたユーザ所望の画像を、視覚表現オブジェクトを組み合わせて合成することができる。
【００６１】
また、視覚表現オブジェクトには、合成画像に表示する物体の特徴を表すパッチが含まれ、合成部は、オブジェクト画像をパッチにより修正し、修正したオブジェクト画像により合成画像を作成する。パッチによりユーザが所望する合成画像に適するようにオブジェクト画像を修正するので、よりユーザの所望に近い合成画像の生成が可能となる。
【実施例５】
【００６２】
実施例１に示した例は、予め学習により取得したＮＮモデルを使用して画像合成を行う例であった。しかし、本発明がこれに限定されることはない。他の例として、実施例５では、ＮＮモデルを用いた画像合成により得られる情報を利用してゼロショット学習を行い、ＮＮモデルを更新していく例を示す。合成画像を生成する過程で、合成画像を生成するのに利用したオブジェクト画像が何を示しているかに関する情報（以下「オブジェクト画像情報」という）が得られる。本実施例では、合成データを生成する過程で得られたオブジェクト画像情報を利用してゼロショット学習を行い、ＮＮモデルを更新する。合成データの生成で得られた情報を用いたゼロショット学習によりＮＮモデルを更新するので、言葉によるデータ合成の性能を継続的に向上させることができる。
【００６３】
実施例５による画像合成システムの物理構成は図１に示した実施例１のものと同様である。実施例５の画像合成装置２００は実施例１のものと一部が異なる。図１１は、実施例５による画像合成装置のブロック図である。
【００６４】
図１１を参照すると、画像合成装置２００は、文処理部２１０、コンセプト抽出部２２０、コンテキスト抽出部２３０、エンベディング変換部２４０、画像合成部２５０、画像出力部２６０、およびモデル更新部６１０を有している。実施例５の画像合成装置２００は、実施例１のものと同様に画像合成を行うことができ、文処理部２１０、コンセプト抽出部２２０、コンテキスト抽出部２３０、エンベディング変換部２４０、画像合成部２５０、および画像出力部２６０は、図２に示した実施例１のものと同様である。
【００６５】
データベース３００に蓄積されたオブジェクト画像には、オブジェクト画像に表示された対象物に関する情報がメタデータ（ラベル）として付加されている。モデル更新部６１０は、画像合成部２５０で合成画像を生成する過程に得られた、合成画像の生成に利用したオブジェクト画像に関するオブジェクト画像情報が、データベース３００に蓄積されたオブジェクト画像に与えられていない情報（以下「サンプルなしオブジェクト画像情報」という）であることを認識する。例えば、データベース３００に蓄積されていない物に関する情報、あるいは、データベース３００に蓄積されたオブジェクト画像に付加されていない情報が考えられる。モデル更新部６１０は、サンプルなしオブジェクト画像情報を認識すると、そのサンプルなしオブジェクト画像情報を利用してＮＮモデルのゼロショット学習を行うことを決定する。モデル更新部６１０は、モデル更新部６１０は、画像合成部２５０で合成画像を生成する過程に得られた、合成画像の生成に利用したオブジェクト画像に関するオブジェクト画像情報を利用してゼロショット学習を行うことによりＮＮモデルを更新する。その後、画像合成部２５０は、更新されたＮＮモデルを用いて画像合成を行う。サンプルが与えられていない情報を認識すると、その情報をゼロショット学習に利用するので、サンプルが与えられていない情報を効率よくゼロショット学習することができる。
【００６６】
なお、モデル更新部６１０はどのようなタイミングでゼロショット学習を実行してもよいが、例えば、一定期間間隔で行ってもよいし、管理者が指示したタイミングで行ってもよい。
【実施例６】
【００６７】
実施例５では、画像合成装置２００は、ユーザの要求した合成画像を生成する過程で得られる情報を用いてゼロショット学習を行う例を示したが、本発明がこれに限定されることはない。他の例として実施例６では、ＮＮモデルのゼロショット学習に利用するための文（以下「サンプル文」という）を画像合成装置に与え、画像合成装置は、そのサンプル文を用いて、コンセプト抽出、コンテキスト抽出、およびエンベディング変換を行い、その過程で得られた、オブジェクト画像が何を示しているかに関するオブジェクト画像情報をゼロショット学習に利用する。ただし、ＮＮモデルのゼロショット学習に利用するために与えられたサンプル文に対する処理では、画像合成部２５０は画像合成を行わない。合成画像を生成する処理は負荷の高い処理であるが、本実施例では、合成画像を実際に生成するまでの処理を完結しなくてもオブジェクト画像情報が得られるので、それをゼロショット学習に利用するというものである。
【００６８】
コンセプト抽出、コンテキスト抽出、およびエンベディング変換を行うことによりコンセプトおよびコンテキストが特徴ベクトルで表現した情報（以下「フィーチャ情報」という）される。実施例６では、合成画像の生成まで行わずに得られたフィーチャ情報がゼロショット学習に利用される。そのために実施例６では、ＮＮモデルのゼロショット学習に利用するフィーチャ情報を取得するために、コンセプト抽出、コンテキスト抽出、およびエンベディング変換の処理が実行される。
【００６９】
実施例６による画像合成システムの物理構成は図１に示した実施例１（あるいは実施例５）のものと同様である。実施例６の画像合成装置２００の構成は図１１に示した実施例５による画像合成装置と同様である。
【００７０】
画像合成装置２００に対してゼロショット学習のためにサンプル文が与えられる。サンプル文は、仮想的な合成画像に関する文であり、ＮＮモデルの学習のための文である。コンセプト抽出部２２０は、実施例１のものと同様に、サンプル文からコンセプトを抽出する。コンテキスト抽出部２３０は、実施例１のものと同様に、サンプル文からコンテキストを抽出する。更に、エンベディング変換部２４０は、コンセプトおよびコンテキストを特徴ベクトルに変換する。これらによりオブジェクト画像情報（フィーチャ情報）が得られる。ただし、画像合成部２５０は、サンプル文に対する処理では画像合成を行わない。モデル更新部６１０は、オブジェクト画像情報（フィーチャ情報）を利用してゼロショット学習を行うことによりＮＮモデルを更新する。合成データを生成しなくてもゼロショット学習によりＮＮモデルを更新することができ処理量が少ないので、高速な学習が可能であり、言葉によるデータ合成の性能を迅速に向上させることができる。
【実施例７】
【００７１】
実施例５では、一般的なニューラルネットワークのゼロショット学習手法を用いてＮＮモデルを更新する例を示したが、実施例７では、ＧＡＮ（Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋｓ）を用いた敵対的訓練によるゼロショット学習によりＮＮモデルを更新する例を示す。実施例７では、全てのコンセプトおよびコンテキストの特徴が知られているわけではなく、ゼロショット学習が行われる。コンセプトおよびコンテキストの特徴の限定されたサブセットが与えられると、画像合成装置は、２つのコンセプトの特徴を選択し、それら２つのコンセプトの特徴の間に新しい特徴を合成することができる。その結果として得られる特徴は、いずれのコンセプトではなく、両方を混合したものとなる。そのような特徴を計算し、ＮＮモデルを訓練するために可能なアプローチの一例を以下に示す。
【００７２】
実施例７による画像合成システムの物理構成は図１に示した実施例１（あるいは実施例５）のものと同様である。また、実施例７による画像合成装置の構成は図１１に示した実施例５のものと同様である。本実施例のモデル更新部６１０は、条件生成モデルを用いて多様な学習用のサンプルを生成し、ＧＡＮ（Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋｓ）を用いた敵対的訓練によるゼロショット学習によりＮＮモデルを更新する。条件生成モデルで学習用のサンプルを生成し、ＧＡＮによるゼロショット学習でニューラルネットワークモデルを更新するので、ＮＮモデルによるデータ合成を継続的に改善し、ＮＮモデルを堅牢にすることができる。
【００７３】
本実施例のゼロショット学習について説明する。ここでは以下の表記法に従う。学習データＤを式（１）のように表す。
【数１】
2019045984.tif 000003
【００７４】
ここで画像ｘｎは式（２）に示すように画像集合の要素である。
【数２】
2019045984.tif 000004
【００７５】
ｙｉは画像ｘｉのラベルであり、それらのラベルは、式（３）に示す既知のクラスのラベル空間から得られる。
【数３】
2019045984.tif 000005
【００７６】
未知のクラスのラベル空間を式（４）で示すものとする。
【数４】
2019045984.tif 000006
【００７７】
式（５）に示す既知の各クラスはワンショット表現または単語エンベディング（単語の特徴ベクトル）で表現することができるものとする。
【数５】
2019045984.tif 000007
【００７８】
本実施例におけるゼロショット学習の目標は、未知の画像を正しいクラスラベル（クラスを示すラベル）のマッピングに近づけるようにマッピングすることができる、最適な意味的エンベディング（意味を表す特徴ベクトル）を見つけることである。つまり、画像とクラスラベルを、ある画像のエンベディングはその画像と同じクラスラベルのエンベディングに近く、ある画像のエンベディングはその画像と異なるクラスのラベルのエンベディングと異なるという意味空間に投影することを目的とする。最小化の目的となる損失を式（６）のように示すことができる。
【数６】
2019045984.tif 000008
【００７９】
ここで、ｄ（ｘｉ，ｙｉ）は、画像の意味的エンベディングと同じクラスのラベルの意味的エンベディングとの間の類似性を示す指標である。類似性の指標として、セマンティックマッチングで広く用いられているドット積を用いている。
【００８０】
ここで、条件生成モデルをＧｅｎ（ｙｉ，ｚ）と表す。ラベルｙｉは、画像ｘｉの単語エンベディング（単語の特徴ベクトル）である。生成モデルＧｅｎは、画像ｘｉと同じ分布から、画像合成において条件として用いる視覚的特徴を出力するＮＮモデルである。以下、この視覚的特徴を式（７）に示す記号で示すものとする。
【数７】
2019045984.tif 000009
【００８１】
また、単語エンベディングｙｉの補間は式（８）のように表すことができる。
【数８】
2019045984.tif 000010
【００８２】
式（８）の補間は生成モデルＧｅｎの入力とみなされ、視覚的特徴空間における補間ｕｉを得ることができる。生成された視覚的特徴に対する２つの損失関数（式（９）および式（１０））を得ることができる。
【数９】
2019045984.tif 000011
【００８３】
式（９）および式（１０）は、視覚的特徴空間における補間ｕｉで補間された視覚的特徴のマッピングが単語エンベディングｙｉと単語エンベディングｙｊのマッピングの間にあることを意味する。ＮＮモデルで生成された視覚的特徴（式（７））に対して以下の式（１１）および式（１２）の損失関数を用いることができる。
【数１０】
2019045984.tif 000012
【００８４】
式（１１）および式（１２）のＬを最小化することは、ＮＮモデルで生成される視覚的特徴のマッピングを画像ｘｉのものに近づけようとすることを意味する。式（９）および式（１０）は、ｘｉ、ｙｉ、およびｙｊを識別する関係を崩さないように補間ｕｉを決めようとするものである。この式（１１）および式（１２）を用いることにより、より多様なサンプルの視覚的特徴を用いて式（６）を訓練することができる。
【００８５】
上述した各実施例は、本発明の説明のための例示であり、本発明の範囲をそれらに限定する趣旨ではない。当業者は、本発明の範囲を逸脱することなしに、他の様々な態様で本発明を実施することができる。
【符号の説明】
【００８６】
１０…ユーザ、１００…端末、１０１…通信ネットワーク、１１０…端末、２００…画像合成装置、２０１…通信ネットワーク、２１０…文処理部、２２０…コンセプト抽出部、２３０…コンテキスト抽出部、２４０…エンベディング変換部、２５０…画像合成部、２６０…画像出力部、３００…データベース、３１０…コンセプト選択部、３２０…コンテキスト生成部、３５０…画像判定部、３６０…終了条件判定部、４１０…入力部、４２０…表示部、４３０…データベース記憶部、５１０…オブジェクト画像、５２０…パッチ、６１０…モデル更新部
【図１】
2019045984.tif 000013
【図２】
2019045984.tif 000014
【図３】
2019045984.tif 000015
【図４】
2019045984.tif 000016
【図５】
2019045984.tif 000017
【図６】
2019045984.tif 000018
【図７】
2019045984.tif 000019
【図８】
2019045984.tif 000020
【図９】
2019045984.tif 000021
【図１０】
2019045984.tif 000022
【図１１】
2019045984.tif 000023