This project focuses on detecting fraudulent job postings using Natural Language Processing (NLP) and machine learning classification models.
By analyzing textual information from job advertisements, the model learns to distinguish between real and fake job postings.
The project covers the full machine learning pipeline, including data preprocessing, feature extraction, model training, and evaluation.
The dataset contains job posting information such as:
- Company profile
- Job description
- Requirements
- Benefits
- Fraud label (real or fake)
Multiple text fields are combined to form a single textual input for the model.
- Missing values are handled
- Relevant text fields are merged into a single feature
- English stop words are removed
- TF-IDF (Term Frequency–Inverse Document Frequency) is used
- Unigrams and bigrams are included to capture meaningful phrases
- Feature size is limited to control model complexity
- Logistic Regression classifier
- Trained on TF-IDF features
- Train / validation split
- Performance evaluated using ROC-AUC score
The model demonstrates strong performance in distinguishing fraudulent job postings by leveraging textual patterns and discriminative keywords commonly found in fake advertisements.
- Clone the repository
git clone https://github.com/YOUR_USERNAME/Fake-Job-Postings-Prediction.git
cd Fake-Job-Postings-Prediction
python -m venv venv # create venv (ONCE)
source venv/bin/activate # activate (EVERY SESSION)
pip install pandas numpy scikit-learn
python src/train.py