コンピュータが生まれてしばらくした頃、コンピュータによって生まれる人工知能とは、「一度覚えたことは決して忘れない」ものであるだろうと考えられていた。それが人間と違って機械知性の優れたところだと信じられていたのだ。
ところが今日の人工知能研究では、むしろ効率的に忘れることが重要だということが分かってきている。「忘れる」とは、重要な情報かそうでないかを取捨選択し、重要な方を残す、ということだ。
覚えることよりも適切に忘れることのほうが難しい
原始的なニューラルネットワークのひとつにアソシアトロンというものがある。アソシアトロンは「プラス」「マイナス」「不明」の3状態を持つ記銘/想起ネットワーク[※]だ。
※記憶には、「記銘」「保持」「想起」という3つのプロセスがある。記銘はインプットすることで、保持は長期記憶として保つこと、想起は必要な時に思い出すこと。
あるパターンを記銘させておくと、ノイズで一部の情報が欠落しても、もとのパターンを思い出す(想起する)ことができる。
原理は単純で、あるニューロンと他の全てのニューロンが相互に接続されていて、それぞれのニューロンとニューロンの間のシナプスが「うちのニューロンがプラスのときは、あのニューロンはマイナス」というようなことを記憶(記銘)しておく。思い出す(想起する)ときは、欠落部分、つまり「不明」のニューロンの値をそれぞれプラスかマイナスかわかっているニューロンからのいわば「多数決」で決定する。このとき、「自分はプラス(またはマイナス)だ」と主張するニューロンがあっても、全体のバランスから「いや、お前はマイナスだ」と多数決で決まってしまうと、そのニューロンの主張はノイズとして除去されてしまう。
アソシアトロンに覚えさせるパターン数に制限はないが、面白いのは、あまりにたくさんパターンを覚えさせると記憶が曖昧になり、うまく思い出せなくなるという性質だ。うまく思い出せない場合というのは、たとえば複数のパターンが複合して思い出されたり(記憶がごっちゃになる)、もしくは欠落部分がどうしても思い出せない(記憶に穴があく、曖昧になる)という状態だ。人間の記憶にも似たようなことがあるだろう。
この現象からわかることは、正確に覚えることよりも適切に忘れることのほうがずっと難しく、そして重要かもしれないということだ。
実際、ごっちゃになったり曖昧になったりする記憶というのは、普段あまり使わない記憶ではないだろうか。急に思い出そうとしたらなかなか思い出せなかったり、他の記憶と混同したりするという現象だ。
しかしある記憶をいつ忘れるべきなのか、ということをプログラマが決めるのはかなり難しい。
深層学習を使った自然言語解析などに用いられるLSTM(Long short-term memory)という仕組みは、まさしく記憶をいつまで維持すべきかということも学習する。
LSTMにはいろいろな世代があるが、最近よく使われているLSTMには忘却ゲートという仕組みが用意されている。これは簡単に言えば、それまで学んだ内容をいつ忘れるべきか学習する仕組みだ。
LSTMを使うと、それまでの機械学習にはできなかった時系列データの理解ができるようになる。たとえば気温変化や相場の変動といったことから、文章の内容がポジティブなものかネガティブなものか、その文章がポエムなのかニュースなのかといったことまで分類できることが期待されている。
Wikipediaの全文を読んであらゆる質問に答える人工知能
LSTMを用いた自然言語解析は様々なものが実験されているが、ひとつ面白い成果としてFacebook AI Researchが公開しているオープンソースの人工知能、「DrQA」を紹介しよう。
cakesは定額読み放題のコンテンツ配信サイトです。簡単なお手続きで、サイト内のすべての記事を読むことができます。cakesには他にも以下のような記事があります。