Skip to content

alfa-echo-niner-ait/sdust-pilotcup-2025

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Air Quality Analysis, Prediction and Visualization of Major Chinese Cities

This project presents a complete pipeline for air quality forecasting, from data analysis to model training and interactive visualization. Developed for the SDUST Pioneer Intelligent Computing 2025 competition, it is organized into three major parts:

  • 📊 Data Analysis
  • 🧠 LSTM Model Training
  • 📈 Dash-based Web App

📁 Repository Structure

├── analysis/       # Data exploration and preprocessing scripts
├── model/          # LSTM model training and evaluation
├── app/            # Dash web app for PM2.5 prediction and visualization
├── README.md       # Project overview and instructions

1️⃣ Data Analysis

Located in the analysis/ folder.

  • Performs exploratory data analysis (EDA) on historical air quality data.
  • Generates plots and statistics for pollutants such as PM2.5, PM10, CO, SO₂, NO₂, and O₃.
  • Handles data cleaning and preparation before model training.

Highlights:

  • Outlier detection
  • Missing value handling
  • Feature correlation studies
  • Important event analysis

2️⃣ LSTM Model Training

Located in the model/ folder.

  • Implements a unified LSTM architecture using TensorFlow/Keras.
  • Trains the model to predict PM2.5 levels using various pollutant features.
  • Includes scaler serialization (using joblib) and model saving in both .h5 and .keras formats.
  • Ready for hyperparameter tuning.

3️⃣ Interactive Dash App

Located in the app/ folder.

  • Built with Plotly Dash for visualization and real-time inference.
  • Users can select dates, locations, and view predicted vs. actual PM2.5 levels.
  • Visualizes weather data from 2014 to 2025.

Features:

  • Visualize weather data
  • Interactive pollutant time series
  • Model prediction interface
  • Weather quality map
  • User-friendly dashboard

🚀 Getting Started

  1. Clone the repository:

    git clone https://github.com/alfa-echo-niner-ait/sdust-pilotcup-2025.git
    cd sdust-pilotcup-2025
  2. Create & activate the virtual environment: Here's a quick guide for creating and activating a Python virtual environment (.venv) on both Windows and Linux:

    Create Virtual Environment

    python -m venv .venv

    (Use python3 instead of python on Linux if needed.)

    Activate Virtual Environment Windows (CMD/PowerShell)

    :: CMD
    .\.venv\Scripts\activate
    
    # PowerShell
    .\.venv\Scripts\Activate.ps1

    Linux/macOS (Bash/Zsh)

    source .venv/bin/activate
  3. Install dependencies:

    • Each main folder (analysis/, model/, app/) contains its own requirements.txt.
    • Install as needed, for example:
      pip install -r analysis/requirements.txt
      pip install -r model/requirements.txt
      pip install -r app/requirements.txt
    • For users in China:
      pip install -r analysis/requirements.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
      pip install -r model/requirements.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
      pip install -r app/requirements.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
  4. Run Data Analysis:

  5. Train and test the Model:

    • Run and modify the Jupyther notebook in model/.
  6. Launch the Web App:

    • Start the Dash app from app/:
      python app/app.py

📽️ App Preview

App Preview

🧑‍💻 Authors

Team Name NEXUS
Team Members Ayub Ali Emon emon@sdust.edu.cn
Phonesamay Phouthavong phonesamay@sdust.edu.cn
Yu Jinling jlyu0201@163.com
Fu Wenting fuwenting04@163.com
Project Supervisor Jiehan Zhou jiehan.zhou@sdust.edu.cn

🔗 Member of CogTwins Lab

🏫 Shandong University of Science and Technology

📄 License

This project is licensed under the MIT License.

About

Developed for the SDUST Pioneer Intelligent Computing 2025 competition by Team NEXUS

Topics

Resources

License

Stars

Watchers

Forks