Spaces:
Sleeping
Sleeping
Florian
commited on
Commit
·
950b367
1
Parent(s):
af6c532
add readme
Browse files
readme.md
ADDED
@@ -0,0 +1,39 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Early Exit Computational Savings Demo
|
2 |
+
|
3 |
+
## Overview
|
4 |
+
|
5 |
+
This project demonstrates the concept of "early exiting" in deep learning models to save computational resources without significantly compromising on model performance. Early exit strategies allow a neural network to make predictions at intermediate layers for easy-to-classify instances, thus reducing the overall computation time and resources needed for inference. The application is built to run with Streamlit, offering an interactive web interface to explore the functionalities of the early exit model.
|
6 |
+
|
7 |
+
## Features
|
8 |
+
|
9 |
+
- **BranchyModel:** An implementation of a deep learning model with early exit points. This model architecture is designed to evaluate the performance and computational savings of using early exits.
|
10 |
+
- **Utility Functions:** A set of utilities to support the model's operation, including data preprocessing and performance evaluation metrics.
|
11 |
+
- **Streamlit Application:** A user-friendly web interface to interact with the model, visualize its performance, and understand the benefits of early exits.
|
12 |
+
|
13 |
+
## Getting Started
|
14 |
+
|
15 |
+
### Prerequisites
|
16 |
+
|
17 |
+
Ensure you have Python 3.x installed on your machine. You can install all the required dependencies via:
|
18 |
+
|
19 |
+
```bash
|
20 |
+
pip install -r requirements.txt
|
21 |
+
```
|
22 |
+
|
23 |
+
### Running the Application
|
24 |
+
|
25 |
+
To run the Streamlit application, execute the following command from the root of the project:
|
26 |
+
|
27 |
+
```bash
|
28 |
+
streamlit run app.py
|
29 |
+
```
|
30 |
+
|
31 |
+
The command will start a local web server and open the application in your default web browser, allowing you to interact with the BranchyModel and explore its features.
|
32 |
+
|
33 |
+
## Project Structure
|
34 |
+
|
35 |
+
- **app.py**: The main Streamlit application script.
|
36 |
+
- **requirements.txt**: Lists all the Python dependencies required by the project.
|
37 |
+
- **src/**: Contains the source code for the project.
|
38 |
+
- **BranchyModel.py**: Defines the BranchyModel with early exit points.
|
39 |
+
- **utils.py**: Provides utility functions for data processing and evaluation.
|