Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report

Flute

メロディと歌詞の相関に基づく自動歌詞生成
⁄ @@
1

ひとり

Fl
5

渡邉 研斗1,a)

松林 優一郎1,b)

深山 覚2,c)

後藤 真孝
乾 健太郎
⁄
⁄
⁄
⁄
⁄
⁄
,
⁄ @@ , - )2 ) ) ) ) ) ) ) ) ) ) ! - ) ) #) ) (!
,⁄⁄, - )2 ) ) ) ) ) ) ) ) ) ) , ) ) ) ) (!
,⁄⁄@@, , -- )2)2)) ) ) ) ) ) ) ) ) ) ! - ) ) #) ) (!
,⁄ , - )2 ) ) ) ) ) ) ) ) ) ) , ) ) ) ) (!
⁄#),⁄ , - )72) ) ) ) )!)7 . ) ) ) )) ) ) ! -- )7 ) ) #)) ) ((!
) ! #) )),⁄⁄, -) )2) ))) ) ) -) )7 ) ) ) ) -, )7 ) ! ) ) '(!
) ) ! #) #)) ) ))⁄⁄, - )7 )) ) ) ,))!7 ). ) )) ) ) ) ))! )- ),)7 )) ))! -) ) ())! ) ) ) ()!7 . ) )!)) )) #)) )) ) ) ! )- ) ) ! )#) #)) ) )!) )- ) ) ! )) )-) )7 )'! #) )) ) ) - )),7⁄⁄⁄ )! ) ) ) )! - ))!! ) ))7) )( #) ) )!) ), )7 )! )! ) -) ))!! ) )7 ) )!) . )) 7)

中野 倫靖2,d)

2,e)

1,f)

Fl
9

Fl
概要：本研究では楽曲のメロディを考慮した歌詞の自動生成手法を提案する．人間の作詞現場においては，
13
予め作曲されたメロディに対して歌いやすい歌詞を創作する「曲先」と呼ばれる方法が広く行われている．
しかしながら，自動歌詞生成の既存手法の多くは，韻やシラブルに基づく生成手法を提案しているものの，Fl
メロディと歌詞の関係を考慮しておらず，メロディの区切りと単語の区切りが一致しないような不自然な
17
歌詞を生成してしまう問題がある．本研究では，メロディの音符と歌詞の読みが対応づいたデータを用いて，メロディの音の長さ・休符の位置・繰り返し構造などの特徴と歌詞の相関を詳しく分析し，その結果
Fl
21をもとにした自動歌詞生成モデルを構築する．結果として作成されたモデルにより，休符や長い音符付近
で行や段落 (連) が区切れている自然な歌詞が自動生成された．
Fl

25

Flute
1

Fl

1. はじめにポピュラー音楽において，歌詞は感情やメッセージを伝えるための重要な要素であり，作詞家は歌詞を魅力的にするために以下の様々な性質を考慮している [1], [2], [3], [4]：1) メロディと単語の配置 作詞において，作曲されたメロディに対して歌詞を創作する「曲先」と呼ばれる方法が広く行われている．曲先の作詞では，メロディの音符数と単語のモーラ数*1 を揃えることが一般的である．また，作詞家は休符や音符の位置を考慮し，歌いやすい歌詞を創作している．例えば，図 1 の単語「明日」の途中に休符があると，「あし・た」と不自然な場所で単語を区切ってしまう．
一方「歩いた・」のように休符の前に単語があると歌いやすい歌詞になる．本研究では音符と休符の総称をノートと呼ぶ．

2) メロディと歌詞の抑揚 メロディの音高が変化するとき
は，歌詞の抑揚も変化させた方が良いと言われている．例
えば，図 2 のように音高が上がるとき，「ほしは」のように抑揚を上げた歌詞を作ることが一般的である．

29
Fl

メロディに対して歌いにくい，聴きにくい歌詞
5
Flute
Fl
Fl
1
9

まだし

33

ら

まだ

な

い

あ し

知らない

・

た へ ゆく

明日

へ行く

Fl
Fl
5
13

メロディに対して歌いやすい，聴きやすい歌詞
Fl

37
Fl
Fl
9
17

ひとり

で

一人で

Fl

Fl
Fl
41
13
21

あ

る

い た

・

歩いた

こ の み ちこの道

図 1 メロディに対して不自然な歌詞と自然な歌詞

Fl
Fl
Fl
17
25

45

Fl
Fl

21
29
Fl

H

H

H

H

H H

H

49
Fl

25
33

L

L

L

L

L

7
!
)
)
!
#)
!
#)
#)
)
!#)
)
) )))) )) - )7' (L)) で表す．
図 2 () )メロディの音高と歌詞の抑揚．抑揚を高-) 7) と低⁄ ) , ) ) ( ) - )7 ))! ) ) ) ) (H)) , ) ! ) ) ) ) ! )7 ) A) )メ3) 楽曲の構造と歌詞の内容⁄ ) ! ) ) ) )! - )! )7 ( ポピュラー音楽には「ロ」「B メロ」「サビ」などの特有の楽曲構造がある（本研(( ! ．作詞家はブロック構造に対して)),- )7 ) !#) ) ) ) ) ) '究ではブロックと呼ぶ）
⁄
ほ

し

は

か な た

で

き ら め く よ

Fl

29
37

Fl

41
33

Fl

45
37

Fl
ストーリー展開を持たせることで，聴き手が共感しやすい
49
41

1

2

a)
b)
c)
d)
e)
f)
*1

東北大学大学院 情報科学研究科
Tohoku University
産業技術総合研究所
National Institute of Advanced Industrial Science and Technology (AIST)
kento.w@ecei.tohoku.ac.jp
y-matsu@ecei.tohoku.ac.jp
s.fukayama@aist.go.jp
t.nakano@aist.go.jp
m.goto@aist.go.jp
kento.w@ecei.tohoku.ac.jp
モーラ数とは，日本語における音を数える際の単位であり，例えば，俳句における 5-7-5 の各数字はモーラ数に相当する．

c 2017 Information Processing Society of Japan⃝⁄について述べ，「B メロ」で過去の回想をした後，「サビ」⁄
で登場人物の感情を描くなどをしている．
4)⁄メロディの繰り返しと歌詞の繰り返し ポピュラー音楽
歌詞を創作している．例えば，「A メロ」で話の場面設定
Fl

45

Fl

49

では，
「1 番」と「2 番」のように，似たメロディが繰り返されることが多い．このとき，似たフレーズの歌詞を使用することが一般的である．例えば図 3 では，「1 番」と「2番」のメロディに対して，「心の隙間」と「心の奥」などの似たフレーズが使われている．

1

