我开始学习Tensorflow2.0 2.0,我困惑的一个主要原因是什么时候应该使用类似keras的model.compile和tf.GradientTape来训练模型。
在用于MNIST分类的Tensorflow2.0 2.0教程中,他们训练了两个类似的模型。model.compile和tf.GradientTape。
抱歉,如果这是微不足道的,但您什么时候使用一个而另一个呢?
发布于 2019-05-09 18:21:33
这确实是一件针对具体情况的事情,在这里很难给出一个明确的答案(这可能意味着“过于基于意见”)。
compile、fit等)可快速方便地建立、培训和评估标准型号。然而,它是非常高层次/抽象的,因此不会给你太多的低级控制。如果您正在实现具有非平凡控制流的模型,这可能很难适应。GradientTape为您提供了对培训/运行模型的所有方面的完全低级别控制,允许更容易的调试以及更复杂的体系结构等,但是您需要为compiled模型将对您隐藏的许多事情编写更多的样板代码(例如,培训循环)。尽管如此,如果你在深度学习中做研究,你很可能大部分时间都在这个层次上工作。https://stackoverflow.com/questions/56064458
复制相似问题