コントロールできていれば、王様を突撃させてもいい?

松尾豊氏:よろしくお願いします。25分ということですので、手短に話していきたいと思います。みなさんもご存知の通り、DeepMindが開発した囲碁のAI「AlphaGo」がプロ棋士を破ったというニュースがありました。ちょうど先週、このときの棋譜が公開されました。将棋のバージョンと、チェスのバージョン、両方の棋譜が公開されています。

この(汎化されたAlphaGo Zeroのアプローチを使用している)AlphaZeroの棋譜は、わりと早いうちから玉が中段に出ていくんですね。将棋の羽生竜王がコメントしておりまして、それが特徴的だとおっしゃっていました。

王様は端っこにいたほうが安全そうな気がするので、やはり端っこにいる場合が多くて。終盤になって仕方なく、逃げ回るために中段に出てくるということがあるんです。ところが、きちんとコントロールさえできれば、中段で出ていったほうが、最初から逃げ道が多いのでよいという考えではないかと思います。

囲碁の場合も、中央を使うという手が新たに発見されていましたけれども、将棋においても、人間が思いつかなかったような手が有効だということが示されてきているのかなと思います。

「人工知能」という言葉が指し示すものの変化

最近、人工知能はすごく注目されていますが、僕は「人工知能」という言葉には、少しまずい面があると思っています。それは、いろんな意味合いが混ざってしまっているからです。

例えば、単純に、IT化・デジタル化のことを人工知能と呼んでいることが多い場合があります。また、(人工知能では)たくさんデータを集めることが重要ですが、従来は「ビッグデータ」と言っていたものです。シリコンバレーの企業は昔から利用しているわけですけれども、単にこういったことを指してる場合もあります。

僕は、ディープラーニングが技術的なブレイクスルーだと思っていて、注目すべきはこれだと思います。もちろん、いまお話しした2つについても、世の中で、とくに日本社会において重要なことは間違いないんです。でも、世界中でいま、ブレイクスルーが起こっているのは、ディープラーニングではないかと思っています。

ディープラーニングについては、もういろいろとご存知かと思いますのであまり言いませんが、画像認識の精度はものすごく上がっています。2015年以降は、もう人間の精度を超えるような例が相次いでいます。この技術があるから、顔認証や医療画像の診断がどんどん実用化されているということになります。

動画の中にどういうものがあるかを検知することもできますし、これがロボットに適用されて、画像認識とアクチュエータを組み合わせることによって、いろんなものをピッキングできるようになるなど、さまざまな動作ができるようになる例がどんどん出てきています。

自然言語処理の分野も革新しているディープラーニング

また、今年は自然言語処理で本当に大きな飛躍があった年でした。自然言語処理にディープラーニングが活用され始めたのは、2013~2014年くらいです。翻訳にディープラーニングが使われるようになって、ものすごく精度が上がったのが2016年でした。

自然言語処理におけるかなり多くのタスクにおいて、人間の精度と同等か、それを上回るような手法が次々と出てきたということで、ここでもディープラーニングが革新をもたらしているということになります。

こういうことがなぜ急に起こるのか。その原理のところを少し説明したいと思います。ディープラーニングの説明の仕方はいろいろあるんですけれども、僕は「深い関数を使った最小二乗法」という言い方が一番わかりやすいと思います。

画像認識=変数1万個の重回帰分析

「最小二乗法」をご存知の方は、あとは「深い関数」がなにかを説明するだけでいいわけです。では、最小二乗法から説明していきましょう。例えば、お店の売上、飲料の売上といったデータがあるとします。飲料が、何月何日に、気温が何度で、そのときにどのくらい売れたかというデータがあったとすると、気温と売上の関係はプロットすると、なんだか相関がありそうだということがわかりますね。

Excelなどで「近似直線の追加」を実行すると直線が引けますけれども、これが最小二乗法でできます。直線ですから、「y=a+bx」と置きます。これはある種の推定値を表していますので、実際の値からどれだけずれているか、誤差を取って二乗します。プラス・マイナスがありますので二乗して、この全部のサンプルの点を足し合わせます。それで、この二乗和が最小になるようにaとbのパラメータを決めると、この点々の上に一番乗るような線が描かれます。これが最小二乗法ですね。

