some notes on reinforcement learning

DRL Lectures

MLDS 2018 lectures

看完這系列的感想就是:GAN跟RL真的是殊途同歸啊~

Actor Critic (Advantage Actor-Critic and Pathwise Derivative Policy Gradient)

Actor Critic其實是GAN!原本Policy Gradient要用整個trajectory的reward去決定action gradient的權重,現在用Value function + 當前reward代替,就不用on-policy地把整個trajectory試完再train(?)。所以,如果是把Actor(用Policy Gradient決定的network)跟Critic(計算目前這個Actor的Value function或Q function)串起來的話,就跟GAN 87%像,先讓Actor玩一玩,然後Critic學Value function(Discriminator),Actor再用Critic的Value function用Policy Gradient增強自己(Generator)。

Intrinsic Curiosity Module(ICM)

記得之前有想過要怎麼做RL without reward,很直覺的想法就是,如果我可以預測做某個action之後的state會變得如何,似乎就是學會了(這件事情很早就有人做過XD)。
ICM為了解決sparse reward所以想了一個辦法增加人工reward,作法是預測做現在這個action之後下一個state會變成怎樣,把這個預測的下個state跟真實的下個state比較,差距越大越鼓勵去嘗試(可能表示還不太懂需要試試這樣)。問題是有可能兩個state差了一些枝微末節的東西就有很多reward,所以用另一個network預測given現在的state跟真實的下個state,造成這個轉換的action是不是現在要採取的action,用這樣的方式去extract真的可以預測動作造成轉換的feature。

關於ICM詳細是怎麼做的:

其實這篇心得放著很久,是因為看到這個才又想起來:

Inverse Reinforcement Learning (IRL)

IRL也是一種GAN!當沒有reward function卻只有一些expert的經驗當作gold standards時,可以設計一個reward model讓expert trajectory的reward大於actor trajectory的reward(這就是Discriminator),然後讓actor依照這個reward model去學maximize這個model的policy(就是Generator)。

Some Links
Open AI Baselines
Google Dopamine