kimm


Namekimm JSON
Version 0.2.5 PyPI version JSON
download
home_pageNone
SummaryA Keras model zoo with pretrained weights.
upload_time2024-10-20 13:53:19
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseApache License 2.0
keywords deep-learning model-zoo keras jax tensorflow torch imagenet pretrained-weights timm
VCS
bugtrack_url
requirements tensorflow-cpu torch torchvision jax keras
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <!-- markdownlint-disable MD033 -->
<!-- markdownlint-disable MD041 -->

<div align="center">
<img width="50%" src="https://github.com/james77777778/kimm/assets/20734616/b21db8f2-307b-4791-b93d-e913e45fb238" alt="KIMM">

[![Keras](https://img.shields.io/badge/keras-v3.3.0+-success.svg)](https://github.com/keras-team/keras)
[![PyPI](https://img.shields.io/pypi/v/kimm)](https://pypi.org/project/kimm/)
[![Contributions Welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/james77777778/kimm/issues)
[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/james77777778/keras-image-models/actions.yml?label=tests)](https://github.com/james77777778/keras-image-models/actions/workflows/actions.yml?query=branch%3Amain++)
[![codecov](https://codecov.io/gh/james77777778/keras-image-models/graph/badge.svg?token=eEha1SR80D)](https://codecov.io/gh/james77777778/keras-image-models)
</div>

# Keras Image Models

- [Latest Updates](#latest-updates)
- [Introduction](#introduction)
- [Usage](#usage)
- [Installation](#installation)
- [Quickstart](#quickstart)
  - [Image classification with ImageNet weights](#image-classification-using-the-model-pretrained-on-imagenet)
  - [An end-to-end fine-tuning example: cats vs. dogs dataset](#an-end-to-end-example-fine-tuning-an-image-classification-model-on-a-cats-vs-dogs-dataset)
  - [Grad-CAM](#grad-cam)
- [Model Zoo](#model-zoo)
- [License](#license)
- [Acknowledgements](#acknowledgements)

## Latest Updates

2024/06/02:

- Add docstrings for all `kimm` models.
- Merge reparameterizable layers into 1 `ReparameterizableConv2D`
- Add `GhostNetV3*` from [huawei-noah/Efficient-AI-Backbones](https://github.com/huawei-noah/Efficient-AI-Backbones)

## Introduction

**K**eras **Im**age **M**odels (`kimm`) is a collection of image models, blocks and layers written in Keras 3. The goal is to offer SOTA models with pretrained weights in a user-friendly manner.

**KIMM** is:

- 🚀 A model zoo where almost all models come with **pre-trained weights on ImageNet**.
- 🧰 Providing APIs to export models to `.tflite` and `.onnx`.
- 🔧 Supporting the **reparameterization** technique.
- ✨ Integrated with **feature extraction** capability.

## Usage

- `kimm.list_models`
- `kimm.models.*.available_feature_keys`
- `kimm.models.*(...)`
- `kimm.models.*(..., feature_extractor=True, feature_keys=[...])`

```python
import keras
import kimm

# List available models
print(kimm.list_models("mobileone", weights="imagenet"))
# ['MobileOneS0', 'MobileOneS1', 'MobileOneS2', 'MobileOneS3']

# Initialize model with pretrained ImageNet weights
# Note: all `kimm` models expect inputs in the value range of [0, 255] by
# default if `incldue_preprocessing=True`
x = keras.random.uniform([1, 224, 224, 3]) * 255.0
model = kimm.models.MobileOneS0()
y = model.predict(x)
print(y.shape)
# (1, 1000)

# Print some basic information about the model
print(model)
# <MobileOneS0 name=MobileOneS0, input_shape=(None, None, None, 3),
# default_size=224, preprocessing_mode="imagenet", feature_extractor=False,
# feature_keys=None>
# This information can also be accessed through properties
print(model.input_shape, model.default_size, model.preprocessing_mode)

# List available feature keys of the model class
print(kimm.models.MobileOneS0.available_feature_keys)
# ['STEM_S2', 'BLOCK0_S4', 'BLOCK1_S8', 'BLOCK2_S16', 'BLOCK3_S32']

# Enable feature extraction by setting `feature_extractor=True`
# `feature_keys` can be optionally specified
feature_extractor = kimm.models.MobileOneS0(
    feature_extractor=True, feature_keys=["BLOCK2_S16", "BLOCK3_S32"]
)
features = feature_extractor.predict(x)
for feature_name, feature in features.items():
    print(feature_name, feature.shape)
# BLOCK2_S16 (1, 14, 14, 256), BLOCK3_S32 (1, 7, 7, 1024), ...
```

> [!NOTE]  
> All models in `kimm` expect inputs in the value range of [0, 255] by default if `incldue_preprocessing=True`.
> Some models only accept static inputs. You should explicitly specify the input shape for these models by `input_shape=[*, *, 3]`.

## Advanced Usage

- `kimm.utils.get_reparameterized_model`
- `kimm.export.export_tflite`
- `kimm.export.export_onnx`

```python
import keras
import kimm
import numpy as np

# Initialize a reparameterizable model
x = keras.random.uniform([1, 224, 224, 3]) * 255.0
model = kimm.models.MobileOneS0()
y = model.predict(x)

# Get reparameterized model by kimm.utils.get_reparameterized_model
reparameterized_model = kimm.utils.get_reparameterized_model(model)
y2 = reparameterized_model.predict(x)
np.testing.assert_allclose(
    keras.ops.convert_to_numpy(y), keras.ops.convert_to_numpy(y2), atol=1e-3
)

# Export model to tflite format
kimm.export.export_tflite(reparameterized_model, 224, "model.tflite")

# Export model to onnx format
# Note: must be "channels_first" format before the exporting
# kimm.export.export_onnx(reparameterized_model, 224, "model.onnx")
```

## Installation

```bash
pip install keras kimm -U
```

> [!IMPORTANT]  
> Make sure you have installed a supported backend for Keras.

## Quickstart

### Image classification using the model pretrained on ImageNet

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/14WxYgVjlwCIO9MwqPYW-dskbTL2UHsVN?usp=sharing)

Using `kimm.models.VisionTransformerTiny16`:

<div align="center">
<img width="50%" src="https://github.com/james77777778/keras-image-models/assets/20734616/7caa4e5e-8561-425b-aaf2-6ae44ac3ea00" alt="african_elephant">
</div>

```bash
1/1 ━━━━━━━━━━━━━━━━━━━━ 1s 1s/step
Predicted: [('n02504458', 'African_elephant', 0.6895825), ('n01871265', 'tusker', 0.17934209), ('n02504013', 'Indian_elephant', 0.12927249)]
```

### An end-to-end example: fine-tuning an image classification model on a cats vs. dogs dataset

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1IbqfqG2NKEOKvBOznIPT1kjOdVPfThmd?usp=sharing)

Using `kimm.models.EfficientNetLiteB0`:

<div align="center">
<img width="75%" src="https://github.com/james77777778/kimm/assets/20734616/cbfc0773-a3fa-407d-be9a-fba4f19da6d3" alt="kimm_prediction_0">

<img width="75%" src="https://github.com/james77777778/kimm/assets/20734616/2eac0831-75bb-4790-a3af-412c3e09cf8f" alt="kimm_prediction_1">
</div>

Reference: [Transfer learning & fine-tuning (keras.io)](https://keras.io/guides/transfer_learning/#an-endtoend-example-finetuning-an-image-classification-model-on-a-cats-vs-dogs-dataset)

### Grad-CAM

[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1h25VmsYDOLL6BNbRPEVOh1arIgcEoHu6?usp=sharing)

Using `kimm.models.MobileViTS`:

<div align="center">
<img width="50%" src="https://github.com/james77777778/kimm/assets/20734616/cb5022a3-aaea-4324-a9cd-3d2e63a0a6b2" alt="grad_cam">
</div>

Reference: [Grad-CAM class activation visualization (keras.io)](https://keras.io/examples/vision/grad_cam/)

## Model Zoo

|Model|Paper|Weights are ported from|API (`kimm.models.*`)|
|-|-|-|-|
|ConvMixer|[ICLR 2022 Submission](https://arxiv.org/abs/2201.09792)|`timm`|`ConvMixer*`|
|ConvNeXt|[CVPR 2022](https://arxiv.org/abs/2201.03545)|`timm`|`ConvNeXt*`|
|DenseNet|[CVPR 2017](https://arxiv.org/abs/1608.06993)|`timm`|`DenseNet*`|
|EfficientNet|[ICML 2019](https://arxiv.org/abs/1905.11946)|`timm`|`EfficientNet*`|
|EfficientNetLite|[ICML 2019](https://arxiv.org/abs/1905.11946)|`timm`|`EfficientNetLite*`|
|EfficientNetV2|[ICML 2021](https://arxiv.org/abs/2104.00298)|`timm`|`EfficientNetV2*`|
|GhostNet|[CVPR 2020](https://arxiv.org/abs/1911.11907)|`timm`|`GhostNet*`|
|GhostNetV2|[NeurIPS 2022](https://arxiv.org/abs/2211.12905)|`timm`|`GhostNetV2*`|
|GhostNetV3|[arXiv 2024](https://arxiv.org/abs/2404.11202)|`github`|`GhostNetV3*`|
|HGNet||`timm`|`HGNet*`|
|HGNetV2||`timm`|`HGNetV2*`|
|InceptionNeXt|[CVPR 2024](https://arxiv.org/abs/2303.16900)|`timm`|`InceptionNeXt*`|
|InceptionV3|[CVPR 2016](https://arxiv.org/abs/1512.00567)|`timm`|`InceptionV3`|
|LCNet|[arXiv 2021](https://arxiv.org/abs/2109.15099)|`timm`|`LCNet*`|
|MobileNetV2|[CVPR 2018](https://arxiv.org/abs/1801.04381)|`timm`|`MobileNetV2*`|
|MobileNetV3|[ICCV 2019](https://arxiv.org/abs/1905.02244)|`timm`|`MobileNetV3*`|
|MobileOne|[CVPR 2023](https://arxiv.org/abs/2206.04040)|`timm`|`MobileOne*`|
|MobileViT|[ICLR 2022](https://arxiv.org/abs/2110.02178)|`timm`|`MobileViT*`|
|MobileViTV2|[arXiv 2022](https://arxiv.org/abs/2206.02680)|`timm`|`MobileViTV2*`|
|RegNet|[CVPR 2020](https://arxiv.org/abs/2003.13678)|`timm`|`RegNet*`|
|RepVGG|[CVPR 2021](https://arxiv.org/abs/2101.03697)|`timm`|`RepVGG*`|
|ResNet|[CVPR 2015](https://arxiv.org/abs/1512.03385)|`timm`|`ResNet*`|
|TinyNet|[NeurIPS 2020](https://arxiv.org/abs/2010.14819)|`timm`|`TinyNet*`|
|VGG|[ICLR 2015](https://arxiv.org/abs/1409.1556)|`timm`|`VGG*`|
|ViT|[ICLR 2021](https://arxiv.org/abs/2010.11929)|`timm`|`VisionTransformer*`|
|Xception|[CVPR 2017](https://arxiv.org/abs/1610.02357)|`keras`|`Xception`|

The export scripts can be found in `tools/convert_*.py`.

## License

Please refer to [timm](https://github.com/huggingface/pytorch-image-models#licenses) as this project is built upon it.

### `kimm` Code

The code here is licensed Apache 2.0.

## Acknowledgements

Thanks for these awesome projects that were used in `kimm`

- [https://github.com/keras-team/keras](https://github.com/keras-team/keras)
- [https://github.com/huggingface/pytorch-image-models](https://github.com/huggingface/pytorch-image-models)

## Citing

### BibTeX

```bash
@misc{rw2019timm,
  author = {Ross Wightman},
  title = {PyTorch Image Models},
  year = {2019},
  publisher = {GitHub},
  journal = {GitHub repository},
  doi = {10.5281/zenodo.4414861},
  howpublished = {\url{https://github.com/rwightman/pytorch-image-models}}
}
```

```bash
@misc{hy2024kimm,
  author = {Hongyu Chiu},
  title = {Keras Image Models},
  year = {2024},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/james77777778/kimm}}
}
```

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "kimm",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "Hong-Yu Chiu <james77777778@gmail.com>",
    "keywords": "deep-learning, model-zoo, keras, jax, tensorflow, torch, imagenet, pretrained-weights, timm",
    "author": null,
    "author_email": "Hong-Yu Chiu <james77777778@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/31/9e/4552f921b25f15f170f21ebfbd695891100b7062282e5156ee95edb99f46/kimm-0.2.5.tar.gz",
    "platform": null,
    "description": "<!-- markdownlint-disable MD033 -->\n<!-- markdownlint-disable MD041 -->\n\n<div align=\"center\">\n<img width=\"50%\" src=\"https://github.com/james77777778/kimm/assets/20734616/b21db8f2-307b-4791-b93d-e913e45fb238\" alt=\"KIMM\">\n\n[![Keras](https://img.shields.io/badge/keras-v3.3.0+-success.svg)](https://github.com/keras-team/keras)\n[![PyPI](https://img.shields.io/pypi/v/kimm)](https://pypi.org/project/kimm/)\n[![Contributions Welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/james77777778/kimm/issues)\n[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/james77777778/keras-image-models/actions.yml?label=tests)](https://github.com/james77777778/keras-image-models/actions/workflows/actions.yml?query=branch%3Amain++)\n[![codecov](https://codecov.io/gh/james77777778/keras-image-models/graph/badge.svg?token=eEha1SR80D)](https://codecov.io/gh/james77777778/keras-image-models)\n</div>\n\n# Keras Image Models\n\n- [Latest Updates](#latest-updates)\n- [Introduction](#introduction)\n- [Usage](#usage)\n- [Installation](#installation)\n- [Quickstart](#quickstart)\n  - [Image classification with ImageNet weights](#image-classification-using-the-model-pretrained-on-imagenet)\n  - [An end-to-end fine-tuning example: cats vs. dogs dataset](#an-end-to-end-example-fine-tuning-an-image-classification-model-on-a-cats-vs-dogs-dataset)\n  - [Grad-CAM](#grad-cam)\n- [Model Zoo](#model-zoo)\n- [License](#license)\n- [Acknowledgements](#acknowledgements)\n\n## Latest Updates\n\n2024/06/02:\n\n- Add docstrings for all `kimm` models.\n- Merge reparameterizable layers into 1 `ReparameterizableConv2D`\n- Add `GhostNetV3*` from [huawei-noah/Efficient-AI-Backbones](https://github.com/huawei-noah/Efficient-AI-Backbones)\n\n## Introduction\n\n**K**eras **Im**age **M**odels (`kimm`) is a collection of image models, blocks and layers written in Keras 3. The goal is to offer SOTA models with pretrained weights in a user-friendly manner.\n\n**KIMM** is:\n\n- \ud83d\ude80 A model zoo where almost all models come with **pre-trained weights on ImageNet**.\n- \ud83e\uddf0 Providing APIs to export models to `.tflite` and `.onnx`.\n- \ud83d\udd27 Supporting the **reparameterization** technique.\n- \u2728 Integrated with **feature extraction** capability.\n\n## Usage\n\n- `kimm.list_models`\n- `kimm.models.*.available_feature_keys`\n- `kimm.models.*(...)`\n- `kimm.models.*(..., feature_extractor=True, feature_keys=[...])`\n\n```python\nimport keras\nimport kimm\n\n# List available models\nprint(kimm.list_models(\"mobileone\", weights=\"imagenet\"))\n# ['MobileOneS0', 'MobileOneS1', 'MobileOneS2', 'MobileOneS3']\n\n# Initialize model with pretrained ImageNet weights\n# Note: all `kimm` models expect inputs in the value range of [0, 255] by\n# default if `incldue_preprocessing=True`\nx = keras.random.uniform([1, 224, 224, 3]) * 255.0\nmodel = kimm.models.MobileOneS0()\ny = model.predict(x)\nprint(y.shape)\n# (1, 1000)\n\n# Print some basic information about the model\nprint(model)\n# <MobileOneS0 name=MobileOneS0, input_shape=(None, None, None, 3),\n# default_size=224, preprocessing_mode=\"imagenet\", feature_extractor=False,\n# feature_keys=None>\n# This information can also be accessed through properties\nprint(model.input_shape, model.default_size, model.preprocessing_mode)\n\n# List available feature keys of the model class\nprint(kimm.models.MobileOneS0.available_feature_keys)\n# ['STEM_S2', 'BLOCK0_S4', 'BLOCK1_S8', 'BLOCK2_S16', 'BLOCK3_S32']\n\n# Enable feature extraction by setting `feature_extractor=True`\n# `feature_keys` can be optionally specified\nfeature_extractor = kimm.models.MobileOneS0(\n    feature_extractor=True, feature_keys=[\"BLOCK2_S16\", \"BLOCK3_S32\"]\n)\nfeatures = feature_extractor.predict(x)\nfor feature_name, feature in features.items():\n    print(feature_name, feature.shape)\n# BLOCK2_S16 (1, 14, 14, 256), BLOCK3_S32 (1, 7, 7, 1024), ...\n```\n\n> [!NOTE]  \n> All models in `kimm` expect inputs in the value range of [0, 255] by default if `incldue_preprocessing=True`.\n> Some models only accept static inputs. You should explicitly specify the input shape for these models by `input_shape=[*, *, 3]`.\n\n## Advanced Usage\n\n- `kimm.utils.get_reparameterized_model`\n- `kimm.export.export_tflite`\n- `kimm.export.export_onnx`\n\n```python\nimport keras\nimport kimm\nimport numpy as np\n\n# Initialize a reparameterizable model\nx = keras.random.uniform([1, 224, 224, 3]) * 255.0\nmodel = kimm.models.MobileOneS0()\ny = model.predict(x)\n\n# Get reparameterized model by kimm.utils.get_reparameterized_model\nreparameterized_model = kimm.utils.get_reparameterized_model(model)\ny2 = reparameterized_model.predict(x)\nnp.testing.assert_allclose(\n    keras.ops.convert_to_numpy(y), keras.ops.convert_to_numpy(y2), atol=1e-3\n)\n\n# Export model to tflite format\nkimm.export.export_tflite(reparameterized_model, 224, \"model.tflite\")\n\n# Export model to onnx format\n# Note: must be \"channels_first\" format before the exporting\n# kimm.export.export_onnx(reparameterized_model, 224, \"model.onnx\")\n```\n\n## Installation\n\n```bash\npip install keras kimm -U\n```\n\n> [!IMPORTANT]  \n> Make sure you have installed a supported backend for Keras.\n\n## Quickstart\n\n### Image classification using the model pretrained on ImageNet\n\n[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/14WxYgVjlwCIO9MwqPYW-dskbTL2UHsVN?usp=sharing)\n\nUsing `kimm.models.VisionTransformerTiny16`:\n\n<div align=\"center\">\n<img width=\"50%\" src=\"https://github.com/james77777778/keras-image-models/assets/20734616/7caa4e5e-8561-425b-aaf2-6ae44ac3ea00\" alt=\"african_elephant\">\n</div>\n\n```bash\n1/1 \u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501 1s 1s/step\nPredicted: [('n02504458', 'African_elephant', 0.6895825), ('n01871265', 'tusker', 0.17934209), ('n02504013', 'Indian_elephant', 0.12927249)]\n```\n\n### An end-to-end example: fine-tuning an image classification model on a cats vs. dogs dataset\n\n[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1IbqfqG2NKEOKvBOznIPT1kjOdVPfThmd?usp=sharing)\n\nUsing `kimm.models.EfficientNetLiteB0`:\n\n<div align=\"center\">\n<img width=\"75%\" src=\"https://github.com/james77777778/kimm/assets/20734616/cbfc0773-a3fa-407d-be9a-fba4f19da6d3\" alt=\"kimm_prediction_0\">\n\n<img width=\"75%\" src=\"https://github.com/james77777778/kimm/assets/20734616/2eac0831-75bb-4790-a3af-412c3e09cf8f\" alt=\"kimm_prediction_1\">\n</div>\n\nReference: [Transfer learning & fine-tuning (keras.io)](https://keras.io/guides/transfer_learning/#an-endtoend-example-finetuning-an-image-classification-model-on-a-cats-vs-dogs-dataset)\n\n### Grad-CAM\n\n[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/drive/1h25VmsYDOLL6BNbRPEVOh1arIgcEoHu6?usp=sharing)\n\nUsing `kimm.models.MobileViTS`:\n\n<div align=\"center\">\n<img width=\"50%\" src=\"https://github.com/james77777778/kimm/assets/20734616/cb5022a3-aaea-4324-a9cd-3d2e63a0a6b2\" alt=\"grad_cam\">\n</div>\n\nReference: [Grad-CAM class activation visualization (keras.io)](https://keras.io/examples/vision/grad_cam/)\n\n## Model Zoo\n\n|Model|Paper|Weights are ported from|API (`kimm.models.*`)|\n|-|-|-|-|\n|ConvMixer|[ICLR 2022 Submission](https://arxiv.org/abs/2201.09792)|`timm`|`ConvMixer*`|\n|ConvNeXt|[CVPR 2022](https://arxiv.org/abs/2201.03545)|`timm`|`ConvNeXt*`|\n|DenseNet|[CVPR 2017](https://arxiv.org/abs/1608.06993)|`timm`|`DenseNet*`|\n|EfficientNet|[ICML 2019](https://arxiv.org/abs/1905.11946)|`timm`|`EfficientNet*`|\n|EfficientNetLite|[ICML 2019](https://arxiv.org/abs/1905.11946)|`timm`|`EfficientNetLite*`|\n|EfficientNetV2|[ICML 2021](https://arxiv.org/abs/2104.00298)|`timm`|`EfficientNetV2*`|\n|GhostNet|[CVPR 2020](https://arxiv.org/abs/1911.11907)|`timm`|`GhostNet*`|\n|GhostNetV2|[NeurIPS 2022](https://arxiv.org/abs/2211.12905)|`timm`|`GhostNetV2*`|\n|GhostNetV3|[arXiv 2024](https://arxiv.org/abs/2404.11202)|`github`|`GhostNetV3*`|\n|HGNet||`timm`|`HGNet*`|\n|HGNetV2||`timm`|`HGNetV2*`|\n|InceptionNeXt|[CVPR 2024](https://arxiv.org/abs/2303.16900)|`timm`|`InceptionNeXt*`|\n|InceptionV3|[CVPR 2016](https://arxiv.org/abs/1512.00567)|`timm`|`InceptionV3`|\n|LCNet|[arXiv 2021](https://arxiv.org/abs/2109.15099)|`timm`|`LCNet*`|\n|MobileNetV2|[CVPR 2018](https://arxiv.org/abs/1801.04381)|`timm`|`MobileNetV2*`|\n|MobileNetV3|[ICCV 2019](https://arxiv.org/abs/1905.02244)|`timm`|`MobileNetV3*`|\n|MobileOne|[CVPR 2023](https://arxiv.org/abs/2206.04040)|`timm`|`MobileOne*`|\n|MobileViT|[ICLR 2022](https://arxiv.org/abs/2110.02178)|`timm`|`MobileViT*`|\n|MobileViTV2|[arXiv 2022](https://arxiv.org/abs/2206.02680)|`timm`|`MobileViTV2*`|\n|RegNet|[CVPR 2020](https://arxiv.org/abs/2003.13678)|`timm`|`RegNet*`|\n|RepVGG|[CVPR 2021](https://arxiv.org/abs/2101.03697)|`timm`|`RepVGG*`|\n|ResNet|[CVPR 2015](https://arxiv.org/abs/1512.03385)|`timm`|`ResNet*`|\n|TinyNet|[NeurIPS 2020](https://arxiv.org/abs/2010.14819)|`timm`|`TinyNet*`|\n|VGG|[ICLR 2015](https://arxiv.org/abs/1409.1556)|`timm`|`VGG*`|\n|ViT|[ICLR 2021](https://arxiv.org/abs/2010.11929)|`timm`|`VisionTransformer*`|\n|Xception|[CVPR 2017](https://arxiv.org/abs/1610.02357)|`keras`|`Xception`|\n\nThe export scripts can be found in `tools/convert_*.py`.\n\n## License\n\nPlease refer to [timm](https://github.com/huggingface/pytorch-image-models#licenses) as this project is built upon it.\n\n### `kimm` Code\n\nThe code here is licensed Apache 2.0.\n\n## Acknowledgements\n\nThanks for these awesome projects that were used in `kimm`\n\n- [https://github.com/keras-team/keras](https://github.com/keras-team/keras)\n- [https://github.com/huggingface/pytorch-image-models](https://github.com/huggingface/pytorch-image-models)\n\n## Citing\n\n### BibTeX\n\n```bash\n@misc{rw2019timm,\n  author = {Ross Wightman},\n  title = {PyTorch Image Models},\n  year = {2019},\n  publisher = {GitHub},\n  journal = {GitHub repository},\n  doi = {10.5281/zenodo.4414861},\n  howpublished = {\\url{https://github.com/rwightman/pytorch-image-models}}\n}\n```\n\n```bash\n@misc{hy2024kimm,\n  author = {Hongyu Chiu},\n  title = {Keras Image Models},\n  year = {2024},\n  publisher = {GitHub},\n  journal = {GitHub repository},\n  howpublished = {\\url{https://github.com/james77777778/kimm}}\n}\n```\n",
    "bugtrack_url": null,
    "license": "Apache License 2.0",
    "summary": "A Keras model zoo with pretrained weights.",
    "version": "0.2.5",
    "project_urls": {
        "Documentation": "https://github.com/james77777778/keras-image-models",
        "Homepage": "https://github.com/james77777778/keras-image-models",
        "Issues": "https://github.com/james77777778/keras-image-models/issues",
        "Repository": "https://github.com/james77777778/keras-image-models.git"
    },
    "split_keywords": [
        "deep-learning",
        " model-zoo",
        " keras",
        " jax",
        " tensorflow",
        " torch",
        " imagenet",
        " pretrained-weights",
        " timm"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "01d66e92201aa07ce13e7453537b5df141ad020b5153b956c7b5e6c1da21361b",
                "md5": "5958645501092871581da24aa3342a51",
                "sha256": "a3cdb835e572937c3731376a2af035077ed025de699f70ef5d1e61436e2d9d47"
            },
            "downloads": -1,
            "filename": "kimm-0.2.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5958645501092871581da24aa3342a51",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 123387,
            "upload_time": "2024-10-20T13:53:18",
            "upload_time_iso_8601": "2024-10-20T13:53:18.516719Z",
            "url": "https://files.pythonhosted.org/packages/01/d6/6e92201aa07ce13e7453537b5df141ad020b5153b956c7b5e6c1da21361b/kimm-0.2.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "319e4552f921b25f15f170f21ebfbd695891100b7062282e5156ee95edb99f46",
                "md5": "7c0141171840aa16a4a208e5dba72812",
                "sha256": "fa2446e6fd8586a6c831a0e05c133004cdcb274e6c5d42b10c89c0e620b846fd"
            },
            "downloads": -1,
            "filename": "kimm-0.2.5.tar.gz",
            "has_sig": false,
            "md5_digest": "7c0141171840aa16a4a208e5dba72812",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 75053,
            "upload_time": "2024-10-20T13:53:19",
            "upload_time_iso_8601": "2024-10-20T13:53:19.651778Z",
            "url": "https://files.pythonhosted.org/packages/31/9e/4552f921b25f15f170f21ebfbd695891100b7062282e5156ee95edb99f46/kimm-0.2.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-20 13:53:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "james77777778",
    "github_project": "keras-image-models",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "tensorflow-cpu",
            "specs": [
                [
                    ">=",
                    "2.16.1"
                ]
            ]
        },
        {
            "name": "torch",
            "specs": [
                [
                    ">=",
                    "2.1.0"
                ]
            ]
        },
        {
            "name": "torchvision",
            "specs": [
                [
                    ">=",
                    "0.16.0"
                ]
            ]
        },
        {
            "name": "jax",
            "specs": []
        },
        {
            "name": "keras",
            "specs": [
                [
                    ">=",
                    "3.3.0"
                ]
            ]
        }
    ],
    "lcname": "kimm"
}
        
Elapsed time: 0.52915s