気温というのは一変数でしたけれども、これを気温と湿度という二変数にします。そうしますと、気温と湿度から売上を予測することができるわけですが、この空間は3次元の空間であると。変数はx1、x2と2つの変数を使うようになりますけれども、やることは一緒です。この誤差の二乗和を最小にするようにa、b、cを決めればいいということになります。

一変数を二変数にしましたが、今度は一万変数にします。一万変数にしますと、図示はできませんが、やることは一緒ですね。x1からx10000まで、1万個の変数を使った式を立てて、この誤差の二乗和を計算し、これが最小になるようにk0~k10000までのパラメータを決めてあげればいい、ということになります。

要するにこれは、重回帰分析なわけですね。よく使われますけれども、変数の数というのは数個から多くても数十個くらいです。1万個の重回帰分析など、普通はしないわけです。では、世の中に1万個の重回帰分析の問題はあるのかというと、実はあります。これが画像認識になるんです。

ディープラーニングとは、深い関数を使った最小二乗法

どういうことかというと、100px四方の画像に猫が写っているかを判定したいという問題は、まさにこれにあたるんです。100×100の画像ですので、1万個のピクセルの値が入っています。このとき、「猫だったら1、そうじゃなかったら0を返すような関数を見つけてください」という問題になりますから、実は最小二乗法で解けるということですね。

この猫関数というものがあったとすると、これはx1~x10000までの1万個の変数を使った式で表され、「ある画像が猫でした」「ある画像が猫ではありませんでした」というデータがたくさんあればいいわけです。猫のときは1、猫じゃないときは0になるように、誤差を最小化するようにパラメータを決めればいいんですね。すると、今度新しい画像が入ってきたときに、自動的に「猫だ」「猫じゃない」と言えるようになるということです。

ですので、(画像認識は)変数の数がかなり多い最小二乗法である、ということなんです。もう1つ、すごく重要なのが「深い」ということ。実にディープということです。では、なぜ深いのか。そもそも深いとはどういうことかというと、入力されるx1~x10000までの値から、直接猫関数が計算されるというのは、浅いんですね。直接なので浅いということです。

そうではなく、一旦中間的な関数を介します。f1~f100と示しているような中間的な関数を介しておいて、それを使って猫関数を計算します。そうすると、1段階をかませたことになるので、2層になります。

従来の重回帰分析は、x1~x10000から直接猫関数が定義されるので浅いわけです。そうではなく、一旦このf1~f100みたいな中間的な関数を定義して、それで猫関数を定義すると2層にしたことになるので、深くなる。こうして、どんどん深くしていけばいいということですね。

x1~x10000まで画素の値が入ってきて、それが1段、2段、3段と関数が定義されて、最終的に猫関数や犬関数みたいなものが定義される。そして、全体を最小二乗法で、パラメータが最適化されているんだということです。

ですので、ディープラーニングがなにかというと、要するに「深い関数を使った最小二乗法」ということです。では、「深い関数」というのはどういうことなのかというと、「入力から出力までが何段階かにわかれてつながっている」というだけのことです。

深くなるとは、つまり表現力が増えるということ

では、深いとなにがいいのか。それは表現力が高いからです。表現力が高いというのはどういうことかというと、ややこしいんですけれども、一番わかりやすいのが料理の例です。食材があったとして、そのときにひと手間だけかけていいと、ひと手間だけ加工していいという条件のもとで調理をするとなると、豚バラ、ごはん、大根の揚げ煮といったものしかできないわけですね。

しかし、二手間、三手間かけていいとなれば、(スライドを指して)こうしていろんな料理ができるわけですね。要するに、関数も「1回だけ適用していい」という条件のもとで最小二乗法を実行すると、大した近似ができないんです。でも、2回、3回、4回……と関数を重ねていいという条件のもとで最小二乗法を行えば、入力と出力のいろんな関係を学習できるということです。

つまり、関数は重ねると非常に表現力が上がります。この表現力が上がる関数を使って最小二乗法ができるようになってきたんだ、ということになります。

なぜできるようになったかというと、計算機のパワーが増えてきたことと、データが増えてきたという2点です。ただ、本質的には最小二乗法なので、このxとyをどう設定するのかがビジネス上での工夫の全てです。これを創意工夫して、いろいろ実行してみればいいということになります。

