RewardScaling¶
- class torchrl.envs.transforms.RewardScaling(loc: Union[float, torch.Tensor], scale: Union[float, torch.Tensor], in_keys: Sequence[NestedKey] | None = None, out_keys: Sequence[NestedKey] | None = None, standard_normal: bool = False)[source]¶
奖励的仿射变换。
奖励根据以下公式进行变换
\[reward = reward * scale + loc\]- 参数::
loc (数字 或 torch.Tensor) – 仿射变换的位置
scale (数字 或 torch.Tensor) – 仿射变换的比例
standard_normal (bool, 可选) –
如果
True
,则变换将为\[reward = (reward-loc)/scale\]就像标准化那样。默认值为 False.
- transform_reward_spec(reward_spec: TensorSpec) TensorSpec [source]¶
变换奖励规范,使得生成的规范匹配变换映射。
- 参数::
reward_spec (TensorSpec) – 变换之前的规范
- 返回值::
变换后的预期规范