1. HOME
  2. ブログ
  3. IT技術
  4. 人工知能の欠点、破局的忘却とは?

人工知能の欠点、破局的忘却とは?

一度覚えたことを忘れる?破局的忘却とは?

現在、「人工知能(AI)」技術は至る所で耳にするようになりました。

例えば工場で、生産したものに傷がないか検品するにも、画像認識の人工知能が使われています。

その精度は凄まじく、人間より素早く、かつ正確に行うことができます。

しかし、そんな万能とも思えるような「人工知能」にもいくつか欠点があります。

破局的忘却(破滅的忘却)

それは、破局的忘却(または、破滅的忘却)と呼ばれる欠点です。

なにやらカッコイイ響きの言葉です。

ですが、その内容は「一度何かを学習したネットワークに新しいものを覚えさせようとすると、以前学習したものを忘れてしまう」というもの(笑)

例えば、「りんご」「みかん」を識別できるネットワークがあったとします。

そのネットワークに新しく「ぶどう」も識別させようと学習すると、「りんご」「みかん」はもう忘れているのです!

【図、破局的忘却するネットワーク】

破局的忘却の対策は?

こんな話、人間ではありえない話ですよね(笑)

しかし実際、人工知能の分野ではこのような問題がしばしば取り上げられています。

このままでは、最初に覚えたものしか判断できない、融通のきかない人工知能のままです。

この破局的忘却をどうにか防ぐことはできないのでしょうか?

解決策1:もう一度最初に憶えたものも学習する

もっとも単純と言える考えですが、新しく「ぶどう」を覚えさせるときに、「りんご」「みかん」をもう一度復習すれば良いのです(笑)

そうすればネットワークは、「りんご」「みかん」「ぶどう」をすべて識別できるネットワークになります。

まあ・・・当たり前といえば当たり前ですね。

【図、もう一度昔覚えたものを復習する】

うん…たしかに解決できそうです。

ですが、ちょっとナンセンスに感じませんか?

もし、今後覚えるものがどんどん増えていって、最終的に何万種類の識別が可能なネットワークになって、新しく1つのものを覚えるために、その何万種類のデータをもう一度引っ張り出して覚えさせ直すことは、あまりにも効率が悪すぎます

小さなネットワークでは良い方法かもしれませんが、人間の脳でこのようなことが起きているとも考えにくいです。

解決策2:擬似リハーサル(pseudorehearsal)

擬似リハーサルは、破局的忘却への対策としてメジャーな手法のひとつです。

心理学において、暗記するために何度も復唱したり、書き写したりして覚えることを「リハーサル」と呼びます。

ある意味、先ほどの解決策も「リハーサル」の一種ですね。

この擬似リハーサルは、まさに「リハーサル」を参考に考案された手法です。

内容としては、先ほどの「覚えたものを復習する」方法と似ていますが、こちらよりも「スマートな方法」です。

擬似リハーサル

まず、通常通りネットワークに「りんご」「みかん」を覚えさせます。

そして新たに「ぶどう」を学習させる前に、いくつかのランダムな入力パターン(擬似パターン)を作成します。

その擬似パターンをネットワークに流し、得られた出力結果をその入力パターンの教師信号として紐付けて、それも「ぶどう」と同時に学習させる、というものです。

擬似リハーサルの概略

この擬似パターンとそれに対応する出力値(教師)には、ネットワークの情報が詰まっています。

先ほどの単純な解決策より、かなり少ない労力で破局的忘却を改善できます。

もし擬似パターンを学習ごとに100個用意するのであれば、例え何万種類の情報がつまったネットワークでも、新たに学習するのは、その新しい学習データと、たった100個の擬似パターンだけです。

解決策3:EWC(Elastic Weight Consolidation)

EWCとは、GoogleのAI開発チームDeepMindが提案した手法で、2017年と比較的新しい手法です。

【元論文】
https://arxiv.org/abs/1612.00796

概略は、「一度学んだ特徴の中から重要なパラメータを変化させずに新たな学習を行う」というもの。

少しイメージしづらいかもしれませんが、論文中の図を見てみましょう。

EWCの概略図

上図で、グレーのパラメータ空間がタスクAと書いてありますが、今までの話に合わせれば、「りんご」と「みかん」が識別可能なパラメータ空間です。

そして、クリーム色のパラメータ空間(タスクB)は、今までの話でいうところの「ぶどう」を識別できるパラメータ空間です。

それで、重なった部分が「りんご」「みかん」「ぶどう」すべて識別できるパラメータ空間を表しています。

  1. グレー色・・・「りんご」と「みかん」が識別可能なパラメータ空間
  2. クリーム色・・・「ぶどう」を識別できるパラメータ空間
  3. 重なった部分・・・「りんご」「みかん」「ぶどう」すべて識別できるパラメータ空間

矢印について

それぞれの矢印は、最初に学んだタスクAの重要なパラメータ\(\theta^*_A\)が、追加学習後にどこに移動してしまうかを示しています。

  1. 青矢印・・・何も考慮せずに「ぶどう」を学んだとき
  2. 緑矢印・・・二つのパラメータ空間のL2距離を最小にするよう(つまりお互いのパラメータ空間の中間)にして「ぶどう」を学んだとき
  3. 赤矢印・・・EWCで「ぶどう」を学んだとき

EWCが一番最適なパラメータ空間に移動する

この図では、EWCが一番最適なパラメータ空間に移動することを示しています。

実際のこの重要なパラメータを求める計算は、とても複雑なので今は割愛しますが、重要なパラメータと現在のパラメータとの差分を誤差関数に加えることにより、重要なパラメータとの差を小さくするように学習が進んでいきます。

気になる方は、ぜひ元論文等を参照してみてください。

破局的忘却についてのまとめ

今回は、人工知能技術の欠点である破局的忘却について簡単にご紹介しました。

破局的忘却は、継続的に学習するような場面では重要な問題ではありますが、いくつかの解決策が提示されてきていることもご紹介しました。

さまざまな場面で活躍する人工知能ですが、まだまだ欠点はあり、発展途上な研究ということが分かると思います。

他にも、まだ人工知能の欠点はありますが、それはまた別の記事でお話ししたいと思います。

関連記事

・ 機械学習の元祖「パーセプトロン」を解説・実装してみよう
・ 多層パーセプトロンを解説・実装してみよう
・ 機械学習の要「誤差逆伝播学習法」を解説・実装してみる
【前編】自作の誤差逆伝播学習法で手書き数字を認識させてみよう
【後編】自作の誤差逆伝播学習法で手書き数字を認識させてみよう
【前半】KerasとKivyを使って簡易手書き数字認識アプリを作ってみよう
【後半】KerasとKivyを使って簡易手書き数字認識アプリを作ってみよう

一緒に働いてくれる仲間を募集中!

ライトコードでは、仲間を募集しております!

ライトコードのモットーは「好きなことを仕事にするエンジニア集団」。そのため、あなたがやりたい仕事を全力で応援します。

どうせなら、好きなことを仕事にする方が人生は何倍も素晴らしいものになるはず!また、ライトコードはこれからの会社ですので、みんなで新しい事業や組織を作っていく楽しみもあります。

あなたからのご応募をお待ちしております!

ライトコードでは一緒に働いていただける方を募集しております!
お気軽にご応募ください。

採用情報はこちら

書いた人はこんな人

ライトコードメディア編集部
ライトコードメディア編集部
「好きなことを仕事にするエンジニア集団」の(株)ライトコードのメディア編集部が書いている記事です。

関連記事