Soft Computing
Project Abstract
Resume Ranker and
Analyser
Shikhar Srivastav [22075107]
Ashish [22075014]
Introduction
This project implements a
Neuro-Fuzzy Resume Analyser to
overcome the limitations of exact
string matching in recruitment
systems. We utilize a
Transformer-based Neural Network
to convert job descriptions and
resumes into vector embeddings,
allowing the system to calculate
semantic similarity (meaning)
rather than just counting
keywords. These scores are then
fed into a Fuzzy Inference System,
which applies rule-based logic to
handle the imprecision inherent in
evaluating human skills. The
result is an automated pipeline
that ranks candidates based on
conceptual fit, combining the
learning power of deep learning
with the decision-making
capability of fuzzy logic.
Workflow
1. Input Phase
● Ingestion: The system accepts a Job Description (JD) string and a
directory of resume files (PDF/DOCX).
● Preprocessing: Both the JD and resumes undergo text cleaning:
lowercasing, stop-word removal, and tokenization.
2. Neural Network Branch (Semantic Analysis)
● Vectorization: A pre-trained Transformer model (e.g., BERT or
SBERT) converts the cleaned JD and resume text into dense vector
embeddings.
● Similarity Calculation: The system computes the Cosine Similarity
between the JD vector and each resume vector.
● Output: A normalized Semantic Score (0 to 1) indicating
contextual relevance.
3. Heuristic Branch (Keyword Analysis)
● Extraction: Key technical skills and requirements are extracted
from the JD.
● Matching: The system scans each resume for these specific terms.
● Output: A Keyword Score (Integer) representing the raw count of
matched hard skills.
4. Fuzzy Inference System (Decision Engine)
● Fuzzification: The precise Semantic Score and Keyword Score are
mapped to linguistic variables (e.g., Low, Medium, High) using
membership functions.
● Rule Evaluation: An inference engine applies IF-THEN rules (e.g.,
IF Semantic is High AND Keywords are Medium THEN Suitability is
Excellent).
● Defuzzification: The aggregated fuzzy result is converted back
into a single crisp value (0–100) using the Centroid method.
5. Ranking & Output
● Sorting: Candidates are sorted by their final defuzzified score.
● Visualization: The system displays a ranked table showing the
candidate name, match percentage, and suitability category.