Deep learning 找不到HDF5数据集数据

Deep learning 找不到HDF5数据集数据,deep-learning,caffe,hdf5,hdf,Deep Learning,Caffe,Hdf5,Hdf,我对咖啡馆和深度学习都是新手。我想使用从下载的数据集来训练我的模型 我的列车数据为hdf5格式。它还具有以下参数 { "debug": false, "git_revision": "60c477dae59f3d1378568e2ebea054a135683e2f", "height": 128, "no_train_mirrors": false, "output_dir": "/tmp/parse27k_crops_64x128",

我对咖啡馆和深度学习都是新手。我想使用从下载的数据集来训练我的模型

我的列车数据为hdf5格式。它还具有以下参数

{
    "debug": false, 
    "git_revision": "60c477dae59f3d1378568e2ebea054a135683e2f", 
    "height": 128, 
    "no_train_mirrors": false, 
    "output_dir": "/tmp/parse27k_crops_64x128", 
    "output_mode": "hdf5", 
    "padding": 32, 
    "padding_mode": "edge", 
    "parse_path": "/fast_work/sudowe/parse27k", 
    "single_threaded": false, 
    "verbose": false, 
    "width": 64
}
我的列车模型中有以下数据层

layer {
  name: "data"
  type: "HDF5Data"
  top: "data"
  top: "label"
  hdf5_data_param {
    source: "path_to_caffe/caffe/examples/hdf5_classification/data/train.txt"
    batch_size: 10
  }
   include {
    phase: TRAIN
  }
}
当我试图训练train.txt文件中提到的train.hdf5数据时,我收到以下错误消息

I1031 11:52:10.185920  8670 layer_factory.hpp:77] Creating layer data
I1031 11:52:10.185933  8670 net.cpp:100] Creating Layer data
I1031 11:52:10.185940  8670 net.cpp:408] data -> data
I1031 11:52:10.185957  8670 net.cpp:408] data -> label
I1031 11:52:10.185971  8670 hdf5_data_layer.cpp:79] Loading list of HDF5 filenames from: path_to_caffe/caffe/examples/hdf5_classification/data/train.txt
I1031 11:52:10.186003  8670 hdf5_data_layer.cpp:93] Number of HDF5 files: 2
F1031 11:52:10.186825  8670 hdf5.cpp:14] Check failed: H5LTfind_dataset(file_id, dataset_name_) Failed to find HDF5 dataset data
*** Check failure stack trace: ***
    @     0x7f231a6a1daa  (unknown)
    @     0x7f231a6a1ce4  (unknown)
    @     0x7f231a6a16e6  (unknown)
    @     0x7f231a6a4687  (unknown)
    @     0x7f231acca607  caffe::hdf5_load_nd_dataset_helper<>()
    @     0x7f231acc93d5  caffe::hdf5_load_nd_dataset<>()
    @     0x7f231ad5172e  caffe::HDF5DataLayer<>::LoadHDF5FileData()
    @     0x7f231ad50548  caffe::HDF5DataLayer<>::LayerSetUp()
    @     0x7f231acaf3ac  caffe::Net<>::Init()
    @     0x7f231acb0235  caffe::Net<>::Net()
    @     0x7f231ae0332a  caffe::Solver<>::InitTrainNet()
    @     0x7f231ae0442c  caffe::Solver<>::Init()
    @     0x7f231ae0475a  caffe::Solver<>::Solver()
    @     0x7f231adf8453  caffe::Creator_SGDSolver<>()
    @           0x40f0fe  caffe::SolverRegistry<>::CreateSolver()
    @           0x408134  train()
    @           0x405b3c  main
    @     0x7f23196adf45  (unknown)
    @           0x4063ab  (unknown)
    @              (nil)  (unknown)
