框架介绍
动态图和静态图
动态图:pytorch使用的,运算与搭建同时进行;灵活,易调节。即先有数据,再拿着数据按照算式算数。
静态图:老tensorflow使用的,先搭建图,后运算;高效,不灵活;图搭建好后不能修改。即先有算式(模型),再把数据往里带。
静态图先说明数据要怎么计算,然后再放入数据。假设要放入50组数据,运算图因为是事先构建的,所以每一次计算梯度都很快、高效;动态图的运算图是在数据计算的同时构建的,假设要放入50组数据,那么就要生成50次运算图。这样就没有那么高效。所以称为动态图。
动态图虽然没有那么高效,但是他的优点有以下:
- 更容易调试。
- 动态计算更适用于自然语言处理。(这个可能是因为自然语言处理的输入往往不定长?)
- 动态图更面向对象编程,我们会感觉更加自然。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.