Beginner-friendly AutoML library for tabular data
Project description
Here you go bro — ONE single copy-paste README file.
Just create README.md and paste everything below. 🚀
# ezml 🚀
**Beginner-Friendly AutoML for Tabular Data**
ezml is a lightweight, easy-to-use AutoML library that lets anyone train machine learning models in just a few lines of code — no deep ML knowledge required.
Built for students, developers, analysts, and beginners who want fast, reliable predictions without complex pipelines.
---
## ✨ Key Features
- Smart task detection (classification vs regression)
- Fast vs Best model modes
- Automatic preprocessing (missing values + encoding)
- One-line training helper
- Dict-based safe prediction
- Built-in save & load support
- Lightweight and beginner-friendly
- Modular and extensible design
---
## Installation
Clone the repository and install dependencies:
```bash
pip install -r requirements.txt
Optional (recommended for best mode):
pip install lightgbm
⚡ Quick Start (Recommended)
One-line training
from ezml import train_model
model = train_model("data.csv", target="price")
prediction = model.predict([[3000, 3, 2, 5]])
🔧 Advanced Usage
Using AutoModel directly
from ezml import AutoModel
model = AutoModel(mode="best") # fast | best
model.train("data.csv", target="price")
preds = model.predict([[3000, 3, 2, 5]])
⚡ Model Modes
ezml provides two performance modes to balance speed and accuracy.
🚀 fast (default)
Model: RandomForest
Best for: small to medium datasets, quick and stable baseline
Why use it: fast training, very robust, beginner-safe
🔥 best
Model: LightGBM
Best for: larger datasets and higher accuracy needs
Why use it: more powerful learning, better performance on complex tabular data
💡 ezml automatically falls back to RandomForest if LightGBM is not installed.
ezml automatically falls back to RandomForest if LightGBM is not installed.
🧠 Supported Tasks
ezml automatically detects:
- ✅ Regression problems
- ✅ Binary classification
- ✅ Multi-class classification
Manual override is also supported:
AutoModel(task="classification")
AutoModel(task="regression")
🔮 Flexible Prediction Inputs
ezml accepts multiple input formats:
Dict (recommended)
model.predict({
"feature1": value1,
"feature2": value2
})
List
model.predict([[v1, v2, v3]])
Batch dict
model.predict([
{"feature1": v1, "feature2": v2},
{"feature1": v3, "feature2": v4}
])
💾 Save and Load Models
Save
model.save("model.pkl")
Load
from ezml import AutoModel
loaded_model = AutoModel.load("model.pkl")
preds = loaded_model.predict({...})
🧹 Automatic Preprocessing
ezml automatically handles:
- Missing value imputation
- Categorical encoding
- Optional feature scaling
- Column alignment during prediction
No manual preprocessing required.
🎯 Project Goal
ezml aims to make machine learning:
- simple
- fast
- accessible
- beginner-friendly
without sacrificing real-world usability.
🤝 Contributing
Contributions, issues, and suggestions are welcome!
If you find a bug or have an idea:
- Fork the repo
- Create a feature branch
- Submit a pull request
⭐ Support
If you find ezml useful, consider giving the repo a star ⭐
It helps the project grow!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pyezml-0.1.0.tar.gz.
File metadata
- Download URL: pyezml-0.1.0.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db5c9cc4c7f023135cfd667fb65de284aefc9018c7c94a1aab96892e2d6d1e2b
|
|
| MD5 |
bf6ee033243da8ba707d586085ec9e2b
|
|
| BLAKE2b-256 |
42c0c5681665e490642978a30bfe12ea921c6d3be867fe2b640454634c4214db
|
File details
Details for the file pyezml-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pyezml-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4856eef4ee865720f7b3942f00583056d7dcb598e749e226635f58605c2690aa
|
|
| MD5 |
aca228dbbb3105c001c49a3aa606c03b
|
|
| BLAKE2b-256 |
2c4834f83ae0f6eb5c81f859fca3eeabc97c4406f1ab63df6999664600b9afb8
|