10
XiaoIce Band: A Melody and Arrangement Generation Framework for Pop Music Hongyuan Zhu 1,2 , Qi Liu 1 , Nicholas Jing Yuan 2 , Chuan Qin 1 , Jiawei Li 2,3 , Kun Zhang 1 , Guang Zhou 2 , Furu Wei 2 , Yuanchun Xu 2 , Enhong Chen 1 1 University of Science and Technology of China , 2 AI and Research Microsoſt 3 Soochow University ABSTRACT With the development of knowledge of music composition and the recent increase in demand, an increasing number of companies and research institutes have begun to study the automatic gener- ation of music. However, previous models have limitations when applying to song generation, which requires both the melody and arrangement. Besides, many critical factors related to the quality of a song such as chord progression and rhythm paerns are not well addressed. In particular, the problem of how to ensure the harmony of multi-track music is still underexplored. To this end, we present a focused study on pop music generation, in which we take both chord and rhythm influence of melody generation and the harmony of music arrangement into consideration. We pro- pose an end-to-end melody and arrangement generation frame- work, called XiaoIce Band, which generates a melody track with several accompany tracks played by several types of instruments. Specifically, we devise a Chord based Rhythm and Melody Cross- Generation Model (CRMCG) to generate melody with chord pro- gressions. en, we propose a Multi-Instrument Co-Arrangement Model (MICA) using multi-task learning for multi-track music ar- rangement. Finally, we conduct extensive experiments on a real- world dataset, where the results demonstrate the effectiveness of XiaoIce Band. KEYWORDS Music generation, Melody and arrangement generation, Multi-task joint learning, Harmony evaluation ACM Reference Format: Hongyuan Zhu, Qi Liu, Nicholas Jing Yuan, Chuan Qin, Jiawei Li, Kun Zhang, Guang Zhou, Furu Wei, Yuanchun Xu, and Enhong Chen. 2018. XiaoIce Band: A Melody and Arrangement Generation Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full cita- tion on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permied. To copy otherwise, or re- publish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]. KDD ’18, August 19–23, 2018, London, United Kingdom © 2018 Association for Computing Machinery. ACM ISBN 978-1-4503-5552-0/18/08…$15.00 https://doi.org/10.1145/3219819.3220105 Melody Arrangement Figure 1: e example of our generated song. Framework for Pop Music. In KDD’18: e 24th ACM SIGKDD In- ternational Conference on Knowledge Discovery Data Mining, Au- gust 19–23, 2018, London, UK. ACM, New York, NY, USA, 10 pages. hps://doi.org/10.1145/3219819.3220105 1 INTRODUCTION Music is one of the greatest invention in human history and has a vital influence on human life. However, composing music needs plenty of professional knowledge and skills. How to generate mu- sic automatically has become a hot topic in recent years. Many companies and research institutes have done interesting works in this area. For instance, Conklin et al. [8] proposed a statistical model for the problem of music generation. ey employed a sampling method to generate music from extant music pieces. In order to generate creative music which is not in extant music pieces, N-gram and Markov models [5, 26] were applied in music generation. ese methods could generate novel music, but require manual inspec- tion of the features. Recently, Google Magenta 1 [3] created piano music with Deep Recurrent Neural Network [12] (DRNN) by learn- ing MIDI (a digital score format) data. However, this method can only deal with single track music. Indeed, generating a song for singing has more challenges, which are not well addressed in existing approaches. As shown in Fig- ure 1, a typical song consists of melody, arrangement in addition to lyrics. Whether a song is pleasant to listen depends on several critical characteristics. Specifically, Chord progression generally exists in pop songs, which could guide melody procession. us, it is beneficial to capture chord progression as input for song generation. Besides, a Corresponding authors is work was accomplished when the first and fiſth authors working as interns in Microsoſt supervised by the third author 1 hps://magenta.tensorflow.org/ Research Track Paper KDD 2018, August 1923, 2018, London, United Kingdom 2837

XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

XiaoIce Band: A Melody and Arrangement GenerationFramework for Pop Music

Hongyuan Zhu1,2∗, Qi Liu1†, Nicholas Jing Yuan2†, Chuan Qin1, Jiawei Li2,3∗,Kun Zhang1, Guang Zhou2, Furu Wei2, Yuanchun Xu2, Enhong Chen1

1University of Science and Technology of China , 2 AI and Research Microsoft3 Soochow University

ABSTRACTWith the development of knowledge of music composition and therecent increase in demand, an increasing number of companiesand research institutes have begun to study the automatic gener-ation of music. However, previous models have limitations whenapplying to song generation, which requires both the melody andarrangement. Besides, many critical factors related to the qualityof a song such as chord progression and rhythm patterns are notwell addressed. In particular, the problem of how to ensure theharmony of multi-track music is still underexplored. To this end,we present a focused study on pop music generation, in which wetake both chord and rhythm influence of melody generation andthe harmony of music arrangement into consideration. We pro-pose an end-to-end melody and arrangement generation frame-work, called XiaoIce Band, which generates a melody track withseveral accompany tracks played by several types of instruments.Specifically, we devise a Chord based Rhythm and Melody Cross-Generation Model (CRMCG) to generate melody with chord pro-gressions. Then, we propose a Multi-Instrument Co-ArrangementModel (MICA) using multi-task learning for multi-track music ar-rangement. Finally, we conduct extensive experiments on a real-world dataset, where the results demonstrate the effectiveness ofXiaoIce Band.

KEYWORDSMusic generation,Melody and arrangement generation,Multi-taskjoint learning, Harmony evaluation

ACM Reference Format:Hongyuan Zhu, Qi Liu, Nicholas Jing Yuan, Chuan Qin, Jiawei Li,Kun Zhang, Guang Zhou, Furu Wei, Yuanchun Xu, and EnhongChen. 2018. XiaoIce Band: AMelody and Arrangement Generation

Permission to make digital or hard copies of all or part of this work for personal orclassroom use is granted without fee provided that copies are not made or distributedfor profit or commercial advantage and that copies bear this notice and the full cita-tion on the first page. Copyrights for components of this work owned by others thanACMmust be honored. Abstracting with credit is permitted. To copy otherwise, or re-publish, to post on servers or to redistribute to lists, requires prior specific permissionand/or a fee. Request permissions from [email protected] ’18, August 19–23, 2018, London, United Kingdom© 2018 Association for Computing Machinery.ACM ISBN 978-1-4503-5552-0/18/08…$15.00https://doi.org/10.1145/3219819.3220105