ディープラーニングは、インターネットに匹敵する数十年に一度の技術

xに画像を入れて、yにクラス……つまり猫や犬といった動物の種類を出すようにすると、これは画像認識になります。また、xに顔画像を入れて、yに人の名前を出すようにすると、顔認証になります。そして、xに医用画像を入れて、yに診断名を出すようにすると、自動診断になります。xに囲碁の盤面の状態を入れて、yにそのときに打つべき手を入れると、AlphaGoみたいなものができるということです。

結局は最小二乗法なので、xになにを置くのか、yになにを置くのか、それをいろいろ工夫すればいいということになります。

ディープラーニングの手法にはいろいろあります。「End-to-End」などと言われますが、入力と出力の関係を、深い関数を使って学習することができるようになってきたんだということです。これも全部同じで、xとyを決めて、それをつなぐ回路を決める。損失関数といわれますけれども、誤差の二乗和のような損失関数を決めて、これを最小にするようにパラメータを決めていくと、xを入れると自動的にyが出るようになります。

この深い関数を使った最小二乗法というのは非常に強力で、かつ応用範囲がかなり広い技術だと思っています。歴史的に見ると、数十年に一度の技術だと思っています。つまり、インターネット、トランジスタ、エンジン、電気などに匹敵するような技術です。

なぜなら、世の中を変える技術というのは原理が非常に単純で、かつ応用可能性が広いということだと思っているからです。例えば、インターネットとはなんだったかというと、もともとはハイパーテキストといって、「リンクを貼れる」ところがすごかったんです。リンクを貼ることによって情報同士がつながっていき、今のインターネット、検索エンジン、Eコマースといったものが全部できるようになったわけです。

トランジスタがもともとなんだったのかというと、「信号を増幅する」ものでした。それが集積していくことによって……現在、世の中にある、ありとあらゆるものが、トランジスタをベースにしてできています。半導体でできているわけですね。

それと同じで、ディープラーニングの原理はとても単純なんです。深い関数を使った最小二乗法、それだけなんです。けれども、それが集積することによって、これからいろんなことができていくと思っています。

人間の脳も、この深い関数を使った最小二乗法みたいなものを基盤として実行しているはずです。それに匹敵する、もしくは超えるような技術もどんどん出てくるはずだと思っています。

いろんな手法がありますけれども、結局は、データに合わせてアーキテクチャの作り方が工夫されているだけということです。僕は、半導体産業とディープラーニング産業の特性は、けっこう近いんじゃないかなと思っています。つまり、いろんなノウハウ、工夫、試行錯誤が効いてくる技術だと思っています。

トランジスタが産業を変えたように、ディープラーニングが全てを変えていく

そういう観点から、最初にお話しした3つについて考えてみます。結局、1つ目はプログラムをするものです。2つ目はデータから学ぶものですが、浅い関数を使っています。3つ目は、深い関数で学習しているということですね。この3つは、本質的に違うと思っています。

こういった技術がどういうところに影響を与えるかというと、恐らく、ありとあらゆる産業に影響を与えます。画像認識ができるようになったり、画像認識とアクチュエータを組み合わせて、いろんな作業の自動化ができるようになる。トランジスタが出てきたときのように、本当に、ありとあらゆる産業を変えていくんじゃないかなと僕は思っています。今は、そのかなり初期の段階にいるんじゃないでしょうか。

僕はこれを、インターネットに例えるのがちょうどいいんじゃないかなと思っています。インターネットが生まれた20年前と、今のディープラーニングの状況は、だいたい一緒だと思っているんです。

20年前というと、1998年です。ちょうどGoogleができたころで、Amazonができたのは1994年です。そのころの時代感はどのようなものだったかについてお話しします。ワールド・ワイド・ウェブは、1980年代にティム・バーナーズ=リーという人が、CERNという研究所で運用してすごくうまくいったものを、だんだん商業化していったわけですね。

1990年代前半にMosaicというブラウザができたり、ホームページができたりしました。そういう中で、「これはいける」という確信が高まって、AmazonやGoogleができたわけです。

でも、本当にお金になったのは、2000年代に入ってからですね。Googleも1998年は、1億円で売却しようとして売れなかった。2000年代に入って、検索連動型広告と結びついて、非常に大きなビジネスになっていったわけです。

最小二乗法という原理が、ブームとして去ることはない

