KerasHub
Divyasreepat commited on
Commit
b741b2c
·
verified ·
1 Parent(s): e6bbd87

Update README.md with new model card content

Browse files
Files changed (1) hide show
  1. README.md +104 -0
README.md CHANGED
@@ -2,5 +2,109 @@
2
  library_name: keras-hub
3
  ---
4
  ### Model Overview
 
5
 
 
6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  library_name: keras-hub
3
  ---
4
  ### Model Overview
5
+ EfficientNets are a family of image classification models, which achieve state-of-the-art accuracy, yet being an order-of-magnitude smaller and faster than previous models.
6
 
7
+ We develop EfficientNets based on AutoML and Compound Scaling. In particular, we first use AutoML MNAS Mobile framework to develop a mobile-size baseline network, named as EfficientNet-B0; Then, we use the compound scaling method to scale up this baseline to obtain EfficientNet-B1 to EfficientNet-B7.
8
 
9
+ This class encapsulates the architectures for both EfficientNetV1 and EfficientNetV2. EfficientNetV2 uses Fused-MBConv Blocks and Neural Architecture Search (NAS) to make models sizes much smaller while still improving overall model quality.
10
+
11
+ This model is supported in both KerasCV and KerasHub. KerasCV will no longer be actively developed, so please try to use KerasHub.
12
+
13
+ ## Links
14
+
15
+ * [EfficientNet Quickstart Notebook](https://www.kaggle.com/code/prasadsachin/efficientnet-quickstart-kerashub)
16
+ * [EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks](https://arxiv.org/abs/1905.11946)(ICML 2019)
17
+ * [Based on the original keras.applications EfficientNet](https://github.com/keras-team/keras/blob/master/keras/applications/efficientnet.py)
18
+ * [EfficientNetV2: Smaller Models and Faster Training](https://arxiv.org/abs/2104.00298) (ICML 2021)
19
+ * [EfficientNet API Documentation](coming soon)
20
+ * [KerasHub Beginner Guide](https://keras.io/guides/keras_hub/getting_started/)
21
+ * [KerasHub Model Publishing Guide](https://keras.io/guides/keras_hub/upload/)
22
+
23
+
24
+ ## Installation
25
+
26
+ Keras and KerasHub can be installed with:
27
+
28
+ ```
29
+ pip install -U -q keras-hub
30
+ pip install -U -q keras
31
+ ```
32
+
33
+ Jax, TensorFlow, and Torch come preinstalled in Kaggle Notebooks. For instructions on installing them in another environment see the [Keras Getting Started](https://keras.io/getting_started/) page.
34
+
35
+ ## Presets
36
+
37
+ The following model checkpoints are provided by the Keras team. Full code examples for each are available below.
38
+
39
+ | Preset name | Parameters | Description |
40
+ |------------------------------------|------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
41
+ | efficientnet_b0_ra_imagenet | 5.3M | EfficientNet B0 model pre-trained on the ImageNet 1k dataset with RandAugment recipe. |
42
+ | efficientnet_b0_ra4_e3600_r224_imagenet | 5.3M | EfficientNet B0 model pre-trained on the ImageNet 1k dataset by Ross Wightman. Trained with timm scripts using hyper-parameters inspired by the MobileNet-V4 small, mixed with go-to hparams from timm and 'ResNet Strikes Back'. |
43
+ | efficientnet_b1_ft_imagenet | 7.8M | EfficientNet B1 model fine-tuned on the ImageNet 1k dataset. |
44
+ | efficientnet_b1_ra4_e3600_r240_imagenet | 7.8M | EfficientNet B1 model pre-trained on the ImageNet 1k dataset by Ross Wightman. Trained with timm scripts using hyper-parameters inspired by the MobileNet-V4 small, mixed with go-to hparams from timm and 'ResNet Strikes Back'. |
45
+ | efficientnet_b2_ra_imagenet | 9.1M | EfficientNet B2 model pre-trained on the ImageNet 1k dataset with RandAugment recipe. |
46
+ | efficientnet_b3_ra2_imagenet | 12.2M | EfficientNet B3 model pre-trained on the ImageNet 1k dataset with RandAugment2 recipe. |
47
+ | efficientnet_b4_ra2_imagenet | 19.3M | EfficientNet B4 model pre-trained on the ImageNet 1k dataset with RandAugment2 recipe. |
48
+ | efficientnet_b5_sw_imagenet | 30.4M | EfficientNet B5 model pre-trained on the ImageNet 12k dataset by Ross Wightman. Based on Swin Transformer train / pretrain recipe with modifications (related to both DeiT and ConvNeXt recipes). |
49
+ | efficientnet_b5_sw_ft_imagenet | 30.4M | EfficientNet B5 model pre-trained on the ImageNet 12k dataset and fine-tuned on ImageNet-1k by Ross Wightman. Based on Swin Transformer train / pretrain recipe with modifications (related to both DeiT and ConvNeXt recipes). |
50
+ | efficientnet_el_ra_imagenet | 10.6M | EfficientNet-EdgeTPU Large model trained on the ImageNet 1k dataset with RandAugment recipe. |
51
+ | efficientnet_em_ra2_imagenet | 6.9M | EfficientNet-EdgeTPU Medium model trained on the ImageNet 1k dataset with RandAugment2 recipe. |
52
+ | efficientnet_es_ra_imagenet | 5.4M | EfficientNet-EdgeTPU Small model trained on the ImageNet 1k dataset with RandAugment recipe. |
53
+ | efficientnet2_rw_m_agc_imagenet | 53.2M | EfficientNet-v2 Medium model trained on the ImageNet 1k dataset with adaptive gradient clipping. |
54
+ | efficientnet2_rw_s_ra2_imagenet | 23.9M | EfficientNet-v2 Small model trained on the ImageNet 1k dataset with RandAugment2 recipe. |
55
+ | efficientnet2_rw_t_ra2_imagenet | 13.6M | EfficientNet-v2 Tiny model trained on the ImageNet 1k dataset with RandAugment2 recipe. |
56
+ | efficientnet_lite0_ra_imagenet | 4.7M | EfficientNet-Lite model fine-trained on the ImageNet 1k dataset with RandAugment recipe. |
57
+
58
+ ## Model card
59
+ https://arxiv.org/abs/1905.11946
60
+
61
+ ## Example Usage
62
+ Load
63
+ ```python
64
+ classifier = keras_hub.models.EfficientNetImageClassifier.from_preset(
65
+ "efficientnet_b0_ra_imagenet",
66
+ )
67
+ ```
68
+ Predict
69
+ ```python
70
+ batch_size = 1
71
+ images = keras.random.normal(shape=(batch_size, 96, 96, 3))
72
+ classifier.predict(images)
73
+ ```
74
+ Train, specify `num_classes` to load randomly initialized classifier head.
75
+ ```python
76
+ num_classes = 2
77
+ labels = keras.random.randint(shape=(batch_size,), minval=0, maxval=num_classes)
78
+ classifier = keras_hub.models.EfficientNetImageClassifier.from_preset(
79
+ "efficientnet_b0_ra_imagenet",
80
+ num_classes=num_classes,
81
+ )
82
+ classifier.preprocessor.image_size = (96, 96)
83
+ classifier.fit(images, labels, epochs=3)
84
+ ```
85
+
86
+ ## Example Usage with Hugging Face URI
87
+
88
+ Load
89
+ ```python
90
+ classifier = keras_hub.models.EfficientNetImageClassifier.from_preset(
91
+ "efficientnet_b0_ra_imagenet",
92
+ )
93
+ ```
94
+ Predict
95
+ ```python
96
+ batch_size = 1
97
+ images = keras.random.normal(shape=(batch_size, 96, 96, 3))
98
+ classifier.predict(images)
99
+ ```
100
+ Train, specify `num_classes` to load randomly initialized classifier head.
101
+ ```python
102
+ num_classes = 2
103
+ labels = keras.random.randint(shape=(batch_size,), minval=0, maxval=num_classes)
104
+ classifier = keras_hub.models.EfficientNetImageClassifier.from_preset(
105
+ "efficientnet_b0_ra_imagenet",
106
+ num_classes=num_classes,
107
+ )
108
+ classifier.preprocessor.image_size = (96, 96)
109
+ classifier.fit(images, labels, epochs=3)
110
+ ```