Melody

Arrangement

Figure 1: The example of our generated song.

Framework for Pop Music. In KDD’18: The 24th ACM SIGKDD In-ternational Conference on Knowledge Discovery Data Mining, Au-gust 19–23, 2018, London, UK. ACM, New York, NY, USA, 10 pages.https://doi.org/10.1145/3219819.3220105

1 INTRODUCTIONMusic is one of the greatest invention in human history and hasa vital influence on human life. However, composing music needsplenty of professional knowledge and skills. How to generate mu-sic automatically has become a hot topic in recent years. Manycompanies and research institutes have done interesting works inthis area.

For instance, Conklin et al. [8] proposed a statistical model forthe problem ofmusic generation.They employed a samplingmethodto generate music from extant music pieces. In order to generatecreative music which is not in extant music pieces, N-gram andMarkov models [5, 26] were applied in music generation. Thesemethods could generate novel music, but require manual inspec-tion of the features. Recently, Google Magenta1 [3] created pianomusic with Deep Recurrent Neural Network [12] (DRNN) by learn-ing MIDI (a digital score format) data. However, this method canonly deal with single track music.

Indeed, generating a song for singing hasmore challenges, whichare not well addressed in existing approaches. As shown in Fig-ure 1, a typical song consists of melody, arrangement in additionto lyrics. Whether a song is pleasant to listen depends on severalcritical characteristics. Specifically,

• Chord progression generally exists in pop songs, which couldguide melody procession. Thus, it is beneficial to capturechord progression as input for song generation. Besides, a

†Corresponding authors∗This work was accomplished when the first and fifth authors working as interns inMicrosoft supervised by the third author1https://magenta.tensorflow.org/

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2837

Page 2: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

pop song has several fixed rhythm patterns, which makethe song more structural and pause suitably. However, exist-ing studies [17, 19] usually generatemusic note-by-note andwithout considering the rhythm pattern. On the other hand,though several works [13, 25] utilize chord for music gener-ation, they only use single chord as a feature of input andwithout considering the progression of chords when gener-ating melody.

• Acomplete song typically hasmulti-track arrangement2 con-sidering chord, beats and rhythm patterns, etc, with accom-panying background music played with other instruments,such as drum, bass, string and guitar. Recent works [11, 25,28] could generate melody of songs, however, they fail totake into account the multi-track arrangement.

• Different tracks and instruments have their own characteris-tics, while they should be in harmonywith each other. A fewexisting works tackled the generation of multi-track music[6], but none of them considered the harmony betweenmul-tiple tracks.

To this end, in this paper, we propose the XiaoIce Band 3, an end-to-end melody and arrangement generation framework for songgeneration. To be specific, we propose a Chord based Rhythm andMelody Cross-Generation Model (CRMCG) to generate melody con-ditioned on the given chord progression for single track music.Thenwe introduceMulti-Instrument Co-ArrangementModel (MICA)for multi-track music. Here, two information-sharing strategies,Attention Cell and MLP Cell, are designed to capture other task’suseful information. The former model utilizes chord progressionto guide the note relationships between periods based on musicknowledge.The latter shares the information among different tracksto ensure the harmony of arrangement and improve the qualityof song generation. Extensive experiments on real-world datasetdemonstrate ourmodel’s superiority over baselines on single-trackand multi-track music generation. Specifically, our model [30] hascreated many pop songs and passed the Turing test in CCTV14.The contributions of this paper are summarized as follows.

• We propose an end-to-end multi-track song generation sys-tem, including both the melody and arrangement.

• Based on the knowledge of music, we propose to utilizechord progression to guide melody procession and rhythmpattern to learn the structure of a song.Then, we use rhythmand melody cross-generation method for song generation.

• Wedevelop amulti-task joint generation network using othertask states at every step in the decoder layer, which im-proves the quality of generation and ensures the harmonyof multi-track music.

• By massive experiments provided, our system shows betterperformance compared with other models as well as humanevaluations.

2http://mnsongwriters.org/accelsite/media/1051/Elements%20of%20a%20Song.pdf3XiaoIce is a Microsoft AI product popular on various social platforms, focusing onemotional engagement and content creation [30]4http://tv.cctv.com/2017/11/24/VIDEo7JWp0u0oWRmPbM4uCBt171124.shtml

Table 1: Comparing music generation models (G: Genera-tion, Mt: Multi-track, M: Melody, Cp: Chord progression, Ar:Arrangement, Sa: Singability).

Methods G Mt M Cp Ar SaMarkov music [31]

√ √

Music unit selection [2]√

Magenta [3]√ √

Song from PI [6]√ √ √ √

DeepBach [13]√ √ √

GANMidi [32]√ √

Sampling music sequences [25]√ √

XiaoIce Band (this paper)√ √ √ √ √ √

2 RELATEDWORKThe related work can be grouped into two categories, i.e., musicgeneration and multi-task learning.

2.1 Music GenerationMusic generation has been a challenging task over the last decades.A variety of approaches have been proposed. Typical data-drivenstatistical methods usually employed N-gram orMarkovmodels [5,26, 31]. Besides, a unit selection methodology for music generationwas used in [2] which spliced music units with ranking methods.Moreover, a similar idea was also proposed by [25], which usedchords to choose melody. However, traditional methods requiremassive manpower and domain knowledge.

Recently, deep neural networks have been applied in music gen-eration by the end-to-end method, which solved above problems.Among them, Johnson et al. [17] combined one recurrent neuralnetwork and one nonrecurrent neural network to represent thepossibility of more than one note at the same time. An RNN-basedBach generation model was proposed in [13], which was capableproducing four-part chorales by using a Gibbs-like sampling proce-dure. Contrary to models based on RNNs, Sabathe et al. [28] usedVAEs [19] to learn the distribution of musical pieces. Besides, Yangand Mogren et al. [24, 32] adopted GANs [11] to generate music,which treated random noises as inputs to generate melodies fromscratch. Different from single track music, Chu et al. [6] used hi-erarchical Recurrent Neural Network to generate both the melodyas well as accompanying effects such as chords and drums.

