OpenAI的REINFORCE和演员批评强化学习的例子有以下代码:
加强:
policy_loss = torch.cat(policy_loss).sum()
Run Code Online (Sandbox Code Playgroud)
loss = torch.stack(policy_losses).sum() + torch.stack(value_losses).sum()
Run Code Online (Sandbox Code Playgroud)
一个是使用torch.cat,另一个是使用torch.stack.
就我的理解而言,该文件并未对它们作出任何明确的区分.
我很高兴知道这些功能之间的差异.
我有这个代码:
import torch
list_of_tensors = [ torch.randn(3), torch.randn(3), torch.randn(3)]
tensor_of_tensors = torch.tensor(list_of_tensors)
Run Code Online (Sandbox Code Playgroud)
我收到错误:
ValueError:只有一个元素张量可以转换为Python标量
如何将张量列表转换为pytorch中的张量张量?