DeepMindの幼児の早期理解の論文を読む

ランニングできず 英語:Move Starwars

(1)DeepMindのハザビスが問題提起した、幼児が環境を急速に理解する謎についての論文を読む。

[1606.05579] Early Visual Concept Learning with Unsupervised Deep Learning

幼児は知識獲得前なので教師あり(ラベル付)モデルは使えず、非教師モデルとして生成モデルを扱っている。本論文では手書き文字の癖の認識で有名なKingmaのVAE(Varietional Auto Encoder)を使って実験している。

f:id:mabonki0725:20170806113750p:plain

                                                              VAEモデル

 

幼児にはガウス分布の隠れ変数z(位置、大きさ、回転)を成分別に獲得する能力があり、視覚的xな訓練によって、隠れ変数を学習するとする理論である。

 評価関数は以下でVAEモデルで解く。zは隠れ変数 xは視覚データ

 {\mathcal{L}(\theta,\phi;x) = E_{q_\phi(z|x)}(\log p_\theta(x|z)) - \beta D_{KL}(q_\phi(z|x)||p(z))}

 ここで

  \betaは隠れ変数zがガウシアンである依存度で=4が最適

  パラメータ{\theta,\phi}はVAEのネットワークで最適化する

学習結果として、隠れ変数の分布を増減させた結果を視覚として再現した結果が下記の4~5段目の図である。1から3段目の隠れ変数zの増減である。最下段の隠れ変数の分散が小さいので、学習できていることを示している。AとBは視覚データの種別でAは変動要素が1つのもの、Bは複数の変動要素の場合である。Aの左端4つは視覚変動に対して隠れ変数zの分散が大きいので、学習できなかった事を示している。

f:id:mabonki0725:20170806095022p:plain

 

 

 

 

好奇心を報酬とする理論

ランニング30分 英語できず

(1) 好奇心を報酬とする論文を読了する

[1705.05363] Curiosity-driven Exploration by Self-supervised Prediction

  下図の様な迷路ゲーム(Viza-Doom)の場合、迷路の端に報酬があり(右端の図)、各場面では殆ど報酬を見ることができない。現在の最先端の強化学習でも報酬が見つけ難いと殆ど学習ができない。その代替としてこの論文では「好奇心」を報酬としてゲームを解いている。代替報酬としては、「新規差」か「予想の外れ」となるが、本論文では後者を採用している。

 好奇心の報酬{r_i^t}を「予想との相違」を採用しているが、本当の報酬{r_t^e}との合計をA3C(並列のQ_learning)で方策{\pi(s_t,\theta_P)}の最適化を行っている。

 予想との相違である好奇心の報酬{r_i^t}は下記で定義

   {r_i^t = \frac{\eta}{2}||\hat{\phi}(s_{t+1}) - \phi(s_{t+1})||_2^2}

           ここで

               {\hat{\phi}(s_{t+1})}:予想した次の状態のencode特徴

               {\phi(s_{t+1})}:実際の次の状態のencode特徴

   予想した次の状態の特徴は深層ネットワークfで算出する(順モデル)

            {\hat{\phi}(s_{t+1})= f(\phi(s_t),\hat{a_t};\theta_F)} 

            次の行動予測も別の深層ネットワークgで算出する(逆モデル)

   {\hat{a_t} = g(s_t,s_{t+1};\theta_I)}

ここで各{\theta_p,\theta_I,\theta_F}は学習パラメータである。

この好奇心ではDoom迷路での動作は自然な動作を実現していると記述されている。

Doom迷路のデモは以下のGitHubでの実装され人工知能合同研究会でデモが発表された。 

github.com

この論文の残念な所は、予測した場面と実際の場面の比較に頼っており、実際の場面はゲームでの施行データを使っている。これでは数万回の施行がきず、ランダムに敵が出現する様な複雑な場面では予測と施行データとの比較が困難となると考えられる。残念ながらこの理論では迷路は解けるかもしれないが、シューテイングゲーム版のDoomムは難しいと考えられる。

 

ゲームDoomの実際の場面と迷路

f:id:mabonki0725:20170805072931p:plain

 

好奇心を本能的な報酬として解く論文

ランニングできず 英語:Toeic

(1) 好奇心による強化学習の論文を読む。

「Curiosity-driven Exploaration by Self-Supervised Prediction」

