[ 组合替代实现 ]torch.nn.init.eye_¶
torch.nn.init.eye_¶
torch.nn.init.eye_(tensor)
paddle.nn.initializer.Assign¶
paddle.nn.initializer.Assign(value,
name=None)
两者用法不同:torch 是 inplace 的用法,paddle 是类设置的,具体如下:
参数映射¶
PyTorch | PaddlePaddle | 备注 |
---|---|---|
tensor | - | n 维 tensor。Paddle 无此参数,因为是通过调用类的 call 函数来进行 tensor 的初始化。 |
- | value | 用于初始化参数的一个 Numpy 数组、Python 列表、Tensor。PyTorch 无此参数。此处 Paddle 应使用 paddle.eye 进行参数设置。 |
转写示例¶
# PyTorch 写法
w = torch.empty(3, 5)
torch.nn.init.eye_(w)
# Paddle 写法
w = paddle.empty([3, 5])
init_eye = paddle.nn.initializer.Assign(paddle.eye(w.shape[0], w.shape[1]))
init_eye(w)