- 功能介绍
- Precision
- Recall
- F-Measure
- Sensitivity
- Accuracy
- Specificity
- Kappa
- Logloss
- 参数说明
- 脚本示例
- 脚本代码
- 脚本运行结果
功能介绍
多分类评估是对多分类算法的预测结果进行效果评估。
流式的实验支持累计统计和窗口统计。
给出Precision、Recall、F-Measure、Sensitivity、Accuracy、Specificity和Kappa。
Precision
Recall
F-Measure
Sensitivity

Accuracy
Specificity

Kappa
Logloss
参数说明
| 名称 | 中文名称 | 描述 | 类型 | 是否必须? | 默认值 | |
|---|---|---|---|---|---|---|
| labelCol | 标签列名 | 输入表中的标签列名 | String | ✓ | ||
| predictionCol | 预测结果列名 | 预测结果列名 | String | ✓ | ||
| predictionDetailCol | 预测详细信息列名 | 预测详细信息列名 | String |
脚本示例
脚本代码
import numpy as npimport pandas as pddata = np.array([["prefix1", "{\"prefix1\": 0.9, \"prefix0\": 0.1}"],["prefix1", "{\"prefix1\": 0.8, \"prefix0\": 0.2}"],["prefix1", "{\"prefix1\": 0.7, \"prefix0\": 0.3}"],["prefix0", "{\"prefix1\": 0.75, \"prefix0\": 0.25}"],["prefix0", "{\"prefix1\": 0.6, \"prefix0\": 0.4}"]])df = pd.DataFrame({"label": data[:, 0], "detailInput": data[:, 1]})inOp = BatchOperator.fromDataframe(df, schemaStr='label string, detailInput string')metrics = EvalMultiClassBatchOp().setLabelCol("label").setPredictionDetailCol("detailInput").linkFrom(inOp).collectMetrics()print("Prefix0 accuracy:", metrics.getAccuracy("prefix0"))print("Prefix1 recall:", metrics.getRecall("prefix1"))print("Macro Precision:", metrics.getMacroPrecision())print("Micro Recall:", metrics.getMicroRecall())print("Weighted Sensitivity:", metrics.getWeightedSensitivity())inOp = StreamOperator.fromDataframe(df, schemaStr='label string, detailInput string')EvalMultiClassStreamOp().setLabelCol("label").setPredictionDetailCol("detailInput").setTimeInterval(1).linkFrom(inOp).print()StreamOperator.execute()
脚本运行结果
Prefix0 accuracy: 0.6Prefix1 recall: 1.0Macro Precision: 0.3Micro Recall: 0.6Weighted Sensitivity: 0.6
