Skip to content

SOUHAIB-IA/CNN-Web-APP

Repository files navigation

Neural Network Training Web Application

A Flask and TensorFlow-powered project for interactive neural network training.

Table of Contents


Introduction

This project is a web application developed with Flask for the frontend and TensorFlow as the backend to train neural networks interactively. Users can upload datasets, configure model parameters, launch training, and visualize results with real-time graphs. The application offers flexibility for users to experiment with various architectures and hyperparameters.


Features

  • Data Upload: Supports CSV files and image datasets.
  • Model Configuration:
    • Set the number and type of layers (Dense, Convolutional, etc.).
    • Choose activation functions, learning rate, and other hyperparameters.
  • Training Visualization: Real-time display of loss and accuracy curves using dynamic plots.
  • Model Download: Download trained models for future use.
  • Simple and Intuitive UI: Built with HTML, CSS, and JavaScript for smooth user experience.

Technologies Used

  • Backend: Flask, TensorFlow
  • Frontend: HTML, CSS, JavaScript, Bootstrap (optional for styling)
  • Visualization: Matplotlib, Plotly
  • Data Handling: Pandas

Project Structure

project-root/  
│  
├── app.py             # Main Flask application  
├── templates/         # HTML templates for the UI  
├── static/            # CSS, JS, and other static files  
├── models/            # Saved trained models  
├── data/              # Uploaded datasets  
├── requirements.txt   # Project dependencies  
└── README.md          # Documentation

Setup and Installation

  1. Clone the repository:

    git clone https://github.com/SOUHAIB-IA/CNN-Web-APP.git
    cd neural-network-training-app  
  2. Create a virtual environment:

    python -m venv venv  
    source venv/bin/activate  # On Windows: venv\Scripts\activate  
  3. Install dependencies:

    pip install -r requirements.txt  
  4. Run the application:

    python app.py  

    The application will be available at http://127.0.0.1:5000.


How to Use

  1. Upload Data:

    • Use the "Upload Data" button to upload CSV or image datasets.
  2. Configure the Neural Network:

    • Specify the number of layers, types of layers, activation functions, learning rate, etc.
  3. Start Training:

    • Click on "Start Training" to begin the process.
    • Monitor the training progress through real-time graphs displaying loss and accuracy.
  4. Download Model:

    • After training completes, download the model as a .h5 file for further use.

Screenshots

image


Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch:
    git checkout -b feature-branch  
  3. Make your changes and commit:
    git commit -m "Added new feature"  
  4. Push to the branch:
    git push origin feature-branch  
  5. Open a pull request on GitHub.

License

This project is licensed under the ENSIASD License -.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •