機械学習と理解は対立するか

(この記事は書きかけでしばらく放置していたのだが、何となく機運が高まったので、公開することにした)

理解とディープラーニングの対立?

現在は第三次AIブームということで、毎日のように、AIやディープラーニングに関連するニュースを耳にする──これはまあわたしが積極的にその手の情報を集めているせいもあるのだが、おそらく関心のない人も、「何かAIがすごいらしい」という話をよく聞くなという印象くらいはもっているのではないだろうか。たとえば最近は、人間が書いた文章とほとんど見分けのつかない文章を生成するGPT-3が話題になっている*1

わたし自身は、最近は仕事でディープラーニングを使うようなこともやっているし、論文を読んだり、自分でディープラーニングのモデルを実装したことも何度かあるので、まあその手の情報に詳しい方だと言っても問題はないだろうと思う──もちろん機械学習の研究者ではないので、あくまでユーザーにすぎないが。ブログで論文を紹介したこともある。

「神経科学に触発された人工知能」 - うつし世はゆめ / 夜のゆめもゆめ

そんな中、最近気になっている見解がある。

機械学習の発展によって、人間の理解は不要になり、予測だけが求められるようになる」というやつだ。

典型的には、一方の側に理解説明が──人間的なものの代表として──置かれ、もう一方の側に、ディープラーニングやAI、あるいはそれらの技術を利用した予測が置かれ、両者が二項対立のような形で捉えられる。

たとえば、以下のブログ記事などでそういう話題が取り上げられている(リンク先の記事はそこまで単純な意見を述べているわけではないが)。

深層学習は科学に「理解」の放棄を迫るのか?:「高次元科学への誘い」(丸山宏)へのコメント - 重ね描き日記(rmaruy_blogあらため)

ディープラーニングは「予測」しているか?

この手の見解に関しては、わかる部分もあるような気がするのだが、今のところかなりの違和感を覚えている──多分もう少し言い換えを探るとかして穏当な見解に言い換えれば、主張の大部分は受け入れられるような気もするのだが。

わたしが感じている最大の違和感は「理解っていうのは人間にしかできない事柄なのか?」という部分にあるのだが、先にもっと細かい部分から指摘しよう。

まず、そもそもディープラーニングの実用例は、その大半が予測ではないということは指摘されて良い事柄だと思う。機械学習に関して、何かのブラックボックスに大量のパラメーターを放り込むと、確実な未来予測をしてくれるというイメージをもっている人は結構いるのかもしれないが、そのイメージに合致する実用例って本当にそんなにあるのかというのは疑問だ──これはもちろん、どういう実用例に注目するかで印象が左右されそうだが。

すごく普通のことを言うと、冒頭であげたGPT-3を含め、ディープラーニングのおもしろい適用例の多くはむしろ生成モデルだろう。生成モデルというのは、まあ、画像を作ったり、音楽を作ったり、文章を作ったりするモデルだ。生成モデルもある意味では「予測」をしていると言えなくもないのだが、少なくとも上で述べたような予測のイメージとは違っている。あるいは、多くの人が使ったことがありそうな例で言うと、機械翻訳などもあげられるだろう。機械翻訳は予測だろうか。

したがって、よく考えると、ディープラーニングを「理解ではなく予測」という言葉でまとめること自体、すでにかなり変だと思うのだが、上記のような見解をよく目にするので、何でみんなそんな変なこと言うのかなというのが気になっている。

機械も理解する

上のような二項対立では、予測は機械にもできるが、理解は人間にしかできないという風に前提されているようだ。だが、これは少なくとも、かなり疑わしく、異論の余地のある見解ではないだろうか。もちろん「理解」という語をそういう風に定義して使うことはできるし、歴史的にそういう用法があったことは知っている。例えば、有名なところでは、新カント派の重要概念である「理解」は人間にしかできないものとして想定されていた。

しかし、理解という現象を真面目に捉えようとするかぎり、「理解は人間にしかできない」という規定はどう考えても余計な条件であるし、その立場を維持することは難しいのではないだろうか。

