[英]How to convert numpy arrays to standard TensorFlow format?
我有兩個 numpy 數組:
我想將這些加載到 TensorFlow 中,以便我可以使用神經網絡對它們進行分類。 如何做到這一點?
numpy 數組需要什么形狀?
附加信息 - 我的圖像是 60(高)乘 160(寬)像素,每個都有 5 個字母數字字符。 這是一個示例圖像:
每個標簽都是一個 5 x 62 的數組。
您可以使用tf.convert_to_tensor()
:
import tensorflow as tf
import numpy as np
data = [[1,2,3],[4,5,6]]
data_np = np.asarray(data, np.float32)
data_tf = tf.convert_to_tensor(data_np, np.float32)
sess = tf.InteractiveSession()
print(data_tf.eval())
sess.close()
這是此方法文檔的鏈接:
https://www.tensorflow.org/api_docs/python/tf/convert_to_tensor
為此,您可以使用tf.pack (TensorFlow 1.0.0 中的tf.stack )方法。 以下是如何將numpy.ndarray
類型的隨機圖像numpy.ndarray
到Tensor
:
import numpy as np
import tensorflow as tf
random_image = np.random.randint(0,256, (300,400,3))
random_image_tensor = tf.pack(random_image)
tf.InteractiveSession()
evaluated_tensor = random_image_tensor.eval()
更新:要將 Python 對象轉換為張量,您可以使用tf.convert_to_tensor函數。
您可以使用占位符和 feed_dict。
假設我們有這樣的 numpy 數組:
trX = np.linspace(-1, 1, 101)
trY = 2 * trX + np.random.randn(*trX.shape) * 0.33
您可以聲明兩個占位符:
X = tf.placeholder("float")
Y = tf.placeholder("float")
然后,在您的模型、成本等中使用這些占位符(X 和 Y):model = tf.mul(X, w) ... Y ... ...
最后,當您運行模型/成本時,使用 feed_dict 提供 numpy 數組:
with tf.Session() as sess:
....
sess.run(model, feed_dict={X: trY, Y: trY})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.