raw inc. | 落合陽一×日本フィルプロジェクト VOL.8 《変幻する音楽会》 | 前編
全体概要
落合陽一×日本フィルプロジェクトとは
落合陽一×日本フィルプロジェクトは、テクノロジーによりオーケストラの鑑賞体験をアップデートし、芸術文化により多様性の高い社会の構築と日本文化の発信を目指すプロジェクトです。音楽は耳で聴くものという常識にとらわれず「五感で感じる、身体で聴く音楽」をコンセプトに生の音楽の喜びを追及し、2018 年以来デジタルとリアルの融合に取り組んできました。
本記事は2024年8月20日(火)にサントリーホールで行われた「変幻する音楽会」の内容です。
前編(全体概要と開発概要)
中編(開発詳細)
後編(ビジュアル制作)
と順を追って弊社の各担当者が開発、制作過程をまとめます。
本公演でのrawの担当内容
本公演で raw は、AIによる映像演出のスイッチングの自動化に挑戦。CNN モデルをスクラッチ実装しました。
直近15 秒のスペクトログラム等の情報から3秒先の未来の演奏展開を推測し、自動化による課題である遅延を解消します。また、展開に適した演出にスイッチングする方法として、gpt-4o で映像をパラメータ化するアプローチを取りました。
ビジュアル面においても、生成AI を用いて映像を制作。デザインチームは、AI とコラボレーションし、動画生成AI の新しい表現の可能性に挑戦しました。
raw AI 曲調推測システム
raw AI 曲調推測システム(以下 raw AI)とは?
オーケストラの生演奏から、これから使用される楽器や、曲の展開を予測するオリジナルで開発したAI システムです。
raw AI を使用して曲の未来を予測し、それをパラメーター化することで、AI による自然な演出選定・スイッチング操作を行うことができました。
システム概要
生演奏をマイク入力として受け取り、リアルタイムに録音→解析を実施する仕様となっています。
入力音声を用いてraw AI により3 秒後の展開を予測し、以下の14 パラメーターを後続システムへ送信します。
1. 演奏楽器(含まれると思われる楽器を、0 ~100%の強さで出力)
ボーカル
弦楽器
木管楽器
金管楽器
打楽器/鍵盤打楽器
鍵盤楽器
2. 感情(展開で感じる感情の強さを0 ~100%の強さで出力)
喜
怒
哀
楽
盛り上がり
落着き
3. 曲調(展開で感じる曲の早さや要素を0 ~100%の強さで出力)
アップテンポ
スローテンポ
(クラシック音楽に聴こえるか : 未使用)
(無音であるか : 未使用)
(ブレイク中であるか : 未使用)
raw AI を用いて解析したパラメーターを演出制御を行うシステムへ送信することにより演出を制御するような構成となっています。
また、raw では後続システムへ渡した結果から演出選定を行うシステムの一部ロジック考案や、動画の自動ラベリングツールの開発も行いました。
開発~運用までの流れについて
raw AI のシステム開発では、以下の人員や期間で開発を行いました。
システム開発要員: 3名
中野 雄太
林 件頼
西本 夏樹
開発期間: 2ヵ月強
データセット開発要員
システム開発要員: 3名(同上)
ラベリング実施要員: 社員総出(約10 名)
開発フローは以下の通りです。
技術選定~本番までの期間が3 ヵ月を切った状態からの怒涛とも言えるようなプロジェクト進行でしたが、社員皆さまの協力もあり、期間内に着地することができました。
raw AI の開発~運用では「図-RA3 」の通り、以下作業の実施が必要でした。
各種調査
データセット開発
AIシステム開発
各種テスト
本番実施準備、本番実行時のシステム監視
開発作業について
作業に関する概要や風景について、以下で触れていきます。
各種調査
「類似のAI 調査」
本プロジェクトの成功を目指すにあたり、
<<大前提として、AI 開発は「手段」であり「目的」ではない。>>
という考えのもと、開発された既存のAI など使用できる車輪があれば、再発明を避けそれを利用する方針で考えていました。
「未来の予測」「楽器識別」「楽曲の感情識別」を全て満たすようなプロジェクトは見つけられず、やむなくAI を開発する方針をとりました。
「課題」
raw AI の学習にあたり、大きな課題に直面しました。
学習データセット(訓練データ)の不足
クラウド環境下でのAI 学習における海外のリーガル周りクリア
学習データセットの不足に関しては、raw 独自のデータセットを開発することにより解決しました。
権利問題に関しては日本国内、かつオンプレ実行下での機材のみで学習することで、所在地が確実に国内にできるのでこちらもクリアしました。
「実装」
raw AI の実装にあたり、3種類のCNN (畳み込みニューラルネットワーク)モデルをフルスクラッチで実装しました。
未来予測では、RNN (回帰型ニューラルネットワーク)での実装が一般的に候補に挙がるかと思いますが、
例えば、音楽の展開予測に関して
あなたが好きなアーティストの新曲を聴くとき
「A メロ」から「B メロ」にもうすぐ切り替わるな…?
このイントロは結構長い奴だな?
この「C メロ」だと、この後は「ギターソロ」からの「落ちサビ」だな!
のようなことを、初めて聴いた曲に対して感じるとき、多くの人は音楽の展開自体を細かく予測しているのではなく、曲のパターンや作曲者の癖、さらにいうと直感で感じ取る人が多いと思います。
さらに、上記の予想が立つときの多くはパートが切り替わる数秒前にピンと来ることが多いのではないでしょうか。
(社内メンバーや身内の方々に聞き込みを行った傾向による仮説です)
上記の仮説をもとに、
「楽曲のパターンが掴める程度の入力」から「直近の展開を予測する」
挙動を目指して開発を行いました。
データセット開発
AI を学習させる際、何かしらの形で学習の訓練用データや検証用データの最低いずれかが必要になる場合がほとんどで、raw AI も例外ではありません。
音楽のデータという特性上、既存で使用できるデータは非常に限られた選択肢しか存在しません。
Google が公開している MusicCaps データセットを学習教材として採用しました。
およそ5,500 曲のデータに含まれるオーケストラ音源は限られており、単純にデータ数が足りませんでした。そこで、raw で独自のデータセットも作成することにしました。
「ラベリング」
過去の「落合陽一×日本フィルプロジェクト」をはじめとする演奏音源
楽曲生成AI を用いた楽曲音源
raw が上の用意した音源にラベリング(「図-RA4 」: 「解答データ」の作成)を実施し、データとして組み込みました。
曲の何秒~何秒の間で、どんな曲調でどんな楽器が鳴っているというのを
手作業で記述していくのは果てしない作業になってしまいます。
そこで、ブラウザ上で動作するラベリング専用音楽プレーヤーを開発しました。
音楽を再生/一時停止しながら、画面のボタンを操作することで、Google スプレッドシートに入力結果がリアルタイムに反映される仕様としました。
ラベリング作業の複雑さを隠蔽することで少ない説明時間で、時間効率良く作業を依頼することができ、社員の作業のスキマ時間などに協力いただくことに成功しました。
スプレッドシートの結果から、ほぼ自動でデータセットの形式に変換するツールを別途開発しました。全自動化できれば一番楽なのですが、開発期間の兼ね合いもあるため、例えば楽曲データのクリッピングツールとデータセットTSV 出力ツールを分離するなど、開発期間と手作業にかかるであろう時間を天秤にかけつつ時間効率の恩恵がほぼ無いと思われる作業については手動で実施する「ほぼ自動」の対応を取りました。
これはすべてのシステムに共通して同様のスタンス(自動化の時間的恩恵が少ないものは手動で実施)を取っています。
また、楽曲生成AI を用いて生成した楽曲の一部に対して、一貫して同じ曲調や楽器が続くものはタグ付け処理をスキップし、ディレクトリパスから正規表現を用いた置換処理を行い同様のデータセットTSV を生成するアプローチをとりました。
「オーディオファイルのエンコード」
ラベリングの結果から、楽曲データに対しても
フォーマット統一及びクリッピング処理をかける必要がありました。
非常に大量の楽曲データに対して変換処理をかける必要があり、PC 1台体制で行うと日単位で時間がかかってしまうことから、複数PC を用いてパラレルに変換できるようなシステムを構築しました。
親端末でデータを管理、複数の子端末へ変換に必要なデータをネットワーク経由で渡し、変換後のファイルを親端末へ返すような仕組みの実装です。
これにより、数日がかりで発生する可能性のあったファイル変換作業を、実装~変換完了まで1 日で行うことができました。
AI システム開発
raw AI の開発にあたり、システム開発側作業では以下を開発しました。
raw AI(3種類)
AI モデル
AI モデル 学習ツール
AI モデル 推論(実行)システム
推論結果のビジュアライズアプリ
動画ラベリングツール
AI システムの開発において、AI だけを開発すれば良いというわけではありません。
AI の性能を評価するためのツール開発や、AI を動かすためのシステムも必要になります。
「AI モデル」「AI モデル学習ツール」
とはいえ、一番重要なのはAI 自体の開発です。raw AI では以下のアプローチでCNN モデルを開発し、未来の楽器や曲調の展開予測を行いました。
まず、raw AI が採用したCNN のモデル構造は大まかに「音を画像化」した上で、入力毎に「特徴の抽出」を行い、それらを「統合」して「予測」を行う仕組みです。
音の画像化にはいくつか種類がありますが、今回のアプローチではスペクトログラムに変換しました。
また、入力については直近の曲の展開から未来の予測を行う必要があることから
A. 直近15 秒間
B. 直近3 秒間(より繊細な画像)
C. 未来3 秒間 or 無音
の入力を「ステレオ(2ch )」で受け付け、3 x 2 =6 つの画像を基に特徴の抽出を行う仕組みを取りました。
学習データの音の入力は15 秒、18 秒にクリッピングした楽曲を用い、解答として18 秒時点の楽器や曲調を学習させました。
これにより、利用時(本番)に直近15 秒、直近3 秒、 無音の3 通りの入力で18 秒時点の予測を精度良く行うことに成功しました。
「AI モデル推論ツール」「推論結果のビジュアライズアプリ」
数値上の正確性では実運用に耐えられるか明確でないため、目視でも精度確認を行う必要があります。
目視での確認を円滑化するために、音楽データの再生を行いながら、クリッピングした音楽データ等の情報をTCP 通信で送信し結果を返却して表示するアプリも作成しました。
「動画ラベリングツール」
ここまではraw AI の開発について触れましたが、AI により推論した結果をもとに映像の選定を行う際、raw AI 結果と映像を紐づけるための情報が追加で必要になります。
これについては、OpenAI のGPT-4o を用いて対応しました。
動画と雰囲気や速度間を推測するようなテキストベースのプロンプトをInput として連携
Output としてraw AI と同様のパラメータを持つ形式のJSON を出力するアプローチを取りました。
各種テスト
各種テストや最終的な精度については、より専門的な話になってしまうため、後日公開の「中編(開発詳細)」で公開します。
本番実施準備、本番実行時のシステム監視
本番が近づくにつれ、raw により開発したシステムと WOW 様開発のシステムとの連携テストを行い、疎通確認や内部での動作確認、練習を実施し細かい調整を行っていくフェーズとなっていきました。
業務的な情報連携もより活発になり、各社一致団結して作業に励みました。
システム一式自体は完成し、連続負荷・長時間稼働時の動作テストやハードの熱周りに問題が無さそうかチェックを行いました。
また、モデルには本番直前まで随時追加学習を行い、精度をギリギリまで高くなるように調整しました。
raw AI 曲調推測システム 最後に
繰り返しになりますが、3か月弱と非常に短い期間の中、開発を着地まで持っていくことが出来たのは、何よりも弊社一丸となりデータセットの開発に協力いただけたことや、WOW 様から計算リソースの貸与、スピード感のある情報共有をいただけたことなど、全ての協力が噛み合わないと成立しなかったプロジェクトです。
皆さまご協力ありがとうございました!!!
また、開発周りは、トライアンドエラーが何度も効かない期間の中、非常にプレッシャーのある作業だったかと思います。
ツール作り含め、正直3 か月未満で開発する物量ではなかったと思います。非常に難易度の高いプロジェクトでしたが、腕が利く皆さんにより最後まで柔軟でスピード感ある対応をいただけたこと大変感謝しております。
株式会社raw 第三制作部(システム担当)
林 件頼
この記事が気に入ったらサポートをしてみませんか?