Although extensive research has been carried out on music gen-eration, no single study exists considering the specificity of music.For the pop music generation, previous works do not consider thechord progression and rhythm pattern. Specially, chord progres-sion usually guides the melody procession and the rhythm patterndecides whether the song is suitable for singing. Besides, instru-ment characteristics should also be preserved in pop music. Lastly,harmony plays a significant role in multi-track music, but it hasnot been addressed very well in previous studies.

To sum up, we compare XiaoIce Band with several related mod-els and show the results in Table 1.

2.2 Multi-task LearningMulti-task learning is often used to share features within relatedtasks, since the features learned from one task may be useful for

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2838

Page 3: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

F G Am Em

F G Am Em

1 1 2

2

Figure 2: Melody of the song “WeDon’t Talk Anymore” withchord progression labeled.

others. In previous works, multi-task learning has been used suc-cessfully across all applications of machine learning, from naturallanguage processing [7, 21] to computer vision [10, 33]. For exam-ple, Zhang et al. [34] proposed to improve generalization perfor-mance by leveraging the domain-specific information of the train-ing data in related tasks. In the work [15], the authors pre-defineda hierarchical architecture consisting of several NLP tasks and de-signed a simple regularization term to allow for optimizing all modelweights to improve one task’s loss without exhibiting catastrophicinterference in other tasks. Another work [18] in computer vision,adjusted each task’s relativeweight in the cost function by derivinga multi-task loss function based on maximizing the Gaussian like-lihood with task-dependant uncertainty. More multi-task learningworks applied in deep learning are proposed in [22, 23, 27].

3 PRELIMINARIESIn this section, we will intuitively discuss the crucial influence ofchord progression, rhythm pattern and instrument characteristicin pop song generation, based on music knowledge with relatedstatistical analysis to further support our motivation.

3.1 Chord ProgressionIn music, chord is any harmonic set of pitches consisting of twoor more notes that are heard as if sounding simultaneously. Anordered series of chords is called a chord progression. Chord pro-gressions are frequently used in songs and a song often soundsharmonious and melodic if it follows certain chords patterns. Aswe can see from Figure 2, every period in melody has the corre-sponding chord, and “F-G-Am-Em” is the chord progression, whichrepeatedly appears in this song. In pop songs, the chord progres-sion could influence the emotional tone and melody procession.For example, “C - G - Am - Em - F - C - F - G”, one of the chord pro-gressions in pop music, is applied in many songs, such as “Simplelove”, “Agreement”, “Deep breath”, “Glory days” and so on.

3.2 Rhythm PatternApart from the chords we mentioned above, rhythm pattern is an-other characteristic of pop songs. Rhythm pattern could be definedas the notes duration in a period. For example, the periods labeledby box in Figure 2, have the same rhythm pattern, which repre-sents the duration of every note in a period. Different from themusic generated note by note, pop song is a more structural task.However, previous works didn’t consider the structure of the song.

0 10 20 30 40

Track numbers

0

1000

2000

3000

Number

(a) Tracks distribution

0 10000 20000 30000

Numbers

Clarinet

Voice

Flute

Lead

Box

Guitar

Bass

String

Drum

Piano

(b) Top 10 instruments

Figure 3: Tracks and instruments analysis of pop song.

3.3 Instrument CharacteristicThe last characteristic of the song is the arrangement, whichmeanscombing other instruments with the melody for making the wholemusic more contagious. In pop music, arrangement is a necessarysection, and often includes drum, bass, string, guitar to accompanythe melody. We analyze the MIDI files, and the detailed statisticsare shown in Figure 3(a), which indicates that the multi-track mu-sic widely exists in pop songs. Besides, as show in Figure 3(b), pi-ano is usually used for representing melody and several other in-struments, such as drum, bass, string and guitar, are typically usedfor accompanying tracks.

4 PROBLEM STATEMENT AND MODELSTRUCTURE

In this section, we will first present the music generation prob-lem with a formulated problem definition and then introduce thestructures and technical details of Chord based Rhythm and MelodyCross-Generation Model (CRMCG) for single track music, as wellasMulti-Instrument Co-Arrangement Model (MICA) for multi-trackmusic. For better illustration, Table 2 lists some mathematical no-tations used in this paper.

4.1 Problem StatementSince each pop music has a specific chord progression, we con-sider the scenario of generating the pop music on the condition ofgiven chord progression. Thus, the input of music generation taskis the given chord progression C = {c1, c2, ..., clc }. Note that ciis the one-hot representation of the chord and lc is the length ofthe sequence. We target at generating the suitable rhythm Ri ={ri1, ri2, ..., rilr } and melody Mi = {mi1,mi2, ...,milm }. To thisend, we propose CRMCG for single track music, as well as MICAfor multi-track music to tackle this issue.

Figure 4 shows the overall framework of XiaoIce Band, whichcan be divided into four parts: 1) Data processing part; 2) CRMCGpart for melody generation (single track); 3)MICA part for arrange-ment generation (multi-track); 4) The display part. We will intro-duce the second and third part in detail. Data processing part willbe detailed in experiment section.

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2839

Page 4: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

Data

Melody

Chord

progression

Rhyhtm

pattern

Instruments

...

Multi-task Learning

Chord progression

Melody and Rhythm generationData

procession

Instruments

Joint learning

Jo

int

learn

ingDrum

Bass

Guitar

String

F G C G

Figure 4: The flowchart overview of XiaoIce Band.Table 2: Notations used in the framework.

Notations DescriptionM the melody sequence of pop musicR the rhythm sequence of pop musicC the chord progression of pop musicpi the i-th period of pop musicmi j the j-th note in i-th period of pop musicri j the j-th note duration in i-th period of pop musicci the i-th chord of chord progressionlm, lr , lc the length of melody/rhythm/chord progression sequence respectively

hmi, j , hri, j , h

ci, j

the j-th hidden state in i-th period of melody/rhythm/chord progressionsequence respectively

hit,k the i-th task hidden state in period t at step k

4.2 Chord based Rhythm and MelodyCross-Generation Model

Melody is made up of a series of notes and the corresponding dura-tion. It’s a fundamental part of pop music. However, it’s still chal-lenging to generate melody in harmony. Besides, note-level gener-ation methods have more randomness on the pause, which causesthe music hard to sing.Thus, we propose CRMCG to solve the prob-lem and generate a suitable rhythm for singing. Figure 5 gives thearchitecture of CRMCG.

