【问题标题】:How to compare two deep learning models performance?如何比较两种深度学习模型的性能?
【发布时间】:2021-07-13 22:37:33
【问题描述】:

我是深度学习的新手,所以如果这个问题没有意义,请纠正我。

在传统机器学习中,我知道如何比较模型并根据我选择的指标选择最佳模型之一。

但是,在深度学习中,每个模型都是用不同的层构建的,那么如何控制变量来公平地确定哪个模型是最好的呢?或者通常人们不会这样比较?

例如我有一个序列数据,我可以同时使用 CNN 和 LSTM 模型,那么我应该将模型与只有一层 CNN 和一层 LSTM 进行比较吗?之后我可以添加更多层或调整我的模型吗?

或者谁能告诉我如何比较和选择具有所选指标的最佳深度学习模型的过程?

【问题讨论】:

  • 听起来您不太关心要运行哪些性能指标,而更多地关心如何知道要修改模型的哪些部分以提高性能?
  • 例如,我选择准确率作为比较指标,并尝试使用 CNN 和 LSTM 公平地比较结果,那么我该如何实现呢?既然深度学习模型可以自己添加更多的层?
  • 也许同时考虑准确性和速度?我不确定你所说的“相当”是什么意思。如果它们是不同类型的模型,我不确定相同的“层数”是否等于“公平”比较。但是,如果您添加更多层,通常会减慢一点速度,这通常是重要的考虑因素。
  • 所以例如我不知道与一层 LSTM 相比,两层 CNN 是否合理?

标签: machine-learning deep-learning model-comparison


【解决方案1】:

对于您提到的顺序数据, 层数与两个模型的比较无关。在某些层数处,由于过度拟合,您的准确性将开始下降。 将 1 层 CNN 与 1 层 LSTM 进行比较不是正确的方法。

您需要检查以下因素进行比较,例如 准确度、精度、召回率、f1 分数取决于您的应用目标。

例如,如果您正在处理语言翻译数据 LSTM 会是更好的选择,因为它解决了梯度消失的问题。

【讨论】:

  • 但是例如,如果我的模型具有 1 层 CNN,其平均精度高于具有 1 层 LSTM 的模型,我可以说我选择 CNN 是因为它表现更好吗?
  • 不,你不能。多层 LSTM 可能有可能超过一层或多层的 CNN。如果您只想使用一层,那么,在这种情况下您可以选择 CNN。但还要检查两个模型的测试准确性。
  • 所以根据我的理解,我们不能说哪个深度学习模型比另一个更好?与传统的机器学习模型比较一样,我们选择几个模型来运行并比较测试结果以选择最佳模型。对于深度学习模型我们不能做这个比较还是选择?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-27
  • 1970-01-01
  • 2021-12-21
  • 2018-06-29
  • 2018-10-27
  • 2017-03-27
相关资源
最近更新 更多