中二节奏 AI 写谱

2026-07-31 · 20 min read · 6.5k words

Table Of Contents

  1. 1. BARGen-C2S:节拍坐标与形式语法约束下的音频条件游戏谱面生成
    1. 1.1. 摘要
    2. 1.2. 引言
    3. 1.3. 相关工作
      1. 1.3.1. 符号音乐生成
      2. 1.3.2. 音频到谱面生成
      3. 1.3.3. 受约束序列解码
      4. 1.3.4. 可控生成与条件失效
    4. 1.4. 任务定义
      1. 1.4.1. 谱面事件
      2. 1.4.2. 控制条件
      3. 1.4.3. 条件生成目标
    5. 1.5. 数据构建
      1. 1.5.1. 元数据与谱面解析
      2. 1.5.2. Song-disjoint 划分
      3. 1.5.3. 分段与上下文
    6. 1.6. 节拍坐标化音频表示
      1. 1.6.1. Piecewise-affine tempo map
      2. 1.6.2. 音频特征
    7. 1.7. BARGen-C2S
      1. 1.7.1. 架构总览
      2. 1.7.2. 层级条件嵌入
      3. 1.7.3. 小节规划器
      4. 1.7.4. 事件生成器
      5. 1.7.5. C2S tokenization
    8. 1.8. 形式语法约束
      1. 1.8.1. 自动机定义
      2. 1.8.2. Masked decoding
      3. 1.8.3. Tempo-aware timing mask
    9. 1.9. 优化目标
      1. 1.9.1. 加权负对数似然
      2. 1.9.2. Timing 与 opcode 辅助目标
      3. 1.9.3. 规划损失
      4. 1.9.4. 难度单调性
      5. 1.9.5. 音频对比目标
    10. 1.10. 训练策略
      1. 1.10.1. 谱面语言预训练
      2. 1.10.2. 音频条件拟合
    11. 1.11. 实验协议
      1. 1.11.1. 模型配置
      2. 1.11.2. 基线
      3. 1.11.3. 评价指标
    12. 1.12. 初步结果
      1. 1.12.1. 预训练
      2. 1.12.2. 音频拟合
      3. 1.12.3. 音频损失
    13. 1.13. 音频依赖的反事实检验
    14. 1.14. 消融实验设计
    15. 1.15. 失败模式
      1. 1.15.1. 语言先验压过音频
      2. 1.15.2. 稀有 opcode 欠拟合或过补偿
      3. 1.15.3. 合法但不可玩
      4. 1.15.4. 分段边界不连续
    16. 1.16. 局限性与有效性威胁
    17. 1.17. 结论
    18. 1.18. 参考文献

BARGen-C2S节拍坐标与形式语法约束下的音频条件游戏谱面生成

摘要

音频条件游戏谱面生成要求模型同时解决音乐结构理解难度控制长程动作组织与格式合法性四个问题已有符号音乐生成方法通常假设输出序列本身即为音乐而游戏谱面并不是音频的逐帧转写同一首音乐可以对应多个难度多个版本乃至不同设计风格的合法谱面因此该任务更适合建模为一个带有非唯一目标的条件结构预测问题而不是传统的音频事件检测

本文提出 BARGen-C2S一种面向 C2S 谱面的节拍对齐层级生成方法系统首先在显式 tempo map 上建立离散节拍坐标将音乐表征onset能量和拍内相位对齐到小节随后由小节规划器预测密度与音符家族分布再由因果事件生成器输出时间增量opcode轨道宽度和关联参数版本难度LevelLevel Decimal 与 gimmick 标志通过逐层条件调制注入网络为避免模型生成不可解析序列我们将 C2S 定义为确定性有限状态语法并在解码时对非法 token 施加精确零概率而不是依赖生成后的启发式修复

