tensorflow的许多示例应用程序通过调用Experiment
创建Experiment
s并运行tf.contrib.data.learn_runner.run
的方法之一。它看起来像Experiment
本质上是一个Estimator
的包装器。
创建和运行Experiment
所需的代码看起来比创建、训练和评估Estimator
所需的代码要复杂得多。我确信使用Experiment
s有好处,但我不知道它是什么。有人能帮我填一下吗?
最佳答案
tf.contrib.learn.Experiment
是用于分布式训练的高级api。这是它的医生说的:
实验是一个包含训练一个需要的所有信息的班级。
模型。
在实验之后(通过一个估计器和输入)
训练和评估),一个实验实例知道如何调用
以合理的方式训练和EVE循环
培训。
就像tf.estimator.Estimator
(和派生类)是一个隐藏矩阵乘法、保存检查点等的高级api一样,tf.contrib.learn.Experiment
试图隐藏distributed computation需要做的样板,即tf.train.ClusterSpec
、tf.train.Server
、作业、任务等。
你可以在没有机器的情况下对一个机器进行训练和评估。参见this tutorial中的示例。