ディープラーニングも、だいたいその20年遅れで発展しています。(ジェフリー・)ヒントン先生が「Deep Belief Network」で、深い関数を使ってできることを初めて示したのが2006年。2010年代に入って音声認識で圧勝したり、画像認識で圧勝したり、AlphaGoみたいなものができたりして、多くの人が「これはいける」となりました。

現在は、いろんなベンチャー企業が出てきています。でも僕は、今のディープラーニングは、まだ本当のビジネスモデルとは結びついていないと思っています。人が行っていることを多少置き換えているくらいなので、まだ大した話じゃない。

ただ、これから本当にディープラーニングに合った新しいビジネスモデルが発明されて、それと結びついたときに、かなり大きな産業になってくるんだと思います。それが2020年代、2030年代にかけて起こってくるのではないでしょうか。ディープラーニングの技術というのは「はやり」ではなく、これから10年、20年の間にいろんな変化を起こしていくものだと考えるほうがいいでしょう。

よく、「AIもブームだから、いつか去るんじゃないか」と言う人がいます。確かに、ITをAIと呼び変えたり、ビッグデータをAIと呼び変えることに関しては、多少期待が過剰になっている面はあるため、僕はそういったバブルは崩壊すると思っています。しかし、ディープラーニングというのは要するに、深い関数を使った最小二乗法なんですから、これが原理としてなくなるはずがないですよね。

集積するうちに、ディープラーニングなんて誰も言わなくなるかもしれない

僕は、ディープラーニングが集積していくうちに「当たり前の技術」になって、いつかディープラーニングなんて言わなくなるかもしれないとは思います。

それは、トランジスタがIC、LSIと名前を変えていき、集積していくうちにそう言わなくなるということに近いかもしれないです。しかし、基盤として使われなくなることは決してないと思います。

ディープラーニングは、2012年から急激に進展しました。それからいろんな技術が出てきています。(スライドを指して)年表を作りましたけれども、わずか6~7年前の論文が古典的な論文になるくらい、本当に進展が早い世界です。

これはまだまだ進むと思っています。これから1〜2年ですごく重要になるのが「世界モデルの構築」といわれているものです。画像認識はできるのですが、3次元構造を理解するということがまだ上手にできないんですね。

人間の場合、例えばこの部屋に入ってきた瞬間に、部屋の構造がわかるわけですよね。ですから上手に動ける。タスクに応じて、その世界モデル、内部モデルというものを上手に作ることができるわけですが、その技術がまだできていません。僕は、それが近い将来にできるのではないかと思います。

言葉の「意味・理解」に起こる変化

それからもう1つ、これからの技術の進展としておもしろいと思っているのが、言葉の「意味・理解」です。これもそのうちにできるようになってきます。

どういうことかというと、人間も言葉を使えること以外は、猿と同じなんですよね。猿や他の哺乳類がなにをしているかというと、環境中の情報を知覚して、それによって適応的に行動しているわけです。

そういうものがベースにあって、その上に人間は言葉の処理を乗っけている。つまり、人間の知能というのは2階建てなんです。今までの自然言語処理というのは、1階部分がないのに2階部分を作ろうとしてきた。いま、ディープラーニングによって起こっている変化は、1階部分ができそうということで、これからは1階部分と2階部分を両方備えた意味処理ができるはずなんです。

どういうことかというと、ある文を聞いたときに、それが意味する情景を思い浮かべられる、想像できるということです。これができてくると、僕は言語処理の世界も大きく変わってくると思いますし、社会全体に非常に大きなインパクトを与えられるんじゃないかと思っています。

技術的に難しいところがあるかもしれませんが、早ければ数年のうちに、こういう世界が見え始めるんじゃないかなと思います。技術の転換点に我々はいるということですね。

学びたい人に投資する文化が日本にはない

インターネットの(誕生の)とき、日本全体としてはイノベーションになかなかついていけなかった。半導体、トランジスタができたとき、日本はすごくがんばったと思いますけれども、インターネットのときはうまくいかなかった。

今回のディープラーニングでは、やはりがんばらないといけないなと僕は思っています。ところが、日本全体でこの技術に対するキャッチアップは非常に遅いですし、製造業全体にとって大きなチャンスだと思いますけれども、なかなか思い切った意思決定ができてないと思います。