Given a chord progression C = {c1, c2, ..., cN }, we aim at gen-erating the corresponding periods {p1,p2, ...,pN }. The generatedrhythm Ri and melody Mi in period pi are closely related to thechord ci .We utilize encoder-decoder framework as our basic frame-work since it is flexible to use different neural networks, such asRecurrent Neural Network (RNN) and Convolutional Neural Net-work (CNN), to process sequence effectively.

In order to better understand the chord progression and modelthe interaction and relation of these chords, we utilize Gated Recur-rent Units (GRU) [4] to process the low-dimension representationof chords. They can be formulated as follows:

C = EcC, Ec ∈ RVc ∗d ,hci,0 = GRU(ci ), i = 1, 2, ..., lc ,

(1)

here, Ec is the embedding matrix for chord and hidden states ciencode each chord and sequence context around it. Then we canuse these hidden states to help generate rhythm and melody. To bespecific, our generation processing can be divided into two parts:rhythm generation and melody generation.

Rhythm generation. It is critical that the generated rhythm is inharmony with the existing part of music. Thus, in this part, we

...

...

...

...

... ... ...

...

......

...

...

... ... ... ...... ...

... ... ... ...... ...

Rhythm Encoder

Melody Encoder

Rhythm Input

Melody Input

Chord Input

Chord GRU

Melody Decoder

Rhythm Decoder

Figure 5: CRMCG.

take into consideration the previous part of music. To be specific,we firstly multiply previous rhythm Rt−1 and melody Mt−1 withembedding matrix Er and Em . Then, we get the representations ofRt−1, Mt−1 as follows:

Rt−1 = ErRt−1, Er ∈ RVr ∗d ,

Mt−1 = EmMt−1, Em ∈ RVm∗d ,(2)

where, Vm and Vr are the vocabulary size of notes and beats. Af-ter getting these representations, we utilize two different GRUs toencode these inputs:

hmt−1,i = GRU({mt−1,i }), i = 1, 2, ...lm ,

hrt−1,i = GRU({rt−1,i }), i = 1, 2, ..., lr .(3)

Thenwe separately concatenate the last hidden states of rhythmencoder and melody encoder, and make a linear transformation.The result is treated as the initial state of rhythm decoder, which ismade up by another GRU. The outputs of GRU are the probabilityof generated rhythm of the current period. They can be formalizedas follows:

sr0 = д(W [hmt−1,lm , hrt−1,lr ] + b), W ∈ Rb∗b ,

sri = GRU(yri−1, sri−1), i > 0,

yri = so f tmax(sri ),

(4)

here д is the Relu activation function and sri is the hidden state ofGRU for generating the i-th beat in t-th period. Thus we get therhythm for the t-th period and turn to generate the melody.

Melody Generation.After generating the current rhythm, we canutilize this information to generate melody. Like rhythm genera-tion, we first concat previous melody Mt−1, currently generatedrhythm Rt and corresponding chords ct . Second, we make a lineartransformation in the concatenation, which can be formulated asfollows:

sm0 = д(W [hmt−1,lm , hrt,lr, hct ] + b), W ∈ Rb∗b . (5)

Then we get the initial hidden state of melody decoder. Finally,we utilize GRU to process the result and generate the currentmelodyfor the whole generation as follows:

smi = GRU(ymi−1, smi−1), i > 0,

ymi = so f tmax(smi ).(6)

Loss Function. Since the generating process can be divided intotwo parts, we design two loss functions for each part.The loss func-tions are both softmax cross-entropy functions. Based on the char-acteristic of the model, we can update the parameters alternately

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2840

Page 5: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

...

...

...

...

...

...

...

...

Cell Cell

Instrument 1

Instrument 2

Instrument 3

Instrument T

(a)

. . .. . .

(b)

..

.

..

.

(c)

Figure 6: (a): MICA (b): Attention Cell (c): MLP Cell.

by parameter correlation. In rhythm section, we only update pa-rameters related with rhythm loss Lr . Differently, we update allthe parameters by melody loss Lm in melody section.

4.3 Multi-task arrangement Model4.3.1 Multi-Instrument Co-ArrangementModel. In real-world ap-

plications, music contains more than one track, such as drum, bass,string and guitar. To this end, we formulate a One-to-Many Se-quences Generation (OMSG) task. Different from conventional mul-tiple sequences learning, the generated sequences in OSMG areclosely related. When generating one of the sequences, we shouldtake into account its harmony, rhythm matching, and instrumentcharacteristic with other sequences. Previous works, such as hier-archical Recurrent Neural Network proposed by [6], did not con-sider the correlation between tracks. Therefore, they could achievegood performance in single track generation, but failed in multi-track generation. Encouraged by this evidence, we aim to modelthe information flow between different tracks during music gen-eration and propose the Multi-Instrument Co-Arrangement Model(MICA) based on CRMCG.

Given a melody, we focus on generating more tracks to accom-pany melody with different instruments. As shown in Figure 6(a),the hidden state of decoder contains sequence information. Hence,it naturally introduces the hidden state of other tracks when gen-erating note for one of the tracks, but how to integrate them effec-tively is still a challenge. To this end, we designed two cooperatecells between the hidden layer of decoder to tackle this issue. Thedetails of these two cells are in the following parts.

4.3.2 AttentionCell. Motivated by attentionmechanism,whichcan help the model focus on the most relevant part of the input, wedesign a creative attention cell showed in Figure 6(b) to capture therelevant part of other tasks’ states for current task. The attentionmechanism can be formalized as follows:

ait,k =T∑j=1

αt,i jhjt,k−1,

et,i j = vT tanh(Whit,k−1 +Uhjt,k−1), W ,U ∈ Rb∗b ,

αt,i j =exp(et,i j )∑T

s=1 exp(et,is ),

(7)

note that, ait,k represents the cooperate vector for task i at step k

in the period t , and hjt,k−1 represents the hidden state of j-th taskat step k − 1 in the period t . After getting the cooperation vector,we modify the cell of GRU to allow the current track generationtake full account of the impacts of other tracks’ information. Themodifications are as follows:

r it,k = σ(W ir x

it,k +U i

r hit,k−1 +Aira

it,k + bir ),

zit,k = σ(W iz x

it,k +U i

zhit,k−1 +Aiza

it,k + biz),

hit,k = σ(W ix it,k +U i[r it,k · hit,k−1

]+Aiait,k + bi ),

hit,k = (1 − zit,k ) · hit,k−1 + zit,k · hit,k ,

(8)