在按歌曲 ID 隔离的验证集上small 配置在拟合第 13 epoch 达到 82.97% 的全 token accuracy84.65% 的 timing accuracy 和 78.79% 的 opcode accuracy验证损失由 3.00 下降至 1.82与此同时音频对比损失在约 0.09 处提前进入平台表明高 teacher-forcing accuracy 并不足以证明模型真正依赖音频基于这一观察本文进一步给出反事实音频替换评价比较正确音频跨歌曲错配音频和时间扰动音频下的条件似然以区分谱面语言建模能力与听音写谱能力当前结果支持节拍坐标分项监督和语法约束的有效性但完整的音频因果性结论仍需基线消融和人工盲测验证

关键词 自动写谱音乐信息检索条件生成Transformer形式语言节拍对齐C2S

引言

节奏游戏谱面将音乐组织为一系列可操作事件一个事件不仅包含发生时间还可能包含轨道宽度持续时间方向父子关系和视觉修饰参数谱面设计者需要在音乐对应性与可玩性之间取舍落点应反映节奏音色和段落结构但不能把全部声学瞬态机械地映射为音符高难度需要更高的信息密度和操作复杂度但不能退化为随机加密

设音频为 $x$tempo map 为 $M$控制条件为 $c$谱面为 $Y$目标分布为

$$p(Y\mid x,M,c). $$

该分布通常是多峰的对于相同的 $(x,M,c)$多个谱面都可能具有合理的节奏对应和可玩性因此以逐事件完全还原为唯一目标会产生两个问题第一验证准确率惩罚与参考谱不同但仍合理的设计第二模型可能通过记忆常见谱面语言获得较高准确率而没有真正利用音频

本文将任务拆为三个层次

  1. 音乐坐标层 在变 BPM 与变拍号条件下将音频帧映射到统一 bar/tick 坐标
  2. 结构规划层 根据音频和难度条件预测各小节的事件密度与音符家族分布
  3. 语法生成层 在历史谱面音频 memory 和形式语法约束下生成完整 C2S 事件

本文的主要贡献如下

  • 提出一种保留完整 tempo map 的 C2S 规范化表示它使用相对时间 token 表达事件同时保留可逆的 96 tick/拍坐标
  • 提出规划器—生成器层级架构将宏观难度控制与微观事件生成分离并在每层注入版本难度LevelDecimal 与 gimmick 条件
  • 将 C2S 字段约束实现为确定性有限状态自动机使非法轨道缺失字段无根 Slide 和非法关联在采样阶段即获得零概率
  • 区分 tokentiming 与 opcode accuracy并提出反事实音频替换指标避免以总体 teacher-forcing accuracy 代替音频依赖证据

相关工作

符号音乐生成

基于 Transformer 的符号音乐模型已经能够生成具有中长程结构的 MIDI 或事件序列Music Transformer 使用相对注意力改善音乐重复结构建模Pop Music Transformer 以拍点为中心组织复合事件Compound Word Transformer 将同一时间位置的多字段属性组合建模这些工作证明了离散事件语言适合自回归生成但其输出通常描述音乐本身而非依赖音频难度和可玩性共同决定的操作谱面

音频到谱面生成

早期音频到谱面方法多将问题分解为 onset 检测与规则映射神经方法进一步使用卷积网络或序列模型预测离散落点然而只预测二值 onset 无法表达轨道几何长条关系和复杂 opcode也无法保证目标文件满足形式语法本文不把谱面视为 onset 标签序列而是将其视为带类型和参数的程序化事件语言

受约束序列解码

在程序生成语义解析和结构化预测中grammar-constrained decoding 常用于保证输出满足上下文无关语法或类型系统C2S 的大部分局部合法性可以由确定性状态机描述轨道宽度和关联关系还需要少量动态状态相比生成后修复在线约束不会把概率质量浪费在必然被丢弃的候选上

可控生成与条件失效

条件生成模型可能忽略弱条件尤其当自回归前文已经能够解释大部分目标时游戏谱面具有强语言先验常见节奏事件字段顺序和局部动作模式均可由历史 token 推断因此即使模型接受音频 cross-attention也不能据此断言它使用了音频本文通过错配音频和时间扰动音频构造反事实输入以测量条件依赖

任务定义

谱面事件

一张谱面由按绝对 tick 排序的事件组成

$$Y=(e_1,e_2,\ldots,e_N), $$
$$e_i=(t_i,o_i,l_i,w_i,\mathbf a_i,r_i). $$

