为什么TensorFlow Estimator API将输入作为lambda?

jkf*_*kff 7 python tensorflow tensorflow-datasets tensorflow-estimator

tf.estimatorAPI需要输入"输入功能"返回Dataset秒.例如,Estimator.train()拿一个input_fn(文档).

在我看过的例子中,无论何时手动提供此函数,它都是无争议的lambda.

这是不是意味着函数总是返回相同的值?或者它是否多次调用而没有参数?我无法找到关于此的文档.为什么函数不像train()只是Dataset明确地输入?

ash*_*ash 3

Dataset对象也由计算图中的节点支持。Estimator在每个 等上构建计算图。train()通过evaluate()这样做,EstimatorAPI 确保不同Estimator对象上的操作是隔离的和Tensor/Dataset或形成独立的图。

如果您有兴趣,可以查看一些代码指针(适用于 TensorFlow 1.7):

希望有帮助。