by combining attention mechanism and GRU cell, our model cangenerate every track for one instrument with the consideration ofother instruments.

4.3.3 MLP Cell. Different from the above cell for sharing taskinformation through input x it,k , we consider the individual hiddenstate of each instrument and integrate them by their importancefor the whole music, which is achieved by gate units. Therefore,our model can choose the most relevant parts of each instrument’sinformation to improve the overall performance. Figure 6(c) showsthe structure of this cell, which can be formalized as follows:

r it,k = σ(W ir x

it,k +U i

rHit,k−1 + bir ),

zit,k = σ(W iz x

it,k +U i

zHit,k−1 + biz),

hit,k = σ(W ihx

it,k +U i

h

[r it,k · H i

t,k−1

]),

hit,k = (1 − zit,k ) · Hit,k−1 + zit,k · hit,k ,

H it,k−1 = σ(W i

[h1t,k−1, ...,h

Nt,k−1

]+ bi ),

(9)

here, H it,k−1 is the i-th task hidden state in period t at k − 1 step

which contains all tasks current information h1t,k−1, ...,hNt,k−1 by

gate units. σ is the activate function andW ir , U i

r ,W iz , U i

z ,W ih , U

ih ,

W i , bi is corresponding weights of task i . Since our model shareseach track information at each decoding step, it can obtain the over-all information about the music and generate music in harmony.

4.3.4 Loss Function. Motivated by [9], we optimize the summa-tion of several conditional probability terms conditioned on repre-sentation generated from the same encoder.

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2841

Page 6: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

L(θ) = arдmaxθ

(∑Tk

(1

Np

Np∑iloдp(Y

Tki |XTk

i ;θ))),

where θ ={θsrc ,θtrдTk ,Tk = 1, 2, ...,Tm

}, and m is the number

of tasks. θsrc is collection of parameters for source encoder, andθtrдTk is the parameter set of theTk -th target track. Np is the sizeof parallel training corpus of p-th sequence pair.

4.3.5 Generation. In generation part, we arrange for melodygenerated by CRMCG. We will discuss this part in details. With thehelp ofCRMCG, we get amelody sequenceMi = {mi1,mi2,…,milm },and the next step is to generate other instrument tracks to accom-pany it. Similarly, we utilize GRU to process the sequence and getthe initial state sm0 of multi-sequences decoder. They can be formu-lated as follows:

M = EmM, Em ∈ RVm∗d ,

sm0 = GRU(mi,lm ),(10)

the outputs of multi-sequences decoder correspond other instru-ment tracks, considering both melody and other accompanyingtracks. They can be formalized as follows:

sit = AttentionCell(yit−1, sit−1), t > 0, or

sit = MLPCell(yit−1, sit−1), t > 0,

yit = so f tmax(sit ),

(11)

where, sit is the i-th task hidden state at step t . We utilize sit to geti-th instrument sequences through so f tmax layer. The AttentionCell and MLP Cell, we proposed above, are used to get a cooper-ation state, which contains self-instrument state as well as otherinstrument states, to keep all instruments in harmony.

5 EXPERIMENTSTo investigate the effectiveness of the CRMCG and MICA, we con-ducted experimentswith the collected dataset on two tasks:MelodyGeneration and Arrangement Generation.

5.1 Data DescriptionIn this paper, we conducted our experiments on a real-world dataset,which consists of more than fifty thousand MIDI (a digital scoreformat) files, and to avoid biases, those incomplete MIDI files, e.g.,music without vocal track were removed. Finally, 14,077 MIDI fileswere kept in our dataset. Specifically, each MIDI file contains var-ious categories of audio tracks, such as melody, drum, bass andstring.

To guarantee the reliability of the experimental results, wemadesome preprocessing on the dataset as follows. Firstly, we convertedall MIDI files to C major or A minor to keep all the music in thesame tune.Thenwe set the BPM (Beats Per Minute) to 60 for all themusic, which ensures that all notes correspond to an integer beat.Finally, we merged every 2 bars into a period. Some basic statisticsof the pruned dataset are summarized in Table 3.

Table 3: Data Set Description.

Statistics Values# of popular songs 14,077# of all tracks 164,234# of drum tracks 18,466# of bass tracks 16,316# of string tracks 23,906# of guitar tracks 28,200# of piano tracks 18,172# of other instruments tracks 59,174Time of all tracks (hours) 10,128

5.2 Training DetailsWe randomly select 9,855 instances from the dataset as the trainingdata, another 2,815 for tuning the parameters, and the last 1,407 astest data to validate the performance as well as more generatedmusic. In our model, the number of recurrent hidden units are setto 256 for each GRU layer in encoder and decoder. The dimensionsof parameters to calculate the hidden vector in Attention Cell andMLP Cell are set as 256. The model is updated with the StochasticGradient Descent [1] algorithm where batch size set is 64, and thefinal model is selected according to the cross entropy loss on thevalidation set.

5.3 Melody GenerationIn this subsection, we conduct Melody Generation Task to validatethe performance of our CRMCG model. That is, we only use themelody track extracted from the original MIDI music to train themodels and evaluate the aesthetic quality of the melody track gen-eration result.

5.3.1 Baseline Methods. As the music generation task could begenerally regarded as a sequence generation problem, we selecttwo state-of-the-art models for sequence generation as baselines:

• Magenta (RNN).ARNNbasedmodel [3], which is designedto model polyphonic music with expressive timing and dy-namics.

• GANMidi (GAN). A novel generative adversarial network(GAN) basedmodel [32], which uses conditionalmechanismto exploit versatile prior knowledge of music.

In addition to the proposed CRMCG model, we evaluate twovariants of the model to validate the importance of chord progres-sion and cross-training methods on melody generation:

• CRMCG (full). Proposed model, which generates melodyand rhythm crosswise with chords information.

• CRMCG (w/o chordprogression).Based onCRMCG (full),the chords information is removed.

• CRMCG (w/o cross-training). Based on CRMCG (full), wetrain melody and rhythm patterns respectively based on Lmand Lr during the training processing.

5.3.2 Overall Performance. Considering the uniqueness of themusic generation, there is not a suitable quantitativemetric to eval-uate the melody generation result. Thus, we validate the perfor-mance of models based on human study. Following some pointconcepts in [29], we use the metrics listed blow:

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2842

Page 7: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

Table 4: Human evaluation of melody generation.

