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.5k
【muana_vol6】歌詞をコード進行に変換する機械学習モデル
sera1250
October 28, 2021
Tweet
Share
Other Decks in Research
See All in Research
Trust No Bot? Forging Confidence in AI for Software Engineering
tomzimmermann
1
240
rtrec@dbem6
myui
6
880
Minimax and Bayes Optimal Best-arm Identification: Adaptive Experimental Design for Treatment Choice
masakat0
0
110
Cross-Media Information Spaces and Architectures
signer
PRO
0
230
最適化と機械学習による問題解決
mickey_kubo
0
140
CSP: Self-Supervised Contrastive Spatial Pre-Training for Geospatial-Visual Representations
satai
3
220
Google Agent Development Kit (ADK) 入門 🚀
mickey_kubo
2
1.1k
大規模な2値整数計画問題に対する 効率的な重み付き局所探索法
mickey_kubo
1
270
電力システム最適化入門
mickey_kubo
1
690
Streamlit 総合解説 ~ PythonistaのためのWebアプリ開発 ~
mickey_kubo
1
950
なめらかなシステムと運用維持の終わらぬ未来 / dicomo2025_coherently_fittable_system
monochromegane
0
630
ASSADS:ASMR動画に合わせて撫でられる感覚を提示するシステムの開発と評価 / ec75-shimizu
yumulab
1
390
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Building Applications with DynamoDB
mza
95
6.5k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Being A Developer After 40
akosma
90
590k
Rebuilding a faster, lazier Slack
samanthasiow
82
9.1k
Balancing Empowerment & Direction
lara
1
430
Raft: Consensus for Rubyists
vanstee
140
7k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
BBQ
matthewcrist
89
9.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
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