Metadata-Version: 2.4
Name: vision-des
Version: 0.0.2
Summary: Dynamic Ensemble Selection framework for image classification
Author-email: Firuz Juraev <fjuraev@g.skku.edu>
Project-URL: Homepage, https://github.com/InfoLab-SKKU/VisionDES
Project-URL: Issues, https://github.com/InfoLab-SKKU/VisionDES/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy
Requires-Dist: torch
Requires-Dist: torchvision
Requires-Dist: faiss-cpu
Requires-Dist: timm
Requires-Dist: scikit-learn
Requires-Dist: tqdm
Dynamic: license-file

# VisionDES
> Robust and Explainable Dynamic Vision Ensemble 

![Python](https://img.shields.io/badge/Python-3.8+-blue.svg)
![PyPI](https://img.shields.io/pypi/v/vision-des.svg)
![License](https://img.shields.io/badge/License-MIT-green.svg)

## Installation

```bash
pip install vision-des
```

## Quick Start

### Create a Pool of Models

```python
pool = [
    resnet50,
    efficientnet,
    convnext
]
```

### Initialize VisionDES

```python
from vision_des import VisionDES

des = VisionDES(
    dsel_dataset=dsel_dataset,
    pool=pool,
    device="cuda"
)
```

### Build the Retrieval Index

```python
des.fit()
```

### Predict

```python
prediction = des.predict(
    test_image,
    k=7
)
```

---

## Explainable Inference

```python
prediction = des.predict(
    test_image,
    k=7,
    explain=True
)
```
