IMvision12 commited on
Commit
407f739
·
verified ·
1 Parent(s): 88bc266

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +84 -84
README.md CHANGED
@@ -1,84 +1,84 @@
1
- ---
2
- pipeline_tag: image-classification
3
- license: apache-2.0
4
- base_model: timm/mobilenetv3_small_050.lamb_in1k
5
- library_name: zeromodels
6
- tags:
7
- - keras
8
- - zeromodels
9
- - image-classification
10
- - mobilenetv3
11
- - backbone
12
- - arxiv:1905.02244
13
- - pytorch
14
- - jax
15
- - tf
16
- ---
17
-
18
- ## ***See [our collection](https://huggingface.co/collections/zeromodels/mobilenetv3-6a8eaed5388ae9631ea13186) for all versions of MobileNetV3.***
19
-
20
- # Run MobileNetV3 with Keras 3: JAX, PyTorch, or TensorFlow
21
-
22
- [![GitHub](https://img.shields.io/badge/GitHub-ZeroModels-black?logo=github)](https://github.com/IMvision12/ZeroModels) [![Docs](https://img.shields.io/badge/Docs-MobileNetV3-blue)](https://imvision12.github.io/ZeroModels/classification_backbones/) [![Collection](https://img.shields.io/badge/HF-MobileNetV3%20collection-yellow)](https://huggingface.co/collections/zeromodels/mobilenetv3-6a8eaed5388ae9631ea13186)
23
-
24
- # zeromodels/mobilenetv3_small_050_lamb_in1k
25
-
26
- Paper: [Searching for MobileNetV3 (arXiv:1905.02244)](https://arxiv.org/abs/1905.02244) · [HF Papers](https://huggingface.co/papers/1905.02244)
27
-
28
- MobileNetV3 combines NAS, NetAdapt, and hard-swish / SE for efficient mobile vision. Classifier or backbone.
29
-
30
- For more details on the model, please go to the upstream [model card](https://huggingface.co/timm/mobilenetv3_small_050.lamb_in1k).
31
-
32
- Pure-**Keras 3** conversion of [`timm/mobilenetv3_small_050.lamb_in1k`](https://huggingface.co/timm/mobilenetv3_small_050.lamb_in1k) for [zeromodels](https://github.com/IMvision12/ZeroModels). One implementation runs unmodified on **TensorFlow / Torch / JAX**.
33
-
34
- This is an **image-classification / backbone** checkpoint (`MobileNetV3ImageClassify` / `MobileNetV3Model`).
35
-
36
- ## ✨ Quick start
37
-
38
- ```python
39
- import os
40
- os.environ["KERAS_BACKEND"] = "torch" # or "jax" / "tensorflow"
41
-
42
- from PIL import Image
43
- import numpy as np
44
- from zeromodels.models.mobilenetv3 import MobileNetV3ImageClassify, MobileNetV3Model
45
-
46
- model = MobileNetV3ImageClassify.from_weights("zeromodels/mobilenetv3_small_050_lamb_in1k")
47
- backbone = MobileNetV3Model.from_weights(
48
- "zeromodels/mobilenetv3_small_050_lamb_in1k", as_backbone=True
49
- )
50
-
51
- image = Image.open("your_image.jpg").convert("RGB")
52
- image = image.resize((224, 224))
53
- x = np.asarray(image, dtype="float32")[None] # (1, H, W, 3)
54
- print(model(x).shape) # (1, num_classes)
55
- feats = backbone(x)
56
- print(len(feats), [tuple(f.shape) for f in feats])
57
- ```
58
-
59
- Load any MobileNetV3 variant the same way with `from_weights("zeromodels/<variant>")`:
60
-
61
- | Variant | Hub |
62
- |---|---|
63
- | `mobilenetv3_large_100_miil_in21k` | [`zeromodels/mobilenetv3_large_100_miil_in21k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_miil_in21k) |
64
- | `mobilenetv3_large_100_miil_in21k_ft_in1k` | [`zeromodels/mobilenetv3_large_100_miil_in21k_ft_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_miil_in21k_ft_in1k) |
65
- | `mobilenetv3_large_100_ra4_e3600_r224_in1k` | [`zeromodels/mobilenetv3_large_100_ra4_e3600_r224_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_ra4_e3600_r224_in1k) |
66
- | `mobilenetv3_large_100_ra_in1k` | [`zeromodels/mobilenetv3_large_100_ra_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_ra_in1k) |
67
- | `mobilenetv3_large_150d_ra4_e3600_r256_in1k` | [`zeromodels/mobilenetv3_large_150d_ra4_e3600_r256_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_150d_ra4_e3600_r256_in1k) |
68
- | `mobilenetv3_rw_rmsp_in1k` | [`zeromodels/mobilenetv3_rw_rmsp_in1k`](https://huggingface.co/zeromodels/mobilenetv3_rw_rmsp_in1k) |
69
- | `mobilenetv3_small_050_lamb_in1k` | [`zeromodels/mobilenetv3_small_050_lamb_in1k`](https://huggingface.co/zeromodels/mobilenetv3_small_050_lamb_in1k) |
70
- | `mobilenetv3_small_075_lamb_in1k` | [`zeromodels/mobilenetv3_small_075_lamb_in1k`](https://huggingface.co/zeromodels/mobilenetv3_small_075_lamb_in1k) |
71
- | `mobilenetv3_small_100_lamb_in1k` | [`zeromodels/mobilenetv3_small_100_lamb_in1k`](https://huggingface.co/zeromodels/mobilenetv3_small_100_lamb_in1k) |
72
-
73
- ## Tips
74
-
75
- - Set `KERAS_BACKEND` **before** importing Keras / zeromodels.
76
- - `MobileNetV3ImageClassify` returns class logits; `MobileNetV3Model` returns features (`as_backbone=True` for multi-scale stages).
77
- - See [docs](https://imvision12.github.io/ZeroModels/classification_backbones/) and [Loading Weights](https://imvision12.github.io/ZeroModels/loading_weights/).
78
- - Upstream / timm checkpoints: `MobileNetV3ImageClassify.from_weights("hf:timm/mobilenetv3_small_050.lamb_in1k")`.
79
-
80
- ## Special Thanks
81
-
82
- A huge thank you to the MobileNetV3 authors and the timm / Hub communities for creating and releasing these models.
83
-
84
- License: see YAML `license` (usually matches the upstream checkpoint).
 
1
+ ---
2
+ pipeline_tag: image-classification
3
+ license: apache-2.0
4
+ base_model: timm/mobilenetv3_small_050.lamb_in1k
5
+ library_name: zeromodels
6
+ tags:
7
+ - keras
8
+ - zeromodels
9
+ - image-classification
10
+ - mobilenetv3
11
+ - backbone
12
+ - arxiv:1905.02244
13
+ - pytorch
14
+ - jax
15
+ - tf
16
+ ---
17
+
18
+ ## ***See [our collection](https://huggingface.co/collections/zeromodels/mobilenetv3-6a8eaed5388ae9631ea13186) for all versions of MobileNetV3.***
19
+
20
+ # Run MobileNetV3 with Keras 3: JAX, PyTorch, or TensorFlow
21
+
22
+ [![GitHub](https://img.shields.io/badge/GitHub-ZeroModels-black?logo=github)](https://github.com/IMvision12/ZeroModels) [![Docs](https://img.shields.io/badge/Docs-MobileNetV3-blue)](https://imvision12.github.io/ZeroModels/classification_backbones/) [![Collection](https://img.shields.io/badge/HF-MobileNetV3%20collection-yellow)](https://huggingface.co/collections/zeromodels/mobilenetv3-6a8eaed5388ae9631ea13186)
23
+
24
+ # zeromodels/mobilenetv3_small_050_lamb_in1k
25
+
26
+ Paper: [Searching for MobileNetV3 (arXiv:1905.02244)](https://arxiv.org/abs/1905.02244) · [HF Papers](https://huggingface.co/papers/1905.02244)
27
+
28
+ MobileNetV3 combines NAS, NetAdapt, and hard-swish / SE for efficient mobile vision. Classifier or backbone.
29
+
30
+ For more details on the model, please go to the upstream [model card](https://huggingface.co/timm/mobilenetv3_small_050.lamb_in1k).
31
+
32
+ Pure-**Keras 3** conversion of [`timm/mobilenetv3_small_050.lamb_in1k`](https://huggingface.co/timm/mobilenetv3_small_050.lamb_in1k) for [zeromodels](https://github.com/IMvision12/ZeroModels). One implementation runs unmodified on **TensorFlow / Torch / JAX**.
33
+
34
+ This is an **image-classification / backbone** checkpoint (`MobileNetV3ImageClassify` / `MobileNetV3Model`).
35
+
36
+ ## ✨ Quick start
37
+
38
+ ```python
39
+ import os
40
+
41
+ os.environ["KERAS_BACKEND"] = "torch" # or "jax" / "tensorflow"
42
+
43
+ from PIL import Image
44
+ from zeromodels.models.mobilenetv3 import MobileNetV3ImageClassify, MobileNetV3Model, MobileNetV3ImageProcessor
45
+
46
+ model = MobileNetV3ImageClassify.from_weights("zeromodels/mobilenetv3_small_050_lamb_in1k")
47
+ processor = MobileNetV3ImageProcessor.from_weights("zeromodels/mobilenetv3_small_050_lamb_in1k")
48
+
49
+ image = Image.open("your_image.jpg").convert("RGB")
50
+ pixels = processor(image) # resize + normalize (normalization lives in the processor)
51
+ logits = model(pixels, training=False)
52
+ print(logits.shape) # (1, num_classes)
53
+
54
+ # Feature extraction: the backbone without the classifier head
55
+ backbone = MobileNetV3Model.from_weights("zeromodels/mobilenetv3_small_050_lamb_in1k", as_backbone=True)
56
+ features = backbone(pixels, training=False)
57
+ ```
58
+
59
+ Load any MobileNetV3 variant the same way with `from_weights("zeromodels/<variant>")`:
60
+
61
+ | Variant | Hub |
62
+ |---|---|
63
+ | `mobilenetv3_large_100_miil_in21k` | [`zeromodels/mobilenetv3_large_100_miil_in21k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_miil_in21k) |
64
+ | `mobilenetv3_large_100_miil_in21k_ft_in1k` | [`zeromodels/mobilenetv3_large_100_miil_in21k_ft_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_miil_in21k_ft_in1k) |
65
+ | `mobilenetv3_large_100_ra4_e3600_r224_in1k` | [`zeromodels/mobilenetv3_large_100_ra4_e3600_r224_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_ra4_e3600_r224_in1k) |
66
+ | `mobilenetv3_large_100_ra_in1k` | [`zeromodels/mobilenetv3_large_100_ra_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_100_ra_in1k) |
67
+ | `mobilenetv3_large_150d_ra4_e3600_r256_in1k` | [`zeromodels/mobilenetv3_large_150d_ra4_e3600_r256_in1k`](https://huggingface.co/zeromodels/mobilenetv3_large_150d_ra4_e3600_r256_in1k) |
68
+ | `mobilenetv3_rw_rmsp_in1k` | [`zeromodels/mobilenetv3_rw_rmsp_in1k`](https://huggingface.co/zeromodels/mobilenetv3_rw_rmsp_in1k) |
69
+ | `mobilenetv3_small_050_lamb_in1k` | [`zeromodels/mobilenetv3_small_050_lamb_in1k`](https://huggingface.co/zeromodels/mobilenetv3_small_050_lamb_in1k) |
70
+ | `mobilenetv3_small_075_lamb_in1k` | [`zeromodels/mobilenetv3_small_075_lamb_in1k`](https://huggingface.co/zeromodels/mobilenetv3_small_075_lamb_in1k) |
71
+ | `mobilenetv3_small_100_lamb_in1k` | [`zeromodels/mobilenetv3_small_100_lamb_in1k`](https://huggingface.co/zeromodels/mobilenetv3_small_100_lamb_in1k) |
72
+
73
+ ## Tips
74
+
75
+ - Set `KERAS_BACKEND` **before** importing Keras / zeromodels.
76
+ - `MobileNetV3ImageClassify` returns class logits; `MobileNetV3Model` returns features (`as_backbone=True` for multi-scale stages).
77
+ - See [docs](https://imvision12.github.io/ZeroModels/classification_backbones/) and [Loading Weights](https://imvision12.github.io/ZeroModels/loading_weights/).
78
+ - Upstream / timm checkpoints: `MobileNetV3ImageClassify.from_weights("hf:timm/mobilenetv3_small_050.lamb_in1k")`.
79
+
80
+ ## Special Thanks
81
+
82
+ A huge thank you to the MobileNetV3 authors and the timm / Hub communities for creating and releasing these models.
83
+
84
+ License: see YAML `license` (usually matches the upstream checkpoint).