A Natural Language Processing (NLP) project that compares Bidirectional RNNs and Transformer models to classify text as AI-generated or human-written. Developed as part of the Machine Learning for Data Analysis program under the Digital Egypt Youth initiative.
# AI vs Human: An NLP Project
This repository hosts the **AI vs Human** project, created as a capstone for the **Machine Learning for Data Analysis** track under the **Digital Egypt Youth** initiative. The project investigates two advanced Natural Language Processing (NLP) techniques to distinguish between text written by humans and that generated by AI.
## Project Summary
As AI-generated text becomes increasingly indistinguishable from human writing, the need for reliable detection methods grows. This project tackles that problem by implementing and comparing two key NLP strategies:
1. **Bidirectional Recurrent Neural Networks (BRNNs)**
2. **Transformer Models**
Two dedicated Jupyter Notebooks are provided, each showcasing the complete pipeline—from data preparation to model training and evaluation.
## Repository Structure
* `BRNNs.ipynb`: Demonstrates the classification approach using Bidirectional Recurrent Neural Networks.
* `Transformers.ipynb`: Explores the Transformer-based model for identifying AI vs human-written text.
## Highlights
* **Text Preprocessing**: Comprehensive text cleaning and formatting to support model input requirements.
* **Training & Evaluation**: Step-by-step model training with detailed evaluation metrics for comparison.
* **Performance Visualization**: Graphs and plots illustrating model performance (e.g., accuracy, loss).
* **Modular Codebase**: Clean, well-documented code to support easy customization and learning.
## Setup & Dependencies
To run the notebooks and reproduce the results, ensure the following tools and libraries are installed:
* Python 3.7 or higher
* Jupyter Notebook
* Essential Python Libraries:
* TensorFlow or PyTorch
* Hugging Face Transformers
* NumPy
* Pandas
* Matplotlib or Seaborn