ウィルケンフェルドという哲学者が理解に関しておもしろい論文を書いているので紹介したい(実は元々この論文を紹介したくてこの記事を書きはじめたのだが、関係ない部分が長くなってしまった)。

Wilkenfeld, Daniel (2019). Understanding as compression. Philosophical Studies 176 (10):2807-2831.

詳細は紹介しないが、この論文でウィルケンフェルドは、理解を、有用なかたちで情報を圧縮することとして定義している。例えば「あるひとが述語論理を理解している」というのは、ウィルケンフェルドの定義によれば、適切に圧縮されたかたちで──丸暗記などに頼ることなく──述語論理に関わる証明などをうまく再構成できるように情報を保持している状態ということになる。また、当然ながら「有用なかたち」がどういうものであるかは、文脈によって変化しうる。

おもしろいのは、この定義に従えば、機械にも理解は実現可能であることだ。それどころか、現に近年のディープラーニングモデルの多くは、まさにこの情報の圧縮を明示的に行なっている。例えば、よく使用されるオートエンコーダーなどのアーキテクチャーは、入力情報を有用なかたちで圧縮することを目指すものだ。世界モデルと呼ばれるモデルでは、ビデオゲーム画面などの入力をオートエンコーダーに圧縮させることで、AIに外的世界(ゲーム内環境)のモデルを構築させるが、ウィルケンフェルドのような理解観をとるかぎり、世界モデルは、環境を──少なくともある程度は──理解しているということになる。

実際、現代の深層学習モデルが、対象の「理解」をもたないというのは、かなり無理のある見解になりつつあるのではないかとわたしは考える。BERT(モデルの名前)や、GPT-3が言語をまったく「理解」していないというのはもはや難しいのではないだろうか。もちろん、その「理解」が人間と同程度ではない(あるいは質的に違う)ということはあるにしても。

では、BERTやGPT-3が言語をある程度理解しているとして、その理解は「どの程度」なのか、というのはおもしろい問題だと思う。最近読んだ論文で知っておもしろかったのだが、BERTは、「家は大きい」「人間は家に入る」ということを「知って」いるにもかかわらず、「家は人間より大きい」ということを「推論」することはできないらしい。そういう理解をどう考えるかという問題はあるだろう*2

いずれにしても、深層学習モデルもまた何らかの仕方で対象を「理解」しているのだとすれば、「機械学習は理解を不要にする」といった見解は、少なくとも、単純すぎる見解ということになるのではないだろうか。

でも機械学習モデルはブラックボックスでしょう?

ここで、次のような反論があるかもしれない。仮に、機械学習モデルが何らかの仕方で対象を理解しているとしても、依然として、ディープラーニングモデルの中身はブラックボックスで、結局その「理解」は、人間が対象を理解することに何の貢献も果たさないのではないか。それなら、結局のところ、機械学習が理解を不要にするという見解は正しいのではないか、と。

だが、これに対しては、次のように再反論したい──いや、人間の理解も、そもそもブラックボックスじゃないかと。何らかの対象、例えば述語論理や複式簿記民法を深く理解しているひとが周りにいたとして、そのひとが対象をどのように理解しているか、それもまた周囲の人間にとっては不透明だろう。

つまり、ブラックボックスであることは、機械学習の特性ではなく、人間の理解も含め、理解というものにそもそも備わっている特性ではないだろうか。

対比をするなら、理解と違って、知識や理論は、他人とシェアしやすいようにできている。わたしたちは、本や論文を読んで知識を互いに共有しあったり、理論を他人とシェアすることができる。しかし、理解はそもそもシェアできる対象ではない。

そのように考えれば、理解と機械を対立させる見方はますますよくわからないものになる。機械学習ブラックボックスであることは、AIが理解をもたないことではなく、むしろ理解していることを意味しているからだ。

*1:この記事は書きかけでしばらく放置していたので、今はもうそんなに話題になっていない。

*2:この例を聞いて、全然だめじゃないかと思うむきもあるだろうが、なんでそんなことになってしまうのかというと、BERTはそもそもテキストからの入力だけを使って学習しているので、実際には「家」も「人間」も見たことがないという問題もあるのではないかと思う。