This project focuses on predicting student placement and salary in campus recruitment using Random Forest classifiers. The goal is to help students and educational institutions understand the factors that influence placement success and expected salary.
- Overview
- Dataset
- Installation
- Project Structure
- Data Preprocessing
- Model Training
- Evaluation
- Results
- Contributing
- License
Campus placement is a crucial event for students and educational institutions. Predicting placement outcomes and potential salaries can help students prepare better and institutions improve their placement strategies. This project uses Random Forest classifiers to predict both placement probability and expected salary based on various student features.
The dataset used in this project includes student information such as:
- Academic performance (CGPA)
- Skills
- Weather the Candidate has done Intership
- Weather the Candidate has Participated in hackathons
- Other relevant features
The dataset contains features for predicting both placement status and salary.
To run this project locally, follow these steps:
-
Clone the repository: git clone https://github.com/charans2702/Placement_Prediction_Using_Machine-Learning.git
-
Install the required packages: pip install -r requirements.txt
static/
: Contains images and css filestemplates/
: Contains HTML filesapp.py
: Main Flask Appmodel.pkl
: Pickle file of predicting placement modelmodel1.pkl
: Pickle file of Salary Prediction modelPlacement_prediction_data.csv
: Placement Prediction dataPlacement_prediction.py
: Model for Placement Predictionpreprocessing.ipynb
: Jupyter Notebook for Data preprocessingrequirements.txt
: List of required Python packagessalary_prediction_data.csv
: Salary prediction datasalary_prediction.py
: Model for salary predictionREADME.md
: Project documentation
The data preprocessing steps include:
- Handling missing values
- Encoding categorical variables
- Feature scaling
- Feature selection
Two Random Forest classifiers are trained:
- Placement Prediction Model: Predicts whether a student will be placed
- Salary Prediction Model: Predicts the salary for placed students
The training process involves:
- Splitting the data into training and testing sets
- Initializing the Random Forest classifiers
- Training the models on the training set
- Fine-tuning hyperparameters using techniques like Grid Search or Random Search
The models' performance is evaluated using various metrics, including:
- Accuracy
- Precision
- Recall
- F1 Score
- Confusion Matrix
- Roc_Auc_Score
- Accuracy: 88.7%
- Precision: 0.93
- Recall: 0.86
- F1 Score: 0.90
- Roc_Auc_Score:0.94
CONFUSION MATRIX:
ROC CURVE:
FEATURE IMPORTANCE:
The trained models are deployed using a Flask web application. The app allows users to input student details and receive predictions for placement probability and expected salary.
Contributions are welcome! Please feel free to submit a Pull Request or open an Issue.
This project is licensed under the MIT License - see the LICENSE file for details.