Fl⁄ , - )2 ) ) ) ) ) ) ) ) ) )! - ) ) #) ) (! ,⁄ @@ , - )2 ) )) ) ) ) ) ) ) )! - ) ) #) ) (! ,)) ) ) ) (! , No.16
Vol.2017-NL-231
情報処理学会研究報告, , --)2)2)))))) )) )) )) )) )) )) ))! ,Vol.2017-SLP-116, - )2 ) ) ) ) ) ) ) ) ) ) , ) ) ) ) (! ,⁄@⁄) #) ) (! 2017/5/16, No.16⁄@IPSJ SIG Technical Report
#)
)
)
)
)
)
)
⁄⁄ ,, -- )7)2)) ) ) )) )!)7 . )) ) ) ) ) -, )7 )) )) ) )) ((! ,⁄ , - )2 ) ) ) ) ) ) ) ) ) )! - ) ) #) ) (! ,1番,, -) )2)) ))) )) )) -) )7 ))! # ) )) )) ))! --)7 ))! )) #)) )) '(! ,,@ , --)2 )))))) )) )) )) )) )) )) ))! ,- )) )) ) )) (!(! ,,⁄ @@ , - )2 ) )) ) ) ) ) ) ) )! - ) ) #) ) (! ,
⁄
⁄
⁄
Aメロ
Bメロ
サビ
⁄ @ )2) ) ) ) )! ) #) ) ) ) ) ) #)) ) (
! #)
)
)
)
)
)
)
)
)
)
)
(!
)
)
)
)
,
,
⁄ , - )2⁄⁄ ,, -- )7)2 ) ) ) ) 7) . ) ) ) ) ) -, )7 ) ) ) ) (! ,⁄⁄ , - )2 ) ) ) ) )) ) )) ) )) ) )) )!) ) , ) )) ))! ) -) (!)!) ) ) )!.7 , ) )#) ) ) ) - ))! ) ) #)) ))初めて気づいた日の) ) ) ) ) ) ) ) )! -この道…
)! ) ) ) ')) ))!! ) )) ) #)) #)) )) )!) ) ) )) )) )- ))7 )(!…
)) )) -) )7 )! # ) ) ) )! -暖かく…
) ) #) ) (! ,))⁄ , - )2 )一人で歩いた⁄⁄ ,, -) )2)) )))心の隙間を⁄
7
7,⁄ - )7 7 .
- )7) ) ) ) - ) ) #) ) (! ,
!
#)
)
)
)
)
)
)
)
)
)
)
)
(!
!
)
)!
!
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
)
!)
)
)!
)!
!
)
)
)
)
)
)
!)
)
)
)
)
(
)
)
)
!
,
,
,
⁄⁄ @@ , -)2)2 ) )) ) ) ) ) ) ) )! - ) ) #) ) (! ,⁄⁄ , - )2 ) ) ) ) ) ) ) ) ) ) , ) ) ) -) (! )!.7 ,2番⁄⁄ , ) ) ) -) ) - )77 ) # ) ) ) ) -, )7 )! ) ) ) ' 7 )
!
)
)
#)
!
#)
!
#)
#
)
)
Aメロ
( , ) ) ()! ) ) ) ) - #))7 ) ))!! #)) )) )) ))! ) ) '!) ) ) ) )⁄⁄ ,, -- )7)2)) )) )) )) )!7) . )) ) )) )) )) -, )7 )) )) )) )) ((! , Bメロ⁄⁄ ), )- )) ) )) ) )) ))!7 ). )) ) #)) ) )) )!) )- )) )) )) )- )7 ( ) ) - )7 サビ⁄- ) )!.77 ) )! )! ) ( ) 7 )! ) ) ) )! ) ) ) ⁄!))) ))) ) ) - )7 )! # ) ) ) ) - )まっすぐに…
!) ) ) '
)
)
)
)
!
,
,⁄あなたがいつでも)7#) ) ) ) - )) ) ) - )77 # ) ) ) ) 届いたよ…
) )! ) ) ) ) #) ) )! ) ) ) ) - )7 )!…
⁄⁄ )! ) ) #) )初めて気づいた日は-! # ) )7) )! ) ) ) '⁄ , - )2 ) ) ))! ) )) ) )) )#) )) ))!! -7 ) )! #) ) (! , ) ⁄⁄ ,( ) ) 心の奥まで
7))()!! ) ) ) ) - #))7 ) )! ) ) ))! ) ) ' ) ) )) -) )(!!) ) ) )!.7 , ) ⁄ , ) )(RWC⁄⁄ , - )2 ) ) ) ) ) ) ) ) ) 図) ) ,3) )) ))メロディと歌詞の繰り返し
!
)
)
)
!)
)
)!
)!
!
)
)
)
)
)
)
!)
)
)
)
(
)
)
)
⁄⁄
)!.7 RWC-MDB-P-2001
研究用音楽データベース- 7 No.20,
7 ))7 )! # ) ) ) ) - ) ⁄)⁄ ! ) ) #) )) ) )) ))!! ) )) ) #)) #)) )) )!) ) ) ) ))[5])!
))7 ⁄⁄ )! ) ) #) ) ) )! ) ) ) ) #) ) )! ) ) ) ) - 7 # ) ) ) ) - )7 ⁄ ( , ) ) (! - )7 )! # ) ) ) ) ) ) '- )7 ) ) ) (⁄ , !)- ))7 )) )! 7)! .
!
))) ) ) -) ) ))7 )! #() ) ) )) , ))! ! )) )) ) ' )7 ) ) ) ⁄ )!) ) ) )! )! ) ( ) )! ) ) ) )! ) ) ) ⁄⁄もし上記の性質を満たした単語列を探索するシステムが- 7, 詞家が重要視している歌詞の性質を定量的に示せた．例え
-7
- )7
7 ) ⁄
⁄
⁄ ,( )
!
#
)
)
)
)
!
)
)
(
)
)
'
実現できれば，)) )) ') ) ) - #)7 ) )! ) ) ) )! - )!) ) ) )!. ) ) ⁄⁄ ( , ) ) (! - )7 )! # ) )ば，長い休符の直後では行やブロックの境界が出現しやす⁄⁄ , ) ) )! ) 膨大な可能性から単語列を探す手間を簡略化
7⁄できると考えられる．このような動機から，歌詞の性質をくなるという分析結果が得られた．
)! # ) ) ) ) - )⁄⁄ )! ) ) #) ) ) )! ) ) ) ) #) ) )! ) ) ) ) - )7 歌詞の自動生成・作詞支援シ
数理的にモデル化する研究や，
3)
メロディに基づく自動歌詞生成モデルの構築
メロディ
7 ⁄
⁄
ステムに関する研究が行われてきた．
[8], [9], [10]．
と歌詞の関係性に関する分析によって得られた知見を活⁄⁄ )!) ) ) )! - )! )7 ( ) , )! ) ) ) )! )7 ) ) ) [6], [7],⁄例えば，渡邉らはユーザが入力したモーラ数列とストー
かし，歌詞の自動生成モデルを構築する．具体的には，文
!
#
)
)
)
)
⁄
(
!
)
)
(
)
)
'
)
)
,
7
リーを満たした単語列を推薦する支援システムを提案して章生成の分野で成功している Recurrent Neural Network⁄⁄
いる [10]．
(RNN) 言語モデルを応用し，各 RNN 層にノートの種類や⁄し か し ，ほ と ん ど の 自 動 歌 詞 生 成 の 先 行 研 究 は ，長さなどの特徴量ベクトルを入力する．自動生成の結果，モーラ数や韻の条件を満たす歌詞の生成に留まってお休符や長い音符付近で行やブロックが区切られている自然⁄
り [8], [9], [11], [12]，メロディに合った歌詞の自動生成にな歌詞が生成された．
⁄
踏み込んだ研究はほどんどない [6], [7]．この原因として，
以下に本論文の構成を述べる．まず第 2 節では歌詞の構
Flute

9

1

Fl

Fl

Flute
13

5

1

Fl

Fl
9

Fl
17

Flute

Fl

Fl

1

13
Flute

Fl
21

5

9

1

Fl

Fl

Fl

5

17
Fl

Fl
25
13

5

Fl

Fl

Fl

9

21
Fl

Fl
29

9

17

Fl

Fl

13
Flute

25
Fl

Fl
Fl
33

1

13

21

Fl

Fl

17
Fl

29
Fl

5

17

Fl

Fl

21
Fl

33
Fl

9

21

Fl

Fl

25
Fl

37
Fl

13

25

Fl

Fl

29
Fl

41
Fl

17

29

Fl

Fl

33
Fl

45
Fl

21

33

Fl

Fl

37
Fl

49
Fl

25

37

Fl

Fl
37
25
Fl

Fl
41
29
Fl

Fl
45
33
Fl

Fl
49
37

Fl

41

Fl

45

Fl

41
Fl

Fl

29

41

Fl

49

Fl

45
Fl

Fl

33

45

Fl

49
Fl

Fl

37

49

Fl

41

Fl

45

Fl

49

メロディと歌詞が対応づいた楽曲データが少ないことが挙造分析に関する関連研究と，歌詞の自動生成に関する関連げられる．また，メロディを考慮した自動歌詞生成の研究

研究を概観する．第 3 節ではメロディと歌詞が対応づいた

では，楽曲の「A メロ，B メロ，サビ」のようなブロック

データの作成方法について説明する．第 4 節では作成した構造を考慮せず，4 行ほどの小範囲の歌詞しか自動生成しデータを用いて，メロディと歌詞の関係性を分析する．第ていない．

5 節では分析した知見をもとに，入力メロディに対して歌

我々の目的は，入力したメロディに対して，歌いやすく

詞を自動生成する深層モデルとその学習方法について説明

聴きやすい自然な歌詞を自動生成することである．この目する．第 6 節では提案モデルを用いて実際に自動生成した的達成のために，以下の 3 つのタスクに取り組む：

歌詞の例を紹介し，第 7 節では提案モデルを定量的に分析・

1) メロディと歌詞が対応づいた楽曲データの作成 メロ評価する．第 8 節で論を結ぶ．

ディと歌詞の関係性を分析し，自動歌詞生成モデルを構築するために，メロディと歌詞が対応づいた楽曲データを用意する．しかし，そのために利用可能な大規模楽曲コーパ2. 関連研究2.1 歌詞構造のモデリングに関する研究

スはなく，手作業でのデータ作成も手間と時間がかかる．

本節では，歌詞の構造を分析した先行研究を紹介する．

そこで本研究では，歌詞のテキストデータと歌声合成のメ

ほとんどの先行研究は，韻やシラブルなどの歌詞の表現法

ロディデータを用意し，動的計画法によるアライメント手に焦点を当てている．Reddy らは文法の異なる言語の歌詞法を用いて目的の楽曲データを自動的に作成する．この，の押韻を推定するために，マルコフ過程に基づく言語に依

歌声合成のメロディデータを用いて自動歌詞生成モデル用存しない押韻モデルを構築している [13]．Greene らは有限の楽曲データを作成する試みは本研究が初めてである．

状態トランスデューサを用いて歌詞のシラブルのパターン

2) メロディと歌詞の相関の分析 作成した楽曲データをを推定している [14]．Mayer らは韻や品詞などの言語素性用いて，メロディと歌詞の関係性について 3 つの分析をすを用いた Support Vector Machine (SVM) を構築し，楽曲

る：(a) メロディのノートと行・ブロックの境界に関するのジャンル分類をしている [15]．

分析．(b) メロディの音高と歌詞の抑揚に関する分析．(c)一方，歌詞のブロック構造に焦点を当てた先行研究もあメロディと歌詞の繰り返しに関する分析．分析の結果，作る．渡邉らは音響信号に基づく楽曲構造解析で用いられる

c 2017 Information Processing Society of Japan⃝2

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report⁄ @@ ⁄ @@ ) ) ) )) ) ) ) )⁄ ⁄Self-Similarity Matrix を応用して，歌詞のブロックの繰り11返し構造をモデル化している [16]．また，渡邉らはブロッ

