当前位置 : 主页 > 网络编程 > lua >

lua – 使用Torch-hdf5将Tensor保存到Hdf5

来源:互联网 收集:自由互联 发布时间:2021-06-23
我正在尝试使用Torch-hdf5将一些张量保存到hdf5! 我想非常仔细地遵循这个文件: https://github.com/deepmind/torch-hdf5/blob/master/doc/usage.md 但是,在写入hdf5部分时,它的例子是: require 'hdf5'local m
我正在尝试使用Torch-hdf5将一些张量保存到hdf5!

我想非常仔细地遵循这个文件:
https://github.com/deepmind/torch-hdf5/blob/master/doc/usage.md

但是,在写入hdf5部分时,它的例子是:

require 'hdf5'
local myFile = hdf5.open('/path/to/write.h5', 'w')
myFile:write('/path/to/data', torch.rand(5, 5))
myFile:close()

我理解“/ path/to/write.h5”是指最终文件,但是什么是“/ path / to / data”?它只是一个随机的独立路径吗?所以我只是放下“数据/”.然后我得到了这个可怕的错误:

HDF5-DIAG: Error detected in HDF5 (1.8.13) thread 0:
  #000: H5G.c line 287 in H5Gcreate2(): no name
    major: Invalid arguments to routine
    minor: Bad value
HDF5-DIAG: Error detected in HDF5 (1.8.13) thread 0:
  #000: H5I.c line 2245 in H5Iget_name(): can't retrieve object location
    major: Object atom
    minor: Can't get value
  #001: H5Gloc.c line 253 in H5G_loc(): invalid object ID
    major: Invalid arguments to routine
    minor: Bad value

hdf5是否单独存储数据和指令文件?这就是为什么我们通过两条路径?

第一个路径是磁盘上实际文件的路径.这是存储所有内容的地方.

local myFile = hdf5.open('/path/to/write.h5', 'w')

第二条路径即数据路径是文件中键名的路径,它导致张量. Hdf5将数据存储为字典字典,因此/ path / to / data表示名为“path”的全局字典键,它导致名为“to”的字典键,从而导致最终键“data”,然后导致张量.这可以作为hdf5Data [“path”] [“to”] [“data”]访问,然后加载hdf5文件.

myFile:write('/path/to/data', torch.rand(5, 5))

希望这可以帮助.

网友评论