Я хочу использовать TensorFlow для обучения некоторых скрытых (недоступных до времени выполнения) переменных.Я получаю следующую ошибку: «ValueError: установка элемента массива с последовательностью.»
Я могу получить ожидаемые результаты, если я инициализирую «a» постоянными значениями, но мое приложение не допускает значения«а» будет известно до времени выполнения, и я намерен использовать градиентный спуск, чтобы уточнить их после того, как они станут доступны.Похоже, «заполнитель» обеспечивает эту функциональность, но мне, видимо, нужна некоторая помощь для их правильного использования.Я хочу знать правильный способ подачи скрытых переменных в график TensorFlow.Вот упрощенное воспроизведение:
import tensorflow as tf
import numpy as np
a = tf.placeholder(tf.float64, [2, 1])
b = tf.Variable(np.array([[1., 3.]]))
c = tf.matmul(a, b)
latent = tf.Variable(np.array([[2.],[3.]]))
init_op = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init_op)
print(sess.run(c, feed_dict={a: latent}))
Ожидаемые результаты: [[2. 6.] [3. 9.]]
Фактические результаты: ValueError: установка элемента массива с последовательностью.