jg583/NSynth
收藏Hugging Face2024-04-26 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/jg583/NSynth
下载链接
链接失效反馈官方服务:
资源简介:
NSynth数据集是一个包含超过300,000个音乐音符的音频数据集,涵盖了超过1000种商业采样乐器,每个音符都通过音高、音色和包络进行区分。每个录音都是通过播放并保持一个音乐音符三秒钟,然后让它衰减一秒钟来制作的。这些四秒的录音涵盖了标准MIDI钢琴上的每个音高(或给定乐器的尽可能多的音高),并以五种不同的速度播放。该数据集旨在为音频机器学习建立一个高质量的切入点,并作为音频机器学习的基准和未来数据集的基础。
NSynth数据集是一个包含超过300,000个音乐音符的音频数据集,涵盖了超过1000种商业采样乐器,每个音符都通过音高、音色和包络进行区分。每个录音都是通过播放并保持一个音乐音符三秒钟,然后让它衰减一秒钟来制作的。这些四秒的录音涵盖了标准MIDI钢琴上的每个音高(或给定乐器的尽可能多的音高),并以五种不同的速度播放。该数据集旨在为音频机器学习建立一个高质量的切入点,并作为音频机器学习的基准和未来数据集的基础。
提供机构:
jg583
原始信息汇总
数据集卡片 for NSynth
数据集概述
NSynth 数据集是一个包含超过 300,000 个音乐音符的音频数据集,涵盖超过 1000 种商业采样乐器,通过音高、音色和包络进行区分。每个录音是通过演奏并保持一个音乐音符三秒钟,然后让其衰减一秒钟完成的。这些四秒钟的录音涵盖了标准 MIDI 钢琴上的每个音高(或尽可能多的给定乐器),并以五种不同的速度演奏。
数据集描述
由于某些乐器无法产生 MIDI 钢琴的 88 个音高范围内的所有音高,因此每个乐器平均有 65.4 个音高。此外,商业采样包偶尔会包含多个速度下的重复声音,每个音高平均有 4.75 个独特的速度。
每个音符都附有三个额外的信息,这些信息基于人类评估和启发式算法的组合:
- 来源:音符乐器的声音产生方法。可以是
acoustic(从声学乐器录制)、electronic(从电子乐器录制)或synthetic(合成乐器)。 - 家族:音符乐器所属的高级家族。每个乐器都属于一个家族。
- 音质:音符的声学音质。
数据集结构
数据集分为三个部分:
- 训练集:包含 289,205 个示例。乐器不与验证集或测试集重叠。
- 验证集:包含 12,678 个示例。乐器不与训练集重叠。
- 测试集:包含 4,096 个示例。乐器不与训练集重叠。
特征描述
| 特征 | 类型 | 描述 |
|---|---|---|
| note | int64 |
音符的唯一整数标识符。 |
| note_str | str |
音符的唯一字符串标识符,格式为 <instrument_str>-<pitch>-<velocity>。 |
| instrument | int64 |
音符合成所用乐器的唯一顺序标识符。 |
| instrument_str | str |
音符合成所用乐器的唯一字符串标识符,格式为 <instrument_family_str>-<instrument_production_str>-<instrument_name>。 |
| pitch | int64 |
0 到 127 之间的 MIDI 音高。 |
| velocity | int64 |
0 到 127 之间的 MIDI 速度。 |
| sample_rate | int64 |
音频特征的每秒采样数。 |
| qualities | [int64] |
表示该音符中存在哪些声学音质的二进制向量。 |
| qualities_str | [str] |
从声学音质列表中选择的该音符中存在的音质列表。 |
| instrument_family | int64 |
该乐器所属乐器家族的索引。 |
| instrument_family_str | str |
该乐器所属乐器家族的标识符。 |
| instrument_source | int64 |
该乐器声音来源的索引。 |
| instrument_source_str | str |
该乐器声音来源的标识符。 |
| audio | {path: str, array: [float], sampling_rate: int64} |
包含对应音频文件路径、音频样本列表(范围为 [-1,1] 的浮点值)和采样率的字典。 |
潜在缺点
某些家族-来源组合几乎没有或没有代表性。虽然在某些情况下可以理解(例如没有声学合成主音),但在其他情况下可能会有问题(没有合成铜管、弦乐或风琴,电子铜管、长笛、簧片和弦乐样本少于 100 个)。这在分类问题中可能特别麻烦,因为模型可能没有足够的数据来正确区分特定家族乐器的来源。在音乐生成方面,这些差异可能会导致对某个家族使用一种来源的偏见。
搜集汇总
数据集介绍