ク間のトピック遷移構造をベイジアンモデルで構築し，歌

an - gús - ti - a

詞のテーマやストーリー展開を分析している [17], [18]．

メロディと歌詞の関係性を分析した研究として Nichols
らと堤らの研究がある．Nichols らは音符と歌詞がアライメントされた 679 曲の英語楽曲データを用いて，メロディ

5 図 4 メロディの拍と歌詞のシラブル．強い拍の位置にある音符を5赤く示す．

とシラブルの関係性を分析している [19]．例えば，音符の高さがピークであるときや，強い拍のときには，syllableのシラブルが対応づいた 10 曲の楽曲データを使い，メロ

stress の歌詞になりやすいことわかっている．一方，日本

ディから行の境界やアクセントなどの中間パラメータを予語には syllable stress という概念はないため，Nichols らの測する確率モデルを構築している [7]．彼らは予測された中分析結果をそのまま用いることはできない．堤らは 155 曲

間パラメータを満たすような単語列を探索し，メロディにの日本語の童謡・唱歌を対象に，メロディの音高と歌詞の基づく自動歌詞生成を行っている．しかし，この研究では抑揚の相関について分析している [20]．これらの研究は，10 曲という少ない楽曲データでモデル学習を行っているた

ある時刻のメロディに対応する歌詞の分析を行っているが，め，十分なデータ分析やモデル評価が行われていない．

行やブロックなどの楽曲の歌詞の大局構造に関する分析はこれらの自動歌詞生成に関する研究は，歌詞の 1 行もし行われていない．そこで本研究では，日本語の歌詞を対象

くは 1 ブロックを生成しており，1 曲の歌詞を生成するよに，メロディと歌詞の行・ブロックの関係性を分析する．

うに設計されていない．本研究では，1000 曲の楽曲データ
からメロディと歌詞の関係性を分析し，ブロックなどの楽

2.2 歌詞生成に関する研究
歌詞生成の関連研究は，単語の母音やシラブル，モーラなどの音韻論を応用した研究が多い [8], [9], [10]．例えば，

曲構造を考慮した歌詞を自動生成する．

3. メロディ–歌詞対応データの作成

Barbieri らは単語列間のマルコフ過程を利用して，韻やリ本研究では，メロディと歌詞の関係性の分析に適した楽ズムの制約を満たした歌詞を自動生成している．また，彼曲データが必要である．しかし，メロディの各音符に対しらは「代名詞，動詞，前置詞，代名詞，副詞」のような品て対応する歌詞の文字とその読みが付与された楽曲データ

詞テンプレートを作成し，これを満たした「she knocked（以下，「メロディ–歌詞対応データ」と呼ぶ）の入手は困難

upon it anyway」のような文法的に正しい歌詞を生成する

で，手作業で作成しようとすると大きな手間と時間がかか

ほか，Wikipedia 内のリンク構造から単語間の関連性を計る．そこで本研究では，人々が歌声合成ソフトウェアを利算した Wikipedia Link-Based Measure[21] を応用し，ユー

用する際に，メロディの音符系列（楽譜情報）とその各音

ザが入力したキーワードと関連した単語を生成している．

符に対する読み（音節）を入力していることに着目し，そまた，近年では RNN などの深層学習手法を用いて歌詞をの歌声合成用の読み付きメロディデータを活用する．そし生成する研究が行われている [11], [12]．例えば，Potash らて，さまざまなクリエータが歌声合成ソフトウェアを用いは歌詞の行末は韻を踏みやすいという仮定のもと，行末をて創作し，Web 上で公開している大量の楽曲群の歌声合成

出力シンボルとみなした RNN を構築し，行末で韻が踏ま用の読み付きメロディデータと，歌詞のテキストファイル

れた歌詞の生成を試みている．しかし，これらの研究ではとを自動的に対応付ける（アライメントする）ことで，メメロディを考慮せず，テーマとなる単語や「5-7-5」のようロディ–歌詞対応データを作成する．本研究では，作成しなモーラ数を満たした歌詞を生成しているにすぎない．

たメロディ–歌詞対応データを用いてメロディと歌詞の関メロディを考慮した歌詞生成の研究として，Oliveira ら

係性を分析すると同時に，歌声合成ソフトウェアを創作活と Ramakrishanan らの研究がある [6]．Oliveira らはポル動で活用している人々が行う作詞の振る舞いについても分

トガル語の歌詞を対象に，メロディの拍と歌詞のシラブル

析する．本節では，まず作成するデータの仕様について説の関係性を 42 曲の楽曲データを用いて統計的に分析して明し，次にデータの作成方法を述べる．

いる．さらに彼らは分析結果で得られた知見を活かし，メ
ロディによって生成歌詞のシラブルを制約するルールを複3.1 データの仕様

数提案している．例えば，図 4 のように，赤で示した強い

作成する楽曲データの例を図 5 に示す．ここで各行は拍の場所では syllable stress になるように単語を生成して1 つのノートに対応し，左から順にノート情報，モーラ情いる．しかし，彼らの手法は，生成する歌詞の行末の位置

報，単語情報，境界情報である．ノート情報は左から順に．

は予め与えられており，行やブロック構造を考慮できていノート ID（ノートが再生される順番），ノートの高さ（0ない．一方，Ramakrishanan らはメロディの音符と歌詞から 127 の各数字は音高を表す MIDI ノート番号に対応す

c 2017 Information Processing Society of Japan⃝3,⁄ , - )2 ) ) ) ) ) ) )) )) ) ) ! ,- ) )) #)) )) (!(!
,#)) ) (!
⁄ , - )2 ) ) ) ) ) ) ) ) ) ) ! ,- ) )Vol.2017-NL-231
No.16
Vol.2017-SLP-116 No.16,⁄ , - )72) ) ) ) ))!7 . ) ) )#) )) ) ) -, )7 ) ) ) ) (!( 2017/5/16) ) ) ) )! ) ) #)! #) ) ) )) - )7 )! ) )) ) ('⁄ , -) )7 ) ) 7) .- )7 !
) ))! )- ) 感じたの!) ) ) ')7 )) )#) #)) とき) ) ) ) ) ! )-くれた⁄ , 照らして7 )) ) ! - ) ! ) ) ) )!7 . ) )!
#)⁄ ) ! ) ) #) ) ) ) ) ) ) ) ) )! ) ) ) ) ! --)7 ) ! #)) ) )) ))!7 ). -) )7))) !! #) )) )) ) …- )! #)! ) )) ) )( #)気づいた日の) )!) ) ) ) ! ) )- ))7 あなたの⁄ )) ! ) ) ) )!) )- ))!初めて
,
7 )7
7
図
6
ノートの種類・長さと行・ブロックの境界!
⁄ )( ! ) ) ,) )!) -) )!( ! )7 (- )7 ) !#), ) ) ! )) ) )) )' )7 ) ) )!#) )⁄ ( 1 , ) ) ( ! - )7 ) ) ) ) ) '
単語の境界
0.9
⾏の境界
⁄ 0.8
ブロックの境界
⁄ 0.7
0.6
⁄ 0.5
0.4

9

Fl
Fl
9
13

情報処理学会研究報告

Fl
Fl
13
17

単語ID,表層,品詞,品詞細分類
読み,抑揚の高低
ノート情報0,rest,7680
1,64,240
2,63,240
3,64,240
4,63,240
5,64,240
6,66,120
7,68,600
8,rest,240
9,61,480
10,63,240
11,64,240
12,66,240
13,68,480
14,66,240
15,68,480
16,66,240
17,61,1440
18,rest,960
19,64,480
20,63,240

モーラ情報<None>
タ,L
チ,H
ド,H
マ,H
ル,H
ト,L
キ,H
<None>
マ,L
タ,H
フ,H
ト,L
フ,L
リ,H
カ,H
エ,H
ル,H
<None>
イ,H
マ,H

境界情報
<beginBlock>：ブロック頭<beginLine>：行頭

単語情報<None>
0,立ち止まる,動詞,自立
0,立ち止まる,動詞,自立
0,立ち止まる,動詞,自立
0,立ち止まる,動詞,自立
0,立ち止まる,動詞,自立
1,時,名詞,非自立
1,時,名詞,非自立<None>
2,また,接続詞,*
2,また,接続詞,*
3,ふと,副詞,一般
3,ふと,副詞,一般
4,振り返る,動詞,自立
4,振り返る,動詞,自立
4,振り返る,動詞,自立
4,振り返る,動詞,自立
4,振り返る,動詞,自立<None>
5,今,名詞,副詞可能
5,今,名詞,副詞可能

境界情報<None><beginBlock><beginBlock><beginBlock><beginBlock><beginBlock><None><None><None><None><None><None><None><None><None><None><None><None><None><beginLine><beginLine>

ノートID,ノートの高さ,ノートの長さ
ノートID：音の出る順番
ノートの高さ：0〜127：音高を表すMIDIノート番号に対応
rest：休符
ノートの長さ：480が四分音符に対応

Fl
Fl
17
21

Fl
Fl
21
休符
25

Bメロ・２行目

長い音符

て ら

Fl
Fl
29
33

長い休符

く れ た

と

き

か ん じ

た

の

