hosokawa m

23
北北北北北 北北北 北北北北北北北 北北北北北北北 北北北北北 北北 細細 細細 DCGAN 北北北北北北北北北北北北北北北北北北北 A STUDY ON MUSIC LOOPS GENERATION USING DCGAN 1

Transcript of hosokawa m

Page 1: hosokawa m

北海道大学 大学院 情報科学研究科情報理工学専攻 調和系工学修士2年 細川 皓平

DCGAN を用いたループ音源生成に関する基礎研究A STUDY ON MUSIC LOOPS GENERATION USING DCGAN

1

Page 2: hosokawa m

研究背景 現在の音楽制作

DAW (Digital Audio Workstation) ソフトによるコンピュータでの制作が主流 作曲,編曲,トラック制作,編集などの作業

Orpheus [1]

歌詞の韻律から旋律を生成

[1] 深山覚 , et al. "Orpheus: 歌詞の韻律に基づいた自動作曲システム ."  情報処理学会研究報告音楽情報科学 (MUS) 2008.78 (2008-MUS-076) (2008): 179-184.[2] Magenta, https://magenta.tensorflow.org/

Magenta [2]

RNN(Recurrent Neural Network) による学習から自動作曲を実現

作曲とは 旋律の生成や楽譜の生成を指す どのような種類の音を使用するかは問われない

自動作曲とは 主に MIDI データの出力を目的とする → そのままでは聞くことができない

自動作曲

2

Page 3: hosokawa m

ループ音源による音楽制作 ループ音源 ( サンプルループ, loops など )

数小節単位の短い音源 楽器やキー,テンポごとに分類されている 複数のループ音源を組み合わせてトラックを作成,それらにより音楽を制作 DAW ソフトに付属のもの,パッケージとして市販されているもの,フリーのものがある.

目的:ループ音源の自動生成 既存のループ音源をもとにした,ループ音源そのものの生成

3

[4] Bakshi, Bhavik R., and George Stephanopoulos. "Wave‐net: A multiresolution, hierarchical neural network with localized learning." AIChE Journal 39.1 (1993): 57-81.

生の音声データの学習,生成: WaveNet [4]

音楽に関しては自然な音に聞こえるものの,ジャンルや音量や音質に一貫性がない

Page 4: hosokawa m

関連研究 GAN (Generative Adversarial Networks) [3]

Generator (G) と Discriminator (D) の 2 つの ネットワークからなる D は訓練データと G による生成データとを二値分類 G は訓練データと同次元のデータを出力.このデータが D によって訓練データと判別させるように学習 D は2つの誤差の和をパラメータの更新時の誤差

z [ 0, 1]

Generator

Discriminator

[3] Radford, Alec, Luke Metz, and Soumith Chintala. "Unsupervised representation learning with deep convolutional generative adversarial networks." arXiv preprint arXiv:1511.06434 (2015).

入力データが訓練データである確率

入力データを判別

Dに誤判定させるようなデータを生成

[ 0, 1]

D は 1 を教師として誤差を算出

D は 0 , G は 1 を教師として誤差を算出

訓練データに類似したデータの生成Z が生成データの特徴ベクトルとなる

生成データ

訓練データ

同一のネットワーク

100 次元ベクトル(一様分布)

4

Page 5: hosokawa m

DCGAN (DEEP CONVOLUTIONAL GAN)

GAN による画像生成: DCGAN[4]

ネットワーク構造の工夫 パラメータの最適化

[4] Radford, Alec, Luke Metz, and Soumith Chintala. "Unsupervised representation learning with deep convolutional generative adversarial networks." arXiv preprint arXiv:1511.06434 (2015).

同じ背景で違うものが写っている画像 特徴ベクトルの演算により,画像の特徴の足し引きが可能

DCGAN を使ったループ音源の生成

5

Page 6: hosokawa m

DCGAN によるループ音源生成 DCGAN のループ音源への適用

2 次元から1次元への変更 それに伴う適切なパラメータ,学習手法の検証 訓練データの次元数の統一

予備実験: AutoEncoder Discriminator の出力層を 100 次元に変更して Encoder として扱い,

Generator を Decoder として学習 訓練データを入力したときに復元ができるかを検証

6

生成データの目標 訓練データの一部を使った新たな音源の生成

波形画像 ノイズが少なく,音がはっきり聞こえること

振幅スペクトル 出力にバリエーションがあること

主成分分析,波形画像

→ 訓練データ数が少数の方が簡易→ データ数 2 から初め,徐々に増やしていく

Page 7: hosokawa m

ループ音源の前処理

ループ音源 サンプリング周波数: 44.1 [kHz] ビット深度: 16 [bit] WAVE 形式

入力の際の次元の統一 DCGAN : 64 x 64 次元 → 4096 次元に統一

各ループ音源により長さが違う 一小節ごとに分割 サンプリング周波数の変換により,フレーム数を 4096 に 出力も 4096 次元となる 今回は 2048 [Hz] で復元

7

Page 8: hosokawa m

DISCRIMINATOR

c0

c1

bn1

c2

bn2

c3

bn3

fc

[0, 1]

ループ音源

2048x

128

1024x

256

512X

51226214

4

256x

1024

次元数• bn: バッチ正規化層• fc: 全結合層

reshape

• c : 畳み込み層• カーネルサイズ : 5• ストライド : 2• パディング : 1

