【PyTorch】关于 log_prob(action)

有个很好的例子能看出 log_prob(action) 做了什么事:

import torch
import torch.nn.functional as F

action_logits = torch.rand(5)
action_probs = F.softmax(action_logits, dim=-1)

dist = torch.distributions.Categorical(action_probs)
action = dist.sample()
print(dist.log_prob(action), torch.log(action_probs[action]))

会发现输出的值相等。说明 dist.log_prob(action)torch.log(action_probs[action]) 等价。

总的来说,会输出这个 action 概率的 log 值。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容