评估多种机器学习模型的正确方法

时间:2020-05-04 19:01:16

标签: python machine-learning

我正在为我的机器学习项目用Python编写一个QARegression模块,我想在其中评估多个模型。假设这是一个在多个文件夹中的多个图像上运行的图像识别模型。

 - folder-1
   - img-1
   - img-2
   - img-3
 - folder-2
   - img-1
   ......

这样写是否重要

for eachFolder in FolderList:
    for eachImage in ImageList:
        for eachModel in ModelList:
            evaluate(predicted, GroundTruth)

for eachModel in ModelList:
    for eachFolder in FolderList:
        for eachImage in ImageList:
            evaluate(predicted, GroundTruth)

最后我想要这样的输出

model_1 : score1
model_2 : score2
.
.
.

方面会更好
  1. 运行时复杂度

  2. 正确性

还是没关系,我们可以反正写吗?

2 个答案:

答案 0 :(得分:0)

大概取决于外部因素。如果每个模型都需要很长时间加载,则您希望尽可能少地加载它,因此希望模型向外循环。如果每个图像都非常大,则希望不经常加载它们,因此希望图像循环位于模型循环之外。

答案 1 :(得分:0)

他们两个都将评估每个模型。但是你应该去第二个。第二个模型将采用一个模型,并使用所有文件夹中的所有图像评估该模型。这比对不同图像一次又一次加载模型要好。同样,使用第一个代码段来评估所有模型也将更加困难。