機械学習で音楽を作曲する(AWS DeepComposer)
自分で作曲してみたいと思ったことはありませんか?
でも、実際に作曲しようとするとコードや音楽理論、楽器の知識など…いろんなことを考慮しないといけないので、諦めてしまったかもしれません。
何もないところから作曲するのは、とても自由度が高い作業です。ですが、自由度は高ければ高いほど難しい作業になってしまいます。
ところが最近は、AIの発達によって、機械学習で作曲ができるようになってしまいました。もちろん全てが自分の思い通りに作れるわけではありませんが、簡単に作曲を始められる方法の1つになってくるのではないでしょうか。
このAWS DeepComposerでは、メロディだけを作成することで曲を完成させることができるサービスです。早速使ってみましょう!
※AWSの無料利用枠の範囲でやっていきますが、試す場合は料金などをしっかりと確認してから実施してください!(重要)
AWS DeepComposerの初期設定
AWSアカウントを作成して、AWS DeepComposerのページにアクセスします。
[作曲を始める]をクリックしてログインします。
AWS DeepComposerが提供されているリージョンが米国東部だけなので、他のリージョンに設定されていると、こんなページが表示されます。リージョンをクリックして切り替えていきましょう。
これでAWS DeepComposerのメインページにアクセスできました。
Start learning generative AIをクリックすると、DeepComposerで使うAIの基礎が学べます。全部英語ですが、読める方は一読しておくとわかりやすくなります。
generative AIとは?
ざっくり説明すると、generative AIは学習した後に、テキストや音楽などを生成(generate)することができるAIのことです。
一例として、GAN(Generative Adversarial Network)という手法があります。
この手法では、2つのニューラルネットワークを利用します。1つは作曲などの出力をするネットワーク(教師なし学習)。もう1つは、機械学習で作られたデータか、本当に作成されたものか判別するネットワーク(教師あり学習)です。この2つを繰り返して精度を向上させることによって、リアルな出力を目指していきます。
音楽でこれをどうやっているかというと、まずは音楽データを機械学習で扱いやすいようにデータ化しています。AWS DeepComposerではこれを以下のようにしています。
Pitch:音の高さ(数字:0~127)
Velocity:音の強弱(数字:1~127)
Tempo:曲の速さ(数字:1以上)
これらの数字データを組み合わせてMIDIファイルを生成するわけですね。
…とまあ理論的なことは置いておいて。
AWS DeepComposerで実際に作曲を行ってみましょう。
Music Studioを利用する
Music Studioではメロディーの入力から、モデルの選択、最終的な曲の再生までの一連のプロセスを全て実施できます。
[Launch Music studio]をクリックして、やってみましょう。
オレンジ色の[Start composing]をクリックして開始できます。
Safariで開いていたらこんな警告が…。
おとなしくChromeで開きなおします。
するとメロディーを入力画面に入ります。
ただし、8小節限定です。短い。
でも長いメロディー作るのも難しいので、ちょうどいい長さかもしれないですね。
右上の[Record]を押すと、キーボードでレコーディングができますが、タイミングを合わせるのが難しい。゚(゚´Д`゚)゚。
雑に入力して[Edit melody]で調整したのがこちら。[Apply changes]で元の画面に戻ります。
なお、メロディーについてのクレームは受け付けません。(作曲時間5分)
これでメロディーが完成したので、画面左にある[Continue]を押して次に進みます。
機械学習方式の選択
どうやら3つの方式から選べるようです。
AR-CNN:音を足したり引いたりする(バッハのコラールで訓練済)
GANs:伴奏を追加する(Rock、Pop、Jazz、Jonathan-Coulton、Symphonyからジャンルを選べる)
Transformers:入力したメロディーに色々追加して20秒まで伸ばしてくれる
面白そうなので、AR-CNNで”好き放題やってください!”という感じの設定にします。左側の[Continue]をクリックして次に進みます。
すると、早速、曲をアウトプットしてくれたみたいです。
Muse Scoreで開くとこんな感じになってます。
おおう、だいぶ変わったねぇ…(笑)
たしかに聴いてみるとちょっとバッハ臭がします。
これに対して、GANも実施するとなんかそれっぽい伴奏をつけてくれます。
原曲のメロディーどこいったん?(・ω・`)
自分のモデルを訓練する
メロディーを入力して、機械学習手法を選択したら、曲を作ってくれましたが、自分で機械学習のモデルを作ることもできます。無料利用枠でできるっぽいので、一応試してみましょう。[Train a model]を選択します。
いろいろ設定がありますが、どれがよくてどれが悪いのかやってみないとわからないので、とりあえず初期設定のままで作ってみます。
ちゃんと無料になっているみたいなので安心して使ってみます。
[Start training]で訓練開始!
なんか最大8時間かかるみたいです_(:3 」∠)_
ぜんぜん終わらないので今日はここまで!
ここまで読んでいただけたなら、”スキ”ボタンを押していただけると励みになります!(*´ー`*)ワクワク
この記事が気に入ったらサポートをしてみませんか?