明示的な報酬を外生的報酬(extrinsic reward)とし、好奇心を本能的な報酬(instrinsic reward)として区別して、明示的な報酬の期待が少ない場合や定かで無い場合は好奇心を指針にすれば問題が解けるとの論文である。この実験では報酬が見えない場合のゲームでも良好な成績が示されている。

好奇心はには2つあり、「新規差」と「予測との相違」である。前者の新規差はDeepMindのUNREALに場面変異量として既に馴染みがあるが、後者の予測との相違はDeepMindのどのモデルにもない。この論文では後者を採っている、即ち

 好奇心=予想と実際が違うのは何故?

下記の結果からは明示的な報酬が殆ど獲得できない状況でもICM(Instrinsic Curiosty Model)本能的な好奇心があると多く明示的報酬が獲得できていることがわかる。

f:id:mabonki0725:20170804155907p:plain

DeepMindの方向性を纏める

テニススクール90分 英語:movie Fully

(1)DeepMindのハザビスの「脳科学とAIの関連」の記事を纏める

「Neuroscience inspiered AI」

何故この様な記事が書いたのか理由の推察であるが、DQNやAlpha碁の偉大な事業を深層強化学習で達成したが、さらに複雑な事象を相手にする場合では既存の手法に限界があり、人間の生存能力としての効率的な認識や理解能力に注目する必要があったためと考えられる。その点、外部記憶を使ったEpisode MemoryやNeural Turing MachineやDCNの成功は正しい戦略だったと云える。一方DeepMindの技術は未だに逆伝播モデルの範疇にあり、このままでは人間の効率的な学習に迫るには不足感を持っている。その点、脳科学では逆伝播に当たる現象は見られず、さらにDeepLearningには無い局所な最適化現象があり、そのギャップを埋める技術に期待を寄せている。

印象としては、GANに代表されるDeepLearningの生成モデルは、数少ない経験から効率的な理解(One-shot)や無体験でも理解(Zero-shot)する能力をうまく説明できると期待しているが、これをGameで実証するためか強化学習の理論寄りから抜け出せていない気がする。

(2)全能アーキテクチャで紹介があったICMの論文に注目する。

「Curiosity-driven Exploration by Self-Supervised prediction」https://arxiv.org/abs/1705.05363

 概要を読むと凄い内容のことが書いてある。報酬が殆ど無い場合や、認識できない場合にも一般的に解けるモデルとある。

 

 

 

 

DeepMind AIの過去・現在・将来の概観記事を読む

ランニング30分 英語できず

引き続きDeepMindハザビスの「AIと脳神経学の関連」の記事を読む。

「Neuroscience-Inspired AI」

次の様なDeepMindが構想するAIを述べており、既に素晴らしい成果であるDQNやAlpha碁を超えて、さらに実用的で複雑な問題を解決あるいは取組んでいる。様々なモデルやアイデアは、これらが脳神経学の知見と近いものがあるとしている。しかしDeepMindとしての主張は、脳神経学を真似るのではなく、問題解決型のAIモデルを作るのに脳神経学を参考にしているという話である。

1)今まで

 現在のAIとしての成果が著しいのは、DQNやAlpha碁に見られる様にDeepLearning とRL(強化学習)を統合したDeepRLである。このモデルは一見すると脳神経科学と隔ている様に見えるが、次の4つの分野で強い影響を受けている。

2)現在

 2.1) Attention

   CNNに見られる様にDeepLearningのネットワークは実データ(画像や音声)を

   仕組みとしてAttention(抽象化)する能力がある。これは脳科学の様々な部位の

   連携で認識する方法と異なる。

 2.2)Episodic Memory

   経験(One-shot)の記憶をEpisodeとして外部記憶に置き、これを効率的に

   使う方法である。これは脳が睡眠や休憩中に経験を抽象化して蓄積することに

   似ている。

 2.3)Working Memory

   系列記憶のLSTMの拡張として、Neural Turing MachineやDNC(Differencial

             Network Computer)は外部記憶上の制御機能で複雑な系列連想を可能にした。

   この記事には触れていないが、これは制御機能がLie群多様体での写像になって

   いることが後に証明された。

 2.4)Continual Learning

   人間や動物は過去の事を継続して覚えているが、NeuralNetworkは最適化モデル

   なので、前の状態を全て書き換えてしまう。EWC(elastic weight consolidation)

           は下図にある様に前の学習状態の重さを弱くして、必要になった場合に強く

   して復活させようとするものである。https://arxiv.org/abs/1612.00796

 

f:id:mabonki0725:20170802114707p:plain

   

