見出し画像

機械学習で音楽を作曲する(AWS DeepComposer)

自分で作曲してみたいと思ったことはありませんか?

でも、実際に作曲しようとするとコードや音楽理論、楽器の知識など…いろんなことを考慮しないといけないので、諦めてしまったかもしれません。

何もないところから作曲するのは、とても自由度が高い作業です。ですが、自由度は高ければ高いほど難しい作業になってしまいます。

ところが最近は、AIの発達によって、機械学習で作曲ができるようになってしまいました。もちろん全てが自分の思い通りに作れるわけではありませんが、簡単に作曲を始められる方法の1つになってくるのではないでしょうか。

このAWS DeepComposerでは、メロディだけを作成することで曲を完成させることができるサービスです。早速使ってみましょう!

※AWSの無料利用枠の範囲でやっていきますが、試す場合は料金などをしっかりと確認してから実施してください!(重要)

AWS DeepComposerの初期設定

AWSアカウントを作成して、AWS DeepComposerのページにアクセスします。


スクリーンショット 2021-04-14 17.28.34

[作曲を始める]をクリックしてログインします。

AWS DeepComposerが提供されているリージョンが米国東部だけなので、他のリージョンに設定されていると、こんなページが表示されます。リージョンをクリックして切り替えていきましょう。

スクリーンショット 2021-04-14 17.30.21

これでAWS DeepComposerのメインページにアクセスできました。

スクリーンショット 2021-04-14 17.31.54

 Start learning generative AIをクリックすると、DeepComposerで使うAIの基礎が学べます。全部英語ですが、読める方は一読しておくとわかりやすくなります。

スクリーンショット 2021-04-14 17.32.46

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]をクリックして、やってみましょう。

スクリーンショット 2021-04-14 17.49.31

オレンジ色の[Start composing]をクリックして開始できます。

スクリーンショット 2021-04-14 17.50.13

Safariで開いていたらこんな警告が…。
おとなしくChromeで開きなおします。

スクリーンショット 2021-04-14 17.50.54

するとメロディーを入力画面に入ります。

スクリーンショット 2021-04-14 18.29.35

ただし、8小節限定です。短い。
でも長いメロディー作るのも難しいので、ちょうどいい長さかもしれないですね。

右上の[Record]を押すと、キーボードでレコーディングができますが、タイミングを合わせるのが難しい。゚(゚´Д`゚)゚。

雑に入力して[Edit melody]で調整したのがこちら。[Apply changes]で元の画面に戻ります。

スクリーンショット 2021-04-14 18.28.44

なお、メロディーについてのクレームは受け付けません。(作曲時間5分)

これでメロディーが完成したので、画面左にある[Continue]を押して次に進みます。

機械学習方式の選択

スクリーンショット 2021-04-14 18.35.01

どうやら3つの方式から選べるようです。

AR-CNN:音を足したり引いたりする(バッハのコラールで訓練済)
GANs:伴奏を追加する(Rock、Pop、Jazz、Jonathan-Coulton、Symphonyからジャンルを選べる)
Transformers:入力したメロディーに色々追加して20秒まで伸ばしてくれる

面白そうなので、AR-CNNで”好き放題やってください!”という感じの設定にします。左側の[Continue]をクリックして次に進みます。

すると、早速、曲をアウトプットしてくれたみたいです。

スクリーンショット 2021-04-14 18.40.50

Muse Scoreで開くとこんな感じになってます。

スクリーンショット 2021-04-14 19.27.22

おおう、だいぶ変わったねぇ…(笑)
たしかに聴いてみるとちょっとバッハ臭がします。

これに対して、GANも実施するとなんかそれっぽい伴奏をつけてくれます。

原曲のメロディーどこいったん?(・ω・`)

自分のモデルを訓練する

メロディーを入力して、機械学習手法を選択したら、曲を作ってくれましたが、自分で機械学習のモデルを作ることもできます。無料利用枠でできるっぽいので、一応試してみましょう。[Train a model]を選択します。

スクリーンショット 2021-04-14 19.04.28

いろいろ設定がありますが、どれがよくてどれが悪いのかやってみないとわからないので、とりあえず初期設定のままで作ってみます。

スクリーンショット 2021-04-14 19.05.15


スクリーンショット 2021-04-14 19.07.35

ちゃんと無料になっているみたいなので安心して使ってみます。
[Start training]で訓練開始!

スクリーンショット 2021-04-14 19.08.21

なんか最大8時間かかるみたいです_(:3 」∠)_
ぜんぜん終わらないので今日はここまで!


ここまで読んでいただけたなら、”スキ”ボタンを押していただけると励みになります!(*´ー`*)ワクワク

この記事が気に入ったらサポートをしてみませんか?