Skip to content

[0-size Tensor Job2 No.26、62、103、104] Add 0-size Tensor support for paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm [fluid_ops] - #74029

Merged
DanielSun11 merged 3 commits into
PaddlePaddle:developfrom
co63oc:h17
Jul 17, 2025

Conversation

@co63oc

@co63oc co63oc commented Jul 14, 2025 •

Copy link
Copy Markdown
Contributor

PR Category

Operator Mechanism

PR Types

Bug fixes

Description

26 paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm
https://www.paddlepaddle.org.cn/documentation/docs/zh/develop/api/paddle/incubate/nn/functional/fused_bias_dropout_residual_layer_norm_cn.html#fused-bias-dropout-residual-layer-norm
image

输出与x相同,但是测试residual如果为0-size,和residual相同,修改infermeta,没有符号推导
反向填充0,PaddeAPITest为自定义规则
https://github.com/PFCCLab/PaddleAPITest/blob/ec3cd8547f76e608c492f8a7ddb941c64765d378/tester/paddle_to_torch/rules.py#L2256

PaddleAPITest测试通过
image

62 paddle.nn.functional.margin_cross_entropy
PFCCLab/PaddleAPITest#354

margin_cross_entropy 增加logits结尾维度不为0的检查
image

103 deform_conv2d
文档
https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/vision/ops/deform_conv2d_cn.html
输入输出说明
image
从文档查看,输入0-size,输出可能不是0-size,测试中有不同规则检查,没有找到对应测试用例,代码还是按填充编写

修改前向和反向,使用0填充
torch测试反向填充

import torch
import torchvision
_kwargs = {}
_kwargs["input"] = torch.randn([0, 2, 5, 5])
_kwargs["input"].requires_grad = True
_kwargs["offset"] = torch.randn([0, 18, 3, 3])
_kwargs["weight"] = torch.randn([1, 2, 3, 3])
_kwargs["weight"].requires_grad = True
_kwargs["bias"] = None
_kwargs["stride"] = [1, 1]
_kwargs["padding"] = [0, 0]
_kwargs["dilation"] = [1, 1]

result = torchvision.ops.deform_conv2d(**_kwargs)
result.sum().backward()
print(_kwargs["weight"].grad)

tensor([[[[0., 0., 0.],
          [0., 0., 0.],
          [0., 0., 0.]],

         [[0., 0., 0.],
          [0., 0., 0.],
          [0., 0., 0.]]]])

PaddleAPITest测试通过
image

错误中断是torch错误
image

104 distribute_fpn_proposals
增加单测

文档地址 https://www.paddlepaddle.org.cn/documentation/docs/zh/api/paddle/vision/ops/distribute_fpn_proposals_cn.html
image

PaddleAPITest 测试通过,错误为numpy error
image

@paddle-bot

paddle-bot Bot commented Jul 14, 2025

Copy link
Copy Markdown

你的PR提交成功,感谢你对开源项目的贡献!
请关注后续CI自动化测试结果,详情请参考Paddle-CI手册。
Your PR has been submitted. Thanks for your contribution!
Please wait for the result of CI firstly. See Paddle CI Manual for details.

@codecov-commenter

codecov-commenter commented Jul 14, 2025 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 50.00000% with 2 lines in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (develop@b051c4a). Learn more about missing BASE report.

Files with missing lines Patch % Lines
paddle/phi/infermeta/fusion.cc 50.00% 1 Missing ⚠️
python/paddle/nn/functional/loss.py 50.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             develop   #74029   +/-   ##
==========================================
  Coverage           ?   50.00%           
==========================================
  Files              ?        2           
  Lines              ?        4           
  Branches           ?        0           
==========================================
  Hits               ?        2           
  Misses             ?        2           
  Partials           ?        0           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@co63oc co63oc changed the title [0-size Tensor Job2 No.26] Add 0-size Tensor support for paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm [0-size Tensor Job2 No.26、62] Add 0-size Tensor support for paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm Jul 15, 2025
@co63oc co63oc changed the title [0-size Tensor Job2 No.26、62] Add 0-size Tensor support for paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm [0-size Tensor Job2 No.26、62、103、104] Add 0-size Tensor support for paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm Jul 15, 2025
@co63oc co63oc changed the title [0-size Tensor Job2 No.26、62、103、104] Add 0-size Tensor support for paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm [0-size Tensor Job2 No.26、62、103、104] Add 0-size Tensor support for paddle.incubate.nn.functional.fused_bias_dropout_residual_layer_norm [fluid_ops] Jul 15, 2025
@co63oc

co63oc commented Jul 15, 2025

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

@DanielSun11 DanielSun11 self-assigned this Jul 15, 2025
@co63oc

co63oc commented Jul 16, 2025

Copy link
Copy Markdown
Contributor Author

/re-run all-failed

@luotao1 luotao1 added the HappyOpenSource Pro 进阶版快乐开源活动,更具挑战性的任务 label Jul 16, 2025
@luotao1 luotao1 self-assigned this Jul 16, 2025
@DanielSun11

Copy link
Copy Markdown
Contributor

请解决下conflicts

@co63oc

co63oc commented Jul 17, 2025

Copy link
Copy Markdown
Contributor Author

@DanielSun11 CI已完成需要review

@DanielSun11 DanielSun11 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@DanielSun11
DanielSun11 merged commit 434a48d into PaddlePaddle:develop Jul 17, 2025
@co63oc
co63oc deleted the h17 branch July 18, 2025 08:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

contributor External developers HappyOpenSource Pro 进阶版快乐开源活动,更具挑战性的任务

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants