1. CI Project Architecture Overview
This video presents a high-level explanation of the system architecture, including how Django, React, Celery, PostgreSQL, Nginx, and Waitress work together to support asynchronous machine learning workflows.
2. Full Feature Demonstration
In this video, I log in to the CI platform and demonstrate every feature: dataset upload, preprocessing, data augmentation (SMOTE), graph generation, ML training (GRU, SVM, Node2Vec), and downloading reports or models.
This platform was developed as part of a research effort supported by the National Science Foundation (NSF) under the Office of Advanced Cyberinfrastructure (OAC), aimed at providing researchers with seamless access to time series data preprocessing, augmentation, and machine learning workflows through a user-friendly web interface.
- Recipient Institution: Utah State University
- Award Number: 2305781
- Project Title: CRII: OAC: Cyberinfrastructure for Machine Learning on Multivariate Time Series Data and Functional Networks
- Award Period: October 1, 2022 – May 31, 2025 (estimated)
- Total Award Amount: $174,984.00
The platform, FlaPLeT (Flare Prediction by Learning from Time Series), is a modular web application designed for AI-based multivariate time series (MVTS) analysis and solar flare prediction.
The system architecture includes:
- Frontend: Built with React JS and styled using Material UI (MUI), enabling a clean, responsive, and component-based user interface.
- Backend: Developed using Django and served with Waitress, the backend handles routing, user sessions, RESTful APIs, and database interactions via Django's ORM.
- Asynchronous Processing: Long-running tasks such as preprocessing, augmentation, graph construction, and ML training are managed by Celery with Redis as the message broker.
- Web Server: NGINX serves static files, manages HTTPS traffic, and proxies API requests to the backend.
- Database: All data, including users, datasets, and results, are stored in a PostgreSQL database, ensuring reliability, transactional integrity, and scalability.
This architecture ensures seamless interaction between components while supporting scalable, real-time AI workflows.
The platform provides an end-to-end environment for working with multivariate time series (MVTS) data, tailored for solar flare prediction. It supports data upload, preprocessing, augmentation, graph-based transformation, and machine learning classification, all through an interactive web interface.
- Upload
.pkl
-format MVTS datasets (up to 25MB). - Missing value handling: mean imputation or sample removal.
- Normalization options: z-score or min-max scaling.
- Output: Processed dataset and downloadable summary report (data shape, label distribution, normalization stats).
- Supports SMOTE and TimeGAN techniques.
- Configurable parameters:
- SMOTE:
k_neighbors
- TimeGAN:
batch_size
,num_layers
,iteration
- SMOTE:
- Output: Augmented dataset and detailed report (class distribution before/after, technique used, runtime).
- Constructs graph-based datasets via Pearson correlation analysis.
- User-defined correlation threshold and max neighbors.
- Output: Graph (
.gpickle
), labels, and report (nodes, edges, label stats).
- GRU (for MVTS): customizable layers, hidden size, dropout, learning rate, batch size, epochs, and optimizer (
Adam
,SGD
). - SVM (for MVTS): kernel selection and regularization strength.
- Node2Vec + Logistic Regression (for graph data): embedding dimensions, walk length, window size, batch size, regularization penalty, solver, and iteration count.
- Output: Trained model and evaluation report (Accuracy, Precision, Recall, AUC, TSS, HSS, GS).
- All tasks run asynchronously and are tracked by status (
running
,completed
,failed
). - Users can view task metadata, download results, and manage completed tasks.
- Each task card displays title, description, status, hyperparameters, and relevant download buttons.
If you're working on a similar AI-based web application and are looking for guidance, collaboration, or have any questions, feel free to reach out.
📧 Contact: Sam EskandariNasab
✉️ Email: sameskandarinasab@gmail.com
This project is licensed under the MIT License.