$t_i\in\mathbb N$ 为时间$o_i$ 为 opcode$l_i$ 为起始轨道$w_i$ 为宽度$\mathbf a_i$ 为持续时间方向等参数$r_i$ 表示可选的关联标识普通轨道满足

$$0\le l_i<16,\qquad 1\le w_i\le16-l_i. $$

SlideHold 和 AIR-ACTION 等事件还受到父子关系持续时间和目标轨道约束

控制条件

控制向量为

$$c=(v_f,v,d,r,q,g), $$

其中 $v_f$ 为版本族$v$ 为具体版本$d$ 为难度$r$ 为整数 Level$q\in\{0,10,\ldots,90\}$ 为 Decimal$g$ 为 gimmick 标志$r$$q$ 分开建模可以在保持整数等级序关系的同时表达 13.013.9 的差异

条件生成目标

将事件序列编码为 token 序列 $\mathbf y=(y_1,\ldots,y_L)$模型学习

$$p_\theta(\mathbf y\mid x,M,c) =\prod_{j=1}^{L} p_\theta(y_j\mid y_{<j},x,M,c). $$

训练采用 teacher forcing推理时模型以自身输出作为历史两者之间的分布偏移意味着 token accuracy 只能衡量条件似然拟合不能直接等价为自由生成质量

数据构建

元数据与谱面解析

数据构建从 Music.xml 读取歌曲 IDreleaseTagName难度Level 和 Decimal并将其与 C2S 和音频关联解析器完整读取 timing opcode音符 opcode轨道几何持续时间和事件关联歌曲 ID谱师名和游戏统计字段不作为生成目标

在当前数据快照中共有 7,999 张可索引谱面容量审计会隔离单小节 token 数超过所选模型上限的谱面WORLD'S END 默认单独划分不参与普通难度课程训练所有训练目标必须通过同一解析器进行 encode—decode 回环

Song-disjoint 划分

划分单位为歌曲而不是谱面文件记歌曲集合为 $\mathcal S$

$$\mathcal S_{\mathrm{train}} \cap\mathcal S_{\mathrm{valid}}=\varnothing, \qquad \mathcal S_{\mathrm{train}} \cap\mathcal S_{\mathrm{test}}=\varnothing. $$

同一歌曲的 BASICADVANCEDEXPERTMASTER 和 ULTIMA 不得跨集合该设计阻止模型在训练时见到同一音频的其他难度从而避免验证泄漏

分段与上下文

目标窗口包含 8 个小节另取此前 2 小节作为只读上下文$k$ 个样本为

$$(Y_{C_k},X_{C_k\cup B_k},Y_{B_k}), $$

其中 $C_k$ 为历史区间$B_k$ 为目标区间上下文不包含未来事件窗口按 epoch 旋转使训练在固定计算预算下逐步覆盖长谱面的不同位置

节拍坐标化音频表示

Piecewise-affine tempo map

tempo map 由变速点

$$M=\{(u_j,b_j,m_j)\}_{j=1}^{J} $$

组成其中 $u_j$ 是起始 tick$b_j$ 是 BPM$m_j$ 是拍号每拍使用 $R=96$ tick$t\in[u_j,u_{j+1})$则 tick 到秒的映射为

$$s(t)=s(u_j)+\frac{60}{Rb_j}(t-u_j). $$

该映射是分段仿射的因此可精确积分变 BPM 音乐而不是以全曲平均 BPM 近似拍号决定小节长度

$$L_j=R\cdot n_j\cdot\frac{4}{d_j}, $$

其中 $n_j/d_j$ 为当前 time signature

音频特征

音频以 24 kHz 单声道输入冻结的 MERT-v1-95M得到

$$H^{\mathrm{MERT}}\in\mathbb R^{F\times768}. $$

随后拼接 onset strengthRMS energy 以及节拍相位的正余弦编码$f$ 帧相对于当前拍的归一化位置为 $\rho_f\in[0,1)$相位表示为

$$(\sin2\pi\rho_f,\cos2\pi\rho_f). $$

