模型评估

最近更新时间:2020-08-12 14:28:22

智能钛机器学习平台内置多种模型评估可视化组件,您可快速辨别模型的质量,并对该模型进行优化。您只需拖拽组件即可轻松使用本服务。

二分类任务评估

用于评估二分类算法的预测结果。预测的结果必须是0 - 1的概率值,评估结果包括混淆矩阵和 precision,recall,f1等指标。

真实情况 预测结果
正例 反例
正例 TP(真正例) FN(假反例)
反例 FP(假正例) TN(真反例)
  • P(precision)= TP / (TP + FP)
  • R(recall)= TP / (TP + FN)
  • F1 = 2 * P * R / (P + R)

输入

  • 数据形式:Dense。
  • 格式:| label | score |
  • label:样本真实的label,通过参数中的标签列指定。
  • score:打分值,模型预测的0~1.0之间的概率值所在的列,通过参数中的打分列指定。

参数

  • 标签列(labelCol):标签所在列,从0开始计数。
  • 打分列(scoreCol):概率值所在列,从0开始计数。
  • 预测阈值
    • 范围:0 - 1的值,预测值大于该阈值,则预测为1;否则为0。
    • 说明:在真实的 CTR 预估中,预测的概率值都比较小,因此要视真实情况设定该参数。

输出

precision,recall,f1 值。

ROC 曲线

ROC(receiver operating characteristic curve),将阈值不同取值下对应的 TPR 和 FPR 结果画于二维坐标系中得到的曲线,就是 ROC 曲线
下图所展示的是 ROC 曲线与 AUC:

  • 对角线对应于“随机猜测”的模型。
  • 点(0,1)对应于将所有正例排在所有反例之前的“理想模型”。
  • AUC 对应于 ROC 曲线下的面积,AUC 越大,则模型效果越好。
  • P(precision)= TP / (TP + FP)
  • R(recall)= TP / (TP + FN)

输入

  • 数据形式:Dense。
  • 格式:| label | score |
  • label:样本真实的label,通过参数中的标签列指定。
  • score:打分值,模型预测的0 - 1.0之间的概率值所在的列,通过参数中的打分列指定。

参数

  • 标签列(labelCol):标签所在列,从0开始计数。
  • 打分列(scoreCol):概率值所在列,从0开始计数。
  • 预测阈值
    • 范围:0 - 1的值,预测值大于该阈值,则预测为1;否则为0。
    • 说明:在真实的 CTR 预估中,预测的概率值都比较小,因此要视真实情况设定该参数。

输出

ROC AUC 值。

PR 曲线

  • P(precision)= TP / (TP + FP)
  • R(recall)= TP / (TP + FN)

其中,横轴是 precision,纵轴是 recall。

输入

  • 数据形式:Dense。
  • 格式:| label | score |
  • label:样本真实的label,通过参数中的标签列指定。
  • score:打分值,模型预测的0~1.0之间的概率值所在的列,通过参数中的打分列指定。

参数

  • 标签列(labelCol):标签所在列,从0开始计数。
  • 打分列(scoreCol):概率值所在列,从0开始计数。
  • 预测阈值
    • 范围:0 - 1的值,预测值大于该阈值,则预测为1;否则为0。
    • 说明:在真实的 CTR 预估中,预测的概率值都比较小,因此要视真实情况设定该参数。

输出

precision recall 值。

KS 曲线

KS(Kolmogorov-Smirnov)检验:K-S 检验主要是验证模型对违约对象的区分能力,通常是在模型预测全体样本的信用评分后,将全体样本按违约与非违约分为两部分,然后用KS统计量来检验这两组样本信用评分的分布是否有显著差异。

输入

  • 数据形式:Dense。
  • 格式:| label | score |
  • label:样本真实的label,通过参数中的标签列指定。
  • score:打分值,模型预测的0 - 1.0之间的概率值所在的列,通过参数中的打分列指定。

参数

  • 标签列(labelCol):标签所在列,从0开始计数。
  • 打分列(scoreCol):概率值所在列,从0开始计数。
  • 预测阈值
    • 范围:0 - 1的值,预测值大于该阈值,则预测为1;否则为0。
    • 说明:在真实的 CTR 预估中,预测的概率值都比较小,因此要视真实情况设定该参数。

输出

KS ,threshold 值。

Lift 曲线

Lift chart 是不同阈值下 Lift 和 Depth(正例的比例)的轨迹,它衡量的是,与随机猜测相比,模型的预测能力比随机结果“变好”了多少。lift(提升指数)越大,模型的运行效果越好。
Lift=precision/正例的比例。

输入

  • 数据形式:Dense。
  • 格式:| label | score |
  • label:样本真实的label,通过参数中的标签列指定。
  • score:打分值,模型预测的0 - 1.0之间的概率值所在的列,通过参数中的打分列指定。

参数

  • 标签列(labelCol):标签所在列,从0开始计数。
  • 打分列(scoreCol):概率值所在列,从0开始计数。
  • 预测阈值
    • 范围:0 - 1的值,预测值大于该阈值,则预测为1;否则为0。
    • 说明:在真实的 CTR 预估中,预测的概率值都比较小,因此要视真实情况设定该参数。

输出

LIFT 值,正例的比例。

Gain 曲线

