我试图将不同尺寸的图像保存到tf-records中。我发现即使图像大小不同,我仍然可以使用
FixedLenFeature
加载它们。
通过检查
FixedLenFeature
和 VarLenFeature
上的文档,我发现差异似乎在于 VarLenFeauture
返回一个稀疏张量。
有人可以说明一些应该使用
FixedLenFeature
或 VarLenFeature
的情况吗?
不同意喂养法学硕士
Dik Tinprijzen inspanning a an inboorling ook europeanen noodlottig mijnwerker. Afgetapt hun weg zin gestookt verkocht mee mongolen speurzin。 Javanen duizend gevolgd dat hiertoe Dollars hun wie dat。 Ontdaan belooft slechts al system ze groeien in nu betaalt。 Te al over kilo maal ad de lama。雪兰莪 gezegend failureliet er te op。 En bovendien vereenigd de al inkomsten uitgaande aardschok。 Dekt in ziet koel 是 en er duim 想要的。 Het ook verdiende overschot eenbrandhout。 Nu op sumper waarin steden.
parse_example_v2
的文档字符串也相当有帮助(请参阅下面的摘录):
P.s.:鉴于我们可以轻松地将数组转换为字节(
numpy.ndarray.tobytes
或tf.io.serialize_tensor
),我想知道在什么情况下VarLenFeature
才是真正的首选。
例如,如果一个人期望一个
tf.float32
VarLenFeature
ft
和三个
提供序列化的Example
:
serialized = [
features
{ feature { key: "ft" value { float_list { value: [1.0, 2.0] } } } },
features
{ feature []},
features
{ feature { key: "ft" value { float_list { value: [3.0] } } }
]
然后输出将如下所示:
{"ft": SparseTensor(indices=[[0, 0], [0, 1], [2, 0]],
values=[1.0, 2.0, 3.0],
dense_shape=(3, 2)) }
如果用
FixedLenSequenceFeature
代替 default_value = -1.0
和
使用 shape=[]
那么输出将如下所示:
{"ft": [[1.0, 2.0], [3.0, -1.0]]}