How to compute the complexity of machine learning models

核能气质少年 提交于 2021-01-29 08:45:49

问题


I am working on comparison of deep learning models with application in Vehicular network communication security. I want to know how I can compute the complexity of these models to know the performance of my proposed ones. I am making use of tensorflow


回答1:


You can compare the complexity of two deep networks with respect to space and time.

Regarding space complexity:

Number of parameters in your model -> this is directly proportional to the amount of memory consumed by your model.

Regarding time complexity:

  1. Amount of time it takes to train a single batch for a given batch size.
  2. Amount of time it takes for training to converge
  3. Amount of time it takes to perform inference on a single sample

Some papers also discuss the architecture complexity. For example, if GoogLeNet accuracy is only marginally higher than VGG-net, some people might prefer VGG-net as it is a lot easier to implement.

You can also discuss some analysis on tolerance of your network to hyperparameter tuning i.e. how your performance varies when you change the hyperparameters.

If your model is in a distributed setting, there are other things to mention such as the communication interval as it is the bottleneck sometimes.

In summary, you can discuss pretty much anything you feel that is implemented differently in another network and that is contributing additional complexity without much improvement in accuracy with respect to your network.

I don't think you would want it but there is also an open source project called deepBench to benchmark different deep network models.



来源:https://stackoverflow.com/questions/53384906/how-to-compute-the-complexity-of-machine-learning-models

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!