は じ

めて

きづ

い た

ひの

あ な

た の

…

Fl
Fl
33
37
Fl
Fl
37
41
Fl
Fl
41
45
Fl
Fl
45
49
Fl

49

0.3
0.2
0.1
0
⾳符

図 5 行・ブロック境界情報付きメロディ–歌詞対応データ

る．rest は休符を意味する），音の長さ（480 が四分音符にし て

サビ・１行目

Fl
Fl
25
29

P(境界の種類|ノートの種類)

IPSJ SIG Technical Report

休符

ノートの種類
図 7

音符もしくは休符の後に行やブロックの境界が出現する確率相当する）を意味する．モーラ情報には単語の読みと抑揚の高低（H は高い抑揚，L は低い抑揚）を意味する．単語情

上記の手順により，図 5 のような行やブロックの境界情報

報は左から順に単語 ID，表層系，品詞，品詞細分類である．

付きのメロディ–歌詞対応データを作成した．

境界情報の ⟨beginBlock⟩ はブロック頭，⟨beginLine⟩ は行頭を意味する．なお本研究では，1 つの音符に 1 モーラが割当てられ，休符に歌詞は割り当てられないと仮定する．

4. メロディと歌詞の相関に関する分析
本節では，作成した 1000 曲の楽曲データを用いてメロ
ディと歌詞の相関について 3 つの分析をする．まず，ノー3.2 動的計画法によるメロディ–歌詞対応データの作成
以下にデータの作成手順を示す：( 1 ) 歌声合成のメロディデータを用意する．本研究は歌声合成ソフトウェアを活用している人々が作成した 1000

トと歌詞の行・ブロックの関係性について分析し（4.1 節），
次にメロディの音高と歌詞の抑揚の関係性を分析する（4.2節）．最後にメロディと歌詞の繰り返しについて分析する（4.3 節）．

曲のメロディデータを用意した．

( 2 ) 手順 1 で用意した楽曲と同一の歌詞のテキストデータを用意する．なお，用意したテキストデータは行とブ
ロックの境界が与えられている．

4.1 メロディのノートと歌詞の行・ブロック
作詞家はメロディの音符や休符を考慮して歌いやすく聴きやすい歌詞を創作すると言われている [2], [3], [4]．した( 3 ) 手順 2 で用意したテキストデータに対して，形態素解がって，ノートの種類や長さによって歌詞の構造が異なる析を行いモーラ情報と単語情報を抽出する．本研究でと考えられる．例えば，図 6 のように長い音符や休符の直は形態素解析器として MeCab を使う．なお，モーラ

後で歌詞の行やブロックが区切れることがある．この仮説

情報の抽出のために UniDic 辞書を用い，単語情報のを検証するために，ノートの種類や長さの条件を変えたと抽出のために IPA 辞書を用いる．

きの行やブロック境界の出現確率を計算する．

( 4 ) 手順 1 で収集した「メロディ–読みデータ」と，手順 2，3

図 7 に音符・休符の直後に単語・行・ブロック境界が出で収集した「歌詞–読みデータ」を自動アライメントす

現する確率を示す．この図より，休符の直後に行の境界がることで，目的の「メロディ–歌詞対応データ」を作成出現する確率は 31%，ブロックが出現する確率は 13% とする．具体的には，2 つの DNA 塩基配列をアライメン

なり，音符の直後に境界が出現する確率より高いことがわトする動的計画法として知られる Needleman-Wunschかる．この結果より，休符の直後の方が行やブロックの境

アルゴリズムを用いる [22]．

界が配置されやすいことが検証できた．

c 2017 Information Processing Society of Japan⃝4

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report

⾏の境界

0.8

ブロックの境界

0.7
0.6
0.5
0.4
0.3
0.2
0.1

)
|
|)P(P(境界の種類|ノートの長さと種類)
P(

7680〜

3840

1920

1680

1440

960

1200

720

480

360

240

120

0

ある長さのノートの後に行やブロックの境界が出現する確率

1

 

0.9



0.8



0.7

⾳⾼が変化した時に抑揚が変化する割合

0.9

60

P(境界の種類|ノートの⻑さ)

単語の境界

ノートの⻑さ(480は四分⾳符に相当)
図 8

抑揚が上がる
抑揚が下がる
抑揚の変化なし

0.9

1

0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
⾳⾼が上がる

⾳⾼が下がる

⾳⾼の変化なし

⾳⾼の変化
図 10 メロディの音高の変化に対する歌詞の抑揚が変化する割合

音符の直後ではブロック境界が出現する確率が高いことがわかる．一方，図 9 の下のグラフを見ると，長さが 720 から 1440 の休符の直後では行の境界になる確率が高くなり，0.6

長さが 1680 以上の休符の直後ではブロックの境界になる

0.5

確率が高いことがわかる．この結果は，休符が長くなるほ

0.4
0.3

ど行の境界，ブロックの境界と順に出現する確率が高くな

0.2

ることを意味する．

0.1

以上の結果より，ノートの種類や長さによって行やブ0

ロックの境界の出現分布に偏りがあるということが定量的
10.9に確かめられた．
 

0.8





0.7

4.2 メロディの音高と歌詞の抑揚

0.6

作詞家はメロディの音高に合わせて歌詞の抑揚に変化0.5を持たせると言われている．堤らは日本の童謡・唱歌にお0.4

いて，メロディの音高と歌詞の抑揚の相関を分析してい

0.3
0.2

る [20]．本研究では，ノートの音高の変化とモーラの抑揚

0.1の変化を「上がる」，「下がる」，「変化なし」の 3 つの状態

0に分け，音高の変化に対する抑揚の変化する割合を計算す
る．図 10 に得られた割合を示す．この図より，音高が上

がると抑揚が上がる割合が高くなり，音高が下がると抑揚が下がる割合が高くなることがわかる．しかし，これらの

図 9 ノートの長さや種類を条件とした時の行やブロックの境界が出現する確率次に図 8 に，ある長さのノートの直後に単語・行・ブロッ

割合の値は約 20%であり，抑揚が変化しない場合と比較して小さな値である．また，抑揚が上がる割合と抑揚が下がる割合の差は 5%しかなかった．

ク境界が出現する確率を示す．この図より，ノートが長くなるにつれて単語の境界の出現確率は減少し，行とブロッ

4.3 メロディと歌詞の繰り返し

クの境界の出現確率が増加することが確認できた．特に楽曲の「1 番」と「2 番」のように似たメロディが繰り返

ノートが 1920（4 拍分の長さ）より長くなると単語の境界される場所では，歌詞も似せることが一般的である．したよりも行とブロックの境界の方が出現しやすくなる結果とがって，似たメロディが繰り返される箇所では，似た単語なった．

が出現しやすくなるはずである．本研究では，この仮説を最後に図 9 に，長さと種類が異なるノートの直後に単語・以下の手順で検証する：

行・ブロック境界が出現する確率を示す．図 9 の上のグラ( 1 ) ある歌詞の t 番目の単語を wordt とし，wordt の最初

フを見ると，長さが 60 から 3840 の音符の直後では単語のの読みに対応するノートを notei(t) とする．ここで i(t)境界が出現する場合がほとんどだが，長さが 7680 以上のは単語の位置 t からメロディ中のノートの位置を返す

c 2017 Information Processing Society of Japan⃝5

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report
表 1 メロディと歌詞の繰り返しに関する統計
完全一致の単語ペアを含む

完全一致の単語ペアを予め除外

メロディが似ている単語ペア

ランダムに選んだ単語ペア

メロディが似ている単語ペア

完全一致の割合

26.74%

1.41%

None

ランダムに選んだ単語ペア

None

韻を踏んでいる（母音が部

32.58%

5.65%

7.97%

4.30%

32.21%

4.81%

7.73%

3.47%

分一致する）割合
意味が似ている割合′( 5 ) 収集した単語ペア wordt , wordt において，(a) 完全一

𝐤𝐞𝐲𝐬% ' = 𝑘𝑒𝑦% ' ,*, … 𝑘𝑒𝑦% ' ,;,…, 𝑘𝑒𝑦% ' ,+<== ⋯ , 57,57,57,57,62,62,62,62,65,65, …

致であるか，(b) 韻を踏んでいるか（母音が部分一致し𝑛𝑜𝑡𝑒 % ' )+𝑛𝑜𝑡𝑒 % ' ),𝑛𝑜𝑡𝑒 % ' )-ているか），(c) 意味が似ているかを判定し，その頻度を𝑛𝑜𝑡𝑒 𝑖(𝑡) の前後4小節のノート系列を256個の𝑘𝑒𝑦 % ' ,; に分割

MIDIノート番号

68
64

63
61

58

計算する．なお，単語の意味が似ているか判定するた

𝑛𝑜𝑡𝑒 % ' )* 𝑛𝑜𝑡𝑒 %(')
67

𝑛𝑜𝑡𝑒 % ' )+

65
64
62

…

めに，日本語 Wikipedia で構築した Word2Vec*4 を用

𝑛𝑜𝑡𝑒 % ' .*𝑛𝑜𝑡𝑒 % ' .+いて cos 類似度を計算する [23]．本研究では，類似度

𝑛𝑜𝑡𝑒 % ' .,𝑛𝑜𝑡𝑒 % ' ),

…

60
59

