tinyvision / DAMO-YOLO

DAMO-YOLO: a fast and accurate object detection method with some new techs, including NAS backbones, efficient RepGFPN, ZeroHead, AlignedOTA, and distillation enhancement.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Why remove identity branch in RepConv?

xingguang12 opened this issue · comments

Search before asking

  • I have searched the DAMO-YOLO issues and found no similar feature requests.

Description

When I saw your code carefully, I found something deifferent between your code with RepVGGBlock( https://github.com/DingXiaoH/RepVGG/blob/main/repvgg.py )
Snipaste_2023-03-06_16-57-47
Snipaste_2023-03-06_16-56-57
when out_channels == in_channels , identity branch will exist,
Why remove identity branch in RepConv? why remove this identity branch ? Is this op will improve the accuracy or some how?
I want to konw this, please tell me ,thanks a lot

Use case

No response

Additional

No response

Are you willing to submit a PR?

  • Yes I'd like to help by submitting a PR!

sorry this is a question , I choose enhancement option.
In my view , this may reduce precision

Thanks for your attention to DAMO-YOLO. By analyzing the combination and corresponding performance of RepConv and different architectures, we find that the identity connection in RepConv will destroy the residual in ResNet and the concatenation in DenseNet. In our backbone and Neck, we have many res-link and concatenation OP, therefore, we remove identity branch in RepConv, the accuracy also improves as we expect.

Thanks for your attention to DAMO-YOLO. By analyzing the combination and corresponding performance of RepConv and different architectures, we find that the identity connection in RepConv will destroy the residual in ResNet and the concatenation in DenseNet. In our backbone and Neck, we have many res-link and concatenation OP, therefore, we remove identity branch in RepConv, the accuracy also improves as we expect.

Thank you for your generous answer,I will try to add some identity connection to DAMO-YOLO to see the experimental effect