全4973文字
PR

クレイグ・スミス(Craig S. Smith)氏による、ジェフリー・ヒントン(Geoffrey E. Hinton)氏へのインタビューの最終回(4)をお届けする。話の後半、スミス氏が聞こうとしていることと、ヒントン氏の回答が次第にかみ合わなくなってきたようだが、それがかえって、ヒントン氏の人間の学習の仕組みについての洞察の深さを浮き彫りにする格好になった。

ジェフリー・ヒントン氏
[画像のクリックで拡大表示]
ジェフリー・ヒントン氏
(写真:クレイグ・スミス氏)

スミス氏:では、あなたの今後の研究の方向性を教えていただけますか。これらの3つの流れの延長線上になるのか、あるいは違う流れになるのか。

ヒントン氏: 私の主な関心は常に教師なし学習でした。それが人間の学習の大部分であると思うからです。カプセルをさらに発展させること、そしてSimCLRのような手法にも興味があります。

 蒸留(distillation)作業を改善することにも興味があります。蒸留とは、非常に大きなモデルがあるときに、それをデータでトレーニングし、データ内の主要なパターンを抽出して、パラメーターに取り込むというものです。すると、今度はずっと小さなモデルを、大きなモデルと同じか、それに近い性能になるようトレーニングしたくなります。しかし、それはデータから一直線にはできません。こうしたことはあらゆるケースで出てきます。

 例えば、昆虫が参考になります。大まかに言えば、ほとんどの昆虫には、環境から栄養を取り込むだけの幼虫と呼ばれるステージがあります。ほぼ、食べる機械といえるでしょう。丸々と太った醜いウジ虫、またはチョウの青虫は、太ることがまさに仕事なのです。その後、幼虫はいったん、(サナギの中で)ほぼスープに変わり、そのスープから、幼虫とは似ても似つかない成虫を組み立てます。青虫とチョウ(の成虫)はまったく違いますよね。

 昆虫はそのステージごとに最適化されています。幼虫は環境から栄養を取り込むために最適化され、チョウの成虫は、幼虫時代とはまったく異なる活動、つまり飛び回ったり交尾したりするために最適化されています。チョウも栄養を取りはしますが、幼虫と違ってそれに特化しているわけではありません。

 採掘作業(マイニング)にも似た例があります。例えば、カナダの金鉱が良い例です。そこで金を採るには、まず土の塊を採って、泥を洗い流します。ひたすらそれを続けるのです。その後、残ったものを高温に加熱して金を取り出す、という流れでしょう。

 これは、データマイニングについても同じです。つまり、まずは大量のデータセットがあります。そして最終的には、新しいデータを見て、どのクラスであるかを教えてくれる小型で高速動作するモデルを得たいのです。ところが、データから構造を抽出するのが得意なタイプのモデルは、小型で高速で、携帯電話で使いやすくて、しかも正しい判断を下せるモデルと必ずしも同じではありません。

 そこで、データから構造を抽出することだけに特化した、非常に大きなモデルを使うという考えに行き着きます。いったんデータの構造を抽出してしまえば、その大きなモデルを使って、小さなモデルをトレーニングできます。しかもその大きなモデルは、小さなモデルをトレーニングする上で、生データを使うよりはるかに優れていることがわかりました。

 それは徒弟制度、あるいは科学が機能する方法にも似ています。科学者が研究して物事の仕組みを一度理解すると、今度は学校で生徒にその仕組みを教えることができます。それで、ちょっと賢い生徒なら誰でもニュートン力学を学べるのです。しかし、そんな生徒がニュートン力学を発明できるかといえばそれは無理でしょう。かつてニュートンがそれを発明したからこそ、多少複雑とはいっても、その理論をうまく説明することができ、生徒に教え込めるのです。

 蒸留という考えも同じです。まずデータから構造を抽出するための非常に大きなニューラルネットワークを使い、次に、特定の目的のためのはるかに小型で、応答の速いネットワークを使う方法です。既に非常に幅広い分野で使われています。例えば、BERTでは、より応答が速いネットワークを得るために使われます。しかし、もっとずっと良いやり方もおそらくあるはずです。そして、その開発も私が取り組んでいることの1つです。