扩展Detectron2的默认值

作者|facebookresearch
编译|Flin
来源|Github

扩展Detectron2的默认值

研究是以新的方式做事。这给如何在代码中创建抽象带来了压力,
对于任何规模较大的研究工程项目而言,这都是一个挑战:

  1. 一方面,它需要具有非常精简的抽象,以允许以新方式进行所有操作。打破现有的抽象并将其替换为新的抽象应该相当容易。

  2. 另一方面,这样的项目也需要合理的高层抽象,以便用户可以轻松地以标准方式进行操作,而不必担心仅某些研究人员关心的细节。

在detectron2中,有两种类型的接口可以共同解决这种压力:

  1. 仅采用”config”参数的函数和类(在成熟接口的情况下,可选地带有最少的一组额外参数)。
    这些函数和类实现”标准默认”行为:它将从配置中读取所需内容并执行”标准”操作。用户只需要加载一个标准配置并传递它,而不必担心使用了哪些参数以及它们的含义。

  2. 具有定义明确的自变量的函数和类。

    这些都是整个系统的一个很小的组成部分。它们需要用户费力地缝在一起,但是可以以更灵活的方式缝在一起。当你需要实现不同于detectron2中包含的”标准默认值”的某些东西时,可以重复使用这些定义明确的组件。

如果你只需要标准行为,请阅读入门指南(https://detectron2.readthedocs.io/tutorials/getting_started.html)
应该足够了。如果你需要将detectron2扩展到自己的需要,
有关更多详细信息,请参见以下教程:

  • Detectron2包含一些标准数据集,但是你可以使用自定义数据集。请参阅(https://detectron2.readthedocs.io/tutorials/datasets.html)。
  • Detectron2包含从数据集创建数据加载器的标准逻辑,但是你也可以编写自己的逻辑。请参阅(https://detectron2.readthedocs.io/tutorials/data_loading.html)。
  • Detectron2实现许多标准的检测模型,并为你提供覆盖其行为的方法。请参见使用模型(https://detectron2.readthedocs.io/tutorials/models.html)和编写模型(https://detectron2.readthedocs.io/tutorials/write-models.html)。
  • Detectron2提供了默认的训练循环,适用于常见的训练任务。你可以使用hooks自定义它,也可以编写自己的循环。见(https://detectron2.readthedocs.io/tutorials/training.html)。

原文链接:https://detectron2.readthedocs.io/tutorials/extend.html

未经允许不得转载,请联系zhouas@hotmail.com获取授权:目标检测 » 扩展Detectron2的默认值

赞 (2) 打赏

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

鄂ICP备18005284号