Algorithmic harmonization - the automated harmonization of a musical piece given its melodic line - is a challenging problem that has garnered much interest from both music theorists and computer scientists. One genre of particular interest is the four-part Baroque chorales of J.S. Bach. Methods for algorithmic chorale harmonization typically adopt a black-box, "data-driven" approach: they do not explicitly integrate principles from music theory but rely on a complex learning model trained with a large amount of chorale data. We propose instead a new harmonization model, called BacHMMachine, which employs a "theory-driven" framework guided by music composition principles, along with a "data-driven" model for learning compositional features within this framework. As its name suggests, BacHMMachine uses a novel Hidden Markov Model based on key and chord transitions, providing a probabilistic framework for learning key modulations and chordal progressions from a given melodic line. This allows for the generation of creative, yet musically coherent chorale harmonizations; integrating compositional principles allows for a much simpler model that results in vast decreases in computational burden and greater interpretability compared to state-of-the-art algorithmic harmonization methods, at no penalty to quality of harmonization or musicality. We demonstrate this improvement via comprehensive experiments and Turing tests comparing BacHMMachine to existing methods.
翻译:语言调和法方法通常采用黑盒、“数据驱动”的方法:它们没有明确地纳入音乐理论的原则,而是依赖经过大量合音数据培训的复杂学习模式。我们提议采用一个新的协调模式,即BacHMMachine,它采用由音乐构成原则指导的“理论驱动”框架,同时采用“数据驱动”模型,在这个框架内学习构成特征。如其名称所示,BacHMMAchine使用基于关键和曲交接转换的新型隐性马尔科夫模型,它为学习关键调制和从某一交错线进化提供了一种稳定框架。我们提议采用新的协调模式,即称为BacHMMachine,它使用由音乐组成原则指导的“理论驱动”框架,以及“数据驱动”模型,在这个框架内学习构成特征。正如其名称所示,BacHMMAchine使用基于关键和曲交接过渡的新型隐蔽马尔科夫模型,为学习关键调制和曲调和曲调进进提供了一种稳定框架。这样可以产生创造性的、但音乐连贯的调和曲调调调调改进的调制;在大幅的比制质量原则上,通过比较性原则可以进行更精确的比重的比制方法,因此采用一种更简单的制方法。