This project aims to identify fake job postings using Machine Learning and Natural Language Processing (NLP).
Fake job posts can mislead job seekers. The goal is to classify job postings as real or fake based on their textual content.
The dataset contains job postings with details such as title, company profile, job description, requirements, and a label indicating whether the job is fraudulent or not.
- Data Cleaning and Exploratory Data Analysis
- Text Preprocessing (lowercasing, removing symbols, stopwords)
- Feature Extraction using TF-IDF
- Model Training using Logistic Regression
- Handling class imbalance using class_weight
- Model Evaluation using Accuracy, Recall, and Confusion Matrix
- Model comparison with XGBoost
Logistic Regression with class_weight="balanced"
This model was selected because it provides high recall for detecting fake jobs.
- Accuracy: ~96%
- Recall for Fake Jobs: ~89%
- notebooks/ : Jupyter notebooks (EDA and model training)
- data/ : Dataset files
- model/ : Saved ML model and TF-IDF vectorizer
- requirements.txt : Project dependencies
- Python
- Pandas, NumPy
- Scikit-learn
- NLTK
- XGBoost