Googleが2017年6月に発表した論文「One Model To Learn Them Al」で、異なる複数のタスクを、ひとつのディープニューラルネットワーク(DNN)で学習させると、全体のパフォーマンスが向上したと発表した。
ディープラーニングは、画像認識や音声認識などの分野で、人間の能力を凌駕するほどの性能を示している。しかし今までのところ、単一のタスクしかその能力を発揮できていない。しかも精度の高いパフォーマンスを得るには、莫大な量の正解付き学習データとネットワークのチューニングが必要だ。このため、このような学習データが得られない分野では、ディープラーニングの応用が進まなかった。AI研究者たちは、もちろんこの課題解決に精力的に取り組んでいる。目指すは、あらゆる課題に対して単一のアルゴリズムで解決できる「万能アルゴリズム」だ。
しかし歴史の長い機械学習の分野では、「No Free Lunch 定理」という有名な定理がある。これは、どんな課題やどんなデータに対しても、最高の精度を出せるアルゴリズムは存在しない、という定理だ。機械学習の立場からみると、ニューラルネットワークは多数ある機械学習アルゴリズムのひとつでしかない。多層のニューラルネットワークが、何でもかんでも解決してしまうとは考えてはいなかった。
統計学が基本にある機械学習と、生物の脳をモデルとするニューラルネットワークを、同列に置く考え方に私は昔から違和感があった。そもそも脳は巨大なメモリだが、直接演算する機能は持っていない。学習を通じて経験値をパターン化して圧縮し、ニューロンのネットワークに分散化してメモリしていると思われる。それだけではもちろんないだろうが、CPUの内部にあるような数値演算ユニットALUが、脳の中で発見されたような話は聞いていない。つまり、ひたすら確率演算する機械学習アルゴリズムではなく、人間の脳をモデルにしたほうが、「万能アルゴリズム」の発見に最も早いはずだろう。
このGoogle社が発表した「MultiModel 」は、4つのブロックから構成された単一のDNNモデルだ。このマルチモデルに、英語・ドイツ語・フランス語を相互翻訳するタスク、画像キャプションのタスク、スピーチコーパス、ImageNetの各データセットを学習させる。そうすると、ひとつのタスクだけ学習するより精度が向上したというのだ。つまり、学習データが足りない場合でも、このマルチモデルを使うことでパフォーマンスの向上が期待できそうなのだ。
ここから万能アルゴリズムや、汎用AI (AGI : Artificial General Intelligence)までは遠いだろうが、着実に近づいているようである。そういえば、2016年10月にGoogle傘下のDeepMind社が発表した、DNC (Differentiable Neural Computers)も、複数の学習済みモデルを持つことができる次世代のニューラルネットワークだが、その後はどうなったのだろうか。