tensorflow的许多示例应用程序通过调用Experiment创建Experiments并运行tf.contrib.data.learn_runner.run的方法之一。它看起来像Experiment本质上是一个Estimator的包装器。
创建和运行Experiment所需的代码看起来比创建、训练和评估Estimator所需的代码要复杂得多。我确信使用Experiments有好处,但我不知道它是什么。有人能帮我填一下吗?

最佳答案

tf.contrib.learn.Experiment是用于分布式训练的高级api。这是它的医生说的:
实验是一个包含训练一个需要的所有信息的班级。
模型。
在实验之后(通过一个估计器和输入)
训练和评估),一个实验实例知道如何调用
以合理的方式训练和EVE循环
培训。
就像tf.estimator.Estimator(和派生类)是一个隐藏矩阵乘法、保存检查点等的高级api一样,tf.contrib.learn.Experiment试图隐藏distributed computation需要做的样板,即tf.train.ClusterSpectf.train.Server、作业、任务等。
你可以在没有机器的情况下对一个机器进行训练和评估。参见this tutorial中的示例。

08-25 08:02