Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
【muana_vol6】歌詞をコード進行に変換する機械学習モデル
Search
sera1250
October 28, 2021
Research
0
1.4k
【muana_vol6】歌詞をコード進行に変換する機械学習モデル
sera1250
October 28, 2021
Tweet
Share
Other Decks in Research
See All in Research
言語間転移学習で大規模言語モデルを賢くする
ikuyamada
6
1.8k
20240127_熊本から今いちど真面目に都市交通~めざせ「車1割削減、渋滞半減、公共交通2倍」~ 全国路面電車サミット2024宇都宮
trafficbrain
1
650
サウナでのプロジェクションマッピングの可能性の検討 / EC71koizumi
yumulab
0
150
Discovering Universal Geometry in Embeddings with ICA
momoseoyama
1
340
DeepCrysTet: A Deep Learning Approach Using Tetrahedral Mesh for Predicting Properties of Crystalline Materials
tsurubee
0
360
株式会社リクルートホールディングス 企業分析
frandle256
0
130
説明可能AI:代表的手法と最近の動向
yuyay
1
570
Ground Metric Learning with applications in genomics
gpeyre
0
350
[2023 CCSE] ZOZOTOWN検索における 研究開発の取り組みについて
tomoyayama
0
130
Azure Arc-enabled Serversを利用した ハイブリッド・マルチクラウド環境の管理 / Managing Hybrid Multi-cloud Environments with Azure Arc-enabled Servers
nttcom
0
200
訓練データ作成のためのCloudCompareを利用した点群の手動ラベリング
kentaitakura
0
510
Evolutionary Optimization ofModel Merging Recipes (2024/04/17, NLPコロキウム)
iwiwi
5
1.6k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
27
6.3k
What's in a price? How to price your products and services
michaelherold
237
11k
The Art of Programming - Codeland 2020
erikaheidi
41
12k
A Modern Web Designer's Workflow
chriscoyier
689
190k
Music & Morning Musume
bryan
40
5.6k
Building Effective Engineering Teams - LeadDev
addyosmani
26
1.8k
Thoughts on Productivity
jonyablonski
57
3.8k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
1
3.4k
Designing for humans not robots
tammielis
247
25k
Atom: Resistance is Futile
akmur
258
25k
What the flash - Photography Introduction
edds
64
11k
Transcript
歌詞をコード進行に変換する 機械学習モデル 2021/10/27 @sera1250 Music×Analytics Meetup Vol.6
自己紹介 ◆ @sera1250 ◆ 仕事 ◆ 某企業でデータサイエンティスト NLP、画像 AI楽器開発に携わったり ◆
音楽 ◆ Neko Hackerで編曲/ギター ◆ 趣味で音楽×AI ◆ 好きな音楽… メタル、邦ロック、エレクトロ、ゲームBGM 2
「言葉」を音楽に変換したい 3 ◆ 言葉から音楽を作りたい ◆ 普段何気なく使う「言葉」から音楽を作れたらおもしろそう… 日記、ツイート、週報… ◆ 言葉と音楽の関係 ◆
この世界の多くの音楽には歌詞が存在 ◆ 明るい歌詞⇔明るい音楽 切ない歌詞⇔切ない音楽 (もちろん例外も ◆ ではまず歌詞を入力としてみるのはどうだろう?
◆ コード進行 ◆ 楽曲における音のまとまりの遷移:楽曲・フレーズの印象を大きく左右する ◆ 言葉をなんとなく音楽として表現するのには向いてそう ◆ 歌詞とコード進行の関係 ◆ 明るい歌詞⇔明るい進行、切ない歌詞⇔切ない進行
◆ 一意に決まるものではない→そこが面白そう コード進行を出力するのはどう? 4
データ収集 ◆ 既存の楽曲の歌詞とコード進行の関係を学習できれば、 言葉をコード進行に変換するモデルができるはず ◆ ギター弾き語り楽譜サイトを(恐れ入りながら)スクレイピングし、 約16,000曲、約450,000行の歌詞を取得 収集データ一例 5
モデルの選定 ◆ Attention付きSeq2Seq ◆ 機械翻訳等で使用されるモデル ◆ 歌詞・コード進行ともにSequentialな情報 ◆ 歌詞→コード進行の変換を学習 歌詞
Seq2Seq コード進行 たとえ, 世界, が, 終わる, 日, も G#m, C#, D#m https://jalammar.github.io/visualizing-neural-machine-translation-mechanics-of-seq2seq-models-with-attention/ 英語→フランス語への機械翻訳 6
学習 1,000円 7
変換① ◆ 入力:「あした地球がこなごなになって」 ◆ でんぱ組.inc – あした地球がこなごなになっても ◆ 原曲とは違うコード進行 ◆
最後のF7が少し切ない 8
変換② ◆ 入力: 「いつも一緒にいた君はもう隣にはいない」 ◆ 架空の悲しい歌詞を入力してみる ◆ 思いのほか悲しい印象ではなく、切り取られた進行のような結果に 9
変換③ ◆ 入力: 「ねえ君の世界にわたしが魔法をかけるから」 ◆ Neko Hacker – Sweet Dreams
◆ 聞きなじみのあるコード進行 ◆ 原曲とほぼ同じコード進行に変換 10
変換④ ◆ 入力: 「ゴジラを間違えコブラと呼ぶ奴」 ◆ ZAZYのネタ ◆ なんだかコミカルな進行 11
変換⑤ ◆ 入力: 「Music×Analytics Meetup Vol.6」 ◆ テーマとなるコード進行を生成しようとましたが残念な結果に ◆ 今回sentence
pieceを使用してtokenizeを行ったため、 英語の入力は今後の課題 12
まとめ ◆まとめ ◆ 歌詞→コード進行変換をAttention付Seq2Seqで学習 ◆ 弾き語りサイトのデータを使用 ◆ なんとも言えない結果になった ◆所感 ◆
割と多様なコードに変換することができた ◆ 中にはほぼ原曲に近いコード進行に変換できたケースもあった ◆ 切ない歌詞だと切なくなるというわけでもない ◆ Attentionによる解釈性はあまり期待できない 13
今後の展望 ◆ モデルの改良 ◆ キーの統一 ◆ キーを取得しているものの、転調等が含まれうまく統一できていない(転調もしてほしいし…) ◆ 学習時にキーの情報も入力する? ◆
モデル学習のアイデア ◆ キー、男女、感情等を考慮して学習できれば結果を少しコントロールできそう? ◆ 生成のアイデア ◆ 長さ(4分、2分…)も扱えるようにしたい ◆ 複数行の歌詞を考慮できるようにしたい ◆ 評価方法の検討 ◆ 定量的な評価、定性的な評価…(そもそも正解とは…?) ◆ AIを用いた楽曲制作 ◆ 引き出し拡張に役立つ? 14
ご清聴ありがとうございました!! (懇親会よろしくお願いします) 15