dgl.apply_each

dgl.apply_each(data, fn, *args, **kwargs)[源码]

对容器中的每个元素应用函数。

如果输入数据是列表或除字符串以外的任何序列,则返回一个列表,其元素是应用给定函数的原元素。

如果输入数据是字典或任何映射,则返回一个字典,其键保持不变,值是应用给定函数的原元素。

函数的第一个参数将传入输入数据中的各个元素,后面跟着 argskwargs 中的参数。

参数:
  • data (任意类型) – 任何对象。

  • fn (可调用对象) – 任何函数。

  • args – 传递给函数的额外位置参数。

  • kwargs – 传递给函数的额外关键字参数。

示例

将 ReLU 函数应用于张量字典

>>> h = {k: torch.randn(3) for k in ['A', 'B', 'C']}
>>> h = apply_each(h, torch.nn.functional.relu)
>>> assert all((v >= 0).all() for v in h.values())