做者|facebookresearch 编译|Flin 来源|Githubhtml
评估
评估是一个过程,须要多个输入/输出对并进行汇总。你始终能够直接使用模型,而只是手动解析其输入/输出以执行评估。或者,能够使用DatasetEvaluator 接口在detectron2中实现评估。 接口。python
- 直接使用模型:https://detectron2.readthedocs.io/tutorials/models.html
- DatasetEvaluator:https://detectron2.readthedocs.io/modules/evaluation.html#detectron2.evaluation.DatasetEvaluator)
Detectron2包括一些DatasetEvaluator
使用标准数据集特定的API(例如COCO,LVIS)来计算指标的工具。你还能够实现本身的DatasetEvaluator
,它使用输入/输出对来实现本身的其余一些工做。例如,要计算在验证集上检测到多少个实例:机器学习
class Counter(DatasetEvaluator): def reset(self): self.count = 0 def process(self, inputs, outputs): for output in outputs: self.count += len(output["instances"]) def evaluate(self): # 把self.count存起来,或者打印出来,或者返回。 return {"count": self.count}
一旦有了DatasetEvaluator
,就能够使用inference_on_dataset运行它。例如,工具
- inference_on_dataset:https://detectron2.readthedocs.io/modules/evaluation.html#detectron2.evaluation.inference_on_dataset
val_results = inference_on_dataset( model, val_data_loader, DatasetEvaluators([COCOEvaluator(...), Counter()]))
与使用模型手动运行评估相比,此功能的优点在于你能够使用DatasetEvaluators合并评估器。这样,你能够运行全部评估,而没必要屡次浏览数据集。学习
- DatasetEvaluators:https://detectron2.readthedocs.io/modules/evaluation.html#detectron2.evaluation.DatasetEvaluators
inference_on_dataset
功能还为给定的模型和数据集提供准确的速度基准。lua
原文连接:https://detectron2.readthedocs.io/tutorials/evaluation.html.net
欢迎关注磐创AI博客站: http://panchuang.net/code
sklearn机器学习中文官方文档: http://sklearn123.com/htm
欢迎关注磐创博客资源汇总站: http://docs.panchuang.net/接口