Skip to content

Update ML Decoder #2045

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 102 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
102 commits
Select commit Hold shift + click to select a range
8997ccf
Update ml_decoder.py
fffffgggg54 Nov 27, 2023
69f3634
Update ml_decoder.py
fffffgggg54 Nov 27, 2023
92f0b7f
Update beit.py
fffffgggg54 Dec 8, 2023
d10f002
Update beit.py
fffffgggg54 Dec 8, 2023
f59c1f1
Update beit.py
fffffgggg54 Dec 8, 2023
318369a
Update davit.py
fffffgggg54 Dec 10, 2023
08b7837
Merge branch 'davit_head_update' into ml-decoder
fffffgggg54 Dec 10, 2023
03606ab
Update edgenext.py
fffffgggg54 Dec 10, 2023
4f8898a
Update edgenext.py
fffffgggg54 Dec 10, 2023
c0206b8
Update edgenext.py
fffffgggg54 Dec 10, 2023
babdb21
Merge branch 'edgenext_head_update' into ml-decoder
fffffgggg54 Dec 10, 2023
13b33c6
Merge branch 'huggingface:main' into ml-decoder
fffffgggg54 Dec 14, 2023
95bd9dc
vectorize GroupFC
fffffgggg54 Dec 14, 2023
1448b7d
Update ml_decoder.py
fffffgggg54 Dec 14, 2023
ab3eacb
Update ml_decoder.py
fffffgggg54 Dec 14, 2023
b4afe6c
Update ml_decoder.py
fffffgggg54 Dec 14, 2023
dd8d231
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
51c85bd
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
36d69a4
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
4161159
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
aa19600
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
6b99c91
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
db24aea
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
09749be
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
2a05a28
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
50fe44f
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
565a57a
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
95a24fc
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
7ebfb85
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
b2917f1
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
e0c9f14
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
0124d0f
Update ml_decoder.py
fffffgggg54 Dec 19, 2023
5a39bb3
Update ml_decoder.py
fffffgggg54 Dec 25, 2023
b680c48
Update ml_decoder.py
fffffgggg54 Dec 25, 2023
3b506e9
Update ml_decoder.py
fffffgggg54 Dec 26, 2023
4f1b76b
tests
fffffgggg54 Dec 26, 2023
1bf6fbd
Update ml_decoder.py
fffffgggg54 Jul 2, 2024
bd39f8a
head reset will use the same class of head
fffffgggg54 Jul 27, 2024
bf08a92
Update ml_decoder.py
fffffgggg54 Jul 28, 2024
f259cb4
Update ml_decoder.py
fffffgggg54 Nov 27, 2023
ec71960
Update ml_decoder.py
fffffgggg54 Nov 27, 2023
1d3aeb2
Update beit.py
fffffgggg54 Dec 8, 2023
6f65415
Update beit.py
fffffgggg54 Dec 8, 2023
1bc81c5
Update beit.py
fffffgggg54 Dec 8, 2023
e00d7a0
Update edgenext.py
fffffgggg54 Dec 10, 2023
e7661e9
Update edgenext.py
fffffgggg54 Dec 10, 2023
43f6a30
vectorize GroupFC
fffffgggg54 Dec 14, 2023
e6825bb
Update ml_decoder.py
fffffgggg54 Dec 14, 2023
82ebc31
Update ml_decoder.py
fffffgggg54 Dec 14, 2023
1440712
Update ml_decoder.py
fffffgggg54 Dec 14, 2023
2cc0094
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
ec4abba
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
6b2e3f1
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
2befc41
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
6376ad2
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
d3185a9
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
0fbf04f
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
e89b976
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
b2849e9
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
0c39b2b
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
4107c0b
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
0cd2bca
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
162f576
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
7b22abe
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
82c1286
Update ml_decoder.py
fffffgggg54 Dec 17, 2023
b28d03d
Update ml_decoder.py
fffffgggg54 Dec 19, 2023
e7975df
Update ml_decoder.py
fffffgggg54 Dec 25, 2023
4c0781b
Update ml_decoder.py
fffffgggg54 Dec 25, 2023
18ef272
Update ml_decoder.py
fffffgggg54 Dec 26, 2023
4c5f60e
tests
fffffgggg54 Dec 26, 2023
f6bc034
Update ml_decoder.py
fffffgggg54 Jul 2, 2024
abbdf05
head reset will use the same class of head
fffffgggg54 Jul 27, 2024
b927237
Update ml_decoder.py
fffffgggg54 Jul 28, 2024
2c75ebd
Feature: allow custom query in forward
fffffgggg54 Dec 27, 2024
f4b0c46
shared fc option for unseen class 0-shot
fffffgggg54 Dec 27, 2024
32f6e51
act_layer toggle
fffffgggg54 Dec 29, 2024
a41a4d8
Allow merge by adding
fffffgggg54 Dec 29, 2024
04c1eea
num_groups = num_classes QOL
fffffgggg54 Dec 29, 2024
44f93e9
typo
fffffgggg54 Dec 29, 2024
5c32658
Update ml_decoder.py
fffffgggg54 Dec 29, 2024
fbeed51
Update ml_decoder.py
fffffgggg54 Dec 29, 2024
5cac39c
Update ml_decoder.py
fffffgggg54 Dec 29, 2024
bf81448
Update ml_decoder.py
fffffgggg54 Dec 29, 2024
566a843
Update ml_decoder.py
fffffgggg54 Dec 29, 2024
86c1104
Incorrect indexing in GroupLinear
fffffgggg54 Dec 29, 2024
d6bb62f
bias incorrect
fffffgggg54 Dec 29, 2024
ca3b3f0
contiguous
fffffgggg54 Dec 29, 2024
9000e79
metaformer monkeypatch
fffffgggg54 Jan 21, 2025
a8b90bf
monkeypatch ml-decoder + metaformer
fffffgggg54 Jan 21, 2025
7479d45
Merge branch 'ml-decoder' of https://github.com/fffffgggg54/pytorch-i…
fffffgggg54 May 11, 2025
8d704b7
Add MLDecoderHead query passthrough
fffffgggg54 May 11, 2025
4e35692
Experimental options for smaller head
fffffgggg54 May 15, 2025
4768631
Update ml_decoder.py
fffffgggg54 May 15, 2025
94b56db
Update ml_decoder.py
fffffgggg54 May 15, 2025
41d36dc
pool input
fffffgggg54 May 16, 2025
28954e7
Update ml_decoder.py
fffffgggg54 May 16, 2025
8ef74c0
Update ml_decoder.py
fffffgggg54 May 16, 2025
9388b52
Update ml_decoder.py
fffffgggg54 May 16, 2025
1710155
not useful
fffffgggg54 May 16, 2025
808d797
Update ml_decoder.py
fffffgggg54 May 16, 2025
f2d4781
Update ml_decoder.py
fffffgggg54 May 16, 2025
be3902c
Update ml_decoder.py
fffffgggg54 May 16, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions tests/test_layers.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ def test_hard_mish_grad():
for _ in range(100):
_run_act_layer_grad('hard_mish')


def test_get_act_layer_empty_string():
# Empty string should return None
assert get_act_layer('') is None
Expand Down Expand Up @@ -119,3 +120,17 @@ def test_get_act_fn_none():
assert get_act_fn(None) is None
assert get_act_fn('') is None


MLDECODER_EXCLUDE_FILTERS = [
'*efficientnet_l2*', '*resnext101_32x48d', '*in21k', '*152x4_bitm', '*101x3_bitm', '*50x3_bitm',
'*nfnet_f3*', '*nfnet_f4*', '*nfnet_f5*', '*nfnet_f6*', '*nfnet_f7*', '*efficientnetv2_xl*',
'*resnetrs350*', '*resnetrs420*', 'xcit_large_24_p8*', '*huge*', '*giant*', '*gigantic*',
'*enormous*', 'maxvit_xlarge*', 'regnet*1280', 'regnet*2560']

def test_ml_decoder():
for modelName in timm.list_models(pretrained=False, exclude_filters = MLDECODER_EXCLUDE_FILTERS):
model = timm.create_model(modelName, num_classes=1000)
model = add_ml_decoder_head(model)
model.eval()
with torch.set_grad_enabled(False):
model(torch.randn([1,*model.default_cfg['input_size']]))
Loading