Commit Graph

1077 Commits (ad94d737b7892fa9d62f9a3392d70fd6dff0a90d)

Author SHA1 Message Date
Ross Wightman ad94d737b7 Add support to ConvNextBlock for downsample and channel expansion to improve stand alone use. Fix #1699 2023-03-13 14:06:24 -07:00
Ross Wightman 3a636eee71 Fix #1713 missed assignement in 3-aug level fn, fix few other minor lint complaints in auto_augment.py 2023-03-11 14:32:23 -08:00
Piotr Sebastian Kluska 992bf7c3d4 chore: Modify the MobileVitV2Block to be coreml exportable
based on is_exportable() set variable controlling behaviour of the block
CoreMLTools support im2col from 6.2 version, unfortunately col2im
is still not supported.

Tested with exporting to ONNX, Torchscript, CoreML, and TVM.
2023-03-03 09:38:24 +01:00
Ross Wightman 4b8cfa6c0a Add convnext_xxlarge CLIP image tower weights, version 0.8.15dev0 2023-02-26 21:51:48 -08:00
Ross Wightman f9b56a1bfa Version 0.8.14dev0 2023-02-26 13:38:51 -08:00
Ross Wightman 1c13ef7b46 Add default norm_eps=1e-5 for convnext_xxlarge, improve kwarg merging for all convnext models 2023-02-26 12:11:49 -08:00
Benjamin Bossan a5b01ec04e Add type annotations to _registry.py
Description

Add type annotations to _registry.py so that they will pass mypy
--strict.

Comment

I was reading the code and felt that this module would be easier to
understand with type annotations. Therefore, I went ahead and added the
annotations.

The idea with this PR is to start small to see if we can align on _how_
to annotate types. I've seen people in the past disagree on how strictly
to annotate the code base, so before spending too much time on this, I
wanted to check if you agree, Ross.

Most of the added types should be straightforward. Some notes on the
non-trivial changes:

- I made no assumption about the fn passed to register_model, but maybe
  the type could be stricter. Are all models nn.Modules?
- If I'm not mistaken, the type hint for get_arch_name was incorrect
- I had to add a # type: ignore to model.__all__ = ...
- I made some minor code changes to list_models to facilitate the
  typing. I think the changes should not affect the logic of the function.
- I removed list from list(sorted(...)) because sorted returns always a
  list.
