Skip to content

ruthviksharma-d/Talent-Lens-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

5 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ€– ML-Powered Resume Analyzer

Intelligent Resume Classification & Analysis using Machine Learning and NLP

Automatically classify resumes into job categories, extract meaningful insights, and provide actionable improvement suggestions using Natural Language Processing (NLP), TF-IDF, Sentence Transformers, and Machine Learning.

Python Machine Learning NLP Scikit-Learn Sentence Transformers License


πŸ“– Table of Contents

  • Overview
  • Features
  • Demo Workflow
  • Project Architecture
  • Machine Learning Pipeline
  • Tech Stack
  • Folder Structure
  • Installation
  • Dataset
  • Usage
  • Configuration
  • Model Details
  • Resume Advice Engine
  • Future Improvements
  • Contributing
  • License
  • Author

πŸ“Œ Overview

Recruiters receive hundreds of resumes every day.

Manually sorting them into suitable job categories is time-consuming and inconsistent.

This project automates that process using Natural Language Processing (NLP) and Machine Learning.

The system:

  • Converts resumes into readable text
  • Cleans and preprocesses the content
  • Extracts textual features
  • Classifies resumes into job domains
  • Generates personalized improvement suggestions

Everything runs locally, making the project privacy-friendly since resumes never leave your machine.


✨ Features

βœ… Resume PDF to Text Conversion

βœ… CSV Resume Dataset Processing

βœ… Text Cleaning & NLP Preprocessing

βœ… TF-IDF Feature Extraction

βœ… Logistic Regression Classifier

βœ… Sentence Transformer Embeddings

βœ… Resume Category Prediction

βœ… Resume Quality Analysis

βœ… Keyword Suggestions

βœ… Missing Section Detection

βœ… CLI-Based Workflow

βœ… YAML Configuration Support


🎯 Demo Workflow

                Resume
                   β”‚
                   β–Ό
          PDF / CSV Conversion
                   β”‚
                   β–Ό
          Text Preprocessing
                   β”‚
                   β–Ό
          Feature Extraction
         (TF-IDF / Embeddings)
                   β”‚
                   β–Ό
      Machine Learning Classifier
                   β”‚
                   β–Ό
     Resume Category Prediction
                   β”‚
                   β–Ό
        Resume Advice Generator

πŸ— Project Architecture

                 +-------------------+
                 |   Resume Dataset  |
                 +---------+---------+
                           |
                           β–Ό
                  Resume Converter
                           |
                           β–Ό
                 Text Preprocessing
                           |
                           β–Ό
               Feature Engineering
          +-----------------------------+
          | TF-IDF | SentenceTransformer |
          +-----------------------------+
                           |
                           β–Ό
              Logistic Regression Model
                           |
                           β–Ό
                  Resume Prediction
                           |
                           β–Ό
                 Resume Advice Engine

🧠 Machine Learning Pipeline

1. Data Collection

Training Dataset:

  • Updated Resume Dataset (CSV)

Testing Dataset:

  • Resume PDFs

2. Data Cleaning

The preprocessing stage performs:

  • Lowercase conversion
  • URL removal
  • HTML tag removal
  • Special character removal
  • Stopword removal
  • Whitespace normalization

3. Feature Engineering

TF-IDF

Converts textual information into numerical vectors while preserving important word frequencies.

Sentence Transformers

Uses pre-trained embeddings for richer semantic understanding of resume content.

Current embedding model:

all-MiniLM-L6-v2

4. Classification

Current baseline model:

  • Logistic Regression

Future planned models:

  • SVM
  • Random Forest
  • XGBoost
  • LightGBM
  • Neural Networks

πŸ’» Tech Stack

Programming

  • Python

Machine Learning

  • Scikit-learn
  • Sentence Transformers

NLP

  • NLTK
  • Regular Expressions

Data Processing

  • Pandas
  • NumPy

File Handling

  • PyPDF2
  • PDFPlumber

