天天看點

在tensorflow[1.x/2.x]下,實作tensor與numpy互轉

轉自 https://blog.csdn.net/qq_36229876/article/details/106451399

https://blog.csdn.net/qq_36229876/article/details/106451399

https://blog.csdn.net/pan15125284/article/details/93589469?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param

與numpy的互相轉換,必不可少。

請注意,tf2因為使用eager機制,轉換時不需要new session。出現如下錯誤,多半是沒有搞清楚所在環境。‘Tensor’ object has no attribute ‘numpy’

TF1.x

tensor -> numpy

with tf.Session() as sess:
        numpy_data = tensor_data.eval()
           

numpy->tensor

TF2.x

tensor -> numpy

numpy -> tensor

tensorflow2.0 numpy.ndarray 與tenor直接互轉

import numpy as np
import tensorflow as tf
 
a = np.random.random((5,3))
b = np.random.randint(0,9,(3,1))
c = tf.tensordot(a.astype(np.float),b.astype(np.float),axes=1)
# tensor 轉ndarray
dn = c.numpy()
print(dn)
# ndarray轉tensor
tn = tf.convert_to_tensor(dn)
print(tn)
           

繼續閱讀