我正在尝试使用 TensorFlow CLI 调试器来识别在网络训练期间导致 NaN 的操作,但是当我尝试运行代码时出现错误:
_curses.error: cbreak() returned ERR
我在 Ubuntu 服务器上运行代码,我通过 SSH 连接到该服务器,并尝试按照本教程进行操作。
我曾尝试使用tf.add_check_numerics_ops(),但网络中的层包括 while 循环,因此不兼容。这是引发错误的代码部分:
import tensorflow as tf
from tensorflow.python import debug as tf_debug
...
#Prepare data
train_data, val_data, test_data = dataset.prepare_datasets(model_config)
sess = tf.Session()
sess = tf_debug.LocalCLIDebugWrapperSession(sess)
# Create iterators
handle = tf.placeholder(tf.string, shape=[])
iterator = tf.data.Iterator.from_string_handle(handle, train_data.output_types, train_data.output_shapes)
mixed_spec, voice_spec, mixed_audio, voice_audio = iterator.get_next()
training_iterator = train_data.make_initializable_iterator()
validation_iterator = val_data.make_initializable_iterator()
testing_iterator = test_data.make_initializable_iterator()
training_handle = sess.run(training_iterator.string_handle())
...
Run Code Online (Sandbox Code Playgroud)
完整的错误是:
Traceback (most …Run Code Online (Sandbox Code Playgroud)