0

我是使用 sidekit 进行说话人识别的新手,我遇到了一个问题,我需要使用“feature_list”。feature_list=ubm_list 但特征列表中有什么?它说它包含用于训练 GMM 的特征文件列表。但是功能文件中应该包含什么。

ubm=sk.Mixture()
ubm_list="/home/david/Documents/development_set/anthonyschaller-20071221-/list"
ubm.EM_split(features_server=server,feature_list=ubm_list,
            distrib_nb=1024,iterations=(1,2,2,4,4,4,4,8,8,8,8,8,8),
            num_thread=10,llk_gain=0.01,save_partial=False,ceil_cov=10,
            floor_cov=1e-2)
4

1 回答 1

0

是的,你是对的..ubm_list是可能具有扩展名的功能文件列表。.h5所以,你ubm_list应该是:

import os

feat_dir = "/home/david/Documents/development_set/anthonyschaller-20071221-/list"
ubm_list = os.listdir(feat_dir)

根据您的第二个问题,feat_dir应该包含HDF5 格式的功能文件(具有 .h5 扩展名的文件)。您可以使用模块打开这些文件之一h5py进行探索。我用我的一个做到了这一点,这是我发现的:

>>> import h5py
>>>
>>> hf = h5py.File('/media/anwar/SIDEKIT-1.3/feat/S01.h5', 'r')
>>> hf.keys()
<KeysViewHDF5 ['S01.wav', 'compression']>

>>> # explore the second key 'compression'
>>> k2 = hf.get('compression')
>>> type(k2)
<class 'h5py._hl.dataset.Dataset'>

>>> #explore the first key 'S01.wav'
>>> k1 = hf.get('S01.wav')
>>> k1.keys()
<KeysViewHDF5 ['cep', 'cep_header', 'cep_mean', 'cep_min_range', 'cep_std',
 'energy', 'energy_header', 'energy_mean', 'energy_min_range', 'energy_std',
 'fb', 'fb_header', 'fb_mean', 'fb_min_range', 'fb_std', 'vad']>

下图来自以前版本的文档,您可以在其中找到我上面提到的所有信息,并稍作更改: 在此处输入图像描述

于 2019-02-18T11:50:03.973 回答