如何将numpy数组转换为标准TensorFlow格式?
machine-learning
numpy
python
tensorflow
5
0

我有两个numpy数组:

  • 一个包含验证码图像的图像
  • 另一个包含相应标签的标签(单播矢量格式)

我想将它们加载到TensorFlow中,以便可以使用神经网络对其进行分类。如何才能做到这一点?

numpy数组需要具有什么形状?

附加信息-我的图像每个都是60(高)乘160(宽)像素,每个图像都有5个字母数字字符。这是一个示例图像:

样本图片。

每个标签为5 x 62阵列。

参考资料:
Stack Overflow
收藏
评论
共 3 个回答
高赞 时间 活跃

您可以使用占位符和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})
收藏
评论

您可以使用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.ndarrayTensor

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函数。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号