相同方法用于小节相位最终特征在 tempo map 上重采样到每小节固定帧数使不同 BPM 下相同音乐位置具有相同张量坐标

BARGen-C2S

架构总览

BARGen-C2S 不是一个直接把整首音频映射成整张谱面的黑盒网络而是由音频前端小节规划器事件生成器和约束解码器串联而成

flowchart TB A["Audio waveform"] --> B["Frozen MERT-v1-95M"] A --> C["Onset and RMS extraction"] M["Tempo map and time signature"] --> D["Beat-coordinate alignment"] B --> D C --> D D --> E["Beat-aligned audio frames"] E --> P["Bar-level Transformer Planner"] K["Version, difficulty, Level, decimal and gimmick"] --> P P --> Q["Density distribution"] P --> R["Event-family distribution"] P --> S["Continuous plan states"] E --> U["Audio and plan memory"] S --> U H["Previous C2S tokens"] --> V["Causal Event Decoder"] U -->|"Cross-attention"| V K -->|"Layer-wise FiLM"| V V --> W["Token logits"] G["C2S grammar automaton"] --> X["Grammar and timing mask"] M --> X W --> X X --> Y["Valid C2S event sequence"]

冻结的 MERT 负责提取音色和声节奏纹理等高层音乐表征onset 与 RMS 提供更直接的瞬态和能量信息tempo map 则负责把这些连续时间特征转换到离散谱面坐标三者的职责不同MERT 回答听起来是什么onset 回答哪里发生了瞬态tempo map 回答这个瞬态位于第几小节第几拍和第几个 tick

小节规划器先观察完整的 8 小节目标片段为每一小节预测事件密度和音符家族分布并产生连续 plan state它不决定某一个 TAP 应放在第几轨而是建立段落轮廓例如副歌是否应增密空拍是否应留白某一小节是否更适合长条或 AIR这样事件生成器不必在每一步同时推断宏观结构和局部字段

事件生成器随后进行自回归写谱它的一侧通过 causal self-attention 阅读此前的 C2S token因此能够延续交替手序重复型Hold 和 Slide 路径另一侧通过 cross-attention 阅读逐帧音频与 planner state因此可以根据当前音乐片段调整落点和音符类型最后语法自动机和 tempo-aware timing mask 删除非法输出概率模型负责在合法集合内判断哪个选择更像目标谱面自动机负责判断哪些选择根本不允许出现

采用层级结构而非单一 Transformer 有三个原因第一音频帧数与谱面 token 数之间不存在一一对应先按小节规划可缓解两种时间尺度不一致第二难度主要影响段落密度音符家族比例和操作复杂度显式 planner 比仅依赖 decoder 隐状态更容易监督和校准第三C2S 的合法性是确定规则不应要求神经网络通过样本近似学习将语法交给自动机可以把模型容量保留给音乐对应性和设计风格

层级条件嵌入

条件嵌入为

$$e_c=e_{v_f}+e_v+e_d+e_r+e_q+e_g+ \operatorname{MLP} \left[ \frac d5, \frac r{31}, \frac q{90}, \frac{r+q/100}{31.9} \right]. $$

每个 Transformer block 使用 FiLM 调制

$$\operatorname{FiLM}(h,e_c) =h\odot(1+\gamma(e_c))+\beta(e_c). $$

相比仅添加首 token逐层调制能在长序列中持续保留控制条件

小节规划器

对第 $b$ 个小节将其中音频帧池化为 $\bar x_b$规划器输入为

$$z_b^{(0)}=W_x\bar x_b+W_m m_b+p_b, $$

其中 $m_b$ 为节拍与拍号特征$p_b$ 为小节位置嵌入经过 Transformer Encoder 后得到 $z_b$并预测密度类别与音符家族分布

$$p(d_b\mid x,M,c)=\operatorname{softmax}(W_dz_b), $$
$$p(f_b\mid x,M,c)=\operatorname{softmax}(W_fz_b). $$

规划器描述这一小节应该多密主要由什么组成但不直接输出具体音符

事件生成器

事件生成器为因果 Transformer音频帧和规划表示被投影后拼接为 memory

