Upload model
Browse files- config.json +1 -1
- configuration_solider.py +1 -1
- modeling_solider.py +12 -5
config.json
CHANGED
@@ -55,7 +55,7 @@
|
|
55 |
"pretrained": null,
|
56 |
"qk_scale": null,
|
57 |
"qkv_bias": true,
|
58 |
-
"semantic_weight": 0.
|
59 |
"strides": [
|
60 |
4,
|
61 |
2,
|
|
|
55 |
"pretrained": null,
|
56 |
"qk_scale": null,
|
57 |
"qkv_bias": true,
|
58 |
+
"semantic_weight": 0.5,
|
59 |
"strides": [
|
60 |
4,
|
61 |
2,
|
configuration_solider.py
CHANGED
@@ -39,7 +39,7 @@ class SOLIDERConfig(PretrainedConfig):
|
|
39 |
convert_weights=False,
|
40 |
frozen_stages=-1,
|
41 |
init_cfg=None,
|
42 |
-
semantic_weight=0.
|
43 |
name="solider_small",
|
44 |
**kwargs,
|
45 |
):
|
|
|
39 |
convert_weights=False,
|
40 |
frozen_stages=-1,
|
41 |
init_cfg=None,
|
42 |
+
semantic_weight=0.5, # NOTE: I modified this from the implemenation of SOLIDER
|
43 |
name="solider_small",
|
44 |
**kwargs,
|
45 |
):
|
modeling_solider.py
CHANGED
@@ -1654,7 +1654,7 @@ SOLIDER_BASE_MODEL_CONFIG_PARAMETERS = {
|
|
1654 |
"convert_weights": False,
|
1655 |
"frozen_stages": -1,
|
1656 |
"init_cfg": None,
|
1657 |
-
"semantic_weight": 0.
|
1658 |
"name": "solider_base",
|
1659 |
}
|
1660 |
|
@@ -1683,7 +1683,7 @@ SOLIDER_SMALL_MODEL_CONFIG_PARAMETERS = {
|
|
1683 |
"convert_weights": False,
|
1684 |
"frozen_stages": -1,
|
1685 |
"init_cfg": None,
|
1686 |
-
"semantic_weight": 0.
|
1687 |
"name": "solider_small",
|
1688 |
}
|
1689 |
|
@@ -1712,7 +1712,7 @@ SOLIDER_TINY_MODEL_CONFIG_PARAMETERS = {
|
|
1712 |
"convert_weights": False,
|
1713 |
"frozen_stages": -1,
|
1714 |
"init_cfg": None,
|
1715 |
-
"semantic_weight": 0.
|
1716 |
"name": "solider_tiny",
|
1717 |
}
|
1718 |
|
@@ -1729,7 +1729,7 @@ def build_solider_vision_encoder(weight_path, name="swin_small_patch4_window7_22
|
|
1729 |
"name": name,
|
1730 |
"img_size": [384, 128],
|
1731 |
"pretrained": weight_path,
|
1732 |
-
"semantic_weight": 0.
|
1733 |
}
|
1734 |
),
|
1735 |
vision_width,
|
@@ -1776,10 +1776,12 @@ class SOLIDERModel(PreTrainedModel):
|
|
1776 |
# self.init_weights()
|
1777 |
|
1778 |
def forward(self, x, semantic_weight=None):
|
1779 |
-
|
|
|
1780 |
return self.solider(x, semantic_weight)
|
1781 |
|
1782 |
|
|
|
1783 |
class SoliderEncoder(SwinTransformer):
|
1784 |
options = [
|
1785 |
"swin_tiny_patch4_window7_224",
|
@@ -1789,6 +1791,7 @@ class SoliderEncoder(SwinTransformer):
|
|
1789 |
|
1790 |
@classmethod
|
1791 |
def from_config(cls, cfg, from_pretrained=None):
|
|
|
1792 |
name = cfg.get("name", "swin_small_patch4_window7_224")
|
1793 |
img_size = cfg.get("img_size", [384, 128])
|
1794 |
drop_path_rate = cfg.get("drop_path_rate", 0.1)
|
@@ -1834,7 +1837,11 @@ class SoliderEncoder(SwinTransformer):
|
|
1834 |
state_dict_vision_encoder = torch.load(from_pretrained, map_location="cpu")
|
1835 |
msg = model.load_state_dict(state_dict_vision_encoder)
|
1836 |
print(msg)
|
|
|
1837 |
return model
|
1838 |
|
1839 |
def forward_features(self, x, semantic_weight=None):
|
|
|
|
|
1840 |
return SwinTransformer.forward(self, x, semantic_weight)
|
|
|
|
1654 |
"convert_weights": False,
|
1655 |
"frozen_stages": -1,
|
1656 |
"init_cfg": None,
|
1657 |
+
"semantic_weight": 0.5,
|
1658 |
"name": "solider_base",
|
1659 |
}
|
1660 |
|
|
|
1683 |
"convert_weights": False,
|
1684 |
"frozen_stages": -1,
|
1685 |
"init_cfg": None,
|
1686 |
+
"semantic_weight": 0.5,
|
1687 |
"name": "solider_small",
|
1688 |
}
|
1689 |
|
|
|
1712 |
"convert_weights": False,
|
1713 |
"frozen_stages": -1,
|
1714 |
"init_cfg": None,
|
1715 |
+
"semantic_weight": 0.5,
|
1716 |
"name": "solider_tiny",
|
1717 |
}
|
1718 |
|
|
|
1729 |
"name": name,
|
1730 |
"img_size": [384, 128],
|
1731 |
"pretrained": weight_path,
|
1732 |
+
"semantic_weight": 0.5,
|
1733 |
}
|
1734 |
),
|
1735 |
vision_width,
|
|
|
1776 |
# self.init_weights()
|
1777 |
|
1778 |
def forward(self, x, semantic_weight=None):
|
1779 |
+
if semantic_weight is None:
|
1780 |
+
semantic_weight = self.config.semantic_weight
|
1781 |
return self.solider(x, semantic_weight)
|
1782 |
|
1783 |
|
1784 |
+
# NOTE: Currently not used!
|
1785 |
class SoliderEncoder(SwinTransformer):
|
1786 |
options = [
|
1787 |
"swin_tiny_patch4_window7_224",
|
|
|
1791 |
|
1792 |
@classmethod
|
1793 |
def from_config(cls, cfg, from_pretrained=None):
|
1794 |
+
|
1795 |
name = cfg.get("name", "swin_small_patch4_window7_224")
|
1796 |
img_size = cfg.get("img_size", [384, 128])
|
1797 |
drop_path_rate = cfg.get("drop_path_rate", 0.1)
|
|
|
1837 |
state_dict_vision_encoder = torch.load(from_pretrained, map_location="cpu")
|
1838 |
msg = model.load_state_dict(state_dict_vision_encoder)
|
1839 |
print(msg)
|
1840 |
+
model.config = cfg
|
1841 |
return model
|
1842 |
|
1843 |
def forward_features(self, x, semantic_weight=None):
|
1844 |
+
if semantic_weight is None:
|
1845 |
+
semantic_weight = self.config.semantic_weight
|
1846 |
return SwinTransformer.forward(self, x, semantic_weight)
|
1847 |
+
|