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
(ふじ)某有名作曲家にアレンジしてもらおう
Search
akatsukinewgrad
August 02, 2021
Programming
0
1.4k
(ふじ)某有名作曲家にアレンジしてもらおう
akatsukinewgrad
August 02, 2021
Tweet
Share
More Decks by akatsukinewgrad
See All by akatsukinewgrad
2023/1/25_QAテスター meet up!
akatsukinewgrad
0
140
成果発表資料.pdf
akatsukinewgrad
0
2.1k
広大なフィールドを気持ちよく駆け抜けるための技術.pdf
akatsukinewgrad
0
570
正規表現とReDoS.pdf
akatsukinewgrad
0
560
Unityで大量のオブジェクト_を吹き飛ばしたい.pdf
akatsukinewgrad
0
610
新卒2年目が思う1年目の学び.pdf
akatsukinewgrad
0
530
障害訓練の取り組みについて.pdf
akatsukinewgrad
0
710
7分でわかるアカツキゲームス
akatsukinewgrad
0
570
Bitcoinだけでスマートコントラクト.pdf
akatsukinewgrad
1
920
Other Decks in Programming
See All in Programming
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
770
go test -json そして testing.T.Attr / Kyoto.go #63
utgwkk
3
310
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
410
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
350
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
190
Zendeskのチケットを Amazon Bedrockで 解析した
ryokosuge
3
320
旅行プランAIエージェント開発の裏側
ippo012
2
920
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
280
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
奥深くて厄介な「改行」と仲良くなる20分
oguemon
1
560
時間軸から考えるTerraformを使う理由と留意点
fufuhu
16
4.8k
Ruby Parser progress report 2025
yui_knk
1
460
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
140
7.1k
Building an army of robots
kneath
306
46k
Being A Developer After 40
akosma
90
590k
Visualization
eitanlees
148
16k
Six Lessons from altMBA
skipperchong
28
4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The Art of Programming - Codeland 2020
erikaheidi
56
13k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Transcript
某有名作曲家にアレンジしてもらおう ディープラーニングを利用した曲のコラボレーション
今回の目的 ► ディープラーニングを利用してコン ピュータが作曲できるようにしよう ► 曲調の異なる曲を組み合わせて新しい 音楽を作ろう
今回のお題はバッハ! 作曲のルールに厳格な特徴がディープランニングと相性が 良いと判断 バッハ風を実現するためには、曲の特徴の理解が必要!
バッハの音楽の特徴 対位法と和声法を両方の特徴持つ この2つの作曲方法を知ることが重要!
対位法と和声法 対位法→ いくつかの旋律が独立しつつ、調和してい る音楽を作る技法。和声法より古くから存在 和声法→ 各声部の配置に関する理論。ほかの声部と の調和をはかるのは対位法と変わらないが、 対位法より音同士の縦の関係を重視。
http://showcan.g1.x rea.com/ChoralePa geSax.htm サックスアンサンブ ルのためのバッハ コラール集 <引用> バッハのコラール
使用した技術 KerasのLSTMを使用 メロディーを時系列データとしてみなせると考えたため *LSTMとは 時系列データを扱うことに適しているニューラルネットワーク
ディープランニングで実現するために ► 生成する楽曲は合唱曲(四声) 四声:ソプラノ・アルト・テノール・バス ► バッハのコラール(四声合唱曲)をディープランニングによって学習 ► 他の作曲家のメロディーをソプラノとして学習済みモデルにわたし、残り の三声のパートを推論させ、生成 ►
別の作曲家が作ったメロディー(ソプラノ)に残りの三声でバッハ風の味 付けをすることによって作曲家のコラボレーションを疑似的に実現
ディープランニングで実現するために2 ► 推論する音に対し楽譜上の上下左右の音を利用 (右の楽譜はバスの推論の様子 *左→赤、右→青、上下→緑) ► 左右の音による推論にはLSTMを使用し、上下の 音には全結合層を使用 ► 他パートの3音符を参照するときは1音を推論する
たびに全体の楽譜に反映する ↳これにより曲の和声の破綻を抑える狙い
浮上した問題点 曲のメロディーが転調した際にうまく対応できない ↳イントロ部分の生成では歌詞部分の音の列を使わない、歌詞部分の生成では イントロ部分の音の列を使わないように指定して対処 推論を繰り返すと、推論の前後でほとんど音符が変化しなくなる。 ↳100回に1回、10%程度の音符をランダムに置き換えるようにし、音符の 生成を活発化
生成した楽曲 宇宙戦艦ヤマトのメロディーにバッハ風の三声のパートを付与
まとめ 作曲家の特性を把握し、それにあっ たモデルを作ることで、一定のレベル で曲調の再現は可能