码,那么当执行 C 等于 E 乘以 A 时,该行不会发生任何计算。相反,这些操作会生成一个计算图或符号图,然后我们可以将该图转换为可在编译步骤调用的函数。因此,计算是代码的最后一步。旧式程序有其优缺点,符号式程序更高效,因为你可以安全地重用存储值的内存进行就地计算。
TensorFlow 的设计初衷是使用符号式程序 賭博數據 。命令式程序更加灵活,因为 Python 最适合这类程序,因此您可以使用 Python 的原生功能,例如在计算过程中打印值,以及在计算流本身中注入循环。
PyTorch 对比 Google Tensor Flow – Almost Human [第二轮]
PyTorch 的第二个关键特性是动态计算图,而不是静态计算图。换句话说,PyTorch 由“运行”定义,因此在运行时,系统会生成图结构。
TensorFlow 是“定义并运行”的,我们在 SDR 每天做什么? 图结构中定义条件和迭代。这就像在运行之前编写整个程序,因此自由度受到限制。因此,我们只需定义一次计算图,就可以多次执行同一个图。这样做的好处在于,我们可以在开始时优化图。假设在我们的模型中,我们想要使用某种策略将图分布到多台机器上。
通过重用相同的图可以减少这种计算成本高昂的优化。静态图对于大小固定的神经网络(例如前馈网络或卷积网络)效果很好,但对于很多用例来说,如 线数据库果图结构能够根据输入数据进行变化(例如使用循环神经网络时),将会非常有用。