diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.add.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.add.md new file mode 100644 index 00000000000..2ab0512bc84 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.add.md @@ -0,0 +1,34 @@ +## [torch 参数更多]torch.Tensor.add + +### [torch.Tensor.add](https://pytorch.org/docs/1.13/generated/torch.Tensor.add.html#torch.Tensor.add) + +```python +torch.Tensor.add(other, *, alpha=1) +``` + +### [paddle.Tensor.add](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#add-y-name-none) + +```python +paddle.Tensor.add(y, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | -------------------------------------------------------- | +| other | y | 输入的 Tensor,仅参数名不一致。 | +| alpha | - | 表示 other 的乘数,PaddlePaddle 无此参数,需要进行转写。 | + +### 转写示例 + +#### alpha:other 的乘数 + +```python +# Pytorch 写法 +y = torch.tensor([3, 5]).add(torch.tensor([2, 3]), alpha=2) + +# Paddle 写法 +y = paddle.to_tensor([3, 5]).add(2 * paddle.to_tensor([2, 3])) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.add_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.add_.md new file mode 100644 index 00000000000..34fe8b4443c --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.add_.md @@ -0,0 +1,34 @@ +## [torch 参数更多]torch.Tensor.add\_ + +### [torch.Tensor.add\_](https://pytorch.org/docs/1.13/generated/torch.Tensor.add_.html#torch.Tensor.add_) + +```python +torch.Tensor.add_(other, *, alpha=1) +``` + +### [paddle.Tensor.add\_](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#id3) + +```python +paddle.Tensor.add_(y, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | -------------------------------------------------------- | +| other | y | 输入的 Tensor,仅参数名不一致。 | +| alpha | - | 表示 other 的乘数,PaddlePaddle 无此参数,需要进行转写。 | + +### 转写示例 + +#### alpha:other 的乘数 + +```python +# Pytorch 写法 +torch.tensor([3, 5]).add_(torch.tensor([2, 3]), alpha=2) + +# Paddle 写法 +paddle.to_tensor([3, 5]).add_(2 * paddle.to_tensor([2, 3])) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.exponential_.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.exponential_.md new file mode 100644 index 00000000000..fecdf2ea78b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.exponential_.md @@ -0,0 +1,22 @@ +## [torch 参数更多]torch.Tensor.exponential\_ + +### [torch.Tensor.exponential\_](https://pytorch.org/docs/1.13/generated/torch.Tensor.exponential_.html#torch.Tensor.exponential_) + +```python +torch.Tensor.exponential_(lambd=1, *, generator=None) +``` + +### [paddle.Tensor.exponential\_](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#exponential-lam-1-0-name-none) + +```python +paddle.Tensor.exponential_(lam=1.0, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| --------- | ------------ | ----------------------------------------------------------------------------------- | +| lambd | lam | 指数分布的 λ 参数,仅参数名不一致。 | +| generator | - | 用于采样的伪随机数生成器,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.half.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.half.md new file mode 100644 index 00000000000..40f96efb316 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.half.md @@ -0,0 +1,34 @@ +## [torch 参数更多]torch.Tensor.half + +### [torch.Tensor.half](https://pytorch.org/docs/1.13/generated/torch.Tensor.half.html#torch.Tensor.half) + +```python +torch.Tensor.half(memory_format=torch.preserve_format) +``` + +### [paddle.Tensor.astype](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#astype-dtype) + +```python +paddle.Tensor.astype('float16') +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ----------------------------------------------------------------------- | +| memory_format | - | 表示内存格式,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | +| - | dtype | 转换数据类型,PyTorch 无此参数,Paddle 设置为 paddle.float16。 | + +### 转写示例 + +#### dtype 参数:转换数据类型 + +```python +# PyTorch 写法: +y = x.half() + +# Paddle 写法: +y = x.astype(paddle.float16) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.long.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.long.md new file mode 100644 index 00000000000..d47fd734a7e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.long.md @@ -0,0 +1,34 @@ +## [torch 参数更多]torch.Tensor.long + +### [torch.Tensor.long](https://pytorch.org/docs/1.13/generated/torch.Tensor.long.html#torch.Tensor.long) + +```python +torch.Tensor.long(memory_format=torch.preserve_format) +``` + +### [paddle.Tensor.astype](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#astype-dtype) + +```python +paddle.Tensor.astype('int64') +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ----------------------------------------------------------------------- | +| memory_format | - | 表示内存格式,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | +| - | dtype | 转换数据类型,PyTorch 无此参数,Paddle 设置为 paddle.int64。 | + +### 转写示例 + +#### dtype 参数:转换数据类型 + +```python +# PyTorch 写法: +y = x.long() + +# Paddle 写法: +y = x.astype(paddle.int64) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.multinomial.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.multinomial.md new file mode 100644 index 00000000000..07021fb0a5a --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.multinomial.md @@ -0,0 +1,23 @@ +## [torch 参数更多]torch.Tensor.multinomial + +### [torch.Tensor.multinomial](https://pytorch.org/docs/1.13/generated/torch.Tensor.multinomial.html#torch.Tensor.multinomial) + +```python +torch.Tensor.multinomial(num_samples, replacement=False, *, generator=None) +``` + +### [paddle.multinomial](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/multinomial_cn.html) + +```python +paddle.multinomial(x, num_samples=1, replacement=False, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ----------- | ------------ | ----------------------------------------------------------------------------------- | +| num_samples | num_samples | 采样的次数。 | +| replacement | replacement | 是否是可放回的采样。 | +| generator | - | 用于采样的伪随机数生成器,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.norm.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.norm.md new file mode 100644 index 00000000000..ac91eaa3266 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/Tensor/torch.Tensor.norm.md @@ -0,0 +1,37 @@ +## [torch 参数更多]torch.Tensor.norm + +### [torch.Tensor.norm](https://pytorch.org/docs/1.13/generated/torch.Tensor.norm.html#torch.Tensor.norm) + +```python +torch.Tensor.norm(p='fro', dim=None, keepdim=False, dtype=None) +``` + +### [paddle.Tensor.norm](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/Tensor_cn.html#norm-p-fro-axis-none-keepdim-false-name-none) + +```python +paddle.Tensor.norm(p='fro', axis=None, keepdim=False, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------- | +| p | p | 范数(ord)的种类。 | +| dim | axis | 使用范数计算的轴,仅参数名不一致。 | +| keepdim | keepdim | 是否在输出的 Tensor 中保留和输入一样的维度。 | +| dtype | - | 输出数据类型,Paddle 无此参数,需要进行转写。 | + +### 转写示例 + +#### dtype 参数:输出数据类型 + +```python +# Pytorch 写法 +x.norm(dim=-1, dtype=torch.float32) + +# Paddle 写法 +y = x.astype('float32') +y.norm(dim=-1) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.celu.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.celu.md new file mode 100644 index 00000000000..9f112a009bd --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.celu.md @@ -0,0 +1,23 @@ +## [torch 参数更多]torch.nn.functional.celu + +### [torch.nn.functional.celu](https://pytorch.org/docs/1.13/generated/torch.nn.functional.celu.html#torch.nn.functional.celu) + +```python +torch.nn.functional.celu(input, alpha=1.0, inplace=False) +``` + +### [paddle.nn.functional.celu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/celu_cn.html) + +```python +paddle.nn.functional.celu(x, alpha=1.0, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| alpha | alpha | alpha 参数。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.cosine_embedding_loss.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.cosine_embedding_loss.md new file mode 100644 index 00000000000..bd95aef9826 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.cosine_embedding_loss.md @@ -0,0 +1,44 @@ +## [torch 参数更多]torch.nn.functional.cosine_embedding_loss + +### [torch.nn.functional.cosine_embedding_loss](https://pytorch.org/docs/1.13/generated/torch.nn.functional.cosine_embedding_loss.html#torch.nn.functional.cosine_embedding_loss) + +```python +torch.nn.functional.cosine_embedding_loss(input1, input2, target, margin=0, size_average=None, reduce=None, reduction='mean') +``` + +### [paddle.nn.functional.cosine_embedding_loss](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/cosine_embedding_loss_cn.html) + +```python +paddle.nn.functional.cosine_embedding_loss(input1, input2, label, margin=0, reduction='mean', name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------ | ------------ | ---------------------------------------------- | +| input1 | input1 | 输入的 Tensor。 | +| input2 | input2 | 输入的 Tensor。 | +| target | label | 标签,仅参数名不一致。 | +| margin | margin | 可以设置的范围为[-1, 1]。 | +| size_average | - | 已废弃,和 reduce 组合决定损失计算方式。 | +| reduce | - | 已废弃,和 size_average 组合决定损失计算方式。 | +| reduction | reduction | 指定应用于输出结果的计算方式。 | + +### 转写示例 + +```python +# Pytorch 的 size_average、reduce 参数转为 Paddle 的 reduction 参数 +if size_average is None: + size_average = True +if reduce is None: + reduce = True + +if size_average and reduce: + reduction = 'mean' +elif reduce: + reduction = 'sum' +else: + reduction = 'none' +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.ctc_loss.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.ctc_loss.md new file mode 100644 index 00000000000..3bee8f64423 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.ctc_loss.md @@ -0,0 +1,27 @@ +## [torch 参数更多]torch.nn.functional.ctc_loss + +### [torch.nn.functional.ctc_loss](https://pytorch.org/docs/1.13/generated/torch.nn.functional.ctc_loss.html#torch.nn.functional.ctc_loss) + +```python +torch.nn.functional.ctc_loss(log_probs, targets, input_lengths, target_lengths, blank=0, reduction='mean', zero_infinity=False) +``` + +### [paddle.nn.functional.ctc_loss](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/ctc_loss_cn.html) + +```python +paddle.nn.functional.ctc_loss(log_probs, labels, input_lengths, label_lengths, blank=0, reduction='mean') +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------------- | ------------- | ------------------------------------------------------------------ | +| log_probs | log_probs | 经过 padding 的概率序列。 | +| targets | labels | 经过 padding 的标签序列,仅参数名不一致。 | +| input_lengths | input_lengths | 表示输入 log_probs 数据中每个序列的长度。 | +| target_lengths | label_lengths | 表示 label 中每个序列的长度,仅参数名不一致。 | +| blank | blank | 空格标记的 ID 值。 | +| reduction | reduction | 指定应用于输出结果的计算方式。 | +| zero_infinity | - | 是否设置 infinity 及关联梯度 为 0,Paddle 无此参数,暂无转写方式。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.elu.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.elu.md new file mode 100644 index 00000000000..54ffa1c741c --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.elu.md @@ -0,0 +1,23 @@ +## [torch 参数更多]torch.nn.functional.elu + +### [torch.nn.functional.elu](https://pytorch.org/docs/1.13/generated/torch.nn.functional.elu.html#torch.nn.functional.elu) + +```python +torch.nn.functional.elu(input, alpha=1.0, inplace=False) +``` + +### [paddle.nn.functional.elu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/elu_cn.html) + +```python +paddle.nn.functional.elu(x, alpha=1.0, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| alpha | alpha | alpha 参数。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.gumbel_softmax.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.gumbel_softmax.md new file mode 100644 index 00000000000..ea59d5cb6ab --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.gumbel_softmax.md @@ -0,0 +1,25 @@ +## [torch 参数更多]torch.nn.functional.gumbel_softmax + +### [torch.nn.functional.gumbel_softmax](https://pytorch.org/docs/1.13/generated/torch.nn.functional.gumbel_softmax.html#torch.nn.functional.gumbel_softmax) + +```python +torch.nn.functional.gumbel_softmax(logits, tau=1, hard=False, eps=1e-10, dim=- 1) +``` + +### [paddle.nn.functional.gumbel_softmax](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/gumbel_softmax_cn.html) + +```python +paddle.nn.functional.gumbel_softmax(x, temperature=1.0, hard=False, axis=- 1, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | ------------------------------------------------------------------------------------------------- | +| logits | x | 一个 N-D Tensor,前 N-1 维用于独立分布 batch 的索引,最后一维表示每个类别的概率,仅参数名不一致。 | +| tau | temperature | 大于 0 的标量,仅参数名不一致。 | +| hard | hard | 如果是 True,返回离散的 one-hot 向量。如果是 False,返回软样本。 | +| eps | - | eps 参数,Paddle 无此参数,暂无转写方式。 | +| dim | axis | 按照维度 axis 计算 softmax,仅参数名不一致。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hardswish.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hardswish.md new file mode 100644 index 00000000000..7010ba8c931 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hardswish.md @@ -0,0 +1,22 @@ +## [torch 参数更多]torch.nn.functional.hardswish + +### [torch.nn.functional.hardswish](https://pytorch.org/docs/1.13/generated/torch.nn.functional.hardswish.html#torch.nn.functional.hardswish) + +```python +torch.nn.functional.hardswish(input, inplace=False) +``` + +### [paddle.nn.functional.hardswish](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/hardswish_cn.html) + +```python +paddle.nn.functional.hardswish(x, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hardtanh.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hardtanh.md new file mode 100644 index 00000000000..4cc6888f393 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hardtanh.md @@ -0,0 +1,24 @@ +## [torch 参数更多]torch.nn.functional.hardtanh + +### [torch.nn.functional.hardtanh](https://pytorch.org/docs/1.13/generated/torch.nn.functional.hardtanh.html#torch.nn.functional.hardtanh) + +```python +torch.nn.functional.hardtanh(input, min_val=- 1.0, max_val=1.0, inplace=False) +``` + +### [paddle.nn.functional.hardtanh](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/hardtanh_cn.html) + +```python +paddle.nn.functional.hardtanh(x, min=-1.0, max=1.0, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| min_val | min | hardtanh 激活计算公式中的 min 值,仅参数名不一致。 | +| max_val | max | hardtanh 激活计算公式中的 max 值,仅参数名不一致。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hinge_embedding_loss.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hinge_embedding_loss.md new file mode 100644 index 00000000000..9be1c1f8e81 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.hinge_embedding_loss.md @@ -0,0 +1,43 @@ +## [torch 参数更多]torch.nn.functional.hinge_embedding_loss + +### [torch.nn.functional.hinge_embedding_loss](https://pytorch.org/docs/1.13/generated/torch.nn.functional.hinge_embedding_loss.html#torch.nn.functional.hinge_embedding_loss) + +```python +torch.nn.functional.hinge_embedding_loss(input, target, margin=1.0, size_average=None, reduce=None, reduction='mean') +``` + +### [paddle.nn.functional.hinge_embedding_loss](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/hinge_embedding_loss_cn.html) + +```python +paddle.nn.functional.hinge_embedding_loss(input, label, margin=1.0, reduction='mean', name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------ | ------------ | ------------------------------------------------------------------------------------------ | +| input | input | 输入的 Tensor。 | +| target | label | 标签,仅参数名不一致。 | +| margin | margin | 当 label 为 -1 时,该值决定了小于 margin 的 input 才需要纳入 hinge embedding loss 的计算。 | +| size_average | - | 已废弃,和 reduce 组合决定损失计算方式。 | +| reduce | - | 已废弃,和 size_average 组合决定损失计算方式。 | +| reduction | reduction | 指定应用于输出结果的计算方式。 | + +### 转写示例 + +```python +# Pytorch 的 size_average、reduce 参数转为 Paddle 的 reduction 参数 +if size_average is None: + size_average = True +if reduce is None: + reduce = True + +if size_average and reduce: + reduction = 'mean' +elif reduce: + reduction = 'sum' +else: + reduction = 'none' +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.interpolate.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.interpolate.md new file mode 100644 index 00000000000..82dd65fe608 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.interpolate.md @@ -0,0 +1,29 @@ +## [torch 参数更多]torch.nn.functional.interpolate + +### [torch.nn.functional.interpolate](https://pytorch.org/docs/1.13/generated/torch.nn.functional.interpolate.html#torch.nn.functional.interpolate) + +```python +torch.nn.functional.interpolate(input, size=None, scale_factor=None, mode='nearest', align_corners=None, recompute_scale_factor=None, antialias=False) +``` + +### [paddle.nn.functional.interpolate](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/interpolate_cn.html) + +```python +paddle.nn.functional.interpolate(x, size=None, scale_factor=None, mode='nearest', align_corners=False, align_mode=0, data_format='NCHW', name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ---------------------- | ------------- | ------------------------------------------------------------------------------------------------------ | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| size | size | 输出 Tensor 形状。 | +| scale_factor | scale_factor | 输入的高度或宽度的乘数因子。 | +| mode | mode | 插值方法。 | +| align_corners | align_corners | 一个可选的 bool 型参数,如果为 True,则将输入和输出张量的 4 个角落像素的中心对齐,并保留角点像素的值。 | +| recompute_scale_factor | - | 是否重新计算 scale_factor,Paddle 无此参数,暂无转写方式。 | +| antialias | - | 是否使用 anti-aliasing,Paddle 无此参数,暂无转写方式。 | +| - | align_mode | 双线性插值的可选项,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | data_format | 指定输入的数据格式,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.leaky_relu.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.leaky_relu.md new file mode 100644 index 00000000000..4591889b651 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.leaky_relu.md @@ -0,0 +1,23 @@ +## [torch 参数更多]torch.nn.functional.leaky_relu + +### [torch.nn.functional.leaky_relu](https://pytorch.org/docs/1.13/generated/torch.nn.functional.leaky_relu.html#torch.nn.functional.leaky_relu) + +```python +torch.nn.functional.leaky_relu(input, negative_slope=0.01, inplace=False) +``` + +### [paddle.nn.functional.leaky_relu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/leaky_relu_cn.html) + +```python +paddle.nn.functional.leaky_relu(x, negative_slope=0.01, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------------- | -------------- | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| negative_slope | negative_slope | x<0 时的斜率。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.log_softmax.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.log_softmax.md new file mode 100644 index 00000000000..8d4cc676259 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.log_softmax.md @@ -0,0 +1,24 @@ +## [torch 参数更多]torch.nn.functional.log_softmax + +### [torch.nn.functional.log_softmax](https://pytorch.org/docs/1.13/generated/torch.nn.functional.log_softmax.html#torch.nn.functional.log_softmax) + +```python +torch.nn.functional.log_softmax(input, dim=None, _stacklevel=3, dtype=None) +``` + +### [paddle.nn.functional.log_softmax](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/log_softmax_cn.html) + +```python +paddle.nn.functional.log_softmax(x, axis=- 1, dtype=None, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------ | ------------ | -------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| dim | axis | 指定对输入 x 进行运算的轴,仅参数名不一致。 | +| \_stacklevel | - | \_stacklevel 参数,Paddle 无此参数,暂无转写方式。 | +| dtype | dtype | 输入 Tensor 的数据类型。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool1d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool1d.md new file mode 100644 index 00000000000..502eeda186d --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool1d.md @@ -0,0 +1,27 @@ +## [torch 参数更多]torch.nn.functional.max_pool1d + +### [torch.nn.functional.max_pool1d](https://pytorch.org/docs/1.13/generated/torch.nn.functional.max_pool1d.html#torch.nn.functional.max_pool1d) + +```python +torch.nn.functional.max_pool1d(input, kernel_size, stride=None, padding=0, dilation=1, ceil_mode=False, return_indices=False) +``` + +### [paddle.nn.functional.max_pool1d](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/max_pool1d_cn.html) + +```python +paddle.nn.functional.max_pool1d(x, kernel_size, stride=None, padding=0, return_mask=False, ceil_mode=False, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------------- | ------------ | ------------------------------------------------------------ | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| kernel_size | kernel_size | 池化核的尺寸大小。 | +| stride | stride | 池化操作步长。 | +| padding | padding | 池化补零的方式。 | +| dilation | - | 带有滑动窗口元素间的 stride,Paddle 无此参数,暂无转写方式。 | +| ceil_mode | ceil_mode | 是否用 ceil 函数计算输出的 height 和 width。 | +| return_indices | return_mask | 是否返回最大值的索引,仅参数名不一致。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool2d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool2d.md new file mode 100644 index 00000000000..ab9698643c5 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool2d.md @@ -0,0 +1,28 @@ +## [torch 参数更多]torch.nn.functional.max_pool2d + +### [torch.nn.functional.max_pool2d](https://pytorch.org/docs/1.13/generated/torch.nn.functional.max_pool2d.html#torch.nn.functional.max_pool2d) + +```python +torch.nn.functional.max_pool2d(input, kernel_size, stride=None, padding=0, dilation=1, ceil_mode=False, return_indices=False) +``` + +### [paddle.nn.functional.max_pool2d](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/max_pool2d_cn.html) + +```python +paddle.nn.functional.max_pool2d(x, kernel_size, stride=None, padding=0, ceil_mode=False, return_mask=False, data_format='NCHW', name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------------- | ------------ | ------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| kernel_size | kernel_size | 池化核的尺寸大小。 | +| stride | stride | 池化操作步长。 | +| padding | padding | 池化补零的方式。 | +| dilation | - | 带有滑动窗口元素间的 stride,Paddle 无此参数,暂无转写方式。 | +| ceil_mode | ceil_mode | 是否用 ceil 函数计算输出的 height 和 width。 | +| return_indices | return_mask | 是否返回最大值的索引,仅参数名不一致。 | +| - | data_format | 输入和输出的数据格式,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool3d.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool3d.md new file mode 100644 index 00000000000..5caa68f9b18 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.max_pool3d.md @@ -0,0 +1,28 @@ +## [torch 参数更多]torch.nn.functional.max_pool3d + +### [torch.nn.functional.max_pool3d](https://pytorch.org/docs/1.13/generated/torch.nn.functional.max_pool3d.html#torch.nn.functional.max_pool3d) + +```python +torch.nn.functional.max_pool3d(input, kernel_size, stride=None, padding=0, dilation=1, ceil_mode=False, return_indices=False) +``` + +### [paddle.nn.functional.max_pool3d](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/max_pool3d_cn.html) + +```python +paddle.nn.functional.max_pool3d(x, kernel_size, stride=None, padding=0, ceil_mode=False, return_mask=False, data_format="NCDHW", name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------------- | ------------ | ------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| kernel_size | kernel_size | 池化核的尺寸大小。 | +| stride | stride | 池化操作步长。 | +| padding | padding | 池化补零的方式。 | +| dilation | - | 带有滑动窗口元素间的 stride,Paddle 无此参数,暂无转写方式。 | +| ceil_mode | ceil_mode | 是否用 ceil 函数计算输出的 height 和 width。 | +| return_indices | return_mask | 是否返回最大值的索引,仅参数名不一致。 | +| - | data_format | 输入和输出的数据格式,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.relu.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.relu.md new file mode 100644 index 00000000000..d010816873f --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.relu.md @@ -0,0 +1,22 @@ +## [torch 参数更多]torch.nn.functional.relu + +### [torch.nn.functional.relu](https://pytorch.org/docs/1.13/generated/torch.nn.functional.relu.html#torch.nn.functional.relu) + +```python +torch.nn.functional.relu(input, inplace=False) +``` + +### [paddle.nn.functional.relu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/relu_cn.html) + +```python +paddle.nn.functional.relu(x, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.rrelu.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.rrelu.md new file mode 100644 index 00000000000..fd09614594a --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.rrelu.md @@ -0,0 +1,25 @@ +## [torch 参数更多]torch.nn.functional.rrelu + +### [torch.nn.functional.rrelu](https://pytorch.org/docs/1.13/generated/torch.nn.functional.rrelu.html#torch.nn.functional.rrelu) + +```python +torch.nn.functional.rrelu(input, lower=1.0 / 8, upper=1.0 / 3, training=False, inplace=False) +``` + +### [paddle.nn.functional.rrelu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/rrelu_cn.html) + +```python +paddle.nn.functional.rrelu(x, lower=1. / 8., upper=1. / 3., training=True, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| lower | lower | 负值斜率的随机值范围下限。 | +| upper | upper | 负值斜率的随机值范围上限。 | +| training | training | 标记是否为训练阶段。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.selu.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.selu.md new file mode 100644 index 00000000000..5504c429fff --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.selu.md @@ -0,0 +1,24 @@ +## [torch 参数更多]torch.nn.functional.selu + +### [torch.nn.functional.selu](https://pytorch.org/docs/1.13/generated/torch.nn.functional.selu.html#torch.nn.functional.selu) + +```python +torch.nn.functional.selu(input, inplace=False) +``` + +### [paddle.nn.functional.selu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/selu_cn.html) + +```python +paddle.nn.functional.selu(x, scale=1.0507009873554804934193349852946, alpha=1.6732632423543772848170429916717, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | +| - | scale | selu 激活计算公式中的 scale 值,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | alpha | selu 激活计算公式中的 alpha 值,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.threshold.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.threshold.md new file mode 100644 index 00000000000..c152d76b4fe --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/functional/torch.nn.functional.threshold.md @@ -0,0 +1,24 @@ +## [torch 参数更多]torch.nn.functional.threshold + +### [torch.nn.functional.threshold](https://pytorch.org/docs/1.13/generated/torch.nn.functional.threshold.html#torch.nn.functional.threshold) + +```python +torch.nn.functional.threshold(input, threshold, value, inplace=False) +``` + +### [paddle.nn.functional.thresholded_relu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/functional/thresholded_relu_cn.html) + +```python +paddle.nn.functional.thresholded_relu(x, threshold=1.0, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| --------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| input | x | 输入的 Tensor,仅参数名不一致。 | +| threshold | threshold | thresholded_relu 激活计算公式中的 threshold 值。 | +| value | - | 不在指定 threshold 范围时的值,Paddle 取值为 0,暂无转写方式。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.AlphaDropout.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.AlphaDropout.md new file mode 100644 index 00000000000..ef1486c708d --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.AlphaDropout.md @@ -0,0 +1,22 @@ +## [torch 参数更多]torch.nn.AlphaDropout + +### [torch.nn.AlphaDropout](https://pytorch.org/docs/1.13/generated/torch.nn.AlphaDropout.html#torch.nn.AlphaDropout) + +```python +torch.nn.AlphaDropout(p=0.5, inplace=False) +``` + +### [paddle.nn.AlphaDropout](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/AlphaDropout_cn.html) + +```python +paddle.nn.AlphaDropout(p=0.5, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| p | p | 将输入节点置 0 的概率,即丢弃概率。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Bilinear.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Bilinear.md new file mode 100644 index 00000000000..602c033a71f --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Bilinear.md @@ -0,0 +1,53 @@ +## [torch 参数更多]torch.nn.Bilinear + +### [torch.nn.Bilinear](https://pytorch.org/docs/1.13/generated/torch.nn.Bilinear.html#torch.nn.Bilinear) + +```python +torch.nn.Bilinear(in1_features, in2_features, out_features, bias=True, device=None, dtype=None) +``` + +### [paddle.nn.Bilinear](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/Bilinear_cn.html) + +```python +paddle.nn.Bilinear(in1_features, in2_features, out_features, weight_attr=None, bias_attr=None, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------ | ------------ | --------------------------------------------------------------- | +| in1_features | in1_features | 每个 x1 元素的维度。 | +| in2_features | in2_features | 每个 x2 元素的维度。 | +| out_features | out_features | 输出张量的维度。 | +| bias | bias_attr | 指定偏置参数属性的对象,Paddle 支持更多功能,同时支持 bool 用法。 | +| device | - | Tensor 的设备,Paddle 无此参数,需要进行转写。 | +| dtype | - | Tensor 的数据类型,Paddle 无此参数,需要进行转写。 | +| - | weight_attr | 指定权重参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | + +### 转写示例 + +#### device:Tensor 的设备 + +```python +# Pytorch 写法 +m = torch.nn.Bilinear(in1_features, in2_features, out_features,device=torch.device('cpu')) +y = m(x) + +# Paddle 写法 +m = paddle.nn.Bilinear(in1_features, in2_features, out_features) +y = m(x).cpu() +``` + +#### dtype:Tensor 的数据类型 + +```python +# Pytorch 写法 +m = torch.nn.Bilinear(in1_features, in2_features, out_features,dtype=torch.float32) +y = m(x) + +# Paddle 写法 +m = paddle.nn.Bilinear(in1_features, in2_features, out_features) +y = m(x).astype(paddle.float32) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.CELU.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.CELU.md new file mode 100644 index 00000000000..4557e403027 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.CELU.md @@ -0,0 +1,22 @@ +## [torch 参数更多]torch.nn.CELU + +### [torch.nn.CELU](https://pytorch.org/docs/1.13/generated/torch.nn.CELU.html#torch.nn.CELU) + +```python +torch.nn.CELU(alpha=1.0, inplace=False) +``` + +### [paddle.nn.CELU](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/CELU_cn.html) + +```python +paddle.nn.CELU(alpha=1.0, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| alpha | alpha | CELU 的 alpha 值。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.CosineEmbeddingLoss.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.CosineEmbeddingLoss.md new file mode 100644 index 00000000000..e8516133825 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.CosineEmbeddingLoss.md @@ -0,0 +1,41 @@ +## [torch 参数更多]torch.nn.CosineEmbeddingLoss + +### [torch.nn.CosineEmbeddingLoss](https://pytorch.org/docs/1.13/generated/torch.nn.CosineEmbeddingLoss.html#torch.nn.CosineEmbeddingLoss) + +```python +torch.nn.CosineEmbeddingLoss(margin=0.0, size_average=None, reduce=None, reduction='mean') +``` + +### [paddle.nn.CosineEmbeddingLoss](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/CosineEmbeddingLoss_cn.html) + +```python +paddle.nn.CosineEmbeddingLoss(margin=0, reduction='mean', name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------ | ------------ | ---------------------------------------------- | +| margin | margin | 可以设置的范围为[-1, 1]。 | +| size_average | - | 已废弃,和 reduce 组合决定损失计算方式。 | +| reduce | - | 已废弃,和 size_average 组合决定损失计算方式。 | +| reduction | reduction | 指定应用于输出结果的计算方式。 | + +### 转写示例 + +```python +# Pytorch 的 size_average、reduce 参数转为 Paddle 的 reduction 参数 +if size_average is None: + size_average = True +if reduce is None: + reduce = True + +if size_average and reduce: + reduction = 'mean' +elif reduce: + reduction = 'sum' +else: + reduction = 'none' +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.MultiLabelSoftMarginLoss.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.MultiLabelSoftMarginLoss.md new file mode 100644 index 00000000000..c079b4dec63 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.MultiLabelSoftMarginLoss.md @@ -0,0 +1,41 @@ +## [torch 参数更多]torch.nn.MultiLabelSoftMarginLoss + +### [torch.nn.MultiLabelSoftMarginLoss](https://pytorch.org/docs/1.13/generated/torch.nn.MultiLabelSoftMarginLoss.html#torch.nn.MultiLabelSoftMarginLoss) + +```python +torch.nn.MultiLabelSoftMarginLoss(weight=None, size_average=None, reduce=None, reduction='mean') +``` + +### [paddle.nn.MultiLabelSoftMarginLoss](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/MultiLabelSoftMarginLoss_cn.html) + +```python +paddle.nn.MultiLabelSoftMarginLoss(weight=None, reduction='mean', name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------ | ------------ | ---------------------------------------------- | +| weight | weight | 手动设定权重。 | +| size_average | - | 已废弃,和 reduce 组合决定损失计算方式。 | +| reduce | - | 已废弃,和 size_average 组合决定损失计算方式。 | +| reduction | reduction | 指定应用于输出结果的计算方式。 | + +### 转写示例 + +```python +# Pytorch 的 size_average、reduce 参数转为 Paddle 的 reduction 参数 +if size_average is None: + size_average = True +if reduce is None: + reduce = True + +if size_average and reduce: + reduction = 'mean' +elif reduce: + reduction = 'sum' +else: + reduction = 'none' +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.MultiheadAttention.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.MultiheadAttention.md new file mode 100644 index 00000000000..fb8a1aee1b8 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.MultiheadAttention.md @@ -0,0 +1,59 @@ +## [torch 参数更多]torch.nn.MultiheadAttention + +### [torch.nn.MultiheadAttention](https://pytorch.org/docs/1.13/generated/torch.nn.MultiheadAttention.html#torch.nn.MultiheadAttention) + +```python +torch.nn.MultiheadAttention(embed_dim, num_heads, dropout=0.0, bias=True, add_bias_kv=False, add_zero_attn=False, kdim=None, vdim=None, batch_first=False, device=None, dtype=None) +``` + +### [paddle.nn.MultiHeadAttention](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/MultiHeadAttention_cn.html) + +```python +paddle.nn.MultiHeadAttention(embed_dim, num_heads, dropout=0.0, kdim=None, vdim=None, need_weights=False, weight_attr=None, bias_attr=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------- | ------------ | ------------------------------------------------------------------------- | +| embed_dim | embed_dim | 输入输出的维度。 | +| num_heads | num_heads | 多头注意力机制的 Head 数量。 | +| dropout | dropout | 注意力目标的随机失活率。 | +| bias | bias_attr | 指定偏置参数属性的对象,Paddle 支持更多功能,同时支持 bool 用法。 | +| add_bias_kv | - | 在 dim=0 增加 bias,Paddle 无此参数,暂无转写方式。 | +| add_zero_attn | - | 在 dim=1 增加批量 0 值,Paddle 无此参数,暂无转写方式。 | +| kdim | kdim | 键值对中 key 的维度。 | +| vdim | vdim | 键值对中 value 的维度。 | +| batch_first | - | 表示输入数据的第 0 维是否代表 batch_size,Paddle 无此参数,暂无转写方式。 | +| device | - | Tensor 的设备,Paddle 无此参数,需要进行转写。 | +| dtype | - | Tensor 的数据类型,Paddle 无此参数,需要进行转写。 | +| - | need_weights | 表明是否返回注意力权重,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | weight_attr | 指定权重参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | + +### 转写示例 + +#### device:Tensor 的设备 + +```python +# Pytorch 写法 +m = torch.nn.MultiheadAttention(embed_dim, num_heads,device=torch.device('cpu')) +y = m(x) + +# Paddle 写法 +m = paddle.nn.MultiheadAttention(embed_dim, num_heads) +y = m(x).cpu() +``` + +#### dtype:Tensor 的数据类型 + +```python +# Pytorch 写法 +m = torch.nn.MultiheadAttention(embed_dim, num_heads,dtype=torch.float32) +y = m(x) + +# Paddle 写法 +m = paddle.nn.MultiheadAttention(embed_dim, num_heads) +y = m(x).astype(paddle.float32) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.RReLU.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.RReLU.md new file mode 100644 index 00000000000..d70d73ef32b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.RReLU.md @@ -0,0 +1,23 @@ +## [torch 参数更多]torch.nn.RReLU + +### [torch.nn.RReLU](https://pytorch.org/docs/1.13/generated/torch.nn.RReLU.html#torch.nn.RReLU) + +```python +torch.nn.RReLU(lower=0.125, upper=0.3333333333333333, inplace=False) +``` + +### [paddle.nn.RReLU](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/RReLU_cn.html) + +```python +paddle.nn.RReLU(lower=1. / 8., upper=1. / 3., name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| lower | lower | 负值斜率的随机值范围下限。 | +| upper | upper | 负值斜率的随机值范围上限。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ReLU6.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ReLU6.md new file mode 100644 index 00000000000..c20390d4412 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.ReLU6.md @@ -0,0 +1,21 @@ +## [torch 参数更多]torch.nn.ReLU6 + +### [torch.nn.ReLU6](https://pytorch.org/docs/1.13/generated/torch.nn.ReLU6.html#torch.nn.ReLU6) + +```python +torch.nn.ReLU6(inplace=False) +``` + +### [paddle.nn.ReLU6](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/ReLU6_cn.html) + +```python +paddle.nn.ReLU6(name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.SELU.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.SELU.md new file mode 100644 index 00000000000..98159c84a3a --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.SELU.md @@ -0,0 +1,23 @@ +## [torch 参数更多]torch.nn.SELU + +### [torch.nn.SELU](https://pytorch.org/docs/1.13/generated/torch.nn.SELU.html#torch.nn.SELU) + +```python +torch.nn.SELU(inplace=False) +``` + +### [paddle.nn.SELU](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/SELU_cn.html) + +```python +paddle.nn.SELU(scale=1.0507009873554804934193349852946, alpha=1.6732632423543772848170429916717, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | +| - | scale | selu 激活计算公式中的 scale 值,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | alpha | selu 激活计算公式中的 alpha 值,PyTorch 无此参数,Paddle 保持默认即可。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.SiLU.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.SiLU.md new file mode 100644 index 00000000000..c8f3d4224d3 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.SiLU.md @@ -0,0 +1,21 @@ +## [torch 参数更多]torch.nn.SiLU + +### [torch.nn.SiLU](https://pytorch.org/docs/1.13/generated/torch.nn.SiLU.html#torch.nn.SiLU) + +```python +torch.nn.SiLU(inplace=False) +``` + +### [paddle.nn.Silu](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/Silu_cn.html) + +```python +paddle.nn.Silu(name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Threshold.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Threshold.md new file mode 100644 index 00000000000..4b270ae9752 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Threshold.md @@ -0,0 +1,23 @@ +## [torch 参数更多]torch.nn.Threshold + +### [torch.nn.Threshold](https://pytorch.org/docs/1.13/generated/torch.nn.Threshold.html#torch.nn.Threshold) + +```python +torch.nn.Threshold(threshold, value, inplace=False) +``` + +### [paddle.nn.ThresholdedReLU](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/ThresholdedReLU_cn.html) + +```python +paddle.nn.ThresholdedReLU(threshold=1.0, name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| --------- | ------------ | --------------------------------------------------------------------------------------------------------------- | +| threshold | threshold | ThresholdedReLU 激活计算公式中的 threshold 值。 | +| value | - | 不在指定 threshold 范围时的值,Paddle 取值为 0,暂无转写方式。 | +| inplace | - | 表示在不更改变量的内存地址的情况下,直接修改变量的值,Paddle 无此参数,一般对网络训练结果影响不大,可直接删除。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Transformer.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Transformer.md new file mode 100644 index 00000000000..5ad31a60d0b --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.Transformer.md @@ -0,0 +1,64 @@ +## [torch 参数更多]torch.nn.Transformer + +### [torch.nn.Transformer](https://pytorch.org/docs/1.13/generated/torch.nn.Transformer.html#torch.nn.Transformer) + +```python +torch.nn.Transformer(d_model=512, nhead=8, num_encoder_layers=6, num_decoder_layers=6, dim_feedforward=2048, dropout=0.1, activation=, custom_encoder=None, custom_decoder=None, layer_norm_eps=1e-05, batch_first=False, norm_first=False, device=None, dtype=None) +``` + +### [paddle.nn.Transformer](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/Transformer_cn.html) + +```python +paddle.nn.Transformer(d_model=512, nhead=8, num_encoder_layers=6, num_decoder_layers=6, dim_feedforward=2048, dropout=0.1, activation='relu', attn_dropout=None, act_dropout=None, normalize_before=False, weight_attr=None, bias_attr=None, custom_encoder=None, custom_decoder=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------------ | ------------------ | ----------------------------------------------------------------------------------- | +| d_model | d_model | 编码器和解码器的输入输出的维度。 | +| nhead | nhead | 多头注意力机制的 Head 数量。 | +| num_encoder_layers | num_encoder_layers | 编码器中 TransformerEncoderLayer 的层数。 | +| num_decoder_layers | num_decoder_layers | 解码器中 TransformerDecoderLayer 的层数。 | +| dim_feedforward | dim_feedforward | 前馈神经网络中隐藏层的大小。 | +| dropout | dropout | 对编码器和解码器中每个子层的输出进行处理的 dropout 值。 | +| activation | activation | 前馈神经网络的激活函数。 | +| custom_encoder | custom_encoder | 若提供该参数,则将 custom_encoder 作为编码器。 | +| custom_decoder | custom_decoder | 若提供该参数,则将 custom_decoder 作为解码器。 | +| layer_norm_eps | - | 层 normalization 组件的 eps 值,Paddle 无此参数,暂无转写方式。 | +| batch_first | - | 表示输入数据的第 0 维是否代表 batch_size,Paddle 无此参数,暂无转写方式。 | +| norm_first | normalize_before | 是否 LayerNorms 操作在 attention 和 feedforward 前,仅参数名不一致。 | +| device | - | Tensor 的设备,Paddle 无此参数,需要进行转写。 | +| dtype | - | Tensor 的数据类型,Paddle 无此参数,需要进行转写。 | +| - | attn_dropout | 多头自注意力机制中对注意力目标的随机失活率,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | act_dropout | 前馈神经网络的激活函数后的 dropout,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | weight_attr | 指定权重参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | bias_attr | 指定偏置参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | + +### 转写示例 + +#### device:Tensor 的设备 + +```python +# Pytorch 写法 +m = torch.nn.Transformer(device=torch.device('cpu')) +y = m(x) + +# Paddle 写法 +m = paddle.nn.Transformer() +y = m(x).cpu() +``` + +#### dtype:Tensor 的数据类型 + +```python +# Pytorch 写法 +m = torch.nn.Transformer(dtype=torch.float32) +y = m(x) + +# Paddle 写法 +m = paddle.nn.Transformer() +y = m(x).astype(paddle.float32) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerDecoderLayer.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerDecoderLayer.md new file mode 100644 index 00000000000..1792f7a17ff --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerDecoderLayer.md @@ -0,0 +1,60 @@ +## [torch 参数更多]torch.nn.TransformerDecoderLayer + +### [torch.nn.TransformerDecoderLayer](https://pytorch.org/docs/1.13/generated/torch.nn.TransformerDecoderLayer.html#torch.nn.TransformerDecoderLayer) + +```python +torch.nn.TransformerDecoderLayer(d_model, nhead, dim_feedforward=2048, dropout=0.1, activation=, layer_norm_eps=1e-05, batch_first=False, norm_first=False, device=None, dtype=None) +``` + +### [paddle.nn.TransformerDecoderLayer](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/TransformerDecoderLayer_cn.html) + +```python +paddle.nn.TransformerDecoderLayer(d_model, nhead, dim_feedforward, dropout=0.1, activation='relu', attn_dropout=None, act_dropout=None, normalize_before=False, weight_attr=None, bias_attr=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| --------------- | ---------------- | ----------------------------------------------------------------------------------- | +| d_model | d_model | 输入输出的维度。 | +| nhead | nhead | 多头注意力机制的 Head 数量。 | +| dim_feedforward | dim_feedforward | 前馈神经网络中隐藏层的大小。 | +| dropout | dropout | 对三个子层的输出进行处理的 dropout 值。 | +| activation | activation | 前馈神经网络的激活函数。 | +| layer_norm_eps | - | 层 normalization 组件的 eps 值,Paddle 无此参数,暂无转写方式。 | +| batch_first | - | 表示输入数据的第 0 维是否代表 batch_size,Paddle 无此参数,暂无转写方式。 | +| norm_first | normalize_before | 是否 LayerNorms 操作在 attention 和 feedforward 前,仅参数名不一致。 | +| device | - | Tensor 的设备,Paddle 无此参数,需要进行转写。 | +| dtype | - | Tensor 的数据类型,Paddle 无此参数,需要进行转写。 | +| - | attn_dropout | 多头自注意力机制中对注意力目标的随机失活率,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | act_dropout | 前馈神经网络的激活函数后的 dropout,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | weight_attr | 指定权重参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | bias_attr | 指定偏置参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | + +### 转写示例 + +#### device:Tensor 的设备 + +```python +# Pytorch 写法 +m = torch.nn.TransformerDecoderLayer(device=torch.device('cpu')) +y = m(x) + +# Paddle 写法 +m = paddle.nn.TransformerDecoderLayer() +y = m(x).cpu() +``` + +#### dtype:Tensor 的数据类型 + +```python +# Pytorch 写法 +m = torch.nn.TransformerDecoderLayer(dtype=torch.float32) +y = m(x) + +# Paddle 写法 +m = paddle.nn.TransformerDecoderLayer() +y = m(x).astype(paddle.float32) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerEncoder.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerEncoder.md new file mode 100644 index 00000000000..f431afe9eb0 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerEncoder.md @@ -0,0 +1,25 @@ +## [torch 参数更多]torch.nn.TransformerEncoder + +### [torch.nn.TransformerEncoder](https://pytorch.org/docs/1.13/generated/torch.nn.TransformerEncoder.html#torch.nn.TransformerEncoder) + +```python +torch.nn.TransformerEncoder(encoder_layer, num_layers, norm=None, enable_nested_tensor=True, mask_check=True) +``` + +### [paddle.nn.TransformerEncoder](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/TransformerEncoder_cn.html) + +```python +paddle.nn.TransformerEncoder(encoder_layer, num_layers, norm=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| -------------------- | ------------- | ------------------------------------------ | +| encoder_layer | encoder_layer | TransformerEncoderLayer 的一个实例。 | +| num_layers | num_layers | TransformerEncoderLayer 层的叠加数量。 | +| norm | norm | 层标准化(Layer Normalization)。 | +| enable_nested_tensor | - | 是否转为嵌套 Tensor,Paddle 无此参数,暂无转写方式。 | +| mask_check | - | mask_check 参数,Paddle 无此参数,暂无转写方式。 | diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerEncoderLayer.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerEncoderLayer.md new file mode 100644 index 00000000000..08372e89b6e --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TransformerEncoderLayer.md @@ -0,0 +1,60 @@ +## [torch 参数更多]torch.nn.TransformerEncoderLayer + +### [torch.nn.TransformerEncoderLayer](https://pytorch.org/docs/1.13/generated/torch.nn.TransformerEncoderLayer.html#torch.nn.TransformerEncoderLayer) + +```python +torch.nn.TransformerEncoderLayer(d_model, nhead, dim_feedforward=2048, dropout=0.1, activation=, layer_norm_eps=1e-05, batch_first=False, norm_first=False, device=None, dtype=None) +``` + +### [paddle.nn.TransformerEncoderLayer](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/TransformerEncoderLayer_cn.html) + +```python +paddle.nn.TransformerEncoderLayer(d_model, nhead, dim_feedforward, dropout=0.1, activation='relu', attn_dropout=None, act_dropout=None, normalize_before=False, weight_attr=None, bias_attr=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| --------------- | ---------------- | ----------------------------------------------------------------------------------- | +| d_model | d_model | 输入输出的维度。 | +| nhead | nhead | 多头注意力机制的 Head 数量。 | +| dim_feedforward | dim_feedforward | 前馈神经网络中隐藏层的大小。 | +| dropout | dropout | 对两个子层的输出进行处理的 dropout 值。 | +| activation | activation | 前馈神经网络的激活函数。 | +| layer_norm_eps | - | 层 normalization 组件的 eps 值,Paddle 无此参数,暂无转写方式。 | +| batch_first | - | 表示输入数据的第 0 维是否代表 batch_size,Paddle 无此参数,暂无转写方式。 | +| norm_first | normalize_before | 是否 LayerNorms 操作在 attention 和 feedforward 前,仅参数名不一致。 | +| device | - | Tensor 的设备,Paddle 无此参数,需要进行转写。 | +| dtype | - | Tensor 的数据类型,Paddle 无此参数,需要进行转写。 | +| - | attn_dropout | 多头自注意力机制中对注意力目标的随机失活率,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | act_dropout | 前馈神经网络的激活函数后的 dropout,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | weight_attr | 指定权重参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | bias_attr | 指定偏置参数属性的对象,PyTorch 无此参数,Paddle 保持默认即可。 | + +### 转写示例 + +#### device:Tensor 的设备 + +```python +# Pytorch 写法 +m = torch.nn.TransformerEncoderLayer(d_model, nhead, dim_feedforward,device=torch.device('cpu')) +y = m(x) + +# Paddle 写法 +m = paddle.nn.TransformerEncoderLayer(d_model, nhead, dim_feedforward) +y = m(x).cpu() +``` + +#### dtype:Tensor 的数据类型 + +```python +# Pytorch 写法 +m = torch.nn.TransformerEncoderLayer(d_model, nhead, dim_feedforward,dtype=torch.float32) +y = m(x) + +# Paddle 写法 +m = paddle.nn.TransformerEncoderLayer(d_model, nhead, dim_feedforward) +y = m(x).astype(paddle.float32) +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TripletMarginLoss.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TripletMarginLoss.md new file mode 100644 index 00000000000..bed25983da4 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.TripletMarginLoss.md @@ -0,0 +1,44 @@ +## [torch 参数更多]torch.nn.TripletMarginLoss + +### [torch.nn.TripletMarginLoss](https://pytorch.org/docs/1.13/generated/torch.nn.TripletMarginLoss.html#torch.nn.TripletMarginLoss) + +```python +torch.nn.TripletMarginLoss(margin=1.0, p=2.0, eps=1e-06, swap=False, size_average=None, reduce=None, reduction='mean') +``` + +### [paddle.nn.TripletMarginLoss](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/nn/TripletMarginLoss_cn.html) + +```python +paddle.nn.TripletMarginLoss(margin=1.0, p=2., epsilon=1e-6, swap=False, reduction='mean', name=None) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ------------ | ------------ | ---------------------------------------------- | +| margin | margin | 手动指定间距。 | +| p | p | 手动指定范数。 | +| eps | epsilon | 防止除数为 0,仅参数名不一致。 | +| swap | swap | 默认为 False。 | +| size_average | - | 已废弃,和 reduce 组合决定损失计算方式。 | +| reduce | - | 已废弃,和 size_average 组合决定损失计算方式。 | +| reduction | reduction | 指定应用于输出结果的计算方式。 | + +### 转写示例 + +```python +# Pytorch 的 size_average、reduce 参数转为 Paddle 的 reduction 参数 +if size_average is None: + size_average = True +if reduce is None: + reduce = True + +if size_average and reduce: + reduction = 'mean' +elif reduce: + reduction = 'sum' +else: + reduction = 'none' +``` diff --git a/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.parallel.DistributedDataParallel.md b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.parallel.DistributedDataParallel.md new file mode 100644 index 00000000000..cb66efa6eb2 --- /dev/null +++ b/docs/guides/model_convert/convert_from_pytorch/api_difference/nn/torch.nn.parallel.DistributedDataParallel.md @@ -0,0 +1,33 @@ +## [torch 参数更多]torch.nn.parallel.DistributedDataParallel + +### [torch.nn.parallel.DistributedDataParallel](https://pytorch.org/docs/1.13/generated/torch.nn.parallel.DistributedDataParallel.html#torch.nn.parallel.DistributedDataParallel) + +```python +torch.nn.parallel.DistributedDataParallel(module, device_ids=None, output_device=None, dim=0, broadcast_buffers=True, process_group=None, bucket_cap_mb=25, find_unused_parameters=False, check_reduction=False, gradient_as_bucket_view=False, static_graph=False) +``` + +### [paddle.DataParallel](https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/DataParallel_cn.html) + +```python +paddle.DataParallel(layers, strategy=None, comm_buffer_size=25, last_comm_buffer_size=1, find_unused_parameters=False) +``` + +其中 PyTorch 相比 Paddle 支持更多其他参数,具体如下: + +### 参数映射 + +| PyTorch | PaddlePaddle | 备注 | +| ----------------------- | ---------------------- | ---------------------------------------------------------------------------------------- | +| module | layers | 需要通过数据并行方式执行的模型,仅参数名不一致。 | +| device_ids | - | 设置输入设备,Paddle 无此参数,暂无转写方式。 | +| output_device | - | 设置输出设备,Paddle 无此参数,暂无转写方式。 | +| dim | - | 进行运算的轴,Paddle 无此参数,暂无转写方式。 | +| broadcast_buffers | - | forward 开始时是否同步缓存,Paddle 无此参数,暂无转写方式。 | +| process_group | - | 进程组,Paddle 无此参数,暂无转写方式。 | +| bucket_cap_mb | comm_buffer_size | 它是通信调用(如 NCCLAllReduce)时,参数梯度聚合为一组的内存大小(MB),仅参数名不一致。 | +| find_unused_parameters | find_unused_parameters | 是否在模型 forward 函数的返回值的所有张量中,遍历整个向后图。 | +| check_reduction | - | 已废弃,Paddle 无此参数,暂无转写方式。 | +| gradient_as_bucket_view | - | 是否在 allreduce 通讯中配置梯度,Paddle 无此参数,暂无转写方式。 | +| static_graph | - | 是否训练静态图,Paddle 无此参数,暂无转写方式。 | +| - | strategy | 已废弃,数据并行的策略,PyTorch 无此参数,Paddle 保持默认即可。 | +| - | last_comm_buffer_size | 它限制通信调用中最后一个缓冲区的内存大小,PyTorch 无此参数,Paddle 保持默认即可。 |