如何拟合张量流数据集 [英] how to fit tensorflow dataset

查看:114
本文介绍了如何拟合张量流数据集的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用tensorflow数据集迭代器方法来馈送模型。但是,我不确定该如何进行。任何建议将不胜感激。

I would like to feed model using tensorflow dataset iterator methods. However, I am not sure how to proceed that. Any suggestion will be highly appreciated. Thanks.

batch_size=10
tf_X_train=tf.placeholder(tf.float32, shape=[None, 410,1,10])
tf_Y_train=tf.placeholder(tf.float32, shape=[None])
train_dataset = tf.data.Dataset.from_tensor_slices((tf_X_train, tf_Y_train))
train_dataset = train_dataset.batch(batch_size)

iterator = tf.data.Iterator.from_structure(train_dataset.output_types, train_dataset.output_shapes)

data_X, data_y = iterator.get_next()

train_iterator = iterator.make_initializer(train_dataset)

with tf.Session() as sess:
    tf.global_variables_initializer()
    learning_rate=0.0001
    EPOCHS = 200
    optimizer = tf.train.AdamOptimizer(learning_rate, 0.99)
    model = cnn_model_fn(learning_rate)
    model.compile(loss='mean_squared_error',
                    optimizer=optimizer,
                    metrics=['mean_absolute_error', 'mean_squared_error'])
model.fit_generator(train_iterator,epochs=EPOCHS,steps_per_epoch=32,callbacks=[PrintDot()])


推荐答案

不知道您使用的是哪个版本,如果tf2.3且模型为tf.keras.model,则只需执行

not sure which version you are on, if tf2.3 and your model is tf.keras.model, you can simply do

batch_size=10
tf_X_train=tf.placeholder(tf.float32, shape=[None, 410,1,10])
tf_Y_train=tf.placeholder(tf.float32, shape=[None])
train_dataset = tf.data.Dataset.from_tensor_slices((tf_X_train, tf_Y_train))
train_dataset = train_dataset.batch(batch_size)


learning_rate=0.0001
EPOCHS = 200
optimizer = tf.train.AdamOptimizer(learning_rate, 0.99)
model = cnn_model_fn(learning_rate)
model.compile(loss='mean_squared_error',
                    optimizer=optimizer,
                    metrics=['mean_absolute_error', 'mean_squared_error'])

model.fit(train_dataset, epochs=EPOCHS,steps_per_epoch=32,callbacks=[PrintDot()]

您已将数据包装为tf.dataset格式,mod el.fit可以将数据集作为输入
https:// www.tensorflow.org/api_docs/python/tf/keras/Model#fit

your have wrapped data in tf.dataset format, model.fit can take dataset as input https://www.tensorflow.org/api_docs/python/tf/keras/Model#fit

这篇关于如何拟合张量流数据集的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