渋谷駅前で働くデータサイエンティストのブログ

元祖「六本木で働くデータサイエンティスト」です / 道玄坂→銀座→東京→六本木→渋谷駅前

ディープラーニング(Deep Learning)の歴史を振り返る

先日Quora日本語版でこんな回答を書いたのですが、ついでなので少し文脈情報を付け足してブログの方に再録することにしました。理由は単純で、このブログでディープラーニングの歴史についてまとめた記事を今まで書いてきたことがなく、そしてブログ記事にした方がより認識違いや調査不足などについての指摘をもらいやすいと思われたからです。ということで、以下の説明に関してツッコミがあれば是非コメント欄などにお寄せくださいm(_ _)m


f:id:TJO:20200816144300p:plain
(A Neural Network Playground)

ディープラーニングを語る上で、その前史であるパーセプトロン、そして(人工)ニューラルネットワークの話題は欠かせません。以下大まかに説明していきましょう。(※歴史解説中では敬称略、各種用語は原則カナ表記*1

パーセプトロンの登場


まず、脳の神経回路網に関する生理学的研究は19世紀ぐらいから盛んになって以後連綿と続けられており、その帰結として「脳の神経回路網を模倣したコンピュータを作れば人工知能が実現できるのではないか?」という期待感がかなり古くからありました。そこで1958年にローゼンブラットが最初に提唱したのがパーセプトロンです。発想としては単純で、事前に決められた(学習データとして)出力を実現するためのパラメータを入力に合わせて最急降下法で推定する*2というものです。


f:id:TJO:20200816152503p:plain
(By Mat the w at English Wikipedia, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=23766733)

これは神経生理学的研究から得られていたニューロン(神経細胞)の人工的モデルに基づく初めての「人工神経回路網」として考案されたもので、1960年代に爆発的なニューラルネットワークブームを引き起こします。開発当時は画像認識などに用いられていたようです。


ミンスキーによる批判と第1の冬の時代


f:id:TJO:20200816145555p:plain

ところが、現代から見ればパーセプトロンはただのロジスティック回帰とほぼ等価であり、イコールただの線形分類器に過ぎません。実際に、パーセプトロンと等価なロジスティック回帰でやってみるとこうなります。左の線形分類可能問題は簡単に解けている*3のに対して、右の線形分類不可能(非線形)問題は全く解けていません。これは本来ならば最低でも十字形ないし「く」の字を2個組み合わせた「直線(線形)ではない」決定境界を引かなければならないパターンです。


このためミンスキーらによる「パーセプトロンは線形分類不可能問題を解けない」とする批判が上がり、工学的なパターン認識アルゴリズムとしてのニューラルネットワーク研究は下火となり冬の時代を迎えます。


(この間、神経生理学分野では1970年頃に「小脳はパーセプトロンである」とする説が夭折*4した天才マーらによって提唱され、前後してシナプスの長期増強・抑制現象が発見されたことによって小脳パーセプトロン説は確定した学説となったそうです。これを含め、心理学・生理学・認知科学などの分野において脳を理解するためにニューラルネットワークを研究する学術的立場をコネクショニズムと称します。コネクショニズムディープラーニングとの関係とその歴史は全て論っているだけで別個の記事が1本書けてしまうので、ここでは割愛します)


誤差逆伝播学習則と中間層を用いたニューラルネットワークの登場


では、線形分類不可能問題を解くにはどうしたら良いでしょうか? このアイデアに誰がいつ到達したのかは実は僕も正確には把握していませんが、「層」を増やすという考え方はそもそも霊長類の視覚野がV1-V2-V3-V4/MTのような階層構造をなすことからかなり初期からあった模様です。その後、パーセプトロンの「層」を増やすたびに、決定境界の形が「直線→領域→ドーナツ型領域」と複雑さを増やしていけることが段々分かっていったようです。


そこで、まず「中間層」(隠れ層)を1つ加えて線形分類不可能問題も解ける3層ニューラルネットワークが提唱されました。複数年にまたがる成果のためいつとは断言しにくいのですが、一般に1986年にラメルハートヒントンが3層ニューラルネットワークのパラメータ推定のための誤差逆伝播学習則(バックプロパゲーション:主にシグモイド関数と合わせて用いる)を発表したことをもって中間層ありニューラルネットワークの始まりとみなすことが多いようです。


f:id:TJO:20200816150515p:plain

パーセプトロンでは解けなかった線形分類不可能問題が、3層ニューラルネットワーク(ユニット数7)では適切に決定境界を引けていることが分かります。同時期に日本の福島邦彦のネオコグニトロンの影響を受けたルカンによる畳み込みニューラルネットワークが登場したこともあり、音声・文字認識や3次元物体認識などに使われることが多かったようです。


ニューラルネットワークの学習プロセスの問題と第2の冬の時代


しかしその後、「もっと中間層を増やせばもっと性能が上がる」はずだったニューラルネットワークは大きな問題に直面します。いくつかのテーマに分けられますが、最も深刻だったのは局所最適化及び勾配消失問題です。これは実は最適化計画分野の問題とも言えますが、まず従来使われてきた最急降下法(勾配法)では、中間層の数や学習データをどんどん増やしていくと学習データと出力との誤差をうまく減らし切れず、途中にある局所最小値(ローカルミニマム)にはまってしまっていわゆる過学習を起こしたり、真の最小値(全体最小値:グローバルミニマム)までたどり着けないという難点がありました。もう一つは勾配消失問題で、従来逆伝播学習則と共に用いられてきたシグモイド関数によって学習データと出力との誤差を減らそうとしても、中間層を重ねるにつれて極端なS字形をしているシグモイド関数の「端」の方に誤差勾配が寄ってしまい、誤差の減少が進まなくなるという不具合がありました。実際、これらの問題によって例えば英語のテキスト処理を行う際に過去形が識別できないなどの不具合が生じていたそうです。


これらの問題によって再びニューラルネットワーク研究は停滞し、SVMランダムフォレストといった他の新しい統計的学習モデルの隆盛もあって「第2の冬の時代」と言われる停滞期に入ります。いわゆる「ディープラーニング以前の機械学習」というのは、この2000年ちょうど前後に勃興したそれらの統計的学習モデルたちを指すことが多いようです。


ディープラーニングの夜明け


この停滞期を打ち破ったのが、あのヒントンでした。彼は2006年に局所最適化と勾配消失問題を解決するためのアイデアとしてオートエンコーダ及びディープビリーフネットワークという手法を提案します。これにより、3層以上即ち中間層が2層以上あっても学習(パラメータ最適化)を進み続けさせられるようになりました。


それからしばらく水面下で様々な研究機関やBig Techと呼ばれる企業たちがニューラルネットワーク研究を手掛け続けた末に、ついにディープラーニングが世に出る時がやってきます。国際的な画像認識アルゴリズム性能コンペとして知られるILSVRCの2012年大会において、ヒントンのグループが考案した中間層5層*5AlexNet*6が過去のベストモデルに対しても2位以下のモデルに対しても大差をつけて優勝したのです。AlexNetは勾配消失対策としてシグモイド関数の代わりにReLUという活性化関数を使い、ドロップアウトによって局所最適化と過学習を回避する、などの現在も使われるディープラーニングのパラメータ最適化改善手法を用いており、この時をもってディープラーニングの勃興とみなす資料が多いです。


f:id:TJO:20200816151547p:plain
(Sparse Deep Neural Network Exact Solutions)

以後のディープラーニングの快進撃は論を俟たないでしょう。大規模画像データベースであるImageNetを題材とするILSVRCで優勝したこともあって当然のように画像認識分野では従来手法の大半を追い落としてデファクトスタンダードの座に収まりました。その後の再帰ニューラルネットワーク手法の発展によって自然言語文章などの系列データに対してもディープラーニングの適用が年々進み、BERTGPT-3のような「人間を超える文章理解能力を持つ」ニューラル言語モデルが公開されたり、最後までコンピュータが人間に勝てないとされてきた囲碁で世界チャンピオンを倒したAlphaGoのような「人工知能システム」が登場するようになりました。そして、今日の今この瞬間も世界中でディープラーニングの研究が進められ、その勢いは半導体におけるムーアの法則を超えるほどとまで言われています。


かつてニューラルネットワークを第2の冬の時代に追い込んだ勾配消失問題や局所最適化問題も、現在では最適化計画分野との共同研究が進んだことで様々な手法で解決が図られています。例えば各種の確率的勾配降下法や、ベイズ最適化によるハイパーパラメータ調整などが挙げられます。また「何故ディープラーニングがこれほど高い性能を出せるのか」という理由を探るための理論解析研究も近年では盛んです。個人的には『深層学習による非滑らかな関数の推定』という研究に注目しています。


一方で、あまりにも高性能化し過ぎたディープラーニングディープフェイクのような倫理的問題をも引き起こすようになってきています。ヒトは、自らの脳を模倣しようとして、結局模倣するのをやめて独自の進化を遂げさせたニューラルネットワーク(人工神経回路網)が、いつしか自らの文明社会を脅かす存在になりつつあるという状況に直面しているというわけです。今後ディープラーニングがどのような進化を遂げていくのか、様々な観点から目が離せないというのが現状だと思います。


また空前のブームとなったディープラーニングへの一種のアンチテーゼなのかもしれませんが、近年になって2000年頃に完成した「従来型」の機械学習手法たちの再評価が進みつつあるのも面白い傾向だと感じています。例えば上記のリンクでは「駐車場の混み具合」をMapsアプリによる自動車の位置情報から推定する際に「各種特徴量がどれだけ効いているかが分かりやすく扱いやすい」という理由で、与える特徴量に工夫を凝らした上で単純なロジスティック回帰を学習モデルに使ったという話がされています。あまりにもディープラーニングが高性能過ぎるが故に、従来手法の便利な点が見えてくるという側面もあるのかもしれません。


個人的な余談


……ところで。ディープラーニングの開祖であるヒントン先生*7が来日された際に社内で講演を聞く機会がありました。その際に話をされていたのがCapsule Neural Networkの話題だったのですが、どうやらヒントン先生は「もっとヒトの脳に似せるために脳と同じようにある程度事前知識(いわゆる視覚野における方位選択性カラムのようなものを想定している)が使えるディープラーニングを目指すべきだ」ということを考えておいでのようでした。今もヒントン先生は、ニューラルネットワークにヒトの脳を模倣させる夢をお持ちなのだなと思った次第です。


そして全くの余談ですが、ヒントン先生は長年の腰痛持ちだそうで、長時間座っていられないため長距離フライトには乗れない*8とのことで、実はもう長らくトロント近辺から外には出られていなかったのだそうです。この時の来日は、極めて稀少な生のヒントン先生にお会いできる機会だったのでした。

*1:このブログでは従来各種用語は原語の英語表記のままにしていることが多いのですが、元のQuora回答に合わせます

*2:学習データに対する出力の誤差を最小にするパラメータを数値解析で逐次的に求める

*3:赤ドットと黒ドットを分ける決定境界が綺麗に引けている

*4:30歳にしてMITの正教授職に就いたが35歳の若さで白血病で急逝した

*5:正確には畳み込み層:さらに全結合層3層が加わる

*6:AlexNetという名前は筆頭著者のAlex Krizhevsky氏に由来する模様:実は調べて初めて知った

*7:弊社トロント拠点に勤める上級研究者でもおられます

*8:乗るとしたらビジネスクラス以上でフルフラットシート利用