i10311:52:10.185920 8670图层工厂.hpp:77]创建图层数据
I10311:52:10.185933 8670 net.cpp:100]创建图层数据
I10311:52:10.185940 8670 net.cpp:408]数据->数据
I10311:52:10.185957 8670 net.cpp:408]数据->标签
I10311:52:10.185971 8670 hdf5_data_layer.cpp:79]hdf5文件名的加载列表从:path_到_-caffe/caffe/examples/hdf5_classification/data/train.txt
I10311:52:10.186003 8670 hdf5_数据_层。cpp:93]hdf5文件数:2
F10311:52:10.186825 8670 hdf5.cpp:14]检查失败:H5LTfind_数据集(文件id、数据集名称)未能找到hdf5数据集数据
***检查故障堆栈跟踪:***
@0x7f231a6a1daa(未知)
@0x7f231a6a1ce4(未知)
@0x7f231a6a16e6(未知)
@0x7f231a6a4687(未知)
@0x7f231acca607 caffe::hdf5\u加载\u和\u数据集\u帮助程序()
@0x7f231acc93d5 caffe::hdf5_加载_和_数据集()
@0x7f231ad5172e caffe::HDF5DataLayer::LoadHDF5FileData()
@0x7f231ad50548 caffe::HDF5DataLayer::LayerSetUp()
@0x7f231acaf3ac caffe::Net::Init()
@0x7f231acb0235 caffe::Net::Net()
@0x7f231ae0332a caffe::Solver::InitTrainNet()
@0x7f231ae0442c caffe::Solver::Init()
@0x7f231ae0475a caffe::解算器::解算器()
@0x7f231adf8453 caffe::创建者_SGDSolver()
@0x40f0fe caffe::SolverRegistry::CreateSolver()
@0x408134列车()
@0x405b3c主
@0x7f23196adf45(未知)
@0x4063ab(未知)
@(无)(未知)

任何帮助或建议都将不胜感激。

在caffe输入数据层中,输出blob只能以.hdf5文件中的数据集名称命名。 我的数据集具有以下结构

通过@Shai的帮助,我可以这样解决:

layer {
  name: "data"
  type: "HDF5Data"
  top: "crops"
  top: "labels"
  include {
    phase: TRAIN
  }
  hdf5_data_param {
    source: "path_to_caffe/examples/hdf5_classification/data/train.txt"
    batch_size: 64
  }
}

在caffe输入数据层中,输出blob只能以.hdf5文件中的数据集名称命名。 我的数据集具有以下结构

通过@Shai的帮助,我可以这样解决:

layer {
  name: "data"
  type: "HDF5Data"
  top: "crops"
  top: "labels"
  include {
    phase: TRAIN
  }
  hdf5_data_param {
    source: "path_to_caffe/examples/hdf5_classification/data/train.txt"
    batch_size: 64
  }
}

'train.hdf5'
文件中有哪些“数据集”?通过键入(在bashshell中)可以看到这一点:
h5ls train.hdf5
crops数据集{27482,3,128,192}标签数据集{27482,12}平均数据集{3,128,192}pids数据集{27482}那么您不能有“top”
数据
,您仅有的选项是
“crops”
“标签”
“平均值”
“PID”
。有关更多信息,请参阅。您不必拥有所有这些“顶部”,但不能拥有其他顶部。当使用“HDF5Data”层从HDF5读取数据时,caffe使用HDF5数据集名称将相关数据集与相应的“top”相关联。谢谢,这真的很有帮助。我很欣赏
'train.hdf5'
文件中有哪些“数据集”?通过键入(在bashshell中)可以看到这一点:
h5ls train.hdf5
crops数据集{27482,3,128,192}标签数据集{27482,12}平均数据集{3,128,192}pids数据集{27482}那么您不能有“top”
数据
,您仅有的选项是
“crops”
“标签”
“平均值”
“PID”
。有关更多信息,请参阅。您不必拥有所有这些“顶部”,但不能拥有其他顶部。当使用“HDF5Data”层从HDF5读取数据时,caffe使用HDF5数据集名称将相关数据集与相应的“top”相关联。谢谢,这真的很有帮助。请不要破坏你的帖子。发布答案后,您就可以将内容授权给Stack Overflow社区(在CC by SA许可证下)。如果您想解除此帖子与您帐户的关联,请参阅?请不要破坏您的帖子。发布答案后,您就可以将内容授权给Stack Overflow社区(在CC by SA许可证下)。如果您想取消此帖子与您的帐户的关联,请参阅?