Methods Rhythm Melody Integrity Singability AverageMagenta (RNN) [3] 3.1875 2.8125 2.8000 2.6000 2.8500GANMidi (GAN) [11] 1.7125 1.7625 1.3500 1.4250 1.5625CRMCG (full) 3.7125 3.8125 3.7125 3.9000 3.7844CRMCG (w/o chord progression) 3.7000 3.5875 3.4375 3.8000 3.6312CRMCG (w/o cross-training) 3.6375 3.5500 3.3500 3.6250 3.5406

• Rhythm.Does the music sounds fluent and pause suitably?• Melody. Are the music notes relationships natural and har-

monious?• Integrity. Is the music structure complete and not inter-

rupted suddenly?• Singability. Is the music suitable for singing with lyrics?

We invited eight volunteers, who are experts in music appreci-ation, to evaluate the results of various methods. Volunteers ratedevery generated music with a score from 1 to 5 based on aboveevaluation metrics. The performance is shown in Table 4. Accord-ing to the results, we realize that our CRMCG model outperformsall the baselines with a significant margin on all the metrics, whichdemonstrate the effectiveness of our CRMCG model on MelodyGeneration. Especially, CRMCG (full) performs better thanCRMCG(w/o chord), which verifies that the chord information can enhancethe quality of melody. In addition, we also find that cross-trainingcan improve the quality of 6.9% on average, which proves effective-ness of our cross-training algorithm on melody generation.

At the same time, we find that the RNN based baseline outper-forms the GAN based model which uses convolutional neural net-works to generate melody. This phenomenon indicates that RNNbased model is more suitable for Melody Generation, which is thereason why we design CRMCG based on RNN.

5.3.3 Chord Progression Analysis. Here we further analyze theperformance of chord progression in our CRMCG model. We de-fine Chord Accuracy to evaluate whether chords of generatedmelodies match the input chord sequence:

Chord Accuracy =P∑

i=1

e(yi , yi )/P ,

e (yi , yi ) =

