Commit Graph

172 Commits (9ce824c39a01e56e1d4214fa439edd7011b58b07)

Author SHA1 Message Date
Ryan bda46f8e6f Add num_classes assertion after reset_classifier 2025-01-21 11:52:05 -08:00
Ross Wightman cc7fd34015 test filter tweaks 2024-12-30 19:24:21 -08:00
Ross Wightman 1bf84b35c3 Update tests for aimv2 filtering 2024-12-30 19:24:21 -08:00
Ross Wightman 0903d98162 Reduce tolerance on model inference 'owl' test, pillow output varies a lot, was failing locally 2024-11-26 15:10:15 -08:00
Ross Wightman 95907e69c2 Further reduce atol for model comparison, move python 3.11 + torch 2.2 -> python 3.12 + torch 2.4.1 2024-10-02 10:05:27 -07:00
Ross Wightman fde6719403 relax tolerance on inference test 2024-10-02 09:53:17 -07:00
Ross Wightman 0e27f302a0 Do full inference test against test vectors for test_* models 2024-10-02 09:39:26 -07:00
Ross Wightman 0b05122cda Fixing hieradet (sam2) tests 2024-08-16 14:33:40 -07:00
Ross Wightman f920119f3b Fixing tests 2024-07-09 14:53:20 -07:00
Daniel Suess 197c10463b Fix jit.script breaking with features_fx 2024-06-28 03:58:51 +00:00
Ross Wightman a5a2ad2e48 Fix consistency, testing for forward_head w/ pre_logits, reset_classifier, models with pre_logits size != unpooled feature size
* add test that model supports forward_head(x, pre_logits=True)
* add head_hidden_size attr to all models and set differently from num_features attr when head has hidden layers
* test forward_features() feat dim == model.num_features and pre_logits feat dim == self.head_hidden_size
* more consistency in reset_classifier signature, add typing
* asserts in some heads where pooling cannot be disabled
Fix #2194
2024-06-07 13:53:00 -07:00
Ross Wightman 5756a81c55 Merge remote-tracking branch 'origin/Beckschen-vitamin' into fastvit_mobileclip 2024-06-05 15:20:54 -07:00
Ross Wightman 0e77c95ed7 Add vitamin to non-std testing models 2024-06-05 00:20:00 -07:00
Ross Wightman ce637771dc Add fastvit to forward_intermediates test 2024-05-30 10:18:24 -07:00
Ross Wightman 2ca45a4ff5 Merge remote-tracking branch 'upstream/main' into hiera 2024-05-11 15:43:05 -07:00
Ross Wightman 45b7ae8029 forward_intermediates() support for byob/byoanet models 2024-05-04 14:06:52 -07:00
Ross Wightman c719f7eb86 More forward_intermediates() updates
* add convnext, resnet, efficientformer, levit support
* remove kwargs only for fn so that torchscript isn't broken for all :(
* use reset_classifier() consistently in prune
2024-05-03 16:22:32 -07:00
Ross Wightman d6da4fb01e Add forward_intermediates() to efficientnet / mobilenetv3 based models as an exercise. 2024-05-02 14:19:16 -07:00
Ross Wightman 67332fce24 Add features_intermediate() support to coatnet, maxvit, swin* models. Refine feature interface. Start prep of new vit weights. 2024-04-30 16:56:33 -07:00
Ross Wightman 63970e4e61 Update tests for volo/cait/xcit forward_intermediates 2024-04-29 17:19:11 -07:00
Ross Wightman e8b08a4e7b Disable jit test for Hiera, fair bit of work to fix. 2024-04-22 10:39:30 -07:00
Ross Wightman ef147fd2fb Add forward_intermediates API to Hiera for features_only=True support 2024-04-21 11:30:41 -07:00
Ross Wightman fe3cf542fa Fix / improve tests for features 2024-04-10 21:14:02 -07:00
Ross Wightman 4b2565e4cb More forward_intermediates() / FeatureGetterNet work
* include relpos vit
* refactor reduction / size calcs so hybrid vits work and dynamic_img_size works
* fix -ve feature indices when pruning
* fix mvitv2 w/ class token
* refine naming
* add tests
2024-04-10 15:11:34 -07:00
Alex Cunha e628ed7e67 device agnostic testing 2023-11-16 20:27:59 -08:00
方曦 0198a2019e tinyvit skip ci test 2023-09-01 11:05:56 -07:00
Ross Wightman 7c2728c6fe
Merge pull request #1919 from ChengpengChen/main
Add RepGhost models and weights
2023-08-19 16:26:45 -07:00
方曦 00f670fa69 fix bug in ci for efficientvits 2023-08-17 14:40:17 +08:00
Chengpeng Chen d1d0193615 Add RepGhost models and weights 2023-08-16 11:54:53 +08:00
方曦 15de561f2c fix unit test for samvit 2023-05-17 12:51:12 +08:00
Ross Wightman 3386af8c86 Final push to get remaining models using multi-weight pretrained configs, almost all weights on HF hub 2023-04-26 15:52:13 -07:00
Ross Wightman 067c7281e2 Another test filter adjustment 2023-03-31 08:33:26 -07:00
Ross Wightman 3825812f1a Update test filtering for enormoous 2023-03-31 00:04:56 -07:00
Ross Wightman a84abe6656 Add eva02 to non-std test models 2023-03-27 22:56:52 -07:00
Ross Wightman b3e816d6d7 Improve filtering behaviour for tag + non-tagged model wildcard consistency. 2023-03-22 10:21:22 -07:00
Ross Wightman 2fc5ac3d18 Exclude the large models from default_cfgs, failing github CI 2023-03-16 14:51:20 -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
Benjamin Bossan 10627bbd49
CI: Split CI tests to run them in parallel (#1691)
* Split CI tests to run them in parallel

The idea of this PR is to split tests into multiple sets that can be run
in parallel by GH. For this, all tests in test_models.py that would run
on GH get a pytest marker. The GH workflow matrix is factorized to run
only a single marker. That way, only a subset of tests should run per
worker, leading to quicker results.

There is also a worker that runs all the tests that are not inside
test_models.py.

* [skip ci] empty commit to abort ci

* Fix typo in marker name

* Split fx into forward and backward

* Comment out test coverage for now

Checking if it's responsible for regression in CI runtime.

* Remove pytest cov completely from requirements

* Remove cov call in pyproject.toml

Missed that one.
2023-02-24 12:28:57 -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 9983ed7721 xlarge maxvit killing the tests 2023-01-20 16:16:20 -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
Fredo Guan e58a884c1c Merge remote-tracking branch 'upstream/main' 2023-01-15 14:37:52 -08:00
Fredo Guan 81ca323751
Davit update formatting and fix grad checkpointing (#7)
fixed head to gap->norm->fc as per convnext, along with option for norm->gap->fc
failed tests due to clip convnext models, davit tests passed
2023-01-15 14:34:56 -08:00
Ross Wightman 6e5553da5f
Add ConvNeXt-V2 support (model additions and weights) (#1614)
* Add ConvNeXt-V2 support (model additions and weights)

* ConvNeXt-V2 weights on HF Hub, tweaking some tests

* Update README, fixing convnextv2 tests
2023-01-05 07:53:32 -08:00
Ross Wightman 35fb00c779 Add flexivit to non-std tests list 2022-12-22 21:32:31 -08:00
Fredo Guan 84178fca60
Merge branch 'rwightman:main' into main 2022-12-12 23:13:58 -08:00
Fredo Guan c43340ddd4
Davit std (#5)
* Update davit.py

* Update test_models.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* starting point

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update test_models.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Davit revised (#4)

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

clean up

* Update test_models.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update davit.py

* Update test_models.py

* Update davit.py
2022-12-11 03:03:22 -08:00
Ross Wightman d5e7d6b27e Merge remote-tracking branch 'origin/main' into refactor-imports 2022-12-09 14:49:44 -08:00
Fredo Guan edea013dd1
Davit std (#3)
Davit with all features working
2022-12-09 02:53:21 -08:00