Проблемы с тензорным центром: таблица не инициализирована

Я пытаюсь использовать tf_hub для универсального предложения-кодировщика большого размера, когда у меня возникает следующая проблема:

FailedPreconditionError (see above for traceback): Table not initialized.

Кажется, что TensorFlow думает, что я не запустил init op, но на самом деле я запустил init op:

embed = hub.Module("https://tfhub.dev/google/universal-sentence-encoder-large/3")
embeddings = embed([
"The quick brown fox jumps over the lazy dog."])    
init = tf.global_variables_initializer()


with tf.Session() as sess:
    sess.run(init)
    embeddings = sess.run(embeddings)

    print(embeddings)

Та же самая структура кода была в порядке с другими моделями tf_hub, такими как elmo,

1 ответ

Похоже, для использования этого концентратора тензорного потока мне нужно запустить дополнительный инициализатор:

init = tf.global_variables_initializer()
table_init = tf.tables_initializer()

with tf.Session() as sess:
    sess.run([init, table_init])
    embeddings_ = sess.run(embeddings)

    print(embeddings)

Вы можете попробовать

with tf.train.SingularMonitoredSession() as sess:
  ...

который сам выполняет все стандартные инициализации (включая "общие ресурсы", для которых не было общедоступного API в прошлый раз, когда я проверял).

Другие вопросы по тегам