Edit on GitHub

LightGBM

DVCLive allows you to add experiment tracking capabilities to your LightGBM projects.

Usage

Include the DVCLiveCallback in the callbacks list passed to the lightgbm.train call:

from dvclive.lgbm import DVCLiveCallback

...

lightgbm.train(
  param, train_data, valid_sets=[validation_data], num_round=5,
  callbacks=[DVCLiveCallback()])

Parameters

  • model_file - (None by default) - The name of the file where the model will be saved at the end of each step.

  • live - (None by default) - Optional Live instance. If None, a new instance will be created using **kwargs.

  • **kwargs - Any additional arguments will be used to instantiate a new Live instance. If live is used, the arguments are ignored.

Examples

  • Using live to pass an existing Live instance.
from dvclive import Live
from dvclive.lgbm import DVCLiveCallback

with Live("custom_dir") as live:
    lightgbm.train(
        param,
        train_data,
        valid_sets=[validation_data],
        num_round=5,
        callbacks=[DVCLiveCallback(live=live)])

    # Log additional metrics after training
    live.log_metric("summary_metric", 1.0, plot=False)
  • Using model_file.
lightgbm.train(
    param,
    train_data,
    valid_sets=[validation_data],
    num_round=5,
    callbacks=[DVCLiveCallback(model_file="lgbm_model.txt")])
  • Using **kwargs to customize the new Live instance.
lightgbm.train(
    param,
    train_data,
    valid_sets=[validation_data],
    num_round=5,
    callbacks=[DVCLiveCallback(
      model_file="lgbm_model.txt",
      dir="custom_dir")])
Content

🐛 Found an issue? Let us know! Or fix it:

Edit on GitHub

Have a question? Join our chat, we will help you:

Discord Chat