Skip to content

About

Machine Learning based Salary Prediction web application using Python, Flask, and trained regression models.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

💰 Salary Prediction

A Machine Learning-based Salary Prediction Web Application that predicts an individual's expected salary based on factors such as gender, education, job role, location, and other relevant attributes.

The project uses Python, Flask, and Machine Learning to provide salary predictions through a simple and user-friendly web interface.

🚀 Features

  • Predict expected salary using machine learning
  • User-friendly web interface
  • Education-based salary prediction
  • Job role-based prediction
  • Location-based prediction
  • Gender-based prediction
  • Pre-trained machine learning model
  • Encoded categorical features
  • Flask-based web application
  • Responsive frontend using HTML and CSS

🛠️ Technologies Used

Programming Language

  • Python

Machine Learning

  • Scikit-learn
  • Pandas
  • NumPy
  • Machine Learning Regression

Backend

  • Flask

Frontend

  • HTML
  • CSS

Model Files

  • salary_model.pkl
  • education_encoder.pkl
  • gender_encoder.pkl
  • job_encoder.pkl
  • location_encoder.pkl

📁 Project Structure

salary_prediction/
│
├── app.py
├── train_model.py
│
├── salary_model.pkl
├── education_encoder.pkl
├── gender_encoder.pkl
├── job_encoder.pkl
├── location_encoder.pkl
│
├── salary_prediction_data.csv
│
├── static/
│   ├── style.css
│   └── images/
│
├── templates/
│   ├── home.html
│   ├── predict.html
│   └── about.html
│
└── .gitignore

⚙️ How It Works

  1. The user enters the required information through the web application.
  2. The application processes the input data.
  3. Categorical values are converted using trained encoders.
  4. The trained machine learning model receives the processed data.
  5. The model predicts the expected salary.
  6. The predicted salary is displayed to the user.

🧠 Machine Learning Model

The project uses a trained machine learning model to estimate salary based on the input features.

The trained model is stored in:

salary_model.pkl

Categorical variables are converted into numerical values using the following encoders:

education_encoder.pkl
gender_encoder.pkl
job_encoder.pkl
location_encoder.pkl

📊 Dataset

The project uses:

salary_prediction_data.csv

The dataset contains salary-related information used for training the machine learning model.

💻 Installation

Clone the repository:

git clone https://github.com/nischithapoojary11-ctrl/salary_prediction.git

Navigate to the project directory:

cd salary_prediction

Install the required Python packages:

pip install flask pandas numpy scikit-learn

▶️ Run the Application

Start the Flask application:

python app.py

The application will start on the local Flask server.

Open the URL displayed in the terminal in your web browser.

🔄 Train the Model

If you want to retrain the machine learning model using the dataset, run:

python train_model.py

This will generate/update the trained model files.

🎯 Use Cases

  • Salary estimation
  • Career planning
  • Job market analysis
  • Data science projects
  • Machine learning demonstrations
  • Educational purposes

🔮 Future Enhancements

  • Add more job roles and locations
  • Improve model accuracy
  • Add interactive salary charts
  • Add salary comparison by location
  • Add multiple machine learning algorithms
  • Deploy the application online
  • Add user authentication
  • Provide personalized career recommendations

👩‍💻 Author

Nischitha Poojary

Computer Science and Engineering Student

⭐ Project

If you find this project useful, consider giving the repository a ⭐ on GitHub.

About

Machine Learning based Salary Prediction web application using Python, Flask, and trained regression models.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages