2016-10-31 3 views
0

Ich bin ziemlich neu in Caffe und in Deep Learning. Ich möchte mein Modell mithilfe des Datasets trainieren, das von here heruntergeladen wurde.Fehler beim Auffinden von HDF5-Daten

Meine Zugdaten haben das Format hdf5. Es hat auch folgende Parameter.

{ 
    "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 
} 

Ich habe folgende Datenschicht in meinem Zugmodell.

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 
    } 
} 

Ich erhalte folgende Fehlermeldung angezeigt, wenn ich versuche, meine train.hdf5 Daten zu trainieren, die in train.txt Datei erwähnt wird.

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) 

Jede Art von Hilfe oder Vorschlag wird sehr geschätzt.

+1

was "Datensätze" haben Sie in ' 'train.hdf5'' Datei? Sie können durch die Eingabe (in Bash-Shell) sehen folgendermaßen aus: 'h5ls train.hdf5' – Shai

+0

Kulturen Datensatz {27482, 3, 128, 192} Etiketten Datensatz {27482, 12} Datensatz bedeuten {3, 128, 192} pids Datensatz {27482} – MIRMIX

+1

Dann können Sie keine "top" -Daten haben, die einzigen Optionen, die Sie haben, sind "crops", "labels", "mean" oder "pids". Weitere Informationen finden Sie [diese Antwort] (http://stackoverflow.com/a/34261942/1714410). – Shai

Antwort

4

In caffe Eingangsdatenschicht Ausgang Blob kann nur nach den Namen von Datensätzen innerhalb der Datei .hdf5 benannt werden. My-Datensatz hat Struktur folgende

crops  Dataset {27482, 3, 128, 192} 
labels  Dataset {27482, 12} 
mean  Dataset {3, 128, 192} 
pids  Dataset {27482} 

Mit Hilfe von @Shai Ich löse es so:

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 
    } 
} 
+4

Bitte zerstören Sie Ihre Beiträge nicht. Sobald Sie eine Antwort veröffentlicht haben, haben Sie den Inhalt an die Stack Overflow-Community (unter der CC-by-SA-Lizenz) lizenziert. Wenn Sie diesen Beitrag von Ihrem Konto trennen möchten, lesen Sie [Was ist der richtige Weg für eine Ablehnungsanfrage] (http://meta.stackoverflow.com/questions/323395/what-is-the-proper-route-for -a-Dissoziation-Anfrage)? –

Verwandte Themen