読者です 読者をやめる 読者になる 読者になる

ただの風邪。

音楽のことを中心にいろいろと書いています。

AIはプリペアド・ピアノの夢を見るか?――人工知能と自動作曲に関する覚書

 この曲は、ソニーの研究所が開発したAI、「FlowMachines」を用いて作曲された、「ビートルズ風」のポップソングだ。イントロのコーラスワークやベルの音色はむしろペット・サウンズ期のビーチ・ボーイズではないのか、という気もするけれど、たしかにメロディにはどこかジョンやポールの面影が感じられる。2017年にはこの他にもAIを用いて作曲した楽曲を含むアルバムが発表されるという。なんとまあ、夢のある話ではないか。ただし、「AIがついに作曲を! シンギュラリティ!」と言うのは先走りすぎだろう。このAIがどのようなものかを糸口にしつつ、昨今盛んな人工知能による作曲や演奏について、考えてみたい。

FlowMachinesはなにをしてくれるのか

 研究所の提供するAI『Flow Machines』はもちろん単なる作曲ソフトでは決して無いけれど、一から十までこなしてくれる完璧な知能というわけでもない。むしろ、過剰に有能なアシスタント と言ったほうが適切かもしれない。「ビートルズ風のポップソングを作って」と言えば、いろんなコード進行とメロディのパターンをAIが提案してくれる。気に入ったものがあればOKを出して、気に入らないところには別のパターンを出してもらう。次の動画を見れば、具体的なプロセスがわかると思う。

 「ここの音符がつまりすぎてる」「ここはもうちょっと高く」「別のコードで」とか、いろいろと細かい修正が入っている。操作はかなり直感的で、多少楽譜が読める人ならば誰でもすぐに使えそうだ。こうしてできた楽曲に、どんな楽器で、どんなテイストで演奏するかを指定さえすれば、AIがデータベース化された録音素材をうまくパッチワークして出力してくれる。

 つまり、コードとメロディ担当のAIと、演奏担当のAIがいて、それに人間が適宜指示を下しているわけだ。それだって充分すごいんだけど、技術的に言って具体的になにがすごかったかといえば、次の二点に尽きると思う。まず、大量のジャズ・スタンダードやブロードウェーのナンバー、そしてポップソングの楽譜をデータベース化することで、AIがこれまでにない多くのスタイルを学習することができるようになった、ということ。次に、実際の演奏音源からグルーヴや演奏のクセを学習して、しかもそれを違和感なく合成することができるようになった、ということだ。このアシスタントは、「無茶苦茶モノ知ってる」 うえに 「どんな演奏もさらっとこなす」のだ。

これまでの自動作曲とどう違うのか

 そもそも、コンピューターに作曲をさせるという試み自体は、計算機の誕生以来ずっと追求されてきたものだった。自動作曲の手法に関するサーヴェイ論文に目を通してみると、レジャレン・ヒラーによって1959年に作曲された 弦楽四重奏のためのイリアック組曲 Illiac Suite for String Quartet が、実際にコンピューターによってつくられた最初の音楽作品だという。YouTubeに実演がアップロードされている。もちろん、当時のコンピューターにオーディオを扱うだけのパワーはなかったので、演奏しているのは人間だ。

 イリアック組曲については日本語では東京芸大の小寺未知留さんによる研究報告があり、その歴史的意義やアルゴリズムについて簡潔ながら詳しく検討されている。そもそもこうした対位法に代表されるクラッシックの作曲法は、修練を積んで磨かれる感性的な側面と同時に、高度に洗練された規則体系を持ってもいる。そうした体系をアルゴリズムに組み込めば、コンピューターだって作曲できるのではないか、と思うのはある種当然の成り行きではある。全四楽章のうち第一楽章(前掲)から第二楽章は厳格な対位法にもとづき、第三楽章はそれに加えて音量や奏法も含めた、いわゆるトータルセリエリズムに近いアプローチをとっている(実際に第三楽章は不協和音やパーカッシヴな音が多用されており、いわずもがなという感じ)。第四楽章では楽理的なアプローチから離れて、マルコフ過程を用いた乱数生成がもっぱら用いられているようだ。

 こうした初期の自動作曲においては、対位法という厳格なルールをコンピューターに教えれば(=アルゴリズムに組み込めば)楽曲はできあがる、という寸法になっていた。しかし、いつまでも時代はバッハのままではない。現在ぼくたちに馴染み深いポップスやロックの世界には、クラシックの対位法とか和声法ほど厳格な禁則もない。あるのは「これってありだよね」と経験的に積み重ねられてきた実例と、そこから帰納的に導き出されるもろもろのパターンにすぎない。そのようにして人々のあいだに培われたのは「○○っぽい」という漠然とした感覚にほかならないが、それはまさに、これまでコンピューターが一番苦手としてきたことだ。前掲のサーヴェイ論文に詳しくまとめられているけれど、これまでの自動作曲は、こうした困難をどのように乗り越えるかに腐心してきたといってよい。

