OQBoost 2.0 — gradient-boosted 2D-oblique decision trees (histogram-binned, C++ backend)
Project description
OQBoost 2.0
Gradient-boosted 2D-oblique decision trees — histogram-binned, C++ backend.
OQBoost splits on oblique hyperplanes over feature pairs (a·u + b·v < t) instead
of axis-aligned thresholds, so diagonal and interaction boundaries are represented
directly rather than as axis-aligned approximations. Version 2.0 finds split directions
by H-weighted least-squares regression of the gradient — deterministic, one 2×2 solve
per feature pair (no random projections or numerical search).
scikit-learn compatible · compiled C++ (pybind11) + OpenMP · native missing-value handling (NaN routed to a learned bin) · pandas / scipy-sparse inputs.
Install
pip install oqboost
Prebuilt wheels for Windows, macOS (arm64), and Linux. On other platforms pip builds from source — needs a C++17 compiler and (for parallelism) OpenMP.
Quickstart
from oqboost import OQBoostClassifier, OQBoostRegressor
# Binary / multiclass classification (3+ classes handled one-vs-rest automatically)
clf = OQBoostClassifier(n_estimators=120, learning_rate=0.06, max_depth=4)
clf.fit(X_train, y_train)
proba = clf.predict_proba(X_test) # (n_samples, n_classes), rows sum to 1
pred = clf.predict(X_test)
# Regression
reg = OQBoostRegressor().fit(X_train, y_train)
y_hat = reg.predict(X_test)
Both are drop-in scikit-learn estimators — usable in Pipeline, GridSearchCV,
cross_val_score, and clone; pickle / joblib compatible.
Documentation
Full documentation is on GitHub: https://github.com/cree1116/oqboost-2.0
- Quickstart · Benchmarks · Explainability
- API — Classifier · Regressor · Plotting
- Guides — Categorical · Monotonic · Early stopping · Warm start · Multiclass
- Internals — Algorithm · LOB · Roadmap
OQBoost 2.0 is a ground-up rewrite. The original 1.x line (oblique splits via a Deterministic Gradient-Covariance Scan) lives at cree1116/OQBoost.
MIT License.
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 Distributions
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 oqboost-2.2.1.tar.gz.
File metadata
- Download URL: oqboost-2.2.1.tar.gz
- Upload date:
- Size: 38.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f0777d05d4fd82db94bf0b096700d8ff0f088afbe10e9abbcac0b052681a1f1
|
|
| MD5 |
0524ed9ca7fce227d91e29255051638a
|
|
| BLAKE2b-256 |
133372c9943a7ec66b5572aaa0e5f0c54d5a951bd37eedea370540130756a999
|
File details
Details for the file oqboost-2.2.1-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 174.6 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ae9c81787563aa2dbbab975cb9d1df9d708ccfa70085e8ccef4c9bbffc4bd31e
|
|
| MD5 |
bd4ad5d6db5e2bcd0d0af04b8216d7d4
|
|
| BLAKE2b-256 |
ace0ae671fe1bc1259c6b9acc0e484a6eb36d8e9b02b3ba38e21057d8aba7632
|
File details
Details for the file oqboost-2.2.1-cp313-cp313-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp313-cp313-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 301.4 kB
- Tags: CPython 3.13, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6be6fe78ad465a6201df004f8bea1ee1d9d20ad39d5676c20bbe7280d8aba9fc
|
|
| MD5 |
e6e2e8ebb90d7476b0e430822d83c9f4
|
|
| BLAKE2b-256 |
0e70bc41a0f2fbea45c5b6e021954ed3d3675a5367423c899b825243dc7b02f3
|
File details
Details for the file oqboost-2.2.1-cp313-cp313-macosx_14_0_arm64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp313-cp313-macosx_14_0_arm64.whl
- Upload date:
- Size: 420.9 kB
- Tags: CPython 3.13, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a512cb39a1dcf077c7bfb7dfbd680d8e24abdf35d245ba7a436c96dbffb341e6
|
|
| MD5 |
91bf9927b56e6094f1ef8fdd16dfcf40
|
|
| BLAKE2b-256 |
30016c98d83c35ead9af39df3bb7b8196aa2e20f90d880edbe1d83c5779c4151
|
File details
Details for the file oqboost-2.2.1-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 174.6 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c35839b06d53c79d70818fbf42d305a11f96d4cde7c9e20e042344385038e81
|
|
| MD5 |
403e143585de33056de4bd796b8e26fb
|
|
| BLAKE2b-256 |
98ad6fd7f659b9e69aab31842145f2b328f92ecf9658a98fc810ba8703c0ab1c
|
File details
Details for the file oqboost-2.2.1-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 301.4 kB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f2140c298faa3fd80385cf2304071d8a7ef481fc09ffded7d10f3acab5147bf7
|
|
| MD5 |
e56db092a9e06a748c78df066ef10745
|
|
| BLAKE2b-256 |
c5d2506b83c3cb4d4a7b28d16eda753aaefcf5ff26cd79e18e1239112ab84e41
|
File details
Details for the file oqboost-2.2.1-cp312-cp312-macosx_14_0_arm64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp312-cp312-macosx_14_0_arm64.whl
- Upload date:
- Size: 420.8 kB
- Tags: CPython 3.12, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1f4736a0e401cf719100d301aebf03637c2725388c3cd857bee066677e54d5ef
|
|
| MD5 |
a1ba6e0799e02ef3e9238884352a6ea5
|
|
| BLAKE2b-256 |
c70599c5a16234b87249948e5fd10130c69a296b187ab37f118936ccd38909b8
|
File details
Details for the file oqboost-2.2.1-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 171.5 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4bdc25b6f6459bbbea98b965b9805f0829194dba014c7314b27de71e878c1fc1
|
|
| MD5 |
513aae77a59f97fd7b3d8c999936b024
|
|
| BLAKE2b-256 |
a7003964002c2810a72d11ddc8ec9df7649f54b331cb4c10e6e3f89698a49b83
|
File details
Details for the file oqboost-2.2.1-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 298.7 kB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bd6f1423a6a873ad83cd6d2c00afb4666e125f02bb828ecd0ab1b2737e676a04
|
|
| MD5 |
2139e3cfae3d9a5e15cf1ff3930819c5
|
|
| BLAKE2b-256 |
b5195f42322f903decdba0fa52d7ee1b5e1c7f09ba25864de7af77a05df36a1d
|
File details
Details for the file oqboost-2.2.1-cp311-cp311-macosx_14_0_arm64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp311-cp311-macosx_14_0_arm64.whl
- Upload date:
- Size: 418.6 kB
- Tags: CPython 3.11, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
96ec31329c970901a648697765f5e1773cfc9d7a633df534360d1050091aa18b
|
|
| MD5 |
e0582315ed60bf38eedf6ce628bec555
|
|
| BLAKE2b-256 |
fe3287a27aa8e1c77fb0c0801b756cdaec719c140945330f99b5c0e204736f6d
|
File details
Details for the file oqboost-2.2.1-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 170.6 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
634d5c5b2ab53e11a61171cb3a9f2f9f5866a77e0f8c516cd167b025e2538378
|
|
| MD5 |
dfce8143135d18c11d6b317b2ea3f924
|
|
| BLAKE2b-256 |
2574186f1ccbbb6e71c158f4b13e84676b9528fc1efde9436043f36c964e8fd8
|
File details
Details for the file oqboost-2.2.1-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 297.7 kB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc318180608091b265f1fa238b0a1f9fab9509669ed7e0cc0cc478c1e5eb842c
|
|
| MD5 |
262027408a53ba7cbcfe490221c33c37
|
|
| BLAKE2b-256 |
9fbc163f32d8d876b0fbae3ec6a6069b4bcd1aa9bc498e9c679f904721cc4556
|
File details
Details for the file oqboost-2.2.1-cp310-cp310-macosx_14_0_arm64.whl.
File metadata
- Download URL: oqboost-2.2.1-cp310-cp310-macosx_14_0_arm64.whl
- Upload date:
- Size: 417.4 kB
- Tags: CPython 3.10, macOS 14.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fe73ddd5f445b5ab1ad334affd8c1bfa6c832967601c561349e27460e58297c7
|
|
| MD5 |
60c4deab57e6a078eb99778f6b0055a0
|
|
| BLAKE2b-256 |
5434e289c062a9f1ae2603a600fc259aaee7bfc23cbfb1e2f8f1062f9604b107
|