Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Curriculum for Reinforcement Learning

deeplab
January 24, 2021

Curriculum for Reinforcement Learning

深層学習&ロボティクス勉強会の資料です.
題材としてOpenAI の Robotics チームの研究者である Lilian
Weng さんのブログ (https://lilianweng.github.io/lil-log) を参考にし,資料作成,発表,ディスカッションを行いました.

deeplab

January 24, 2021
Tweet

More Decks by deeplab

Other Decks in Research

Transcript

  1. 深層学習&ロボティクス勉強会 deeplabは2019年4月に設立した学生による人工知能研究会である.東大,東工大,早 慶大をはじめとする都内の学部生を中心に20名以上が参加し,2019年度は5.4日に1 回ペース,年間60回を超える勉強会を開催し,人工知能関連分野 (ML, DL, CV, NLP, RL, Robotics,

    Speech, HCI, CognitiveScience, etc) を探究している. 今回は「深層学習の最新トレンドと強化学習,ロボティックス分野における発展」をテー マとし,勉強会を実施した.題材としてOpenAIのRoboticsチームの研究者であるLilian Wengさんのブログ (https://lilianweng.github.io/lil-log) を参考にし,資料作成,発表, ディスカッションを行った.
  2. Curriculum Learning • Curriculum: 複雑な知識を体系的に分解し、難易度に応じて提供する. • 人間同様, 機械学習においてもCurriculumを導入することが重要 [Elman, 1993].

    e.g., 実世界: 教育課程など. 機械学習 :簡単な学習データから学習し、徐々にデータを複雑にする. • Curriculumに基づいて学習を行うことで収束速度, モデル性能の向上が見込まれ る一方で, 悪質なCurriculumを用いると悪化する可能性もある. • 現在ではほとんどのケースで強化学習に適用され, 一部をのぞいて教師あり学習 に用いられる.
  3. Curriculum Learning • Curriculum Learningの例 [RL, supervised] サブタスクを与える agentを学習することで Curriculumを自動的に構築.

    [RL, supervised] 逆行可能な問題において, 問題を解くagentと, 問題を 作るagentを学習することで Curriculumを構築. [Other] (非RLなどにおいて) Curriculumを 経験的に構築する. Ex) task-specific curriculumの例 [RL, supervised] GANを用いて適切な目標を 複製することでCurriculum を構築. [RL, unsupervised] agentの成し遂げるtaskを skillに分解し, skillから新たに 軌跡を構築する. [RL, supervised] 別のtaskにおけるNNの 重みを利用することで 高度な学習を行う.
  4. Task-Specific Curriculum • Curriculum設定における焦点: Curriculumがうまく機能するための原理とは? e.g., 綺麗なデータは収束速度, 汎化性能に好影響. 難しいデータを徐々に導 入することでオンライン学習を高速化.

    [Bengio et al., 2009] • NaiveなCurriculum: データの難しさを徐々に上げてモデルを学習する. → データの難しさを定量的に図る手段が必要. • (本章) タスクごとにデータの難しさを経験的に測り、NaiveなCurriculumで学習する. • (次章以降) 強化学習により自動的にCurriculumを構築する.
  5. Task-Specific Curriculum • (例1) 他のタスクで学習されたモデルによる損失をデータの難しさとする [Weinshall et al., 2018]. curriculum

    : 簡単→難しい. control-curriculum : ランダム. anti-curriculum : 難しい→簡単 • この方法において, 事前学習されたモデルの知識がデータの難しさという情報を介 して転移される.
  6. Task-Specific Curriculum • (例2) Pythonによる算術プログラムの出力予想において, lengthとnestingを用いて データの難しさを定義する [Zaremba & Sutskever,

    2014]. ( length : 登場する数字の最大桁数. nesting : 演算の合成回数の最大値. ) 1. Naive Curriculum: lengthを徐々に上げ, 最大になったらnestingを上げてlengthを最小にする. 2. Mix Curriculum: length, nestingを定義域からサンプリング. 3. Combined: naive + mix. • Combined Curriculumは常にNaive Curriculumに勝り, 多くの場合でMix Curriculumに勝る. • 忘却を回避するため学習中に簡単なデータを混ぜることが重要であると示唆.
  7. Teacher-Guided Curriculum • Teacher-Student Curriculum Learning (TSCL) [Matiisen et al.,

    2017] は別のRL によってCurriculumを自動的に提案する手法. Studentは実際にタスクを解くRL agentであり, Teacherはタスクを選択するpolicyの役割を持つRL agent. • Teacherの訓練は部分観測マルコフ決定過程 (POMDP) として扱える. • Studentの状態𝑠𝑡 は観測されず, N個のタスクに対してのスコア𝑜 = (𝑥𝑡 1, … , 𝑥𝑡 𝑁)が観測される. • 行動𝑎でStudentに与えるサブタスクを選択する. • ステップごとの報酬はσ 𝑖=1 𝑁 (𝑥𝑡 𝑖 − 𝑥𝑡−1 𝑖 )で定義する. • 方策の選び方として𝜀-greedyやThompson samplingを用いる.
  8. Teacher-Guided Curriculum • タスク空間が連続な場合 [Portelas et al., 2019] • タスクのパラメータ𝑝をサンプリングし,

    パラメータ𝑝𝑜𝑙𝑑 を𝑝以前にサンプリングされたパラメータのうちタ スク空間で最も近いパラメータとする. • 𝑝での報酬𝑟と𝑝𝑜𝑙𝑑 での報酬𝑟𝑜𝑙𝑑 を用いて, Absolute Learning Progressを ALPp = |𝑟 − 𝑟𝑜𝑙𝑑 | と定義. • 混合ガウスモデル (GMM) を用いて𝑝上のALPp の分布を計算し, 以降は得られた複数のガウス 分布からサンプリングする.
  9. Curriculum through Self-Play • 非対称なself-playによってCurriculum Learningを行う [Sukhbaatar et al., 2017].

    1. [self-play episode] 𝑡𝑎 をAlice (RL agent) が状態を𝑠0 から𝑠𝑡 へ変更するステップ数, 𝑡𝑏 をBob (RL agent) が状態を𝑠𝑡 から𝑠0 へ戻すステップ数とする (失敗した場合, 𝑡𝑏 = 𝑡𝑚𝑎𝑥 − 𝑡𝑎), 報酬を以下のよう に定義し実行. 2. [target task episode] Bobがtarget flagを探すタスクを解き, 外部報酬を得る. • 利点 • 可逆な設定において, Bobのタスクが実行可能であることが保証される. • 相互作用によって, 徐々に難易度の上がるCurriculumが自動的に構築される.
  10. Automatic Goal Generation • 目標𝑔 (終了状態) の難易度は現在の方策に応じて適切に設定される必要がある. • Generative Goal

    Learning [Florensa et al., 2018] はGoal GANにより理想的な目 標を自動的に生成する. 1. 現在の方策に対して適切な難易度である目標の集合を GOID𝑖 = 𝑔 𝑅𝑚𝑖𝑛 ≤ 𝑅𝑔(𝜋𝑖 ) ≤ 𝑅𝑚𝑎𝑥 } とする. 2. Goal GANを用いて𝐺𝑂𝐼𝐷𝑖 から新しい目標を生成する. 3. 新しい目標を用いて方策を訓練する. (𝜋で目標𝑔に到達できる確率) Goal GAN Generator G(𝑧) : GOID𝑖 からの一様サンプリングと見なせる目標𝑔を生成. Discriminator 𝐷(𝑔) : 目標𝑔がGOID𝑖 からサンプリングされたか判別.
  11. Skill-Based Curriculum • Agentの達成可能なことを様々なスキルに分解し, それを用いて新たにタスクを構 築するという相互作用で, より有益なスキルや複雑なタスクを得ることができる. • Curricula for

    Unsupervised Meta-Reinforcement Learning (CUMRL) [Jabri et al., 2019] 1. 教師なしの軌跡から潜在タスク変数𝑧の混合分布𝑝𝜑 (𝑠, 𝑧)を得る. 2. 𝑧~𝑝𝜑 における報酬𝑟𝑧 𝑠 を定義しタスクを構築する. 3. Meta-RLにより新たな軌跡を得る.
  12. Curriculum through Distillation • Progressive Neural Networks [Rusu et al.,

    2016] では, 学習したスキルを異なるタ スク間で効率的に転移することを目的とする. 1. 最初のタスクについて, 活性化層をℎ 𝑖 (1), 𝑖 = 1, … , 𝐿とした𝐿層のNNを学習する. 2. 異なるタスクについて, 活性化層ℎ 𝑖 (𝑘), 𝑖 = 1, … , 𝐿を以下の式で定義した𝐿層のNNを学習する. この時, ℎ(𝑗)のパラメータについては固定する. • sim2real transferへ応用することで、 少ない現実データで学習を行える. [Rusu et al., 2017]
  13. Summary • Curriculum Learningは, 複雑な問題を分解し段階的に学習を行うことにより, 学習 の効率化, モデルの性能向上を図る学習方法. • 最近では,

    主に強化学習におけるCurriculumの自動的な提案に関して研究がされ ており, 以下のような手法が挙げられる. • Teacher-Student Curriculum Learning • Asymmetric Self-PlayによるAutomatic Curriculum • Generative Goal Learning • Curricula for Unsupervised Meta-Reinforcement Learning
  14. References (1/2) • Lilian Weng. Curriculum for Reinforcement Learning. 2020.

    https://lilianweng.github.io/lil-log/2020/01/29/curriculum-for-reinforcement- learning.html • Yoshua Bengio et al. Curriculum learning. ICML, 2009. • Daphna Weinshall et al. Curriculum learning by transfer learning: Theory and experiments with deep networks. ICML, 2018. • Wojciech Zaremba & Ilya Sutskever. Learning to execute. arXiv, 2014. • Tambet Matiisen et al. Teacher-student curriculum learning. IEEE Trans. on neural networks and learning systems, 2017. • Remy Portelas et al. Teacher algorithms for curriculum learning of Deep RL in continuously parameterized environments. CoRL, 2019.
  15. References (2/2) • Sainbayar Sukhbaatar et al. Intrinsic Motivation and

    Automatic Curricula via Asymmetric Self-Play. ICLR, 2018. • Carlos Florensa et al. Automatic Goal Generation for Reinforcement Learning Agents ICML, 2019. • Allan Jabri et al. Unsupervised Curricula for Visual Meta-Reinforcement Learning. NeurIPS, 2019. • Andrei A. Rusu et al. Progressive Neural Networks. arXiv, 2016. • Andrei A. Rusu et al. Sim-to-Real Robot Learning from Pixels with Progressive Nets. CoRL, 2017.