それから、人への投資ですね。諸外国では人材への投資をすごくやっているのに対して、日本はなかなかできていない。とくに若者の力が活かされていないと思っています。これはやはり、解決していく必要があるんじゃないでしょうか。

松尾研究室は、大学の中でディープラーニングの講義を2015年からやっていますけれども、初年度は30名、次の年は190名、次の年は360名ということで、どんどん受講者は増えている。オンラインで(講義を)行うと、2,000名近くの応募者が来たりします。やはり、多くの人がこういう技術を勉強したいと思っているんだと思いますし、そういう中からいくつかスタートアップが出てきて、がんばっているというような状況になっています。

インターネットが出てきたときにいろんなスタートアップが出てきたように、技術の変わり目にはいろんなスタートアップが出てきます。そういう仕組みを作っていくべきだと思っています。

日本ディープラーニング協会で「テスト」を行う理由

ディープラーニングがこうした大きな変革をもたらす技術なんだとすると、そこに対する産業育成、人材育成はきちんとやっていくべきだと思っていまして、日本ディープラーニング協会というものを昨年作りました。

ここでまず人材の育成をしようということで、資格試験を作っています。日本人はテストがあると勉強するので。

(会場笑)

それで、テストにしようと(笑)。ディープラーニングという分野は、本当に技術の進展が早いので、正直をいうとテストを作れるようなものじゃないんですよね、本来は。キャッチアップするだけでも大変ですけれども、テストにしたほうが、学ぶべきことについて多くの人がわかりやすくなるので、日本らしくていいんじゃないかと思っています。

そして、E資格、G検定というものを作りました。E資格はエンジニア向けで、G検定はディープラーニングをビジネスに活用しようという方向けの資格です。G検定のほうはもう3回実施していますけれども、1回目が1,500名、2回目が2,000名、3回目が2,700名でした。まだ(協会が)できて1年ちょっとしか経っていないんですけれども、すでに6,000名以上の方に受けていただいています。

例えば、これを社内で10人に受けていただくと、その10人の間での会話のレベルがすごく上がるんですね。とくにビジネスへの活用を考えている方で、興味のある方はぜひ受けていただければと思っています。

さらに、日本らしいやり方の1つとして、高専生との連携も少しずつやり始めています。香川県の香川高専というところと連携させていただきました。結局、ディープラーニングの技術というのは、使おうとするとすぐにハードウェアの話になります。カメラをどうするんだ、通信・電源をどうするんだ、チップをどうするんだということですね。

ですから、ソフトウェアに強い人よりも、実はハードウェアに強い人が取り組んだほうが価値が出やすいんです。とくにGAFAや中国のBATのような(企業に在籍する)エンジニアの方は、本当にレベルが高いです。そういう人たちと競争しようと思うと、やはりハードウェアの技術をテコにするしかないんじゃないかなと考えています。

日本の技術者は、機械系・電気系に強い方が多いですからね。とくに高専は、そのための教育の制度が進んでいます。こうした人たちにディープラーニングに取り組んでもらって、いろんなイノベーションを起こしていただけるといいなと思っています。

単なる流行ではなく、本質的な技術

最後に言いたいことは、ディープラーニングというのは「流行り」の技術ではなく、かなり本質的な技術だということです。それはなぜかというと、深い関数を使った最小二乗法だからですね。深い関数を使えることによって表現力が高くなるということがありますので、それができるようなったというのは非常に大きな変化です。

それから、ディープラーニングの技術は、これから10年、20年かけて、いろんなビジネス展開がなされていくはずです。その最初期にいるということで、そうしたビジネスをどうやって作り上げていくかが、すごく重要なポイントだということです。

そして、このディープラーニングの技術はハードウェアと非常に親和性が高い。昨日もPFNの西川(徹)社長が発表されていましたけれども、チップの話もそうですし、いろんなアルゴリズムに合わせたハードウェアの構成というのも、いろいろあるはずです。

そのあたりは、これからどんどん広がっていくと思いますし、いろんなビジネスチャンスがあるんじゃないかなと思っています。ですので、僕からのメッセージとしては、ぜひこのディープラーニングの技術を学んでいただき、新しいことにどんどん取り組んでいただければと思っております。

以上になります、どうもありがとうございました。

(会場拍手)