培训批次:哪种Tensorflow方法是正确的?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了培训批次:哪种Tensorflow方法是正确的?相关的知识,希望对你有一定的参考价值。

我正在尝试训练一个非常简单的神经网络来对数据样本进行分类,其中某些类必然会成功完成其他类 - 这就是我决定让输入数据分批进入网络的原因。使用Tensorflow,显然你可以通过多种方式声明批量,例如tf.data.Dataset.batch(我目前使用Adam Optimizer训练)和tf.train.batch。区别在哪里?这些方法应该一起使用还是排他性的?在后一种情况下:我应该选择哪一个?

答案

tf.train.*是一个较旧的API,比tf.data.*更复杂且容易出错(你需要自己照顾队列,线程运行器,协调器等)。为了您的声明目的(批处理数据并将其提供给模型),两者在功能上是等效的,因为两者都达到了目标。但是,您应该考虑使用tf.data,因为它更易于使用,而currently recommended way则可以处理输入数据集。

以上是关于培训批次:哪种Tensorflow方法是正确的?的主要内容,如果未能解决你的问题,请参考以下文章

在执行第一个 epoch 后,Tensorflow 无法将批次附加在一起

如何在 TensorFlow 中处理具有可变长度序列的批次?

通过 TensorFlow 消费大数据

合并 tensorflow 数据集批次

tensorflow 批次读取文件内的数据,并将顺序随机化处理. --[python]

Tensorflow 2.0:从回调中访问批次的张量