SuperAPI AI 工具集

fiftyone-model-evaluation

通用与其它

查看项目

更新于 10-16 02:28

技能介绍

用途:在 FiftyOne 中将模型预测与真值标注对比,计算 mAP、精确率、召回率、混淆矩阵等指标,覆盖检测、分类、分割、回归和视频时序任务,方便定位错误样本并比较不同模型。

主要能力:

  • 检测类(Detections、Polylines、Keypoints)走 evaluate_detections,支持 coco、open-images 方法,可设 iou、classwise、compute_mAP、use_masks 等参数。
  • 时序检测(TemporalDetections)用 activitynet 方法。
  • 分类用 simple、top-k(需 logits)或 binary。
  • 分割用 simple,可设 bandwidth 只评边界像素,average 可选 micro/macro/weighted/samples。
  • 回归用 simple,可算 MSE、RMSE、MAE、中位绝对误差、R²、解释方差、最大误差。
  • 结果会写入 {eval_key}_tp/_fp/_fn 等字段,也可用 to_evaluation_patches() 查看 TP/FP/FN。

使用方式(经插件操作符):

  1. 先 list_datasets()、set_context(dataset_name="my-dataset")、dataset_summary(name="my-dataset") 确认数据集与字段类型兼容。
  2. list_plugins() 检查插件,缺失时执行 download_plugin(url_or_repo="voxel51/fiftyone-plugins", plugin_names=["@voxel51/evaluation"]) 与 enable_plugin(plugin_name="@voxel51/evaluation")。
  3. launch_app(dataset_name="my-dataset"),随后调用 evaluate_model,需向用户确认预测字段、真值字段、唯一的 eval_key、方法和是否算 mAP。例如 coco 检测:执行 execute_operator(operator_uri="@voxel51/evaluation/evaluate_model", params={...}),参数含 pred_field、gt_field、eval_key、method、iou、compute_mAP。
  4. 在 App 的 Model Evaluation Panel 查看汇总指标、混淆矩阵、逐类表现;结束用 close_app()。 也提供 Python SDK 替代:dataset.evaluate_detections/evaluate_classifications/evaluate_segmentations/evaluate_regressions,结果对象支持 print_report()、mAP()、plot_confusion_matrix()、plot_pr_curves() 等。

适用场景:检测、分类、分割、回归模型的离线评估与模型对比;用 set_view(filters={"eval_fp": {"$gt": 0}}) 过滤误检样本;多 IoU 阈值对比;边界分割评估。

限制:预测与真值字段类型必须兼容;eval_key 必须唯一,重复会报错;mAP 需显式设置 compute_mAP: true 且多预测才有意义;大数据集评估较慢;插件未安装会报错。资料未提供性能基准、价格与收费信息。