📄 Can LLMs understand LilyPond? A benchmark for symbolic music generation and understanding
#音乐生成 #音乐理解 #基准测试 #大语言模型
7/10 | 创新 1.5/2 | 严谨 1/1.5 | 实验 1/1.5 | 清晰 1/1 | 影响 0.5/1.5 | 开源 1/1.5 | 复现 0.5/0.5 | 工程 0.5/1.5
✅ 7/10 | 前50% | #音乐生成 | #音乐理解 | #基准测试 #大语言模型 | arxiv
👥 作者与机构
Matteo Spanio, Mohammad Torabi, Andrea Poltronieri, Antonio Rodà。 主要机构:Centro di Sonologia Computazionale, University of Padova, Italy;Music Technology Group, Universitat Pompeu Fabra, Barcelona, Spain。
💡 毒舌点评
这篇论文像是给LLM音乐能力做的一次全面体检。优点是把“生成”和“理解”这两项关键能力放在一起用同一套基准(LilyBench)和同一组模型(四个开源LLM)进行了对比,这比很多只谈生成或只谈理解的工作要完整。选择LilyPond作为切入点也很有想法,比简单的ABC记谱法更复杂,更接近“代码”,对LLM的能力要求更高。但问题是,体检报告写得有点“水”。实验部分就是报了堆数字,对“为什么”生成能力(尤其是零样本编译率)和理解能力(尤其是结构任务)会出现巨大鸿沟的解释深度不够。更关键的是,论文提出的“JS和FMD指标互补”这个核心方法论贡献,虽然实验观察到了分歧,但理论分析很薄,更像是一个有趣的偶然发现,而非系统性的方法论创新。总的来说,工作有想法,有数据,但思想深度和分析锐度达不到顶会水准,更像是一份扎实的、面向社区的工具发布报告。
📌 核心摘要
本文介绍了LilyBench,一个基于LilyPond符号音乐表示法的基准测试框架,用于统一评估大型语言模型(LLM)在符号音乐生成和理解两方面的能力。研究针对四个开源LLM(Phi-4, Qwen2.5-Coder-14B, DeepSeek-Coder-V2-Lite, Codestral-22B)进行实验。生成评估包含200个提示,衡量可编译率、基于MusPy描述符的Jensen-Shannon(JS)相似度以及基于LilyBERT的Fréchet音乐距离(FMD)。理解评估改编自ABC-Eval,包含10个任务。主要发现包括:1)零样本设置下,大部分模型能生成可编译的LilyPond代码(编译率48.6%-79.3%);2)模型在识别类任务(如作曲家、风格识别)上表现良好(准确率0.50-0.96),但在需要结构推理的任务(如小节数计数、错误检测)上几乎完全失败(准确率接近0);3)JS与FMD两种分布度量指标在某些设置下会出现系统性分歧,表明它们捕捉了生成质量的不同方面,建议结合使用。论文发布了基准、提示库和评估代码。
🔗 开源详情
- 代码:https://github.com/CSCPadova/lilybench (论文明确声明发布用于完全复现的材料)
- 模型权重:论文未提供具体链接。论文评估了四个开源模型(Phi-4, Qwen2.5-Coder-14B, DeepSeek-Coder-V2-Lite, Codestral-22B),但未托管其权重。
- 数据集:
- BMdataset:论��引用[spanio2026bmdataset],描述为包含391部巴洛克作品的2645个LilyPond文件,但未提供直接获取链接。
- EMOPIA:论文引用,描述为包含120条Russell象限情感记录,未提供直接链接。
- Mutopia:作为任务来源和域外参考多次提及,未给出官方主页或直接链接。
- 复现材料:论文明确表示已发布基准、提示库、理解任务集、合成损坏集和评估代码,预计包含在上述GitHub代码仓库中。
- 论文中引用的开源项目:
- LilyPond: https://lilypond.org/
- MusPy: https://github.com/salu133144/muspy
- LilyBERT, MusicBERT, CLaMP, FMD, ABC-Eval, NoTaGen, ChatMusician:均为论文引用,未提供独立链接。
🏗️ 方法概述和架构
本文提出的方法核心是构建并应用一个名为LilyBench的统一评估框架。该框架耦合了生成基准和理解基准,并在相同的四个LLM骨干网络及参考语料库上进行评估。
参考语料库与任务数据:
- BMdataset:包含391部巴洛克作品的2645个LilyPond文件,是生成和理解任务的主要域内参考语料库。在工作级别划分训练/测试集以避免数据泄露。
- Mutopia:作为域外参考语料库。理解任务中的
bar_count、bar_sequencing等任务的输入和error_detection任务的合成损坏集均来源于此。 - EMOPIA:包含120条基于Russell象限的情感标注记录,用于情感识别理解任务。
生成基准设计与评估:
- 提示库:使用一个包含200个提示的分层策略库。每个提示包含简短的自然语言指令和元数据块(作曲家、时期、形式、编制、声部)。
- 实验设置:包括三种设置:(1) 零样本;(2) 少样本(从训练分布中采样3个示范);(3) 消融实验(使用3个手写的A小调示范,用以揭示JS/FMD指标的分歧)。
- 生成指标:
- 编译率:将模型输出的文本通过LilyPond二进制文件编译为MIDI的成功率。
- JS相似度:对渲染后的MIDI,计算MusPy提取的三个描述符(复调率、律动一致性、调式一致性)的高斯拟合分布与参考语料库分布之间的Jensen-Shannon散度,然后转换为 \(100 \cdot \exp(-2\bar{D}_{JS})\) 形式的分数。仅适用于可编译的输出。
- LilyBERT-based FMD:基于原始LilyPond文本,计算LilyBERT(第6层)嵌入的Fréchet音乐距离。计算公式为 \(\lVert\mu_{r}-\mu_{g}\rVert^{2}+\mathrm{Tr}(\Sigma_{r}+\Sigma_{g}-2\sqrt{\Sigma_{r}\Sigma_{g}})\)。该指标与编译无关。分别针对域内(BMdataset测试集)和域外(Mutopia)参考进行计算。
理解基准设计与评估:
- 任务改编:将ABC-Eval的10个理解任务移植到LilyPond表示上,按推理深度分为基础、片段、序列三组(详见Table 1)。输入为原始LilyPond文本,解码采用贪心策略(\(T=0\),
max_new_tokens=20),不使用思维链。 - 理解指标:根据任务类型采用不同指标:4选1选择题的准确率、
bar_count的精确匹配准确率(含容差分析)、bar_sequencing的惩罚Kendall-τ系数、error_detection的宏F1值。对于来自Mutopia的任务,报告8个任务的宏平均分。
- 任务改编:将ABC-Eval的10个理解任务移植到LilyPond表示上,按推理深度分为基础、片段、序列三组(详见Table 1)。输入为原始LilyPond文本,解码采用贪心策略(\(T=0\),
该框架的设计使得可以在同一套模型上,从同一种表示法出发,直接对比音乐生成能力与音乐理解能力,并分析不同评估指标之间的关联与差异。
💡 核心创新点
- 首个基于LilyPond的符号音乐评估框架(LilyBench):利用BMdataset和LilyBERT,首次将更复杂、更接近代码的LilyPond表示法系统性地用于LLM音乐能力的基准测试。
- 统一的生成与理解评估:在同一个基准中,使用相同的骨干模型和参考语料库,同时评估LLM的音乐生成和音乐理解能力,便于进行直接对比分析。
- JS与FMD指标的首次头对头比较:在相同的模型和语料库上,系统比较了基于渲染后MIDI描述符的JS相似度和基于原始文本嵌入的FMD指标,揭示了二者在评估生成质量时的互补性与分歧点,主张使用多指标三角验证。
📊 实验结果
生成结果(Table 2) 论文报告了在三种设置下,四个模型针对200个提示的生成结果。
| Regime | Model | Comp. (%) | JS(test) ↑ | JS(Mut.) ↑ | FMD(test) ↓ | FMD(Mut.) ↓ |
|---|---|---|---|---|---|---|
| Zero-shot | Phi-4 | 71.1 | 83.27 | 81.24 | 0.933 | 1.419 |
| Qwen2.5-Coder-14B | 69.0 | 84.85 | 73.80 | 1.139 | 1.681 | |
| DeepSeek-Coder-V2-Lite | 48.6 | 55.39 | 58.07 | 0.887 | 1.578 | |
| Codestral-22B | 79.3 | 75.78 | 65.56 | 0.960 | 1.722 | |
| Few-shot | Phi-4 | 35.1 | 74.80 | 67.58 | 0.701 | 1.278 |
| Qwen2.5-Coder-14B | 19.9 | 63.43 | 65.69 | 0.742 | 1.414 | |
| DeepSeek-Coder-V2-Lite | 26.3 | 57.04 | 60.23 | 0.714 | 1.428 | |
| Codestral-22B | 45.2 | 67.55 | 59.18 | 0.696 | 1.407 | |
| Ablation | Phi-4 | 99.6 | 71.13 | 69.50 | 1.874 | 2.683 |
| Qwen2.5-Coder-14B | 98.9 | 63.09 | 55.93 | 1.980 | 2.796 | |
| DeepSeek-Coder-V2-Lite | 99.9 | 53.44 | 46.96 | 1.960 | 2.773 | |
| Codestral-22B | 97.1 | 89.44 | 76.95 | 1.754 | 2.535 |
主要发现:1)零样本设置下,Phi-4, Qwen2.5-Coder-14B和Codestral-22B编译率较高(69%-79.3%),DeepSeek-Coder-V2-Lite较低(48.6%)。2)训练分布少样本示范能降低FMD(提升在LilyBERT空间中的分布相似性),但会严重损害编译率。3)消融实验(手写A小调示范)导致编译率极高(97%-99.9%),但FMD显著恶化,且JS与FMD出现分歧(如Codestral-22B的JS(test)最高,但FMD(test)最差)。4)无单一模型能在所有指标和设置上均领先。
理解结果(Table 3) 论文报告了四个模型在10个理解任务上的表现。
| Category | Task | Phi-4 | Qwen2.5-Coder-14B | Codestral-22B | DeepSeek-Coder-V2-Lite |
|---|---|---|---|---|---|
| Basic | bar_count | 0.010 | 0.020 | 0.030 | 0.000 |
| metadata_qa | 0.767 | 0.767 | 0.683 | 0.667 | |
| Segment | bar_sequencing | 0.545 | 0.521 | 0.503 | 0.542 |
| next_bar_prediction | 0.521 | 0.420 | 0.370 | 0.454 | |
| metadata_prediction | 0.650 | 0.633 | 0.083 | 0.517 | |
| Sequence | music_captioning | 0.903 | 0.935 | 0.839 | 0.677 |
| composer_recognition | 0.875 | 0.885 | 0.500 | 0.760 | |
| genre_recognition | 0.939 | 0.955 | 0.788 | 0.924 | |
| emotion_recognition | 0.283 | 0.300 | 0.000 | 0.417 | |
| error_detection | 0.009 | 0.005 | 0.014 | 0.041 | |
| Mutopia macro avg | 0.651 | 0.642 | 0.474 | 0.568 | |
| Mutopia weighted avg | 0.626 | 0.611 | 0.461 | 0.566 |
主要发现:1)识别类任务(音乐描述、作曲家、流派)表现良好(准确率0.50-0.96)。2)结构性任务(小节数计数、错误检测)几乎完全失败(准确率接近0)。3)情感识别任务也表现不佳,模型倾向于简化预测。4)Phi-4和Qwen2.5-Coder-14B在理解任务上表现最好,Codestral-22B表现最差,尤其是在格式敏感的任务上。
⚖️ 评分理由
- 创新性 (1.5/2):提出了一个有价值的、基于更复杂符号表示(LilyPond)的统一评估基准,填补了该领域的一项空白。指标比较的切入点新颖,但整体方法论创新深度有限,更偏向于系统性整合与实验验证。
- 技术严谨性 (1.0/1.5):实验设计较为完整,考虑了多种设置和指标。然而,对JS和FMD指标分歧的理论分析较浅,主要停留在现象观察层面,未能深入解释为何在特定条件下(如手写A小调示范)会出现这种分歧。对理解任务失败原因的分析(如“格式敏感任务”)也较为表面。
- 实验充分性 (1.0/1.5):实验覆盖了四个模型和三种生成设置,以及十个理解任务,数据量充足。但缺乏与更多SOTA模型(如专有大模型或最新开源模型)的对比,也缺乏对提示工程、链式思维等更复杂推理策略的深入探索,限制了结论的普适性和深度。
- 清晰度 (1.0/1.5):论文结构清晰,表格详尽。但部分关键概念(如FMD公式的物理意义、JS计算中“三个描述符”的选择依据)解释不足。对“Mutopia macro avg”等聚合指标的计算方式和意义可以更明确。
- 影响力 (0.5/1):工作为符号音乐AI社区提供了一个有用的基准和工具,具有直接的实践价值。但其技术贡献相对增量,对推动核心算法或理论突破的影响有限,更偏向于评估和分析。
- 开源 (1.0/1.5):论文明确发布了基准、提示库、理解任务集、合成损坏集和评估代码的GitHub仓库,开放性好,极大方便了社区复用和扩展。
- 可复现性 (1.0/1.5):提供了完整的代码和数据描述,使得实验在很大程度上是可复现的。然而,对使用的四个模型的具体版本、随机种子设置、硬件环境等细节描述不够详尽,可能影响精确复现。
- 工程/实践价值 (0.5/1):对于从事音乐生成、音乐理解或LLM评估的研究者和开发者,该基准和评估框架提供了直接的、可操作的工具和参考,具有较高的实用价值。
🚨 局限与问题
- 评估深度不足:虽然提出了JS与FMD指标互补的观点,但分析较为表层。未能深入探究指标分歧的根本原因,例如LilyBERT的嵌入空间究竟编码了LilyPond文本的哪些特性,使得它与基于渲染MIDI描述符的评估角度不同。这削弱了方法论贡献的说服力。
- 模型规模与类型局限:仅评估了四个14B-22B参数量的开源模型,且多为代码特化模型。未与当前最强的专有LLM(如GPT-4系列、Claude系列)或最新、更大的开源模型(如Llama 3、Mixtral等)进行对比。这使得结论“LLM能力有限”的说法可能不够全面,无法区分是模型能力问题还是表示法问题。
- 理解任务设计过于直接移植:直接将ABC-Eval的任务改编到LilyPond,并沿用相同的无思维链、贪心解码设置,可能无法充分发挥LLM在更复杂符号表示上的推理潜力。论文提到链式思维在错误检测任务上可能带来约40%的提升,但并未进行相应实验,这是一个重要的遗漏。
- 生成评估的局限性:生成质量仅通过200个提示进行评估,且提示设计未详述。缺乏对更开放域、更复杂音乐结构生成能力的评估。此外,评估指标(JS描述符、FMD)均基于分布相似性,无法评估生成音乐的艺术性、连贯性或创新性等更主观但关键的维度。
- 语料库偏差:核心语料库BMdataset仅包含巴洛克作品,LilyBERT也基于此训练。这可能导致评估结果严重偏向于巴洛克风格,对LLM在其他音乐时期或风格上的生成和理解能力评估不足。论文作者也指出了这一点,但这是其方法的一个根本性限制。
- 部分结果解读存疑:例如,在理解任务中,Codestral-22B在
emotion_recognition上得分为0.000,在metadata_prediction上仅为0.083,这可能与任务格式要求的严格性有关(如输出索引范围),论文指出这是“格式适应失败”。这暗示基准评估的可能不仅是能力,还包括模型对特定输出格式的遵从度,两者混淆会增加结果解读的难度。