最新AI論文をキャッチアップ

【LP-MusicCaps】LLMを用いた音楽キャプションの自動生成

【LP-MusicCaps】LLMを用いた音楽キャプションの自動生成

Contrastive Learning

3つの要点
✔️ LLMを用いた自動音楽キャプション生成
✔️ 音楽-テキストのペアデータ不足を解消
✔️ 言語付き大規模音楽データセット「LP-MusicCaps」を作成

LP-MusicCaps: LLM-Based Pseudo Music Captioning
written by SeungHeon DohKeunwoo ChoiJongpil LeeJuhan Nam
(Submitted on 31 Jul 2023)
Comments: Accepted for publication at the 24th International Society for Music Information Retrieval Conference (ISMIR 2023)

Subjects: Sound (cs.SD); Information Retrieval (cs.IR); Multimedia (cs.MM); Audio and Speech Processing (eess.AS)

code:

本記事で使用している画像は論文中のもの、紹介スライドのもの、またはそれを参考に作成したものを使用しております。

本研究の概要

本研究では、音楽トラックに対する自動キャプションタスクを、大規模言語モデル(LLM)を用いて行う方法が提案されています。このような「音楽に対して自然言語のキャプションを生成する」というタスクを、音楽情報検索(MIR)において「音楽キャプション(Music Captioning)」と呼ばれています。

自動音楽キャプションは、与えられた音楽トラックに対して「自然言語による説明」を生成することを目的としています。これは、例えば「Eminem」の「Lose Yourself」であれば、「力強いメロディーに、凄まじいライミングのラップが印象的な曲」といった説明文を生成するイメージです。

まずは、本研究が行われた目的を理解するために、既存研究の問題点や「テキストからの音楽生成」の分野における課題を見ておきましょう。

「音楽・テキスト」のペアデータ不足が問題に

音楽キャプションの分野における既存研究は多数あり、「トラックレベルのキャプション」や「プレイリストレベルのキャプション」が提案されています。しかし、どの研究においても、「大規模な公開データセット不足」による精度の低下が課題でした。

また、そのようなデータ不足は、Text-to-Musicのモデルにおいても、生成される音楽の品質低下の原因にもなります。

本研究の目的

そのようなデータ不足を解消するために、本研究では、音楽キャプション生成にLLMを用いる手法が提案されました。そして、本研究の主な目的としては、LLMを用いて意味的・文法的に正確で、清潔かつ豊かな語彙を持つキャプションを生成し、データ不足を解消することです。

具体的には、以下の手順です。

  1. LLMによる疑似ラベリングを用いた大規模データセット「LP-MusicCaps」を作成
  2. Transformerベースの音楽キャプションモデルを、上記データセットで訓練
  3. ゼロショットと転移学習で評価

まずは、音楽・テキストの大規模ペアデータセット「LP-MusicCaps」の概要を見ていきましょう。

LP-MusicCapsの概要

このデータセットは、LLMを使用して、既存の音楽・テキストのペアデータセットから、新たな音楽・テキストペアを生成することで構築されています。

使用された既存のデータセットには、以下の3つが含まれます。

既存のデータセット 内容
MusicCaps(MC) 5521の音楽データが含まれており、それぞれ音楽専門家によって「タグ付け」と「長い説明文によるラベリング」がされている
Magnatune(MTT) 26kの音楽クリップが含まれており、それぞれがジャンル、楽器、ボーカル、気分、知覚的テンポ、起源、音響特性などの特徴でタグ付けされている
Million Song Dataset (MSD) 0.52万の30秒間のクリップと1054のタグ語彙が含まれており、ジャンル、スタイル、楽器、ボーカル、気分、テーマ、文化などでタグ付けされている

各データセットには、1つの音楽に対して、複数のタグが含まれています。例えば、以下の図の下部「Example of aspect lists」のように。

出典:https://arxiv.org/abs/2301.11325

これはMusicCapsの例です。

これらのタグを疑似ラベリングに利用し、テキストデータの量を増やすことで、ペアデータのサイズを増大したのです。そして、各データセットにおいて、音楽データごとに平均して10.7、3.3、10.2のタグが、擬似キャプション生成のために使用されています。

そして、最終的には以下の3つの出来上がりました。

 新規データセット 内容 
 LP-MusicCaps-MC  MCのタグを利用した疑似ラベリングにより作成。6kの音楽データに対して、22kのテキスト
 LP-MusicCaps-MTT  MTTのタグを利用した疑似ラベリングにより作成。22kの音楽データに対して、88kのテキスト
 LP-MusicCaps-MSD  MSDのタグを利用した疑似ラベリングにより作成。0.5Mの音楽データに対して、2.2Mのテキスト

ちなみに以下の表では、上記のデータセットを含めた、音楽・音声分野における各データセットの比較ができます。

LP-MusicCapsの3つのデータセットを合わせれば、0.5Mの音楽データと2.2Mのテキストデータを得ることになります。ちなみに、この表の「C/A」は音楽データ1つに対する、テキストデータの量を表します。

次に、これらのデータセット作成に一役を買った「疑似ラベリング手法」について、詳しく見ていきましょう。

LLMを用いた疑似ラベリング手法

LLMを用いた疑似ラベリングのポイントは、以下の通りです。

  • 既存の音楽タグ付けデータセットの「タグデータ」を利用
  • タスク指示を追加
  • LLMに「タグデータ」と「タスク指示文」をプロンプトとして入力
  • LLMにはGPT-3.5 Turboを利用

まず、「既存のタグデータ」と「タスク指示文」をプロンプトとして、GPT-3.5 Turboに入力します。ここでのタスク指示文は、例えば、「この曲を説明して」や「この曲の内容を要約して」などの、LLMに対する典型的なタスク指示が含まれます。

