作者chhuang17 ()
看板DataScience
标题[问题] 深度强化学习 (MADDPG)
时间Fri Jul 30 19:47:38 2021
MADDPG的Action Space必须是连续的
不过小弟在翻文献回顾的时候
有些Action Space是离散的
上网爬了一下文 似乎是利用Gumbel-Softmax去逼近
然而这部分我就没有深究了 (文献中也没明说怎麽实作的)
不过我在想 实作上能否套用MADDPG的架构
(中心化训练、去中心化执行)
但实际上在local的Agent是采A2C的方式去选择Action呢?
麻烦各位前辈指教了 谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.112.4.209 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/DataScience/M.1627645660.A.815.html
1F:推 sxy67230: Gumbel-softmax主要作用在取样的时候,往往我们在取样 07/31 10:38
2F:→ sxy67230: 的时候都是用random choice或是加入机率分布因素再取arg 07/31 10:38
3F:→ sxy67230: max,但是如果你要在你整个网路训练过程中加入就会导致 07/31 10:38
4F:→ sxy67230: 你的反向传播失效,因为这两个步骤是不可微的,这样你就 07/31 10:38
5F:→ sxy67230: 没办法传导你的梯度,所以用gumbel softmx再参数化去逼 07/31 10:38
6F:→ sxy67230: 近random choice的取样效果同时让整个过程可微。 07/31 10:38
7F:→ johnnyjana: 不知道楼上在讲什麽 08/01 14:00
8F:→ johnnyjana: gumbel softmax就只是个trick 把原本的probablity 08/01 14:04
9F:→ johnnyjana: output 除上很小的"tau" 过“可微”的softmax之後机 08/01 14:04
10F:→ johnnyjana: 率分布很像是discrete的 08/01 14:04
了解了,不过我有看到一篇文献是将binary的action space过sigmoid
该篇文献最後一层通过y=sigmoid(1000x),再output出来
一样都是逼近成类似discrete的机率分布
想请问这样的做法跟gumbel-softmax的差异在哪里呢?
或者说 有一定要利用gumbel-softmax的理由不可吗?
※ 编辑: chhuang17 (140.112.10.31 台湾), 08/01/2021 15:13:03
11F:推 johnnyjana: 这个深度学习的问题没有正确答案 只能都试试看最後在 08/01 16:03
12F:→ johnnyjana: paper唬烂一个答案 唯一比较客观分析还是看function 08/01 16:03
13F:→ johnnyjana: 斜率 比较两者在你的dataset剃度的问题 08/01 16:03
14F:推 sxy67230: 确实有一些前提没有补充到,想说让原PO去查文献大概就 08/03 08:42
15F:→ sxy67230: 明白了。首先,MADDPG整体架构还是一个DDPG,只是扩展08/03 08:42
16F:→ sxy67230: 成考量multi-agent的状况。然後考量传统DPG采用待优化po08/03 08:42
17F:→ sxy67230: licy跟取样policy不同以解决exploration的问题,DDPG则08/03 08:43
18F:→ sxy67230: 是加入reparameterization(再参数化)的技巧克服他,这08/03 08:43
19F:→ sxy67230: 样就不用再优化跟取样用不同的policy。08/03 08:43
20F:推 sxy67230: 另外,gumbel sofmax输入也是离散分布,如果用输出也说08/03 08:50
21F:→ sxy67230: 是离散会很容易误导就是了。实际上应该是加入了gumbel d08/03 08:50
22F:→ sxy67230: istribution後除以一个tau再做softmax,这样就可以用tau08/03 08:50
23F:→ sxy67230: 这个超参控制取样的soft程度而已。08/03 08:50
24F:推 sxy67230: 这样就可以让整体保有随机性,而gumbel分布就是很好描述08/03 08:59
25F:→ sxy67230: 有极值的分布,所以用再分类再取样的效果就很合理,藉以08/03 08:59
26F:→ sxy67230: 达到我们想优化的是P(zlx)这样的空间分布,可以参考VAE08/03 08:59
27F:→ sxy67230: 的文献实际上VAE也是这样的技巧取样,实际上可以去看一08/03 08:59
28F:→ sxy67230: 下VI的推导,VAE算是一个很有统计学习加上随机程序的模08/03 08:59
29F:→ sxy67230: 型,整体推导流程也很优美,DDPG的作者也是借鉴这样的08/03 08:59
30F:→ sxy67230: 思路来做policy过程的取样的。08/03 08:59
31F:推 sxy67230: 然後再回到原PO sigmoid的问题上,我们如果假设输入是服08/03 09:06
32F:→ sxy67230: 从一个Bernoulli distribution的,那sigmoid跟 softmax08/03 09:06
33F:→ sxy67230: 就是等价的,实际MADDPG的作者再实现上就是用这种技巧,08/03 09:06
34F:→ sxy67230: 然後我看代码其实也是再参数化的过程(sigmoid後一样加上08/03 09:06
35F:→ sxy67230: random uniform distribution),不知道有没有回答你的08/03 09:06
36F:→ sxy67230: 问题。08/03 09:06
不好意思,之前一直忘记回覆
很感谢两位的详细解释!
※ 编辑: chhuang17 (223.137.144.83 台湾), 08/10/2021 01:49:07