【22年10月】团子AI研发日志
团子AI · 2022-10-31 预告
【22年10月】团子AI研发日志

久等啦,在这个月的最后一天我们例行的公布本月的研发日志。

本月我们在持续实验伴奏人声提取8.0算法的可行性,经过大量的显卡(女骑士)的啸叫,我们骄傲的宣布:实验进展非常成功!😇

一个好的源分离AI,需要两种东西来支撑它:数据和算法。

数据理解起来很简单,我们喂给AI大量的、各式各样的歌曲和人声,AI在大量学习之后就学会了如何分离歌曲中的伴奏和人声,喂的数据越多样,AI对各种风格的歌曲提取能力就更强,团子在8.0中重新“清洗”了我们曾经的训练数据——挑出那些有问题的、可能让AI学习错误或混淆的数据,并且我们额外的增加了数千对新的数据,这其中更是包括了国风乐器等内容,来让AI更懂音乐。

而数据是砖块的话,算法就是钢筋和地基了,他直接决定了AI的上限。

在今年年初我们就提出了一种想象中的先进且现代的AI模型,8.0我们希望通过实验来做出它,这是我们计划中的最优解,但如果时间太久或者无法实现我们也只好继续沿用7系列的算法模型。幸运的是我们近几日的实验非常成功,验证了我们想象中的模型是可以研发的——我们提出了一种“音质可控的”AI模型算法。

在团子5代算法之后,细心的用户可以看到我们经常提出一个词叫“齿音”,其实这只是我们给的一个能让用户能简单理解的“昵称”,它的真实学名是“相位伪影(Phase Artifacts)”,在频域,我们可以简单的理解一首歌由两个东西构成——震级与相位,震级可以理解为“声音的响亮度”,相位则稍微不太好理解,可以简单的认为是“声音的形状”。4代与以前的算法我们只关心震级而忽略相位信息,这会导致一种情况——当歌曲的乐器与人声重叠的时候,人声会有一个很明显的残留,听起来是“滋滋”的声音,这个就属于典型的相位伪影,比如下面这首歌能清晰的听出这种残留声音:

audio-thumbnail
Ya origin
0:00
/0:04
audio-thumbnail
Ya pred
0:00
/0:04

上方是原曲,下方则为仅仅预测震级的算法提供的结果,可以明显听出人声的滋滋残留问题。

而这个相位伪影问题是算法本身的缺陷——通过数据是无法解决的,即便喂给它一个亿的歌曲也无法改进,为了改进它就必须预测震级的同时预测相位信息。

在5代算法之后我们就一直在对抗这个问题——相位信息的确可以预测,齿音也会随之减少,但会冒出来更多的新问题,这些问题在学术界一般无人关心,因为他们不影响SDR指标,但实际使用过程中有很多致命问题:

  • 上采样噪音:现代伴奏分离算法结构的通病,表现为歌曲有“哔哔哔”的高频声音,与齿音不同的是,它像是高音电流脉冲一般,尤其在安静地方,比如歌曲的开头结尾处,令人难以忍受。
  • 发闷问题:相对于直接预测震级,预测难以学习的相位会导致AI更加混乱和激进,使得伴奏发闷,歌曲缺少高频信息,或鼓组被额外消除,很多用户甚至宁可忍受“齿音”问题也无法忍受“发闷”问题。
  • 能量泄露:人声残留不干净,会有特别轻微的人声仍在伴奏中,在歌曲安静的位置(如钢琴、木吉他类的轻柔歌曲)能明显听得出来。

上面这些都是算法导致的问题,而刚才说到,一个好的AI需要两部分——数据和算法,数据带来的问题是“某些乐器被错误当成人声删除”,因为AI可能没听过这样的乐器所以会混淆,但一个好的算法其实更难以实现,于是我们决定的远期目标就是优先研发出一个“更好的算法”,有了更结实的地基才可以砌更多的砖而不会倒塌。

在8.0中我们成功解决了上面的全部问题——没错,是全部问题,我们提出了一种可控音质的自主AI算法DangoNet2,它仍然是经典的频域UNet网络,经过我们实验与微调,达到了一个无论从听觉上还是指标上都领先目前已知全部的架构。

在听觉上,我们强化惩罚AI发闷问题,来让AI预测出的伴奏结果更加饱满清晰,达到了与仅预测震级相同甚至更高的清晰度,鼓组和乐器更加保真响脆清晰,同时不会像是仅预测震级那样有齿音残留问题,可谓是双赢——而它还仅仅是8.0的保守算法,团子的D2NET会输出3个结果文件,在智能和激进模式下,可以进一步减少人声和杂音的残留问题。

audio-thumbnail
Ya pred2
0:00
/0:04

这是刚才提出的齿音问题在团子8.0算法的解决案例,同样的,我们对乐器的损害更为减少,以下是案例:

audio-thumbnail
Ya origin
0:00
/0:12
audio-thumbnail
Ya pred
0:00
/0:12
audio-thumbnail
Ya pred2
0:00
/0:12

上方音频第一项为原曲,第二项为7.5算法(智能),第三项为实验中的8.0算法,可以明显听见7.5算法会让钢琴音色扭曲并且变“糊”,而8.0算法则高保真且不损伤乐器。注意目前为实验阶段,这个音质并不代表最终音质,实际会有更多提升和更少残留。

在指标上——我们的SDR分数相对于市面上最佳的某同类产品也有0.3dB的提升,不过指标提升还是下降对于我们不重要,因为高SDR并不代表更好的人类听觉质量😇

接下来仍然需要几天的实验时间来确定我们最终能走多远,然后我们会开始重新训练并应用我们的深度频域修复与人声清除技术,预计最多1-2个月时间内我们就可以上线全新的8.0级算法,敬请期待😇😇😇