回归树#

链接到算法描述:决策树

class interpret.glassbox.RegressionTree(feature_names=None, feature_types=None, max_depth=3, **kwargs)#

浅层深度的回归树。

初始化具有低深度的树。

Parameters:
  • feature_names – 特征名称列表。

  • feature_types – 特征类型的列表。

  • max_depth – 树的最大深度。

  • **kwargs – 传递给树的 __init__() 方法的 Kwargs。

explain_global(name=None)#

为模型提供全局解释。

Parameters:

name – 用户定义的解释名称。

Returns:

一个解释对象,将特征-值对可视化为水平条形图。

explain_local(X, y=None, name=None)#

为提供的实例提供本地解释。

Parameters:
  • X – 用于解释的X的Numpy数组。

  • y – 用于解释的y的Numpy向量。

  • name – 用户定义的解释名称。

Returns:

一个解释对象。

fit(X, y, sample_weight=None, check_input=True)#

将模型适配到提供的实例。

Parameters:
  • X – 用于训练实例的Numpy数组。

  • y – 作为训练标签的Numpy数组。

  • sample_weight (可选[np.ndarray]) – (n_samples,) 样本权重。如果为 None(默认),则样本权重相等。在搜索每个节点的分割时,会忽略那些会导致子节点净权重为零或负的分割。

  • check_input (bool) – 默认=True。允许绕过多个输入检查。除非你知道自己在做什么,否则不要使用此参数。

Returns:

它本身。

predict(X)#

对提供的实例进行预测。

Parameters:

X – 实例的Numpy数组。

Returns:

每个实例的预测类别标签。

score(X, y, sample_weight=None)#

返回预测的确定系数。

决定系数 \(R^2\) 定义为 \((1 - \frac{u}{v})\),其中 \(u\) 是残差 平方和 ((y_true - y_pred)** 2).sum(),而 \(v\) 是总平方和 ((y_true - y_true.mean()) ** 2).sum()。 最佳可能得分为1.0,且可能为负(因为 模型可能任意更差)。一个总是预测 y 的期望值而不考虑输入特征的常数模型,将获得 \(R^2\) 得分为0.0。

Parameters:
  • X (形状为 (n_samples, n_features) 的数组类) – 测试样本。对于某些估计器,这可能是预计算的内核矩阵或形状为 (n_samples, n_samples_fitted) 的通用对象列表,其中 n_samples_fitted 是用于估计器拟合的样本数量。

  • y (形状为 (n_samples,) 或 (n_samples, n_outputs) 的数组类) – X 的真实值。

  • sample_weight (形状为 (n_samples,)的类数组, 默认=None) – 样本权重。

Returns:

score\(R^2\)self.predict(X) 相对于 y

Return type:

浮点数

注释

在回归器上调用score时使用的\(R^2\)分数从0.23版本开始使用multioutput='uniform_average',以保持与r2_score()的默认值一致。这影响了所有多输出回归器的score方法(除了MultiOutputRegressor)。