Skip to content

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.

License

Notifications You must be signed in to change notification settings

priyanka7411/Flight-Price-Prediction-and-Customer-Satisfaction-ML

Repository files navigation

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:

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.

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.

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 file for details.

About

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.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published