目次

  1. 同心円と渦巻きを区別できない?
  2. 歌を途中から始めるのが難しい理由
  3. 「Googleの猫」から始まった快進撃
  4. 羽生九段が「AIの打つ手は怖い」と話す理由
  5. スクールバスの画像を「ダチョウ」と判断、なぜ?
  6. 文章から自動生成、まるで本物の写真

深層学習(Deep Learning=ディープ・ラーニング)は2012年ごろに表舞台に登場し、それ以降、様々な奇跡を起こしています。

2016年に囲碁のトップ棋士に勝ち、世界をあっと言わせました。

その後も続々と新しい成果が発表されました。

顔認識を始めとして、文章の翻訳、投資の判断など、60年に及ぶ人工知能(AI)の研究の歴史で初めて実用に耐える技術が生まれたと言ってよいでしょう。

 

深層学習は、情報を識別したり認知したりできる、人間の「大脳」をコンピューター上でまねた仕組みです。

「深層ネットワーク」という神経回路網を使って学習します。

神経回路網という分野はAIの初期から研究が盛んでした。

ただ、人間の知能の働きを記号に置き換えてプログラムしようとする「記号主義」の研究の影に隠れていた感があります。

 

しかし1980年代に、誤差を最小限にするためにネットワークの中身を書き直す「多層パーセプトロンの学習理論(バックプロパゲーション)」という技術が開発され、脚光を浴びるようになりました。

言語など記号処理の範囲にまで踏み込んだ研究が行われるようになり、今では深層ネットワークを用いた深層学習に受け継がれています。

今回は、深層学習に至る神経回路網研究がどう発展してきたのか、について解説します。

 

最初期の手法「パーセプトロン」は1957年に考案されました。

「人工知能の父」と呼ばれたマービン・ミンスキー(2016年に死去)が初めてAIの概念を共同発表した1956年のダートマス会議とほぼ同時です。

「人間の心の働きについて仮説を立てることはできる」と語るマサチューセッツ工科大のマービン・ミンスキー教授(当時)=1994年、朝日新聞社

パーセプトロンは脳の神経細胞の構造をまねた仕組みで学習をするモデルです(図1)。

画像などを「入力」すると、それが何かを判定したものが「出力」として出てきます。

図1 パーセプトロンの仕組み

図で言うと、x1からxkまでが入力です。

これに、重み付けをするための値であるw1からwnまでをかけ合わせて足し算します。

足し算した値が、ある値より大きければ出力1が出ますし、そうでなければ出力は0のままです。

 

例えば、ある画像の各ピクセルの値を入力するとします。

出力側は0から9までの数字に対応できるよう10本用意し、それぞれ0か1を出力することにします。

そして5のピクセルを入力すると、5に対応する出力だけが1になり、残りの数字に対応する出力は0になるよう、wの値を変えて学習させます。

すると5を認識し、別の数字についても同じ作業を繰り返すことで数字が分かるようになります。 

 

ただ、機械学習の一種であるパーセプトロンでは数字など簡単なパターンしか学習できないということを、ミンスキーらが理論的に示しました。

例えば、図2にあるような同心円と渦巻きが区別できないのです。

図2 パーセプトロンでは同心円と渦巻きが区別できない

両者は部分を見ると同じように見えますが、全体として一本につながっているか否かで区別されます。

パーセプトロンではこのような全体の特徴を捉えた学習ができないのです。

 

パーセプトロンの研究はミンスキーらが限界を示して以来、しばらく下火になってしまいましたが、1980年代になって息を吹き返しました。

多層パーセプトロンの登場です。

 

パーセプトロンは入力層と出力層という2層構造でしたが、その間に中間層を挟んだものが多層パーセプトロンです(図3)。

図で赤く示した中間層を入れることで、理論的には全ての概念が学習できます(ただし、学習速度や学習に必要なネットワークの大きさの問題は残ります)。

図3 多層パーセプトロン

多層パーセプトロンの学習理論を最初に確立したのは、数理工学者で東大名誉教授の甘利俊一です。

ただ、この論文(1967年)は残念ながら世界的には認識されませんでした。