3)これから

    3.1)Intuitve Understanding of the Physical World

       幼少記に、すぐ適応する仕組みの解明。これには生成モデルが適用でき

  これによる隠れ変数は成分(特徴量)を捉えており、これを学習することで

  早期の理解が可能になることが示されている。  

  Early Visual Concept Learning with Unsupervised Deep Learninghttps://arxiv.org/abs/1606.05579

        Attend, Infer, Repeat: Fast Scene Understanding with Generative Modelshttps://arxiv.org/abs/1603.08575

    3.2)Efficent Learning

  数少ない事例から、既存知識を駆使して推論する仕組の解明

       Building machines that learn and think like people https://arxiv.org/abs/1604.00289

  これも生成モデルを利用したモデルで、見慣れない文字を早期に理解する

  DRAW: A Recurrent Neural Network For Image Generationhttps://arxiv.org/abs/1502.04623 

  いわゆるC.Kempの概念理解  

        http://mlg.eng.cam.ac.uk/mlss09/mlss_slides/mlss09-tenenbaum-lecture1.pdf

   3.3)Transfer Learning

  転移学習による、新規知識の一般化

  https://rapunselshair.pbworks.com/f/barnett_2002.pdf

  人間が経験しなくても、理解できる仕組みの解明

  Zero-shothttps://arxiv.org/abs/1707.08475

        ロボテックス分野での早期理解

   Sim-to-real robot learning from pixels with progressive nets https://arxiv.org/abs/1610.04286

  

    3.4)Imagination and Planning

  人間は環境の不明度によって計画や模擬をする能力の仕組みの解明  

    3.5)Virtutal Brain Analysis

  AIは未だにBlackBoxなので実際の脳の複雑な仕組みをAIに適応して解明

4) AIから脳科学

 DeepLearningが逆伝播(Backpropagation)をして最適化しているのに対して、

 脳科学の知見ではこの現象が見られない事に苛立ちを示している。このギャップの

 解明を期待している。

     

 

DeepMindのAIと脳神経科学の関係の記事を読む

ランニングできず 英語できず

(1) pythonでの自然言語の頻度分析をmecabで行っているが。結果をファイルに書かない不具合対応に2~3時間費やした。

どの様な言語でもcloseするとメモリーにキャッシングしたデータはファイルに書出すが

pythonはf.flushで明示的に行なわないとファイルに書き出さない。

    f = open('output.csv',w)

    for word,cnt = noune_list.items()    #名詞(word)の出現頻度(cnt)のリスト

        s = word + str(cnt)+ '\n'

        f.write(s)

   f.flush   #明示的にファイルに書出しを指示する

   f.close

(2) DeepMindのハザビスが書いた記事「Neuroscience-Inspired Artificial Intelligence」を読む。

http://www.cell.com/neuron/fulltext/S0896-6273(17)30509-3?_returnURL=http%3A%2F%2Flinkinghub.elsevier.com%2Fretrieve%2Fpii%2FS0896627317305093%3Fshowall%3Dtrue

汎用AIを推進するについて、脳の研究成果は示唆として参考にするが、汎用AIは脳研究とは別であるとの考えを示している。どこかの団体が汎用AIの為に脳研究からアプローチしているが、数学や統計の理解が少ないと脳神経科学の仕掛けに頼ってしまうことを警告している。

 

 

 

Abbeelの論文アルゴリズムは報酬が得やすい初期状態の探索になっている

テニス4時間 英語:できず

(1)AbbeelのGoalからの強化学習の論文の下記のアルゴリズムがGoalからStartへ明示的に逆に辿る手続きになっていなく、理解が難しい。

このAlgorithm1の4、5行目の{S_g}をStartsに入れているのは間違に見えるが、Goal近辺から摂動を与え繰返し毎に徐々に状態を増加させているが、その状態は報酬を得やすい場合に限っている。

Procedure2のSampleNearbyは初期状態を乱数アクションを加えて変えていて

乱数的な初期状態を作っている。Train_polはトラストリージョン(TRPO)の方策改善である。多分Selectがこの論文の最大の寄与で、報酬が得られる初期状態を選んでいる。このアルゴリズムの意味はGoalから報酬が得られやすい初期状態の探索アルゴリズムになっている。

上記の理解だとすると、この論文の適応範囲は行動の摂動のみで状態が変更できる簡単な操作モデルに限定されると思われる。

f:id:mabonki0725:20170730194832p:plain