lunax.models

This module contains wrapper classes for various tree models, including regression and classification models from XGBoost, LightGBM, and CatBoost.

XGBoost Models

class xgb_reg(params: Dict | None = None)

XGBoost regression model wrapper class.

Parameters:

params (Dict, optional) – Dictionary of XGBoost model hyperparameters

fit(X: pd.DataFrame, y: pd.Series, k_fold: int | None = None) None

Train the model with optional k-fold cross validation.

Parameters:
  • X – Feature data

  • y – Target variable

  • k_fold – Number of folds for cross validation, default is None (no cross validation)

predict(X: pd.DataFrame) np.ndarray

Make predictions on new data.

Parameters:

X – Feature data

Returns:

Predicted values

evaluate(X: pd.DataFrame, y: pd.Series, log_info: bool = True) Dict[str, float]

Evaluate model performance.

Parameters:
  • X – Feature data

  • y – True labels

  • log_info – Whether to print evaluation information

Returns:

Dictionary of evaluation metrics

class xgb_clf(params: Dict | None = None)

XGBoost classification model wrapper class.

Parameters:

params (Dict, optional) – Dictionary of XGBoost model hyperparameters

fit(X: pd.DataFrame, y: pd.Series, k_fold: int | None = None) None

Train the model with optional k-fold cross validation.

Parameters:
  • X – Feature data

  • y – Target variable

  • k_fold – Number of folds for cross validation, default is None (no cross validation)

predict(X: pd.DataFrame) np.ndarray

Make predictions on new data.

Parameters:

X – Feature data

Returns:

Predicted labels

predict_proba(X: pd.DataFrame) np.ndarray

Predict class probabilities.

Parameters:

X – Feature data

Returns:

Predicted probabilities

evaluate(X: pd.DataFrame, y: pd.Series, log_info: bool = True) Dict[str, float]

Evaluate model performance.

Parameters:
  • X – Feature data

  • y – True labels

  • log_info – Whether to print evaluation information

Returns:

Dictionary of evaluation metrics

LightGBM Models

class lgbm_reg(params: Dict | None = None)

LightGBM regression model wrapper class.

Parameters:

params (Dict, optional) – Dictionary of LightGBM model hyperparameters

fit(X: pd.DataFrame, y: pd.Series, k_fold: int | None = None) None

Train the model with optional k-fold cross validation.

Parameters:
  • X – Feature data

  • y – Target variable

  • k_fold – Number of folds for cross validation, default is None (no cross validation)

predict(X: pd.DataFrame) np.ndarray

Make predictions on new data.

Parameters:

X – Feature data

Returns:

Predicted values

evaluate(X: pd.DataFrame, y: pd.Series, log_info: bool = True) Dict[str, float]

Evaluate model performance.

Parameters:
  • X – Feature data

  • y – True labels

  • log_info – Whether to print evaluation information

Returns:

Dictionary of evaluation metrics

class lgbm_clf(params: Dict | None = None)

LightGBM classification model wrapper class.

Parameters:

params (Dict, optional) – Dictionary of LightGBM model hyperparameters

fit(X: pd.DataFrame, y: pd.Series, k_fold: int | None = None) None

Train the model with optional k-fold cross validation.

Parameters:
  • X – Feature data

  • y – Target variable

  • k_fold – Number of folds for cross validation, default is None (no cross validation)

predict(X: pd.DataFrame) np.ndarray

Make predictions on new data.

Parameters:

X – Feature data

Returns:

Predicted labels

predict_proba(X: pd.DataFrame) np.ndarray

Predict class probabilities.

Parameters:

X – Feature data

Returns:

Predicted probabilities

evaluate(X: pd.DataFrame, y: pd.Series, log_info: bool = True) Dict[str, float]

Evaluate model performance.

Parameters:
  • X – Feature data

  • y – True labels

  • log_info – Whether to print evaluation information

Returns:

Dictionary of evaluation metrics

CatBoost Models

class cat_reg(params: Dict | None = None)

CatBoost regression model wrapper class.

Parameters:

params (Dict, optional) – Dictionary of CatBoost model hyperparameters

fit(X: pd.DataFrame, y: pd.Series, k_fold: int | None = None) None

Train the model with optional k-fold cross validation.

Parameters:
  • X – Feature data

  • y – Target variable

  • k_fold – Number of folds for cross validation, default is None (no cross validation)

predict(X: pd.DataFrame) np.ndarray

Make predictions on new data.

Parameters:

X – Feature data

Returns:

Predicted values

evaluate(X: pd.DataFrame, y: pd.Series, log_info: bool = True) Dict[str, float]

Evaluate model performance.

Parameters:
  • X – Feature data

  • y – True labels

  • log_info – Whether to print evaluation information

Returns:

Dictionary of evaluation metrics

class cat_clf(params: Dict | None = None)

CatBoost classification model wrapper class.

Parameters:

params (Dict, optional) – Dictionary of CatBoost model hyperparameters

fit(X: pd.DataFrame, y: pd.Series, k_fold: int | None = None) None

Train the model with optional k-fold cross validation.

Parameters:
  • X – Feature data

  • y – Target variable

  • k_fold – Number of folds for cross validation, default is None (no cross validation)

predict(X: pd.DataFrame) np.ndarray

Make predictions on new data.

Parameters:

X – Feature data

Returns:

Predicted labels

predict_proba(X: pd.DataFrame) np.ndarray

Predict class probabilities.

Parameters:

X – Feature data

Returns:

Predicted probabilities

evaluate(X: pd.DataFrame, y: pd.Series, log_info: bool = True) Dict[str, float]

Evaluate model performance.

Parameters:
  • X – Feature data

  • y – True labels

  • log_info – Whether to print evaluation information

Returns:

Dictionary of evaluation metrics