使用的结构化数据对象tf.tensor简单TensorFlow(Keras)模型

问题描述 投票:2回答:1

我有两个对象张,trainlabels。该数据集train有100种功能,并labels有1种功能。无论trainlabels有M个条目。类似地,我们有一个devdev_labels设定的特征和N个条目相同的各编号。从TensorFlow进口Keras后,我们建立一个神经网络,如下所示:

model = keras.Sequential([
    keras.layers.Flatten(input_shape=[100]),
    keras.layers.Dense(100, activation=tf.nn.relu),
    keras.layers.Dense(10, activation=tf.nn.softmax)
])

model.compile(optimizer='adam', 
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

现在,我们要适应模式,与对于Q时代的尺寸P的批次。

model.fit(train_X, train_Y, validation_data=(dev_X, dev_Y), epochs=Q, steps_per_epoch=??, validation_steps=??)

阅读model.fit的文件后,我仍然不知道什么是正确的steps_per_epochvalidation_steps这里。当使用数据张量作为输入提供给模型,这些参数必须被指定。在这个例子中,你会我们指定steps_per_epochvalidation_steps

python tensorflow keras
1个回答
0
投票

steps_per_epoch应大致等于(默认为32)的训练样例通过批量大小划分数。类似地validation_steps应大致等于验证实例由批量大小划分数。你可以找到的文档here

steps_per_epoch:整数或无。宣布一个历元结束并且开始下一个历元之前的步骤(样品批次)总数。当与输入张量如TensorFlow数据张量训练,默认无等于在数据集中的样品通过批量大小,或1,如果不能判定的分割的数量。

validation_steps:只有在指定steps_per_epoch相关。的总步数(样品批次)停止之前验证。

在你的情况下,他们应该是

steps_per_epoch = len(train_X) / batch_size
validation_steps = len(dev_X) / batch_size
© www.soinside.com 2019 - 2024. All rights reserved.