2.8K Views
February 06, 25
スライド概要
2024年度卒論研究発表 刀祢賢志
GPT-4におけるメロディ生成能力の検討
日本大学 文理学部 情報科学科 北原研究室。 「Technology Makes Music More Fun」を合言葉に、音楽をはじめとするエンターテインメントの高度化に資する技術の研究開発を行っています。
GPT-4におけるメロディ 生成能力の検討 北原研 刀祢 賢志
1. 研究背景・目的
研究背景 作曲は、マイナーな趣味 WHY? ・音楽に知識(音楽理論)の学習が必要 金銭的・時間的手間がかかることは趣味としての ハードルが高い
研究の目的 作曲をより手軽なものに ・金銭的に手間なく、学習の必要性を下げたい 生成系AIに、音楽理論の内容を担ってもらう 本研究では、GPT-4のメロディ生成能力を確かめる
2. 実験内容
実験項目 [実験1]コード構成音によるメロディ生成 [実験2]スケール構成音によるメロディ生成 [実験3]コードに対するスケールを判定 [実験4]順次進行を用いたメロディ生成 [実験5]跳躍進行を用いたメロディ生成 [実験6]音価を指定したメロディ生成 [実験7]休符を用いたメロディ生成 [実験8]3連符を用いたメロディ生成 今回の発表
メロディの作り方 コード進行 スケール メロディ (C→G→F→Am) (C Major Scale)
コード, スケールとは? ・コード ・いくつかの音が重なったもの (Cコード:ド,ミ,ソ) ・スケール ・規則的に並べた音の並び ( (C Major Scale)
メロディの作り方 コード、スケールに違和感なく作る コード、スケールの音だけで作る ・音楽理論に従う =コード,スケールの構成音でメロディ作成
実験のフロー プロンプト • 音楽理論を含んだプロンプトを用意 GPT-4 • プロンプトの内容を受け取り、メロ ディを考える×100 midiファイ ル
実験項目 [実験1]コード構成音でのメロディ生成 [実験2]スケール構成音でのメロディ生成 [実験3]コード条件付きスケール構成音でのメロディ生成
実験概要 ・実験1 コード→メロディ ・実験2 スケール→メロディ ・実験3 コード→スケール→メロディ
共通のプロンプト [実験1] ~ [実験8]において、共通のプロンプトを紹介する Point ・メロディは5小節 ・ABCMusicNotation形式の例 ・4/4拍子 ・単旋律でのメロディ生成 ・音価は四分音符と八分音符 ([実験6]は対象外)
[実験1・2]コード構成音でのメロディ生成 [実験1・2]では、3つの方針 {方針1}:コード・スケールの構成音を明示する {方針2}:最も低い音を示し, 隣り合う音同士の音程を「+3」などと表記 {方針3}:最も低い音を示し, 各音と最も低い音の音程を「+3」などと表記 {方針2・3}では半音・全音の概念をインプット
[実験2]使用するコード・スケール ・スケール ・コード進行 Em7 - A7 - Dm7 -G7 - Cmaj7 ・S1:ハ長調 ・S2:ハ短調 ・S3: C Harmonic Minor ・S4: C Natural Minor ・S5: C Melodic Minor ・S6: C Whole Tone ・S7: C Combination of Diminished ・S8: C Major pentatonic ・S9: C Minor Pentatonic
[実験3]コード条件付きスケール構成音でのメロディ生成 プロンプト内でコードを指定 → コードからスケールを決める → スケール構成音でメロディを生成 スケールとコードの対応 番号 コード進行 スケール P1 C, Dm, Em, F, G Cmaj P2 Am, Bm, C, Dm, Em A Natural Minor P3 Am, Bm, C, Dm, E A Harmonic Minor P4 Am, Bm, C, D, E A Melodic Minor 各スケールの構成音はプロンプト内に明記
3.実験結果
評価方法 メロディ全体で、指示に従っている割合を算出 例)[実験1]:コードの構成音の何割 [実験3]:指定されたスケール構成音の割合 10%ずつのファイル数で評価
エラーについて ABC Music Notation形式の表示のミスからmidiファイルが 生成されない エラー①:C#の表示 ^C → C^ エラー②:I’m sorry. I can’t support with you.
[実験1]結果 Point ・方針1が最も正答率が高い ・方針2,3では大きな違いなし
[実験2]{方針1}結果 Point ・S3,S5,S9(Harmonic Minor, Melodic Minor, Pentatonic Minor) の正答率が低い ・S9(C Pentatonic Minor)では6割以上が エラー
[実験2]{方針2,3}結果 Point ・{方針1}と比べて全体的な正答率が低い ・S1,S4,S8(ハ長調, Natural Minor, Wholetone) の正答率が高い
[実験3]結果 Point ・半数以上がエラーとなる ・P1が最も正答率が高い
4.考察
考察 考察内容は5つ 考察1:音高を明示した場合、高確率で指示に従う 考察2:C Major Scaleの構成音がベースで生成される 考察3:スケールはC Major Scale とC Natural Minor Scaleの2種類 考察4:半音の概念の使用方法で大きな差は見られない 考察5:コードからスケールを決定することができない
考察2 [実験1] C Natural Minor Scaleを指定
考察3 C Harmonic Minor Scale →C Natural Minor Scale C Major Pentatonic Scale
考察5 エラーが50%以上 実験3だけはエラー2が見られた(I’m sorry. I can’t support with you.) 他の実験:正答率は低い、エラーはエラー1のみ 実験3はメロディ生成ができない(能力を超えている)
5.まとめ
まとめ 音高を明示した場合、精度〇 2つの音の音程を指示した場合△ コードからスケールを指定した場合×
今後の課題 全実験でエラーが出る 5小節以上、4/4拍子以外でのメロディ生成
END.