在TensorF中使用MonitoredTrainingSession与Estimator的原因是什么

2024-10-03 06:26:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我看到很多例子,其中MonitoredTrainingSession或{}作为培训框架。但是我不清楚为什么我会用一个来代替另一个。两者都可以使用SessionRunHooks进行配置。两者都与tf.data.Dataset迭代器集成,并且可以提供训练/val数据集。我不知道一次安装有什么好处。在


Tags: 数据框架datatfvaldataset例子我会
1条回答
网友
1楼 · 发布于 2024-10-03 06:26:25

简而言之,MonitoredTrainingSession允许用户访问图形和会话对象以及训练循环,而Estimator则对用户隐藏图形和会话的详细信息,并且通常更容易运行培训,尤其是使用train_and_evaluate,如果需要定期评估。在

MonitoredTrainingSession不同于普通tf.会议()以一种处理变量初始化、设置文件编写器以及包含分布式培训功能的方式。在

另一方面,Estimator API是与Keras一样的高级构造。在示例中可能使用较少,因为它是后来介绍的。它还允许使用DistibutedStrategy分发培训/评估,并且它有几个允许快速原型设计的封装估计器。在

就模型定义而言,它们是相当相等的,都允许使用keras.layers,或者从头开始定义完全定制的模型。所以,无论出于什么原因,如果您需要访问图构造或定制训练循环,请使用MonitoredTrainingSession。如果您只想定义模型、训练它、运行验证和预测而不增加复杂性和样板代码,请使用Estimator

相关问题 更多 >