decision_boundary#

用于二元分类问题的决策边界的模型理解。

模块内容#

函数#

find_confusion_matrix_per_thresholds

获取每个阈值的混淆矩阵和直方图 bins,以及每个目标的最佳阈值。仅适用于二元分类管道。

内容#

evalml.model_understanding.decision_boundary.find_confusion_matrix_per_thresholds(pipeline, X, y, n_bins=None, top_k=5, to_json=False)[source]#

获取每个阈值的混淆矩阵和直方图 bins,以及每个目标的最佳阈值。仅适用于二元分类管道。

参数
  • pipeline (PipelineBase) – 用于获取混淆矩阵的已拟合二元分类管道。

  • X (pd.DataFrame) – 输入特征。

  • y (pd.Series) – 输入目标。

  • n_bins (int) – 用于计算阈值 bins 的数量。默认为 None,此时将默认使用 Freedman-Diaconis 规则。

  • top_k (int) – 每个 bin 中作为样本包含的最大行索引数。-1 表示包含落在 bin 之间的所有行索引。默认为 5。

  • to_json (bool) – 是否返回 json 输出。如果为 False,返回 (DataFrame, dict) 元组;否则返回 json。

返回

DataFrame 包含实际正例直方图、实际负例直方图、

混淆矩阵,以及落在每个 bin 中的行样本,这些信息都对应于每个阈值。通过 DataFrame 索引表示的阈值,代表该值处的截止阈值。字典包含每个目标的理想阈值和得分,以目标名称为键。如果为 json,则返回 DataFrame 和字典信息的 json 输出。

返回类型

(tuple(pd.DataFrame, dict)), json)

引发

ValueError – 如果管道不是二元分类管道或尚未在数据上拟合。