CVPR2020文章---無監督強化學習獲得遷移能力

鏈接:CVPR 2020 | 用無監督強化學習方法來獲得遷移能力

引出問題

首先在3d仿真環境中給agent指定一個自然語言的輸入,比如冰箱,agent需要在環境中完整一系列原子動作,從而找到目標,需要完成這個任務,視覺導航能力必不可少。

深度強化學習任務存在的問題

1、通常是data inefficient,需要大量的訓練數據;
2、就算是兩個相似的任務,模型都需要從頭開始訓練。

人類之所以能夠從廣泛的任務中快速學習,是因爲可以學到很多meta-skills,這些meta-skills通常具有遷移能力。具體可以是,直線行駛,繞開障礙物等。

我們的目標

關注視覺導航在少量訓練環境中的應用;
設計一種無監督的學習方法可以讓機器可以掌握這些mata-skills,從而只提供少量樣本讓機器人將meta-skills遷移到視覺導航的任務中來。

meta-learning

什麼是meta-learning

是所謂的learning to learning
不直接直接優化在單個任務上的性能;而是優化模型能夠快速學習任務的能力。

主要分爲三種類型:

在這裏插入圖片描述
這裏主要看第三種類型,基於梯度的方法。

基於梯度的方法

需要找到模型的初始化,可以讓模型快速適應新的任務。

在這裏插入圖片描述
theta是模型參數,三個L是在三個不同任務上的損失函數。我們希望通過少量的bp就可以找到一個讓三個任務都到達最優的點。

meta-learning學習分爲以下兩個階段

meta-trainning和meta-testing
在meta-trainning階段,有比傳統方法多的訓練樣本,這裏是一些task,讓模型學到一組初始化值,到所有的任務的最優解都比較接近;
在meta-testing中,給定新的任務,以及給定的數據,只需要少量的更新就可以。

問題及解決方案

缺點:
1、在trainning階段需要手工定義很多樣本。
解決:無監督強化學習
2、同時如果就用少量樣本訓練,容易造成overfitting。
解決:分層策略網絡

具體工作

1、curriculum-base Adversarial training Strategy

課程基地對抗性訓練策略

由兩部分組成
Task Generator:生成模塊,用來產生任務供Meta-Learning學習

Meta-Learning:完成任務並可以學到一組在各個任務之間共享的子策略。使用meta-learning算法進行更新。

具體定義三種rewards,來鼓勵Task Generator產生適合Meta-Learning難度的任務,並可以隨着Meta-learning能力提升對任務難度進行升級。

例如:
Generator走到一個點,將看到的任務信息傳送給Meta-Learning
在這裏插入圖片描述

2、Hierarchical Policy

Master Policy選擇採用什麼原子policy。原子Policy可以是比如直行,左等。

對於不同任務,可以有不同的Master Policy,sub-Policy(meta-skills)是在任務中共享的。

3、Meta-Reinforcement Learning

Master Policy對於特定任務進行更新,sub-Policy是共享的。

總結

在這裏插入圖片描述
首先在無標註數據中,根據生成網絡訓練參數theta,然後在少量有標註數據中進行少量更新,學習一個Master Policy。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章