Upgrade to Pro — share decks privately, control downloads, hide ads and more …

音楽仲間がいないのでバンドメンバーを実装した話

Kawazu
December 14, 2021

 音楽仲間がいないのでバンドメンバーを実装した話

Kawazu

December 14, 2021
Tweet

More Decks by Kawazu

Other Decks in Programming

Transcript

  1. 音楽仲間がいないので
    バンドメンバーを
    実装した話
    河津正和

    View Slide

  2. 河津正和
    広告業界の某デジタル制作会社所属
    主にバックエンド領域のテクニカルディレクター
    コンテナ技術とか機械学習とか電子工作にも興味あり
    Twitter:@kawazu255_
    Qiita:kawazu255
    note:kawazu255

    View Slide

  3. 河津正和
    広告業界の某デジタル制作会社所属
    主にバックエンド領域のテクニカルディレクター
    コンテナ技術とか機械学習とか電子工作にも興味あり
    Twitter:@kawazu255_
    Qiita:kawazu255
    note:kawazu255
    趣味:音楽

    View Slide

  4. View Slide

  5. みんな辞めないでよ・・!
    ギターボーカル
    ギター
    ドラム
    ベース
    やり方が生ぬるい
    俺はもっと上に行きたい
    ボーカルやりたくなったので
    辞めます
    じゃあ僕も・・・

    View Slide

  6. みんな辞めないでよ・・!
    ギターボーカル
    ギター
    ドラム
    ベース
    やり方が生ぬるい
    俺はもっと上に行きたい
    ボーカルやりたくなったので
    辞めます
    じゃあ僕も・・・
    _人人人人人人人人_
    > 音楽性の違い <
     ̄Y^Y^Y^Y^Y^Y^Y ̄

    View Slide

  7. とはいえ音楽はやりたいけどメンバーどうしよう
    →メロディ伴奏とドラムパートを自動生成すれば、
    自分ベース弾けるしバンドの完成では!?

    View Slide

  8. DEMO

    View Slide

  9. システム構成
    メロディ・伴奏
    MIDI
    ドラム
    MIDI
    MIDI合成
    MIDIファイル生成側 MIDIファイル再生側
    合成後
    MIDI

    View Slide

  10. Google Magenta
    ● 米Googleのディープラーニング(深層学習)プロジェクト「Google Brain」から生まれ
    た、機械学習を用いて優れたアートや音楽を生み出せるかどうかを試すプロジェク
    ト。
    ● 機械学習システム「TensorFlow」を使用している。
    ● 学習モデルも存在しており、環境構築さえやれば作曲プログラムを動かすことがで
    きる。
    ● https://github.com/tensorflow/magenta

    View Slide

  11. メロディ・伴奏生成
    「improv_rnn」という学習モデルを使用。
    https://github.com/tensorflow/magenta/tree/master/magenta/models/improv_rnn
    生成数
    最初の音
    コード進行

    View Slide

  12. ドラム生成
    「drums_rnn」という学習モデルを使用。
    https://github.com/tensorflow/magenta/tree/master/magenta/models/drums_rnn
    生成数
    小節の長さ
    最初の音

    View Slide

  13. pygame
    ● ビデオゲーム制作用のPythonモジュール集
    ● コンピュータグラフィクスと音声を取り扱うためのライブラリが含まれている
    ● プログラムからMIDIを再生するにあたり、PC側に設定が必要っぽい
    ○ Macの場合「アプリケーション」 →「ユーティリティ」→「Audio MIDI設定」を起動し、「ウィンドウ」 →「MIDI
    スタジオを表示」→「IACドライバ」をクリック→「適用」

    View Slide

  14. 感想・今後
    ● 意外とずっと楽しめる
    ● 時々「おっ」と思えるフレーズを出してくれたりする
    ● お気に入りMIDIをアーカイブして作曲の助けにできる?
    ● 細かくMIDI作曲して学習データを作ってみたい
    ● RaspberryPIに組み込めればガジェット化?
    ● 音だけだとあれなのでビジュアライズ化にチャレンジしてみたい
    ○ TouchDesignerとか
    ● 寂しい

    View Slide

  15. 機械学習に触れる前と後のギャップ
    ● バックエンド領域オンリー時代
    ○ 数式とか難しいし論文も読めないし難しい。
    ○ データ前処理???ハイパーパラメータチューニング???
    ● 現在
    ○ 数式とか難しいし論文も読めないし難しい。
    ○ データ前処理???ハイパーパラメータチューニング???
    ○ ただ世の中には難しい理論がわからなくても、とりあえず動かせるライブラリや APIがたくさんある
    ○ とりあえず既存のものを動かすと、なんとなくの仕組みが見えてくる
    ○ その後本とか読むと理解度が全然違う
    ■ 「ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装」はすごく良
    かったです

    View Slide

  16. ありがとうございました
    Twitter:@kawazu255_
    Qiita:kawazu255
    note:kawazu255

    View Slide