Deep Learning – Music Generation – 2018
Jean-Pierre Briot
Jean-Pierre Briot
Jean-Pierre.Briot@lip6.fr
Laboratoire d’Informatique de Paris 6 (LIP6) Sorbonne Université – CNRS Programa de Pós-Graduação em Informática (PPGI) UNIRIO
Deep Learning Techniques for Music Generation Compound and GAN (6) - - PowerPoint PPT Presentation
Deep Learning Techniques for Music Generation Compound and GAN (6) Jean-Pierre Briot Jean-Pierre.Briot@lip6.fr Laboratoire dInformatique de Paris 6 (LIP6) Sorbonne Universit CNRS Programa de Ps-Graduao em Informtica (PPGI)
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
Jean-Pierre Briot
Jean-Pierre.Briot@lip6.fr
Laboratoire d’Informatique de Paris 6 (LIP6) Sorbonne Université – CNRS Programa de Pós-Graduação em Informática (PPGI) UNIRIO
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
2
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
3
mini-bach.py
auto-bach.py – Variational Autoencoder (VAE) VRAE
– LSTM lstm.py, Celtic
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
4
– DeepHear, auto-bach.py
– VRAE
– Music-VAE 784 400 200 100
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
5
[Nam Hyuk Ahn, 2017]
– Generator
» Transforms Random noise Vectors into Faked Samples
– Discriminator
» Estimates probability that the Sample came from training data rather than from G
– Minimax 2-player game
D(x): PD(x from real data) (Correct) D(G(z)): PD(G(z) from real data) (Incorrect) 1 - D(G(z)): PD(G(z) from Generator) (Correct) Prediction by D P=1 P=0
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
PD(x from real data) Correct
PD(G(z) from real data) Incorrect
6
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
𝐻 𝑨, 𝜄(𝐻) 𝐻 𝜄(𝐻) ℝ𝑀 ℝ𝑁 𝐸 𝑦, 𝜄(𝐸) 𝐸 𝜄(𝐸) ℝ𝑁 𝐻 𝑨, 𝜄(𝐻) 𝐻 𝜄(𝐻) ℝ𝑀 ℝ𝑁 𝐸 𝑦, 𝜄(𝐸) 𝐸 𝜄(𝐸) ℝ𝑁
[Goodfellow, 2016]
Generator Discriminator
𝑨 𝐻 𝑨 or 𝑦 𝐸 𝐻(𝑨) or 𝐸 𝑦
7
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
, 𝐸(𝑦𝑗)
(𝐸) ← Compute gradient of Discriminator loss, 𝐾 𝐸
𝜄 𝐻 , 𝜄(𝐸)
𝐸
𝑘 ~ 𝑞(𝑨 𝑘)
, 𝐸(𝑦𝑘)
𝑘 (𝐻) ← Compute gradient of Generator loss, 𝐾 𝐻
𝜄 𝐻 , 𝜄(𝐸)
𝑘 𝐻
8
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
CelebFaces Attributes Dataset (CelebA) > 200K celebrity images Synthetic (Generated) Celebrity images
[Karras et al., 2018] [Brundage et al., 2018]
9
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
GAN(Bidirectional-LSTM2, LSTM2)
(forward and backward) values to be (or not) representative of the Real data
– Analog to RNN Encoder-Decoder which considers the hidden layer as the summary of a sequence
11
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
GAN(Conditioning(Convolutional(Feedforward), Convolutional(Feedforward(History, Chord sequence))), Conditioning(Convolutional(Feedforward), History))
– Previous measure – Chord sequence
12
https://soundcloud.com/vgtsv6jf5fwq/model3
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
Some Similarities:
Differences:
[Dykeman, 2016]
13
Deep Learning – Music Generation – 2018
Jean-Pierre Briot
– Bidirectional RNN, combining two RNNs, forward and backward in time – RNN-RBM [Boulanger-Lewandowski et al., 2012], combining an RNN (horizontal/sequence) and an RBM (vertical/chords)
– Sparse autoencoder – Variational autoencoder (VAE) = Variational(Autoencoder)
– Stacked autoencoder = Autoencodern – RNN Encoder-Decoder = Autoencoder(RNN, RNN)
– C-RBM [Lattner et al., 2016] = Convolutional(RBM) – C-RNN-GAN [Mogren, 2016] = GAN(Bidirectional-LSTM2, LSTM2) – Anticipation-RNN [Hadjeres & Nielsen, 2017] = Conditioning(RNN, RNN)
14