混淆矩阵(Confusion Matrix)适用于监督学习,与无监督学习中的匹配矩阵对应。在精度评价中,混淆矩阵主要用于比较分类结果和实际测量值,可以将分类结果的精度显示在一个矩阵中。

组件配置

PAI-Studio支持通过可视化或PAI命令的方式,配置该组件参数:
  • 可视化方式
    参数 描述
    原数据的标签列列名 支持数值类型。
    预测结果的标签列列名 如果未配置阈值,则该参数必选。
    阈值 大于该参数值的样本为正样本。
    预测结果的详细列列名 预测结果的标签列列名不能共存。如果已配置阈值,则该参数必选。
    正样本的标签值 如果已配置阈值,则该参数必选。
  • PAI命令方式
    • 未指定阈值
      pai -name confusionmatrix -project algo_public
          -DinputTableName=wpbc_pred
          -DoutputTableName=wpbc_confu
          -DlabelColName=label
          -DpredictionColName=prediction_result;
    • 指定阈值
      pai -name confusionmatrix -project algo_public
          -DinputTableName=wpbc_pred
          -DoutputTableName=wpbc_confu
          -DlabelColName=label
          -DpredictionDetailColName=prediction_detail
          -Dthreshold=0.8
          -DgoodValue=N;
    参数 是否必选 描述 默认值
    inputTableName 输入表的名称,即预测输出表。
    inputTablePartition 输入表的分区。 全表
    outputTableName 输出表的名称,用于存储混淆矩阵。
    labelColName 原始标签列的名称。
    predictionColName 预测结果列的名称。如果未配置threshold,则该参数必选。
    predictionDetailColName 预测结果详细列的名称。如果已配置threshold,则该参数必选。
    threshold 划分正样本的阈值。 0.5
    goodValue 二分类时,指定训练系数对应的标签值。如果已配置threshold,则该参数必选。
    coreNum 计算的核心数量。 系统自动分配
    memSizePerCore 每个核心的内存,单位为MB。 系统自动分配
    lifecycle 输出表的生命周期。

示例

  1. 导入如下测试数据。
    id label prediction_result
    0 A A
    1 A B
    2 A A
    3 A A
    4 B B
    5 B B
    6 B A
    7 B B
    8 B A
    9 A A
  2. 构建如下实验,详情请参见算法建模混淆矩阵实验
  3. 配置混淆矩阵的参数(配置如下表格中的参数,其余参数使用默认值)。
    参数 描述
    原数据的标签列列名 选择label列。
    预测结果的标签列列名 选择prediction_result列。
  4. 运行实验,查看混淆矩阵组件的输出结果:
    • 单击混淆矩阵页签,查看输出的混淆矩阵。混淆矩阵示例输出
    • 单击比例矩阵页签,查看比例矩阵。
    • 单击统计信息页签,查看模型统计信息。混淆矩阵示例统计信息