TOUCH THE SECURITY Powered by Security Service G

コラム

2019.09.04

4枚の図解でわかるGAN

人工知能が人間の知性を超えてしまうシンギュラリティ(技術的特異点)がいつ頃になるのかについては様々な見方があります。しかし、領域によってはすでにシンギュラリティが始まっているのかもしれません。

This Person Does Not Exist(https://thispersondoesnotexist.com)というサイトにアクセスしてみてください。

どこにでもいそうな人の写真が表示されます。しかし、ドメイン名からも分かる通り、この人はどこにも存在しません。人工知能が作り出したフェイクの顔写真なのです。

ここまで精巧に作れるのであれば、VTuberやチャットボットの技術と組み合わせて、ネット上に非実在性人間を生きさせることも可能になります。ネットで知り合い、チャットもして、写真やビデオまで交換しているのに、その人はこの地球上のどこにも存在しなかった。そんなことが現実に起ころうとしています。

1.人工知能にとっての学習 ――“教師”の存在、報酬

人工知能が学習をする時には、必ず広義の“教師”が必要になります。一般的な「教師あり学習」では、最初に正解のデータを学習させます。与えられた画像が人間の顔であるかどうかを判別する人工知能を作りたいのであれば、大量の人間の顔写真という正解データを与えます。

「教師なし学習」「強化学習」では、正解不正解に限らず大量のデータを与えます。人工知能は与えられたデータの特徴を学習して、分類をしていきます。これが教師なし学習です。この分類に対して、報酬(得点)を与え、特定のものを選ばせるようにするのが強化学習です。

例えば、猫の写真を判別させるには、教師あり学習では大量の猫の写真で学習させ、与えられた写真が学習した写真に似ているかどうかを判別します。教師なし学習では、猫だけでなくさまざまな写真を学習させ、人工知能はそれを特徴に従って分類します。その分類の中で、たまたま猫の写真ばかりのものがあったら、それに報酬を与えて強化していきます。

つまり、人工知能の機械学習では、人間がどこかで介在して、正解を教えるか、評価をしてやらなければなりません。人間の介在を必要としている限り、シンギュラリティは起こりようがありません。

教師あり学習(Supervised Learning)では、最初に人間が選んだ正解データ(色付きの◯)を与える。しかし、与えるデータによっては実態とはずれた学習をしてしまうこともある。教師なし学習(Unsupervised Learning)では、すべてのデータを与え、人工知能に特徴を学習させ、分類させる。しかし、その分類が必ずしも人間が望むものに適合するかどうかはわからない。それぞれに一長一短がある。

2.GAN ――人工知能が人工知能の教師

しかし、2014年に当時モントリオール大学の学生だったイアン・グッドフェローは、この人間の介在をも人工知能で代替させられないかと考えました。人工知能が教師になって人工知能を学習させるのです。この手法はGAN(Generative Adversarial Network=敵対的生成ネットワーク)と呼ばれます。「多層パーセプトロンによる深層学習」に次ぐ、人工知能技術を大きく飛躍させる技術になると期待されています。

GANでは、生成器(Generator)と判別器(Discriminator)の2つの人工知能が異なる目的で学習をしていきます。生成器は人間の顔写真を元データにして、それに似た画像を生成します。本来は、ここで人間が評価をし、得点を与える必要がありました。しかし、GANではこの生成データを判別器に渡し、判別器はその画像が人間の顔であるかどうかの真贋を判断するように学習していきます。

生成器の作り出す画像の精度が上がると、それを見分ける判別器の学習が進みます。判別器が精度よく真贋を判別できるようになると、生成器の学習が進みます。生成器は判別器を騙そうとし、判別器は生成器に騙されないようにと、互いが互いを学習させながら、精度が上がっていくのです。

GANは、2つの人工知能が互いに教師の役割をする。左の人工知能は精巧な偽札を生成するように学習する。右の人工知能は偽札を精密に見分けるように学習する。この敵対する人工知能を組み合わせると、相乗効果で互いに高速で学習が進んでいく。

3.生成器に与えられるノイズ(潜在変数)

このGANには、さらに面白い性質があります。生成器は何もないところから画像を作れるわけではありません。最初に初期値のようなものが必要になります。これはノイズとか潜在変数と呼ばれるものです。この元になる数値を一定の手法で展開していきながら精巧な画像が生成されていきます。

重要なのは、どのようなノイズであれば、どのような画像が生成されるか、その関係を数学的に解析できることです。あるパターンのノイズがあると男性の画像になり、別のパターンでは女性の画像になる。あるパターンではメガネをかけた人の画像になり、あるパターンでは裸眼の人になる。このようなノイズのパターンが特定できれば、望みの画像を生成できるようになるのです。

MakeGirlsMoe(https://make.girls.moe/#/)というサイトにアクセスしてみてください。

このサイトは、上海復旦大学、カーネギーメロン大学などの学生が作った萌えキャラ生成サイトです。生成ボタンをクリックすると、萌えキャラが生成できます。これもGANの手法を使って学習された人工知能です。

注目していただきたいのは、髪の色、髪型、肌の色合い、笑顔、赤面、リボンなどの属性スイッチが利用できることです。これはノイズまたは潜在変数と画像の関係が解析をされ、適切な潜在変数を与えることで希望の萌えキャラを生成できるようにしたものなのです。

GANの文字式図。生成器(Generator)、判別器(Discriminator)がそれぞれ多層パーセプトロン(人工知能)になっている。まず、一定のノイズ(潜在変数)を与え、それに基づいて生成器が偽物のデータを生成する。判別器は真のデータにより学習を行い、生成器が生成した偽物データを見分けようとする。

4.シンギュラリティの萌芽

この潜在変数を利用すると、さらに進んで、画像の演算も可能になってきます。例えば、(メガネをかけた男性を生成する潜在変数)から(男性を生成する潜在変数)を減じ、これに(女性を生成する潜在変数)を加えた潜在変数を使うと、メガネをかけた女性の画像が生成できます。あたかもメガネをかけた男性の画像をメガネをかけた女性の顔に変換でき、画像の加減算ができたかのように見えます。これを応用すれば、人物の画像を太らせる、痩せらせる、若くする、老けさせるなどということも可能になるかもしれません。

さまざまな産業への応用へも可能で、洋服や家具、自動車などというデザイン性の高い商品を、購入者が見て「もうちょっと可愛らしく」「もうちょっと精悍に」と希望を述べると、画像演算をし、新しいデザインが生成でき、それを3Dプリンターなどを使って作成するという、究極のオーダーメイドが実現できます。遠くない将来、映画やドラマの特殊効果処理にはごく当たり前に使われるようになっていることでしょう。

潜在変数と生成画像の関係を分析すると、例えば、「このような変数を与えると、生成画像の人物はサングラスをかける」というようなことがわかってくる。この分析をさらに進めると、潜在変数を加減演算することで、画像の演算ができるようになる。サングラスをかけた男性から男性を引き算して、それに女性の顔を加えると、サングラスをかけた女性の画像が生成できる。

ただし、「もうちょっと可愛らしく」などという判断は今の所、人間にしかできません。

人間の感じ方の問題ですから、どうしても人間の介在が必要になるのです。しかし、「可愛いとはどういうことか」を人工知能が学習できるようになれば、ここでも人間の介在は不要になるかもしれません。購入者の個人データから好みを分析し、人工知能がその人が最も気に入るデザインを最初から提案するかもしれません。

どんどん人間の介在する部分は、人工知能に置き換えていくことができるのです。シンギュラリティはもう始まっているのかもしれません。

記事一覧に戻る