使用机器学习预测音阶

数据挖掘 机器学习 分类
2022-03-07 13:50:52

可以使用机器学习技术将歌曲聚类到音乐级别的组中吗?我的意思是:“这首歌是用 C 写的”……或者“这首歌是用 Am 写的”等等。我快速搜索了这个主题,但没有找到可以做到这一点的软件。如果您知道一些与该主题相关的软件或研究(学术论文),您可以在这里为我链接吗?我对那个主题很感兴趣,但我不确定从哪里开始。我对随机森林和神经网络有一点经验,也许我可以使用其中一种算法完成分类任务,但是,我再次不确定应该将哪种特征传递给算法。提前致谢。

3个回答

从一个非常高的层次——您可以将歌曲转换为频谱图,有大量的实现可以做到这一点。从那里您可以分析声波。例如,在键的情况下,音符 A 等于 440 赫兹。也研究 FFT。希望这有助于您入门。我知道 spotify 在歌曲的频谱图上训练神经网络,以根据“声音”找到相似的歌曲。

您可以查看音乐信息检索评估交换 (MIREX)。年度竞赛,包含来自 MIR 的许多不同任务。与您的问题最相关的是音频键检测。可以在此处找到所用方法的说明文件。

在从音频信号中提取知识的库方面,我推荐Essentia您可以在轨道中随时间窗口计算许多特征,包括音调描述符(键和音阶)。

一旦你为你的任务建立了一个轨道的判别表示,你就可以使用任何带有标记数据的监督分类模型。网络上有几个标记有曲目信息的音乐数据集。看看 GTZAN,每首曲目都有流派、节奏和键作为元数据。

我一直在寻找,最近发现这个这篇文章似乎很有希望。我认为,如果我能从音乐中识别出大量的音符,我将能够识别音乐音阶本身。

如果你们有更多关于这个主题的材料建议,我将非常感激。