が 0.5 以上であれば単語の意味が似ていると仮定する．
以上の手順で得られた統計量を用いて，メロディと歌詞の繰り返しに関する割合を計算する．表 1 に，完全一致，押𝑛𝑜𝑡𝑒 % ' )-57

韻，意味が似ている単語ペアに関する統計を示す．この表

57

ひ と

り

あ

で

一人

た

から，ランダムに単語ペアを選ぶよりも，メロディが似て歩いたで𝑤𝑜𝑟𝑑 ')+

いる

𝑤𝑜𝑟𝑑 '

𝑤𝑜𝑟𝑑 ')*

いるときのほうが単語ペアが完全一致する割合，単語ペア

図 11 メロディの音高の変化に対する歌詞の抑揚が変化する割合が韻を踏む割合，単語ペアの意味が似る割合が高いことがわかる．特に，単語ペアが完全一致になる割合はランダム関数であり，t と i(t) は異なるインデックスであるこに選んだ単語ペアより約 25%も高くなり，メロディが似てとに注意されたい（ただし 1 ≤ t ≤ T ，1 ≤ i(t) ≤ I ）．

いる時は単語も繰り返しやすいということが定量的に確か( 2 ) 図 11 の よ う に ，notei(t) を 中 心 と し た 前 後 4 小 節

められた．一方，予め完全一致する単語ペアを除外して割の ノ ー ト 系 列 を 時 間 軸 方 向 に 256 分 割 す る*2 ．つ合を計算した結果，ランダムに選んだ単語ペアと比較して，

ま り ，8 小 節 を 256 分 割 し た こ と に な り ，楽 曲 がメロディが似ている単語ペアが押韻，もしくは似た意味で

4/4 拍子のときは 4 分音符が 8 分割され，32 分音ある割合は約 3%しか高くならなかった．

符 の 分 解 能 と な る ．こ こ で ，256 分 割 し た 系 列 を本研究では，メロディが似ている場所での単語ペアに関

keysi(t) = key i(t),1 , key i(t),2 , ..., key i(t),256 とする．各する統計を計算した．しかし，実際の歌詞では，「ほとんど

key の値は 0 ≤ key ≤ 127 であり，音高を表す MIDI

同じ単語を使っているが一部分だけが異なる文」が多いとノート番号に対応する．なお本研究では，休符の key

考えられる．単語の繰り返しだけでなく，文節や行などのの値を 0 に設定した．

大きいフレーズが繰り返されているとき，フレーズ間にど′( 3 ) 単語 wordt に対応する系列 keysi(t) と単語 wordt に′のような違いがあるかを分析することが今後の課題である．

対応する系列 keysi(t ) の類似距離を以下の式で計算

5. 深層学習を用いたメロディに基づく自動歌
詞生成手法

する：
′

distance(keysi(t) , keysi(t ) )
=

256
∑

|key

i(t),x

本節では，メロディと歌詞の関係性の分析結果を活かし，− keyi(t′ ),x|(1)

メロディに基づく自動歌詞生成の手法を提案する．

x=1

本 研 究 で は 1 ≤ t′ ≤ t − 7 の 範 囲*3 の う ち ，

5.1 入力と出力′

distance(keysi(t) , keysi(t ) ) ≤ 100 かつ距離が最も近い系列ペアを，最も似たメロディとする．
i(t)( 4 ) 最も似ている系列 keys

i(t′ )と keysに対応する単′*2*3

提案モデルの入力はノート（音符または休符）の系列である．ただし，ある時刻に 2 つ以上のノートは重ならないと仮定する．本研究では，入力のノート系列を語ペア wordt , wordt を収集する．

notes = note1 , ..., noteI と定義する．各 note は音の高さ

なお，先頭単語のノート系列と最終単語のノート系列を 256 分割するために，先頭ノート notei(t)=1 と最終ノート notei(t)=I は
4 小節分の長さの休符にしている．
本研究では，最低でも歌詞の 1 行以上離れた位置にあるメロディ同士を比較するために，1 行あたりの平均単語数である 7 以上離れた単語のノート系列を比較する．

（0 から 127 の音高を表す MIDI ノート番号もしくは休符）

c 2017 Information Processing Society of Japan⃝と長さ*5 の情報を持つ．
*4*5

http://www.cl.tohoku.ac.jp/jawiki vector/
ノートの長さは 60, 120, 240, 360, 480, 720, 960, 1200, 1440,

6

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report<beginLine>

立ち止まる(タチドマル)

0𝒚2"#$%

𝒚2'#$(

𝒚&"#$%

5

1時(トキ)𝒚&'#$(

𝒚/"#$%ふと(フト)
𝒚0"#$%

𝒚/'#$(

振り返る（フリカエル） 52

𝒚0'#$(

𝒚1"#$%<beginLine>
𝒚23
"#$%

𝒚1'#$(

0
𝒚23
'#$(

…

LSTM
𝒙2"#$%

𝒙2*#+,-

𝒙&"#$%

𝒙/"#$%

𝒙&*#+,-<beginSong><beginBlock>𝒏2

𝒏&𝒙0"#$%