2023-02-22 09:19:30 -08:00
Ross Wightman 47f1de9bec Version bump 2023-02-20 10:17:10 -08:00
Ross Wightman 4d9c3ae2fb Add laion2b 320x320 ConvNeXt-Large CLIP weights 2023-02-18 16:34:03 -08:00
Ross Wightman d0b45c9b4d Make safetensor import option for now. Improve avg/clean checkpoints ext handling a bit (more consistent). 2023-02-18 16:06:42 -08:00
Ross Wightman 7d9e321b76 Improve tracing of window attn models with simpler reshape logic 2023-02-17 07:59:06 -08:00
Ross Wightman 2e38d53dca Remove dead line 2023-02-16 16:57:42 -08:00
Ross Wightman f77c04ff36 Torchscript fixes/hacks for rms_norm, refactor ParallelScalingBlock with manual combination of input projections, closer paper match 2023-02-16 16:57:42 -08:00
Ross Wightman 122621daef Add Final annotation to attn_fas to avoid symbol lookup of new scaled_dot_product_attn fn on old PyTorch in jit 2023-02-16 16:57:42 -08:00
Ross Wightman 621e1b2182 Add ideas from 'Scaling ViT to 22-B Params', testing PyTorch 2.0 fused F.scaled_dot_product_attention impl in vit, vit_relpos, maxxvit / coatnet. 2023-02-16 16:57:42 -08:00
Ross Wightman a3d528524a Version 0.8.12dev0 2023-02-16 16:27:29 -08:00
testbot a09d403c24 changed warning to info 2023-02-16 16:20:31 -08:00
testbot 8470e29541 Add support to load safetensors weights 2023-02-16 16:20:31 -08:00
Ross Wightman f35d6ea57b Add multi-tensor (foreach) version of Lion in style of upcoming PyTorch 2.0 optimizers 2023-02-16 15:48:00 -08:00
Ross Wightman 709d5e0d9d Add Lion optimizer 2023-02-14 23:55:05 -08:00
Ross Wightman 624266148d Remove unused imports from _hub helpers 2023-02-09 17:47:26 -08:00
Ross Wightman 2cfff0581b Add grad_checkpointing support to features_only, test in EfficientDet. 2023-02-09 17:45:40 -08:00
Ross Wightman 45af496197 Version 0.8.11dev0 2023-02-08 08:29:29 -08:00
Ross Wightman 9c14654a0d Improve support for custom dataset label name/description through HF hub export, via pretrained_cfg 2023-02-08 08:29:20 -08:00
Ross Wightman 497be8343c Update README and version 2023-02-06 23:43:14 -08:00
Ross Wightman 0d33127df2 Add 384x384 convnext_large_mlp laion2b fine-tune on in1k 2023-02-06 22:01:04 -08:00
Ross Wightman 7a0bd095cb Update model prune loader to use pkgutil 2023-02-06 17:45:16 -08:00
Ross Wightman 0f2803de7a Move ImageNet metadata (aka info) files to timm/data/_info. Add helper classes to make info available for labelling. Update inference.py for first use. 2023-02-06 17:45:03 -08:00
Ross Wightman 7a13be67a5
Update version.py 2023-02-05 10:06:15 -08:00
Ross Wightman 13acac8c5e Update head metadata for effformerv2 2023-02-04 23:11:51 -08:00
Ross Wightman 8682528096 Add first conv metadata for efficientformer_v2 2023-02-04 23:02:02 -08:00
Ross Wightman 72fba669a8 is_scripting() guard on checkpoint_seq 2023-02-04 14:21:49 -08:00
Ross Wightman 95ec255f7f Finish timm mode api for efficientformer_v2, add grad checkpointing support to both efficientformers 2023-02-03 21:21:23 -08:00
Ross Wightman 9d03c6f526 Merge remote-tracking branch 'origin/main' into levit_efficientformer_redux 2023-02-03 14:47:01 -08:00
Ross Wightman 086bd55a94 Add EfficientFormer-V2, refactor EfficientFormer and Levit for more uniformity across the 3 related arch. Add features_out support to levit conv models and efficientformer_v2. All weights on hub. 2023-02-03 14:12:29 -08:00
Ross Wightman 2cb2699dc8 Apply fix from #1649 to main 2023-02-03 11:28:57 -08:00
Ross Wightman b3042081b4 Add laion -> in1k fine-tuned base and large_mlp weights for convnext 2023-02-03 10:58:02 -08:00
Ross Wightman 316bdf8955 Add mlp head support for convnext_large, add laion2b CLIP weights, prep fine-tuned weight tags 2023-02-01 08:27:02 -08:00
Ross Wightman 6f28b562c6 Factor NormMlpClassifierHead from MaxxViT and use across MaxxViT / ConvNeXt / DaViT, refactor some type hints & comments 2023-01-27 14:57:01 -08:00
Ross Wightman 9a53c3f727 Finalize DaViT, some formatting and modelling simplifications (separate PatchEmbed to Stem + Downsample, weights on HF hub. 2023-01-27 13:54:04 -08:00
Fredo Guan fb717056da Merge remote-tracking branch 'upstream/main' 2023-01-26 10:49:15 -08:00
Ross Wightman 2bbc26dd82 version 0.8.8dev0 2023-01-25 18:02:48 -08:00
Ross Wightman 64667bfa0e Add 'gigantic' vit clip variant for feature extraction and future fine-tuning 2023-01-25 18:02:10 -08:00
Ross Wightman c2822568ec Update version to 0.8.7dev0 2023-01-20 15:01:10 -08:00
Ross Wightman 36989cfae4 Factor out readme generation in hub helper, add more readme fields 2023-01-20 14:49:40 -08:00
Ross Wightman 32f252381d Change order of checkpoitn filtering fn application in builder, try dict, model variant first 2023-01-20 14:48:54 -08:00
Ross Wightman e9f1376cde Cleanup resolve data config fns, add 'model' variant that takes model as first arg, make 'args' arg optional in original fn 2023-01-20 14:47:55 -08:00
Ross Wightman bed350f5e5 Push all MaxxViT weights to HF hub, cleanup impl, add feature map extraction support and prompote to 'std' architecture. Fix norm head for proper embedding / feat map output. Add new in12k + ft 1k weights. 2023-01-20 14:45:25 -08:00
Ross Wightman ca38e1e73f Update ClassifierHead module, add reset() method, update in_chs -> in_features for consistency 2023-01-20 14:44:05 -08:00
Ross Wightman 8ab573cd26 Add convnext_tiny and convnext_small 384x384 fine-tunes of in12k weights, fix pool size for laion CLIP convnext weights 2023-01-20 14:40:16 -08:00