$$H^{\mathrm{mem}}= [W_aH^{\mathrm{audio}};W_pZ^{\mathrm{plan}}]. $$

$l$ 层进行

$$h' = h+\operatorname{SelfAttn} (\operatorname{FiLM}(\operatorname{LN}(h),e_c)), $$
$$h'' = h'+\operatorname{CrossAttn} (\operatorname{FiLM}(\operatorname{LN}(h'),e_c),H^{\mathrm{mem}}), $$
$$h^{(l+1)}=h''+\operatorname{FFN} (\operatorname{FiLM}(\operatorname{LN}(h''),e_c)). $$

small 配置包含 8 个 decoder block$d=384$6 个注意力头FFN 维数 1536每隔一层使用音频 cross-attention

从条件概率角度planner 引入隐变量 $Z$模型可以近似写为

$$p(Y\mid x,M,c) \approx p_\psi(Z\mid x,M,c) p_\theta(Y\mid Z,x,M,c). $$

$Z$ 不是离散采样变量而是由 planner 产生的连续小节状态第一项学习全局结构第二项学习事件细节训练时两部分通过总损失联合优化MERT 保持冻结但从 planner 和 decoder 到音频投影层的梯度仍然存在

decoder 的 memory 同时包含细粒度音频帧与低频 plan states若只使用 plan state模型可能丢失小节内部的瞬态位置若只使用逐帧音频模型又可能缺少跨小节密度轮廓二者拼接使 cross-attention 可以在局部声学证据与宏观结构之间选择

C2S tokenization

事件被拆为时间类型和参数字段例如

<event_start> dt:48 op:TAP lane:7 width:2 <event_end>

时间使用

$$\Delta t_i=t_i-t_{i-1} $$

而非全局绝对小节号相对时间减少词表对歌曲长度的依赖并使常见节奏间隔共享参数96 tick/拍对应 4/4 小节内的 384 个离散位置

形式语法约束

自动机定义

令语法自动机为

$$\mathcal A=(Q,\Sigma,\delta,q_0,F), $$

其中 $Q$ 为状态集合$\Sigma$ 为 token 词表$\delta$ 为状态转移$q_0$ 为初始状态$F$ 为可接受状态状态除字段位置外还保存当前 opcode轨道宽度Slide 根节点和待完成参数

当前状态 $q_j$ 下允许集合为

$$V(q_j)=\{v\in\Sigma:\delta(q_j,v)\text{ 已定义}\}. $$

Masked decoding

设网络输出 logits 为 $z_j$语法约束后的 logits 为

$$\tilde z_{j,v}= \begin{cases} z_{j,v},&v\in V(q_j),\\ -\infty,&v\notin V(q_j). \end{cases} $$

因此

$$p(y_j=v\mid\cdot)=\operatorname{softmax}(\tilde z_j)_v $$

对所有非法 token 恒为零该约束排除字段乱序越界轨道非法宽度缺少 Slide root零持续时间 continuation 和不完整事件

Tempo-aware timing mask

语法合法不等于节拍合法给定 tempo map 和用户选择的细分集合 $G$允许时间位置为

$$\mathcal T(M,G)= \bigcup_b\left\{t_b+k\frac{L_b}{g}:g\in G, k\in\{0,\ldots,g-1\}\right\}. $$

时间 token 只有在累积位置属于 $\mathcal T(M,G)$ 时才允许输出由此变 BPM 改变 tick 到秒的映射但不会破坏谱面在音乐拍点上的离散对齐

优化目标

加权负对数似然

基础损失为

$$\mathcal L_{\mathrm{tok}}= -\frac{\sum_jw_{y_j}\log p_\theta(y_j\mid y_{<j},x,M,c)} {\sum_jw_{y_j}}. $$

音符类型相对 TAP 的权重为

$$w_o=\operatorname{clip} \left( \left(\frac{n_{\mathrm{TAP}}}{n_o}\right)^{1/4}, w_{\min},w_{\max} \right). $$

四次方根缩放弱于频率倒数可提高稀有 opcode 的梯度占比同时避免 FLK 等类别支配训练

