Alexander Soare
65c3d78b96
Freeze unfreeze functionality finalized. Tests added
3 years ago
Alexander Soare
0cb8ea432c
wip
3 years ago
Ross Wightman
b1c2e3eb92
Match rel_pos_indices attr rename in conv branch
3 years ago
Ross Wightman
b49630a138
Add relative pos embed option to LambdaLayer, fix last transpose/reshape.
3 years ago
Ross Wightman
d657e2cc0b
Remove dead code line from efficientnet
3 years ago
Ross Wightman
0ca687f224
Make 'regnetz' model experiments closer to actual RegNetZ, bottleneck expansion, expand from in_chs, no shortcut on stride 2, tweak model sizes
3 years ago
leondgarse
51eaf9360d
Remove a duplicate layer creation in byobnet.py
...
`self.conv2_kxk` is repeated in `byobnet.py`. Remove the duplicate code.
3 years ago
Ross Wightman
b81e79aae9
Fix bottleneck attn transpose typo, hopefully these train better now..
3 years ago
Ross Wightman
80075b0b8a
Add worker_seeding arg to allow selecting old vs updated data loader worker seed for (old) experiment repeatability
3 years ago
Ross Wightman
6478bcd02c
Fix regnetz_d conv layer name, use inception mean/std
3 years ago
Ross Wightman
0387e6057e
Update binary cross ent impl to use thresholding as an option (convert soft targets from mixup/cutmix to 0, 1)
3 years ago
Ross Wightman
f8a63a3b71
Add worker_init_fn to loader for numpy seed per worker
3 years ago
Ross Wightman
515121cca1
Use reshape instead of view in std_conv, causing issues in recent PyTorch in channels_last
3 years ago
Ross Wightman
da06cc61d4
ResNetV2 seems to work best without zero_init residual
3 years ago
Ross Wightman
8e11da0ce3
Add experimental RegNetZ(ish) models for training / perf trials.
3 years ago
Alexander Soare
6bbc50beb4
make it possible to provide norm_layer via create_model
3 years ago
nateraw
adcb74f87f
🎨 Import load_state_dict_from_url directly
3 years ago
nateraw
e65a2cba3d
🎨 cleanup and add a couple comments
3 years ago
nateraw
2b6ade24b3
🎨 write model card to enable inference
3 years ago
Ross Wightman
cf5ac2800c
BotNet models were still off, remove weights for bad configs. Add good SE-HaloNet33-TS weights.
3 years ago
Ross Wightman
24720abe3b
Merge branch 'master' into attn_update
3 years ago
Ross Wightman
1c9284c640
Add BeiT 'finetuned' 1k weights and pretrained 22k weights, pretraining specific (masked) model excluded for now
3 years ago
Ross Wightman
f8a215cfe6
A few more crossvit tweaks, fix training w/ no_weight_decay names, add crop option for scaling, adjust default crop_pct for large img size to 1.0 for better results
3 years ago
Ross Wightman
7ab2491ab7
Better handling of crossvit for tests / forward_features, fix torchscript regression in my changes
3 years ago
Ross Wightman
f1808e0970
Post crossvit merge cleanup, change model names to reflect input size, cleanup img size vs scale handling, fix tests
3 years ago
Ross Wightman
4027412757
Add resnet33ts weights, update resnext26ts baseline weights
3 years ago
Richard Chen
9fe5798bee
fix bug for reset classifier and fix for validating the dimension
3 years ago
Richard Chen
3718c5a5bd
fix loading pretrained model
3 years ago
Richard Chen
bb50b69a57
fix for torch script
3 years ago
nateraw
abf9d51bc3
🚧 wip
3 years ago
Ross Wightman
5bd04714e4
Cleanup weight init for byob/byoanet and related
3 years ago
Ross Wightman
8642401e88
Swap botnet 26/50 weights/models after realizing a mistake in arch def, now figuring out why they were so low...
3 years ago
Ross Wightman
5f12de4875
Add initial AttentionPool2d that's being trialed. Fix comment and still trying to improve reliability of sgd test.
3 years ago
Ross Wightman
76881d207b
Add baseline resnet26t @ 256x256 weights. Add 33ts variant of halonet with at least one halo in stage 2,3,4
3 years ago
Ross Wightman
484e61648d
Adding the attn series weights, tweaking model names, comments...
3 years ago
Ross Wightman
fb94350896
Update training script and loader factory to allow use of scheduler updates, repeat augment, and bce loss
3 years ago
Ross Wightman
f262137ff2
Add RepeatAugSampler as per DeiT RASampler impl, showing promise for current (distributed) training experiments.
3 years ago
Ross Wightman
ba9c1108a1
Add a BCE loss impl that converts dense targets to sparse /w smoothing as an alternate to CE w/ smoothing. For training experiments.
3 years ago
Ross Wightman
29a37e23ee
LR scheduler update:
...
* add polynomial decay 'poly'
* cleanup cycle specific args for cosine, poly, and tanh sched, t_mul -> cycle_mul, decay -> cycle_decay, default cycle_limit to 1 in each opt
* add k-decay for cosine and poly sched as per https://arxiv.org/abs/2004.05909
* change default tanh ub/lb to push inflection to later epochs
3 years ago
nateraw
28d2841acf
💄 apply isort
3 years ago
Ross Wightman
492c0a4e20
Update HaloAttn comment
3 years ago
nateraw
e72c989973
✨ add ability to push to hf hub
3 years ago
Richard Chen
7ab9d4555c
add crossvit
3 years ago
Ross Wightman
3b9032ea48
Use Tensor.unfold().unfold() for HaloAttn, fast like as_strided but more clarity
3 years ago
Ross Wightman
78933122c9
Fix silly typo
3 years ago
Ross Wightman
2568ffc5ef
Merge branch 'master' into attn_update
3 years ago
Ross Wightman
708d87a813
Fix ViT SAM weight compat as weights at URL changed to not use repr layer. Fix #825 . Tweak optim test.
3 years ago
Ross Wightman
8449ba210c
Improve performance of HaloAttn, change default dim calc. Some cleanup / fixes for byoanet. Rename resnet26ts to tfs to distinguish (extra fc).
3 years ago
Ross Wightman
a8b65695f1
Add resnet26ts and resnext26ts models for non-attn baselines
3 years ago
Ross Wightman
a5a542f17d
Fix typo
3 years ago
Ross Wightman
925e102982
Update attention / self-attn based models from a series of experiments:
...
* remove dud attention, involution + my swin attention adaptation don't seem worth keeping
* add or update several new 26/50 layer ResNe(X)t variants that were used in experiments
* remove models associated with dead-end or uninteresting experiment results
* weights coming soon...
3 years ago
Ross Wightman
d667351eac
Tweak accuracy topk safety. Fix #807
3 years ago
Yohann Lereclus
35c9740826
Fix accuracy when topk > num_classes
3 years ago
Ross Wightman
a16a753852
Add lamb/lars to optim init imports, remove stray comment
3 years ago
Ross Wightman
c207e02782
MOAR optimizer changes. Woo!
3 years ago
Ross Wightman
a426511c95
More optimizer cleanup. Change all to no longer use .data. Improve (b)float16 use with adabelief. Add XLA compatible Lars.
3 years ago
Ross Wightman
9541f4963b
One more scalar -> tensor fix for lamb optimizer
3 years ago
Ross Wightman
8f68193c91
Update lamp.py comment
3 years ago
Ross Wightman
4d284017b8
Merge pull request #813 from rwightman/opt_cleanup
...
Optimizer cleanup and additions
3 years ago
Ross Wightman
a6af48be64
add madgradw optimizer
3 years ago
Ross Wightman
55fb5eedf6
Remove experiment from lamb impl
3 years ago
Ross Wightman
8a9eca5157
A few optimizer comments, dead import, missing import
3 years ago
Ross Wightman
ac469b50da
Optimizer improvements, additions, cleanup
...
* Add MADGRAD code
* Fix Lamb (non-fused variant) to work w/ PyTorch XLA
* Tweak optimizer factory args (lr/learning_rate and opt/optimizer_name), may break compat
* Use newer fn signatures for all add,addcdiv, addcmul in optimizers
* Use upcoming PyTorch native Nadam if it's available
* Cleanup lookahead opt
* Add optimizer tests
* Remove novograd.py impl as it was messy, keep nvnovograd
* Make AdamP/SGDP work in channels_last layout
* Add rectified adablief mode (radabelief)
* Support a few more PyTorch optim, adamax, adagrad
3 years ago
Sepehr Sameni
abf3e044bb
Update scheduler_factory.py
...
remove duplicate code from create_scheduler()
3 years ago
Ross Wightman
3cdaf5ed56
Add `mmax` config key to auto_augment for increasing upper bound of RandAugment magnitude beyond 10. Make AugMix uniform sampling default not override config setting.
3 years ago
Ross Wightman
1042b8a146
Add non fused LAMB optimizer option
3 years ago
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.
3 years ago
Ross Wightman
d3f7440650
Add EfficientNetV2 XL model defs
3 years ago
Ross Wightman
72b227dcf5
Merge pull request #750 from drjinying/master
...
Specify "interpolation" mode in vision_transformer's resize_pos_embed
3 years ago
Ross Wightman
2907c1f967
Merge pull request #746 from samarth4149/master
...
Adding a Multi Step LR Scheduler
3 years ago
Ross Wightman
748ab852ca
Allow act_layer switch for xcit, fix in_chans for some variants
3 years ago
Ying Jin
20b2d4b69d
Use bicubic interpolation in resize_pos_embed()
3 years ago
Ross Wightman
d3255adf8e
Merge branch 'xcit' of https://github.com/alexander-soare/pytorch-image-models into alexander-soare-xcit
3 years ago
Ross Wightman
f8039c7492
Fix gc effv2 model cfg name
3 years ago
Alexander Soare
3a55a30ed1
add notes from author
3 years ago
Alexander Soare
899cf84ccc
bug fix - missing _dist postfix for many of the 224_dist models
3 years ago
Alexander Soare
623e8b8eb8
wip xcit
3 years ago
Ross Wightman
392368e210
Add efficientnetv2_rw_t defs w/ weights, and gc variant, as well as gcresnet26ts for experiments. Version 0.4.13
3 years ago
samarth
daab57a6d9
1. Added a simple multi step LR scheduler
3 years ago
Ross Wightman
6d8272e92c
Add SAM pretrained model defs/weights for ViT B16 and B32 models.
3 years ago
Ross Wightman
ee4d8fc69a
Remove unecessary line from nest post refactor
3 years ago
Ross Wightman
8165cacd82
Realized LayerNorm2d won't work in all cases as is, fixed.
3 years ago
Ross Wightman
81cd6863c8
Move aggregation (convpool) for nest into NestLevel, cleanup and enable features_only use. Finalize weight url.
3 years ago
Ross Wightman
6ae0ac6420
Merge branch 'nested_transformer' of https://github.com/alexander-soare/pytorch-image-models into alexander-soare-nested_transformer
3 years ago
Alexander Soare
7b8a0017f1
wip to review
3 years ago
Alexander Soare
b11d949a06
wip checkpoint with some feature extraction work
3 years ago
Alexander Soare
23bb72ce5e
nested_transformer wip
3 years ago
Ross Wightman
766b4d3262
Fix features for resnetv2_50t
3 years ago
Ross Wightman
e8045e712f
Fix BatchNorm for ResNetV2 non GN models, add more ResNetV2 model defs for future experimentation, fix zero_init of last residual for pre-act.
3 years ago
Ross Wightman
20a2be14c3
Add gMLP-S weights, 79.6 top-1
3 years ago
Ross Wightman
85f894e03d
Fix ViT in21k representation (pre_logits) layer handling across old and new npz checkpoints
3 years ago
Ross Wightman
b41cffaa93
Fix a few issues loading pretrained vit/bit npz weights w/ num_classes=0 __init__ arg. Missed a few other small classifier handling detail on Mlp, GhostNet, Levit. Should fix #713
3 years ago
Ross Wightman
9c9755a808
AugReg release
3 years ago
Ross Wightman
381b279785
Add hybrid model fwds back
3 years ago
Ross Wightman
26f04a8e3e
Fix a weight link
3 years ago
Ross Wightman
8f4a0222ed
Add GMixer-24 MLP model weights, trained w/ TPU + PyTorch XLA
3 years ago
Ross Wightman
4c09a2f169
Bump version 0.4.12
3 years ago
Ross Wightman
b319eb5b5d
Update ViT weights, more details to be added before merge.
3 years ago
Ross Wightman
8257b86550
Fix up resnetv2 bit/bitm model default res
3 years ago
Ross Wightman
1228f5a3d8
Add BiT distilled 50x1 and teacher 152x2 models from 'A good teacher is patient and consistent' paper.
3 years ago
Ross Wightman
511a8e8c96
Add official ResMLP weights.
3 years ago
Ross Wightman
b9cfb64412
Support npz custom load for vision transformer hybrid models. Add posembed rescale for npz load.
3 years ago
Ross Wightman
8319e0c373
Add file docstring to std_conv.py
3 years ago
Ross Wightman
4d96165989
Merge branch 'master' into cleanup_xla_model_fixes
3 years ago
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
3 years ago
Ross Wightman
ba2ca4b464
One codepath for stdconv, switch layernorm to batchnorm so gain included. Tweak epsilon values for nfnet, resnetv2, vit hybrid.
3 years ago
Ross Wightman
b7a568f065
Fix torchscript issue in bat
3 years ago
Ross Wightman
d17b374f0f
Minimum input_size needed to be higher
3 years ago
Ross Wightman
b3b90d944d
Add min_input_size to bat_resnext to prevent test breakage.
3 years ago
Ross Wightman
d413eef1bf
Add ResMLP-24 model weights that I trained in PyTorch XLA on TPU-VM. 79.2 top-1.
3 years ago
Ross Wightman
10d8fa4620
Add gc and bat attention resnext26ts variants to byob for test.
3 years ago
Ross Wightman
2f5ed2dec1
Update `init_values` const for 24 and 36 layer ResMLP models
3 years ago
Ross Wightman
8e4ac3549f
All ScaledStdConv and StdConv uses default to using F.layernorm so that they work with PyTorch XLA. eps value tweaking is a WIP.
3 years ago
Ross Wightman
2a63d0246b
Post merge cleanup
3 years ago
Ross Wightman
45dec179e5
Merge pull request #681 from lmk123568/master
...
Update convit.py
3 years ago
Dongyoon Han
ded1671483
Fix stochastic depth working only with a shortcut
3 years ago
Mike
b87d98b238
Update convit.py
...
Cut out the duplicates
3 years ago
Ross Wightman
02320c3e3d
Bump version to 0.4.11
4 years ago
Ross Wightman
bda8ab015a
Remove min channels for SelectiveKernel, divisor should cover cases well enough.
4 years ago
Ross Wightman
a27f4aec4a
Missed args for skresnext w/ refactoring.
4 years ago
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.
4 years ago
Ross Wightman
8bf63b6c6c
Able to use other attn layer in EfficientNet now. Create test ECA + GC B0 configs. Make ECA more configurable.
4 years ago
Ross Wightman
bcec14d3b5
Bring EfficientNet SE layer in line with others, pull se_ratio outside of blocks. Allows swapping w/ other attn layers.
4 years ago
Ross Wightman
9611458e19
Throw in some FBNetV3 code I had lying around, some refactoring of SE reduction channel calcs for all EffNet archs.
4 years ago
Ross Wightman
01b9108619
Merge branch 'master' into more_attn
4 years ago
Ross Wightman
d7bab8a6c5
Fix strict flag change for checkpoint load.
4 years ago
Ross Wightman
02f9d4bc34
Add weights for resnet51q model, add 61q def.
4 years ago
Ross Wightman
f615474be3
Fix broken test, repvgg block doesn't have attn_last attr.
4 years ago
Ross Wightman
742c2d5247
Add Gather-Excite and Global Context attn modules. Refactor existing SE-like attn for consistency and refactor byob/byoanet for less redundancy.
4 years ago
Ross Wightman
9c78de8c02
Fix #661 , move hardswish out of default args for LeViT. Enable native torch support for hardswish, hardsigmoid, mish if present.
4 years ago
Ross Wightman
5db7452173
Fix visformer in_chans stem handling
4 years ago
Ross Wightman
318360c3f9
Update README.md before merge. Bump version to 0.4.10
4 years ago
Ross Wightman
11ae795e99
Redo LeViT attention bias caching in a way that works with both torchscript and DataParallel
4 years ago
Ross Wightman
d400f1dbdd
Filter test models before creation for backward/torchscript tests
4 years ago
Ross Wightman
c4572cc5aa
Add Visformer-small weighs, tweak torchscript jit test img size.
4 years ago
Ross Wightman
bfc72f75d3
Expand scope of testing for non-std vision transformer / mlp models. Some related cleanup and create fn cleanup for all vision transformer and mlp models. More CoaT weights.
4 years ago
Ross Wightman
18bf520ad1
Add eca_nfnet_l2/l3 defs for future training
4 years ago
Ross Wightman
f45de37690
Merge branch 'master' into levit_visformer_rednet
4 years ago
Ross Wightman
23c18a33e4
Add efficientnetv2_rw_m weights trained in PyTorch. 84.8 top-1 @ 416 test. 53M params.
4 years ago
Ross Wightman
c2ba229d99
Prep for effcientnetv2_rw_m model weights that started training before official release..
4 years ago
Ross Wightman
30b9880d06
Minor adjustment, mutable default arg, extra check of valid len...
4 years ago
Ross Wightman
be0abfbcce
Merge branch 'master' of https://github.com/alexander-soare/pytorch-image-models into alexander-soare-master
4 years ago
Ross Wightman
b7de82e835
ConViT cleanup, fix torchscript, bit of reformatting, reuse existing layers.
4 years ago
Ross Wightman
306c86b668
Merge branch 'convit' of https://github.com/amaarora/pytorch-image-models into amaarora-convit
4 years ago
Ross Wightman
a569635045
Update twin weights to a copy in GitHub releases for faster dl. Tweak model class comment.
4 years ago
Ross Wightman
be99eef9c1
Remove redundant code, cleanup, fix torchscript.
4 years ago
Ross Wightman
5ab372a3ec
Merge branch 'master' of https://github.com/abcdvzz/pytorch-image-models into abcdvzz-master
4 years ago
Aman Arora
5db1eb6ba5
Add defaults
4 years ago
Aman Arora
8b1f2e8e1f
remote unused matplotlib import
4 years ago
Aman Arora
40c506ba1e
Add ConViT
4 years ago