この過程は、以下の図の通りです。

このようにして、疑似テキストラベルが生成し、新たにデータセットに加えることで、大規模なデータセットが作成されました。

ここで、この「GPT-3.5 Turbo」は、事前に大規模データと、膨大な計算能力によって事前学習されています。さらに、指示が与えられるたびに、人間のフィードバックによる強化学習(RLHF)によって微調整されるため、非常に強力です。

タスク指示文(プロンプト)の設計方法

GPT-3.5 Turboにプロンプトとして入力するタスク指示文の内容には、以下の4つのタスクが含まれます。

  • Writing(記述)
  • Summary(要約)
  • Paraphrase(言い換え)
  • Attribute Prediction(属性予測)

また、各タスク指示文の実際のプロンプトは、それぞれ以下のフォーマットに統一されています。

Writing: Write a song description sentence including the following attributes. {input tags} 

Summary: Write a single sentence that summarizes a song with the following attributes. Don’t write the artist name or album name. {input tags}

Paraphrase: Write a song description sentence including the following attributes. Creative paraphrasing is acceptable. {input tags} 

Attribute Prediction: Write the answer as a Python dictionary with new_attribute and description as keys. For new_attribute, write new attributes that show high cooccurrence with the following attributes. For description, write a song description sentence including the following attributes and new attributes. {input tags} 

そのため、それぞれのタスク指示文の最後に「タグ」を追加した文章が、GPT-3.5 Turboにプロンプトとして入力されるのです。このようにして生成された文章の例は、以下の通りです。

これは、MusicCapsに対して疑似ラベリングを適用した例です。一番上の「Input tags」はMusicCapsに含まれるタグリストであり、一番下の「Ground Truth」はMusicCapsに含まれる長い説明文です。

このようにして、音楽とテキストの大規模なペアデータセットである「LP-MusicCaps」の、疑似テキストが作成されました。次のセクションでは、このデータセットのキャプションの有効性を評価する方法や、その結果について詳しく解説します。

LP-MusicCapsのキャプションの客観的な評価

評価のためのデータセット

LP-MusicCapsの評価には、Googleの研究で作られた「MusicCapsデータセット」を使用して行われました。このデータセットは、以下の3つの構成要素で成り立っています。

  • 音楽データ
  • タグリスト
  • 長い説明文(専門家によって書かれた)

これらの3要素1セットを1データとすると、5.5Kのデータが含まれてます。ちなみに、1つの音楽データに対して、タグリストと長い説明文が1つずつあります。

また、この長い説明文は、キャプションの正解データ(正解キャプション)として、利用されています。

評価指標

生成されたキャプションと正解キャプションの類似度を、以下のような客観的な指標を用いて測ることで、データセットを評価しています。

指標 意味
BLEU1, BLEU2, BLEU3, BLEU4

生成されたキャプションと正解キャプションの間のn-gramの重複を測定。BLEU1は1-gram、BLEU2は2-gram、というようにn-gramのサイズに応じて異なります。

METEOR  n-gramの重複に基づいており、単語アライメントを考慮して精度とリコールを測定
ROUGE-L 生成されたキャプションと正解キャプションの間の最長共通部分列を測定
BERT-S

生成されたキャプションと正解キャプション間の、BERT埋め込みの類似性を計算。同義語や言い換え、単語順の変化により頑健であり、n-gramメトリクスよりも「キャプション間の意味的類似性」をよりよく捉える。 

加えて、生成されたキャプションの多様性も評価され、キャプション中の「異なる単語の数」と「新しい語彙の割合」が測定されました。

結果

上記の客観的指標に基づく、データセットの評価の結果は、以下の通りです。

上記の結果を見ると、LP-MusicCapsの「Writing」と「Summary」のタスク指示文によって生成されたキャプションが、多くの指標で最もスコアが良いです。

音楽キャプション生成モデル

音楽キャプション生成モデルでは、TransformerベースのクロスモーダルEncoder-Decoderが利用されており、その構造は以下の図の通りです。

このモデルは、ログメルスペクトログラム画像を入力として、畳み込み層を経て、Transformerブロックによって処理されます。Decoderでは、Encoderの出力をクロスモーダルアテンションレイヤーを通し、音楽とテキストとの組み合わせを考慮して、テキストの次文予測が行われます。

また、このモデルは、先述のLP-MusicCapsで学習されています。

LP-MusicCapsの評価指標と同じものを用いて、本モデルも評価されています。その結果は以下の通りです。

数多くの指標で優れたスコアを出していることから、その有効性がうかがえます。

本研究のまとめ

提案された擬似キャプション生成アプローチは、音楽キャプション生成におけるデータ不足の問題を解決するために開発されました。このアプローチは、LLMを使用してタグから擬似キャプションを生成するものです。

さらに、自動音楽キャプション生成の精度を高めるために、LP-MusicCapsデータセットをあらかじめ作成した点も、大きな功績といえるでしょう。そして、このデータセットを使用して音楽キャプションモデルを学習することで、モデルの汎化性能の向上が確認されています。

また、これらのデータセットや音楽キャプション生成モデルは、GitHubやHugging Faceで公開されており、オープンソースとして誰でも利用できます。

LP-MusicCapsデータセットのHugging Faceページ

音楽キャプション生成モデルのGitHubページ

そのため、これらを利用することで、音楽・テキストのデータセット収集にかかるコストと時間を削減し、音楽と言語を結びつける研究の、さらなる促進が期待できるでしょう。

記事の内容等について改善箇所などございましたら、
お問い合わせフォームよりAI-SCHOLAR編集部の方にご連絡を頂けますと幸いです。
どうぞよろしくお願いします。

お問い合わせする