Timing 与 opcode 辅助目标

$\Omega_t$$\Omega_o$ 分别为 timing token 与 opcode token 的位置集合

$$\mathcal L_t=-\frac1{|\Omega_t|} \sum_{j\in\Omega_t}\log p_\theta(y_j), $$
$$\mathcal L_o=-\frac1{|\Omega_o|} \sum_{j\in\Omega_o}\log p_\theta(y_j). $$

预训练阶段使用

$$\mathcal L_{\mathrm{pre}}= \mathcal L_{\mathrm{base}}+0.35\mathcal L_t+0.25\mathcal L_o. $$

这两个分项直接对应落点与音符类型防止大量简单参数 token 抬高总体准确率

规划损失

规划损失为

$$\mathcal L_{\mathrm{plan}}= \mathcal L_{\mathrm{density}} +\lambda_r\mathcal L_{\mathrm{reg}} +\lambda_f\mathcal L_{\mathrm{family}}. $$

其中密度使用分类交叉熵回归项使用 Smooth-$L_1$音符家族使用加权交叉熵

难度单调性

对同一音频构造较低难度条件 $c^-$要求预测密度满足

$$D(x,c)\ge D(x,c^-)+m. $$

对应 hinge loss 为

$$\mathcal L_{\mathrm{mono}}= \max(0,m-D(x,c)+D(x,c^-)). $$

该目标约束统计复杂度的序关系但不要求高难谱面在每个位置机械增密

音频对比目标

对 batch 内随机置换 $\pi$正确与错配音频的规划损失分别为 $P_i^+$$P_i^-$

$$\mathcal L_{\mathrm{audio}}= \frac1B\sum_i \max(0,\gamma+P_i^+-P_i^-), \qquad\gamma=0.20. $$

总损失为

$$\mathcal L= \mathcal L_{\mathrm{tok}} +\lambda_p\mathcal L_{\mathrm{plan}} +\lambda_m\mathcal L_{\mathrm{mono}} +\lambda_g\mathcal L_{\mathrm{grammar}} +\lambda_a\mathcal L_{\mathrm{audio}}. $$

训练策略

谱面语言预训练

预训练只学习规范化 C2S不使用音频数据由 BASICADVANCED 和约 15% EXPERT 构成每张 BASIC/ADVANCED 每 epoch 贡献一个旋转窗口预训练最少 3 epoch最多 8 epoch从第 3 epoch 起

$$\min(A_t,A_o)\ge0.70 $$

时可提前切换$A_t$$A_o$ 只在 BASIC/ADVANCED 的 song-disjoint 验证集上计算

音频条件拟合

拟合阶段使用 EXPERTMASTER 和 ULTIMA并继承预训练权重优化器为 AdamW使用 BF16梯度裁剪EMA5% warmup 和 cosine decaysmall 配置峰值学习率为 $2.75\times10^{-4}$最低学习率为峰值的 20%

flowchart LR A["All parsed charts"] --> B{"Difficulty curriculum"} B -->|"BASIC and ADVANCED + 15% EXPERT"| C["Chart-language pretraining"] C --> D{"Epoch >= 3 and min timing/opcode acc >= 0.70?"} D -->|"No, epoch < 8"| C D -->|"Yes"| E["Select best foundation checkpoint"] D -->|"No, epoch = 8"| E B -->|"EXPERT, MASTER and ULTIMA"| F["Audio-conditioned dataset"] E --> G["Initialize planner and decoder weights"] F --> G G --> H["15-epoch audio-conditioned fit"] H --> I["Song-disjoint validation"] I --> J["Best checkpoint by validation loss"] J --> K["Constrained multi-candidate inference"]

实验协议

模型配置

部分 small 配置
MERT 95M冻结
Planner 4 层$d=320$5 heads
Decoder 8 层$d=384$6 heads
Decoder FFN 1536
目标窗口 8 小节
历史上下文 2 小节
时间分辨率 96 tick/拍
Micro batch 4
Gradient accumulation 2

基线

