Я пытался понять блог на критике софт-актеров , где у нас есть нейронная сеть, представляющая политику, которая выводит среднее и стандартное гауссовское распределение действий для данного состояния.Поскольку прямое обратное распространение через стохастический узел невозможно, трюк для повторной параметризации применяется следующим образом:
`normal = Normal(0, 1)
z = normal.sample()
action = torch.tanh(mean+ std*z.to(device))
log_prob = Normal(mean, std).log_prob(mean+ std*z.to(device)) - torch.log(1 - action.pow(2) + epsilon)
return action, log_prob, z, mean, log_std`
Я хочу знать, как был получен термин log_prob.Любая помощь будет принята с благодарностью.