微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – num_epochs和步骤有什么区别?

在tensorflow入门代码中:

import tensorflow as tf
import numpy as np

features = [tf.contrib.layers.real_valued_column("x",dimension=1)]
estimator = tf.contrib.learn.LinearRegressor(feature_columns=features)
x = np.array([1.,2.,3.,4.])
y = np.array([0.,-1.,-2.,-3.])
input_fn = tf.contrib.learn.io.numpy_input_fn({"x":x},y,batch_size=4,num_epochs=1000)
estimator.fit(input_fn=input_fn,steps=1000)
estimator.evaluate(input_fn=input_fn)

我知道batch_size是什么意思,但是当只有4个训练样例时,num_epochs和步骤分别是什么意思?

解决方法

时代意味着使用您拥有的全部数据.

步骤意味着使用单个批次数据.

所以,n_steps =单个纪元// batch_size中的数据数量.

根据https://www.tensorflow.org/api_docs/python/tf/contrib/learn/Trainable,

>步骤:训练模型的步骤数.如果没有,永远训练. ‘steps’以递增方式工作.如果您调用两次(步数= 10),则总共20个步骤进行训练.如果您不想有增量行为,请改为设置max_steps.如果设置,则max_steps必须为None.> batch_size:要在输入上使用的小批量大小,认为x的第一个维度.如果提供input_fn,则必须为None.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