如何解决带有tf.data.dateset的tf.compat.v1.disable_eager_execution
我正在使用tensorflow 2.2。我有两个传递给tf.data.dataset.from_tensor_slices()的numpy数组(功能和标签):
train_dataset = tf.data.Dataset.from_tensors(feature_train_slice,label_train_slice).shuffle(buffer_size).reapeat()
test_dataset = tf.data.Dataset.from_tensors(feature_test_slice,label_test_slice).shuffle(buffer_size).repeat()
我正在尝试将此数据传递给我的model.fit():
history = self.model.fit(ds_train,steps_per_epoch=int(train_steps / (batch_size)),verbose=1,epochs=epochs,callbacks=self.call_back(),use_multiprocessing=True,validation_data = test_dataset,validation_steps = int(validation_steps / (batch_size))
)
我用过
tf.compat.v1.disable_eager_execution()
在我的代码开头。如果我将其注释掉,则培训没有问题,但是我意识到的培训速度较慢(在2080TI上,每个步骤需要2秒钟)。如果我离开它,每个步骤大约需要1.2秒。但是,该程序永远不会越过该行
train_dataset = tf.data.Dataset.from_tensors(feature_train_slice,label_train_slice).shuffle().reapeat()
我离开程序超过30分钟,虽然消耗了大约60GB(我的ram是64GB),但该程序似乎无能为力。有没有人见过这个?欢迎任何帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。