「○○っぽさ」を学ぶAI

 そこに、ここ数年めっきりバズワード化し、ある方面には幻想を、またある方面には幻滅を与え続けている深層学習が登場する。自分は計算機科学の専門家ではないので詳しいことは述べられないけれど、ざっくりと言えば、深層学習のおかげで、学習用のデータ・セットさえ与えれば、コンピューターが「これは○○っぽい、これは××っぽい、これはなんかそのあいだくらい」みたいな雰囲気を勝手に掴んで、分類することが容易になった(詳しい理屈については、例えば松尾豊の『人工知能は人間を超えるか ディープラーニングの先にあるもの (角川EPUB選書)』などがぼくにはわかりやすかった)。深層学習の利点は、単にジャンルそれぞれの「っぽさ」を学ぶだけではなくて、与えられるデータ・セットの種類次第で、たとえば音程のゆらぎとか、リズムの溜め方とか、演奏者の手癖みたいなものも学ぶことができるという点だ。

 ここでAIは一挙に「○○っぽい曲」を作れる能力を得たと同時に、それを「××っぽく弾く」こともできるようになったわけだ。上掲の動画はベートーヴェンの第九を様々にオーケストレーションした例を並べたものだが、こんなふうにヴァリエーションをつくってくれるだけでも面白いものがある。ペニー・レイン風の第九なんて、いかにもなフレーズの連発で思わず頬が緩んでしまう。「AIが人間と同等の創作活動を!」みたいな驚異はないかもしれないけれど、「もうこんなことまでできるんだ!」という喜びが湧いてくるようなデモンストレーションだ。

 FlowMachinesは、特に演奏情報に関しては、録音された素材も学習の対象としているようだけれども、やはりその学習の大部分は、「リードシート」という 特殊なかたちの楽譜によって記号化されたデータ にもとづいている。そのあたりに、ソニー研究所の実用的な割り切りが感じられる。たとえばGoogleのMagentaでは、学習用に用いるデータ・セットはMIDIデータが主のようだ。MIDIはコンピューターが音情報を制御する規格としてかなり実績も高く安定性があり、かつ広く用いられている形式だから、オープンソースなプロジェクトとしての拡張性を考えれば、そちらを採用するのは妥当な判断だと言える。そこで 「リードシート」を採用したことがなぜ「実用的」か、ということを考えてみる。

MIDIか、「リードシート」か――ポップスの記号化

 ジャズやロックも含めた広義のポップ・ミュージックは、その構造については経験的な基礎づけしかもたなかった一方で、その書法については極めて洗練された体系を持っている。これは菊地成孔大谷能生ゼロ年代を通じて「バークリー・メソッド」という呼称で論じてきたもの(e.g.菊地・大谷共著『憂鬱と官能を教えた学校 上---【バークリー・メソッド】によって俯瞰される20世紀商業音楽史 調律、調性および旋律・和声 (河出文庫 き 3-1)』など)だが、要するに、和声のブロックとそれらの一定の組み合わせ(=ケーデンス/カデンツ)を基本的な単位とする書法 のことだ。FlowMachinesのデータベースに蓄積されている「リードシート」と呼ばれる楽譜はまさしくその代表というべきもので、主としてメロディラインと歌詞、そしてそれに伴う和声進行だけが記された、高度に抽象的で実用的な書法だ。菊地・大谷が指摘するように、この書法は、楽曲全体がどのように構成されているかとか、部分と部分、あるいは部分と全体とがどのような関係を持つかといった分析にあたって絶大な威力を発揮する。

