Added an introduction and purpose section for GPC Encoder, outlining limitations of common encoding methods and the advantages of GPC Encoder.
32 lines
1.1 KiB
Markdown
32 lines
1.1 KiB
Markdown
# GPC Encoder (Geometry Preserving Category Encoder)
|
|
|
|
## Introduction & Purpose
|
|
|
|
In ML/DL preprocessing, categorical data is commonly encoded using **one-hot**, **label**, or **target mean encoding**, each of which has clear limitations:
|
|
|
|
- **One-Hot Encoding**
|
|
- Causes a rapid increase in dimensionality for high-cardinality features
|
|
- Increases model complexity and memory usage
|
|
|
|
- **Label Encoding**
|
|
- Introduces artificial ordinal relationships between categories
|
|
- Can mislead linear or distance-based models
|
|
|
|
- **Target Mean Encoding**
|
|
- Prone to **data leakage**, as global target statistics influence encoding
|
|
- Unstable for rare categories or small datasets, leading to bias
|
|
|
|
The purpose of **GPC Encoder** is to address all of these issues by designing an encoding method that:
|
|
|
|
1. Does **not impose any ordering** on categories
|
|
2. Does **not drastically increase dimensionality**
|
|
3. **Avoids data leakage** by relying only on training data statistics
|
|
|
|
---
|
|
|
|
## Requirements
|
|
|
|
- **Python 3.11.4**
|
|
- See `requirements.txt` for full dependency details
|
|
|