Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/priyanka7411/flight-price-prediction-and-customer-satisfaction-ml

This project predicts flight prices and customer satisfaction using machine learning models. It includes two Streamlit apps for real-time predictions, with MLflow integration for model tracking and performance monitoring.
https://github.com/priyanka7411/flight-price-prediction-and-customer-satisfaction-ml

accuracy-score analysis classification dataframe f1-score ipynb-jupyter-notebook machine-learning mlflow numpy pandas plo prediction python r2-score recall regression-models rmse-score seaborn

Last synced: 10 days ago
JSON representation

This project predicts flight prices and customer satisfaction using machine learning models. It includes two Streamlit apps for real-time predictions, with MLflow integration for model tracking and performance monitoring.

Awesome Lists containing this project

README

        

# Flight Price and Customer Satisfaction Prediction

This notebook contains two machine learning projects: **Flight Price Prediction** (Regression) and **Customer Satisfaction Prediction** (Classification). Both projects are designed to predict flight prices and customer satisfaction levels using various machine learning algorithms. The models are deployed using **Streamlit** and experiment tracking is managed using **MLflow**.

---

## Project Overview

### Project 1: **Flight Price Prediction (Regression)**

#### **Objective**:
Predict flight ticket prices based on multiple factors such as departure time, source, destination, and airline type.

#### **Tech Stack**:
- Python, Streamlit, Machine Learning, MLflow, Data Analysis

#### **Domain**:
Travel and Tourism

#### **Key Features**:
- Load and preprocess flight price data.
- Perform exploratory data analysis (EDA) to identify trends and correlations.
- Train regression models like **Linear Regression**, **Random Forest**, and **XGBoost**.
- Develop a **Streamlit** app to predict flight prices based on user input (e.g., route, time, and date).
- Use **MLflow** for tracking experiments and saving models.

---

### Project 2: **Customer Satisfaction Prediction (Classification)**

#### **Objective**:
Predict customer satisfaction levels based on features such as customer feedback, demographics, and service ratings.

#### **Tech Stack**:
- Python, Streamlit, Machine Learning, MLflow, Data Analysis

#### **Domain**:
Customer Experience

#### **Key Features**:
- Load and preprocess customer satisfaction data.
- Perform exploratory data analysis (EDA) to understand relationships between features.
- Train classification models like **Logistic Regression**, **Random Forest**, and **Gradient Boosting**.
- Develop a **Streamlit** app to predict customer satisfaction levels based on input features.
- Use **MLflow** for tracking experiments and saving models.

---

## Business Use Cases

### Flight Price Prediction:
- **For Travelers**: Help travelers plan trips by predicting flight prices based on preferences (route, time, etc.).
- **For Travel Agencies**: Assist in price optimization and marketing strategies.
- **For Businesses**: Enable businesses to budget for employee travel by forecasting ticket prices.
- **For Airlines**: Support airlines in identifying trends and optimizing pricing strategies.

---

### Customer Satisfaction Prediction:
- **For Airlines**: Enhance customer experience by predicting and addressing dissatisfaction.
- **For Businesses**: Provide actionable insights to improve services.
- **For Marketing**: Identify target customer groups for specific promotions.
- **For Management**: Support decision-making for customer retention strategies.

---

# How to Run the Streamlit App

### Install Dependencies:
First, install the required dependencies using the following command:

```bash
pip install -r requirements.txt

### Run the Streamlit App:
To run the Streamlit app, use the command below. This will launch a web interface where you can interact with both projects.

```bash
streamlit run app.py
```

# Key Features of the Streamlit App

## **Flight Price Prediction:**
- Users can input parameters like route, time, and date to get predicted flight prices.
- Displays visualizations of flight price trends.
- Uses regression models for price predictions.

## **Customer Satisfaction Prediction:**
- Users can input passenger features such as age, type of travel, and service ratings to predict satisfaction levels.
- Visualizes customer satisfaction trends.
- Uses classification models for satisfaction predictions.

---

## **MLflow Integration**
Both projects utilize **MLflow** to track and manage experiments, models, and metrics:

### **Experiment Tracking:**
- MLflow logs parameters, metrics (e.g., accuracy, RMSE), and artifacts (e.g., model files, visualizations).

### **Model Registry:**
- All trained models are saved and organized using **MLflow's model registry**.

---

# Project Deliverables

### **Python Scripts:**
- For data preprocessing, model training, and MLflow integration.

### **Cleaned Datasets:**
- Cleaned and processed CSV files containing flight price and customer satisfaction data.

### **Trained Models:**
- Regression and classification models trained and logged with MLflow.

### **Streamlit App:**
- Interactive app for data visualization and predictions, integrated with MLflow metadata.

### **Documentation:**
- Comprehensive documentation covering methodology, analysis, and insights.

---

# Project Evaluation Metrics

### **Data Preprocessing:**
- Completeness and accuracy of data cleaning and feature engineering.

### **Model Performance:**
- **Flight Price Prediction**: RMSE, R-squared.
- **Customer Satisfaction Prediction**: Accuracy, F1-score, confusion matrix.

### **Streamlit App:**
- Functionality, usability, and visual appeal.

### **MLflow Integration:**
- Effectiveness in tracking experiments and managing models.

---

# Requirements

- **Python 3.8+**

# Dataset Information

## **Flight Price Dataset**
- **Columns:**
- Airline, Date_of_Journey, Source, Destination, Route, Dep_Time, Arrival_Time, Duration, Total_Stops, Additional_Info.

## **Customer Satisfaction Dataset**
- **Columns:**
- Gender, Customer Type, Age, Type of Travel, Class, Flight Distance, Inflight Wifi Service, Seat Comfort, On-board Service, Cleanliness, Departure Delay, Arrival Delay, Satisfaction.

---

# License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.