【问题标题】:"pure virtual method called terminate" in TensorflowTensorflow 中的“称为终止的纯虚拟方法”
【发布时间】:2019-03-19 07:25:17
【问题描述】:

使用tf.data.Dataset API搭建数据管道,训练时遇到错误:

pure virtual method called terminate 
called without an active exception 
Aborted (core dumped)

值得注意的是,错误不是在开始时出现,而是在训练过程的中间(4800 epochs 之后)。以下是我构建管道的方式:

import tensorflow as tf

epochs = 30000
eval_step = 400
sess = tf.InteractiveSession()
# code to read and process data

features_placeholder = tf.placeholder(train_features.dtype, train_features.shape)
labels_placeholder = tf.placeholder(train_labels.dtype, train_labels.shape)

train_dataset = tf.data.Dataset.from_tensor_slices((features_placeholder, labels_placeholder, file_list_input))
train_dataset = train_dataset.repeat()
train_dataset = train_dataset.batch(batch_size_placeholder)
train_dataset = train_dataset.prefetch(buffer_size=1)

val_dataset = tf.data.Dataset.from_tensor_slices((features_placeholder, labels_placeholder, file_list_input))
val_dataset = val_dataset.repeat()
val_dataset = val_dataset.batch(batch_size_placeholder)

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

train_iterator = iterator.make_initializer(train_dataset)
val_iterator = iterator.make_initializer(val_dataset)

# code to build model
for i in range(epochs):
    sess.run([train_iterator, ... # other ops],
             feed_dict = {[features_placeholder: train_features,
                           labels_placeholder: train_labels]})
    if (i%eval_step)==0:
        sess.run([val_iterator, ... # other ops],
             feed_dict = {[features_placeholder: val_features,
                           labels_placeholder: val_labels]})

有人遇到过同样的问题吗?我该如何解决?

【问题讨论】:

    标签: python tensorflow


    【解决方案1】:

    我在 tensorflow 1.12 上可能遇到了同样的问题,升级到 1.13 后解决了。祝你好运!

    【讨论】:

    • 训练你的模型时,你有多少数据?我怀疑这是因为 tf.data.Dataset 无法处理大量数据。
    猜你喜欢
    • 1970-01-01
    • 2012-05-04
    • 1970-01-01
    • 2015-12-19
    • 2012-04-02
    • 2014-03-03
    • 2011-06-24
    • 1970-01-01
    • 2010-11-21
    相关资源
    最近更新 更多