keras-cv
keras-cv copied to clipboard
Support Swin Transformer Model
Related to https://github.com/keras-team/keras-cv/issues/668, this is another transformer based model which we'd like to be supported. For simplicity, focus on only classification task, having in mind that future detection tasks might rely on it.
For contributors, please follow the contribution guide.
And specifically, on the API Design Guide, we'd like to see a brief description of how the model would look like before implementation, preferrably conforming to the tf.keras.application style.
I would like to work on this!
Hey @tanzhenyu
I got around reading the contriution guideline and the API design document. I was unable to find a guide to contribute a model inside of keras_cv.
My main doubts:
- Do we need to port the weights of the model (here SwinT in PyTorch)? If yes (which I hope should be the case), how would I do that?
- Do we also need to validate the weight porting process by validating it wrt the task (classification here) on a benchmark dataset?
- How do we check the correctness of the model?
Hey @tanzhenyu
I got around reading the contriution guideline and the API design document. I was unable to find a guide to contribute a model inside of
keras_cv.My main doubts:
- Do we need to port the weights of the model (here SwinT in PyTorch)? If yes (which I hope should be the case), how would I do that?
- Do we also need to validate the weight porting process by validating it wrt the task (classification here) on a benchmark dataset?
- How do we check the correctness of the model?
It would be useful to have something like: https://github.com/keras-team/keras/blob/master/CONTRIBUTING.md#contributing-to-keras-applications
Also, do we have a duplicate ticket with https://github.com/keras-team/keras-cv/issues/636 ?
Hey @tanzhenyu
I got around reading the contriution guideline and the API design document. I was unable to find a guide to contribute a model inside of
keras_cv.My main doubts:
- Do we need to port the weights of the model (here SwinT in PyTorch)? If yes (which I hope should be the case), how would I do that?
- Do we also need to validate the weight porting process by validating it wrt the task (classification here) on a benchmark dataset?
- How do we check the correctness of the model?
Yes we do expect porting the weights and verifying the results against the original paper. For the guide, @bhack 's reference is most relevant.
@ariG23498 will you mind if I join you on this PR?
I have no issues collaborating with you on this one!
Yes we do expect porting the weights and verifying the results against the original paper. For the guide, @bhack 's reference is most relevant.
We have @sayakpaul https://github.com/sayakpaul/swin-transformers-tf for this
Then we need to build the training phase.
To do transformer-based models we'll need new layers (reusable) and blocks (might be reusable). KerasCV is currently missing blocks to rapidly build transformer-based models. Might be worth taking a detour to work on those components first
I agree with @DavidLandup0.
Hi! Are you guys @ayulockin and @ariG23498 still working on this? I would like to help if it's alright.
Is Anyone working on this??
This issue is stale because it has been open for 180 days with no activity. It will be closed if no further activity occurs. Thank you.