如何计算机器学习模型的复杂性

时间:2018-11-20 01:19:52

标签: tensorflow

我正在研究将深度学习模型与车载网络通信安全中的应用进行比较。我想知道如何计算这些模型的复杂度,以了解所提出模型的性能。我正在使用tensorflow

1 个答案:

答案 0 :(得分:0)

您可以比较两个深层网络在空间和时间方面的复杂性。

关于空间复杂度:

模型中的参数数量->这与模型所消耗的内存量成正比。

关于时间复杂度:

  1. 以给定的批次大小训练单个批次所需的时间。
  2. 培训收敛所需的时间
  3. 对单个样本进行推理所需的时间

一些论文还讨论了体系结构的复杂性。例如,如果GoogLeNet的准确性仅略高于VGG-net,那么某些人可能更喜欢VGG-net,因为它易于实施。

您还可以讨论有关网络对超参数调整的容忍度的一些分析,即更改超参数时性能如何变化。

如果您的模型处于分布式设置中,那么还有其他事情需要提及,例如通信间隔,因为有时它是瓶颈。

总而言之,您可以讨论在其他网络中以不同方式实施的任何事情,并且会增加额外的复杂性,而不会相对于您的网络提高准确性。

我不希望您这样做,但是还有一个名为deepBench的开源项目可以对不同的深度网络模型进行基准测试。