{1, i f yi = yi0, i f yi , yi

,

where P is the number of the periods, yi is the i-th chord of gener-atedmelody detected through [16], and yi is the i-th correspondingchord in given chord progression.

The performance is shown in Figure 7(a). Specially, the averageChord Accuracy of our generated melody is 82.25%. Moreover, weshow the impact of Chord Accuracy of generated melody on differ-ent metrics in Figure 7(b), 7(c), 7(d) and 7(e). From the result, werealize that as the chord accuracy increases, the quality of melodygeneration improves significantly, which also confirms the impor-tance of using the chord information on Melody Generation.

5.3.4 Rest Analysis. Rests are intervals of silence in pieces ofmusic, and divide a melody sequence into music segments of dif-ferent lengths. It is important to provide spaces to allow listenersto absorb each musical phrase before the next one starts. To create

Table 5: Human evaluation of arrangement generation.

Methods Overall Drum Bass String GuitarHRNN[6] 3.2500 2.9875 3.0875 2.8000 2.8625MICA (w/ att) 3.6625 3.0750 2.8000 3.2125 3.0000MICA (w/ mlp) 3.8125 3.1000 3.4625 3.3125 3.3500

satisfying music, it is necessary to keep a good dynamic balancebetween musical activity and rest. Therefore, we evaluate the per-formance of rests in our generated music by contrasting the differ-ences between distributions of the length of the music segmentsin generated music and original ones. Figure 8 shows the distribu-tions of the minimum, maximum and average length of the mu-sic segments of the generated music and original ones. We realizeour generated music have similar distributions on music segmentslengths with original ones, which verifies that our CRMCG modelcan generate the appropriate rests in pieces of music.

5.4 Arrangement GenerationIn this subsection, we conduct Multi-track Music Generation tovalidate the performance of our MICA model. Here we select fivemost important tasks inMulti-trackMusic Generation, i.e., melody,drum, bass, string and guitar.

5.4.1 BaselineMethods. To validate the performance of our twoMICA models, a relevant model HRNN [6] is selected as baselinemethod. Specifically, we set the comparison methods as follows:

• HRNN. A hierarchical RNN based model [6], which is de-signed to generate multi-track music. In particular, it usesa low-level structure to generate melody and higher-levelstructures to produce the tracks of different instruments.

• MICAw/AttentionCell.Theproposedmodel, which usesAttention Cell to share information between different tracks.

• MICAw/MLP Cell.The proposed model, which uses MLPCell to share information between different tracks.

5.4.2 Overall Performance. Different from Melody Generationtask, we ask volunteers to evaluate the quality of generated musicin a holistic dimension. The performance is shown in Table 5. Ac-cording to the results, we realize that our MICA model performsbetter than current method HRNN both on single-track and multi-track, which means MICA has significant improvement on Multi-track Music Generation task. Specially, we find that multi-trackhas higher score than single track score, which indicates that multi-track music sounds better than single-track music and confirmsthe importance of the arrangement. Meanwhile, we observe thatthe drum tracks has the worst performance compared to othersingle-track, which is because the drum track only plays an acces-sorial role in a piece of multi-track music. Furthermore, our MLPCell based MICA model performs better than Attention Cell basedMICAmodel, and it seems that ourMLP Cell mechanism can betterutilize the information among the multiple tracks.

5.4.3 Harmony Analysis. Besides human study on Multi-trackMusic Generation, we further evaluate whether melodies betweendifferent tracks are harmonious. Here we consider that two tracksare harmonious if they have similar chord progression [14]. Thus,

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2843

Page 8: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

0.4 0.6 0.8 1.0

Chord accuracy

0.1

0.2

0.3

Percentage

(a)

0.4 0.6 0.8 1.0

Chord accuracy

3.5

3.6

3.7

3.8

Rhythm

score

(b)

0.4 0.6 0.8 1.0

Chord accuracy

3.0

3.2

3.4

3.6

3.8

Melodyscore

(c)

0.4 0.6 0.8 1.0

Chord accuracy

3.2

3.4

3.6

3.8

Integrity

score

(d)

0.4 0.6 0.8 1.0

Chord accuracy

3.2

3.4

3.6

3.8

Singability

score

(e)

Figure 7: Chord progression analysis compared with human study.

0 5 10 15 20 25 30 35

Length

0.00

0.05

0.10

0.15

0.20

0.25

Percentage

minimum

average

maximum

minimum gen

average gen

maximum gen

Figure 8: Rhythm distribution.we use chord similarity to represent harmony among multi-tracks.Formally, we define Harmony Score as:

Harmony Score =P∑

p=1

δ

( K∩k=1

Ckp

),

δ (a) =

{1, i f a , ∅0, i f a = ∅ ,

where P and K denote the number of periods and tracks of gener-ated music respectively, and Ckp denotes the k-th track p-th corre-sponding chord.

As shown in Figure 10, we realize that ourMLPCell basedMICAmodel achieves the best performance, with an improvement byup to 24.4% compared to HRNN. It indicates our MICA model im-proves the harmony of multi-track music through utilizing the use-ful information of other tasks. Specially, we find that less tracksmusic harmony is higher than more tracks music. For this result,we think more tracks music have higher harmony requirements.

5.4.4 Arrangement Analysis. To observer how our model per-forms at multi-track music arrangement, we generate each trackwhile fixing melody track as source melody sequence. Here we val-idate the performance based on four metrics as follows:

• Note accuracy. Note accuracy is the fraction of matchedgenerated notes and source notes over the total amount ofsource notes in a piece of music, that is

Notes Accuracy =N∑i=1

e(yi , yi )/N ,

where yi ,yi denote the i-th source note and generated note,respectively.

• Levenshtein similarity. Levenshtein distance is calculatedby counting the minimum number of single-character edits(insertions, deletions or substitutions) required to changeone sequence into the other. And it is usually used to mea-sure the difference between two sequences [20]. Here wecalculate the Levenshtein similarity by Levenshtein distance,and it can evaluate the similarity of generated musical notessequences and original ones. That is

Levenshtein similarity = 1 − Levenshtein distance

N + N,

whereN , N denote the length of generatedmusical notes se-quences and original musical notes sequences respectively.

• Notes distributionMSE.Notes distributionMSE is used toanalyze the notes distribution between generated and orig-inal ones, which can be formulated by:

Notes distribution MSE =

∑Mi=1

∑Nj=1

(yiN − yi

N

)2MN

,

where M ,N denote the number of pieces of music and notecategories respectively. Actually, every instrument has itsown characteristic in terms of note range. For example, bassusually uses low notes and drum has fixed notes.

• Empty. It’s bad for generation results to be empty while areal result has notes.We use it to evaluate generation resultsand a lower score indicates better performance.

The performance is shown in Figure 9. According to the results,generally, our MLP Cell based MICA model achieves best perfor-mance across all metrics. Specially, from Figure 9(a), it can be con-cluded that the drum task has the greatest note accuracy, whichconfirms that drum is easier to learn than other instruments. And,as shown in Figure 9(b), our MLP Cell basedMICAmodel could im-prove the quality of 6.9% on average compared with HRNN. Mean-while, from Figure 9(c), we observe that our MLP Cell based MICAmodel has the most stable effect on Notes distribution MSE, whichproves our model can do a better job in learning instrument char-acteristics. At last, the Figure 9(d) illustrates the robustness of ourMLP Cell based MICA model, which can maintain a high level ofgeneration result.

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2844

Page 9: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

Drum Bass String Guitar0.00

0.05

0.10

0.15

0.20

0.25

0.30

Accuracy

HRNN

MICA w/ Attention Cell

MICA w/ MLP Cell

(a)

Drum Bass String Guitar0.00

0.05

0.10

0.15

0.20

0.25

0.30

Levenshtein

HRNN

MICA w/ Attention Cell

MICA w/ MLP Cell

(b)

Drum Bass String Guitar0.0

0.1

0.2

0.3

0.4

0.5

0.6

NDM(10−3)

HRNN

MICA w/ Attention Cell

MICA w/ MLP Cell

(c)

Drum Bass String Guitar0.0

0.1

0.2

0.3

0.4

0.5

0.6

Empty

HRNN

MICA w/ Attention Cell

MICA w/ MLP Cell

(d)

Figure 9: The analysis of arrangement from four parts.

5 tracks 4 (w/o G) 4 (w/o S) 4 (w/o B)0.0

0.1

0.2

0.3

0.4

Harmonymeanscore

HRNN

MICA w/ Attention Cell

MICA w/ MLP Cell

Figure 10: The harmony analysis of arrangement (G: Guitar,S: String, B: Bass).

6 CONCLUSIONSIn this paper, we proposed a melody and arrangement generationframework based on music knowledge, called XiaoIce Band, whichgenerated a melody with several instruments accompanying si-multaneously. For melody generation, we devised a Chord basedRhythm and Melody Cross-Generation Model (CRMCG), which uti-lizes chord progression to guide themelody procession, and rhythmpattern to learn the structure of song crosswise. For arrangementgeneration, motivated bymulti-task learning, we proposed aMulti-Instrument Co-Arrangement Model (MICA) for multi-track musicarrangement, which used other task states at every step in the de-coder layer to improve the whole generation performance and en-sure the harmony of multi-track music. By massive experimentsprovided, our system showed better performance compared withother models in human evaluation and we have completed the Tur-ing test and achieved good results. Moreover, we generated popmusic examples on the Internet, showing the application value ofour model.

7 ACKNOWLEDGMENTSThis research was partially supported by grants from the NationalNatural Science Foundation of China (No.s 61672483 and 61727809).Qi Liu gratefully acknowledges the support of the Youth Innova-tion Promotion Association of CAS (No. 2014299) and the MOE-Microsoft Key Laboratory of USTC.

REFERENCES[1] Léon Bottou. 2010. Large-scale machine learning with stochastic gradient de-

scent. In Proceedings of COMPSTAT’2010. Springer, 177–186.

[2] Mason Bretan, Gil Weinberg, and Larry Heck. 2016. A Unit Selection Method-ology for Music Generation Using Deep Neural Networks. arXiv preprintarXiv:1612.03789 (2016).

[3] Pietro Casella and Ana Paiva. 2001. Magenta: An architecture for real time auto-matic composition of backgroundmusic. In InternationalWorkshop on IntelligentVirtual Agents. Springer, 224–232.

[4] Kyunghyun Cho, Bart Van Merriënboer, Dzmitry Bahdanau, and Yoshua Ben-gio. 2014. On the properties of neural machine translation: Encoder-decoderapproaches. arXiv preprint arXiv:1409.1259 (2014).

[5] Parag Chordia, Avinash Sastry, and Sertan Şentürk. 2011. Predictive tabla mod-elling using variable-length markov and hidden markov models. Journal of NewMusic Research 40, 2 (2011), 105–118.

[6] Hang Chu, Raquel Urtasun, and Sanja Fidler. 2016. Song from pi: A musicallyplausible network for pop music generation. arXiv preprint arXiv:1611.03477(2016).

[7] Ronan Collobert and Jason Weston. 2008. A unified architecture for natural lan-guage processing: Deep neural networks with multitask learning. In Proceedingsof the 25th international conference on Machine learning. ACM, 160–167.

[8] Darrell Conklin. 2003. Music generation from statistical models. In Proceedingsof the AISB 2003 Symposium on Artificial Intelligence and Creativity in the Artsand Sciences. Citeseer, 30–35.

[9] Daxiang Dong, Hua Wu, Wei He, Dianhai Yu, and Haifeng Wang. 2015. Multi-Task Learning for Multiple Language Translation.. In ACL (1). 1723–1732.

[10] Ross Girshick. 2015. Fast r-cnn. In Proceedings of the IEEE international conferenceon computer vision. 1440–1448.

[11] Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. 2014. Generative ad-versarial nets. In Advances in neural information processing systems. 2672–2680.

[12] Alex Graves, Abdel-rahman Mohamed, and Geoffrey Hinton. 2013. Speechrecognition with deep recurrent neural networks. In Acoustics, speech and sig-nal processing (icassp), 2013 ieee international conference on. IEEE, 6645–6649.

[13] Gaëtan Hadjeres and François Pachet. 2016. DeepBach: a Steerable Model forBach chorales generation. arXiv preprint arXiv:1612.01010 (2016).

[14] Christopher Harte, Mark Sandler, and Martin Gasser. 2006. Detecting harmonicchange in musical audio. In Proceedings of the 1st ACM workshop on Audio andmusic computing multimedia. ACM, 21–26.

[15] Kazuma Hashimoto, Caiming Xiong, Yoshimasa Tsuruoka, and Richard Socher.2016. A joint many-task model: Growing a neural network for multiple NLPtasks. arXiv preprint arXiv:1611.01587 (2016).

[16] Nanzhu Jiang, Peter Grosche, Verena Konz, and Meinard Müller. 2011. Analyz-ing chroma feature types for automated chord recognition. In Audio EngineeringSociety Conference: 42nd International Conference: Semantic Audio. Audio Engi-neering Society.

[17] Daniel Johnson. 2015. Composingmusicwith recurrent neural networks. (2015).[18] Alex Kendall, Yarin Gal, and Roberto Cipolla. 2017. Multi-Task Learning Using

Uncertainty to Weigh Losses for Scene Geometry and Semantics. arXiv preprintarXiv:1705.07115 (2017).

[19] Diederik P Kingma and Max Welling. 2013. Auto-encoding variational bayes.arXiv preprint arXiv:1312.6114 (2013).

[20] Vladimir I Levenshtein. 1966. Binary codes capable of correcting deletions, in-sertions, and reversals. In Soviet physics doklady, Vol. 10. 707–710.

[21] Pengfei Liu, Xipeng Qiu, and Xuanjing Huang. 2016. Recurrent neural networkfor text classification with multi-task learning. arXiv preprint arXiv:1605.05101(2016).

[22] Mingsheng Long and Jianmin Wang. 2015. Learning multiple tasks with deeprelationship networks. arXiv preprint arXiv:1506.02117 (2015).

[23] Ishan Misra, Abhinav Shrivastava, Abhinav Gupta, and Martial Hebert. 2016.Cross-stitch networks for multi-task learning. In Proceedings of the IEEE Confer-ence on Computer Vision and Pattern Recognition. 3994–4003.

[24] Olof Mogren. 2016. C-RNN-GAN: Continuous recurrent neural networks withadversarial training. arXiv preprint arXiv:1611.09904 (2016).

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2845

Page 10: XiaoIce Band: A Melody and Arrangement Generation ...staff.ustc.edu.cn/~cheneh/paper_pdf/2018/Hongyuan-Zhu-KDD.pdf · Since each pop music has a specific chord progression, we con-siderthescenarioofgeneratingthepopmusicontheconditionof

[25] François Pachet, Sony CSL Paris, Alexandre Papadopoulos, and Pierre Roy. 2017.Sampling variations of sequences for structured music generation. In Proceed-ings of the 18th International Society for Music Information Retrieval Conference(ISMIR’2017), Suzhou, China. 167–173.

[26] François Pachet and Pierre Roy. 2011. Markov constraints: steerable generationof Markov sequences. Constraints 16, 2 (2011), 148–172.

[27] Sebastian Ruder, Joachim Bingel, Isabelle Augenstein, and Anders Søgaard. 2017.Sluice networks: Learning what to share between loosely related tasks. arXivpreprint arXiv:1705.08142 (2017).

[28] Romain Sabathé, Eduardo Coutinho, and Björn Schuller. 2017. Deep recurrentmusic writer: Memory-enhanced variational autoencoder-based musical scorecomposition and an objective measure. In Neural Networks (IJCNN), 2017 Inter-national Joint Conference on. IEEE, 3467–3474.

[29] Paul Schmeling. 2011. Berklee Music Theory. Berklee Press.

[30] Heung-Yeung Shum, Xiaodong He, and Di Li. 2018. From Eliza to XiaoIce: Chal-lenges and Opportunities with Social Chatbots. arXiv preprint arXiv:1801.01957(2018).

[31] Andries Van Der Merwe and Walter Schulze. 2011. Music generation withMarkov models. IEEE MultiMedia 18, 3 (2011), 78–85.

[32] Li-Chia Yang, Szu-Yu Chou, and Yi-Hsuan Yang. 2017. MidiNet: A convolutionalgenerative adversarial network for symbolic-domain music generation. In Pro-ceedings of the 18th International Society for Music Information Retrieval Confer-ence (ISMIR’2017), Suzhou, China.

[33] Xiaofan Zhang, Feng Zhou, Yuanqing Lin, and Shaoting Zhang. 2016. Embed-ding label structures for fine-grained feature representation. In Proceedings ofthe IEEE Conference on Computer Vision and Pattern Recognition. 1114–1123.

[34] Yu Zhang and Qiang Yang. 2017. A survey on multi-task learning. arXiv preprintarXiv:1707.08114 (2017).

Research Track Paper KDD 2018, August 19‒23, 2018, London, United Kingdom

2846