(57)【要約】      （修正有）【課題】新たな画像を描き出すcGANs（ｃｏｎｄｉｔｉｏｎａｌ  Ｇｅｎｅｒａｔｉｖｅ  Ａｄｖｅｒｓａｒｉａｌ  Ｎｅｔｗｏｒｋｓ）のD(x,y)で「真の確率分布：q」と「ジェネレータのモデルから定まる確率分布：p」との距離を正確に測ることができ、生成画像と真の画像をより近づけることのできる技術を提供する。【解決手段】ジェネレータとディスクリミネータの２つのニューラルネットワークから構成される条件付き敵対生成ネットワークを用いて画像生成を行う画像生成方法であって、前記ディスクリミネータが、下記式のモデルで演算を行った結果を出力する。2019079436.tif 000040【選択図】図３
2019079436.tif 000002
【特許請求の範囲】
【請求項１】
ジェネレータとディスクリミネータの２つのニューラルネットワークから構成される条件付き敵対生成ネットワークを用いて画像生成を行う画像生成方法であって、
前記ディスクリミネータが、下記式（１１）のモデルで演算を行った結果を出力する、画像生成方法。
【数１】
2019079436.tif 000035
・・・（11）
ここで、
Vは、yの埋め込み行列、
2019079436.tif 000036
は、xを引数にしてベクトルを出力する関数、
2019079436.tif 000037
は、
2019079436.tif 000038
を引数にしてスカラー値を出力する関数である。
2019079436.tif 000039
は、学習パラメータであり、敵対的損失を最適化するように訓練されるパラメータである。
【請求項２】
上記式（１１）のカテゴリーデータyとして、ワン・ホット・エンコードされたデータを用いる、請求項１に記載の画像生成方法。
【請求項３】
ジェネレータとディスクリミネータの２つのニューラルネットワークから構成される条件付き敵対生成ネットワークを内蔵した画像処理装置であって、
前記ディスクリミネータが、上記式（１１）のモデルで演算を行う演算部を有する、画像生成装置。
【請求項４】
上記式（１１）のカテゴリーデータyが、ワン・ホット・エンコードされたデータである、請求項３に記載の画像生成装置。
【請求項５】
コンピュータに請求項１又は２に記載の画像生成方法を実行させる画像生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像生成方法、画像生成装置、及び画像生成プログラムに関する。
【背景技術】
【０００２】
層を深くしたニューラルネットワーク（以下、ディープラーニングともいう）を用いた技術として、物体認識技術、物体検出技術、セグメンテーション技術（画像に対してピクセルレベルでクラス分類を行う技術）、画像キャプション技術等の各技術が知られている。
【０００３】
近年では、更に、ディープラーニングを用いて、絵を「描かせる」研究も注目されている。例えば、「コンテンツ画像」と「スタイル画像」の2枚の画像を用いて、「スタイル画像」の描画スタイルを「コンテンツ画像」に適用するように指定して、新たな画像を生成する技術（非特許文献１）が知られている。このような「コンテンツ画像」と「スタイル画像」の2枚の画像を用いて新しい画像を生成する研究とは別に、新しい画像を生成する際に、何の画像も必要とせずに新たな画像を描き出す研究も行われている。何の画像も必要とせずに新たな画像を描き出す手法として、Generative Adversarial Networks(以下、GANs）等の手法が開示されている（非特許文献２）。
【０００４】
GANsでは、2つのニューラルネットワークを学習させることによって、生成モデルを作成する。これら２つのニューラルネットワークは、ジェネレータ（Generator）とディスクリミネータ（Discriminator, 以下D(x)ともいう。）と呼ばれ、これらが競合関係にある。
概略を説明すると、まず、ジェネレータが乱数zからデータxを生成する。GANsでは、データxは２箇所のソースから同時発生しており、データxは、「真のデータの確率分布」に従っているか、「ジェネレータが生成した確率分布」に従っている。ディスクリミネータは、「ジェネレータが生成したデータx」と、「真のデータx」を識別するように学習する。それに対して、ジェネレータは、ディスクリミネータが真のデータと区別できないようなデータを生成するように学習する。このように学習を続けて、ジェネレータの生成データを、真のデータにより近づけ、最終的には本物と見まがうレベルの画像が生成できるようにする。
より具体的には、GANsにおけるD(x)の役割は、「真の確率分布：q」と「ジェネレータのモデルから定まる確率分布：p」との距離もしくはダイバージェンスを測ることである。ジェネレータは、ディスクリミネータで代理的に測られた距離もしくはダイバージェンスを小さくするように学習する。
GANsに関し、新たな画像生成の他に、解像度が低下している画像をGANsで処理して画像の解像度を向上する（以下、超解像）手法も研究されている。
【０００５】
GANsのモデルの１つに、conditional GANs (以下、cGANs)が存在する（非特許文献３）。
GANsでは、上記のように、D(x)は、xを受け取って、そのxが、「真のデータの確率分布」に従っているか、「ジェネレータが生成した確率分布」に従っているかを識別するが、cGANsのディスクリミネータ（以下D(x,y)ともいう。）は、xの他に、コンディション情報yを受け取って、そのxが、「真のデータの確率分布」に従っているか、「ジェネレータが生成した確率分布」に従っているかを識別する。コンディション情報yとしては、例えば、カテゴリ情報等の情報が使用される。
これらのcGANsを、クラス・コンディション生成（非特許文献４）や、テキストからの画像生成(非特許文献５)などで用いる研究も開示されている。
【０００６】
従来のcGANsでは、図１に示すように、D(x,y)に対しxを入力する際にyを連結（concatenate）する手法や、図２に示すように、中間層を設けて中間層でyを連結（concatenate）する手法が採用されてきた。
しかし、これらの従来手法を用いた場合、D(x,y)で「真の確率分布：q」と「ジェネレータのモデルから定まる確率分布：p」との距離を正確に測ることができないケースが多く、生成画像を真の画像と見まがうレベルに近づけることはできない。
【先行技術文献】
【特許文献】
【０００７】
【非特許文献１】Neural Algorithm of Artistic Style. arXiv :1508.0657
【非特許文献２】Unsupervised Representation Learning with Deep Convolutional Generative Adversarial Networks. arXiv :1511.06434
【非特許文献３】Conditional Generative Adversarial Nets. arXiv : 1411.1784.
【非特許文献４】Proceedings of the 34th International Conference on Machine Learning, PMLR 70:2642-2651, 2017.
【非特許文献５】Generative Adversarial Text to Image Synthesis. arXiv : 1605.05396.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明の課題は、従来のcGANsのモデルにおける上記の問題を解決し、D(x,y)で「真の確率分布：q」と「ジェネレータのモデルから定まる確率分布：p」との距離を正確に測ることができ、生成画像と真の画像をより近づけることのできる技術を提供することである。
【課題を解決するための手段】
【０００９】
本発明者らは、前記課題を解決するために鋭意研究を重ねた結果、特定のD(x,y)のモデルを用いることで、「真の確率分布：q」と「ジェネレータのモデルから定まる確率分布：p」との距離を正確に測ることができ、生成画像と真の画像をより近づけることのできることを見出し、本発明を完成させた。すなわち、本発明は以下のとおりである。
【００１０】
［１］ジェネレータとディスクリミネータの２つのニューラルネットワークから構成される条件付き敵対生成ネットワークを用いて画像生成を行う画像生成方法であって、前記ディスクリミネータが、下記式（１１）のモデルで演算を行った結果を出力する、画像生成方法。
［２］下記式（１１）のカテゴリーデータyとして、ワン・ホット・エンコードされたデータを用いる、［１］の画像生成方法。
［３］ジェネレータとディスクリミネータの２つのニューラルネットワークから構成される条件付き敵対生成ネットワークを内蔵した画像処理装置であって、前記ディスクリミネータが、下記式（１１）のモデルで演算を行う演算部を有する、画像生成装置。
［４］下記式（１１）のカテゴリーデータyが、ワン・ホット・エンコードされたデータである、［３］に記載の画像生成装置。
［５］コンピュータに［１］又は［２］に記載の画像生成方法を実行させる画像生成プログラム。
【発明の効果】
【００１１】
本発明によれば、cGANsを用いた画像生成に際し、D(x,y)で「真の確率分布：q」と「ジェネレータのモデルから定まる確率分布：p」との距離を正確に測ることができ、生成画像と真の画像をより近づけることができる。
【図面の簡単な説明】
【００１２】
【図１】従来技術のディスクリミネータモデル（concat）の説明図である。
【図２】従来技術のディスクリミネータモデル（concat）の説明図である。
【図３】本発明のディスクリミネータモデル（multiply）の説明図である。
【図４】従来技術（concat）と本発明（multiply）の学習曲線を示す図である。
【図５】Intra FIDをクラスごとにプロットした図である。
【図６】異なる手法での生成イメージの比較を示す図である。
【図７】異なる手法での生成イメージの比較を示す図である。
【図８】異なるクラスのモーフィング（Morphing）を示す図である。
【図９】超解像の結果を示す図である。
【発明を実施するための形態】
【００１３】
（発明の概略）
前記のように、GANsにおけるD(x)の役割は、「真の確率分布：q」と「ジェネレータのモデルから定まる確率分布：p」との距離もしくはダイバージェンスを測ることである。
本発明では、y given x ; p(y|x) がガウス分布のような単峰型（unimodal）な分布や対数線形モデル（log linear model)で表せる離散分布だと仮定し、そのように想定できる場合における理論的な動機づけのあるcGANsにおけるD(x,y)のモデルを提案する。
本発明者の提案するモデルは暗黙的にD(x)の与えられたときの最適（optimial）な解が対数尤度比なっていることを考慮し、まずその対数尤度比を、条件付き分布の対数尤度比log q(y|x)/p(y|x)とxの対数尤度比log q(x)/p(x)に分けて考える。
次に、log q(y|x)/p(y|x)について、q(y|x)とp(y|x)が、それぞれ前記のように、ガウス分布のような単峰型（unimodal）な分布や対数線形モデル（log linear model)で表せる離散分布だと仮定する。
すると結果的に得られるD(x,y)のモデルは、図３に示すように、コンディション情報yをφの出力に掛けて足すという形になる。
この新たなD(x,y)モデルを用いたcGANsでは、図１や図２に示した従来のD(x,y)モデルを用いたcGANsに比べて、大幅に性能が向上する。
また、この新たなD(x,y)モデルを超解像のタスクに適用することで、従来技術に比べてよりも判別が容易（disciriminative）な画像を生成することができる。
【００１４】
以下、本発明を詳細に説明するが、本発明は下記の実施形態に限定されるものではない。
【００１５】
cGANsにおけるD(x)の損失関数（loss function）は、下記式（１）で表される。
【００１６】
【数１】
2019079436.tif 000003
【００１７】
損失関数（loss function）として下記式（２）が多く用いられる。
【００１８】
【数２】
2019079436.tif 000004
【００１９】
上記式（２）において損失を最小化する最適なD(x,y)は、下記式（３）で表される。
【００２０】
【数３】
2019079436.tif 000005
【００２１】
上記式（３）は下記式（４）で表すことができる。
【００２２】
【数４】
2019079436.tif 000006
【００２３】
本発明では、完全対数比(the full log ratio) r(y,x)を２つの対数比r(y|x),r(x)に分割し、q(y|x)とp(y|x)が、それぞれ、ガウス分布のような単峰型（unimodal）な分布や対数線形モデル（log linear model)で表せる離散分布だと仮定する。
r(y|x)を求めるf1と、r(x) を求めるf2を構築し、それらを組み合わせてDを作成することもできる。
従来の技術ではD(x,y)のモデルは、D([x,y]) of x and y; [x,y]で表されるが、従来のD(x,y)は、上記式（３）をモデル化するには過剰な柔軟性があり好ましくない。
【００２４】
（単一のカテゴリ変数ケース（Single categorical variable case））
クラス・コンディション・イメージ生成（the class-conditional image generation）において、カテゴリー変数がy∈｛1,…,C｝（Cはカテゴリー数）で表されるとすると、最もよく使われるp(y|x)のモデルは下記式（５）の対数線形モデルで表される。
【００２５】
【数５】
2019079436.tif 000007
2019079436.tif 000008
2019079436.tif 000009
【００２６】
このようにして、q(y|x)とp(y|x)が、それぞれ下記式（６）及び下記式（７）となる。
【００２７】
【数６】
2019079436.tif 000010
【００２８】
【数７】
2019079436.tif 000011
【００２９】
ここで、φｑとφｐを共有するφとすると、上記式（７）は、下記式（８）及び下記式（９）となる。
【００３０】
【数８】
2019079436.tif 000012
【００３１】
【数９】
2019079436.tif 000013
【００３２】
上記方程式の第2項はラベルy =cに依存しないので、log（q(y|x)/ p(y|x)）に対する近似推論を実行するために最初の項のみをモデル化する必要がある。
2019079436.tif 000014
を陰関数（implicit）として、
2019079436.tif 000015
とすると、
2019079436.tif 000016
が得られる。ｗを、r（x）の最終層の重み（final layer of r(x)）とすると、cGANsのディスクリミネータ・モデルは下記式（１０）で表される。
下記式（１０）において、yとしてワン・ホット・エンコードされたデータを用いると、下記式（１１）で表されるモデルが導かれる。
【００３３】
【数１０】
2019079436.tif 000017
【００３４】
【数１１】
2019079436.tif 000018
（11）
ここで、
Vは、yの埋め込み行列、
2019079436.tif 000019
は、xを引数にしてベクトルを出力する関数、
2019079436.tif 000020
は、
2019079436.tif 000021
を引数にしてスカラー値を出力する関数である。
2019079436.tif 000022
は、学習パラメータであり、敵対的損失を最適化するように訓練されるパラメータである。
【００３５】
上記式（１１）及び図３に示すように、本発明では、コンディション情報yをφの出力に掛けて足すというモデルを使用する。
【００３６】
（連続可変ケース（Continuous variable case））
【００３７】
【数１２】
2019079436.tif 000023
【００３８】
【数１３】
2019079436.tif 000024
2019079436.tif 000025
【００３９】
（AC- GANsおよびその他の補助的な損失ベースのGANsとの関係（Relation to AC-GANs and other auxiliary Loss-based GANs））
【００４０】
【数１４】
2019079436.tif 000026
【００４１】
【数１５】
2019079436.tif 000027
2019079436.tif 000028
【実施例】
【００４２】
本発明のディスクリミネータモデルの有効性を示す実験を２つ行った。
１つは、ILSVRC2012データセット(ImageNet)でクラスconditional image generation、もう１つは同じデータセットを用いた超解像タスクである。どちらのタスクにもResNet(Heet al., 2016b)ベースのGulrajani et al. (2017)で使用されているディスクリミネータとジェネレータを用いた。
学習の目的関数には下記式（１６）及び下記式（１７）の敵対的損失（adversarial loss）を用いた。
【００４３】
【数１６】
2019079436.tif 000029
【００４４】
【数１７】
2019079436.tif 000030
【００４５】
またすべての実験でAdam optimizer (Kingma & Ba, 2015)を用いた。hyper parameter は過去の実験で使われているのと同じ通りα= 0.0002 ;  β1 = 0 ;  β2 = 0.9でジェネレータのアップデート（update）回数1に対する、ディスクリミネータのアップデート（update）回数を５とした。
【００４６】
（Class-Conditional Image Generation）
このタスクではImageNet datasetを用いてクラスで条件付きの生成モデルを学習した。クラス数は1000で、１クラスあたりの画像数はおよそ1300である。
評価に用いたのはVisual appearanceの良さを測る指標としてInception score、diversityをある程度はかる指標としてintra-class MSSSIM、intra-class FIDsである。
ここでは、state of the artのGANs モデルとしてAC-GANs (Odena et al., 2016)とconditionの与え方の違いによって性能がどのくらい違うかを見るためにhidden concatenationと提案するmultiplyの3つのモデルを試した。
図４に示すように、本発明（multiply）のほうがvisual qualityが高いことがわかる。
【００４７】
【表１】
2019079436.tif 000031
【００４８】
上記表１に、学習終了後の結果をそれぞれ示した。AC-GANs については学習途中に
学習（training）が崩壊（collapse）したのでいちばん最も開始スコア（inception score）が高かったときのモデルで各評価を行った。
【００４９】
まずVisual appearanceについては本発明（multiply）が従来技術（concat）を大きく上回っている。
【００５０】
図５に示すように、本発明（multiply）と従来技術（concat）を比較すると、ほとんどのクラスで本発明（multiply）の方がFIDが小さいつまり、特徴空間上でwasserstein distanceが小さいことがわかる。また、AC-GANsと本発明（multiply）を比較すると、AC-GANsはvisual qualityでは本発明（multiply）を上回っているが、Intra-MSSSIMの値がとても高い。
【００５１】
図６に示すように、AC-GANsは認識しやすいサンプルを生成するが、ほぼ単一のサンプルのみを生成しており生成モデルとしては程遠い結果となることがわかる。またIntra-FID scoreでは全体的に本発明（multiply）の方が、値が低い。これはFIDの２次の項によって多様性がないクラスはFIDの値が結果的に大きくなることに起因する。
【００５２】
（No obvious collapse by multiply method）
図７に示すように、本発明（multiply）のメソッドによって学習されたモデルでは、collapseしているクラスが認められなかった。従来技術（concat）のメソッドによって学習されたモデルは明らかにcollapseしているクラスが複数存在した。
【００５３】
（Class Morphing）
図８には、zを固定したのもと、異なるクラス間でモーフィング（morphing）した時の図を示している。全く異なるクラス間でも滑らか（smooth）にモーフィングが行われていることがわかる。
【００５４】
【数１８】
2019079436.tif 000032
2019079436.tif 000033
2019079436.tif 000034
【００５５】
図９に示すように、Bicubicによる超解像はボケてしまっている。従来技術（concat）のメソッドによる超解像はある程度はっきりはしているものの、低解像度のギザギザ模様が残ってしまっていてうまく学習できていない。
【図１】
2019079436.tif 000041
【図２】
2019079436.tif 000042
【図３】
2019079436.tif 000043
【図４】
2019079436.tif 000044
【図５】
2019079436.tif 000045
【図６】
2019079436.tif 000046
【図７】
2019079436.tif 000047
【図８】
2019079436.tif 000048
【図９】
2019079436.tif 000049