как мне преобразовать tf.Variable в numpy?

#python #numpy #tensorflow

#python #numpy #тензорный поток

Вопрос:

Как я могу преобразовать a tf.Variable в массив numpy?

 var1 = tf.Variable(4.0)
 

Я хочу получить [4.0]

Комментарии:

1. Добро пожаловать. Было бы здорово, если бы вы могли включить код, который вы пытались достичь своей цели.

Ответ №1:

Вы можете просто вызвать .numpy() тензорный объект.

 import tensorflow as tf

a = tf.Variable(4.0)
b = tf.Variable([4.0])
c = tf.Variable([[1, 2], [3, 4]])

a.numpy()
# 4.0

b.numpy()
# array([4.], dtype=float32)

c.numpy()
# array([[1, 2],
       [3, 4]], dtype=int32)
 

Подробнее см. в разделе Основы настройки: тензоры и операции. Также, как указано в документах

Массив Numpy может совместно использовать память с тензорным объектом. Любые изменения в одном могут быть отражены в другом.


Если активное выполнение отключено, вы можете построить график, а затем запустить его tf.compat.v1.Session :

 import tensorflow as tf

a = tf.Variable(4.0)
b = tf.Variable([4.0])
c = tf.Variable([[1, 2], [3, 4]])

a.eval(session=tf.compat.v1.Session())
# 4.0