Classification
SGT Classifier

SGT Classifier

Stochastic Gradient Tree1 for binary classification.

Binary decision tree classifier that minimizes the binary cross-entropy to guide its growth.

Stochastic Gradient Trees (SGT) directly minimize a loss function to guide tree growth and update their predictions. Thus, they differ from other incrementally tree learners that do not directly optimize the loss, but data impurity-related heuristics.

Parameters

  • delta(float, Default:1e-07) → Define the significance level of the F-tests performed to decide upon creating splits or updating predictions.

  • grace_period(int, Default:200) → Interval between split attempts or prediction updates.

  • lambda_(float, Default:0.1) → Positive float value used to impose a penalty over the tree's predictions and force them to become smaller. The greater the lambda value, the more constrained are the predictions.

  • gamma(float, Default:1.0) → Positive float value used to impose a penalty over the tree's splits and force them to be avoided when possible. The greater the gamma value, the smaller the chance of a split occurring.

Example Usage

We can create an instance of the SGT Classifier model like this.

import turboml as tb
sgt_model = tb.SGTClassifier()

Footnotes

  1. Gouk, H., Pfahringer, B., & Frank, E. (2019, October). Stochastic Gradient Trees. In Asian Conference on Machine Learning (pp. 1094-1109).