Lightweight ML utility for automated training, evaluation, and prediction with CLI and Python API support
Project description
mlforgex 
mlforgex is a Python package that enables easy training, evaluation, and prediction for machine learning models on cleaned dataset. It supports both classification and regression problems, automates preprocessing, model selection, hyperparameter tuning, and generates useful artifacts and plots for analysis.
Features
- Automatic data preprocessing (missing value handling, encoding, scaling)
- Imbalance handling (under-sampling, over-sampling)
- Model selection and evaluation (classification & regression)
- Hyperparameter tuning with RandomizedSearchCV
- Artifact saving (model, preprocessor, encoder)
- Visualization of metrics and learning curves
- Simple CLI for training and prediction
Installation
Install mlforge using pip:
pip install mlforgex
stall .
## Requirements
- Python >= 3.8
- pandas
- numpy
- scikit-learn
- seaborn
- matplotlib
- xgboost
- imbalanced-learn
See [requirements.txt](requirements.txt) for details.
## Usage
### Train a Model
You can train a model using the CLI:
```sh
mlforge-train --data_path path/to/your/data.csv --dependent_feature TargetColumn --rmse_prob 0.3 --f1_prob 0.7 --n_jobs -1 --n_iter 100 --cv 3
Or programmatically:
from mlforge import train_model
result = train_model(
data_path=<data_path>,
dependent_feature=<dependent_feature>,
rmse_prob=<rmse_probability>,
f1_prob=<f1_probability>,
n_jobs=<n_jobs>
)
print(result)
Predict
Use the CLI:
mlforge-predict --model_path path/to/model.pkl --preprocessor_path path/to/preprocessor.pkl --input_data path/to/input.csv --encoder_path path/to/encoder.pkl
Or programmatically:
from mlforge import predict
result = predict(
<model.pkl>,
<preprocessor.pkl>,
<input_data.csv>,
<encoder.pkl>
)
print(result)
Artifacts
After training, the following files are saved :
model.pkl: Trained modelpreprocessor.pkl: Preprocessing pipelineencoder.pkl: Label encoder (for classification)Plots/: Visualizations (correlation heatmap, confusion matrix, ROC curve, etc.)
Testing
Run tests using pytest:
pytest test/
Author
Priyanshu Mathur
Portfolio
Email: mathurpriyanshu2006@gmail.com
Project Links
Project details
Release history Release notifications | RSS feed
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 mlforgex-1.0.4.tar.gz.
File metadata
- Download URL: mlforgex-1.0.4.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eaabf75828c479e88c3105cd07bb2473470174943eb989747fc3bdfad7e0ecb9
|
|
| MD5 |
695919ec59108f8ec9a40bbfcc624e36
|
|
| BLAKE2b-256 |
2a12f7df1af4172ee3f61fdfa895cbcfcab10ee33e97de6795f33eda90e42bcb
|
File details
Details for the file mlforgex-1.0.4-py3-none-any.whl.
File metadata
- Download URL: mlforgex-1.0.4-py3-none-any.whl
- Upload date:
- Size: 12.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25f93e10d7e40f19c18cc90076380fddae74fcbfc4f39fa20a3ba1a98a35a4f9
|
|
| MD5 |
a933d8eba53942001122c00034f0d6a5
|
|
| BLAKE2b-256 |
4d1284dadaf5c470de76169c3f508904e02dce51acc0f6f9d44bdbc5c6753b36
|