构建方式
在音频机器学习领域,构建高质量数据集是推动算法发展的基石。NSynth数据集的构建过程体现了严谨的科学方法,其采集了超过1000种商业采样乐器产生的30余万个音符,每个音符均以标准MIDI钢琴音高为基础,覆盖了乐器所能演奏的全部音域。每个音频样本采用四秒时长设计,包含三秒持续发音与一秒衰减过程,并针对每个音高录制了五种不同力度层次的版本。数据采集过程中充分考虑了乐器物理特性限制,通过自动化脚本与人工校验相结合的方式,确保了音符标注的准确性,最终形成包含训练集、验证集和测试集的完整数据架构,且各集合间乐器样本互不重叠。
特点
作为音乐计算研究的重要资源,NSynth数据集展现出多维度特征体系。其核心特征在于每个音符样本均附有精细的元数据标注,包括乐器声源类型(原声、电子、合成)、乐器家族分类(涵盖贝斯、铜管、弦乐等11个类别)以及音色品质描述(明亮度、衰减特性等10种声学属性)。数据集采用16000Hz采样率存储波形数据,同时提供MIDI音高、力度等音乐参数,这种结构化设计使得数据同时具备听觉信号与符号信息的双重表征。特别值得注意的是,数据集通过独热编码形式呈现音色品质向量,为音色分析与合成任务提供了可直接使用的特征表示。
使用方法
在音乐信息检索与生成模型研究中,NSynth数据集提供了标准化的使用范式。研究者可通过HuggingFace平台直接加载数据集,其内置的数据加载脚本会自动解析音频文件与标注信息的对应关系。典型应用场景包括音频分类任务——通过instrument_family字段实现乐器家族识别,或利用qualities字段进行音色属性预测;在生成建模领域,该数据集常作为WaveNet等自编码器的训练素材,用于学习音符级别的声学特征表示。使用时应特别注意数据划分原则:训练集、验证集和测试集采用乐器不相交划分策略,这要求模型必须学会泛化到未见过的乐器音色,从而更真实地评估模型性能。
背景与挑战
背景概述
NSynth数据集诞生于2017年,由Google Magenta团队主导研发,旨在为音频机器学习领域提供一个高质量、标准化的基准资源。该数据集收录了超过30万个音乐音符,涵盖1000多种商业采样乐器,每个音符均以四秒音频片段呈现,并标注了音高、音色、包络及乐器家族等多维度属性。其核心研究问题聚焦于解决音频合成与音乐生成任务中高质量训练数据的匮乏,通过提供结构化、大规模的音符级数据,推动了神经网络在音频合成、乐器分类及音乐生成等方向的研究进展,成为音频机器学习领域的重要基石。
当前挑战
NSynth数据集面临的挑战主要体现在两个方面:在领域问题层面,音频合成与音乐生成任务需克服音色建模的复杂性,包括对乐器动态特性、谐波结构及时间演变的精确捕捉,而现有模型在生成连贯、自然的长时间序列音频方面仍存在显著困难。在构建过程层面,数据采集受限于乐器物理特性,部分乐器无法覆盖完整MIDI音高范围,导致音高分布不均;同时,商业采样包中存在速度层重复样本,影响了数据多样性。此外,乐器家族与音源类别的样本分布严重失衡,如合成类铜管、弦乐及管风琴样本缺失,电子类部分家族样本稀少,这给分类任务的模型泛化与生成任务的公平性带来了潜在偏差。
常用场景
经典使用场景
在音频机器学习领域,NSynth数据集作为一项基准资源,常被用于探索音符级别的音频生成与合成。其精心标注的音高、音色和包络信息,为研究者提供了构建自监督学习模型的理想素材,尤其是在基于WaveNet等自编码器的架构中,能够有效模拟不同乐器音符的声学特性。通过该数据集,模型得以学习从潜在空间到音频波形的映射关系,推动了可控音乐合成的技术进步。
解决学术问题
NSynth数据集针对音频机器学习中高质量数据匮乏的瓶颈,系统性地解决了乐器音符跨音高、音色和包络的标准化表征问题。它促进了音频合成模型在泛化能力与可控性方面的研究,例如在音色迁移、音符插值和条件生成等任务中,为量化评估模型性能提供了可靠基准。该数据集的出现,填补了音频领域与图像领域在基准数据集方面的差距,加速了生成模型从视觉到听觉的跨模态迁移。
衍生相关工作
围绕NSynth数据集,一系列经典研究工作相继涌现。例如,原始论文提出的WaveNet自编码器框架奠定了神经音频合成的基础;后续研究如NSynth-MelGAN则结合了生成对抗网络以提升合成效率与音质。此外,该数据集也被拓展用于跨乐器音色迁移、音符属性解耦表示学习等方向,催生了如InstrumentGAN和TimbreTron等工作,持续推动着音频合成与音乐信息检索领域的交叉创新。
以上内容由遇见数据集搜集并总结生成