活性化関数: Relu( 出力層のみ sigmoid)

bn0

4096x1

1

8

チャネル数フレーム数

Page 9: hosokawa m

GENERATOR

fc

bn0

dc1

bn1

dc2

bn2

dc3

bn3

dc4

ループ音源Z

100256

x1024

512X512

2048x

128

1024x

256

4096x1

次元数• fc: 全結合層• bn: バッチ正規化層

reshape• dc : 逆畳み込み層

• カーネルサイズ : 5• ストライド : 2• パディング : 1

活性化関数: Leaky Relu ( 出力層のみ tanh)

262144

9

チャネル数フレーム数

Page 10: hosokawa m

各層の計算 ループ音源の畳込み

入力 2048 x 128カーネルサイズ J = 5 ストライド s = 2 パディング p = 1 出力 1024 x 256

2048 +2 ( パディング )

各要素の周りを( ストライド -1) でパディング

ストライド1で畳み込み

アンプーリング

1024

0 0 128

256カーネル数: 256

ストライド: 2

𝑦 𝑙 ,𝑚=∑𝑘=0

K−1

∑𝑖=𝑠𝑙− 1

𝐼− 1+𝑝

∑𝑗=0

𝐽 −1

𝒘 𝑗 ,𝑘 𝑥(𝑖+ 𝑗) 𝑘+𝒃 𝑗

10

ループ音源の逆畳込み 入力 1024 x 256カーネルサイズ J = 5 ストライド s = 2 パディング p = 1 出力 2048 x 128

1024

256

0 0 0 0 0 256

2048 +2 ( パディング ) 2048

カーネル数: 128

128

Page 11: hosokawa m

各層の計算,最適化手法バッチ正規化

各ミニバッチで特徴ごとに独立して,平均 0, 分散 1 の正規化を行う Dropout ,プーリングに変わる有効な手段

最適化手法: Adam [5]

推奨値: α=0.001 , β1=0.9 , β2=0.999 , ε=10e-8

DCGAN: α=0.0002 , β1=0.5 学習の安定化のため

誤差関数 :交差エントロピー

ミニバッチサイズが m, 各ミニバッチのある特徴を x とし, B={x_i...x_i} とする ,はパラメータ

11

Page 12: hosokawa m

DCGAN によるループ音源生成 DCGAN による学習,生成

生成データの目標 訓練データの一部を使った新たな音源の生成 ノイズが少なく,音がはっきり聞こえること 出力にバリエーションがあること

データ数は2,4 エレキベースのループ音源

単音が主体,単調なもの 同一のキー,テンポ

64 サンプルを生成し,比較

12

Page 13: hosokawa m

2 つのデータによる学習(学習の推移) 50000エポック

一方のネットワークが最適化されると一方の誤差が大きくなる対立関係が見られる 互いに収束することなく,これが繰り返されている

epoch

13

Page 14: hosokawa m

14主成分分析: 4096 次元 → 2 次元訓練データテストデータ

Page 15: hosokawa m

15

訓練データテストデータ

Page 16: hosokawa m

16訓練データ 1

訓練データ 0

生成データ • 外観はほぼデータ0

• 低い周波数成分は強く出ている → ベースの音が強調されている

Page 17: hosokawa m

17

訓練データテストデータ

Page 18: hosokawa m

18訓練データ 1

訓練データ 0

生成データ• それぞれのデータの1音から2つの音を発音

Page 19: hosokawa m

19

2 データでの学習,生成 訓練データの一部を使った新たな音源の生成

区間ごとにいずれかの訓練データを反映させている

ノイズが少なく,音がはっきり聞こえること 訓練データと比較するとノイズは多少感じる ベースの音に関しては強調して発音されている

出力にバリエーションがあること 1音ごとの組み合わせで作られているもの 1音を分解して組み合わせているもの

これらによって多様な出力が得られた

Page 20: hosokawa m

4 つのデータによる学習(学習の推移) 50000エポック

epoch

20

Page 21: hosokawa m

4 データ 21

訓練データテストデータ

Page 22: hosokawa m

22

生成データ

Page 23: hosokawa m

23

まとめ DCGAN を使ったループ音源の学習,生成を行った. データ数は 2 , 4 で行い,それらの生成データは

一定の区間ごとに訓練データとの一致がみられ,それらの組み合わせにより訓練データにないデータを生成することができた 訓練データとくらべてノイズが含まれるものの,演奏自体ははっきりと認識することができた データ数を増やすと,音が重なり合い,不自然に聞こえる部分もあった

今後の課題 より多くのデータを使った学習 高音質のデータによる学習学会業績

• 細川 皓平 , 川村 秀憲 , DCGAN によるループ音源の学習と生成 , WSSIT2017, 留寿都 , 2017 (予定)• 細川 皓平 , 川村 秀憲 , ディープラーニングによるループ音源の学習と生成 , 平成 28 年度電気・情報関係学会北海道支部連合大会 , 札幌 2016• 細川 皓平 , 川村 秀憲 , 畳み込みニューラルネットワークを用いた人物画像の認識と評価 , 情報処理学会第 78回全国大会 , 神奈川 , 2M-01, 2016• 細川 皓平 , 川村 秀憲 , 畳み込みニューラルネットワークを用いた人物画像の同一性判定 , 情報処理北海道シンポジウム 2015, 札幌 , AM29, 2015