𝒙/*#+,-

立ち止まる
𝒏/𝒙0*#+,-

𝒙1"#$%

𝒙1*#+,-

𝒙23
"#$%

ふと
𝒏1

また
𝒏0

𝒙23
*#+,-

振り返る
𝒏23

Flute

⁄…@@ , )#)&)#)&) $) $) ) - $)…2 ) #) &) $) $) $) ) ) ) $) (⁄ ) #) ) ) &) $) #) ) - #)2 ) &) $) $) ) $) ) ) $) ) ) (⁄ )#)&)#)&))#)&) $) $) - $)2 ) #) &) ) $) $) ) ) ) $) ( ,⁄ ) #) ) )2! . - )&) $) ) ) ) ) ) $) ) ) $) ) $) ) ) ( )2
⁄ $) $) ) ) $) ) ( )!2 . , ) ) $) ) $) #) ) ) ) ) )⁄ $) $) ) ) $) ) ( - $)2 $) ) ) $) ) ) ) ) $) ) ) ( !
⁄ ) , - )2 $) $) )7 ! . ) ) ) $) ) ) ( ) . ) $) $) ) ) ) ) $⁄ ) ) $) ) ) - )2 $)!7 . ) . ) ) ) ) ) ( ) . $) ) ) ) ) ) )⁄ ( ) . ) $) $) ) ) ) ) $) ) ) ( ) . ) $) $) )7 ! . ) ) )⁄ ) ) $) ) ) - )2 $)!.7 ) ) ) . ) . ) ) ( ) . $) ) ) ) ) ) ), )#)&)#)⁄ ) ! - ) $) ) $) '⁄ ) - $)2 ) #)&) $) $) $) ) ) . ) $) () #) ) ) &ノート素性(二値符号ベクトル)1

1. ノートの種類(音符,休符)
2. ノートの長さ
3. ノートの高さの差分

タ チド マ ルFl8(+) とその前後10個のノート
時刻𝑡のノート𝑛𝑜𝑡𝑒5

図 12

LSTM-RNN 言語モデルを用いたメロディに基づく自動歌詞生成モデル

Fl

本研究では，入力したノート系列に対して自然な歌詞を9

め込みベクトルの計算には ReLU 活性化関数を用いた．

出力するようにモデルを設計する．ここで，出力する単語

nt はノート系列を特徴量化した N 次元二値符号ベクト

列の読みは入力した各ノートと対応している．さら，行のルを表し，notei(t) を中心とした前後 10 個のノート系列

Fl

境界 ⟨beginLine⟩ とブロックの境界 ⟨beginBlock⟩ も出力シ13ンボルとして扱う．

notei(t)−10 ,...,notei(t) ,...,notei(t)+10 をエンコードしたベクトルである．i(t) は単語の位置 t からノートの位置 i を返す関数である．このノート特徴量ベクトル nt の詳細は次

5.2 モデル構成

節で述べる．Wword in と Wnotes in はそれぞれ単語埋めFl

本研究では，流暢な文章の自動生成に成功している
Re17

込みベクトルとノート埋め込みベクトルの重み行列であcurrent Neural Network (RNN) 言語モデルを用いる [24]．

る．bnotes in はバイアス項である．中間層には 1024 次元

具体的には，RNN の拡張モデルの中でも長距離時系列デーの LSTM を使う．出力層では語彙数次元の単語埋め込み

タの学習が可能である Long Short-Term Memory (LSTM)ベクトル ytword を softmax 関数を用いて単語確率分布としを用いて，ノート系列に対して単語を生成するモデルを構て出力する：

Fl

21

築する．図 12 に提案する歌詞生成モデルの概観を示す．t番目の単語を出力する LSTM ユニットに単語埋め込みベFlt
クトル xtword とノート埋め込みベクトル
25 xnotes を連結したベクトル xtconcat を入力する：

xtconcat = xtword ⊕ xtnotes

ytword = softmax(Wword out zt )ここで，zt は各時刻 t の LSTM ユニットの出力であり，Wword out は単語出力層の重み行列である．

本研究では，図 1 の歌詞のように，休符を挟んで単語を生

Fl

(2)

29

ここで，⊕ はベクトルの連結を表す．本研究では単語埋成するのを防ぐために，モーラ数を推定する出力層 ytmoraを追加する：

ytmora = softmax(Wmora out zt )め込みベクトルとノート埋め込みベクトルの次元数を 512とする．単語・ノート埋め込みベクトルを以下の式で計算
Fl
する：

(5)

33

(6)

ここで，Wmora out はモーラ数出力層の重み行列である．

なお，本研究では 0 から 10 のモーラ数を出力対象とし*6 ，xtword = Wword in vt(3)

xtnotes = ReLU(Wnotes in nt +Flbnotes in )

(4)

37

ここで，vt は t − 1 番目に生成された単語の語彙数次元

モーラ数が 11 以上の単語は学習対象外とする．このモーラ数出力層により，時刻 t において d 個先のノートが長い

休符のときに，モーラ数が d 以下の単語が生成されやすくなることが期待される．

1-Hot ベクトルである．なお，t = 1 では曲のはじまり
Flを意味するシンボル ⟨beginSong⟩ を入力する．ノート埋

41
1680, 1920, 3840, 5760, 7680 より長いノートのいずれかの値を持つ．480 の値が 4 分音符と同じ長さとなる．

出力層 ytword と ytmora の損失関数は categorical cross-entropy であり，最適化手法には Adam を用い，バッチサ*6

促 音（ ッ ），長 音（ ー ），行・ブ ロ ッ ク の 境 界 ⟨beginLine⟩，⟨beginBlock⟩ のモーラ数を 0 と定義する

Fl

c 2017 Information Processing Society of Japan
⃝

45

7

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report
Flute

あなたは私のことを見ていたの夢を見ていたんじゃないのに
私のために君がいるなら今はまだ忘れていたいな
僕は笑っているんだよ
かけがえのないものだから俺がいてくれたのは何か⁄ @@ , )#)&)#)&) $) $) ) - $)2 ) #) &) $) $) $) ) ) ) $) (⁄ ) #) ) ) &) $) #) ) - #)2 ) &) $) $) ) $) ) ) $) ) ) (⁄ )#)&)#)&))#)&) $) $) - $)2 ) #) &) ) $) $) ) ) ) $) ( , - $) #)⁄ ) #) ) )2! . - )&) $) ) ) ) ) ) $) ) ) $) ) $) ) ) ( )2 - ,⁄ $) $) ) ) $) ) ( )!2 . , ) ) $) ) $) #) ) ) ) ) ) ,⁄ $) $) ) ) $) ) ( - $)2 $) ) ) $) ) ) ) ) $) ) ) ( !
⁄ ) , - )2 $) $) )7 ! . ) ) ) $) ) ) ( ) . ) $) $) ) ) ) ) $) ) )⁄ ) ) $) ) ) - )2 $)!7 . ) . ) ) ) ) ) ( ) . $) ) ) ) ) ) ) ) ) . )⁄ ( ) . ) $) $) ) ) ) ) $) ) ) ( ) . ) $) $) )7 ! . ) ) ) $) ) )⁄ ) ) $) ) ) - )2 $)!.
7 ) ) ) . ) . ) ) ( ) . $) ) ) ) ) ) ) ) ) ), )#)&)#) &) $) $)⁄ ) ! - ) $) ) $) '⁄ ) - $)2 ) #)&) $) $) $) ) ) . ) $) () #) ) ) &) $) #)⁄ ) - #)2 )&) $) $) ) $) ) ) $) ) ) ()#)&)#)&))#)&) $)1

Fl

あなたはわたしのこ とを みてい

た のたんじゃな い の に/ わ た し

な

ら/いま

は ま だ

わす

ら

い

るん

だよ/か

い もの

だ から

/

5

Fl

ゆ めを

みてい

9

Fl

のためにき みが いる

れ て

13

変わらない雨の中で目を閉じてたあの頃は
何も変わらずに笑っていたね

Fl

い たい

な/ぼ

く はわ

て

17

Fl
あなたの手を離してみたい
げ が え
21
離さないで
この世界があるのなら信じてあげるから
Fl

が

いて

の な

く れ

た

の は

な に か /か

/ お れ

わ

ら な

25

Fl

い あめ

の

なか

で /め

をと じ

て

たあ

の

こ…

29

図 13

5 万曲の歌詞データで学習した親モデルを用いて生成した歌詞の例．休符をまたいで生成Flされた単語と，2 つの音符間に生成された行・ブロックの境界(/) を赤く示した．（この例
33

示では，入力するノート系列として RWC 研究用音楽データベース RWC-MDB-P-2001

No.7 のメロディを用いた．実際の評価では，作成したメロディ–歌詞対応データをノーFl

ト系列として入力している．
）
37

Fl
イズは 32，学習率を 0.001 にする．また，5 エポックで損ば大量に用意することが可能である．そこで我々は先に歌失関数の値が向上しない場合，学習の早期打ち切り (early

詞の言語モデルを学習した後にメロディ–歌詞対応データ

stopping) を行う．

を再学習することでモデルの汎化能力を向上させる．この

41

Fl

45

5.3 メロディ素性Fl

49
提案モデルに入力するノート系列を以下の 3 つの方法で一連の学習方法を本研究では転移学習と呼ぶ．

まず大量の歌詞のテキストデータを使ってパラメータを事前学習する．このとき，ノートの特徴量 nt は値が全て 0

エンコードし，ノート特徴量ベクトル nt を作る．

のベクトルを用いる．この事前学習により得られたモデル

ノートの種類を親モデルと呼ぶ．

4.1 節の分析結果より，休符の直後では行やブロックの境界が出現しやすいことがわかっている．そ次に，親モデルのパラメータを引き継いだ状態で，メロ

こで，ノートの種類（音符と休符）を表す二値符号ベクト

ディ–歌詞対応データを用いて提案モデルを再学習する．

ルを用意する．

この再学習で得られたモデルを子モデルと呼ぶ．

ノートの長さ

4.1 節の分析結果より，長いノートの直後

本研究では，親モデルの学習のために，54181 曲の日本では行やブロックの境界が出現しやすいことがわかってい語ポピュラー楽曲の歌詞データを用いる．子モデルの学習るため，ノートの長さを表す二値符号ベクトルを用意する．

には，3 節で作成したメロディ–歌詞対応データの 1000 曲

ノートの高さの差分 ノートの種類，長さに加え，ノートのうち 900 曲を使用し，残りの 100 曲を評価データとすの高さも素性ベクトルとして加える．具体的には 1 つ前のる．なお，学習対象となる単語は 54181 曲の歌詞データ中

ノートとの高さの差分を素性として加える．例えば，ノーのモーラ数が 1 から 10 の範囲かつ，文書頻度 (Document

ト系列が「65（ファ）・68（ソ♯）」のとき，高さの差分はFrequency) が上位 2 万の日本語とし，この条件を満たさな+3 となり，+3 に対応する場所が発火する二値符号ベクト

い単語は ⟨ 未知語 ⟩ という単語として学習する．

ルを入力する．

5.4 転移学習

6. 生成された歌詞の例
本研究では，提案モデルが聴きやすい歌詞を生成できた

一般的に深層モデルの学習には大量のデータが必要となかを定性的に分析するために，メロディを考慮していない

る．しかし，本研究で提案した LSTM-RNN 言語モデルの親モデルを使って生成した歌詞と，転移学習した子モデル

学習に使用できる楽曲データは 1000 曲しかないため過学を使って生成した歌詞を比較する．入力するノート系列と習する可能性がある．一方，歌詞のテキストデータであれ

して 100 曲の評価用メロディ–歌詞対応データを用いる．自c 2017 Information Processing Society of Japan⃝

8

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report
Flute⁄ @@ , )#)&)#)&) $) $) ) - $)2 ) #) &) $) $) $) ) ) ) $) (⁄ ) #) ) ) &) $) #) ) - #)2 ) &) $) $) ) $) ) ) $) ) ) (⁄ )#)&)#)&))#)&) $) $) - $)2 ) #) &) ) $) $) ) ) ) $) ( , - $) #)⁄ ) #) ) )2! . - )&) $) ) ) ) ) ) $) ) ) $) ) $) ) ) ( )2 - ,⁄ $) $) ) ) $) ) ( )!2 . , ) ) $) ) $) #) ) ) ) ) ) ,⁄ $) $) ) ) $) ) ( - $)2 $) ) ) $) ) ) ) ) $) ) ) ( !
⁄ ) , - )2 $) $) )7 ! . ) ) ) $) ) ) ( ) . ) $) $) ) ) ) ) $) ) )⁄ ) ) $) ) ) - )2 $)!7 . ) . ) ) ) ) ) ( ) . $) ) ) ) ) ) ) ) ) . )⁄ ( ) . ) $) $) ) ) ) ) $) ) ) ( ) . ) $) $) )7 ! . ) ) ) $) ) )⁄ ) ) $) ) ) - )2 $)!.
7 ) ) ) . ) . ) ) ( ) . $) ) ) ) ) ) ) ) ) ), )#)&)#) &) $) $)⁄ ) ! - ) $) ) $) '⁄ ) - $)2 ) #)&) $) $) $) ) ) . ) $) () #) ) ) &) $) #)⁄ ) - #)2 )&) $) $) ) $) ) ) $) ) ) ()#)&)#)&))#)&) $)1

夢の下でも君は変わらないな
二人だけで僕を見ていたんだよFl

ゆめのしたでも

き

みはか

わ

らな

い な

ぼ

く をみ

て い た ん だ よ

こ

と ばを

の

せて

い い

い ん

だよ

と みて

の あか

し をか

/

5

消えてしまうまでの言葉をのせていい
君のことなんて出来ないんだよと見て私の手の証を隠してしまうよ

Fl

ふ たり

だけで

/

9

だからどうしようかな
そうなの
いつまで誰も見つけられないの二人だけになってしまうのよねFl

きえてしま うまで の

き み

/

13

Fl

の こと

なん て

でき

な

/

17

さあ

Fl

わ た し のてく し21

君を見たいの何度も君のことが言っても二人の中でいてしまえばいいのにな

Fl

て

しま

う よ

だ

/

か ら

ど う し よ

う

か

な

25

Fl

/

そ うな

の /

いつ

ま

で

だれも

み

つけ ら

れ…

29

図 14

転移学習した子モデルを用いて生成した歌詞の例．同じ位置に存在する休符と行・ブFl
ロックの境界 (/) を楽譜中に赤く示した．
33

表 2 転移パラメータの固定箇所が異なる子モデルと，その生成性能
Fl

入力単語ベクトル

LSTM ユニット37
出力モーラ数・単語ベクトル

PPL⟨beginLine⟩ F-measure

設定 1

固定

再学習

固定

128.1

0.178

0.119

設定 2

固定

再学習

再学習
Fl

123.7

0.270

0.166

設定 3

再学習

再学習

再学習 41

146.8

0.246

0.131

Fl

動生成アルゴリズムには，窓幅 10 のビーム探索を用いる．
45
図 13 は，親モデルを使って生成した歌詞とメロディのFl

表 3⟨beginBlock⟩ F-measure

モーラ数出力層 ymora の有無による提案モデル生成性能差モデル⟨beginLine⟩⟨beginBlock⟩

PPL

F-measureF-measure一部である．図の左には，行・ブロック境界を含んだ歌詞
49

M odel

123.7

0.270

0.166

を示し，右には，楽譜と歌詞の読み，行・ブロック境界を

M odel¬ymora

128.2

0.230

0.120

示す．なお，楽譜中のスラッシュ記号 (/) は行・ブロックの境界を表す．この図より，親モデルは流暢な文を生成していることがわかる．しかし楽譜中の歌詞を見ると，不自然な箇所に単語や行・ブロックの境界が生成されていることがわかる．例えば，単語「心」が休符を挟んで生成され考慮した歌詞を生成できるか定量的に評価する．

ていたり，旋律の途中で行が区切られている．このように，テキストデータだけで学習した LSTM-RNN 言語モデ
ルは，流暢だが聴きにくい歌詞を生成してしまう．
図 14 に，転移学習した子モデルが生成した歌詞を示す．

7.1 評価指標
本研究では，以下の 2 つの評価指標を用いる．

Perplexity

言語モデルの一般的な評価指標である Per-

図 13 の生成結果に比べて流暢ではない歌詞が生成されてplexity (PPL) を用いる．PPL は言語の複雑性を意味している．一方，楽譜と一緒に生成された歌詞を見ると，赤くおり，PPL が小さいモデルほど流暢な文を生成できること示した休符の位置で行やブロックの境界が生成されていを意味する．本研究では，評価データの歌詞の PPL を計る．このように，転移学習した子モデルは流暢とはいえな算することで，歌詞の生成能力を評価する．

いが，行・ブロック構造を考慮した歌詞を生成している．

行・ブロック境界の生成精度 提案モデルが入力ノート系列

これは，少ないデータで言語モデルを再学習したことで，に対して，自然な位置に行・ブロック境界を生成できるか評

過学習が起こったことが原因として挙げられる．

価する．具体的には，評価用のノート系列を入力して生成し7. 定量評価
本節では，提案モデルが流暢かつ行やブロックの境界をた行境界 ⟨beginLine⟩gen とブロック境界 ⟨beginBlock⟩genの位置が，オリジナルの歌詞の行境界 ⟨beginLine⟩ref とブ
ロック境界 ⟨beginBlock⟩ref の位置とどれだけ一致しているか，Recall, Precision, F-measure を用いて評価する．

c 2017 Information Processing Society of Japan⃝

9

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report
表 4

転移学習の有効性⟨beginLine/Block⟩
モデル
親モデル

PPL

を除いた PPL⟨beginLine⟩⟨beginBlock⟩

RecallPrecision

F-measure

RecallPrecision

F-measure

130.2

207.4

0.057

0.058

0.058

0.181

0.023

0.041

データのみを学習した子モデル

147.5

254.7

0.299

0.295

0.297

0.234

0.161

0.191

転移学習をした子モデル

123.7

215.5

0.277

0.263

0.270

0.188

0.149

0.166

1000 曲のメロディ–歌詞対応

7.2 転移するパラメータによる性能差

モデル，(3) 転移学習した子モデルの 3 つのモデルの生成本研究で行った転移学習では，親モデルのパラメータを性能を比較する．表 4 にそれぞれのモデルの生成性能を示

初期値として受け継ぎ，子モデルのパラメータを再学習す

す．親モデルと転移学習をしない子モデルに対して，転移る．その際，親モデルから引き継いだパラメータを再学習学習をした子モデルの PPL が 123.7 と最も小さく，出力せずに固定するかどうかによって生成性能に差が生じるこシンボルの予測性能が最も高いことがわかる．しかし，図とが考えられる．本節では，パラメータの再学習の条件を13 と図 14 に示した歌詞の生成結果のように，さまざまな変えたときの性能差を評価することで，最適な転移学習の出力結果を見比べると親モデルの方が流暢な歌詞を生成し条件を模索する．表 2 にパラメータを再学習する場所を変ており，この表の PPL の結果とは矛盾する．これは，子モ

えた子モデルと，その生成性能を示す．この表より，親モデルの出力シンボル ⟨beginLine⟩ と ⟨beginBlock⟩ の予測性

デルの入力単語ベクトルのパラメータを固定し，他のパラ能が，親モデルよりも高いためだと考えられる．そこで，メータを再学習した「設定 2」の子モデルが最も高い生成⟨beginLine⟩ と ⟨beginBlock⟩ を除外した PPL を計算した性能であることがわかった．この理由として，以下の 2 つ

結果，親モデルの PPL の性能が最も高く，次に転移学習が考察できる：

した子モデルの性能が高くなった．この結果は，転移学習• 「設定 1」の子モデルは，親モデルの出力モーラ数・単した子モデルは親モデルより流暢でない歌詞を生成するこ語ベクトルのパラメータを使用している．そのため，とを意味する．ただし，いずれの PPL の計算方法におい設定 1 では入力メロディに対して歌いやすい位置に行ても，転移学習をしない子モデルよりも，転移学習をしたやブロックの境界を配置できなかったと考えられる．

子モデルのほうが性能は高く，転移学習が歌詞の予測性能• 大量のテキストデータを用いて親モデルを事前学習の向上に寄与していることがわかった．

したため，汎化性能の高い単語ベクトル xtword のパラ

一方，生成された歌詞の行・ブロックの境界の精度についメータが得られたと考えられる．さらにこのとき，「設ては，転移学習をした子モデルよりも，転移学習をしない子

定 3」の子モデルは少ないデータで入力単語ベクトル

モデルのほうが高性能となった．しかし，親モデルと比べを再学習したため，過学習が起こり性能が下がったとて，転移学習をした子モデルの ⟨beginLine⟩ の F-measure

考えられる．

は約 26%改善し，⟨beginBlock⟩ の F-measure は約 16%改

これ以降，本研究では設定 2 のモデルを最適な転移学習モデルとして扱い，議論を進める．

善しており，行やブロックの境界を考慮した歌詞が生成されていることがわかる．
以上の PPL と行・ブロック境界の精度の結果から，提7.3 モーラ数の出力層による効果
休符をまたいで単語を生成することを防ぐために，提案した LSTM ではモーラ数を予測する出力層 ytmora を追加している．このモーラ数出力層 ytmora の効果を調べるために，ytmora を除いたモデルを用意して生成性能を比較する．
表 3 にモーラ数出力層 ytmora を加えたモデル M odel と除案モデルが「言葉遣い」と「歌いやすさ・聴きやすさ」の両方をバランス良く学習していることが示唆された．

7.5 生成された歌詞とメロディと相関
本節では，4.1 節で得られた「長い休符の後には行やブ
ロックの境界が配置されやすい」という傾向がモデル学習

外したモデル M odel¬ymora の生成性能を示す．この表よに反映されているか確かめる．具体的には，どんなノート

り，提案モデルのほうが生成性能が高い結果となり，モーの直後に行とブロックの境界が生成されたかを計算する．

ラ数を予測する出力層が，メロディに基づく歌詞生成に寄図 15 に，音符または休符の直後にどんな境界が生成され与していることが示唆された．

たか，その割合を示す．この図より，休符の直後に行やブロックの境界が多く生成されていることがわかった．この7.4 転移学習の効果

結果は 4.1 節で得られた図 7 の結果とほぼ同じである．次転移学習の有効性を確かめるために，(1) 5 万曲分の歌に図 16 に，ある長さのノートの直後に生成された境界の割

詞のテキストデータで学習した親モデル，(2) 転移学習せ合を示す．この図より，ノートが長くなるほど行の境界，ずに 1000 曲のメロディ–歌詞対応データのみで学習した子

ブロックの境界と順に生成されやすくなることがわかった．

c 2017 Information Processing Society of Japan⃝10

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report

⾳符もしくは休符の後に境界が⽣成された割合

結果が得られた．
1

単語の境界

本研究では，入力メロディに対して自然な歌詞を自動生

0.9

⾏の境界

成するために，RNN 言語モデルを応用した．具体的には，0.8ブロックの境界RNN に音符や休符の情報を入力し，行やブロックの境界な

0.7

どの楽曲構造も生成できるモデルを構築した．また，1000

0.6
0.5

曲という少ない楽曲データで提案モデルを学習するため

0.4に，本研究では予め約 5 万曲の歌詞のテキストデータを用

0.3

いて RNN を事前学習し，そのパラメータを引き継いて少0.2

量のデータを学習する「転移学習」の枠組みを利用した．

0.1

転移学習した提案モデルを用いて歌詞を自動生成した結0
⾳符

果，長い休符の直後に行やブロックの境界を配置した自然

休符
ノートの種類図 15な歌詞が生成された．この傾向は，パープレキシティや，

音符もしくは休符の直後に行やブロックの境界が生成された

生成された行・ブロックの境界位置の精度などの定量的な割合評価結果からも確認できた．

1.2

単語の境界

1

⾏の境界

分析で得られた「メロディと歌詞の繰り返し」に関する知見も活かしきれていない．そのため，今後は楽曲の繰り返

ブロックの境界し構造を組み込むことで，メロディに対してより自然な歌

0.8

詞の自動生成を目指す．

0.6

謝辞 本研究は，RWC 研究用音楽データベース (ポピュラー音楽) を利用した．本研究は科研費 JP16J05945 の助成を受けた．本研究の一部は JST ACCEL (JPMJAC1602)の支援を受けた．

0.4
0.2

図 16

7680〜

ノートの⻑さ(480は四分⾳符に相当)

3840

1920

1680

1440

1200

960

720

480

360

240

120

0
60

ノートの⻑さ別の⽣成された境界の割合

しかし，提案した自動歌詞生成モデルは単純な RNN 言
語モデルより流暢な歌詞を生成できていない．さらには，ある長さのノートの直後に行やブロックの境界が生成された割合

この傾向も 4.1 節で得られた図 8 の結果と同じである．これらの結果は，実際のメロディと歌詞の関係性を，モデルが正しく学習できていることを意味する．

8. おわりに

参考文献
[1]
[2]
[3]
[4]
[5]

本研究では，メロディに基づく歌詞の自動生成を可能にするために，(1) メロディと歌詞が対応づいた楽曲データの作成，(2) メロディと歌詞の相関の統計的分析，(3) 入力[6]

メロディに合った歌詞の自動生成を行った．
メロディと歌詞が対応づいたデータを作成するために，
本研究では音符と読みが対応づいているメロディデータと，[7]行の境界や A メロ・B メロ・サビなどのブロックの境界情報が付与されている歌詞のテキストデータを自動アライメ
ントし，1000 曲のメロディ–歌詞対応データを作成した．

[8]

また，作成したデータを用いてメロディと歌詞の相関を統計的に分析した結果，「長い休符の直後に行やブロックの境界が配置されやすい」，「メロディの音高が上がると歌詞の抑揚も上がりやすい」，「メロディが繰り返されている[9]

Austin, D., Peterik, J. and Austin, C. L.: Songwritingfor Dummies, Wileys (2010).
上田起士：よくわかる作詞の教科書，YAMAHA music
media corporation (2010).
北村英明：これから始める人のための作詞入門，メトロ
ポリタンプレス (2012).
井筒日美：ゼロからの作詞入門，YAMAHA music media
corporation (2015).
Goto, M., Hashiguchi, H., Nishimura, T. and Oka, R.:
RWC Music Database: Popular, Classical and Jazz Music Databases., Proceedings of the 3rd of International
Society for Music Information Retrieval (ISMIR 2002),
Vol. 2, pp. 287–288 (2002).
Oliveira, H. R. G., Cardoso, F. A. and Pereira, F. C.:
Tra-la-lyrics: an approach to generate text based onrhythm, Proceedings of 4th International Joint Workshop on Computational Creativity, pp. 47–55 (2007).
A, A. R. and Devi, S. L.: An alternate approach towards meaningful lyric generation in Tamil, Proceedingsof the NAACL HLT 2010 Second Workshop on Computational Approaches to Linguistic Creativity, pp. 31–39(2010).
Abe, C. and Ito, A.: A Japanese lyrics writing support
system for amateur songwriters, Proceedings of AsiaPacific Signal & Information Processing Association
Annual Summit and Conference 2012 (APSIPA ASC
2012) (2012).
Barbieri, G., Pachet, F., Roy, P. and Esposti, M. D.:
Markov constraints for generating lyrics with style, Pro-

位置では，似たフレーズの歌詞が作詞されやすい」などの

c 2017 Information Processing Society of Japan⃝11

Vol.2017-NL-231 No.16
Vol.2017-SLP-116 No.16
2017/5/16

情報処理学会研究報告
IPSJ SIG Technical Report

[10]

[11]

[12]

[13]

[14]

[15]

[16]

[17]

[18]

[19]

[20]

[21]

[22]

[23]

ceedings of the 20th European Conference on Artificial
Intelligence (ECAI 2012), pp. 115–120 (2012).
Watanabe, K., Matsubayashi, Y., Inui, K., Nakano, T.,
Fukayama, S. and Goto, M.: LyriSys: An Interactive
Support System for Writing Lyrics Based on Topic Transition, Proceedings of the 22Nd International Conference on Intelligent User Interfaces (IUI 2017), pp. 559–
563 (2017).
Potash, P., Romanov, A. and Rumshisky, A.: GhostWriter: Using an LSTM for Automatic Rap Lyric Generation., Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing (EMNLP
2015), pp. 1919–1924 (2015).
Ghazvininejad, M., Shi, X., Choi, Y. and Knight, K.:
Generating Topical Poetry, Proceedings of the 2016
Conference on Empirical Methods in Natural Language
Processing (EMNLP 2016), pp. 1183–1191 (2016).
Reddy, S. and Knight, K.: Unsupervised discovery of
rhyme schemes, Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics(ACL 2011), pp. 77–82 (2011).
Greene, E., Bodrumlu, T. and Knight, K.: Automatic
analysis of rhythmic poetry with applications to generation and translation, Proceedings of the 2010 Conferenceon Empirical Methods in Natural Language Processing(EMNLP 2010), pp. 524–533 (2010).
Mayer, R., Neumayer, R. and Rauber, A.: Rhyme
and style features for musical genre classification bysong lyrics, Proceedings of the 9th International Society for Music Information Retrieval Conference (ISMIR 2008), pp. 337–342 (2008).
Watanabe, K., Matsubayashi, Y., Orita, N., Okazaki,N., Inui, K., Fukayama, S., Nakano, T., Smith, J. andGoto, M.: Modeling Discourse Segments in Lyrics Using Repeated Patterns, Proceedings of the 26th International Conference on Computational Linguistics (COLING 2016), pp. 1959–1969 (2016).
Watanabe, K., Matsubayashi, Y., Inui, K. and Goto,
M.: Modeling Structural Topic Transitions for Automatic Lyrics Generation, Proceedings of The 28th Pacific Asia Conference on Language, Information andComputation (PACLIC 2014), pp. 422–431 (2014).
渡邉研斗，松林優一郎，乾健太郎，深山 覚，中野倫靖，
後藤真孝：ストーリー展開と一貫性を同時に考慮した歌詞生成モデル，人工知能学会第 30 回全国大会発表論文集(2016).
Nichols, E., Morris, D., Basu, S. and Raphael, C.: Relationships Between Lyrics and Melody in Popular Music., Proceedings of the International Society for Music
Information Retrieval Conference (ISMIR 2009), pp.
471–476 (2009).
堤 彩香，平賀 譲：日本語の音韻と旋律の関係について〜童謡・唱歌を中心に〜，音楽情報科学研究会，Vol. 2014,
No. 5, pp. 1–6 (2014).
Milne, D. and Witten, I. H.: An eﬀective, low-cost measure of semantic relatedness obtained from Wikipedia
links, Proceeding of the AAAI 2008 Workshop on
Wikipedia and Artificial Intelligence, pp. 25–30 (2008).
Needleman, S. B. and Wunsch, C. D.: A general method
applicable to the search for similarities in the amino acidsequence of two proteins, Journal of Molecular Biology,
Vol. 48, No. 3, pp. 443–453 (1970).
Suzuki, M., Matsuda, K., Sekine, S., Okazaki, N. andInui, K.: Neural Joint Learning for Classifying Wikipedia
Articles into Fine-grained Named Entity Types, Pro-c 2017 Information Processing Society of Japan⃝[24]

ceedings of the 30th Pacific Asia Conference on Language, Information and Computation (PACLIC 2016),
pp. 535–544 (2016).
Mikolov, T., Karafiát, M., Burget, L., Cernockỳ, J.
and Khudanpur, S.: Recurrent neural network based
language model., Proceedings of Interspeech 2010, pp.
1045–1048 (2010).

12