Skip to content

About

Production-grade Sequential Recommender System & NLP Pipeline for HrFlow.ai Behavioral Job Recommendation (ENS Challenge 164). Official Rank 15 Solution.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

HrFlow.ai Behavioral Job Recommendation & Sequential NLP

Python 3.11+ License: MIT ENS Leaderboard Official Leaderboard Rank Official Public Score

Production-grade Sequential Recommender System & NLP Pipeline for behavioral candidate job navigation and action classification (view vs apply), developed for the ENS Challenge Data 164 (HrFlow.ai).


🏆 Official Competition Leaderboard Results

This solution was submitted directly to the École Normale Supérieure (ENS) Challenge Data Platform under account ayanmitra.

📊 Official Leaderboard Highlights:

  • Official Submitted Public Score: 0.3144
  • Official Competition Rank: Rank 15 on Official ENS Leaderboard out of all registered participants!
  • Action Classification Accuracy: 84.07% (view vs apply)
  • Top-10 Retrieval Accuracy: 18.15% (Out of 21,917 distinct candidate job postings)

Leaderboard Comparison


📌 Executive Summary & Problem Context

HrFlow.ai powers talent data orchestration for global enterprise platforms. When candidates search for their ideal job, their journey follows a sequential path across job listings based on evolving preferences.

The Objective:

  1. Top-10 Sequential Job Recommendation: Predict an ordered top-10 list of candidate job IDs $[j_1, j_2, \dots, j_{10}]$ that a candidate will open next, out of 21,917 candidate job listings.
  2. Action Type Classification: Classify whether the candidate's next action will be an apply or a view.

📊 Visualizations & Model Performance

1. Action Classifier Confusion Matrix (84.07% Accuracy)

Predicting whether a candidate will submit an application or simply view a job based on navigation recency and apply frequency.

Action Confusion Matrix


2. Cross-Validation Metric Scores Across Folds

Out-of-fold weighted competition score progression across 5-fold session-based splits.

CV Folds Score


💡 Key Technical Innovations & Methodology

                       ┌────────────────────────────────────────────────────────┐
                       │     Candidate Session Sequences & Job Text JSON        │
                       └───────────────────────────┬────────────────────────────┘
                                                   │
                                                   ▼
                       ┌────────────────────────────────────────────────────────┐
                       │               Dual-Branch Feature Engine               │
                       │  ┌───────────────────────┐  ┌──────────────────────┐   │
                       │  │   NLP Text Encoder    │  │ Sequential Graph /   │   │
                       │  │  TF-IDF Vectorizer    │  │  Co-occurrence Matrix│   │
                       │  │  Job Title/Summary    │  │  Markov Transition P │   │
                       │  └───────────────────────┘  └──────────────────────┘   │
                       └───────────────────────────┬────────────────────────────┘
                                                   │
                                                   ▼
                       ┌────────────────────────────────────────────────────────┐
                       │        Multi-Stage Candidate Retrieval & Reranking      │
                       │  1. Candidate Generation: Top-100 via Item-CF + NLP Sim │
                       │  2. Action Classification: GBDT (LightGBM)             │
                       │  3. Reranking: Weighted Scoring Combination            │
                       └───────────────────────────┬────────────────────────────┘
                                                   │
                                                   ▼
                       ┌────────────────────────────────────────────────────────┐
                       │            Validated Submission (submission.csv)       │
                       └────────────────────────────────────────────────────────┘
  1. Sequential Markov Transition Matrix ($P(j_{t+1} | j_t)$):
    • Models direct state transitions between consecutive job interactions across 15,882 candidate sessions.
  2. Item Co-Occurrence Graph & Popularity Prior:
    • Captures global session item co-occurrences and smooths cold-start recommendations with global apply popularity.
  3. TF-IDF Semantic Text Encoder:
    • Vectorizes 21,917 job title and summary descriptions using 5,000-dimensional sublinear TF-IDF features and computes session-wide cosine similarity matching.
  4. GBDT Action Classifier:
    • LightGBM model predicting $P(\text{action} = \text{'apply'})$ with 84.07% out-of-fold accuracy.

🛠️ Repository Structure

HrFlow_project/
├── data/                                 # Raw CSVs & job_listings.json
├── assets/                               # Generated visual charts & figures
│   ├── leaderboard_comparison.png        # Official leaderboard rank comparison
│   ├── action_confusion_matrix.png       # Action classifier confusion matrix
│   └── cv_folds_score.png                # 5-fold CV score progression
├── src/                                  # Modular core Python library
│   ├── data.py                           # Session sequence & JSON text parser
│   ├── nlp_engine.py                     # TF-IDF vectorizer & cosine similarity matcher
│   ├── recommender.py                    # Markov transition matrix & candidate retriever
│   ├── models.py                         # LightGBM action classifier
│   └── utils.py                          # MRR@10, Top-10 Acc, & submission validator
├── train_and_evaluate.py                 # End-to-end training & CV evaluation runner
├── submit_solution.py                    # Automated ENS Challenge 164 submission script
├── requirements.txt                      # Project dependencies
└── README.md                             # Project documentation

🚀 Quickstart & Reproduction Guide

1. Clone & Set Up Environment

git clone https://github.com/am610/HrFlow_job_recommendation.git
cd HrFlow_job_recommendation

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

2. Run End-to-End Pipeline

python train_and_evaluate.py

3. Submit Solution to ENS Challenge Platform

python submit_solution.py

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

  • HrFlow.ai for providing the behavioral job recommendation dataset.
  • ENS Challenge Data platform for hosting the competition.

About

Production-grade Sequential Recommender System & NLP Pipeline for HrFlow.ai Behavioral Job Recommendation (ENS Challenge 164). Official Rank 15 Solution.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages