Skip to content

Repository files navigation

Fake Job Posting Detection

Overview

Fake Job Posting Detection is a Machine Learning-based application that identifies whether a job posting is genuine or fraudulent using Natural Language Processing (NLP). The system analyzes job descriptions, preprocesses the text, converts it into numerical features using TF-IDF, and classifies the posting using multiple machine learning algorithms.


Features

  • Exploratory Data Analysis (EDA)
  • Data Cleaning and Preprocessing
  • Text Preprocessing using NLTK
  • TF-IDF Feature Extraction
  • Logistic Regression Model
  • Naive Bayes Model
  • Random Forest Model
  • Model Performance Comparison
  • Interactive Streamlit Web Application
  • Real-time Job Prediction

Project Structure

Fake_Job_Detection/
│
├── data/
├── eda/
├── model/
├── prediction/
├── preprocessing/
├── processed_data/
├── saved_model/
├── images/
├── app.py
├── main.py
├── README.md
├── requirements.txt
└── .gitignore

Technologies Used

  • Python
  • Pandas
  • Scikit-learn
  • NLTK
  • Imbalanced-learn (SMOTE)
  • Joblib
  • Streamlit

Machine Learning Models

The following models were trained and evaluated:

Model Accuracy
Logistic Regression 97.15%
Naive Bayes 96.78%
Random Forest 98.35%

Best Performing Model: Random Forest


Dataset

Dataset: Real or Fake Fake Job Posting Prediction

Source: https://www.kaggle.com/datasets/shivamb/real-or-fake-fake-jobposting-prediction


Application Preview

Home Page

Home Page


Genuine Job Prediction

Genuine Prediction


Fake Job Prediction

Fake Prediction


How to Run

  1. Clone the repository.

  2. Install the required packages:

pip install -r requirements.txt
  1. Run the Streamlit application:
streamlit run app.py
  1. Paste a job description into the text box.

  2. Click Detect Job to classify the posting.


Results

The application predicts whether a job posting is:

  • ✅ Genuine Job
  • 🚨 Fake Job

It also displays the prediction confidence score and the probability of each class.


Author

Anna Rose Joshy

About

Machine Learning project for detecting fake job postings using NLP, TF-IDF and Random Forest with a Streamlit web application.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages