je la structure suivante dans un fichier txt:Comment créer un fichier HDF5 (classification des étiquettes mutli) sur fichier txt à utiliser dans Caffe
/path/to/image x y /path/to/image x y
où x et y sont des nombres entiers.
Ce que je veux faire est maintenant: Créez un fichier hdf5 à utiliser dans Caffe ('train.prototxt'
)
code Python Mon ressemble à ceci:
import h5py
import numpy as np
import os
text = 'train'
text_dir = text + '.txt'
data = np.genfromtxt(text_dir, delimiter=" ", dtype=None)
h = h5py.File(text + '.hdf5', 'w')
h.create_dataset('data', data=data[:1])
h.create_dataset('label', data=data[1:])
with open(text + "_hdf5.txt", "w") as textfile:
textfile.write(os.getcwd() + '/' +text + '.hdf5')
Mais cela ne fonctionne pas! Des idées sur ce qui pourrait être faux?
Oui, j'ai regardé cette réponse. Mais cette réponse est liée à des étiquettes uniques: ** y = np.zeros ((1, len (lignes)), dtype = 'f4') ** ** y [i] = float (sp [1]) ** Comment créeriez-vous cela pour la classification multi-étiquettes? – thigi
vous devriez avoir 'y' avec' shape' "num-of-examples" -by- "dim de y" – Shai
J'ai deux classes et chaque classe a 36 étiquettes. Vous voulez dire num-exaxmples = num images et dim de y est 2? y = np.zeros ((2, num-images), dtype = 'f4') – thigi