LGBM¶
- class dro.src.tree_model.lgbm.KLDRO_LGBM(eps=0.1, kind='classification')¶
Bases:
object
Light GBM model with KL-Divergence Distributionally Robust Optimization (DRO)
- Parameters:
- Raises:
ValueError – If invalid parameters are provided
TypeError – If inputs have incorrect types
Note
Requires LGBM configuration via
update()
before trainingInitialize KL-DRO LGBM model
- Parameters:
- Raises:
ValueError – For eps <= 0 or invalid task type
- update(config)¶
Update LGBM training configuration
- loss(preds, labels)¶
Compute base loss values
- Parameters:
preds (numpy.ndarray) – Model predictions (n_samples,)
labels (numpy.ndarray) – True labels (n_samples,)
- Returns:
Loss values array (n_samples,)
- Return type:
- Raises:
NotImplementedError – For unsupported task types
- fit(X, y)¶
Train KL-DRO LGBM model
- Parameters:
X (numpy.ndarray) – Feature matrix (n_samples, n_features)
y (numpy.ndarray) – Target values (n_samples,)
- Raises:
ValueError – For invalid input shapes
RuntimeError – For configuration or training errors
- Return type:
- predict(X)¶
Generate predictions
- Parameters:
X (numpy.ndarray) – Input features (n_samples, n_features)
- Returns:
Model predictions
- Return type:
- Raises:
NotFittedError – If model is untrained
- class dro.src.tree_model.lgbm.CVaRDRO_LGBM(eps=0.2, kind='classification')¶
Bases:
object
LGBM model with Conditional Value-at-Risk (CVaR) Distributionally Robust Optimization (DRO)
- Parameters:
- Raises:
ValueError – If invalid parameters are provided
TypeError – If inputs have incorrect types
Note
Requires LGBM configuration via
update()
before trainingInitialize CVaR-DRO LGBM model
- Parameters:
- Raises:
ValueError – For eps <= 0 or eps >= 1 or invalid task type
- update(config)¶
Update LGBM training configuration
- loss(preds, labels)¶
Compute base loss values
- Parameters:
preds (numpy.ndarray) – Model predictions (n_samples,)
labels (numpy.ndarray) – True labels (n_samples,)
- Returns:
Loss values array (n_samples,)
- Return type:
- Raises:
NotImplementedError – For unsupported task types
- fit(X, y)¶
Train CVaR-DRO LGBM model
- Parameters:
X (numpy.ndarray) – Feature matrix (n_samples, n_features)
y (numpy.ndarray) – Target values (n_samples,)
- Raises:
ValueError – For invalid input shapes
RuntimeError – For configuration or training errors
- Return type:
- predict(X)¶
Generate predictions
- Parameters:
X (numpy.ndarray) – Input features (n_samples, n_features)
- Returns:
Model predictions
- Return type:
- Raises:
NotFittedError – If model is untrained