1. 19 Aug, 2022 1 commit
    • Sophia Zhi's avatar
      Add the S3D architecture to TorchVision (#6412) · 6de7021e
      Sophia Zhi authored
      
      
      * S3D initial commit
      
      * add model builder code and docstrings
      
      * change classifier submodule, populate weights enum
      
      * fix change of block args from List[List[int]] to ints
      
      * add VideoClassification to transforms
      
      * edit weights url for testing, add s3d to models.video init
      
      * norm_layer changes
      
      * norm_layer and args fix
      
      * Overwrite default dropout
      
      * Remove docs from internal submodules.
      
      * Fix tests
      
      * Adding documentation.
      
      * Link doc from main models.rst
      
      * Fix min_temporal_size
      
      * Adding crop/resize parameters in references script
      
      * Release weights.
      
      * Refactor dropout.
      
      * Adding the weights table in the doc
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      Co-authored-by: default avatarVasilis Vryniotis <vvryniotis@fb.com>
      6de7021e
  2. 10 Aug, 2022 2 commits
    • Local State's avatar
      Add SwinV2 (#6246) · 5521e9d0
      Local State authored
      
      
      * init submit
      
      * fix typo
      
      * support ufmt and mypy
      
      * fix 2 unittest errors
      
      * fix ufmt issue
      
      * Apply suggestions from code review
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * unify codes
      
      * fix meshgrid indexing
      
      * fix a bug
      
      * fix type check
      
      * add type_annotation
      
      * add slow model
      
      * fix device issue
      
      * fix ufmt issue
      
      * add expect pickle file
      
      * fix jit script issue
      
      * fix type check
      
      * keep consistent argument order
      
      * add support for pretrained_window_size
      
      * avoid code duplication
      
      * a better code reuse
      
      * update window_size argument
      
      * make permute and flatten operations modular
      
      * add PatchMergingV2
      
      * modify expect.pkl
      
      * use None as default argument value
      
      * fix type check
      
      * fix indent
      
      * fix window_size (temporarily)
      
      * remove "v2_" related prefix and add v2 builder
      
      * remove v2 builder
      
      * keep default value consistent with official repo
      
      * deprecate dropout
      
      * deprecate pretrained_window_size
      
      * fix dynamic padding edge case
      
      * remove unused imports
      
      * remove doc modification
      
      * Revert "deprecate dropout"
      
      This reverts commit 8a13f932815ae25655c07430d52929f86b1ca479.
      
      * Revert "fix dynamic padding edge case"
      
      This reverts commit 1c7579cb1bd7bf2f0f94907f39bee6ed707a97a8.
      
      * remove unused kwargs
      
      * add downsample docs
      
      * revert block default value
      
      * revert argument order change
      
      * explicitly specify start_dim
      
      * add small and base variants
      
      * add expect files and slow_models
      
      * Add model weights and documentation for swin v2
      
      * fix lint
      
      * fix end of files line
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      Co-authored-by: default avatarJoao Gomes <jdsgomes@fb.com>
      5521e9d0
    • Vasilis Vryniotis's avatar
      Add support of MViTv2 video variants (#6373) · 7e8186e0
      Vasilis Vryniotis authored
      * Extending to support MViTv2
      
      * Fix docs, mypy and linter
      
      * Refactor the relative positional code.
      
      * Code refactoring.
      
      * Rename vars.
      
      * Update docs.
      
      * Replace assert with exception.
      
      * Updat docs.
      
      * Minor refactoring.
      
      * Remove the square input limitation.
      
      * Moving methods around.
      
      * Modify the shortcut in the attention layer.
      
      * Add ported weights.
      
      * Introduce a `residual_cls` config on the attention layer.
      
      * Make the patch_embed kernel/padding/stride configurable.
      
      * Apply changes from code-review.
      
      * Remove stale todo.
      7e8186e0
  3. 08 Aug, 2022 1 commit
  4. 01 Aug, 2022 1 commit
    • Vasilis Vryniotis's avatar
      Add registration mechanism for models (#6333) · 0a919dbb
      Vasilis Vryniotis authored
      * Model registration mechanism.
      
      * Add overwrite options to the dataset prototype registration mechanism.
      
      * Adding example models.
      
      * Fix module filtering
      
      * Fix linter
      
      * Fix docs
      
      * Make name optional if same as model builder
      
      * Apply updates from code-review.
      
      * fix minor bug
      
      * Adding getter for model weight enum
      
      * Support both strings and callables on get_model_weight.
      
      * linter fixes
      
      * Fixing mypy.
      
      * Renaming `get_model_weight` to `get_model_weights`
      
      * Registering all classification models.
      
      * Registering all video models.
      
      * Registering all detection models.
      
      * Registering all optical flow models.
      
      * Fixing mypy.
      
      * Registering all segmentation models.
      
      * Registering all quantization models.
      
      * Fixing linter
      
      * Registering all prototype depth perception models.
      
      * Adding tests and updating existing tests.
      
      * Fix linters
      
      * Fix tests.
      
      * Add beta annotation on docs.
      
      * Fix tests.
      
      * Apply changes from code-review.
      
      * Adding documentation.
      
      * Fix docs.
      0a919dbb
  5. 22 Jul, 2022 1 commit
  6. 24 Jun, 2022 1 commit
    • Vasilis Vryniotis's avatar
      Add MViT architecture in TorchVision (#6198) · fb7f9a16
      Vasilis Vryniotis authored
      * Adding MViT v2 architecture (#6105)
      
      * Adding mvitv2 architecture
      
      * Fixing memory issues on tests and minor refactorings.
      
      * Adding input validation
      
      * Adding docs and minor refactoring
      
      * Add `min_temporal_size` in the supported meta-data.
      
      * Switch Tuple[int, int, int] with List[int] to support easier the 2D case
      
      * Adding more docs and references
      
      * Change naming conventions of classes to follow the same pattern as MobileNetV3
      
      * Fix test breakage.
      
      * Update todos
      
      * Performance optimizations.
      
      * Add support to MViT v1 (#6179)
      
      * Switch implementation to v1 variant.
      
      * Fix docs
      
      * Adding back a v2 pseudovariant
      
      * Changing the way the network are configured.
      
      * Temporarily removing v2
      
      * Adding weights.
      
      * Expand _squeeze/_unsqueeze to support arbitrary dims.
      
      * Update references script.
      
      * Fix tests.
      
      * Fixing frames and preprocessing.
      
      * Fix std/mean values in transforms.
      
      * Add permanent Dropout and update the weights.
      
      * Update accuracies.
      
      * Fix documentation
      
      * Remove unnecessary expected file.
      
      * Skip big model test
      
      * Rewrite the configuration logic to reduce LOC.
      
      * Fix mypy
      fb7f9a16
  7. 23 Jun, 2022 1 commit
  8. 24 May, 2022 1 commit
  9. 19 May, 2022 1 commit
  10. 09 May, 2022 1 commit
    • YosuaMichael's avatar
      Adding resnext101 64x4d model (#5935) · 4c02f103
      YosuaMichael authored
      * Add resnext101_64x4d model definition
      
      * Add test for resnext101_64x4d
      
      * Add resnext101_64x4d weight
      
      * Update checkpoint to use EMA weigth
      
      * Add quantization model signature for resnext101_64x4d
      
      * Fix class name and update accuracy using 1 gpu and batch_size=1
      
      * Apply ufmt
      
      * Update the quantized weight and accuracy that we still keep the training log
      
      * Add quantized expect file
      
      * Update docs and fix acc1
      
      * Add recipe for quantized to PR
      
      * Update models.rst
      4c02f103
  11. 28 Apr, 2022 2 commits
  12. 27 Apr, 2022 1 commit
  13. 05 Apr, 2022 2 commits
    • Vasilis Vryniotis's avatar
      Post-paper Detection Optimizations (#5444) · 08cc9a7f
      Vasilis Vryniotis authored
      * Use frozen BN only if pre-trained.
      
      * Add LSJ and ability to from scratch training.
      
      * Fixing formatter
      
      * Adding `--opt` and `--norm-weight-decay` support in Detection.
      
      * Fix error message
      
      * Make ScaleJitter proportional.
      
      * Adding more norm layers in split_normalization_params.
      
      * Add FixedSizeCrop
      
      * Temporary fix for fill values on PIL
      
      * Fix the bug on fill.
      
      * Add RandomShortestSize.
      
      * Skip resize when an augmentation method is used.
      
      * multiscale in [480, 800]
      
      * Add missing star
      
      * Add new RetinaNet variant.
      
      * Add tests.
      
      * Update expected file for old retina
      
      * Fixing tests
      
      * Add FrozenBN to retinav2
      
      * Fix network initialization issues
      
      * Adding BN support in MaskRCNNHeads and FPN
      
      * Adding support of FasterRCNNHeads
      
      * Introduce norm_layers in backbone utils.
      
      * Bigger RPN head + 2x rcnn v2 models.
      
      * Adding gIoU support to retinanet
      
      * Fix assert
      
      * Add back nesterov momentum
      
      * Rename and extend `FastRCNNConvFCHead` to support arbitrary FCs
      
      * Fix linter
      08cc9a7f
    • YosuaMichael's avatar
      Adding the huge vision transformer from SWAG (#5721) · 63576c9f
      YosuaMichael authored
      
      
      * Add vit_b_16_swag
      
      * Better handling idiom for image_size, edit test_extended_model to handle case where number of param differ from default due to different image size input
      
      * Update the accuracy to the experiment result on torchvision model
      
      * Fix typo missing underscore
      
      * raise exception instead of torch._assert, add back publication year (accidentally deleted)
      
      * Add license information on meta and readme
      
      * Improve wording and fix typo for pretrained model license in readme
      
      * Add vit_l_16 weight
      
      * Update README.rst
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * Update the accuracy meta on vit_l_16_swag model to result from our experiment
      
      * Add vit_h_14_swag model
      
      * Add accuracy from experiments
      
      * Add to vit_h_16 model to hubconf.py
      
      * Add docs and expected pkl file for test
      
      * Remove legacy compatibility for ViT_H_14 model
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * Test vit_h_14 with smaller image_size to speedup the test
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      63576c9f
  14. 29 Mar, 2022 1 commit
  15. 22 Mar, 2022 1 commit
    • Vasilis Vryniotis's avatar
      Port Multi-weight support from prototype to main (#5618) · 11bd2eaa
      Vasilis Vryniotis authored
      
      
      * Moving basefiles outside of prototype and porting Alexnet, ConvNext, Densenet and EfficientNet.
      
      * Porting googlenet
      
      * Porting inception
      
      * Porting mnasnet
      
      * Porting mobilenetv2
      
      * Porting mobilenetv3
      
      * Porting regnet
      
      * Porting resnet
      
      * Porting shufflenetv2
      
      * Porting squeezenet
      
      * Porting vgg
      
      * Porting vit
      
      * Fix docstrings
      
      * Fixing imports
      
      * Adding missing import
      
      * Fix mobilenet imports
      
      * Fix tests
      
      * Fix prototype tests
      
      * Exclude get_weight from models on test
      
      * Fix init files
      
      * Porting googlenet
      
      * Porting inception
      
      * porting mobilenetv2
      
      * porting mobilenetv3
      
      * porting resnet
      
      * porting shufflenetv2
      
      * Fix test and linter
      
      * Fixing docs.
      
      * Porting Detection models (#5617)
      
      * fix inits
      
      * fix docs
      
      * Port faster_rcnn
      
      * Port fcos
      
      * Port keypoint_rcnn
      
      * Port mask_rcnn
      
      * Port retinanet
      
      * Port ssd
      
      * Port ssdlite
      
      * Fix linter
      
      * Fixing tests
      
      * Fixing tests
      
      * Fixing vgg test
      
      * Porting Optical Flow, Segmentation, Video models (#5619)
      
      * Porting raft
      
      * Porting video resnet
      
      * Porting deeplabv3
      
      * Porting fcn and lraspp
      
      * Fixing the tests and linter
      
      * Porting docs, examples, tutorials and galleries (#5620)
      
      * Fix examples, tutorials and gallery
      
      * Update gallery/plot_optical_flow.py
      Co-authored-by: default avatarNicolas Hug <contact@nicolas-hug.com>
      
      * Fix import
      
      * Revert hardcoded normalization
      
      * fix uncommitted changes
      
      * Fix bug
      
      * Fix more bugs
      
      * Making resize optional for segmentation
      
      * Fixing preset
      
      * Fix mypy
      
      * Fixing documentation strings
      
      * Fix flake8
      
      * minor refactoring
      Co-authored-by: default avatarNicolas Hug <contact@nicolas-hug.com>
      
      * Resolve conflict
      
      * Porting model tests (#5622)
      
      * Porting tests
      
      * Remove unnecessary variable
      
      * Fix linter
      
      * Move prototype to extended tests
      
      * Fix download models job
      
      * Update CI on Multiweight branch to use the new weight download approach (#5628)
      
      * port Pad to prototype transforms (#5621)
      
      * port Pad to prototype transforms
      
      * use literal
      
      * Bump up LibTorchvision version number for Podspec to release Cocoapods (#5624)
      Co-authored-by: default avatarAnton Thomma <anton@pri.co.nz>
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * pre-download model weights in CI docs build (#5625)
      
      * pre-download model weights in CI docs build
      
      * move changes into template
      
      * change docs image
      
      * Regenerated config.yml
      Co-authored-by: default avatarPhilip Meier <github.pmeier@posteo.de>
      Co-authored-by: default avatarAnton Thomma <11010310+thommaa@users.noreply.github.com>
      Co-authored-by: default avatarAnton Thomma <anton@pri.co.nz>
      
      * Porting reference scripts and updating presets (#5629)
      
      * Making _preset.py classes
      
      * Remove support of targets on presets.
      
      * Rewriting the video preset
      
      * Adding tests to check that the bundled transforms are JIT scriptable
      
      * Rename all presets from *Eval to *Inference
      
      * Minor refactoring
      
      * Remove --prototype and --pretrained from reference scripts
      
      * remove  pretained_backbone refs
      
      * Corrections and simplifications
      
      * Fixing bug
      
      * Fixing linter
      
      * Fix flake8
      
      * restore documentation example
      
      * minor fixes
      
      * fix optical flow missing param
      
      * Fixing commands
      
      * Adding weights_backbone support in detection and segmentation
      
      * Updating the commands for InceptionV3
      
      * Setting `weights_backbone` to its fully BC value (#5653)
      
      * Replace default `weights_backbone=None` with its BC values.
      
      * Fixing tests
      
      * Fix linter
      
      * Update docs.
      
      * Update preprocessing on reference scripts.
      
      * Change qat/ptq to their full values.
      
      * Refactoring preprocessing
      
      * Fix video preset
      
      * No initialization on VGG if pretrained
      
      * Fix warning messages for backbone utils.
      
      * Adding star to all preset constructors.
      
      * Fix mypy.
      Co-authored-by: default avatarNicolas Hug <contact@nicolas-hug.com>
      Co-authored-by: default avatarPhilip Meier <github.pmeier@posteo.de>
      Co-authored-by: default avatarAnton Thomma <11010310+thommaa@users.noreply.github.com>
      Co-authored-by: default avatarAnton Thomma <anton@pri.co.nz>
      11bd2eaa
  16. 20 Mar, 2022 1 commit
  17. 16 Mar, 2022 1 commit
  18. 15 Mar, 2022 1 commit
  19. 09 Mar, 2022 2 commits
  20. 02 Feb, 2022 1 commit
    • Vasilis Vryniotis's avatar
      Implement is_qat in TorchVision (#5299) · 8a16e12f
      Vasilis Vryniotis authored
      * Add is_qat support using a method getter
      
      * Switch to an internal _fuse_modules
      
      * Fix linter.
      
      * Pass is_qat=False on PTQ
      
      * Fix bug on ra_sampler flag.
      
      * Set is_qat=True for QAT
      8a16e12f
  21. 29 Jan, 2022 1 commit
    • Yiwen Song's avatar
      [ViT] Adding conv_stem support (#5226) · 7d868aa6
      Yiwen Song authored
      * Adding conv_stem support
      
      * fix lint
      
      * bug fix
      
      * address comments
      
      * fix after merge
      
      * adding back checking lines
      
      * fix failing tests
      
      * fix iignore
      
      * add unittest & address comments
      
      * fix memory issue
      
      * address comments
      7d868aa6
  22. 21 Jan, 2022 1 commit
    • Hu Ye's avatar
      add FCOS (#4961) · 7d4bdd43
      Hu Ye authored
      
      
      * add fcos
      
      * update fcos
      
      * add giou_loss
      
      * add BoxLinearCoder for FCOS
      
      * add full code for FCOS
      
      * add giou loss
      
      * add fcos
      
      * add __all__
      
      * Fixing lint
      
      * Fixing lint in giou_loss.py
      
      * Add typing annotation to fcos
      
      * Add trained checkpoints
      
      * Use partial to replace lambda
      
      * Minor fixes to docstrings
      
      * Apply ufmt format
      
      * Fixing docstrings
      
      * Fixing jit scripting
      
      * Minor fixes to docstrings
      
      * Fixing jit scripting
      
      * Ignore mypy in fcos
      
      * Fixing trained checkpoints
      
      * Fixing unit-test of jit script
      
      * Fixing docstrings
      
      * Add test/expect/ModelTester.test_fcos_resnet50_fpn_expect.pkl
      
      * Fixing test_detection_model_trainable_backbone_layers
      
      * Update test_fcos_resnet50_fpn_expect.pkl
      
      * rename stride to box size
      
      * remove TODO and fix some typo
      
      * merge some code for better
      
      * impove the comments
      
      * remove decode and encode of BoxLinearCoder
      
      * remove some unnecessary hints
      
      * use the default value in detectron2.
      
      * update doc
      
      * Add unittest for BoxLinearCoder
      
      * Add types in FCOS
      
      * Add docstring for BoxLinearCoder
      
      * Minor fix for the docstring
      
      * update doc
      
      * Update fcos_resnet50_fpn_coco pretained weights url
      
      * Update torchvision/models/detection/fcos.py
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * Update torchvision/models/detection/fcos.py
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * Update torchvision/models/detection/fcos.py
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * Update torchvision/models/detection/fcos.py
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      
      * Add FCOS model documentation
      
      * Fix typo in FCOS documentation
      
      * Add fcos to the prototype builder
      
      * Capitalize COCO_V1
      
      * Fix params of fcos
      
      * fix bug for partial
      
      * Fixing docs indentation
      
      * Fixing docs format in giou_loss
      
      * Adopt Reference for GIoU Loss
      
      * Rename giou_loss to generalized_box_iou_loss
      
      * remove overwrite_eps
      
      * Update AP test values
      
      * Minor fixes for the docs
      
      * Minor fixes for the docs
      
      * Update torchvision/models/detection/fcos.py
      Co-authored-by: default avatarZhiqiang Wang <zhiqwang@foxmail.com>
      
      * Update torchvision/prototype/models/detection/fcos.py
      Co-authored-by: default avatarZhiqiang Wang <zhiqwang@foxmail.com>
      Co-authored-by: default avatarzhiqiang <zhiqwang@foxmail.com>
      Co-authored-by: default avatarJoao Gomes <jdsgomes@fb.com>
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      Co-authored-by: default avatarJoao Gomes <joaopsgomes@gmail.com>
      7d4bdd43
  23. 13 Jan, 2022 1 commit
  24. 06 Dec, 2021 1 commit
  25. 30 Nov, 2021 1 commit
    • Vasilis Vryniotis's avatar
      Refactor the `get_weights` API (#5006) · 3d8723d5
      Vasilis Vryniotis authored
      * Change the `default` weights mechanism to sue Enum aliases.
      
      * Change `get_weights` to work with full Enum names and make it public.
      
      * Applying improvements from code review.
      3d8723d5
  26. 29 Nov, 2021 1 commit
  27. 27 Nov, 2021 1 commit
    • Yiwen Song's avatar
      Adding ViT to torchvision/models (#4594) · 47281bbf
      Yiwen Song authored
      
      
      * [vit] Adding ViT to torchvision/models
      
      * adding pre-logits layer + resolving comments
      
      * Fix the model attribute bug
      
      * Change version to arch
      
      * fix failing unittests
      
      * remove useless prints
      
      * reduce input size to fix unittests
      
      * Increase windows-cpu executor to 2xlarge
      
      * Use `batch_first=True` and remove classifier
      
      * Change resource_class back to xlarge
      
      * Remove vit_h_14
      
      * Remove vit_h_14 from __all__
      
      * Move vision_transformer.py into prototype
      
      * Fix formatting issue
      
      * remove arch in builder
      
      * Fix type err in model builder
      
      * address comments and trigger unittests
      
      * remove the prototype import in torchvision.models
      
      * Adding vit back to models to trigger CircleCI test
      
      * fix test_jit_forward_backward
      
      * Move all to prototype.
      
      * Adopt new helper methods and fix prototype tests.
      
      * Remove unused import.
      Co-authored-by: default avatarVasilis Vryniotis <datumbox@users.noreply.github.com>
      Co-authored-by: default avatarVasilis Vryniotis <vvryniotis@fb.com>
      47281bbf
  28. 22 Nov, 2021 1 commit
  29. 06 Nov, 2021 1 commit
  30. 28 Oct, 2021 1 commit
  31. 26 Oct, 2021 1 commit
  32. 21 Oct, 2021 1 commit
  33. 18 Oct, 2021 1 commit
  34. 13 Oct, 2021 1 commit
  35. 04 Oct, 2021 2 commits
    • Nicolas Hug's avatar
      Fix all outstanding flake8 issues (#4535) · b81d189d
      Nicolas Hug authored
      b81d189d
    • Philip Meier's avatar
      Add ufmt (usort + black) as code formatter (#4384) · 5f0edb97
      Philip Meier authored
      
      
      * add ufmt as code formatter
      
      * cleanup
      
      * quote ufmt requirement
      
      * split imports into more groups
      
      * regenerate circleci config
      
      * fix CI
      
      * clarify local testing utils section
      
      * use ufmt pre-commit hook
      
      * split relative imports into local category
      
      * Revert "split relative imports into local category"
      
      This reverts commit f2e224cde2008c56c9347c1f69746d39065cdd51.
      
      * pin black and usort dependencies
      
      * fix local test utils detection
      
      * fix ufmt rev
      
      * add reference utils to local category
      
      * fix usort config
      
      * remove custom categories sorting
      
      * Run pre-commit without fixing flake8
      
      * got a double import in merge
      Co-authored-by: default avatarNicolas Hug <nicolashug@fb.com>
      5f0edb97