1. 磐创AI-开放猫官方网站首页
  2. Medium

COCO数据集:下载、可视化和评估的最佳实践


自2014年发布以来,COCO数据集一直是最受欢迎和最具影响力的计算机视觉数据集之一。它作为机器学习各个领域的流行基准数据集,包括对象检测、分割、关键点检测等。您最喜欢的对象检测体系结构可能具有可从COCO数据集中获得的预先训练的权重。The COCO dataset

这篇文章介绍了由FityOne发起的一项新计划,该计划旨在可视化和简化对COCO数据集资源和评估的访问。有了FityOne,您现在可以下载特定的COCO子集,可视化数据和标签,并以比以往更少的代码行更轻松地评估您在COCO上的模型。new initiative by FiftyOne COCO evaluation

设置

使用FityOne访问和使用Coco数据集与安装开源Python包一样简单:installing the open-source Python package

pip install fiftyone

正在下载可可

虽然现有工具或您自己的自定义脚本过去可能使您能够下载Coco Splits,但您是否曾希望在扩展到完整的数据集之前下载一个小样本的数据集以进行更高的保真度分析?

FityOne DataSet Zoo现在只需一条命令就支持将部分COCO直接下载和加载到Python中。例如,假设您正在处理一项道路场景检测任务,并且您只对包含车辆、人员和红绿灯的样本感兴趣。下面的代码片断将仅下载100个相关示例,并将它们加载到FityOne中:FiftyOne Dataset Zoo load them into FiftyOne

加载COCO的命令采用以下参数,使您可以精确地自定义您感兴趣的示例和标签:The command

  • LABEL_TYPE:要加载的标签类型列表。值为(“检测”、“分段”)。默认情况下,会加载所有标签,但并非每个样本都会包含每种标签类型。如果同时指定了max_Samples和Label_Types,则每个样本都将包括指定的标签类型。
  • 拆分和拆分:指定要加载的拆分的字符串或字符串列表。可用的拆分有(“测试”、“训练”、“验证”)。
  • CLASSES:指定要加载的必需类的字符串列表。将只下载至少包含指定类的一个实例的示例。
  • MAX_SAMPLES:要导入的最大样本数。默认情况下,将导入所有样本。
  • 无序排列:布尔值,指示是否随机排列样本的导入顺序。
  • 种子:洗牌时使用的随机种子。
  • image_ids:要加载的特定图像ID的列表或包含该列表的文件的文件路径。ID可以指定为<拆分>/

大多数ML工程师已将查看小批量图像的基本支持集成到他们的工作流中,例如利用Tensorboard等工具,但此类工作流不允许动态搜索您感兴趣的特定示例的数据集。这是一个需要解决的重要差距,因为了解模型故障模式的最好方法是调查数据集和注释的质量,这就是将它们可视化并滚动一些示例。Tensorboard the best way to understand the failure modes of your model is to investigate the quality of a dataset and annotations is to visualize them and scroll through some examples

五十一应用程序允许每个人可视化他们的数据集和标签,而不需要花费时间和金钱编写自己的脚本或工具来实现可视化。与FityOne API的易用性相结合,现在只需几行代码就可以亲手操作您的数据。FiftyOne App

FityOne还提供了一种功能强大的查询语言,允许您在数据集中创建自定义视图,以回答有关数据的任何问题。例如,您可以创建一个视图,该视图按置信度和排序过滤模型的预测,以便首先对具有最多地面真实对象的样本进行采样。custom views into your dataset

评估模型


CoCo API已被广泛采用为评估对象检测的标准度量。在过去的五年中,几乎所有的目标检测研究论文都使用可可平均精度来比较模型。虽然拥有可用于在高级别上比较模型的单一度量非常有用,但在实践中,仍有更多工作需要完成。COCO API

在开发将在真实场景中使用的模型时,您需要对模型在各种情况下的性能建立信心。单一的衡量标准不会给您提供这些信息,要确切了解模型在哪里表现良好,哪里表现不佳,唯一的方法就是查看单个样本,甚至是单个预测,以找到成功和失败的案例。look at individual samples and even individual predictions to find success and failure cases

五十一为各种任务提供了广泛的评估能力,但最值得注意的是,它让你在计算可可AP和挖洞到你的模型的预测后采取下一步行动。您可以轻松地将您自己的模型预测添加到FityOne数据集中。add your own model predictions to a FiftyOne dataset

下面的示例显示如何使用FityOne的Evaluate_Detections()方法评估来自FityOne Model Zoo的模型的预测。evaluate_detections() FiftyOne Model Zoo

然后,您可以使用FityOne App来分析单个TP/FP/FN示例,并交叉引用其他属性,如注释是否为人群。FiftyOne App

一旦您在五十一评估了您的模型,您就可以使用返回的结果对象来查看AP,绘制精确调用曲线,并与念力矩阵进行交互,以便快速找到您的模型对每个班级正确和不正确的确切样本。view the AP, plot precision-recall curves interact with confusion matrices

注:交互式绘图目前仅在Jupyter笔记本中可用,但不久将支持其他上下文!Interactive plots

摘要

COCO是最流行和最有影响力的计算机视觉数据集之一。现在,FityOne对COCO的本机支持使得下载数据集的特定部分、可视化COCO和您的模型预测以及使用COCO风格的评估来评估您的模型比以往任何时候都更加容易。COCO FiftyOne’s

关于Voxel51

Voxel51总部位于密歇根州安阿伯,由密歇根大学教授Jason Corso博士和Brian Moore博士于2016年创立,是一家人工智能软件公司,通过提供开放核心软件构建块,使计算机视觉和机器学习工程师能够快速设计数据驱动的工作流,从而实现软件2.0的民主化。Voxel51

请访问50tyone.ai了解更多信息!fiftyone.ai

原创文章,作者:fendouai,如若转载,请注明出处:https://panchuang.net/2021/06/30/coco%e6%95%b0%e6%8d%ae%e9%9b%86%ef%bc%9a%e4%b8%8b%e8%bd%bd%e3%80%81%e5%8f%af%e8%a7%86%e5%8c%96%e5%92%8c%e8%af%84%e4%bc%b0%e7%9a%84%e6%9c%80%e4%bd%b3%e5%ae%9e%e8%b7%b5/

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息