The Resume Screening System is an NLP-based Machine Learning project that automates the resume screening process by analyzing resumes, extracting technical skills, comparing them with a job description, calculating similarity scores using TF-IDF and Cosine Similarity, identifying missing skills, and ranking candidates based on job relevance.
This project was developed as part of Machine Learning Task 3 during my internship at Future Interns.
- Automate resume screening
- Extract technical skills using NLP
- Compare resumes with job descriptions
- Rank candidates based on similarity
- Identify missing skills
- Visualize candidate rankings
- ✅ Resume text preprocessing
- ✅ NLP-based skill extraction
- ✅ TF-IDF Vectorization
- ✅ Cosine Similarity Matching
- ✅ Candidate Ranking
- ✅ Skill Gap Analysis
- ✅ Data Visualization
- Python
- Pandas
- NumPy
- NLTK
- Scikit-learn
- Matplotlib
- Regular Expressions (re)
The dataset contains 2484 resumes from multiple domains, including:
- Information Technology
- HR
- Engineering
- Finance
- Banking
- Healthcare
- Sales
- Teacher
- Business Development
- And more...
Each record contains:
- Resume Text
- Resume HTML
- Resume Category
Resume Dataset
│
▼
Data Preprocessing
│
▼
Skill Extraction
│
▼
Job Description Processing
│
▼
TF-IDF Vectorization
│
▼
Cosine Similarity
│
▼
Resume Ranking
│
▼
Skill Gap Analysis
│
▼
Visualization
The system ranks resumes based on similarity with the job description.
Technical skills extracted automatically from resumes using NLP.
Visualization of similarity scores for the top-ranked candidates.
| Category | Match Score | Skills Extracted |
|---|---|---|
| Information Technology | 92.4% | Python, SQL, Git |
| Data Science | 88.7% | Python, Pandas, ML |
| HR | 63.2% | Communication, Excel |
FUTURE_ML_03
│
├── dataset/
│ ├── data/
│ └── Resume/
│ └── Resume.csv
│
├── notebook/
│ └── Resume_Screening.ipynb
│
├── screenshots/
│ ├── candidate_ranking.png
│ ├── skill_extraction.png
│ └── match_scores.png
│
├── requirements.txt
├── README.md
└── .gitignore
Clone the repository
git clone https://github.com/prav-tech/FUTURE_ML_03.gitGo to the project folder
cd FUTURE_ML_03Install dependencies
pip install -r requirements.txtRun Jupyter Notebook
jupyter notebookOpen
Resume_Screening.ipynb
- Streamlit Web Application
- Resume PDF Upload
- ATS Score Prediction
- Semantic Matching using BERT
- Resume Parser with spaCy
- Multi-Job Description Support
This project helped me gain hands-on experience in:
- Natural Language Processing (NLP)
- Resume Text Preprocessing
- TF-IDF Vectorization
- Cosine Similarity
- Feature Extraction
- Candidate Ranking
- Skill Gap Analysis
- Data Visualization
Pravallika B
B.Tech Computer Science & Engineering
Machine Learning Intern @ Future Interns
GitHub: https://github.com/prav-tech
This project was completed as part of the Machine Learning Internship Program at Future Interns.