Lead-sheet-wikipedia.svg
 リード・シートの例。By Paradoxian - Own work, CC BY-SA 3.0, Link

 このMagentaプロジェクトのブログ記事では、楽曲全体に一貫する構造をAIがつくりだすことがいかに難しいか、それを克服するためにはどのような学習のアルゴリズムが適切かが論じられている。1,2小節のメロディをつくることはたやすくても、一曲としてまとまりを持った長いメロディをつくるのはなかなか難しいのだ。その点、「リードシート」は各々の楽曲の構造をある程度抽象化して書くものなので、そうした構造化を学習段階である程度達成できているのではないか、と思う(入力しているデータそのものを比較したわけじゃないので違うかもしれないけれど)。

 たとえばMIDIファイルにおいて音程は0から127までの数値にひとつずつ割り振られ、絶対的に記述される。それは演奏するひとつひとつの音符がすみずみまで記されたオーケストラ譜に近い。他方、「リード・シート」においては、メロディ以外の伴奏は「Gmin」とか「A♭7」とかごく簡略化されて記される。各々の記号は、どの音を基準に、どの種類の和音を鳴らすべきかだけを指示する(一番簡単な例で言えば、「Cmaj」はドの音を基準に、その3つ上の音と5つ上の音からなる和音、すなわちドミソの和音をこれだけで示している)。それによって、同じ楽曲を対象としたデータであっても、MIDIよりも「リードシート」のほうが、「メインのメロディ/伴奏の和音の根音/伴奏の和音の構成音」といった構造が、一目瞭然 なわけだ。

 先述したように、FlowMachinesが学習に用いているのは「リードシート」だけではない。しかし、膨大な量の「リードシート」の活用があって初めて、あのような精度の自動作曲が実用レベルに実装されているだろうと思われる。

記号化から符号化へ――DeepMindのTTS技術

 と、ここまでは比較的各種メディアを賑わせた話題ではある。しかし、個人的に最も驚いたのは、既に実用レベルに達したFlowMachinesでも、音楽に限らないAIの創造性を追求するプロジェクトとして邁進するMagentaでもなく、DeepMindによって改良されたTTS(テキスト読み上げ)技術 の副産物だった。

 DeepMindのWaveNetは、深層学習の技術を用いて、音声データそのものを学習し、生成するAIだ。この9月にDeepMindが発表した記事によれば、このWaveNet技術を用いれば、従来のTTSよりもずっと流暢で自然な音声が生成でき、しかも性別や声色までかなり柔軟にコントロールできるらしい。

 これまで、TTSは人間の発声をシミュレーションして喋らせるか、あらかじめ用意された子音や母音などの音声を合成してひとつなぎにして喋らせるか、どちらかの手法がとられていた。たとえていえば、前者はシンセサイザーで楽器の音を再現して演奏すること、後者は実際に演奏した素材を編集して曲をつくることに対応するだろう。初音ミクなんかのVocaloidは後者だ。WaveNetはそのどちらとも違う。録音された人の声そのものを学習して、学習したデータに基いてAIがゼロから音声を生成するのだ。実際記事中のサンプルを聴いてみると、なるほど既存のエンジンよりも違和感が少ない

 しかしちょっと戦慄するのは、前掲ページ後半の“Knowing What to Say”という項目で紹介されている、「テキストデータを与えずに、ただAIを走らせて出力した音声」だ。WaveNetを実際に使う際には、WaveNetが学習したデータを実際のテキストデータに対照させる手続きが必要になる。その手続きを経る前の、なまの学習内容が紹介されているのだ。それはあきらかに人の声で、なにかを言おうとしているかのように聴こえるけれども、実際のところ、一切の意味内容を欠いている。 抑揚もあり、息継ぎもあり、単に自分がその言語を知らないだけで、実は意味の通った文章を読み上げているのではないかと疑ってしまう。しかしそんなことはない。AIが気ままに10秒間の音声ファイルを出力しているだけなのだ。このままぶつぶつつぶやかせていると、次第に意思でも持ち始めるんじゃないかとちょっと怖くなる。

 そして、そういったありがちな恐怖をもう一度裏切るのが、人の声ではなくてピアノを演奏した音声を学習させた例だ。ここでもまた、WaveNetは学習した内容に基いて、思うままに音声を生成している。なんの楽譜も与えられていない。ただWaveNetは入力されたピアノの演奏を学習し、10秒間のサンプルを出力しているだけ。なのにもかかわらず、そこには和声があり、メロディがあり、律動がある。 凄腕のピアニストが肩慣らしに即興演奏を楽しんでいるかのようだ。

 WaveNetが示しているのは、FlowMachinesやMagentaにみられるような 「記号化」のプロセスなしに、AIが「作曲」してしまう最も端的な例だ。高度に抽象化されたケーデンスの組み合わせもなく、127段階の数値に還元された音程の羅列さえもなく、ただ「サンプリング=符号化」されたデータそのものに基いて、AIは作曲しうる。 あらゆる記号には、それを理解するためのコードが存在する。「リードシート」は人間が作曲する用途に効率化されたコードを持ち、MIDIは人間が機械に司令を与えるために定められたコードを持つ。しかしWaveNetによるピアノ独奏は、そうしたあらゆるコードを持たない。それはただそのように響くよう律儀に配列された、デジタルデータなのだ。

