Skip to main content

CLI utility for training boosting models with automated preprocessing.

Project description

Auto Boost

Auto Boost is a small command-line helper that mirrors the original Auto_boost.ipynb Kaggle workflow. It handles missing values, categorical encoding, cross-validated training, and submission generation for gradient-boosting models (LightGBM, XGBoost, or CatBoost) without needing to run a notebook.

Installation

From PyPI (recommended)

python -m pip install --upgrade auto_boost
# or include extras:
python -m pip install "auto_boost[lightgbm]"

From source

python -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install ".[lightgbm,xgboost]"  # select any boosters you need

Base dependencies are pandas, numpy, and scikit-learn. Install at least one booster extra (lightgbm, xgboost, catboost) depending on what you plan to run.

Quickstart

auto-boost \
  --train train.csv \
  --test test.csv \
  --target Transported \
  --model-type classification \
  --metric accuracy \
  --booster lgbm \
  --folds 10 \
  --random-state 10 \
  --id-col PassengerId \
  --prediction-col Transported \
  --output submission.csv

Key flags:

  • --train / --test: paths to CSV files.
  • --target: column in train.csv you want to predict.
  • --model-type: classification, regression, or auto to infer from the target column.
  • --booster: choose between lgbm, xgb, catboost.
  • --metric: auto-detected if omitted (accuracy for classification, rmse for regression).
  • --output: optional CSV to save predictions (includes ID column when --id-col is supplied).

Run auto-boost --help (or auto_boost --help) for the full reference. The legacy python auto_boost.py shim has been removed in favor of the installable entrypoints.

Works With Any Tabular Dataset

  • Automatic task detection when --model-type auto is supplied, so you can point the CLI at a CSV without pre-labeling it as classification vs regression.
  • Smarter preprocessing that imputes instead of dropping high-cardinality categorical features and scales numerics when requested.
  • Built-in label encoding for non-numeric targets (including booleans and strings), ensuring LightGBM/XGBoost/CatBoost work regardless of how the classes are represented.

Development & Packaging

For local development install in editable mode:

python -m pip install --upgrade pip build twine
python -m pip install -e ".[lightgbm]"

To produce distributable artifacts (wheel + sdist):

python -m pip install build
python -m build
ls dist/

The files under dist/ can be uploaded with twine upload dist/* when publishing to PyPI. Generated folders such as dist/, *.egg-info, and __pycache__ are ignored via .gitignore.

Releasing to TestPyPI / PyPI

Following the official Packaging Python Projects guide:

# Build fresh artifacts
rm -rf dist/
python -m build

# Upload to TestPyPI first
python -m twine upload --repository testpypi dist/*

# Verify install from TestPyPI (optional)
python -m pip install --index-url https://test.pypi.org/simple/ \
  --extra-index-url https://pypi.org/simple auto_boost

# When satisfied, push to PyPI for public install via:
# python -m pip install auto_boost
python -m twine upload dist/*

Bump auto_boost.__version__ before every upload to avoid version conflicts.

About the Notebook

The original Auto_boost.ipynb is retained for reference, but the script fixes several issues (missing class instantiation, incorrect feature-importance labels, buggy categorical handling) and is the recommended entry point for automation.

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

auto_booster-0.1.4.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

auto_booster-0.1.4-py3-none-any.whl (11.8 kB view details)

Uploaded Python 3

File details

Details for the file auto_booster-0.1.4.tar.gz.

File metadata

  • Download URL: auto_booster-0.1.4.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for auto_booster-0.1.4.tar.gz
Algorithm Hash digest
SHA256 ee3c3a8d961ccb6a3c44be496ccf94122d13d185280b82d135bc63285c47f90e
MD5 be041ce2820acd8553c4aa05e56023e4
BLAKE2b-256 dac3b2370deae63134df3e5b021ccdbc53d6af3ece94a048a3e507bbba59a4ef

See more details on using hashes here.

File details

Details for the file auto_booster-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: auto_booster-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 11.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for auto_booster-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b7404aa142099481744df0704bed60108afbd1975bc59e0dc8b292c4554bfbb5
MD5 ddf9d0680230202f170552d8c573a75b
BLAKE2b-256 c4587850081cdef62b35011a686f45f37cf2838c227d1bcbd7eed227fdb9bac7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page