Making of "Emergent Rhythm" — リアルタイムAI音響合成を用いたライブ・パフォーマンスの裏側
AIを用いてこれまでにない音楽体験を作り出せるか。
本稿では昨年12月8日 MUTEK Japan (渋谷ストリームホール)で私たちが行ったパフォーマンス、「Emergent Rhythm — AI Generative Live Set」の裏側、技術的な詳細、パフォーマンスの実現に至った流れや動機などを解説します。
なお、MUTEKでのパフォーマンスのビジュアル面については、担当したQosmoの中嶋亮介が詳しい記事を書いています。イームズ夫妻の映像作品『Powers of Ten』にインスピレーションを得た今回のビジュアル。宇宙・地球・人類の過去と未来、さらには極小から極大まで複数のスケールに共通する視覚的パータンを見出し、Stable Diffusionを用いて合成しました。テキストから画像を生成するAIモデルを用いたVJ表現の最新事例としても面白いと思うのでぜひ目を通してみてください。
リアルタイムAI音響合成を用いたライブパフォーマンス
筆者はAIの研究者であるとともに、2000年前後からダンスミュージックのリリースとDJを続けてきました。そんな筆者が2015年前後から続けているプロジェクトとして、 AIを用いて「ありえるかもしれないDJの未来像」を示そうとする試み、その名も「AI DJ Project」があります。その最新形として、リアルタイムの音響合成を用いて、その場で曲を生成しつつ筆者がミックスを行うというかたちでパフォーマンスを行いました。こちらがその動画です。
(パフォーマンス全体はこちらでご覧いただけます. )
GANを用いたループの生成
今回のパフォーマンスで利用した音響合成用のAIモデルは、GANs(Generative Adversarial Networks)と呼ばれる画像生成のアルゴリズムがベースになっています。GANは、学習データを真似する贋作者のAIモデル(Generator)とその鑑定を行うAIモデル(Discriminator)の騙し合いに例えられ、Stable DiffusionやDALL-Eなどで使われるDiffusionモデルが登場するまでは、画像生成AIのデファクトスタンダードでした。生成できる画像の質としては、最新のDiffusionモデルの方が優れているとされていますが、生成にかかる時間とパフォーマンスに必要なリアルタイム性を考慮して、今回はGANを採用しました(Diffusionモデルの場合はノイズを除去するネットワークに繰り返しデータを通す必要があり、生成にかかる時間がGANよりも格段に長くなります)。
音楽の生成のはずなのに、画像?? と思われた方、そうなんです。今回のパフォーマンスで用いたシステムでは、スペクトログラムと呼ばれる、音を時間軸と周波数分布で画像として表現するフォーマットを用いています。GANで生成された「この世に存在しない人たち」の顔写真やそれらがモーフィングしている動画をみたことがある方も多いと思いますが、それと同じようにあり得るかもしれない音楽のスペクトログラムを生成したり、それらをモーフィングしたりするわけです。
より具体的には、テンポが120BPMの曲、2小節 (4秒)分のスペクトログラムを生成するStyleGAN2モデルを学習しました。GPUを使うと一回の音の生成におよそ0.4-0.5秒程度かかる実装になっています。4秒の音を生成するのにそれだけかかっているわけですから、リアルタイムよりもやく10倍程度高速に音が生成できていることになるわけです。
音をスペクトログラムに変換すると位相の情報が失われてしまうため、スペクトログラムから音に逆変換する際には失われた位相の情報を予想する必要があります。今回の実装では、StyleGAN2のモデルで生成したスペクトログラムを、位相を補うMelGANという別のモデルに通して、実際に人が聴ける音に変換しています (この一連の仕組みに関しては、githubでモデルとサンプル・コードを公開しているので興味のある方はお試しください)。
パフォーマンスのために、今回合計7つのStyleGAN2モデルを学習しました。それぞれ特定のジャンルのリズムを学習させたり、ベースラインやシンセパッドだけを学習したモデルなど特色ある音(スペクトログラム)を生成するモデルになっています。先に述べたビジュアル面でのテーマにあわせて、自然と人が交わって生まれる音(風の音、モノを転がす音、森の中を歩く足音)などを学習したモデルも用意しました。
実際のパフォーマンスでは、これらのAIモデルに入力する潜在ベクトルを少しずつ動かすことで、音楽的な変化を生み出しつつ、複数のモデルから生成される音、ループを抜き差ししたり、そこにDJミキサーでエフェクトをかけたりといった操作を繰り返すことで、即興的、まさにDJのように音楽を展開させていきます。
StyleGANは、一般的な入力の潜在ベクトル(ノイズ) zよりも整理された(disentangleされた)中間の潜在ベクトルwを持つアーキテクチャです。このwの潜在ベクトルを特定の方向に動かすことで、例えば顔画像を学習したモデルであれば、ある顔を笑顔にしたり、老けさせたり、より男性的/女性的な顔に変化させたりといった操作が可能であることが知られています。
今回のパフォーマンスでも同様に、より音数が増える/減るベクトル、低音が強くなる/弱くなるといったベクトルを、学習したモデルのw潜在空間において、事前に探しておいて、操作するといったことをやりました。そろそろお客さんを盛り上げたいという時に、音数を増やしたりといったことを意図的
にやっていました。
さらにテクニカルに話すと、それぞれのGANモデルでスペクトログラムを生成する際に、ほんの少しだけ異なる潜在ベクトル z を用いて、少しずつ異なる4つのループを同時に生成するようにしました (バッチサイズ = 4)。これらの4つのループをミックスすることでステレオにまとめているのですが、このミックスのバランスを左右で少しずつ変えることで、独特のステレオ感を演出しています。こうした点もAIならではと言えると思います。
Neutoneプラグインによるリアルタイム音色変換
今回のパフォーマンスにおけるもう一つの重要な要素は、Qosmoで開発を続けているリアルタイムAI音響合成・音響処理プラグイン、Neutoneの存在です。Neutoneは最新のAIモデルを一般的なDAW(Ableton Live, Logicなど)で簡単に使えるAudioUnit/VSTのかたちで提供することを目的としたプロジェクトで、昨年2022年のはじめから開発を続けてきました。冒頭に述べたように、AIを用いてリアルタイムの音響合成を可能にするモデルが2021年2022年あたりから少しずつ登場しはじめたというのが、このプロジェクトの背景にあります。Neutoneについて、詳しくはこちらの記事をご参照ください。(一年間の開発期間を経て、ようやくパフォーマンスの現場で使える完成度になったという点でも感慨深いものがありました。)
MUTEKでは、そんなAIモデルの一つ、RAVEモデルを主に利用しました。RAVEは音色変換のモデルで、特定の音、例えばバイオリンを学習すると入力された音が全てバイオリンに変換されて出てくるというものです。単に音高や強さだけでなく、入力によってはバイオリン特有のかすれた音なども再現される点が非常に面白い点です。
今回学習に使ったのは、人類の歴史、さまざまな文化的なコンテクストを行ったり来たり、というテーマに呼応するかたちで、仏教の読経、キリスト教の讃美歌、ブルガリアの女性合唱(アニメAkiraの主題歌などでも印象的なあれです)、アフリカの民族楽器コラなどのモデルです。パフォーマンス中はGANが生成したリズムを人の声に変換したり(即席ボイスパーカッション)、シンセの音を讃美歌風に変換したりといったことをリアルタイムに行なっています。特に個人的に気に入ったのは、読経→讃美歌→ブルガリア合唱のように複数のRAVEの出力でフィードバック・ループを生み出したシーンです。リアルタイムAIならではのオーガニックかつ独特の浮遊感のあるシーンを生み出すことに成功しました。
パフォーマンスに至る背景
この「AI DJ Project」ですが、AI DJといっても、AIでDJを自動化しようという話ではもちろんなく(あんなに面白いことをAIに任せるのはもったいない!)、DJのプロセスの一部をAIに任せることで、人だけでは思いもつかなかった選曲やこれまでにない新しいタイプのDJパフォーマンスの実現を目指したものです。このあたりの背景やそこから得た知見などはほかの記事や拙著『創るためのAI 機械と創造性のはてしない物語』などで繰り返し、語ってきたことです。
AIとのBack to Back (複数のDJが交互に選曲するスタイル)からスタートしたAI DJ Projectですが、AI技術の進展にあわせて、リアルタイムにステージ上でリズムやベースラインをAIで生成し、ドラムマシンやシンセサイザーを使って演奏するというライブ・パフォーマンスへと進化?しました (2021年のAI DJ Project ver2 Ubiquitous Rhythm)。
自分が操作するドラムマシンの音色などにあわせて、次に生成されるリズムやベースラインが変化していく、次にどんな音楽がうまれてくるのか展開が読めない状況。それにも関わらず、すべてがバチッとはまってグルーブがうまれたときの鳥肌が立つようなゾクゾク感... とてもチャレンジングで面白い試みだったのですが、あまりにDJ側の負担が重すぎる(シンセやドラムマシンにAIと操作するパラメータが多すぎる)、展開が読めないなかで演奏される音楽のクオリティを高いレベルでキープしていくことが難しいといった課題を抱えていました。
そんな中で迎えた昨年、2022年。AI技術の新しいブレークスルーが生まれます。DALL-EやStable Diffusionのような画像生成AIモデルや、年末に発表されたChat-GPTなどの陰に隠れて、まったく目立ってはいませんが、2022年は後述するRAVE(正確には2021年11月)やMUSIKAのようなAIを用いたリアルタイムの音楽のための音響合成技術がぽつぽつと世に出てきた年でもあります。 (ここではリアルタイム生成という言葉を「実際に演奏される時間と同じか、それよりも短い時間で音が生成される」という意味で使っています。たとえば、テンポが120BPMの曲の1小節は2秒間に相当しますが、2秒以内に1小節以上の曲を生成できるかどうかが、リアルタイムか否かの境界ということになります)
AIを用いた音響合成技術は、さかんに研究されてきた分野であり、特に話し言葉を生成する音声合成の分野ではリアルタイム以上のスピードで生成できるAIモデルが提案されています。音楽に関しても、MIDIのような楽譜の情報ではなく、音をそのまま合成する音響合成技術が複数提案されています。特に有名なものとしてSampleRNNやOpenAI Jukeboxなどがありますが、30秒の音を生成するのに数時間かかる(Jukeboxの場合)など、リアルタイムにはほど遠く、また生成される音のクオリティもパフォーマンスに使うには不十分といった状況でした。そういった状況が一変したのが、2021年末から2022年だったわけです。
そこで、AI DJの第三弾として考えたのが、こうしたリアルタイムの音響合成を用いたライブパフォーマンスです。AIを使ってその場で(楽譜を生成するのではなく)音そのものを合成することで、上述したようなシンセサイザーをコントロールする負担やその恣意性への依存を減らせるのでは、と考えたわけです。
想像してください。DJがステージ上で自分が想像した通りの音楽をその場で自由に合成できて、それらを思うがままに組み合わせて、一度きり、その場限りの音楽体験を実現できたとしたら... 。今までになかった音楽体験をオーディエンスに提供するとともに、DJにとっては新しい演奏方法(と新しいチャレンジ)を提示します。そもそも、HOTキューやループ機能、さらには音源分離などのソフトウェアの機能を使ってデジタルデータをミックスする昨今のDJは、二枚のレコードをミックスするDJに比べて、よりライブパフォーマンス的な要素が強くなっていると言っても良いでしょう。その傾向がAIによって加速するとしたら... どのようなライブが可能になるのか。そうしたスペキュラティヴな視点も意識していました。
MUTEK本番と今後の展望
長い準備期間を経て(準備を始めたのはゴールデンウィーク前後。7月には京都のクラブMETROでこのシステムを使った初めてのライブも行いました)、2022年12月8日に迎えた本番。お客さんがどのように反応するか、かなりドキドキしていたのですが、結果的には想像していた以上に好意的な反応をいただきました。ライブ終了直後に上がった歓声を聴いて、心の底からホッとしたというのが正直なところです。
AIモデルをコントロールしてその場で音楽を生成し、お客さんを踊らせる。ディスクを乗りこなす(ジョッキーする)ディスクジョッキー、DJというよりは、AIを乗りこなす「AIジョッキー」としての新しいパフォーマンスのかたちの可能性を感じていただけたのではないでしょうか。
そこには、リアルタイムにリズムや音がモーフィングしていくといった面白さ、AIならではの意外性を含んだ音楽的な展開など、AIを使ってしか実現できなかったであろう新しい音楽体験がありました。一方で、リズムなどに比較してシンセサイザーのメロディーなどを生成するのが難しいといった点、音質的なクオリティなどの技術的な制約が存在しています。また音楽だけを切り離して聞いたときに、今までにない新しい、カッコいい音楽を生み出したと胸を張って言えるレベルにはないという点も認めざるを得ません。
AIによってデータを学習しつつ、かつ新奇性のある音楽体験、音をどう生み出すのか。まだまだ試行錯誤を続ける必要がありそうです (その一つの方向性は以下のビデオで紹介する2019年の研究で示しました)。
MUTEKのパフォーマンスと前後して、Stable Diffusionを用いてスペクトログラムを生成することで音楽を生成するRiffusionと呼ばれるシステムが発表され話題を呼びました。GANを使ったシステムとは違って、テキストから音楽を生成できることも大きな魅力です。"piano concert in A-minor", "lo-fi beat for the holidays"などと入力するとそれらしい音楽が生成されます。テキスト入力が果たして音楽を操作する上で一番いい方法かは議論が必要ですが、Diffusionを使って波形を直接生成する実験も進んでいることから、この分野は今後ますます面白くなりそうです。
こうした最新の研究も取り入れつつ、聞いたことがないカッコいい音楽、音楽体験を目指して、さらに試行錯誤を続けていきたいと思います。
Credit
Artist: 徳井直生 (Qosmo)
Visual Programming: 中嶋亮介 (Qosmo)
Visual Programming: 高石圭人 (Qosmo)
Dancer: 遠藤真澄
Movement Director: 久野舞衣子
参考文献
Goodfellow, Ian, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. 2020. “Generative Adversarial Networks.” Communications of the ACM 63 (11): 139–44.
Hung, Tun-Min, Bo-Yu Chen, Yen-Tung Yeh, and Yi-Hsuan Yang. 2021. “A Benchmarking Initiative for Audio-Domain Music Generation Using the Freesound Loop Dataset.” arXiv [cs.SD]. arXiv. http://arxiv.org/abs/2108.01576.
Karras, Tero, Samuli Laine, Miika Aittala, Janne Hellsten, Jaakko Lehtinen, and Timo Aila. 2019. “Analyzing and Improving the Image Quality of StyleGAN.” arXiv [cs.CV]. arXiv. http://arxiv.org/abs/1912.04958.
Kumar, Kundan, Rithesh Kumar, Thibault de Boissiere, Lucas Gestin, Wei Zhen Teoh, Jose Sotelo, Alexandre de Brebisson, Yoshua Bengio, and Aaron Courville. 2019. “MelGAN: Generative Adversarial Networks for Conditional Waveform Synthesis.” arXiv [eess.AS]. arXiv. http://arxiv.org/abs/1910.06711.
Caillon, Antoine, and Philippe Esling. 2021. “RAVE: A Variational Autoencoder for Fast and High-Quality Neural Audio Synthesis.” arXiv [cs.LG]. arXiv. http://arxiv.org/abs/2111.05011.
Pasini, Marco, and Jan Schlüter. 2022. “Musika! Fast Infinite Waveform Music Generation.” arXiv [cs.SD]. arXiv. http://arxiv.org/abs/2208.08706.
Tokui, Nao. 2020. “Can GAN Originate New Electronic Dance Music Genres? -- Generating Novel Rhythm Patterns Using GAN with Genre Ambiguity Loss.” arXiv [cs.SD]. arXiv. http://arxiv.org/abs/2011.13062.