1. 程式人生 > 其它 >CoMic: Complementary Task Learning & Mimicry for Reusable Skills

CoMic: Complementary Task Learning & Mimicry for Reusable Skills


發表時間:2020(ICML 2020)
文章要點:這篇文章想要先學low-level policy,然後基於low-level policy來訓練一些強化的任務,這樣就相當於可以用reusable skills來加快下游任務的訓練。主要思路是通過模仿學習和聯合輔助任務訓練來學reusable skills(imitating motion capture data and joint training with complementary tasks),並且這些reusable skills都是嵌在low-level policy的潛空間(low dimensional skill embedding spaces)中的,後面的強化也會基於這個潛空間去訓練。
具體的,模仿學習就是從之前的資料中去學一些技能,通過一個reference encoder把要模仿的states弄到潛空間上得到\(z_t\)

,然後用這個\(z_t\)結合狀態\(s_t\)餵給low-level policy去學\(a_t\)。聯合輔助任務訓練主要考慮的是先有的資料裡面可能缺少一些重要的skills,所以在學low-level policy的時候還需要把這些skills考慮進去,這樣得到的潛空間才完備。比如作者舉了兩個skill,一個是站起來(get-up and stand task),一個是抓球(catching a ball)。這個和模仿的結合方式就是在模仿學習的同時,用強化去訓這兩個輔助任務,這樣得到的low-level policy就既包括模仿學習裡的skill,也包括解決這兩個輔助任務的skill了。
完了之後,low-level policy就不會變了,這個潛空間\(z_t\)
就是新的動作空間了,後面訓強化的high-level policy其實就是去訓reference encoder。整個控制的過程就是,high-level policy輸出\(z_t\),再結合當前狀態\(s_t\)輸入到low-level policy,得到skill的動作輸出。
總結:挺有意思的方法,這樣就相當於不是每次都從最底層的action來做決策了,而是把動作抽象了一層skill,基於這個skill來訓強化,其實是減少了動作空間的維度或者說動作訓練的長度,從而降低了訓練難度,加快了訓練速度。同時因為這個形式是embedding space,而不是那種one hot的生硬構造的動作空間,就會更加靈活,也更有利於學習更多skill。而且感覺這個方式也可以和planning結合起來,相當於不用在每一步都planning了,加快了planning的速度。
疑問:
這裡面的狀態片段序列好像都是5個step,不能自適應調整嗎?
從訓練的輔助任務、正則項以及reward的複雜程度來看,估計還是少不了調參吧,不知道對於更復雜的任務適用性如何。