-
Notifications
You must be signed in to change notification settings - Fork 7.1k
[Feature] Add efficientnet_fpn_backbone #5546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Hi @talregev! Thank you for your pull request and welcome to our community. Action RequiredIn order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you. ProcessIn order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA. Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with If you have received this in error or have any questions, please contact us at [email protected]. Thanks! |
💊 CI failures summary and remediationsAs of commit d4a21c0 (more details on the Dr. CI page):
🕵️ 1 new failure recognized by patternsThe following CI failures do not appear to be due to upstream breakages:
|
Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Meta Open Source project. Thanks! |
dd9e92f
to
f5758af
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@talregev Thanks for the contribution, welcome to our community.
Though your code on the PR looks good, I'm skeptical merging this for a few reasons:
- TorchVision focuses on providing canonical implementations. The specific FPN Backbone that you propose is aligned with the ResNet approach but it's not something that is described on a paper.
- The method is not used by any pre-trained model or model builder.
- It's rather a utility that fits better in downstream applications. Even the decision over which backbones should use a FrozenBN is somehow arbitrary and possibly application specific.
Note that writing an issue prior sending a PR is not mandatory, but it can help you avoid doing throwaway work. Have a look for more information here.
If you have concerns about anything I'm mentioning above, please let me know. Thanks!
This is "maskrcnn" approach to build easily backbond for other networks for detection.
The method used pre-train efficientnet backbond that come with pytorch. you must missed that.
It the same as resnet and mobilenet function that help you to build backbond for maskrcnn and other network for detection. |
f5758af
to
24d7ea6
Compare
24d7ea6
to
d4a21c0
Compare
@talregev I'm aware the we offer an Efficientnet backbone; I'm the one who added it. :) My point is that, even though you follow a "maskrcnn" approach, this doesn't mean it's a canonical implementation of a model described on a paper. Unless you can send us a reference of a specific paper you are implementing and also decide to offer pre-trained weights for that model, then this PR can't be merged. I don't doubt that this utility method can be useful for users (this is why you could consider creating a small project for it at Github). But consider what would happen if we try to create methods for virtually every architecture/backbone that TorchVision supports. We would have to add tens of methods, duplicating massive amount of code. It would be nice at one point to offer a utility that creates an FPN out of arbitrary backbones but the main problem is that there are too many ways to build an FPN and each paper tends to do something different. That's the reason we currently don't offer such a general purpose utility. |
There is only 17 files inside models, with ~15 backbond models. most of them is not used for detection.
Not sure I understand this policy. This is raise a difficult questions for the community. Also there is a paper (not my paper) that use cascade mask-rcnn with efficientnet backbond with NAS-FPN: |
@talregev Please review our general contribution and the model contribution guides for details on what kind of improvements we usually accept and what is the recommended approach for maximizing the chances of getting them merged. As I explained earlier, this utility can't be added in TorchVision without having a specific canonical architecture using it. Moreover, prior implementing new architectures you would need to open an issue and discuss it with the maintainers as per the guide above. I see that you already separated some of the test improvements you made to a different PR at #5552. I'm happy to help you review and merge the other PR but unfortunately this one is not something we can accept. I don't argue that some people will find it useful; I'm saying that this is not the kind of utility we want to add in the library. |
Add efficientnet_fpn_backbone