GraphMuse:用于符号音乐图处理的 Python 库
是的,音乐和图表确实可以融合!在这篇文章中,我们将介绍我的最新论文和开源软件之一:GraphMuse Python 库。但在深入研究之前,让我先向您介绍一些符号音乐处理的基础知识。故事是这样的……符号音乐处理主要指从乐谱中提取信息。术语“符号”是指任何形式的乐谱或符号中存在的符号。乐谱可以包含除音符之外的各种元素。这些元素可能包括拍号、调号、发音标记、力度标记等。乐谱可以采用多种格式,例如 MIDI、MusicXML、MEI、Kern、ABC 等。近年来,图神经网络 (GNN) 越来越受欢迎,并在从生物网络到推荐系统再到音乐分析的许多领域取得了成功。在音乐分析领域,GNN 已用于解决和声分析、短语分割和语音分离等任务。这个想法很简单:乐谱中的每个音符都是图中的一个顶点,边由音符之间的时间关系定义,如下图所示。边分为 4 类:同时开始的音符由“开始”边连接(蓝色)在另一个音符的末尾开始的音符由“连续”边连接(红色)在另一个音符的开始和结束之间开始的音符连接“期间”边(绿色)最后,当
来源:走向数据科学GraphMuse中符号音乐得分的一般图形处理/训练管道涉及以下步骤:
- 预处理以生成输入图的分数数据库,GraphMuse可以快速轻松地为您执行此操作;示例输入图以创建内存效率批处理,再次将GraphMuse从各种样品输入图中形成一个带有节点和边缘的新图;对于每个图,选择了一组节点,我们称之为目标节点。目标节点的邻居也可以通过需求在称为节点示例的过程中获取。用图卷积来启动目标节点的表示以创建节点嵌入。 GraphMuse提供了一些您可以使用的模型,否则Pytorch几何形状也可以是您的朋友;将这些嵌入方式用于特定于任务的应用程序。这部分在您身上,但我相信您可以做到!
请注意,目标节点可以根据采样策略包括全部或一个批处理节点的子集。
现在可以用图形解释该过程,让我们仔细研究GraphMuse如何处理每个分数的采样说明。