speechbrain.dataio.legacy 模块

SpeechBrain 扩展 CSV 兼容性。

摘要

类:

CSVItem

传统的扩展CSV数据项三元组

ExtendedCSVDataset

为DynamicItemDataset提供扩展的CSV兼容性。

函数:

load_sb_extended_csv

加载SB扩展CSV并格式化字符串值。

read_pkl

此函数读取以pkl格式存储的张量。

参考

class speechbrain.dataio.legacy.CSVItem(data, format, opts)

基础:tuple

传统的扩展CSV数据项三元组

data

字段编号 0 的别名

format

字段编号1的别名

opts

字段编号2的别名

class speechbrain.dataio.legacy.ExtendedCSVDataset(csvpath, replacements={}, sorting='original', min_duration=0, max_duration=36000, dynamic_items=[], output_keys=[])[source]

基础类: DynamicItemDataset

DynamicItemDataset 的扩展 CSV 兼容性。

使用SpeechBrain扩展的CSV数据格式,其中CSV必须包含‘ID’和‘duration’字段。

其余字段以三元组形式出现: , _format, _opts

这些在字典中添加了一个_sb_data项。此外,还创建了一个基本的DynamicItem(参见DynamicItemDataset),它加载_sb_data项。

支持使用$to_replace进行类似Bash的字符串替换。

注意

从旧版接口映射:

  • csv文件 -> csv路径

  • sentence_sorting -> sorting, 并且不支持“random”,请使用例如 make_dataloader(..., shuffle = (sorting=="random"))

  • avoid_if_shorter_than -> min_duration

  • avoid_if_longer_than -> max_duration

  • csv_read -> output_keys,如果你想添加ID,请将“id”作为键

Parameters:
  • csvpath (str, path) – 扩展CSV的路径。

  • replacements (dict) – 用于类似Bash的$前缀替换, 例如 {"data_folder": "/home/speechbrain/data"},这将 把 $data_folder/utt1.wav 转换为 /home/speechbrain/data/utt1.wav

  • 排序 ({"original", "ascending", "descending"}) – 保持CSV顺序,或按持续时间升序或降序排序。

  • min_duration (float, int) – 最小持续时间(以秒为单位)。丢弃其他条目。

  • max_duration (float, int) – 最大持续时间(以秒为单位)。丢弃其他条目。

  • dynamic_items (list) –

    获取示例时生成的额外动态项的配置。DynamicItems 列表或带有键的字典:

    func: <callable> # 待调用
    takes: <list> # 此函数接受的参数键或键列表
    provides: key # 此函数提供的键或键列表
    

    注意:每个 CSV 数据三元组都会自动添加一个动态项

  • output_keys (list, None) – 要生成的输出键列表。您可以参考CSV数据三元组的名称。例如,如果CSV包含:wav,wav_format,wav_opts,那么数据集将有一个动态项输出,键为"wav"。注意:如果为None,则读取所有现有的。

speechbrain.dataio.legacy.load_sb_extended_csv(csv_path, replacements={})[source]

加载SB扩展CSV并格式化字符串值。

使用SpeechBrain扩展的CSV数据格式,其中CSV必须包含‘ID’和‘duration’字段。

其余字段以三元组形式出现: , _format, _opts

这些在字典中添加了一个_sb_data项。此外,还创建了一个基本的DynamicItem(参见DynamicItemDataset),它加载了_sb_data项。

支持使用$to_replace进行类似Bash的字符串替换。

这种格式有其限制,但它们允许某些任务通过CSV指定加载。

Parameters:
  • csv_path (str) – CSV文件的路径。

  • replacements (dict) – 可选的字典: 例如 {"data_folder": "/home/speechbrain/data"} 这用于递归格式化数据中的所有字符串值。

Returns:

  • dict – 应用替换后的CSV数据。

  • list – 要添加到DynamicItemDataset中的DynamicItems列表。

speechbrain.dataio.legacy.read_pkl(file, data_options={}, lab2ind=None)[source]

此函数读取以pkl格式存储的张量。

Parameters:
  • 文件 (str) – 要读取的文件的路径。

  • data_options (dict, 可选) – 包含读取器选项的字典。

  • lab2ind (dict, optional) – 从标签到整数索引的映射。

Returns:

包含读取信号的数组。

Return type:

numpy.array