使用h5py或matlab加载时,Torch hdf5数据变为零

时间:2017-11-18 14:54:15

标签: python machine-learning hdf5 torch h5py

我用torch hdf5创建一个hdf5文件,元数据是大小为14x14的torch.FloatTensor。当用torch hdf5读取结果h5文件时,事情似乎正确:

h5_path = opt.save_root..'attention_maps.h5'
myFile = hdf5.open(h5_path, 'r')
local data = myFile:read('/000182/20'):all()
print(data)
myFile:close()

Columns 1 to 10
-0.0040 -0.0015  0.0111  0.0289  0.0484  0.0660  0.0671  0.0435  0.0196  0.0040
-0.0006  0.0110  0.0344  0.0815  0.1434  0.2010  0.2137  0.1601  0.0730  0.0232
 0.0071  0.0239  0.0517  0.1165  0.2233  0.3453  0.3882  0.2917  0.1401  0.0467
 0.0104  0.0321  0.0647  0.1620  0.3068  0.4399  0.4460  0.3741  0.2036  0.0752
............. etc
[torch.FloatTensor of size 14x14]

但是当使用h5py或matlab加载时,数据将变为全零:

array([[ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,
         0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,
         0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,
         0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,
         0.],
........................etc
dtype=float32

这是关于数据类型的吗?我应该在使用python阅读时给出数据类型 还是matlab?

0 个答案:

没有答案