keras-team / keras

Deep Learning for humans
http://keras.io/
Apache License 2.0
61.29k stars 19.38k forks source link

Add `SE-Net` and `SE-ResNeXt ` to keras.applications #15267

Closed innat closed 11 months ago

innat commented 2 years ago

System information.

TensorFlow version (you are using): 2.5 Are you willing to contribute it (Yes/No): Yes. As much as possible.

Describe the feature and the current behavior/state.

Model like SEResNeXt( [50, 101] ) and SE-Net[154] are absent (for unknown reason to me) in keras application along with other models. So, I think, It would be a good addition to the keras core library. FYI, these models are widely used in Kaggle competition.

Will this change the current api? How? Yes. It will change as follows

tensorflow.keras.applications.SEResNeXt50
tensorflow.keras.applications.SEResNeXt101
tensorflow.keras.applications.SENet152`

Who will benefit from this feature? ML engineers and researcher who uses tf.keras.

Others

Others implementation: https://github.com/qubvel/classification_models

rchao commented 2 years ago

Thanks for opening the issue. Can you provide a paragraph as a proposal for justifying adding this model? If you can provide some context of how widely this is used or some citation, that would be helpful.

innat commented 2 years ago

@rchao Thanks for asking. Replying to all your requests, #15267, #15268, #15269, #15270

There is nothing new additional argument for justification I could use compared to the arguments that apply for available models like inceptionv3, resent densenet etc. I'm not fully sure why you're seeking a proposal as you mentioned, so please let me know why these models are not worthy to add and need proposals (I'm seriously don't know if there is any known issue. Is it for lack of man-power or something else! If keras follows some policy here to add new models).

However, I can give some overview of how these models are widely used. For example, let's say in kaggle competition, these SENet models are used frequently used as part of the experiments, link, amazing notebooks, link, link. I can provide more where these models are used actively. Along with these models, RegNets, ResNeSt, NFNet is also worthy to add. All of these models are widely used in the Computer Vision competitions in Kaggle.

The point is, those models which are not available in keras.applications, a user needs to adopt other sources, and sometimes it's not always feasible to use those implementations and needs to support along with the new tf. keras version.

[ It looks some of the requested models were added but dunno what happened next, ResNeXt keras-team/keras#85, ResNeXt keras-team/keras#26 ]

innat commented 2 years ago

@rchao Could you please give some feedback on this?

rchao commented 2 years ago

@innat thanks for the information, and sorry for the delayed response here. The general criteria for adding a new application is that the model has 50 or more citations on the paper, and the requester can provide a PR for us to review. In this case, the PR should include an ImageNet checkpoint.

Can you show us the citation count or other reference demonstrating the popularity, and we'll assess to let you know whether we should proceed?

innat commented 2 years ago

@rchao Thanks for the response.

For citation, I think it's not required to state the citation count for Issue #15269 as we have already ResNet 50/101. However,

Is this something you asked? Please let me know. ( And just to inform, I've created different issue regarding these models so that if PRs are welcomed, the contributor can work on specifically. )

rchao commented 2 years ago

Thanks @innat. Does this model have an imagenet checkpoint as well?

innat commented 2 years ago

@rchao yes, (afaik) they do. Here is the third-party implementation, and here is the list of imagenet weights.

gcunhase commented 2 years ago

Any update on this?

tanzhenyu commented 1 year ago

I will transfer this issue to KerasCV, if there's no objection