python中tensorflow是什么_TensorFlow字符串:它们是什么以及如何使用它们

当我用tf.read_file读取文件时,会得到类型为tf.string的文件。文档中只提到它是“可变长度字节数组”。张量的每个元素都是一个字节数组。我不知道怎么解释。

我对这种类型无能为力。在通常的python中,可以通过索引获取元素,比如my_string[:4],但是当我运行下面的代码时,会得到一个错误。import tensorflow as tf

import numpy as np

x = tf.constant("This is string")

y = x[:4]

init = tf.initialize_all_variables()

sess = tf.Session()

sess.run(init)

result = sess.run(y)

print result

上面写着File "/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/tensor_shape.py", line 621, in assert_has_rank

raise ValueError("Shape %s must have rank %d" % (self, rank))

ValueError: Shape () must have rank 1

另外,我不能将字符串转换为tf.float32张量。它是.flo文件,并且有神奇的头“PIEH”。这个numpy代码成功地将这样的头转换成了数字(参见这里的例子https://stackoverflow.com/a/28016469/4744283),但是我不能用tensorflow来实现。我试过tf.string_to_number(string, out_type=tf.float32)但是上面说tensorflow.python.framework.errors.InvalidArgumentError: StringToNumberOp could not correctly convert string: PIEH

那么,什么是弦?它的形状是什么?我怎么能至少得到绳子的一部分?我想如果我能得到它的一部分,我可以跳过“派”的一部分。

UPD:我忘了说tf.slice(string, [0], [4])也不适用于相同的错误。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值