Gains (增益) 与 Lift(提升)相当类似:Lift chart 是不同阈值下 Lift 和 Depth(正例的比例)的轨迹,Gains chart 是不同阈值下 Precision 和 Depth(正例的比例)的轨迹。

输入

  • 数据形式:Dense。
  • 格式:| label | score |
  • label:样本真实的label,通过参数中的标签列指定。
  • score:打分值,模型预测的0 - 1.0之间的概率值所在的列,通过参数中的打分列指定。

参数

  • 标签列(labelCol):标签所在列,从0开始计数。
  • 打分列(scoreCol):概率值所在列,从0开始计数。
  • 预测阈值
    • 范围:0 - 1的值,预测值大于该阈值,则预测为1;否则为0。
    • 说明:在真实的 CTR 预估中,预测的概率值都比较小,因此要视真实情况设定该参数。

输出

Precision值,正例的比例 。

聚类任务评估

用于评估聚类算法的预测结果。输入的是特征列数据与预测列的模型预测值;模型将计算Silhouette(轮廓系数)。轮廓系数(Silhouette Coefficient),结合了内聚度和分离度两种因素,用来评价算法聚类结果。

输入

  • 数据形式:Dense。
  • 格式:predict。
  • predict:预测值,通过参数中的预测列指定。

参数

预测列(scoreCol):预测值所在列,从0开始计数。

输出

Silhouette 数值

多分类任务评估

用于评估多分类算法的预测结果。样本的预测结果是模型预测的类别;模块将会统计类别真实类列和预测类别的混淆矩阵和各个类别的 truePositiveRates,falsePositiveRate,precision,recall,fMeasure,trueNegativeRate,negativePredictiveValue。

输入

  • 数据形式:Dense。
  • 格式:| label | predict |
  • label:样本真实的 label,保存的是样本真实的类别,通过参数中的标签列指定。
  • score:预测值,保存的是模型预测的类别,通过参数中的预测列指定。

参数

  • 标签列(labelCol):标签所在列,从0开始计数。
  • 预测列(predictCol):预测的类别所在列,从0开始计数。

输出

  • True class 和 Hypothesized class 的混淆矩阵。
  • 不同类别的 f1、precision、recall。

回归算法评估

用于评估回归算法的预测结果。输入的是真实的值和模型预测值;模型将计算 explainedVariance,meanAbsoluteError,meanSquaredError,rootMeanSquaredError,r2 等指标。

输入

  • 数据形式:Dense。
  • 格式:| label | predict |
  • 说明:以空格连接各字段。
  • label:样本真实的label,通过参数中的标签列指定。
  • predict:预测值,通过参数中的预测列指定。

参数

  • 标签列(labelCol): 标签所在列,从0开始计数。
  • 预测列(scoreCol):预测值所在列,从0开始计数。

输出

MAE、MSE、rMAE、R2 等指标。

序列标注任务评估

将序列标注任务或依存句法分析任务的预测结果文件作为输入,计算评估指标,包括字级别的准确率,单句中序列标注正确率为100%的句子比例,单句中序列标注正确率大于80%的句子比例,以及单句中序列标注正确率大于50%的句子比例。

算法 IO 参数

预测数据: 序列标注任务或依存句法分析任务的预测结果。

算法参数

  • 标签所在列:标签在CSV文件中所在列,从0开始计数。
  • 预测结果所在列:预测结果在CSV文件中所在列,从0开始计数。

实例生成

将序列标注相关算子的预测结果连接到算子的输入桩,单击【运行】开始计算指标。对于平台内置的序列标注算子和依存句法分析算子,标签列和预测列的序号应分别填写1和2。

深度学习分类任务评估

将分类任务的预测文件作为输入,计算各项评估指标,包括整体 accuracy 和每个类别的 precision,recall 和 F1。

算法 IO 参数

预测数据:文本分类或图片分类任务的预测结果。

算法参数

  • 标签所在列:标签在 CSV 文件中所在列,从0开始计数。
  • 预测结果所在列:预测结果在 CSV 文件中所在列,从0开始计数。

实例生成

将分类相关算子的预测结果连接到算子的输入桩,单击【运行】开始计算指标。对于平台内置的图片分类和文本分类算子,标签列和预测列应分别填写1和2。

中文问答评估

将机器阅读理解的预测结果文件作为输入,计算各项评估指标,包括整体 accuracy 和 F1。

算法 IO 参数

预测数据:中文阅读理解任务的预测结果。

算法参数

  • 标签所在列:标签在 CSV 文件中所在列,从0开始计数。
  • 预测结果所在列:预测结果在 CSV 文件中所在列,从0开始计数。

实例生成

实例生成:将阅读理解算子的预测结果连接到算子的输入桩,单击【运行】开始计算指标。对于平台内置的 BERT 中文问答算子,标签列和预测列应分别填写1和2。

Tensorboard

通过 TensorFlow 将程序输出的日志文件作为输入,提供可视化输出,使得 TensorFlow 程序的理解、调试和优化更加简单高效。

算法 IO 参数

Tensorboard 路径:TensorFlow 程序输出的 event file 所在路径。

算法参数

展示时间(分钟):Tensorboard 实例运行的时长,默认为60分钟。

资源参数

资源类型:Tensorboard 实例运行所需的机型。

目录