歌詞からメロディを生成 – Conditional LSTM-GAN for Melody Generation from Lyrics

歌詞からメロディを生成 – Conditional LSTM-GAN for Melody Generation from Lyrics

Entry
歌詞からメロディを生成 – Conditional LSTM-GAN for Melody Generation from Lyrics
Simple Title
Yu, Yi, Abhishek Srivastava, and Simon Canales. "Conditional lstm-gan for melody generation from lyrics." ACM Transactions on Multimedia Computing, Communications, and Applications (TOMM) 17.1 (2021): 1-20.
Type
Paper
Year
Posted at
Feb 12, 2020
Tags
musicGANNLP

Overview - 何がすごい?

LSTM-GANで歌詞のテキストデータからのMIDIの生成を行う

Abstract

Melody generation from lyrics has been a challenging research issue in the field of artificial intelligence and music, which enables to learn and discover latent relationship between interesting lyrics and accompanying melody. Unfortunately, the limited availability of paired lyrics-melody dataset with alignment information has hindered the research progress. To address this problem, we create a large dataset consisting of 12,197 MIDI songs each with paired lyrics and melody alignment through leveraging different music sources where alignment relationship between syllables and music attributes is extracted. Most importantly, we propose a novel deep generative model, conditional Long Short-Term Memory - Generative Adversarial Network (LSTM-GAN) for melody generation from lyrics, which contains a deep LSTM generator and a deep LSTM discriminator both conditioned on lyrics. In particular, lyrics-conditioned melody and alignment relationship between syllables of given lyrics and notes of predicted melody are generated simultaneously. Extensive experimental results have proved the effectiveness of our proposed lyrics-to-melody generative model, where plausible and tuneful sequences can be inferred from lyrics.

Motivation

Conditional LSTM-GAN for Melody Generation from Lyricsは2019年夏にarXivに投稿されたNII(国立情報学研究所)の研究で,LSTM-GANで歌詞のテキストデータからのMIDIの生成を行うものです。

image

Architecture

歌詞のデータは単語から音節 (シラブル)に切り分けられ,各音節に対してMIDIノートが割り振られます。休符があった場合はその直後のデータにRestとして加えられる。各単位は楽曲の4分音符を1とした時の相対的な長さで,よって生成されるデータはxi={xi_MIDI, xi_duration, xi_rest}の3次元の系列となり,楽曲の長さはこのdurationとrestの合計となる。(再生される時の長さはその時のBPMに依存する)

image

楽曲のデータ

楽曲サンプルの各次元の分布(音程・長さ・休符の長さ)は以下のようになっています。この分布からランダムにデータをサンプリングした後に,指定されたスケールに対して補正をかける生成プロセスをベースラインの生成モデルとして定義しています。

image

モデル構造

LSTMを用いて系列データのエンコード・デコードを行います。

image

入力データに単語レベルと音節レベルの両方の埋め込みベクトルを用いることで表現力の向上を図っており,全歌詞データに対しての単語レベルと音節レベルのSkip-Gramモデルをそれぞれ学習し,それぞれ10次元のベクトル化。それらをConcatして20次元のconditionとしています。

Skip-Gramの学習のパラメータは,(context window=7, SGD, 学習率はη=0.03からエポック毎に減少, α=0.75でnegative sampling)となります。

image
image
image

Results

生成されたMIDIの評価

151351エポック学習したタイミングで生成されたMIDIに対し,ボランティア被験者によるMIDIパターンの音楽的要素の評価を行います。

  1. how about the entire melody?
  2. how about the rhythm?
  3. does the melody fit the lyrics well?

それに加え,定量的な基準も策定し,評価を行います。

  • MIDI numbers span : 最高音と最低音の差
  • 3-MIDI number repetitions : 3連続音のパターンの繰り返しの数
  • 2-MIDI number repetitions : 2連続音のパターンの繰り返しの数
  • Number of unique MIDI numbers : ノートの種類
  • Number of notes without rest : 休符を挟まないノートの数
  • Average rest value within a song : 平均した休符の長さ
  • Song length : すべてのノート・休符の長さの合計

上記の特徴に対して,テストデータ・本モデル・ベースライン の比較を行うことで,生成モデルの精度の評価を行います。

image

学習の効果の測定

各エポックでの生成データの評価 : 学習が進むにつれ,音数も増え,より「楽曲らしく」なっていると言えます。

image

さらに,学習を進めるにつれて表現も自然なものに近づくことが,楽譜から確認できます。

image

また,ベースラインモデルよりも生成されたパターンの音楽的要素はテストデータに近い分布となっていることが確認できます。

image

ボランティアからの評価もベースラインモデルより高い。

image

歌詞によるConditioningの効果の検証

image

異なった歌詞では異なった分布からMIDIのノートが選ばれており,異なったスケール,曲調のMIDIパターンが生成されていることが確認できます。これにより,歌詞から抽出された意味的な情報を元にMIDIを生成していることが分かります。

image

また,ランダムにした場合に生成されるデータの分布が大きく異なることから,音楽的な表現が単語列/音節列から獲得されていることが示されています。

Further Thoughts

Conditional LSTM-GAN for Melody Generation from Lyricsでは単に系列変換によるメロディの生成だけではなく,生成されるメロディの定性的・定量的な評価基準を明確に決め,それらの分析と「歌詞情報に基づいて生成されているかどうか」の評価を的確に行っています。また,本研究では歌詞 – MIDIのペアデータの作成まで行っており,テキスト – 音楽変換に関する研究に大きな貢献をされています。

Links