一篇可投稿论文至少需要以下基线当前工程结果尚未完成全部基线实验因此不得把未测结果写成优越性结论

  • BPM-grid Random 按目标密度在节拍网格随机落点
  • Chart LM 只有谱面前文和控制条件不输入音频
  • Audio-only Planner 音频预测密度后由规则映射事件
  • Flat Transformer 无规划器的单阶段音频条件 Transformer
  • Unconstrained Decoder 关闭 grammar mask用生成后修复处理非法事件
  • Constant-BPM 将完整 tempo map 替换为单一 BPM

评价指标

除 token accuracy 外应报告

$$A_t=\frac{\#\text{correct timing tokens}} {\#\text{timing tokens}}, $$
$$A_o=\frac{\#\text{correct opcode tokens}} {\#\text{opcode tokens}}. $$

自由生成还应报告

  • Parse Rate 可被独立 C2S 解析器读取的候选比例
  • Rule Validity 通过轨道持续时间和关联检查的比例
  • Onset Alignment 生成事件与局部 onset 峰值的加权距离
  • Beat Deviation 事件到最近合法节拍细分的平均 tick 距离
  • Density Error 生成 judgements/min 与目标等级校准均值之差
  • Opcode F1 按 TAPHLDSLDAIRFLK 分别计算 macro-F1
  • Audio Reliance 正确音频与反事实音频的似然差
  • Human Preference 双盲成对比较的可玩性和音乐对应性

初步结果

预训练

8 epoch 后BASIC/ADVANCED 验证结果为

指标 数值
Timing accuracy 70.27%
Opcode accuracy 70.29%
全 token accuracy 69.12%

音频拟合

当前可核验的拟合曲线如下

Epoch Val loss Token acc. Timing acc. Opcode acc.
5 2.0733 76.82% 78.37% 72.38%
7 1.9713 79.71% 81.29% 75.52%
10 1.8722 81.81% 83.31% 77.61%
11 1.8507 82.30% 83.90% 78.14%
12 1.8367 82.64% 84.21% 78.52%
13 1.8227 82.97% 84.65% 78.79%

验证损失和两项关键准确率均持续改善但第 10 epoch 后边际收益显著减小该趋势符合正常的后期收敛不支持训练完全没有梯度下降的判断

音频损失

Epoch Val audio loss
1 0.1206
4 0.1034
7 0.1011
10 0.0933
11 0.0919
12 0.0922
13 0.0944

音频损失前期下降约 24%随后进入平台由于使用 hinge loss满足 margin 的 batch 损失为零因此单 batch 的 audio=0 不能解释为没有音频梯度然而平台本身说明当前规划器级对比目标不足以证明 decoder 强依赖音频

音频依赖的反事实检验

仅观察 $\mathcal L_{\mathrm{audio}}$ 不足以回答模型是否听歌对验证样本构造三种输入正确音频 $x$跨歌曲错配音频 $x'$ 和保留能量但打乱时间顺序的音频 $\tilde x$定义

$$\Delta_{\mathrm{swap}}= \mathcal L_{\mathrm{tok}}(x')- \mathcal L_{\mathrm{tok}}(x), $$
$$\Delta_{\mathrm{shuffle}}= \mathcal L_{\mathrm{tok}}(\tilde x)- \mathcal L_{\mathrm{tok}}(x). $$

若模型使用音频则两者应显著大于零统计检验以歌曲为单位进行 bootstrap而非以 token 为单位以避免长谱面获得不成比例的权重报告 95% confidence interval

$$\operatorname{CI}_{95\%} =\left[Q_{0.025}(\Delta^*),Q_{0.975}(\Delta^*)\right]. $$

在完成该实验前本文只能声称模型具备音频条件接口和规划器级对比学习不能声称已经证明强音频依赖

消融实验设计

顶会级结论需要至少完成下列消融

变体 要回答的问题
去除 tempo map 变 BPM 坐标是否必要
去除 planner 层级规划是否改善密度与长程结构
去除 grammar mask 在线约束是否提高有效候选率
去除 timing/opcode 辅助损失 分项监督是否提高关键准确率
去除历史上下文 前 2 小节是否改善连续性
去除音频 模型是否主要退化为 chart LM
错配音频训练 当前 audio loss 是否识别音乐身份
条件仅放首 token 逐层 FiLM 是否改善难度控制

每个变体至少使用三个随机种子对连续指标报告均值标准差和 paired bootstrap对人工偏好使用 Bradley–Terry 模型或双侧 binomial test并校正多重比较

失败模式

当前系统存在四类可预期失败

语言先验压过音频

decoder 在 teacher forcing 下可以从真实前文预测常见模式因而在不使用音频时仍能获得较高准确率该问题必须通过音频消融识别而不能由 cross-attention 的存在推断

稀有 opcode 欠拟合或过补偿

不加权时FLK 等事件召回率低权重过高时生成谱面会出现异常密集的 FLK四次方根权重和类别上限只是一种折中最终仍应按类别报告 precisionrecall 与生成频率偏差

合法但不可玩

grammar mask 保证的是句法合法性合法的密集纵连手位冲突或无意义 Slide 仍可能不可玩可玩性需要几何约束难度校准和人工偏好共同评价

分段边界不连续

2 小节历史能够传递局部动机但无法完整表示跨越十余小节的主题复现增加上下文会提高显存和解码成本另一方向是使用低频全曲结构 token 或检索式段落 memory

局限性与有效性威胁

  • 当前结果来自单一模型规模和单一主要随机种子不能估计训练方差
  • 尚未完成 BPM-gridchart-only 和 flat Transformer 等必要基线
  • teacher-forcing 指标不能替代自由生成质量
  • 数据来自单一谱面生态谱师风格和版本分布可能形成隐藏混杂变量
  • MERT 冻结降低过拟合与显存成本但限制了音频表示对谱面任务的适配
  • WORLD'S END 被隔离因此结论不适用于非常规轨道和极端 gimmick
  • 当前音频对比仅作用于规划器无法直接约束 decoder 的 token 级音频敏感性

结论

BARGen-C2S 将自动写谱建模为节拍坐标层级规划条件事件生成与形式语法共同约束的问题现有实验显示模型能够稳定学习 C2S 事件语言timing accuracy 超过 84%opcode accuracy 接近 79%并在完整 tempo map 上输出可被语法自动机约束的候选更重要的结果并不是某个 accuracy 数值而是音频损失与 token 损失呈现不同的收敛行为模型较早掌握怎样写得像谱面怎样针对这首音乐写谱仍是主要瓶颈

因此后续工作的优先级不应是盲目扩大模型或延长 epoch而应是完成反事实音频评价decoder 级困难负样本训练严格基线和人工盲测只有当正确音频相对错配音频显著提高条件似然并在未见歌曲上提升音乐对应性才能把该系统从一个高质量谱面语言模型称为真正的音频条件写谱模型

参考文献

  1. Vaswani, A., et al. Attention Is All You Need. NeurIPS, 2017.
  2. Huang, C.-Z. A., et al. Music Transformer: Generating Music with Long-Term Structure. ICLR, 2019.
  3. Huang, Y.-S., Yang, Y.-H. Pop Music Transformer: Beat-based Modeling and Generation of Expressive Pop Piano Compositions. ACM Multimedia, 2020.
  4. Hsiao, W.-Y., et al. Compound Word Transformer: Learning to Compose Full-Song Music over Dynamic Directed Hypergraphs. AAAI, 2021.
  5. Li, Y., et al. MERT: Acoustic Music Understanding Model with Large-Scale Self-supervised Training. ICLR, 2024.
  6. Donahue, C., Lipton, Z. C., McAuley, J. Dance Dance Convolution. ICML Workshop on Machine Learning for Music Discovery, 2017.
  7. Holtzman, A., et al. The Curious Case of Neural Text Degeneration. ICLR, 2020.
  8. Loshchilov, I., Hutter, F. Decoupled Weight Decay Regularization. ICLR, 2019.
  9. Müller, M. Fundamentals of Music Processing. Springer, 2015.
  10. Anderson, P., et al. Guided Open Vocabulary Image Captioning with Constrained Beam Search. EMNLP, 2017.