This project implements an NLP-based Resume Screening System that automates the process of analyzing and ranking resumes based on a given job description. The system extracts relevant skills, calculates similarity scores, ranks candidates by job relevance, and identifies missing skills to assist recruiters in making data-driven hiring decisions.
The objective of this project is to:
Automate resume screening
Compare resumes with job descriptions
Rank candidates based on relevance
Identify missing or required skills
Reduce manual recruitment effort
Text Preprocessing (Cleaning, Stopword Removal)
Tokenization
TF-IDF Vectorization
Cosine Similarity
Keyword-based Skill Extraction
Candidate Ranking based on similarity score
Resume text is cleaned and preprocessed.
A job description is defined.
TF-IDF converts text into numerical vectors.
Cosine similarity calculates match scores.
Candidates are ranked from highest to lowest relevance.
Missing skills are identified for each candidate.
The system successfully:
Ranked candidates based on job relevance.
Identified key skills present in each resume.
Highlighted missing required skills.
Provided explainable match scores for recruiters.
This system helps:
Speed up resume screening
Improve hiring consistency
Reduce recruiter workload
Support data-driven hiring decisions
Python
Pandas
NumPy
NLTK
Scikit-learn
Matplotlib
This project demonstrates how Natural Language Processing and Machine Learning techniques can be applied to solve real-world recruitment challenges. By automating resume evaluation and ranking, the system enhances efficiency and improves the overall hiring process.