AIはプリペアド・ピアノの夢を見るか

 WaveNetによる「作曲」(というか「演奏」というか)は、人間がそうするような意味で「作曲」と言いうるのか。あるいは、WaveNetは、数分とか数十分といった長さの、一貫した「作品」を生成できるのか。そうした美学的な問いや技術的な課題についてはひとまずおいておく。ただ実際に、AIが学習した結果を10秒間のサウンドファイルにレンダリングした結果、そこには紛れもなく(きわめて古典的な感覚における)「音楽」が鳴っていた ということは否定しがたい。楽譜(あるいはMIDI)を通した記号化を経ることのない、AIによる直観的な「演奏」。それは、その演奏の根拠となるアルゴリズムさえもほぼブラックボックスだ。Max/MSPのパッチみたいに、中身を開いて調べることはできないのだから。

 符号化されたデータが、そのまま学習され、解釈され、出力される。もし「コンピューターによる自動作曲」の究極的なかたちがあるとすれば、それはWaveNetのそれではないかと思う。だとすれば、FlowMachinesの見せてくれた可能性は、当たり前の話だが、まだほんの一部でしかない。

 一切の記号化から逃れた音楽。WaveNetの吐き出す10秒ほどの短いクリップをそのように呼んでみよう。たとえ実際のそのクリップが、調性感覚に溢れる保守的な音楽に聴こえたとしても。

 すると、奇妙にもそれは、20世紀を通じてある種の音楽家たちが熱狂的に追求しようとした音楽に、裏口から到達してしまっているように見える。あらゆる記号化からこぼれ落ちる音そのもの、楽譜に書けない音楽、楽譜の外側にある音楽。それはジョン・ケージが聴こうとした始まりもなければ終わりもない世界そのものの音楽であり、ピエール・シェフェールがテープの上で築こうとした具体音の音楽であり、クリスチャン・マークレーがレコードのスクラッチ・ノイズを通して可聴化しようとした録音物としての音楽であり… と、このリストはいくらでも続けることができる。

 深層学習によって生成されたサウンド・クリップがあっけらかんと明らかにしてしまったのは、あらゆるものが符号化(≠記号化)されアーカイヴされた次元においては、記号化そのものが不要である、という身も蓋もない事実だ。AIには、プリペアド・ピアノの夢を見る必要がない。 なぜならプリペアド・ピアノは、五線譜の上に、五線譜からはみ出す音を書き記すために生まれた発明だからだ。おそらくWaveNetはプリペアド・ピアノというものがどのような音を出すのか学ぶのにやぶさかではないだろうし、一度学習してしまえば、らくらくとプリペアド・ピアノ的な音を響かせてしまうことだろう。

 繰り返そう。AIは、ジョン・ケージのように、プリペアド・ピアノを夢見、発明する必要は特にない。調性があろうがなかろうが、楽音だろうがノイズだろうが、ロックだろうがジャズだろうが、ただ符号化さえしてくれればいい。作曲するには符号があれば良いのだ。極端な話、そうなのだ。ただ人間との協働が必要なときにだけ、記号を勉強してもらわないと困るんだけれど。

 恐らくAIは、耳当たりのよいポップスから暴力的なハーシュ・ノイズまで、学習さえすればいくらでもつくってくれるようになるだろう。しかしそれがいくらコンサバで、死ぬほど退屈であったとしても、その音は人間たちによる音楽の記号化をめぐるさまざまな格闘とは無縁の彼岸から響いてくることになる可能性は、かなり高い。

 ……「んなことぐだぐだごたく並べてるけど、聴いている分には楽しかったら構わないじゃん」って? いやまったくその通りで、個人的にはシンギュラリティってそういう感じだと思うんですよね。理解を絶した凄まじい世界がやってくるのではなく、「なんか便利になったな~」ってみんな普通に暮らしてるんだけど、その暮らしを支えている原理は字義通り人智を超えたAIなの。むしろそれまでが大変だ。FlowMachinesみたいなのが大事なのは、AIと人間の付き合い方をきちんとデザインしてくれているところですよね。 そうじゃないとがんがん軋轢が生まれちゃいそう。こちらからは以上です