From 3ad0e478f9068d6b400ad7ec8104d109e9ab31b9 Mon Sep 17 00:00:00 2001 From: zhwesky2010 Date: Wed, 28 Jun 2023 08:40:00 +0000 Subject: [PATCH] =?UTF-8?q?=E6=98=A0=E5=B0=84=E6=96=87=E6=A1=A3=20add=20so?= =?UTF-8?q?me=20api?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Tensor/torch.Tensor.maximum.md | 19 +++++ .../Tensor/torch.Tensor.minimum.md | 19 +++++ .../api_difference/Tensor/torch.Tensor.mm.md | 21 +++++ .../Tensor/torch.Tensor.moveaxis.md | 20 +++++ .../Tensor/torch.Tensor.movedim.md | 20 +++++ .../Tensor/torch.Tensor.permute.md | 31 ++++++++ .../Tensor/torch.Tensor.repeat.md | 31 ++++++++ .../Tensor/torch.Tensor.reshape.md | 31 ++++++++ .../Tensor/torch.Tensor.scatter_add.md | 26 ++++--- .../Tensor/torch.Tensor.scatter_add_.md | 28 +++++++ .../Tensor/torch.Tensor.split.md | 32 ++++++++ .../Tensor/torch.Tensor.transpose.md | 31 ++++++++ .../cuda/torch.cuda.get_device_name.md | 30 ++++++++ .../api_difference/fft/torch.fft.fftfreq.md | 64 ++++++++++++++++ .../api_difference/fft/torch.fft.hfft.md | 42 ++++++++++ .../api_difference/fft/torch.fft.ihfft.md | 42 ++++++++++ .../api_difference/fft/torch.fft.irfftn.md | 42 ++++++++++ .../api_difference/fft/torch.fft.rfftfreq.md | 65 ++++++++++++++++ .../hub/torch.hub.download_url_to_file.md | 27 +++++++ .../api_difference/hub/torch.hub.help.md | 32 ++++++++ .../api_difference/hub/torch.hub.list.md | 30 ++++++++ .../api_difference/hub/torch.hub.load.md | 39 ++++++++++ .../nn/torch.nn.Module.add_module.md | 22 ++++++ .../nn/torch.nn.Module.apply.md | 21 +++++ .../api_difference/nn/torch.nn.Module.md | 22 ++++++ .../api_difference/nn/torch.nn.ModuleDict.md | 15 ++-- .../api_difference/nn/torch.nn.ModuleList.md | 18 +++-- .../nn/torch.nn.functional.softmax.md | 23 ++++++ .../api_difference/ops/torch.bernoulli.md | 76 +++++++++---------- .../api_difference/ops/torch.multinomial.md | 21 ++--- .../api_difference/ops/torch.nonzero.md | 16 ++-- .../api_difference/ops/torch.normal.md | 75 +++++++++--------- .../torch.optim.Optimizer.load_state_dict.md | 21 +++++ .../ops/torch.optim.Optimizer.state_dict.md | 15 ++++ .../api_difference/ops/torch.poisson.md | 19 +++++ .../api_difference/ops/torch.scatter.md | 14 ++-- .../api_difference/ops/torch.scatter_add.md | 31 ++++++++ .../ops/torch.set_printoptions.md | 34 +++++---- .../ops/torch.sparse_coo_tensor.md | 46 +++++++++++ .../api_difference/ops/torch.stack.md | 17 +++-- 40 files changed, 1082 insertions(+), 146 deletions(-) create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.maximum.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.minimum.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.mm.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.moveaxis.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.movedim.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.permute.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.repeat.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.reshape.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add_.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.split.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.transpose.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/cuda/torch.cuda.get_device_name.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.fftfreq.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.hfft.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.ihfft.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.irfftn.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.rfftfreq.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.download_url_to_file.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.help.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.list.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.load.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.add_module.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.apply.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.functional.softmax.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.load_state_dict.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.state_dict.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.poisson.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter_add.md create mode 100644 docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.sparse_coo_tensor.md diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.maximum.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.maximum.md new file mode 100644 index 00000000000..368cf7c0f87 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.maximum.md @@ -0,0 +1,19 @@ +## [ 仅参数名不同 ] torch.Tensor.maximum + +### [torch.Tensor.maximum](https://pytorch.org/docs/stable/generated/torch.Tensor.maximum.html#torch.Tensor.maximum) + +```python +torch.Tensor.maximum(other) +``` + +### [paddle.Tensor.maximum](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#maximum-y-axis-1-name-none) + +```python +paddle.Tensor.maximum(y) +``` + +两者功能一致且参数用法一致,仅参数名不同,具体如下: + +| PyTorch | PaddlePaddle | 备注 | +|----------------------------------|---------------------------------|------------------------------------| +| other | y | 输⼊第二个 Tensor ,仅参数名不同。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.minimum.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.minimum.md new file mode 100644 index 00000000000..732bafc7f39 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.minimum.md @@ -0,0 +1,19 @@ +## [ 仅参数名不同 ] torch.Tensor.minimum + +### [torch.Tnsor.,minimum](https://pytorch.org/docs/stable/generated/torch.Tensor.minimum.html) + +```python +torch.Tensor.maximum(other) +``` + +### [paddle.Tensor.minimum](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#minimum-y-axis-1-name-none) + +```python +paddle.Tensor.minimum(y) +``` + +两者功能一致且参数用法一致,仅参数名不同,具体如下: + +| PyTorch | PaddlePaddle | 备注 | +|----------------------------------|---------------------------------|------------------------------------| +| other | y | 输⼊第二个 Tensor ,仅参数名不同。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.mm.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.mm.md new file mode 100644 index 00000000000..465c42a0f7d --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.mm.md @@ -0,0 +1,21 @@ +## [ 参数完全一致 ]torch.Tensor.mm + +### [torch.Tensor.mm](https://pytorch.org/docs/stable/generated/torch.Tensor.mm.html) + +```python +torch.Tensor.mm(mat2) +``` + +### [paddle.Tensor.mm](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#mm-mat2-name-none) + +```python +paddle.Tensor.mm(mat2, name=None) +``` + +两者功能一致且参数用法一致,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +|---------------------------------|---------------------------------| ----------------------------------------- | +| mat2 | mat2 | 输⼊ Tensor 。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.moveaxis.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.moveaxis.md new file mode 100644 index 00000000000..467823b48a4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.moveaxis.md @@ -0,0 +1,20 @@ +## [ 参数完全一致 ]torch.Tensor.moveaxis + +### [torch.Tensor.moveaxis](https://pytorch.org/docs/stable/generated/torch.Tensor.moveaxis.html) + +```python +torch.Tensor.moveaxis(source, destination) +``` + +### [paddle.Tensor.moveaxis](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/moveaxis_cn.html) + +```python +paddle.Tensor.moveaxis(source, destination,name = None) +``` + +两者功能一致且参数用法一致,具体如下: + +| PyTorch | PaddlePaddle | 备注 | +|------------------------------------|------------------------------------|----------------------------------| +| source | source | 将被移动的轴的位置。 | +| destination | destination | 轴被移动后的目标位置。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.movedim.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.movedim.md new file mode 100644 index 00000000000..d9e1e836bc3 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.movedim.md @@ -0,0 +1,20 @@ +## [ 参数完全一致 ]torch.Tensor.movedim + +### [torch.Tensor.movedim](https://pytorch.org/docs/stable/generated/torch.Tensor.movedim.html) + +```python +torch.Tensor.movedim(source, destination) +``` + +### [paddle.Tensor.moveaxis](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/moveaxis_cn.html) + +```python +paddle.Tensor.moveaxis(source, destination, name = None) +``` + +两者功能一致且参数用法一致,具体如下: + +| PyTorch | PaddlePaddle | 备注 | +|------------------------------------|------------------------------------|----------------------------------| +| source | source | 将被移动的轴的位置。 | +| destination | destination | 轴被移动后的目标位置。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.permute.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.permute.md new file mode 100644 index 00000000000..d12e3b8582e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.permute.md @@ -0,0 +1,31 @@ +## [ 参数不一致 ]torch.Tensor.permute + +### [torch.Tensor.permute](https://pytorch.org/docs/1.13/generated/torch.Tensor.permute.html) + +```python +torch.Tensor.permute(*dims) +``` + +### [paddle.Tensor.transpose](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#transpose-perm-name-none) + +```python +paddle.Tensor.transpose(perm, name=None) +``` + +Pytorch 的 `*dims` 相比于 paddle 的 `perm` 额外支持可变参数的用法,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| *dims | perm | torch 支持可变参数或 list/tuple,paddle 仅支持 list/tuple。对于可变参数的用法,需要进行转写。 | + +### 转写示例 +#### *dims: 可变参数用法 +```python +# pytorch +x = torch.randn(2, 3, 5) +y = x.permute(2, 0, 1) + +# paddle +x = paddle.randn([2, 3, 5]) +y = x.transpose([2, 0, 1]) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.repeat.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.repeat.md new file mode 100644 index 00000000000..e3361bb892b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.repeat.md @@ -0,0 +1,31 @@ +## [ 参数不一致 ]torch.Tensor.repeat + +### [torch.Tensor.repeat](https://pytorch.org/docs/1.13/generated/torch.Tensor.repeat.html) + +```python +torch.Tensor.repeat(*sizes) +``` + +### [paddle.Tensor.tile](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#tile-repeat-times-name-none) + +```python +paddle.Tensor.tile(repeat_times, name=None) +``` + +Pytorch 的 `*sizes` 相比于 Paddle 的 `repeat_times` 额外支持可变参数的用法,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| *sizes | repeat_times | torch 支持可变参数或 list/tuple,paddle 仅支持 list/tuple。对于可变参数的用法,需要进行转写。 | + +### 转写示例 +#### *sizes: 各个维度重复的次数,可变参数用法 +```python +# pytorch +x = torch.randn(2, 3, 5) +y = x.repeat(4, 2, 1) + +# paddle +x = paddle.randn([2, 3, 5]) +y = x.tile((4, 2, 1)) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.reshape.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.reshape.md new file mode 100644 index 00000000000..9fc2db95ba1 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.reshape.md @@ -0,0 +1,31 @@ +## [ 参数不一致 ]torch.Tensor.reshape + +### [torch.Tensor.reshape](https://pytorch.org/docs/1.13/generated/torch.Tensor.reshape.html) + +```python +torch.Tensor.reshape(*shape) +``` + +### [paddle.Tensor.reshape](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#reshape-shape-name-none) + +```python +paddle.Tensor.reshape(shape, name=None) +``` + +Pytorch 的 `*shape` 相比于 Paddle 的 `shape` 额外支持可变参数的用法,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| *shape | shape | torch 支持可变参数或 list/tuple,paddle 仅支持 list/tuple。对于可变参数的用法,需要进行转写。 | + +### 转写示例 +#### *shape: 新数组的维度序列,可变参数用法 +```python +# pytorch +x = torch.randn(2, 3, 5) +y = x.reshape(6, 5) + +# paddle +x = paddle.randn([2, 3, 5]) +y = x.reshape((6, 5)) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add.md index 1dcc7889a0c..874a16dbca4 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add.md @@ -1,4 +1,4 @@ -## [组合替代实现]torch.Tensor.scatter_add +## [ 仅 paddle 参数更多 ]torch.Tensor.scatter_add ### [torch.Tensor.scatter_add](https://pytorch.org/docs/1.13/generated/torch.Tensor.scatter_add.html#torch.Tensor.scatter_add) @@ -6,15 +6,21 @@ torch.Tensor.scatter_add(dim, index, src) ``` -Paddle 无此 API,需要组合实现。 - -### 转写示例 +### [paddle.Tensor.put_along_axis](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/put_along_axis_cn.html) ```python -# Pytorch 写法 -x.scatter_add(dim, index, src) - -# Paddle 写法 -x2 = paddle.zeros(x.shape) -y = x + x2.put_along_axis(index, value, axis) +paddle.Tensor.put_along_axis(indices, + values, + axis, + reduce='assign') ``` + +其中 Paddle 相比 Pytorch 支持更多其他参数,具体如下: + +### 参数差异 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| dim | axis | 表示在哪一个维度 scatter ,仅参数名不一致。 | +| index | indices | 表示输入的索引张量,仅参数名不一致。 | +| src | values | 表示需要插入的值,仅参数名不一致。 | +| - | reduce | 表示对输出 Tensor 的计算方式, PyTorch 无此参数, Paddle 应设置为 'add' 。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add_.md new file mode 100644 index 00000000000..f30af543eb7 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.scatter_add_.md @@ -0,0 +1,28 @@ +## [ 仅 paddle 参数更多 ]torch.Tensor.scatter_add_ + +### [torch.Tensor.scatter_add_](https://pytorch.org/docs/1.13/generated/torch.Tensor.scatter_add_.html#torch.Tensor.scatter_add_) + +```python +torch.Tensor.scatter_add_(dim, + index, + src) +``` + +### [paddle.Tensor.put_along_axis_](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/put_along_axis__cn.html) + +```python +paddle.Tensor.put_along_axis_(indices, + values, + axis, + reduce='assign') +``` + +其中 Paddle 相比 Pytorch 支持更多其他参数,具体如下: + +### 参数差异 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| dim | axis | 表示在哪一个维度 scatter ,仅参数名不一致。 | +| index | indices | 表示输入的索引张量,仅参数名不一致。 | +| src | values | 表示需要插入的值,仅参数名不一致。 | +| - | reduce | 表示对输出 Tensor 的计算方式, PyTorch 无此参数, Paddle 应设置为 'add' 。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.split.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.split.md new file mode 100644 index 00000000000..c5951096d45 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.split.md @@ -0,0 +1,32 @@ +## [ 参数不一致 ]torch.Tensor.split + +### [torch.Tensor.split](https://pytorch.org/docs/1.13/generated/torch.Tensor.split.html) + +```python +torch.Tensor.split(split_size_or_sections, dim=0) +``` + +### [paddle.Tensor.split](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#split-num-or-sections-axis-0-name-none) + +```python +paddle.Tensor.split(num_or_sections, axis=0, name=None) +``` + +Pytorch 的 `split_size_or_sections` 与 Paddle 的 `num_or_sections` 用法不同,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| dim | axis | 表示需要分割的维度,仅参数名不同。 | +| split_size_or_sections | num_or_sections | torch:int 时表示块的大小, list 时表示块的大小; paddle: int 时表示块的个数, list 时表示块的大小。因此对于 int 时,两者用法不同,需要转写。| + +### 转写示例 +#### split_size_or_sections: 为 int 时 torch 表示块的大小,paddle 表示块的个数 +```python +# pytorch +x = torch.randn(8, 2) +y = x.split(4) + +# paddle +x = paddle.randn([8, 2]) +y = x.split(2) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.transpose.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.transpose.md new file mode 100644 index 00000000000..f98bf7aafd9 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.transpose.md @@ -0,0 +1,31 @@ +## [ 参数不一致 ]torch.Tensor.transpose + +### [torch.Tensor.transpose](https://pytorch.org/docs/1.13/generated/torch.Tensor.transpose.html) + +```python +torch.Tensor.transpose(dim0, dim1) +``` + +### [paddle.Tensor.transpose](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#transpose-perm-name-none) + +```python +paddle.Tensor.transpose(perm, name=None) +``` + +Pytorch 的 `dim0, dim1` 与 Paddle 的 `perm` 用法不同,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| dim0, dim1 | perm | torch 的 dim0 与 dim1 表示要交换的两个维度, 为整数。 paddle 的 perm 表示重排的维度序列,为 list/tuple 。需要转写。| + +### 转写示例 +#### dim0, dim1: 表示要交换的两个维度 +```python +# pytorch +x = torch.randn(2, 3, 5) +y = x.transpose(0, 1) + +# paddle +x = paddle.randn([2, 3, 5]) +y = x.transpose(perm=[1, 0, 2]) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/cuda/torch.cuda.get_device_name.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/cuda/torch.cuda.get_device_name.md new file mode 100644 index 00000000000..70300963047 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/cuda/torch.cuda.get_device_name.md @@ -0,0 +1,30 @@ +## [ 参数不一致 ]torch.cuda.get_device_name + +### [torch.cuda.get_device_name](https://pytorch.org/docs/1.13/generated/torch.cuda.get_device_name.html) + +```python +torch.cuda.get_device_name(device=None) +``` + +### [paddle.device.cuda.get_device_properties](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/device/cuda/get_device_properties_cn.html#get-device-properties) + +```python +paddle.device.cuda.get_device_properties(device) +``` + +两者的返回参数不一致,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| device | device | torch 的 device 参数类型为 torch.device 或 int 或 str。paddle 的 device 为 paddle.CUDAPlace 或 int 或 str。 | +| 返回值 | 返回值 | 两者返回类型不一致。torch 返回字符串,paddle 返回包含设备多个属性的数据结构,对其取 name 属性即可。需要转写。| + +### 转写示例 +#### 返回值 +```python +# pytorch +y = torch.cuda.get_device_name() + +# paddle +y = paddle.device.cuda.get_device_properties().name +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.fftfreq.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.fftfreq.md new file mode 100644 index 00000000000..cfd47733459 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.fftfreq.md @@ -0,0 +1,64 @@ +## [ torch 参数更多 ] torch.fft.fftfreq + +### [torch.fft.fftfreq](https://pytorch.org/docs/stable/generated/torch.fft.fftfreq.html?highlight=fftfreq#torch.fft.fftfreq) + +```python +torch.fft.fftfreq(n, + d=1.0, + *, + out=None, + dtype=None, + layout=torch.strided, + device=None, + requires_grad=False) +``` + +### [paddle.fft.fftfreq](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/fft/fftfreq_cn.html) + +```python +paddle.fft.fftfreq(n, + d=1.0, + dtype=None, + name=None) +``` + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| n | n | 窗长度(傅里叶变换点数)。 | +| d | d | 采样间隔,采样率的倒数,默认值为 1。 | +| out | - |输出的 Tensor,Paddle 无此参数,需要进行转写。 | +| dtype | dtype |返回 Tensor 的数据类型。 | +| layout |- |表示布局方式,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| device |- |表示 Tensor 存放设备位置,Paddle 无此参数,需要进行转写。 | +| requires_grad |- |表示是否不阻断梯度传导,Paddle 无此参数,需要进行转写。 | + +### 转写示例 +#### out:指定输出 +```python +# Pytorch 写法 +torch.fft.fftfreq(x, out=y) + +# Paddle 写法 +paddle.assign(paddle.fft.fftfreq(x),y) +``` + +#### requires_grad:是否需要求反向梯度,需要修改该 Tensor 的 stop_gradient 属性 +```python +# Pytorch 写法 +x = torch.fft.fftfreq(x, requires_grad=True) + +# Paddle 写法 +x = paddle.fft.fftfreq(x) +x.stop_gradient = False +``` + +#### device: Tensor 的设备 +```python +# Pytorch 写法 +torch.fft.fftfreq(x, device=torch.device('cpu')) + +# Paddle 写法 +y = paddle.fft.fftfreq(x) +y.cpu() diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.hfft.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.hfft.md new file mode 100644 index 00000000000..c6de55bcacd --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.hfft.md @@ -0,0 +1,42 @@ +## [ torch 参数更多 ] torch.fft.hfft + +### [torch.fft.hfft](https://pytorch.org/docs/stable/generated/torch.fft.hfft.html?highlight=hfft#torch.fft.hfft) + +```python +torch.fft.hfft(input, + n=None, + dim=- 1, + norm=None, + *, + out=None) +``` + +### [paddle.fft.hfft](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/fft/hfft_cn.html) + +```python +paddle.fft.hfft(x, + n=None, + axis=- 1, + norm='backward', + name=None) +``` + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| input | x | 输入 Tensor,仅参数名不一致。 | +| n | n | 输出 Tensor 在傅里叶变换轴的长度。 | +| dim | axis | 傅里叶变换的轴,如果没有指定,默认是使用最后一维,仅参数名不一致。| +| norm |norm |傅里叶变换的缩放模式,缩放系数由变换的方向和缩放模式同时决定,完全一致。| +| out | - |输出 Tensor,Paddle 无此参数,需要进行转写。 | + +### 转写示例 +#### out:指定输出 +```python +# Pytorch 写法 +torch.fft.hfft(x, n=5, out=y) + +# Paddle 写法 +paddle.assign(paddle.fft.hfft(x), y) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.ihfft.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.ihfft.md new file mode 100644 index 00000000000..335e3e32bdb --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.ihfft.md @@ -0,0 +1,42 @@ +## [ torch 参数更多 ] torch.fft.ihfft + +### [torch.fft.ihfft](https://pytorch.org/docs/1.13/generated/torch.fft.ihfft.html?highlight=ihfft#torch.fft.ihfft) + +```python +torch.fft.ihfft(input, + n=None, + dim=- 1, + norm=None, + *, + out=None) +``` + +### [paddle.fft.ihfft](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/fft/ihfft_cn.html) + +```python +paddle.fft.ihfft(x, + n=None, + axis=- 1, + norm='backward', + name=None) +``` + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| input | x |输入 Tensor,仅参数名不一致。 | +| n | n |傅里叶变换点数。 | +| dim | axis |傅里叶变换的轴,如果没有指定,默认使用最后一维,仅参数名不一致。| +| norm |norm |傅里叶变换的缩放模式,缩放系数由变换的方向和缩放模式同时决定,完全一致。| +| out | - |输出的 Tensor,Paddle 无此参数,需要进行转写。 | + +### 转写示例 +#### out:指定输出 +```python +# Pytorch 写法 +torch.fft.ihfft(x, out=y) + +# Paddle 写法 +paddle.assign(paddle.fft.ihfft(x), y) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.irfftn.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.irfftn.md new file mode 100644 index 00000000000..a6ff7493d46 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.irfftn.md @@ -0,0 +1,42 @@ +## [ torch 参数更多 ] torch.fft.irfftn + +### [torch.fft.irfftn](https://pytorch.org/docs/stable/generated/torch.fft.irfftn.html?highlight=irfftn#torch.fft.irfftn) + +```python +torch.fft.irfftn(input, + s=None, + dim=None, + norm=None, + *, + out=None) +``` + +### [paddle.fft.irfftn](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/fft/irfftn_cn.html) + +```python +paddle.fft.irfftn(x, + s=None, + axes=None, + norm='backward', + name=None) +``` + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| input | x |输入 Tensor,仅参数名不一致。 | +| s | s |输出 Tensor 在每一个傅里叶变换轴上的长度。 | +| dim | axes |计算快速傅里叶变换的轴。仅参数名不一致。 | +| norm |norm |傅里叶变换的缩放模式,缩放系数由变换的方向和缩放模式同时决定,完全一致。| +| out | - |输出的 Tensor,Paddle 无此参数,需要进行转写。 | + +### 转写示例 +#### out:指定输出 +```python +# Pytorch 写法 +torch.fft.irfftn(x, out=y) + +# Paddle 写法 +paddle.assign(paddle.fft.irfftn(x), y) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.rfftfreq.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.rfftfreq.md new file mode 100644 index 00000000000..d7f46f52eda --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/fft/torch.fft.rfftfreq.md @@ -0,0 +1,65 @@ +## [ torch 参数更多 ] torch.fft.rfftfreq + +### [torch.fft.rfftfreq](https://pytorch.org/docs/1.13/generated/torch.fft.rfftfreq.html?highlight=rfftfreq#torch.fft.rfftfreq) + +```python +torch.fft.rfftfreq(n, + d=1.0, + *, + out=None, + dtype=None, + layout=torch.strided, + device=None, + requires_grad=False) +``` + +### [paddle.fft.rfftfreq](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/fft/rfftfreq_cn.html) + +```python +paddle.fft.rfftfreq(n, + d=1.0, + dtype=None, + name=None) +``` + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| n |n | 窗长度(傅里叶变换点数)。 | +| d |d | 采样间隔,采样率的倒数,默认值为 1。 | +| out |- |输出的 Tensor,Paddle 无此参数,需要进行转写。 | +| dtype |dtype | 返回 Tensor 的数据类型。 | +| layout |- |表示布局方式,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| device |- |表示 Tensor 存放设备位置,Paddle 无此参数,需要进行转写。 | +| requires_grad |- |表示是否不阻断梯度传导,Paddle 无此参数,需要进行转写。 | + +### 转写示例 +#### out:指定输出 +```python +# Pytorch 写法 +torch.fft.rfftfreq(x, out=y) + +# Paddle 写法 +paddle.assign(paddle.fft.rfftfreq(x), y) +``` + +#### requires_grad:是否需要求反向梯度,需要修改该 Tensor 的 stop_gradient 属性 +```python +# Pytorch 写法 +x = torch.fft.rfftfreq(x, requires_grad=True) + +# Paddle 写法 +x = paddle.fft.rfftfreq(x) +x.stop_gradient = False +``` + +#### device: Tensor 的设备 +```python +# Pytorch 写法 +torch.fft.rfftfreq(x, device=torch.device('cpu')) + +# Paddle 写法 +y = paddle.fft.rfftfreq(x) +y.cpu() +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.download_url_to_file.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.download_url_to_file.md new file mode 100644 index 00000000000..5b024f3cd57 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.download_url_to_file.md @@ -0,0 +1,27 @@ +## [ torch 参数更多 ] torch.hub.download_url_to_file + +### [torch.hub.download_url_to_file](https://pytorch.org/docs/1.13/hub.html?highlight=download#torch.hub.download_url_to_file) + +```python +torch.hub.download_url_to_file(url, + dst, + hash_prefix=None, + progress=True) +``` + +### [paddle.hub.download_url_to_file](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/utils/download/get_weights_path_from_url_cn.html) + +```python +paddle.utils.download.get_weights_path_from_url(url, + md5sum=None) +``` + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +|url |url |下载的链接。| +|dst |- |指定文件保存的绝对路径,例如:/tmp/temporary_file,Paddle 无此参数,暂无转写方式| +|hash_prefix |- |指定下载的 SHA256 文件的前缀,默认为 None,Paddle 无此参数,暂无转写方式。| +|progress |- |是否显示进度条,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +|- |md5sum |下载文件的 md5 值。Pytorch 无此参数,Paddle 保持默认即可。| diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.help.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.help.md new file mode 100644 index 00000000000..89c0d85fb33 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.help.md @@ -0,0 +1,32 @@ +## [torch 参数更多] torch.hub.help + +### [torch.hub.help](https://pytorch.org/docs/1.13/hub.html?highlight=hub+help#torch.hub.help) + +```python +torch.hub.help(github, + model, + force_reload=False, + skip_validation=False, + trust_repo=None) +``` + +### [paddle.hub.help](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/hub/help_cn.html) + +```python +paddle.hub.help(repo_dir, + model, + source='github', + force_reload=False) +``` + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| github | repo_dir |repo 地址,支持 git 地址形式和 local 地址,仅参数名不同。 | +| model | model |模型的名字。 | +| force_reload | force_reload |指定是否强制拉取。 | +| skip_validation| - |检查由 github 参数指定的分支或提交是否属于存储库所有者,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| trust_repo | - |在 v1.14 中被移除;Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +|- |source |指定 repo 托管的位置,Pytorch 无此参数,Paddle 保持默认即可| diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.list.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.list.md new file mode 100644 index 00000000000..f28ba8a0207 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.list.md @@ -0,0 +1,30 @@ +## [ torch 参数更多 ] torch.hub.list + +### [torch.hub.list](https://pytorch.org/docs/1.13/hub.html?highlight=hub+list#torch.hub.list) + +```python +torch.hub.list(github, + force_reload=False, + skip_validation=False, + trust_repo=None) +``` + +### [paddle.hub.list](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/hub/list_cn.html) + +```python +paddle.hub.list(repo_dir, + source='github', + force_reload=False) +``` + + +其中,PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| github | repo_dir |repo 地址,支持 git 地址形式和 local 地址,仅参数名不同。| +| force_reload | force_reload |指定是否强制拉取,默认值: False。 | +| skip_validation| - |检查由 github 参数指定的分支或提交是否属于存储库所有者,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| trust_repo | - |在 v1.14 中被移除;Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| - |source |指定 repo 托管的位置,Pytorch 无此参数,Paddle 保持默认即可| diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.load.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.load.md new file mode 100644 index 00000000000..1d9c309bb74 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/hub/torch.hub.load.md @@ -0,0 +1,39 @@ +## [ torch 参数更多 ] torch.hub.load + +### [torch.hub.load](https://pytorch.org/docs/1.13/hub.html?highlight=hub+load#torch.hub.load) + +```python +torch.hub.load(repo_or_dir, + model, + *args, + source='github', + trust_repo=None, + force_reload=False, + verbose=True, + skip_validation=False, + **kwargs) +``` + +### [paddle.hub.load](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/hub/load_cn.html) + +```python +paddle.hub.load(repo_dir, + model, + source='github', + force_reload=False, + **kwargs) +``` + +其中,Pytorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| repo_or_dir |repo_dir |repo 地址,支持 git 地址形式和 local 地址,仅参数名不同。| +| model | model |模型的名字。| +| *args | - |model 调用时的位置参数。暂无转写方式。| +| source |source |指定 repo 托管的位置。| +| trust_repo | - |在 v1.14 中被移除;Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| force_reload | force_reload |指定是否强制拉取。 | +| verbose | - |是否显示关于命中本地缓存的消息,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| skip_validation| - |检查由 github 参数指定的分支或提交是否属于存储库所有者,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。| +| **kwargs | **kwargs |model 调用时的关键字参数。| diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.add_module.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.add_module.md new file mode 100644 index 00000000000..ed038ff6b48 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.add_module.md @@ -0,0 +1,22 @@ +## [ 仅参数名不一致 ]torch.nn.Module.add_module + +### [torch.nn.Module.add_module](https://pytorch.org/docs/stable/generated/torch.nn.Module.html?highlight=torch+nn+module+add_module#torch.nn.Module.add_module) + +```python +torch.nn.Module.add_module(name, module) +``` + +### [paddle.nn.Layer.add_sublayer](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/Layer_cn.html#add-sublayer-name-sublayer) + +```python +paddle.nn.Layer.add_sublayer(name, sublayer) +``` + +两者功能一致,仅参数名不一致。 + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ----- | ----- | ------------------------------------------ | +| name | name | 表示子层名。 | +| module | sublayer | 表示要添加到模块中的子模块,仅参数名不一致。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.apply.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.apply.md new file mode 100644 index 00000000000..a216ef72d03 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.apply.md @@ -0,0 +1,21 @@ +## [ 参数完全一致 ]torch.nn.Module.apply + +### [torch.nn.Module.apply](https://pytorch.org/docs/stable/generated/torch.nn.Module.html?highlight=torch+nn+module+apply#torch.nn.Module.apply) + +```python +torch.nn.Module.apply(fn) +``` + +### [paddle.nn.Layer.apply](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/Layer_cn.html) + +```python +paddle.nn.Layer.apply(fn) +``` + +两者功能一致,参数完全一致。 + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ----- | ---------- | ------------------------ | +| fn | fn | 表示应用于每个模块的函数。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.md new file mode 100644 index 00000000000..ce5ea61c9b4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Module.md @@ -0,0 +1,22 @@ +## [ 仅 Paddle 参数更多 ] torch.nn.Module + +### [torch.nn.Module](https://pytorch.org/docs/stable/generated/torch.nn.Module.html?highlight=torch+nn+module#torch.nn.Module) + +```python +torch.nn.Module(*args, **kwargs) +``` + +### [paddle.nn.Layer](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/Layer_cn.html) + +```python +paddle.nn.Layer(name_scope=None, dtype='float32') +``` + +其中 Paddle 相比 PyTorch 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ----- | ---------- | ------------------------------------ | +| - | name_scope | PyTorch 无此参数,Paddle 保持默认即可。 | +| - | dtype | PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleDict.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleDict.md index 3c613e3b1b5..d4ce8dfdf21 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleDict.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleDict.md @@ -1,18 +1,21 @@ ## [ 仅参数名不一致 ]torch.nn.ModuleDict -### [torch.nn.ModuleDict](https://pytorch.org/docs/stable/generated/torch.nn.ModuleDict.html?highlight=nn+moduledict#torch.nn.ModuleDict) + +### [torch.nn.ModuleDict](https://pytorch.org/docs/stable/generated/torch.nn.ModuleDict.html?highlight=torch+nn+moduledict#torch.nn.ModuleDict) ```python class torch.nn.ModuleDict(modules=None) ``` -### [paddle.nn.LayerDict](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/LayerDict_cn.html#layerdict) +### [paddle.nn.LayerDict](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/LayerDict_cn.html) ```python class paddle.nn.LayerDict(sublayers=None) ``` + 两者功能一致,参数名不一致,具体如下: -### 参数差异 -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| modules | sublayers | 键值对的可迭代对象,值的类型为 paddle.nn.Layer ,参数名不一致。 | +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ----- | ---------- | ---------------------------------------------------------- | +| modules | sublayers | 键值对的可迭代对象,值的类型为 paddle.nn.Layer ,参数名不一致。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleList.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleList.md index e8113d62ac8..9c6e8c3094d 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleList.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ModuleList.md @@ -1,17 +1,21 @@ ## [ 仅参数名不一致 ]torch.nn.ModuleList -### [torch.nn.ModuleList](https://pytorch.org/docs/stable/generated/torch.nn.ModuleList.html?highlight=modulelist#torch.nn.ModuleList) + +### [torch.nn.ModuleList](https://pytorch.org/docs/stable/generated/torch.nn.ModuleList.html?highlight=torch+nn+modulelist#torch.nn.ModuleList) ```python -class torch.nn.ModuleList(modules=None) +torch.nn.ModuleList(modules=None) ``` -### [paddle.nn.LayerList](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/LayerList_cn.html#layerlist) +### [paddle.nn.LayerList](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/LayerList_cn.html) ```python -class paddle.nn.LayerList(sublayers=None) +paddle.nn.LayerList(sublayers=None) ``` + 两者功能一致,参数名不一致,具体如下: + ### 参数映射 -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| modules | sublayers | 要保存的子层,参数名不一致。 | + +| PyTorch | PaddlePaddle | 备注 | +| ----- | ---------- | -------------------------- | +| modules | sublayers | 要保存的子层,参数名不一致。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.functional.softmax.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.functional.softmax.md new file mode 100644 index 00000000000..6fcea548b22 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.functional.softmax.md @@ -0,0 +1,23 @@ +## [ torch 参数更多 ]torch.nn.functional.softmax + +### [torch.nn.functional.softmax](https://pytorch.org/docs/stable/generated/torch.nn.functional.softmax.html#torch.nn.functional.softmax) + +```python +torch.nn.functional.softmax(input, dim=None, _stacklevel=3, dtype=None) +``` + +### [paddle.nn.functional.softmax](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/softmax_cn.html#softmax) + +```python +paddle.nn.functional.softmax(x, axis=- 1, dtype=None, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +|:-------:|:------------:| :---------------------------------------------------: | +| input | x | 表示输入张量,仅参数名不一致。 | +| dim | axis | 表示对输入 Tensor 进行运算的轴,仅参数名不一致。 | +| dtype | dtype | 表示返回张量所需的数据类型。 | +| _stacklevel | - | Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.bernoulli.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.bernoulli.md index 308dc6ca3da..2f2f9e987af 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.bernoulli.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.bernoulli.md @@ -1,38 +1,38 @@ -## [torch 参数更多 ]torch.bernoulli - -### [torch.bernoulli](https://pytorch.org/docs/stable/generated/torch.bernoulli.html?highlight=bernoulli#torch.bernoulli) - -```python -torch.bernoulli(input, - *, - generator=None, - out=None) -``` - -### [paddle.bernoulli](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/bernoulli_cn.html#bernoulli) - -```python -paddle.bernoulli(x, - name=None) -``` - -其中 Pytorch 相比 Paddle 支持更多其他参数,具体如下: - -### 参数映射 -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| input| x | 表示输入的 Tensor ,仅参数名不同。 | -| generator | - | 用于采样的伪随机数生成器, Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要进行转写。 | - - - -### 转写示例 -#### out:指定输出 -```python -# Pytorch 写法 -torch.bernoulli([3, 5], out=y) - -# Paddle 写法 -paddle.assign(paddle.bernoulli([3, 5]), y) -``` +## [ torch 参数更多 ]torch.bernoulli + +### [torch.bernoulli](https://pytorch.org/docs/1.13/generated/torch.bernoulli.html#torch.bernoulli) + +```python +torch.bernoulli(input, + *, + generator=None, + out=None) +``` + +### [paddle.bernoulli](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/bernoulli_cn.html) + +```python +paddle.bernoulli(x, + name=None) +``` + +其中 Pytorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| input | x | 表示输入的 Tensor,仅参数名不同。 | +| generator | - | 用于采样的伪随机数生成器, Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | +| out | - | 表示输出的 Tensor,Paddle 无此参数,需要进行转写。 | + + + +### 转写示例 +#### out:指定输出 +```python +# Pytorch 写法 +torch.bernoulli(torch.tensor([3, 5]), out=y) + +# Paddle 写法 +paddle.assign(paddle.bernoulli(paddle.to_tensor([3, 5])), y) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.multinomial.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.multinomial.md index cbd0ee4e874..7415518bb73 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.multinomial.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.multinomial.md @@ -1,5 +1,5 @@ -## [torch 参数更多 ]torch.multinomial -### [torch.multinomial](https://pytorch.org/docs/stable/generated/torch.multinomial.html?highlight=multinomial#torch.multinomial) +## [ torch 参数更多 ]torch.multinomial +### [torch.multinomial](https://pytorch.org/docs/1.13/generated/torch.multinomial.html#torch.multinomial) ```python torch.multinomial(input, num_samples, @@ -8,7 +8,7 @@ torch.multinomial(input, generator=None, out=None) ``` -### [paddle.multinomial](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/multinomial_cn.html#multinomial) +### [paddle.multinomial](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/multinomial_cn.html) ```python paddle.multinomial(x, num_samples=1, @@ -20,19 +20,20 @@ paddle.multinomial(x, ### 参数映射 | PyTorch | PaddlePaddle | 备注 | | ------------- | ------------ | ------------------------------------------------------ | -| input | x | 表示输入的 Tensor ,仅参数名不一致。 | -| num_samples | num_samples | 表示采样的次数。 | -| replacement | replacement | 表示是否是可放回的采样。 | -| generator | - | 用于采样的伪随机数生成器,PaddlePaddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要进行转写。 | +| input | x | 表示输入的 Tensor,仅参数名不一致。 | +| num_samples | num_samples | 表示采样的次数。 | +| replacement | replacement | 表示是否是可放回的采样。 | +| generator | - | 用于采样的伪随机数生成器,PaddlePaddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | +| out | - | 表示输出的 Tensor,Paddle 无此参数,需要进行转写。 | ### 转写示例 #### out:指定输出 ```python # Pytorch 写法 -torch.multinomial([0.3, 0.5, 0.2], out=y) +torch.multinomial(torch.tensor([0.3, 0.5, 0.2]), out=y) # Paddle 写法 -paddle.assign(paddle.multinomial([0.3, 0.5, 0.2]), y) +paddle.assign(paddle.multinomial(paddle.to_tensor([0.3, 0.5, 0.2])), y) +``` ``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.nonzero.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.nonzero.md index f5d991c8994..5c4dbdc91e7 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.nonzero.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.nonzero.md @@ -1,5 +1,5 @@ -## [torch 参数更多 ]torch.nonzero -### [torch.nonzero](https://pytorch.org/docs/1.13/generated/torch.nonzero.html?highlight=nonzero#torch.nonzero) +## [ torch 参数更多 ]torch.nonzero +### [torch.nonzero](https://pytorch.org/docs/1.13/generated/torch.nonzero.html#torch.nonzero) ```python torch.nonzero(input, @@ -8,7 +8,7 @@ torch.nonzero(input, as_tuple=False) ``` -### [paddle.nonzero](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nonzero_cn.html#nonzero) +### [paddle.nonzero](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nonzero_cn.html) ```python paddle.nonzero(x, @@ -19,17 +19,17 @@ paddle.nonzero(x, ### 参数映射 | PyTorch | PaddlePaddle | 备注 | | ------------- | ------------ | ------------------------------------------------------ | -| input | x | 表示输入的 Tensor ,仅参数名不一致。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要进行转写。 | -| as_tuple | as_tuple | 表示是否以元组格式返回。 | +| input | x | 表示输入的 Tensor ,仅参数名不一致。 | +| out | - | 表示输出的 Tensor , Paddle 无此参数,需要进行转写。 | +| as_tuple | as_tuple | bool 类型表示输出数据的格式,默认 False 时,输出一个张量,True 时输出一组一维张量。 | ### 转写示例 #### out:指定输出 ```python # Pytorch 写法 -torch.nonzero(x, out=y) +torch.nonzero(torch.tensor([3, 5]), out=y) # Paddle 写法 -paddle.assign(paddle.nonzero(x), y) +paddle.assign(paddle.nonzero(paddle.to_tensor([3, 5])), y) ``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.normal.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.normal.md index a26bc8da1f0..3cd06457a80 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.normal.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.normal.md @@ -1,38 +1,37 @@ -## [torch 参数更多 ]torch.normal -### [torch.normal](https://pytorch.org/docs/stable/generated/torch.normal.html?highlight=normal#torch.normal) -```python -torch.normal(mean, - std, - size=None, - *, - generator=None, - out=None) -``` -### [paddle.normal](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/normal_cn.html#normal) -```python -paddle.normal(mean=0.0, - std=1.0, - shape=None, - name=None) -``` - -其中 Pytorch 相比 Paddle 支持更多其他参数,具体如下: -### 参数映射 -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| mean | mean | 表示正态分布的均值。 | -| std | std | 表示正态分布的方差。 | -| size | shape | 表示输出 Tensor 的形状,仅参数名不一致。 | -| generator | - | 用于采样的伪随机数生成器,PaddlePaddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | -| out | - | 表示输出的 Tensor, Paddle 无此参数,需要进行转写。 | - - -### 转写示例 -#### out:指定输出 -```python -# Pytorch 写法 -torch.normal(mean=[0., 0., 0.], std=[1., 2., 3.], out=y) - -# Paddle 写法 -paddle.assign(paddle.normal(mean=[0., 0., 0.], std=[1., 2., 3.]), y) -``` +## [ torch 参数更多 ]torch.normal +### [torch.normal](https://pytorch.org/docs/1.13/generated/torch.normal.html#torch.normal) +```python +torch.normal(mean, + std, + *, + generator=None, + out=None) +``` +### [paddle.normal](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/normal_cn.html) +```python +paddle.normal(mean=0.0, + std=1.0, + shape=None, + name=None) +``` + +其中 Pytorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| mean | mean | 表示正态分布的均值。 | +| std | std | 表示正态分布的方差。 | +| - | shape | 表示输出 Tensor 的形状,Pytorch 无此参数, Paddle 保持默认即可。 | +| generator | - | 用于采样的伪随机数生成器,PaddlePaddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | +| out | - | 表示输出的 Tensor, Paddle 无此参数,需要进行转写。 | + + +### 转写示例 +#### out:指定输出 +```python +# Pytorch 写法 +torch.normal(torch.tensor([0, 0, 0]), torch.tensor([1.0, 2.0, 3.0]), out=y) + +# Paddle 写法 +paddle.assign(paddle.normal(paddle.to_tensor([0, 0, 0]), paddle.to_tensor([1.0, 2.0, 3.0])), y) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.load_state_dict.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.load_state_dict.md new file mode 100644 index 00000000000..704f0e1f3dd --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.load_state_dict.md @@ -0,0 +1,21 @@ +## [ 参数完全一致 ]torch.optim.Optimizer.load_state_dict + +### [torch.optim.Optimizer.load_state_dict](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.load_state_dict.html#torch.optim.Optimizer.load_state_dict) + +```python +torch.optim.Optimizer.load_state_dict(state_dict) +``` + +### [paddle.optimzier.Optimizer.set_state_dict](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/optimizer/Optimizer_cn.html) + +```python +paddle.optimzier.Optimizer.set_state_dict(state_dict) +``` + +两者功能一致,参数完全一致。 + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------- | ---------- | ---------------- | +| state_dict | state_dict | 表示优化器的状态。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.state_dict.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.state_dict.md new file mode 100644 index 00000000000..67ff606aa90 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.optim.Optimizer.state_dict.md @@ -0,0 +1,15 @@ +## [ 无参数 ]torch.optim.Optimizer.state_dict + +### [torch.optim.Optimizer.state_dict](https://pytorch.org/docs/stable/generated/torch.optim.Optimizer.state_dict.html?highlight=torch+optim+optimizer+state_dict#torch.optim.Optimizer.state_dict) + +```python +torch.optim.Optimizer.state_dict() +``` + +### [paddle.optimizer.Optimizer.state_dict](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/optimizer/Optimizer_cn.html) + +```python +paddle.optimizer.Optimizer.state_dict() +``` + +两者功能一致,均无参数。 diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.poisson.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.poisson.md new file mode 100644 index 00000000000..639e06fe2af --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.poisson.md @@ -0,0 +1,19 @@ +## [ torch 参数更多 ]torch.poisson + +### [torch.poisson](https://pytorch.org/docs/1.13/generated/torch.poisson.html#torch.poisson) +```python +torch.poisson(input, + generator=None) +``` +### [paddle.poisson](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/poisson_cn.html) +```python +paddle.poisson(x, + name=None) +``` + +其中 Pytorch 相比 Paddle 支持更多其他参数,具体如下: +### 参数映射 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| input | x | 表示输入的 Tensor ,仅参数名不一致。 | +| generator | - | 用于采样的伪随机数生成器,PaddlePaddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter.md index b5653beb525..88fff22dd13 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter.md @@ -1,6 +1,6 @@ ## [ 仅 paddle 参数更多 ]torch.scatter -### [torch.scatter](https://pytorch.org/docs/stable/generated/torch.scatter.html?highlight=scatter#torch.scatter) +### [torch.scatter](https://pytorch.org/docs/1.13/generated/torch.scatter.html) ```python torch.scatter(input, @@ -19,13 +19,13 @@ paddle.put_along_axis(arr, reduce='assign') ``` -两者功能一致且参数用法一致,仅参数名不同,同时 Paddle 支持更多其他参数,具体如下: +其中 Paddle 相比 Pytorch 支持更多其他参数,具体如下: ### 参数差异 | PyTorch | PaddlePaddle | 备注 | | ------------- | ------------ | ------------------------------------------------------ | -| input | arr | 表示输入 Tensor ,仅参数名不一致。 | -| dim | axis | 表示在哪一个维度 scatter ,仅参数名不一致。 | -| index | indices | 表示输入的索引张量,仅参数名不一致。 | -| src | values | 表示需要插入的值,仅参数名不一致。 | -| - | reduce | 表示对输出 Tensor 的计算方式, PyTorch 无此参数, Paddle 保持默认即可。 | +| input | arr | 表示输入 Tensor ,仅参数名不一致。 | +| dim | axis | 表示在哪一个维度 scatter ,仅参数名不一致。 | +| index | indices | 表示输入的索引张量,仅参数名不一致。 | +| src | values | 表示需要插入的值,仅参数名不一致。 | +| - | reduce | 表示插入 values 时的计算方式,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter_add.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter_add.md new file mode 100644 index 00000000000..a037d82d787 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.scatter_add.md @@ -0,0 +1,31 @@ +## [ 仅 paddle 参数更多 ]torch.scatter_add + +### [torch.scatter_add](https://pytorch.org/docs/1.13/generated/torch.scatter_add.html#torch.scatter_add) + +```python +torch.scatter_add(input, + dim, + index, + src) +``` + +### [paddle.put_along_axis](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/put_along_axis_cn.html) + +```python +paddle.put_along_axis(arr, + indices, + values, + axis, + reduce='assign') +``` + +其中 Paddle 相比 Pytorch 支持更多其他参数,具体如下: + +### 参数差异 +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------ | +| input | arr | 表示输入 Tensor ,仅参数名不一致。 | +| dim | axis | 表示在哪一个维度 scatter ,仅参数名不一致。 | +| index | indices | 表示输入的索引张量,仅参数名不一致。 | +| src | values | 表示需要插入的值,仅参数名不一致。 | +| - | reduce | 表示插入 values 时的计算方式,PyTorch 无此参数,Paddle 应设置为 'add' 。| diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.set_printoptions.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.set_printoptions.md index 776ed878f76..ce9d18c0f64 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.set_printoptions.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.set_printoptions.md @@ -1,31 +1,35 @@ -## [torch 参数更多 ]torch.set_printoptions -### [torch.set_printoptions](https://pytorch.org/docs/master/generated/torch.set_printoptions.html#torch.set_printoptions) +## [ torch 参数更多 ]torch.set_printoptions + +### [torch.set_printoptions](https://pytorch.org/docs/stable/generated/torch.set_printoptions.html?highlight=torch+set_printoptions#torch.set_printoptions) ```python torch.set_printoptions(precision=None, threshold=None, edgeitems=None, linewidth=None, profile=None, sci_mode=None) ``` -### [paddle.set_printoptions](https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/set_printoptions_cn.html#set-printoptions) +### [paddle.set_printoptions][https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/set_printoptions_cn.html] ```python paddle.set_printoptions(precision=None, threshold=None, edgeitems=None, sci_mode=None, linewidth=None) ``` 其中 Pytorch 相比 Paddle 支持更多其他参数,具体如下: + ### 参数映射 -| PyTorch | PaddlePaddle | 备注 | -| ------------- | ------------ | ------------------------------------------------------ | -| precision | precision | 浮点数的小数位数, Pytorch 默认值为 4,Paddle 默认为 8。| -| threshold | threshold | 打印的元素个数上限,默认值为 1000。 | -| edgeitems | edgeitems | 以缩略形式打印时左右两边的元素个数,默认值为 3。 | -| linewidth | linewidth | 每行的字符数,默认值为 80。 | -| sci_mode | sci_mode | 是否以科学计数法打印,Pytorch 默认根据网络自动选择, Paddle 默认值为 False。 | -| profile | - | 预设风格,支持 `default`, `short`, `full`。 Paddle 无此参数, 需要进行转写。| +| PyTorch | PaddlePaddle | 备注 | +| --------- | ------------ | ------------------------------------------------------------ | +| precision | precision | 浮点数的小数位数, Pytorch 默认值为 4,Paddle 默认为 8。 | +| threshold | threshold | 打印的元素个数上限,默认值为 1000。 | +| edgeitems | edgeitems | 以缩略形式打印时左右两边的元素个数,默认值为 3。 | +| linewidth | linewidth | 每行的字符数,默认值为 80。 | +| sci_mode | sci_mode | 是否以科学计数法打印,Pytorch 默认根据网络自动选择, Paddle 默认值为 False。 | +| profile | - | 预设风格,支持 `default`, `short`, `full`。 Paddle 无此参数, 需要进行转写。 | ### 转写示例 + #### profile:预设风格,设置为 `default`。 -```python + +``` # Pytorch 写法 torch.set_printoptions(profile='default') @@ -34,7 +38,8 @@ paddle.set_printoptions(precision=4, threshold=1000, edgeitems=3, linewidth=80) ``` #### profile:预设风格,设置为 `short`。 -```python + +``` # Pytorch 写法 torch.set_printoptions(profile='short') @@ -43,7 +48,8 @@ paddle.set_printoptions(precision=2, threshold=1000, edgeitems=2, linewidth=80) ``` #### profile:预设风格,设置为 `full`。 -```python + +``` # Pytorch 写法 torch.set_printoptions(profile='full') diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.sparse_coo_tensor.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.sparse_coo_tensor.md new file mode 100644 index 00000000000..59c1068061e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.sparse_coo_tensor.md @@ -0,0 +1,46 @@ +## [ 参数不一致 ]torch.sparse_coo_tensor + +### [torch.sparse_coo_tensor](https://pytorch.org/docs/stable/generated/torch.sparse_coo_tensor.html?highlight=torch+sparse_coo_tensor#torch.sparse_coo_tensor) + +```python +torch.sparse_coo_tensor(indices,values,size=None, * , dtype=None,device=None,requires_grad=False) +``` + +### [paddle.sparse.sparse_coo_tensor](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/sparse/sparse_coo_tensor_cn.html#sparse-coo-tensor) + +```python +paddle.sparse.sparse_coo_tensor(indices, values, shape=None, dtype=None, place=None, stop_gradient=True) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ----------- | ----------- | ----------------------------------------- | +| indices | indices | 表示初始化 tensor 的数据。 | +| values | values | 表示初始化 tensor 的数据。 | +| dtype | dtype | 表示创建 tensor 的数据类型。 | +| size | shape | 表示张量的大小,仅参数名不一致。 | +| device | place | 表示创建 tensor 的设备位置,仅参数名不一致。 | +| requires_grad | stop_gradient | 两者参数功能相反,需要转写。 | + +### 转写示例 + +```python +# PyTorch 写法 +import torch + +indices = [[0, 1, 2], [1, 2, 0]] +values = [1.0, 2.0, 3.0] +dense_shape = [3, 3] +coo = torch.sparse_coo_tensor(indices, values, dense_shape,requires_grad=False) + +# Paddle 写法 +import paddle + +indices = [[0, 1, 2], [1, 2, 0]] +values = [1.0, 2.0, 3.0] +dense_shape = [3, 3] +coo = paddle.sparse.sparse_coo_tensor(indices, values, dense_shape,stop_gradient= True) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.stack.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.stack.md index 20715be86d9..549e8713c97 100644 --- a/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.stack.md +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/ops/torch.stack.md @@ -1,5 +1,6 @@ -## [torch 参数更多 ]torch.stack -### [torch.stack](https://pytorch.org/docs/1.13/generated/torch.stack.html?highlight=stack#torch.stack) +## [ torch 参数更多 ]torch.stack + +### [torch.stack](https://pytorch.org/docs/1.13/generated/torch.stack.html#torch.stack) ```python torch.stack(tensors, @@ -8,7 +9,7 @@ torch.stack(tensors, out=None) ``` -### [paddle.stack](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/stack_cn.html#stack) +### [paddle.stack](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/stack_cn.html) ```python paddle.stack(x, @@ -20,17 +21,17 @@ paddle.stack(x, ### 参数映射 | PyTorch | PaddlePaddle | 备注 | | ------------- | ------------ | ------------------------------------------------------ | -| tensors | x | 表示输入的 Tensor ,仅参数名不一致。 | -| dim | axis | 表示要堆叠的轴,仅参数名不一致。 | -| out | - | 表示输出的 Tensor , Paddle 无此参数,需要进行转写。 | +| tensors | x | 表示输入的 Tensor ,仅参数名不一致。 | +| dim | axis | 表示要堆叠的轴,仅参数名不一致。 | +| out | - | 表示输出的 Tensor,Paddle 无此参数,需要转写。 | ### 转写示例 #### out:指定输出 ```python # Pytorch 写法 -torch.stack([x1, x2, x3], out=y) +torch.stack(torch.tensor([3, 5]), out=y) # Paddle 写法 -paddle.assign(paddle.stack([x1, x2, x3]), y) +paddle.assign(paddle.stack(paddle.to_tensor([3, 5])), y) ```