Я уже обучил модель UBM, и теперь я пытаюсь реализовать адаптацию динамиков, когда я получил следующую ошибку.
Исключение: show enroll / кое-что.Файл HDF5
Я получил два файла "enroll" и "test" в файле "feat", который содержит соответственно функции (.h5) для обучения и тестирования, и мой enroll_idmap генерируется с помощью аудиозаписей (.wav) только для тренировок.И, мои файлы WAV и файлы feat разделены.Я думаю, что у меня проблема с idmap."enroll / something.wav" - это правое место в моем enroll_idmap, но что означает этот "файл HDF5"?
Может кто-нибудь сказать мне, что означает эта ошибка и как ее исправить?
Вот код моего enroll_idmap
def __init__(self):
BASE_DIR = "./Database/sidekit_data"
self.AUDIO_DIR = os.path.join(BASE_DIR, "audio")
self.FEATURE_DIR = os.path.join(BASE_DIR, "feat")
self.TASK_DIR = os.path.join(BASE_DIR, "task")
def create_idMap(self, group):
# Make enrollment (IdMap) file list
group_dir = os.path.join(self.AUDIO_DIR, group) # enrollment data directory
group_files = os.listdir(group_dir)
group_models = [files.split('_')[0] for files in group_files] # list of model IDs
group_segments = [group+"/"+f for f in group_files]
# Generate IdMap
group_idmap = sidekit.IdMap()
group_idmap.leftids = np.asarray(group_models)
group_idmap.rightids = np.asarray(group_segments)
group_idmap.start = np.empty(group_idmap.rightids.shape, '|O')
group_idmap.stop = np.empty(group_idmap.rightids.shape, '|O')
if group_idmap.validate():
group_idmap.write(os.path.join(self.TASK_DIR, group+'_idmap.h5'))
else:
raise RuntimeError('Problems with creating idMap file')
И после этого я получил enroll_idmap и test_idmap с:
create_idMap("enroll")
create_idMap("test")
А вот код адаптации говорящего, приведенная выше ошибка появляется во время выполнения enroll_stat.accumulate_stat (…):
BASE_DIR = "./Database/sidekit_data"
enroll_idmap = sidekit.IdMap.read(os.path.join(BASE_DIR, "task", "enroll_idmap.h5"))
ubm = sidekit.Mixture()
model_name = "ubm_{}.h5".format(NUM_GUASSIANS)
ubm.read(os.path.join(BASE_DIR, "ubm", model_name))
server_eval = sidekit.FeaturesServer(feature_filename_structure="./Database/sidekit_data/feat/{}.h5",
...
...)
print("Compute the sufficient statistics")
enroll_stat.accumulate_stat(ubm=ubm,
feature_server=server_eval,
seg_indices=range(enroll_stat.segset.shape[0]),
num_thread=nbThread
)
Это не похоже набольшая проблема, но она останавливает меня на несколько дней, помогите пожалуйста.