Configuration

  • YAML

Example output plot: ./assets/Logistic_Regression_Test.png


πŸ“‚ Folder Structure

ML-powered_resume_analyser/

β”‚
β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ raw/
β”‚   β”œβ”€β”€ processed/
β”‚   β”œβ”€β”€ test/
β”‚
β”œβ”€β”€ models/
β”‚
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ convert_dataset.py
β”‚   β”œβ”€β”€ convert_test_data.py
β”‚   β”œβ”€β”€ train_classifier.py
β”‚   β”œβ”€β”€ predict.py
β”‚   β”œβ”€β”€ advice.py
β”‚
β”œβ”€β”€ assets/
β”‚
β”œβ”€β”€ config.yaml
β”œβ”€β”€ requirements.txt
└── README.md

βš™ Installation

Clone Repository

git clone https://github.com/yourusername/ML-powered_resume_analyser.git

cd ML-powered_resume_analyser

Create Virtual Environment

Windows

python -m venv .venv

.venv\Scripts\activate

macOS/Linux

python3 -m venv .venv

source .venv/bin/activate

Install Dependencies

pip install -r requirements.txt

Compatibility Fix

pip install numpy==1.26.0 --force-reinstall

πŸ“Š Dataset

Training Dataset

UpdatedResumeDataSet.csv

Testing

Resume PDFs

Recommended structure

data/

raw/
processed/
test/

πŸš€ Usage

Convert CSV Dataset

python src/convert_dataset.py \
--csv data/raw/UpdatedResumeDataSet.csv \
--outdir data/processed/converted

Convert Resume PDFs

python src/convert_test_data.py \
--pdfdir data/test \
--outdir data/processed/converted_test

Train Model

python src/train_classifier.py

Predict Resume Category

python src/predict.py --input resume.txt

Generate Resume Advice

python src/advice.py --input resume.txt

βš™ Configuration

model:

  embedding: all-MiniLM-L6-v2

  tfidf_max_features: 1000

  advice_threshold: 0.5

πŸ“ˆ Model Details

Component Algorithm
Feature Extraction TF-IDF
Embeddings Sentence Transformers
Classifier Logistic Regression
Language English
Prediction Resume Category

πŸ’‘ Resume Advice Engine

The advice module currently evaluates:

  • Resume Length
  • Missing Keywords
  • Missing Sections
  • Soft Skills
  • Resume Structure
  • Role Match
  • Improvement Suggestions

Example Output

Predicted Category

β†’ Data Scientist

Suggestions

βœ” Add Projects section

βœ” Include SQL keyword

βœ” Mention TensorFlow experience

βœ” Improve resume summary

βœ” Add measurable achievements

πŸ“Έ Screenshots

Add screenshots here after running the project.

Example:

assets/

home.png

prediction.png

advice.png

training.png

Then include

![Prediction](assets/prediction.png)

![Advice](assets/advice.png)

πŸ“Š Future Improvements

  • Web Interface using Flask
  • Streamlit Dashboard
  • Deep Learning Classifier
  • Resume Ranking
  • Skill Extraction
  • ATS Score Prediction
  • GPT-powered Resume Feedback
  • Docker Support
  • REST API
  • Multi-language Resume Support

🀝 Contributing

Contributions are welcome.

To contribute:

  1. Fork the repository

  2. Create a new branch

git checkout -b feature-name
  1. Commit changes
git commit -m "Added feature"
  1. Push
git push origin feature-name
  1. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License.


πŸ‘¨β€πŸ’» Author

Ruthvik Sharma

AI & Machine Learning Engineer

GitHub: https://github.com/ruthviksharma-d

LinkedIn: https://linkedin.com/in/ruthvik-sharma


⭐ If you found this project useful, consider giving it a star!

About

Talent Lens AI is an intelligent recruitment assistant that goes beyond keyword matching to understand candidate profiles, analyze job requirements, and deliver transparent, AI-powered hiring recommendations.

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages