コンテンツにスキップ
LinkedInX

音楽生成の仕組み

約10分

対象読者: AI音楽生成を使ったことがある方、「AIがどうやって音楽を作るのか」を知りたい方
前提知識: LLMとは? または 画像生成の仕組み を読んでいること

「ジャズ風の明るいピアノ曲を作って」と入力すると、モデルがその指示に沿った音声を生成できます。AI音楽生成は、音楽や音声に生成モデルを応用する技術です。MusicGen は、テキスト条件付きで音楽を生成する公開研究の代表例です。[1] このページでは、AI音楽生成がどのように動いているのかを解説します。

音楽をAIが扱うための前提 — 音楽のデジタル表現

Section titled “音楽をAIが扱うための前提 — 音楽のデジタル表現”

AIが音楽を生成するには、まず音楽を「AIが処理できる形式」に変換する必要があります。

形式内容特徴
波形(Audio Waveform)音圧の時系列データ(MP3・WAV)最も表現力が高い。データ量が大きい
スペクトログラム時間×周波数の2次元マップ音の周波数成分を視覚化。画像処理技術が使える
MIDI音符・音量・タイミングの記号データデータが小さい。楽器を問わず演奏できる
音楽トークン音声をLLM向けのトークン列に変換テキスト生成技術を流用できる

現代の AI 音楽生成では、音声トークンを扱う方法や、音声表現に対して拡散モデル的に生成する方法が使われます。[1][4]

アプローチ1: トークンベース生成

Section titled “アプローチ1: トークンベース生成”

音楽を「トークン列」として扱う方法です。MusicGen はニューラルオーディオコーデックと自己回帰型言語モデルを使い、テキスト条件付きで音楽トークンを生成します。[1][2]

graph LR
    Text["「明るいジャズ、ピアノ、120BPM」"] --> TextEnc["テキストエンコーダー"]
    Audio["大量の音楽データ"] --> Codec["ニューラルオーディオコーデック\n(音声 → トークン列)"]
    TextEnc --> LM["言語モデル(Transformer)\n音楽トークンを予測"]
    Codec --> LM
    LM --> Decode["トークン列 → 音声波形に変換"]
    Decode --> Music["完成した楽曲(MP3)"]

ニューラルオーディオコーデック(EnCodec など)が音声を圧縮されたトークン列に変換し、Transformer 型モデルがそのトークン列を次々と予測することで音楽を生成できます。[1][3]

アプローチ2: 拡散モデルベース生成

Section titled “アプローチ2: 拡散モデルベース生成”

画像生成の拡散モデルと同様の考え方で、スペクトログラムや潜在音声表現に対してノイズ除去を行います。[4]

graph LR
    Text["テキストプロンプト"] --> CLIP["テキストエンコーダー"]
    Noise["ランダムノイズ\n(スペクトログラム形式)"] --> Diff["拡散モデル\nノイズを除去"]
    CLIP --> Diff
    Diff --> Spec["生成されたスペクトログラム"]
    Spec --> Vocoder["ボコーダー\n(音声波形に変換)"]
    Vocoder --> Music["完成した楽曲"]

AI音楽生成ツールを比較するときの観点

Section titled “AI音楽生成ツールを比較するときの観点”

AI音楽生成サービス、MusicGen のような公開モデル、音声生成サービスなどは、入力形式、出力権利、レイテンシ、編集ワークフローが異なります。モデル名、出力上限、商業利用条件は更新されるため、生成音声を商用利用する前に公式ドキュメントと利用規約を確認します。[2]

観点確認する内容
出力形式インスト、ボーカル、効果音、音声、ステム
制御歌詞、ジャンル、BPM、調性、長さ、メロディ条件
権利商業利用、クレジット、声やスタイルの制限
ワークフローブラウザ、API、ローカルモデル、DAW連携

「歌声付きの楽曲生成」は、単に伴奏を生成するだけでなく、テキストの歌詞を「歌声」として音楽的に表現する技術です。

  1. 歌詞のテキストを音素(Phoneme)列に変換
  2. 音楽のリズム・メロディに合わせて音素のタイミングを調整
  3. 声のピッチ・音色を音楽コンテキストに合わせて生成

BPMや調性をプロンプトで指定すると、モデルをその方向に誘導できる場合があります。ただし、どの程度制御できるかはモデルとインターフェースによって変わります。

音楽生成モデルは「イントロ -> Aメロ -> サビ -> アウトロ」のような構造パターンを学習できます。ただし、長時間にわたる一貫性はモデル設計と出力長に左右されます。

ゲーム・Webサービス・ポッドキャストのBGMを、雰囲気やジャンルを指定して生成します。商用利用できるかどうかは、サービスの利用規約と生成物に付与される権利に依存します。

音楽家がメロディのアイデアを素早くデモ化する用途でも使われています。「こんな曲調にしたい」というイメージをAIで形にし、そこから人間が編曲・仕上げをするワークフローです。

ゲームの状況(戦闘中・穏やかな探索・ボス戦など)に応じた複数バリエーションの楽曲を大量生成する用途に適しています。

学習データの問題: AI音楽生成モデルは既存の楽曲から学習しており、学習データへの同意・報酬の問題が業界で議論されています。

生成楽曲の著作権・ライセンス: サービスによって利用規約が異なります。商業利用する場合は、必ず最新の利用規約を確認してください。

アーティストの声の模倣: 特定のアーティストの声や楽曲スタイルを模倣することは、一部の国で法的問題になる可能性があります。

  • AI音楽生成には「トークンベース生成」と「拡散モデル的な生成」などのアプローチがある
  • 音楽をニューラルコーデックでトークン化し、Transformer で次のトークンを予測することで音楽を生成
  • 製品名、出力上限、商業利用条件は公式情報で確認する
  • BGM自動生成・デモ制作・ゲームサウンドトラックなどで実用化が進んでいる
  • 著作権・学習データの問題は業界全体の課題として議論が続いている

Q: AIで作った曲は商業利用できますか?

A: サービス、プラン、利用規約によって異なります。商業利用する際は、使うサービスの最新の利用規約を確認してください。

Q: AIが生成した音楽はどこかで「AIっぽさ」を感じますか?

A: ジャンル、出力の長さ、モデルによって異なります。複雑な感情表現、即興演奏、長時間での一貫したスタイル維持は、評価時に確認すべきポイントです。

Q: 自分の好きなアーティストの曲調で新曲を作れますか?

A: 「ジャズ、ボサノバ風」「ジャンル: シティポップ、80年代風シンセ」のようにジャンル・楽器・雰囲気を指定することで近いスタイルを生成できます。ただし「〇〇アーティスト風」という直接的な指定は利用規約で制限されている場合があります。

Q: 音楽生成モデルをローカルで動かすにはどのくらいのPCスペックが必要ですか?

A: モデルサイズ、量子化、推論コード、ハードウェアによって変わります。使うモデルのリポジトリや公式ドキュメントで現在の要件を確認してください。[2]

  1. Jade Copet et al., Simple and Controllable Music Generation, 2023年6月8日
  2. Meta AudioCraft, MusicGen documentation
  3. Alexandre Défossez et al., High Fidelity Neural Audio Compression, 2022年10月24日
  4. Jonathan Ho et al., Denoising Diffusion Probabilistic Models, 2020年6月19日
クイズ