Commit Graph

61 Commits (05b0aaca51efe6d5f4e7e9a6fd6822361a377e30)

Author SHA1 Message Date
a-r-r-o-w c2fe0a2268 improvement: add typehints and docs to timm/models/mobilenetv3.py 2023-10-30 13:47:54 -07:00
Ross Wightman 47517dbefd Clean more feature extract issues
* EfficientNet/MobileNetV3/HRNetFeatures cls and FX mode support -ve index
* MobileNetV3 allows feature_cfg mode to bypass MobileNetV3Features
2023-06-14 14:46:22 -07:00
Ross Wightman e4e43190ce Add typing to all model entrypoint fns, add old cache check env var to builder 2023-05-08 08:52:38 -07:00
Ross Wightman 572f05096a Swin and FocalNet weights on HF hub. Add model deprecation functionality w/ some registry tweaks. 2023-03-18 14:55:09 -07:00
Ross Wightman acfd85ad68 All swin models support spatial output, add output_fmt to v1/v2 and use ClassifierHead.
* update ClassifierHead to allow different input format
* add output format support to patch embed
* fix some flatten issues for a few conv head models
* add Format enum and helpers for tensor format (layout) choices
2023-03-15 23:21:51 -07:00
Ross Wightman 2cfff0581b Add grad_checkpointing support to features_only, test in EfficientDet. 2023-02-09 17:45:40 -08:00
Ross Wightman 656e1776de Convert mobilenetv3 to multi-weight, tweak PretrainedCfg metadata 2022-12-16 09:29:13 -08:00
Ross Wightman 927f031293 Major module / path restructure, timm.models.layers -> timm.layers, add _ prefix to all non model modules in timm.models 2022-12-06 15:00:06 -08:00
Ross Wightman e11efa872d Update a bunch of weights with external links to timm release assets. Fixes issue with *aliyuncs.com returning forbidden. Did pickle scan / verify and re-hash. Add TresNet-V2-L weights. 2022-09-13 16:35:26 -07:00
Ross Wightman 1b278136c3 Change models with mean 0,0,0 std 1,1,1 from int to float for consistency as mentioned in #1355 2022-07-21 17:36:15 -07:00
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 5f81d4de23 Move DeiT to own file, vit getting crowded. Working towards fixing #1029, make pooling interface for transformers and mlp closer to convnets. Still working through some details... 2022-01-26 22:53:57 -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 fa81164378 Fix stem width for really small mobilenetv3 arch defs 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 9c11dfd9cb Fix fbnetv3 pretrained cfg changes 2022-01-07 14:09:50 -08:00
Ross Wightman 1406cddc2e FBNetV3 timm trained weights added for b/d/g variants. Update version to 0.5.2 for pypi release. 2022-01-07 12:05:08 -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 26ff57f953 Add more small model defs for MobileNetV3/V2/LCNet 2022-01-03 11:30:54 -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
Ross Wightman 8880f696b6 Refactoring, cleanup, improved test coverage.
* Add eca_nfnet_l2 weights, 84.7 @ 384x384
* All 'non-std' (ie transformer / mlp) models have classifier / default_cfg test added
* Fix #694 reset_classifer / num_features / forward_features / num_classes=0 consistency for transformer / mlp models
* Add direct loading of npz to vision transformer (pure transformer so far, hybrid to come)
* Rename vit_deit* to deit_*
* Remove some deprecated vit hybrid model defs
* Clean up classifier flatten for conv classifiers and unusual cases (mobilenetv3/ghostnet)
* Remove explicit model fns for levit conv, just pass in arg
2021-06-12 16:40:02 -07:00
Ross Wightman bcec14d3b5 Bring EfficientNet SE layer in line with others, pull se_ratio outside of blocks. Allows swapping w/ other attn layers. 2021-05-29 23:41:38 -07:00
Ross Wightman 9611458e19 Throw in some FBNetV3 code I had lying around, some refactoring of SE reduction channel calcs for all EffNet archs. 2021-05-28 20:47:24 -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 a0492e3b48 A few miil weights naming tweaks to improve compat with model registry and filtering wildcards. 2021-04-28 10:33:02 -07:00
talrid 8c1f03e56c comment 2021-04-28 09:04:10 +03:00
talrid a443865876 update naming and scores 2021-04-28 08:57:06 +03:00
talrid 0968bdeca3 vit, tresnet and mobilenetV3 ImageNet-21K-P weights 2021-04-27 20:54:06 +03: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 2ed8f24715 A few more changes for 0.3.2 maint release. Linear layer change for mobilenetv3 and inception_v3, support no bias for linear wrapper. 2020-11-30 16:19:52 -08:00
Ross Wightman 470220b1f4 Fix MobileNetV3 crash with global_pool='', output consistent with other models but not equivalent due to efficient head. 2020-08-18 14:11:30 -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 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 4e61c6a12d Cleanup, refactoring of Feature extraction code, add tests, fix tests, non hook feature extraction working with torchscript 2020-07-20 16:10:31 -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 7729f40dca Fix another bug, update all gluon resnet models to use new creation method (feature support) 2020-06-30 16:44:15 -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
Ross Wightman 0ea53cecc3 Merge branch 'master' into densenet_update_and_more 2020-05-22 16:18:10 -07:00