Commit Graph

74 Commits (27c42f0830afab4b2ff40b948cf612328ed26680)

Author SHA1 Message Date
Ross Wightman 0862e6ebae Fix correctness of some group matching regex (no impact on result), some formatting, missed forward_head for resnet 2022-03-19 14:58:54 -07:00
Ross Wightman 372ad5fa0d Significant model refactor and additions:
* All models updated with revised foward_features / forward_head interface
* Vision transformer and MLP based models consistently output sequence from forward_features (pooling or token selection considered part of 'head')
* WIP param grouping interface to allow consistent grouping of parameters for layer-wise decay across all model types
* Add gradient checkpointing support to a significant % of models, especially popular architectures
* Formatting and interface consistency improvements across models
* layer-wise LR decay impl part of optimizer factory w/ scale support in scheduler
* Poolformer and Volo architectures added
2022-02-28 13:56:23 -08:00
Ross Wightman 95cfc9b3e8 Merge remote-tracking branch 'origin/master' into norm_norm_norm 2022-01-25 22:20:45 -08:00
Ross Wightman abc9ba2544 Transitioning default_cfg -> pretrained_cfg. Improving handling of pretrained_cfg source (HF-Hub, files, timm config, etc). Checkpoint handling tweaks. 2022-01-25 21:54:13 -08:00
Ross Wightman 83b40c5a58 Last batch of small model weights (for now). mobilenetv3_small 050/075/100 and updated mnasnet_small with lambc/lamb optimizer. 2022-01-19 10:02:02 -08:00
Ross Wightman 9ca3437178 Add some more small model weights lcnet, mnas, mnv2 2022-01-14 16:28:27 -08:00
Ross Wightman 656757d26b Fix MobileNetV2 head conv size for multiplier < 1.0. Add some missing modification copyrights, fix starting date of some old ones. 2022-01-14 16:28:27 -08:00
Ross Wightman 4df51f3932 Add lcnet_100 and mnasnet_small weights 2022-01-06 22:21:05 -08:00
Ross Wightman b9a715c86a Add more small model defs for MobileNetV3/V2/LCNet 2022-01-06 16:06:43 -08:00
Ross Wightman de5fa791c6 Merge branch 'master' into norm_norm_norm 2022-01-03 11:37:00 -08:00
Ross Wightman 26ff57f953 Add more small model defs for MobileNetV3/V2/LCNet 2022-01-03 11:30:54 -08:00
Ross Wightman 450ac6a0f5 Post merge tinynet fixes for pool_size, feature extraction 2021-12-21 23:51:54 -08:00
Ross Wightman 4dec8c8087 Fix skip path regression for updated EfficientNet and RegNet def. Add Pre-Act RegNet support (experimental). Remove BN-TF flag. Add efficientnet_b0_g8_gn model. 2021-12-16 14:53:57 -08:00
Ross Wightman ab49d275de Significant norm update
* ConvBnAct layer renamed -> ConvNormAct and ConvNormActAa for anti-aliased
* Significant update to EfficientNet and MobileNetV3 arch to support NormAct layers and grouped conv (as alternative to depthwise)
* Update RegNet to add Z variant
* Add Pre variant of XceptionAligned that works with NormAct layers
* EvoNorm matches bits_and_tpu branch for merge
2021-12-14 13:48:30 -08:00
Rahul Somani 31bcd36e46 add tinynet models 2021-12-14 19:34:04 +05:30
Alexander Soare 6bbc50beb4 make it possible to provide norm_layer via create_model 2021-09-21 10:19:04 +01:00
Ross Wightman 01cb46a9a5 Add gc_efficientnetv2_rw_t weights (global context instead of SE attn). Add TF XL weights even though the fine-tuned ones don't validate that well. Change default arg for GlobalContext to use scal (mul) mode. 2021-08-07 16:45:29 -07:00
Ross Wightman d3f7440650 Add EfficientNetV2 XL model defs 2021-07-22 13:15:24 -07:00
Ross Wightman f8039c7492 Fix gc effv2 model cfg name 2021-07-11 12:14:31 -07:00
Ross Wightman 392368e210 Add efficientnetv2_rw_t defs w/ weights, and gc variant, as well as gcresnet26ts for experiments. Version 0.4.13 2021-07-09 16:46:52 -07:00
Ross Wightman 307a935b79 Add non-local and BAT attention. Merge attn and self-attn factories into one. Add attention references to README. Add mlp 'mode' to ECA. 2021-05-31 13:18:11 -07:00
Ross Wightman 8bf63b6c6c Able to use other attn layer in EfficientNet now. Create test ECA + GC B0 configs. Make ECA more configurable. 2021-05-30 12:47:02 -07:00
Ross Wightman 23c18a33e4 Add efficientnetv2_rw_m weights trained in PyTorch. 84.8 top-1 @ 416 test. 53M params. 2021-05-21 21:16:25 -07:00
Ross Wightman c2ba229d99 Prep for effcientnetv2_rw_m model weights that started training before official release.. 2021-05-21 17:47:49 -07:00
Ross Wightman 7077f16c6a Change 21k model naming from _21k to _in21k for consistency with existing 21k models. 2021-05-15 12:42:26 -07:00
Ross Wightman 328249f11a Update README, tweak fine-tune effv2 model names. 2021-05-14 16:37:43 -07:00
Ross Wightman c4f482a08b EfficientNetV2 official impl w/ weights ported from TF. Cleanup/refactor of related EfficientNet classes and models. 2021-05-14 15:50:00 -07:00
Ross Wightman c1cf9712fc Add updated EfficientNet-V2S weights, 83.8 @ 384x384 test. Add PyTorch trained EfficientNet-B4 weights, 83.4 @ 384x384 test. Tweak non TF EfficientNet B1-B4 train/test res scaling. 2021-04-19 10:42:56 -07:00
Ross Wightman e8a64fb881 Test input size for efficientnet_v2s was wrong in last results run 2021-04-17 16:17:41 -07:00
Ross Wightman 21812d33aa Add prelim efficientnet_v2s weights from 224x224 train, eval 83.3 @ 288. Add eca_nfnet_l1 weights, train at 256, eval 84 @ 320. 2021-04-11 23:26:13 -07:00
Ross Wightman fb896c0b26 Update some comments re preliminary EfficientNet-V2 assumptions 2021-04-03 12:00:25 -07:00
Ross Wightman de9dff933a EfficientNet-V2S preliminary model def (for experimentation) 2021-04-02 09:36:51 -07:00
Ross Wightman 5e2e4e7fb6
Merge pull request #502 from khatami-mehrdad/efficientnet_dg
adding efficientnet_el, efficientnet_es_pruned and efficientnet_el_pruned pre-trained models
2021-03-17 13:35:22 -07:00
Mehrdad 97f49d163c adding efficientnet_el, efficientnet_es_prunedefficientnet_es_pruned and efficientnet_el_pruned pretrained models to timm/models 2021-03-17 10:51:51 -07:00
Ross Wightman d584e7f617 Support for huggingface hub via create_model and default_cfgs.
* improve consistency of model creation helper fns
* add comments to some of the model helpers
* support passing external default_cfgs so they can be sourced from hub
2021-03-16 22:48:26 -07:00
Ross Wightman cd72e66eff Bug in last mod for features_only default_cfg 2020-12-03 12:33:01 -08:00
Ross Wightman 867a0e5a04 Add default_cfg back to models wrapped in feature extraction module as per discussion in #294. 2020-12-03 10:24:35 -08:00
Ross Wightman 9c406532bd Add EfficientNet-EdgeTPU-M (efficientnet_em) model trained natively in PyTorch. More sotabench fiddling. 2020-09-23 17:12:07 -07:00
Ross Wightman 512b2dd645 Add new EfficientNet-B3 and RegNetY-3.2GF weights, both just over 82 top-1 2020-08-11 14:18:51 -07:00
Ross Wightman b1f1a54de9 More uniform treatment of classifiers across all models, reduce code duplication. 2020-08-03 22:18:24 -07:00
Ross Wightman ec4976fdba Add EfficientNet-Lite0 weights trained with this code by @hal-314, 75.484 top-1 2020-07-29 00:32:08 -07:00
Ross Wightman 6c17d57a2c Fix some attributions, add copyrights to some file docstrings 2020-07-27 13:44:56 -07:00
Ross Wightman 08016e839d Cleanup FeatureInfo getters, add TF models sourced Xception41/65/71 weights 2020-07-24 17:59:21 -07:00
Ross Wightman c146b54abc Cleanup EfficientNet/MobileNetV3 feature extraction a bit, only two tap locations now, small mobilenetv3 models work 2020-07-21 01:21:38 -07:00
Ross Wightman 6eec3fb4a4 Move FeatureHooks into features.py, switch EfficientNet, MobileNetV3 to use build model helper 2020-07-19 15:00:43 -07:00
Ross Wightman 3b9004bef9 Lots of changes to model creation helpers, close to finalizing feature extraction / interfaces 2020-07-17 17:54:26 -07:00
Ross Wightman d23a2697d0 Working on feature extraction, interfaces refined, a number of models working, some in progress. 2020-06-29 18:18:59 -07:00
Ross Wightman 7be299504f Add missing feature_info() on MobileNetV3, make hook feature output order/type consistent with bottleneck (list, decreasing fmap size) 2020-06-03 00:00:37 -07:00
Ross Wightman eb7653614f Monster commit, activation refactor, VoVNet, norm_act improvements, more
* refactor activations into basic PyTorch, jit scripted, and memory efficient custom auto
* implement hard-mish, better grad for hard-swish
* add initial VovNet V1/V2 impl, fix #151
* VovNet and DenseNet first models to use NormAct layers (support BatchNormAct2d, EvoNorm, InplaceIABN)
* Wrap IABN for any models that use it
* make more models torchscript compatible (DPN, PNasNet, Res2Net, SelecSLS) and add tests
2020-06-01 17:16:52 -07:00
Vyacheslav Shults a7ebe09029 Replace all None by nn.Identity() in all models reset_classifier when False-values num_classes is given.
Make small code refactoring
2020-05-06 09:54:03 +03:00