Skip to content

GaussianSplitter

Numeric attribute observer for classification tasks that is based on Gaussian estimators.

The distribution of each class is approximated using a Gaussian distribution. Hence, the probability density function can be easily calculated.

Parameters

  • n_splits (int) – defaults to 10

    The number of partitions to consider when querying for split candidates.

Attributes

  • is_numeric

    Determine whether or not the splitter works with numerical features.

  • is_target_class

    Check on which kind of learning task the splitter is designed to work. If True, the splitter works with classification trees, otherwise it is designed for regression trees.

Methods

best_evaluated_split_suggestion

Get the best split suggestion given a criterion and the target's statistics.

Parameters

  • criterion (river.tree.split_criterion.base.SplitCriterion)
  • pre_split_dist (Union[List, Dict])
  • att_idx (Hashable)
  • binary_only (bool)

Returns

BranchFactory: Suggestion of the best attribute split.

cond_proba

Get the probability for an attribute value given a class.

Parameters

  • att_val
  • target_val (Union[bool, str, int])

Returns

float: Probability for an attribute value given a class.

update

Update statistics of this observer given an attribute value, its target value and the weight of the instance observed.

Parameters

  • att_val
  • target_val (Union[bool, str, int, numbers.Number])
  • sample_weight (float)