🚀 MusicGen - Melody - 1.5B
Audiocraftは、音楽生成のためのシンプルで制御可能なモデルであるMusicGenのコードとモデルを提供しています。MusicGenは、50Hzでサンプリングされた4つのコードブックを持つ32kHzのEnCodecトークナイザーを使って学習された単一ステージの自己回帰Transformerモデルです。MusicLMなどの既存の手法とは異なり、MusicGenは自己教師付きの意味表現を必要とせず、一度にすべての4つのコードブックを生成します。コードブック間に小さな遅延を導入することで、並列に予測できることを示し、1秒のオーディオにつきわずか50回の自己回帰ステップで済むようになります。
MusicGenは、Jade Copet, Felix Kreuk, Itai Gat, Tal Remez, David Kant, Gabriel Synnaeve, Yossi Adi, Alexandre DéfossezによるSimple and Controllable Music Generationで発表されました。
4つのチェックポイントが公開されています:
🚀 クイックスタート
自分でMusicGenを試してみましょう!
- MusicGenをローカルで実行することもできます:
- まず、
audiocraft
ライブラリをインストールします。
pip install git+https://github.com/facebookresearch/audiocraft.git
ffmpeg
がインストールされていることを確認します。
apt get install ffmpeg
- 次のPythonコードを実行します。
import torchaudio
from audiocraft.models import MusicGen
from audiocraft.data.audio import audio_write
model = MusicGen.get_pretrained('melody')
model.set_generation_params(duration=8)
descriptions = ['happy rock', 'energetic EDM', 'sad jazz']
melody, sr = torchaudio.load('./assets/bach.mp3')
wav = model.generate_with_chroma(descriptions, melody[None].expand(3, -1, -1), sr)
for idx, one_wav in enumerate(wav):
audio_write(f'{idx}', one_wav.cpu(), model.sample_rate, strategy="loudness")
✨ 主な機能
Audiocraftは、音楽生成のためのシンプルで制御可能なモデルであるMusicGenのコードとモデルを提供します。MusicGenは、単一ステージの自己回帰Transformerモデルで、既存の手法とは異なり、自己教師付きの意味表現を必要とせず、一度にすべての4つのコードブックを生成します。
📚 ドキュメント
モデルの詳細
属性 |
详情 |
開発組織 |
Meta AIのFAIRチーム |
モデルの日付 |
2023年4月から5月の間に学習されました。 |
モデルのバージョン |
これはモデルのバージョン1です。 |
モデルのタイプ |
MusicGenは、オーディオトークン化のためのEnCodecモデルと、音楽モデリングのためのTransformerアーキテクチャに基づく自己回帰言語モデルで構成されています。モデルには、300M、1.5B、3.3Bパラメータの異なるサイズがあり、テキストから音楽を生成するタスク用に学習されたモデルと、メロディに沿った音楽生成用に学習されたモデルの2つのバリエーションがあります。 |
詳細情報の論文またはリソース |
詳細情報は、論文Simple and Controllable Music Generationを参照してください。 |
引用情報 |
@misc{copet2023simple, title={Simple and Controllable Music Generation}, author={Jade Copet and Felix Kreuk and Itai Gat and Tal Remez and David Kant and Gabriel Synnaeve and Yossi Adi and Alexandre Défossez}, year={2023}, eprint={2306.05284}, archivePrefix={arXiv}, primaryClass={cs.SD}} |
ライセンス |
コードはMITライセンスで公開され、モデルの重みはCC - BY - NC 4.0で公開されています。 |
モデルに関する質問やコメントの送信先 |
MusicGenに関する質問やコメントは、プロジェクトのGithubリポジトリを通じて、またはissueを開くことで送信できます。 |
意図された使用方法
主な意図された使用方法:MusicGenの主な用途は、AIに基づく音楽生成の研究です。これには以下が含まれます。
- 生成モデルの限界を調査し、より深く理解して、科学の現状をさらに改善するための研究活動
- 機械学習の愛好家が、生成AIモデルの現在の能力を理解するための、テキストまたはメロディに沿った音楽の生成
主な意図されたユーザー:このモデルの主な意図されたユーザーは、オーディオ、機械学習、人工知能の研究者、およびこれらのモデルをより深く理解しようとする愛好家です。
想定外の使用例:このモデルは、さらなるリスク評価と軽減策を行わずに下流のアプリケーションで使用してはいけません。また、人々に敵対的または疎外感を与える音楽作品を意図的に作成または拡散するために使用してはいけません。これには、人々が不快、苦痛、または不快感を感じると予想される音楽の生成や、歴史的または現在のステレオタイプを広めるコンテンツの生成が含まれます。
評価指標
モデルの性能評価指標:標準的な音楽ベンチマークでモデルを評価するために、以下の客観的な指標を使用しました。
- 事前学習されたオーディオ分類器(VGGish)から抽出された特徴量に対して計算されたFrechet Audio Distance
- 事前学習されたオーディオ分類器(PaSST)から抽出されたラベル分布のKullback - Leibler Divergence
- 事前学習されたCLAPモデルから抽出されたオーディオ埋め込みとテキスト埋め込みの間のCLAPスコア
さらに、人間の参加者を対象に定性的な調査を行い、以下の軸でモデルの性能を評価しました。
- 音楽サンプルの全体的な品質
- 提供されたテキスト入力に対するテキストの関連性
- メロディに沿った音楽生成におけるメロディの忠実度
性能評価指標と人間による調査の詳細は、論文に記載されています。
決定閾値:該当しません。
評価データセット
モデルは、MusicCapsベンチマークと、学習セットとアーティストが重複しないドメイン内のホールドアウト評価セットで評価されました。
学習データセット
モデルは、以下のソースからのライセンス付きデータで学習されました:Meta Music Initiative Sound Collection、Shutterstock music collection、Pond5 music collection。学習セットと対応する前処理の詳細については、論文を参照してください。
評価結果
公開されたモデルを使用してMusicCapsで得られた客観的な指標を以下に示します。公開されたモデルについては、すべてのデータセットを最先端の音楽ソース分離手法であるオープンソースのHybrid Transformer for Music Source Separation (HT - Demucs) で処理し、楽器部分のみを残しました。これが、論文で使用されたモデルと客観的な指標に差がある理由です。
モデル |
Frechet Audio Distance |
KLD |
テキストの一貫性 |
クロマコサイン類似度 |
facebook/musicgen-small |
4.88 |
1.42 |
0.27 |
- |
facebook/musicgen-medium |
5.14 |
1.38 |
0.28 |
- |
facebook/musicgen-large |
5.48 |
1.37 |
0.28 |
- |
facebook/musicgen-melody |
4.93 |
1.41 |
0.27 |
0.44 |
詳細情報は、論文Simple and Controllable Music Generationの結果セクションを参照してください。
制限とバイアス
データ:モデルを学習するために使用されるデータソースは、音楽専門家によって作成され、権利者との法的契約の対象となっています。モデルは20,000時間のデータで学習されており、より大きなデータセットでモデルを拡張することで、モデルの性能をさらに向上させることができると考えています。
軽減策:データソースからは、対応するタグを使用してボーカルを削除し、さらに最先端の音楽ソース分離手法であるオープンソースのHybrid Transformer for Music Source Separation (HT - Demucs) を使用しました。
制限:
- モデルは、リアルなボーカルを生成することができません。
- モデルは英語の説明で学習されており、他の言語では性能が低下します。
- モデルは、すべての音楽スタイルや文化に対して同等の性能を発揮しません。
- モデルは、時々曲の終わりを生成し、無音になってしまいます。
- どのようなタイプのテキスト説明が最良の生成結果をもたらすかを評価することは、時々困難です。満足のいく結果を得るためには、プロンプトエンジニアリングが必要になる場合があります。
バイアス:データのソースは多様性に欠ける可能性があり、すべての音楽文化がデータセットに均等に表されていません。モデルは、存在する幅広い音楽ジャンルに対して同等の性能を発揮しない可能性があります。モデルから生成されるサンプルは、学習データのバイアスを反映します。このモデルに関する今後の作業には、例えば学習データを多様で包括的なものに拡張することによって、文化のバランスの取れた公正な表現方法を含める必要があります。
リスクと害:モデルのバイアスと制限により、偏見があり、不適切または不快と見なされるサンプルが生成される可能性があります。研究を再現し、新しいモデルを学習するためのコードを提供することで、新しくより代表的なデータへの応用範囲を広げることができると考えています。
使用例:ユーザーは、モデルのバイアス、制限、およびリスクを認識している必要があります。MusicGenは、制御可能な音楽生成に関する人工知能研究用に開発されたモデルです。そのため、リスクのさらなる調査と軽減策を行わずに下流のアプリケーションで使用してはいけません。
📄 ライセンス
コードはMITライセンスで公開され、モデルの重みはCC - BY - NC 4.0で公開されています。