その後、アメリカで別途使われていたものを、スタンフォード大元教授のデーヴィド・ルーメルハート(2011年に死去)とトロント大名誉教授のジェフリー・ヒントンが1986年に「バックプロパゲーション(誤差逆伝播法)」という名で発表して有名になりました。

余談ですが、アメリカはこういった命名が上手です。

甘利は「確率的勾配降下学習法」と呼んでいましたが、「バックプロパゲーション」の方が感じが出ますよね。

 

ヒントンは2019年、本田技研工業の創業者・本田宗一郎らが設立した本田財団から、深層学習への貢献で本田賞を受賞しました。

ヒントンは甘利とも親交が深く、授賞式には甘利も出席していました。

本田賞授賞式懇親会で談笑するヒントン(左)と甘利=2019年、本田財団提供

多層パーセプトロンの登場後、そこから派生した様々な形のネットワークの研究が始まります。

中間層同士に結合があるものや、出力層から入力層への結合を持ったものなどがあります。

その一つに、考案者の名前を取ってエルマンネットと呼ばれるものがあります(図4)。

図4 エルマンネット

これは、出力または中間層の値を入力に戻す形のネットワークで、データの系列を学習できます。

一つ前の出力が次の入力の一部になり、そこから次の出力が計算されます。

我々が歌を覚えたり言葉を理解したりするのには、この系列の学習能力が関係しています。

電話番号を途中から言ったり、歌を途中から始めたりするのは難しくても、始めから系列をたどるとスラスラと出てきますよね。

 

それまでパターンの認識にしか使われなかったパーセプトロンが記号(言語)の領域に進出し始めたのです。

後で述べますが、最近では画像と文章の間の相互変換も一部可能になっています。

多層パーセプトロンの中間層を多段にしたものが深層ニューラルネットワーク(Deep Neural Network=DNN)です(図5)。

中間層の深さは様々ですが、100段を超えるものもあります。

図5 深層ニューラルネットワーク(DNN)

図6は、2012年の機械学習の国際会議で発表された「大規模教師なし学習による高次特徴の構築」という論文に載った深層ネットワークで、一般に「Googleの猫」と呼ばれる研究です。

インターネット上の画像を何も教えずにDNNに見せていたら、勝手に猫の概念を学習したとして話題になりました。

図6 「Googleの猫」として知られる深層ネットワークの仕組み(Quoc Le, et. al: Building High-level Features Using Large Scale Unsupervised Learning, ICML2012)

図でもわかるように中間層が深く、まず輪郭など下位レベルの特徴の表現、次に目や鼻の表現、そして顔の表現、最後に猫や犬の表現と、順番に積み重ねて学習できるのです。

この方式は大脳と同じです。

Googleの猫以来、深層学習の快進撃が始まるのです。

 

2014年には言葉も扱うようになりました。

まだ限定的ですが、画像を見せるとそれを言葉で説明したり、逆に文章を入れるとその情景を画像化したりできます。

具体例をGoogle AIのブログから引用します。

図7 画像から自動生成されたキャプションの例(Szedegy, et. al. Intriguing properties of neural networks. International Conf. on Learning Representation, 2014)

図7は画像を見せてキャプションを自動生成した例です。

左から順に成功例、まあまあの例(犬の数を間違えているだけ)、なんとなく関係している例(自転車をスケートボードと間違えているが、トリックプレーのシーンなのは正しい)、失敗例(犬は正しいが、シーンが間違い)となっています。

 

2015年にはDNNによる顔写真の識別能力が人間のそれ(正解率95%)を上回ります。

現在では完全に実用化されて、空港のパスポートコントロールや、iPhoneやiPadのログイン認証などにも使われています。

 

2016年には囲碁のトップ棋士に勝ちました。

そして2017年にはDNN同士が勝手に対戦するという方式で、人間よりはるかに強いプログラムができました。

もう人間に勝ち目はありません。

 

2021年からNHKの囲碁・将棋トーナメントの対戦中に、AIによる評価が表示されるようになりました。

先日、将棋の対局を見ていたら、後手側の評価が勝率80%を超えたのですが、解説者は「後手は優勢だが、指し手が難しい」と言っていました。

