melodyhub
收藏数据集概述
名称: MelodyHub
许可证: MIT
任务类别: 文本生成
大小类别: 1M<n<10M
标签: 音乐
数据集摘要: MelodyHub 是一个精心策划的数据集,主要用于训练 MelodyT5。该数据集包含 261,900 首以 ABC 记谱法格式编排的旋律,来源于公共乐谱数据集和在线平台。它包括民歌和其他无版权音乐作品,确保了传统和时代的多样性。数据集涵盖七个以旋律为中心的任务:分类、生成、和声、旋律化、分割、转录和变奏。这些任务产生了超过一百万个任务实例,为符号音乐处理提供了全面的资源。每个任务都以乐谱到乐谱的格式呈现,输入数据中包含任务标识符。MelodyHub 的严格筛选过程确保了高质量、一致的数据,适合开发和评估符号音乐模型。
ABC 记谱法
ABC 记谱法是一种基于 ASCII 的纯文本音乐记谱系统,常用于转录传统音乐和在线分享乐谱。它提供了一种简单而简洁的方式来表示音符、节奏、和弦等音乐元素。
旋律筛选
MelodyHub 数据集通过公开可用的乐谱数据集和在线平台进行筛选,原始格式包括 ABC 记谱法、MusicXML 和 Humdrum。数据筛选过程包括以下步骤:
-
排除版权条目: 排除带有明确版权标识(如“copyright”或“©”符号)的条目。
-
格式标准化: 所有数据首先转换为 MusicXML 格式进行标准化,然后转换为 ABC 记谱法,以确保数据集中的格式一致。
-
按音乐复杂度过滤: 排除少于八小节的旋律,以保持足够的复杂度和音乐丰富性。
-
去除非音乐内容: 删除歌词和非音乐内容(如转录者的联系信息和 URL 链接),专注于音乐记谱。
-
修剪静音小节: 移除每个作品开头和结尾的完全静音小节,以精简音乐内容。
-
验证小节线: 每个作品都经过验证是否包含最终小节线。如果缺失,则添加小节线以确保完整性和一致性。
-
去重: 进行去重处理,以防止重复并确保每个旋律在数据集中是唯一的。
通过这些步骤,MelodyHub 数据集形成了一个包含 261,900 首旋律的大量集合,具有统一的格式,适合训练和评估符号音乐模型如 MelodyT5。
任务定义
在旋律数据筛选之后,MelodyHub 数据集被分为七个任务,以乐谱到乐谱的格式呈现,包含输入-输出对。在 MelodyHub 中,每个输入数据都包含一个任务标识符(例如 %%harmonization),用于指定预期的任务。以下是这些任务的定义:
-
分类: 选择包含音乐相关元数据(如标题、作曲家和地理起源)的旋律。输入数据包含这些属性的信息字段,而特定信息被移除且顺序被打乱。输出包含相应的元数据,但不包含音乐乐谱。
-
生成: 输入仅包含任务标识符(即
%%generation),输出包含完整的音乐乐谱。遵循 TunesFormer,所有旋律都附加了控制代码作为信息字段,以表示音乐结构信息。这些代码,即S:、B:和E:,分别表示乐曲的段数、每段的小节数以及每对段之间的编辑距离相似度。 -
和声: 该任务涉及包含和弦符号的旋律。和弦符号从输入中移除,而原始数据作为输出保留。输出附加一个表示编辑距离相似度的信息字段(
E:),指示输入和输出之间的相似度,范围从 0 到 10(完全不匹配到完全匹配)。较低的相似度值表明需要更多的和弦符号。 -
旋律化: 与和声相反,该任务操作相反,也使用包含和弦符号的旋律。原始乐谱中的音符被替换为休止符,相邻的休止符持续时间被合并。结果乐谱,包含休止符和和弦符号,作为输入。与和声类似,输出开头添加一个
E:字段,较低的值有助于生成更复杂的旋律。 -
分割: 选择包含大括号表示分割或来自 JSB 合唱团数据集(四部分作品)的旋律,包含停顿标记。这些标记被转换为呼吸标记。输入数据省略所有呼吸标记,而输出在开头添加一个
E:字段,以帮助生成呼吸标记,较低的值意味着需要添加更多的呼吸标记。 -
转录: ABC 记谱法首先转换为 MIDI,然后重新转换回 ABC。从 MIDI 转换得到的 ABC 丢失了大量的乐谱信息,如区分等音和缺失的音乐装饰(如颤音)。MIDI 转换的 ABC 作为输入,而原始 ABC 附加一个
E:字段作为输出。较低的E:值表示转录和输入乐谱之间的差异较大,特别是由于缺少重复符号。 -
变奏: 该任务集中于 The Session 中的数据,其中每个 ABC 记谱法文件可能包含同一乐曲的多个变体。选择包含两个或更多变体的乐曲,每对变体都用作输入和输出。输出以一个
E:字段开始,表示输入和输出乐谱之间的差异程度,较低的值表示乐谱之间有显著的变体。
这些任务总共包含 1,067,747 个实例,涵盖了音乐信息检索(MIR)中的分析到生成挑战。这个全面的数据集为开发和评估符号音乐模型如 MelodyT5 提供了宝贵的资源。




