Tensorflow 在张量中查找匹配的字符串

Tensorflow finding matching strings in tensor

我正在尝试从 tf.report_uninitialized_variables(), 中找到以 train_step 结尾的变量,但是如果没有 eager execution. 你就不能迭代张量 我知道你需要使用 tf.map_fn, 但我不太了解它。

这是我的:

variables = []
for s, t in zip(tf.report_uninitialized_variables().eval(session=sess), 
                tf.report_uninitialized_variables()):
    if 'train_step' in s:
        variables.append(t)
train_step_init = tf.variables_initializer(variables, name='train_step_init')

事实证明我可以做到:

variables = []
for i, v in enumerate(tf.global_variables()):
    name = v.name.split(':')[0].encode('ASCII')
    if name in sess.run(tf.report_uninitialized_variables()[0]):
        if b'train_step' in name:
            variables.append(v)

train_step_init = tf.variables_initializer(variables)
sess.run(train_step_init)