結局、先手がうまく受けて後手は負けてしまうのですが、あの時AIには勝ち筋が見えていたのでしょう。

藤井聡太二冠との対局を振り返る羽生善治九段=2020年、朝日新聞社

以前、羽生善治九段から直接聞いた話ですが、「AIの打つ手は怖い」とのことです。

少し間違うと谷底に落ちるような危うい手をよく打つからだそうです。

人間の棋士は、自分が間違えることや、相手がそれを上回る手を発見することなどを考慮して、少し間違えてもさほどひどくならない手を選ぶそうですが、AIにはそれがないというのです。

先ほどの対局で勝率が一時80%を超えたのも、そうした一本道を通る前提での評価だったのでしょう。

 

深層学習による新しい科学の可能性も出てきました。

DNNは基本的には多くのパラメータを学習で調節して対象の概念を捉えるものです。

人間には100とか1000のパラメータの関係を理解することはできず、物理の方程式などでも数個のパラーメータに限られてきました。

例えばニュートンの運動方程式は「F=ma(力=質量×加速度)」で、三つのパラメータを使ったシンプルな形です。

今後はDNNによる1000変数の物理法則などが現れるかもしれません。

図8を見てください。

これは2014年の機械学習の国際会議で発表された「ニューラルネットワークの興味深い性質」という論文に載った有名な研究です。

図8 DNNをだます研究の例。スクールバスにノイズを重ねた画像を見せると、AIは「ダチョウ」と判断した

左端は普通のスクールバスの画像です。

これをスクールバスと正しく認識するよう学習させたネットワークがあるとします。

この左端の画像に中央のノイズをかぶせます。

合成結果は右端の図になります。

若干歪んでますが、少なくとも人間にはほとんど違いが感じられません。

ところが学習済みのネットワークにこの画像を見せると「ダチョウ」だと判断するのです。

著者たちは「どんな画像でもダチョウと言わせることができる」と書いています。

 

どうしてこういうことが可能かというと、機械学習には必ず誤差があるからです。

学習を進めるとこの誤差はどんどん小さくできますが、ゼロにはなりません。

そこで、その誤差の部分を突くイメージを作ってやればいいのです。

ノイズはランダムにできたものではなく、学習結果を知った上で計算されたものだったのです。

 

深層学習が社会に応用され始めると、人間には同じに見えるのに、DNNは全く異なった判断をするような場面が出てくるかもしれません。

こういった事態に備える研究も必要になってきます。

 

前述の「だますイメージ」を作る手法を応用して、学習の精度を上げるという面白い方法があります。

だますイメージを作って、それにだまされないよう再学習させるのです。

するとネットワークはどんどん精度の良いものになっていきます。

だます方もどんどん精密なイメージを作らないとだませなくなります。

学習するネットワークと、それに敵対してだまそうとするネットワークの二つを作り、互いに切磋琢磨させるのです。

英語ではGenerative Adversarial Network、略してGAN(ギャン)と呼びます。

 

最近ではこのGANを基本に、様々な手法と組み合わせて多くのシステムが作られています。

一例として言語から画像生成した例をお見せします。

図9 GANというシステムを使い、文章から画像を作り出した例

図9はStackGANというGANを2層に重ねたシステムの例です。

文章から生成されたのが上段のStage-Iの画像です。

この画像を次のシステムに入力すると、2段目のStage-IIのように、より鮮明な画像となって出力されます。

文章に従ってゼロから作られた、実際には存在しない画像ですが、ほとんど実際の写真と区別できないほどです。

 

昔見た映画に、犯人に仕立てたい人間の写真に銃の写真を合成して重ね、銃を持っているように見せようとするシーンがありました。

しかし今では写真の加工どころか、ゼロからの生成さえ可能なのです。

 

ただ、現状ではあまり複雑なシーンは構成できません。

また、それが可能になったときには、同様にGANを使った見破りシステムができているはずですから、直ちに脅威とは言えないと思います。

ただ、このようなことが可能なのは知っておいていただきたいと思います。

 

昔から言われているように、技術は「諸刃の刃」です。

使う人間の方のモラル、倫理が大事です。

 

(朝日新聞社の経済メディア「bizble」で2021年5月19日に公開した記事を転載しました)