Install & Compatibility
Where this runs
No compatibility data collected yet for this library.
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
XGBClassifier
✓ from imxgboost import XGBClassifier
✗ from imxgboost import XGBClassifier
Train XGBoost with focal loss and weighted loss on imbalanced data.
import pandas as pd
from sklearn.model_selection import train_test_split
from imxgboost import XGBClassifier
# Load data
from sklearn.datasets import make_classification
X, y = make_classification(n_classes=2, weights=[0.9, 0.1], n_samples=1000, random_state=42)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# Model with focal loss
model = XGBClassifier(objective='focal', focal_gamma=2.0, scale_pos_weight=None)
model.fit(X_train, y_train)
preds = model.predict(X_test)
print('Accuracy:', (preds == y_test).mean())
# Weighted loss (sample weights)
weights = [10 if yi == 0 else 1 for yi in y_train]
model2 = XGBClassifier(objective='weighted')
model2.fit(X_train, y_train, sample_weight=weights)
print('Weighted model accuracy:', (model2.predict(X_test) == y_test).mean())
Debug
Known issues
breakingRequires XGBoost >=1.1.1. Older XGBoost versions will cause import errors or silent failures.fixUpgrade XGBoost: pip install --upgrade xgboost>=1.1.1
affects: imbalance-xgboost >=0.8.0
gotchaThe package is often imported as `imxgboost` (not `imbalance_xgboost`). Using the wrong module name leads to ModuleNotFoundError.fixUse `from imxgboost import ...` (no underscore).
affects: all
gotchaFocal loss and weighted loss parameters are passed as strings (e.g., objective='focal'). Misspelling or case mismatch (e.g., 'Focal') will silently fall back to default objective.fixUse exactly 'focal' or 'weighted' for objective.
affects: all
deprecatedThe package is in maintenance mode; no new features expected. Consider using XGBoost native weighted loss or focal loss via custom objective as alternatives.fixFor active development, use XGBoost's native `scale_pos_weight` or implement custom focal loss.
affects: 0.8.1
Upgrade
Version history
0.8.1latest on PyPI · released Feb 8, 2021
Audit
Dependencies
xgboostrequiredCore dependency; must be >=1.1.1
numpyrequiredArray operations
pandasrequiredData handling
scikit-learnrequiredTrain/test split and metrics