<<
2310.13289v2.pdf
---
## Page 1
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p001.png)
### 和訳
# SALMONN:大規模言語モデルに「聞く力」つけたろう、って話
Changli Tang1∗, Wenyi Yu1∗, Guangzhi Sun1, Xianzhao Chen2, Tian Tan2
Wei Li2, Lu Lu2, Zejun Ma2, Chao Zhang1†
清華大学 電子工学科1
ByteDance2
## 概要
なあ聞いてや、「聞こえる」ってことは、現実世界で動くAIにとってめっちゃ大事な能力やねん。ここで言う「聞こえる」っちゅうのは、普通の音を聞き取って理解する力のことで、少なくとも3種類の音――つまり**人の声**、**周りの音(環境音とか効果音みたいなやつ)**、ほんで**音楽**――を扱えなあかんねん。
この論文ではな、**SALMONN**っちゅうモデルを提案してんねん。正式名称は「Speech Audio Language Music Open Neural Network」で、ようするに音声・音・言語・音楽をぜーんぶまとめて扱えるオープンなニューラルネットワークや。仕組みとしては、もともとテキストベースで学習済みの大規模言語モデル(LLM)に、音声エンコーダと音響エンコーダをくっつけて、一個のマルチモーダルモデルに統合してんねん。
これによってLLMが音声データを直接処理・理解できるようになって、学習で使ったいろんなタスク――たとえば**自動音声認識**とか**翻訳**、**音の情報に基づく質問応答**、**感情認識**、**話者照合**(誰がしゃべってるか当てるやつ)、**音楽や音のキャプション生成**とか――でなかなかええ性能を出せるようになったんや。
ほんで、ここからがほんまにおもろいとこやねんけど、SALMONNには**学習では見たことないのに勝手にできるようになった能力(創発能力)**がいろいろあんねん。たとえば、学習してない言語への音声翻訳、音声ベースのスロットフィリング(会話から必要な情報を抜き出すやつ)、しゃべって質問したら答えてくれる質問応答、音からお話を作るストーリーテリング、それから音声と音を同時に推論するタスクとかな。こういうモーダルをまたいだ創発能力がなんで出てくるんかも調べてて、さらに**few-shot activation tuning**っちゅう新しい手法を提案して、そういう能力をうまく引き出せるようにしてんねん。
ワイらが知る限り、SALMONNはこの手のモデルとしては世界初で、**汎用的な「聞く力」を持つAI**への一歩やと思ってもろたらええわ。ソースコード、モデルのチェックポイント、データは https://github.com/bytedance/SALMONN で公開してるで。
## 1 はじめに
テキストベースの大規模言語モデル(LLM)はな、いろんな自然言語処理(NLP)タスクでめっちゃすごい――もう人間レベルって言うてええくらいの――性能を見せてきたんや。それと同時に、**指示チューニング(instruction tuning)**っちゅう学習のやり方が出てきてん。これはなにかっていうと、ユーザーの指示(プロンプト)とそれに対する模範回答をペアにしたデータで学習させる方法で、これによってLLMが自由形式のユーザーの指示に従えるようになんねん。
ほんで最近、LLMにマルチモーダルな知覚能力――つまりテキスト以外のものも分かるようにする研究がめっちゃ盛り上がってきてんねん。最近の研究では、LLMに別の入力タイプのエンコーダをくっつけるアプローチが主流で、たとえば**画像**、**無音動画**、**環境音(オーディオイベント)**、**音声**のどれか一つをつなげるか、あるいは**複数の入力タイプのエンコーダをまとめてつなげる**か、っちゅう感じや。エンコーダの出力空間をLLMの入力空間に合わせるために、接続モジュールとかLLMアダプタっちゅうのを使って、クロスモーダルな事前学習と指示チューニングで訓練するんやな。
この論文ではSALMONN(Speech Audio Language Music Open Neural Network)を提案してんねん。これは一個の音声-テキストマルチモーダルLLMで、**人の声**、**環境音**、**音楽**っちゅう3つの基本的な音の種類を知覚・理解できるモデルや。音声タスクと非音声の音響タスクの両方で性能を上げるために、SALMONNは**デュアルエンコーダ構造**を採用してんねん。具体的には、Whisper音声モデルから持ってきた**音声エンコーダ**と、**BEATs音響エンコーダ**の二つを組み合わせてるんや。
---
## Page 2
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p002.png)
### 和訳
ICLR 2024の学会論文として発表
ウィンドウレベルのクエリTransformer(Q-Former)(Li et al., 2023a)っていうのを接続モジュールとして使ってんねんけど、これが何するかっていうと、エンコーダから出てくる長さがバラバラの出力をうまいこと変換して、Vicunaっていう大規模言語モデル(LLM)(Chiang et al., 2023)に入れるための「拡張オーディオトークン」を作るんや。しかもこの数も可変やから柔軟やねん。これで音声とテキストの対応づけを、めっちゃ細かい時間の精度でできるようになるわけや。さらにLoRA(低ランク適応)っていう手法(Hu et al., 2022)をVicunaに適用して、クロスモーダル(異なるデータ形式をまたぐ)のアダプタとして使うことで、Vicunaの拡張された入力空間と出力空間をうまく揃えて、性能をさらにアップさせてんねん。クロスモーダルの事前学習と指示チューニングの段階では、音声・環境音・音楽に関するいろんなタスクを使ってウィンドウレベルQ-FormerとLoRAを鍛えるんやけど、こうしてできたマルチモーダルLLMには問題があってな。指示チューニングで使った特定のタスク、特に音声認識とか音声キャプション生成に偏りすぎてしまって、クロスモーダルの「創発能力」がほとんど出てこーへんねん。これを俺らは**タスク過学習問題**って呼んでるわけや。ここでいうクロスモーダル創発能力っていうのは、学習時に見たことない異種モーダルにまたがるタスクをこなせる力のことで、要はLLMがもともと持ってる創発能力(Wei et al., 2022b)が指示チューニングの過程で失われてしまうっちゅうことやねん。その解決策として、俺らは**少数ショットの活性化チューニング**っていう追加ステージを提案して、SALMONNがLLMの創発能力を取り戻せるようにして、学習済みタスクに対する壊滅的忘却もかなり軽減できるようにしたんや。
SALMONNの「認知的聴覚能力」を評価するために、音声・環境音イベント・音楽に関する幅広いベンチマークを使ってるで。タスクは3つのレベルに分かれてんねん。第1レベルは指示チューニングで学習済みの8タスク、例えば音声認識・翻訳・音声キャプション生成とかやな。残りの2レベルは未学習のタスクを評価するもんや。第2レベルには、学習してない言語への翻訳とかスロット埋めみたいな、音声ベースの自然言語処理タスクが5つ入ってて、これには多言語で高品質な音声とテキストの対応づけが必要になるんや。最後の第3レベルのタスクは、音声ベースのストーリーテリングとか音声・環境音の複合推論とかで、単に話し言葉を理解するだけやなくて、話し言葉以外の聴覚情報もちゃんとわからなあかんねん。実験結果を見ると、SALMONNは1つのモデルだけでこれら全部のタスクをこなせて、標準ベンチマークでも競争力のある性能を出してるんや。これは何を意味するかっていうと、音声・環境音イベント・音楽が混ざった一般的な音声入力を「聞いて」理解できるAIを作るのは、ほんまに実現可能やっていうことやねん。
この論文の主な貢献をまとめるとこうなるで。
• 俺らの知る限り初めて、音声・環境音イベント・音楽を含む一般的なオーディオ入力を知覚・理解できるマルチモーダルLLMとして**SALMONN**を提案したで。
• LoRAのスケーリング係数をいじることでクロスモーダル創発能力の存在を調べて、追加の学習ステージとして使える低コストな**活性化チューニング手法**を提案したんや。これでクロスモーダル創発能力を呼び覚ますと同時に、学習済みタスクに対する壊滅的忘却も軽減できるで。
• SALMONNを汎用的な聴覚能力の度合いを反映する様々なタスクで評価して、さらに**音声ベースストーリーテリング**と**音声・環境音複合推論**っていう2つの新しいタスクも提案したで。
## 2 関連研究
LLMっていうのはテキストベースの対話モデルやから、音声とは根本的なつながりがあるわけやんな。ほんで、LLMに直接音声入力を受け付けられるように接続モジュールを付けようっていう研究がいくつか出てきてん(Chen et al., 2023a; Wu et al., 2023; Fathullah et al., 2023; Yu et al., 2023; Huang et al., 2023a)。長い音声を入力すると音声トークンの列がめっちゃ長くなってLLMが大変なことになるんで、フレームレートを落とすいろんな方法が開発されとる。具体的には、スタッキングベースの固定レート削減(Fathullah et al., 2023; Yu et al., 2023)、音声認識ベースの可変フレームレート削減(Wu et al., 2023; Chen et al., 2023a)、出力フレーム数を固定するQ-Formerベースのアプローチ(Yu et al., 2023)とかがあるんや。LLMベースの音声合成も考慮に入れると、LLMの出力空間にも音声トークンを追加できるわけで、SpeechGPT(Zhang et al., 2023a)やAudioPaLM(Rubenstein et al., 2023)なんかがそれやな。
音声とは違って、環境音イベントの入力は固定サイズのスペクトログラム画像として扱われることが多くて、時間的な相関を明示的にモデル化せんでも視覚言語LLMの手法で処理できるんや(Gong et al., 2023a;b; Zhang et al., 2023b)。せやけどこの方法やと音声は扱えへんねん。Lyu et al.(2023)はWhisperモデルの音声エンコーダを使ってるけど、対応してるのは環境音イベントだけで、音声と環境音を一緒にモデル化するのがどんだけ難しいかがわかるわな。LLMを使わへん方法としては、Narisetty et al.(2022)が同じモデルで音声認識と音声キャプション生成を別々にこなす研究をしとる。音楽入力に関しては、Liu et al.(2023)がMERTっていう音楽エンコーダ(Li et al., 2023b)をLLMと統合して音楽理解タスクに使ってるで。AudioGPTはテキストベースのLLMが音声・環境音イベント・音楽を処理できるように、他のモデルと連携させる仕組みを取ってるんや。
---
## Page 3
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p003.png)
### 和訳
ICLR 2024の学会論文として発表
AudioGPTは事前に決めたタスクをパイプラインで順番にこなしていく仕組みやねん(Huang et al., 2023b)。それに比べてSALMONNは、エンドツーエンド、つまり入力から出力まで一気通貫で処理できるモデルで、しかも異なるモダリティ(種類の違うデータ)をまたいで、決まったお題だけやなくて自由なタスクにも対応できる「創発的な能力」を持ってるんよ。めっちゃすごいやろ。
音声以外にも、マルチモーダルLLM(いろんな種類のデータを扱える大規模言語モデル)は、画像(Zhu et al., 2023; Li et al., 2023a)、動画(Maaz et al., 2023; Chen et al., 2023b)、それから音声と映像の両方を組み合わせたやつ(Su et al., 2023; Lyu et al., 2023; Sun et al., 2023)みたいな視覚系のモダリティでもめっちゃ研究されとるんよ。こういうモデルでは、異なるモダリティ同士をうまく揃える(アラインメントする)ために、全結合層かアテンションベースのモジュールが使われることが多いねん。特に、SALMONNが使ってるQ-Formerっていう構造(Li et al., 2023a)は、MiniGPT-4(Zhu et al., 2023)やInstructBLIP(Dai et al., 2023)、Video-LLaMA(Zhang et al., 2023b)みたいな視覚系のモデルでもよう使われとる定番の仕組みやで。
## 3 手法(METHODOLOGY)
SALMONNのモデル構造はセクション3.1で紹介するで。学習方法はセクション3.2で説明するんやけど、これには事前学習とファインチューニング(微調整)の段階に加えて、タスクに過学習してまう問題を解決するために提案された「アクティベーション・チューニング」っていう段階も含まれとるんよ。
### 3.1 モデル構造(MODEL ARCHITECTURE)
SALMONNのモデル構造は図1に示してあるで。2つの補い合う聴覚エンコーダの出力特徴量を同期させて結合するねん。接続モジュールにはQ-Formerを使ってて、これをフレーム単位で適用するんよ。その出力系列をテキストの指示プロンプトと統合して、LoRAアダプタ付きのLLMに突っ込んで、テキストの応答を生成するっていう流れやな。
**デュアル聴覚エンコーダ(2つの耳みたいなもんや):** OpenAIのWhisperモデル(Radford et al., 2023)から取った音声エンコーダと、音声以外の音を扱うBEATSオーディオエンコーダ(Chen et al., 2023c)の2つを使うねん。Whisperは大量の弱教師ありデータ(ざっくりラベル付けされたデータ)を使って音声認識と翻訳の訓練をしてるから、そのエンコーダの出力特徴量は音声のモデリングに向いてるし、背景ノイズの情報もちゃんと含んでるんよ(Gong et al., 2023a)。一方のBEATSは、反復的な自己教師あり学習っていう方法で、音声以外の音の高レベルな意味情報を抽出するように訓練されてるねん。具体的には、入力の音をまずトークン化(細かい単位に分割)してから、一部を隠して予測させるっていう訓練をするんよ。トークナイザ(分割器)は、音のトークンが持つ意味的な知識を蒸留して更新されるんや(Chen et al., 2023c)。せやから、この2つのエンコーダから出てくる聴覚特徴量は互いに補完し合ってて、音声と非音声の両方が含まれる一般的な音声入力にぴったりなんよ。
2つのエンコーダは同じ出力フレームレート50Hzやから、結合した出力特徴量はこうなるで:
Z = Concat(Encoder_whisper(X), Encoder_beats(X)) (1)
ここでXは長さが変わる一般的な音声入力の系列、Encoder_whisper(·)とEncoder_beats(·)はそれぞれWhisperとBEATSのエンコーダ、Concat(·)はフレームごとに特徴量の次元方向でくっつける操作、Zは結合されたエンコーダ出力系列でTフレーム分あるで。
**ウィンドウレベルQ-Former:** Q-Formerっていう構造は、普通は画像エンコーダの出力をLLMに入れるための固定数のテキストトークンに変換するのに使われるんやけど(Li et al., 2023a)、音声みたいに長さがコロコロ変わる入力を扱うにはちょっと改造せなあかんねん。具体的に言うと、入力画像lのエンコーダ出力をZlとしたとき、Q-Formerは固定数Nの学習可能なクエリQを使って、ZlをN個のテキストトークンHlに変換するんよ。これはQ-Formerブロックを何層か積み重ねてやるねん。Q-Formerブロックっていうのは、Transformerのデコーダブロック(Vaswani et al., 2017)に似てるんやけど、最初のブロックで固定数の学習可能な静的クエリQを使うことと、セルフアテンション層から因果マスク(未来の情報を見えなくするマスク)を外してるところが違うねん。こうすることで、Q内のクエリ同士がまずセルフアテンション層でお互いを参照し合って、その後にクロスアテンション層でZlとやり取りできるようになるんよ。
ほんで、長さが変わる一般的な音声入力Z = [Zt](t=1からT)について、ZをLサイズのウィンドウに分割して、最後のウィンドウはゼロでパディング(ゼロ埋め)するねん。そうすると[{Zt}(t=(l-1)×L+1からl×L)](l=1から⌈T/L⌉)になるんやけど、系列全体にQ-FormerをかけてまるごとのZをN個のテキストトークンに変換するんやなくて、SALMONNではウィンドウ単位でQ-Formerをかけるねん。各ウィンドウ内に積み重なったエンコーダ出力フレームを、あたかも1枚の画像みたいに扱うわけや。その結果、テキストトークン系列Hはこうなるで:
[Hl](l=1から⌈T/L⌉)= [Q-Former(Q, Zl)](l=1から⌈T/L⌉) (2)
ここでQ-Former(·)はQ-Formerの関数で、Hは⌈T/L⌉ × N個のテキストトークンを持つことになるんよ。このウィンドウレベルQ-Formerは、テキストトークンの数が可変やから、長さの変わる音声入力に対してもっと効率的に対応できるんやな。
---
## Page 4
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p004.png)
### 和訳
ICLR 2024の学会論文として発表されたで
**図1:SALMONNのモデル構造やねん。** ウィンドウレベルQ-Formerっていう接続モジュールを使って、Whisperっていう音声エンコーダとBEATsっていうオーディオエンコーダの出力をガッチャンコして、「拡張オーディオトークン」っちゅうもんにするんやな。ほんでそれを大規模言語モデル(LLM)の入力空間にうまく合わせるわけや。LoRAアダプタっていうのが、この拡張されたLLMの入力空間と出力空間の橋渡しをしてくれるねん。テキストのプロンプト(指示文みたいなもんやな)を使って、SALMONNに「この音声について自由に質問答えてや」って指示するんやけど、答えはLLMがテキストで返してくれるっちゅう仕組みや。トレーニングのときは、LLMとエンコーダは凍結(パラメータいじらん状態)にしといて、それ以外のパーツだけ更新できるようにしてるで。
系列データについてやけど、さらにHはZと単調アラインメント(順番通りに対応づけること)になるように制約かけてるねん。これがめっちゃ大事で、なんでかっていうと音声認識には時間方向の解像度がしっかりしてないとあかんからやねん。
**LLMとLoRAについて:** この研究では事前学習済みのVicunaっていうLLMを使ってるねん(Chiangら、2023)。これはLLaMAっていうLLM(Touvronら、2023)を指示に従えるようにファインチューニングしたもんやな。LoRA(Huら、2022)っていうのは、LLMを効率よく微調整するための手法として広く使われてるやつで、SALMONNではVicunaの自己注意層(セルフアテンション層)の中のクエリと値の重み行列を調整するために使ってるねん。ここがポイントやけど、LoRAは学習可能やけどVicuna自体は凍結して動かさんのや。
### 3.2 トレーニング方法
ここではSALMONNの3段階クロスモーダル(異なる種類の情報をまたぐ)トレーニング方法を紹介するで。最近のビジュアルLLM(Daiら、2023; Zhangら、2023b)で使われてる事前学習とインストラクションチューニングの2段階に加えて、もう1段階「アクティベーションチューニング」っていう新しいステージを提案してるねん。これ何のためかっていうと、インストラクションチューニングのときに音声認識と音声キャプション生成のタスクに過学習(そればっかり得意になってまうやつ)してまう問題を解決するためやねん。
**事前学習ステージ:** 事前学習済みのパラメータ(LLMとエンコーダ)とランダム初期化されたパラメータ(接続モジュールとアダプタ)の間のギャップを埋めるために、めっちゃ大量の音声認識データとオーディオキャプションデータを使ってウィンドウレベルQ-FormerとLoRAを事前学習するねん。この2つのタスクには音声の内容とか音声以外の音イベントについての重要な聴覚情報が含まれてて、しかも複雑な推論とか理解は要らんから、SALMONNが聴覚情報とテキスト情報の質の高いアラインメント(対応づけ)を学ぶのにちょうどええねん。
**インストラクションチューニングステージ:** NLP(Weiら、2022a)やビジュアル言語(Daiら、2023)と同じように、音声・オーディオイベント・音楽に関する教師ありタスクのリスト(セクション4.2と表1に載ってるで)を使った音声テキストインストラクションチューニングが、SALMONNトレーニングの第2段階として使われるねん。タスクの選び方は、重要度(例えば音声認識やオーディオキャプション生成)と、テストのときにその能力がないと困るかどうか(例えば重なり合った音声の認識、音素認識、音楽キャプション生成とか)で決めてるんやな。インストラクションのプロンプトは、音声データとペアになってるテキストをもとに生成してるで。
**タスク過学習の問題:** 最初の2段階だけで作ったSALMONNでも、インストラクションチューニングで訓練したタスクではなかなかの結果出せるんやけど、訓練してないクロスモーダルタスク、特にクロスモーダルな共同推論が必要なタスクになると、ほとんど能力を発揮できへんねん。具体的に何が起こるかっていうと、指示プロンプトをガン無視して、まるでトレーニングでよく見たタスク(例えば音声認識とか)の指示を受け取ったかのような的外れな応答を返してまうことがあるんや。
4
Whisperエンコーダ ❄ BEATsエンコーダ ❄ ウィンドウレベルQ-Former 🔥大規模言語モデルテキスト指示プロンプトテキスト応答Q-Formerクエリ群Whisper特徴量BEATs特徴量聴覚エンベディングテキストエンベディングLoRA❄/🔥 凍結/学習可能❄🔥
---
## Page 5
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p005.png)
### 和訳
ICLR 2024の学会論文として発表
認識)。この現象のこと、ワイらは**タスク過学習**って呼んどるねん。理論的な分析はここで説明するけど、詳しい実験の検証は5.3節と5.4節で見てな。
このタスク過学習がなんで起こるかっていうと、理由は2つあんねん。まず1つ目、LLMの学習で使うテキストだけのデータと比べると、クロスモーダル(音声とテキストをまたぐ)指示チューニングで使う指示プロンプトはもっとシンプルなやつしか使ってへんし(Wei et al., 2022a)、出てくる応答もそんなに複雑でも多様でもないわけ。ほんで2つ目、指示チューニングに含まれるタスクの中でも、特に音声認識と音声キャプション生成は、音声や音の質問応答みたいな他のタスクに比べて、出力がめっちゃ決まりきったもんになりがちやねん。この2つの理由が合わさることで、モデルの中にある条件付き言語モデル(LM)が、汎化能力のショボい歪んだ分布に偏ってまうわけや。そうなると、SALMONNが学習してないクロスモーダルタスクをこなせへんようになるんよ。もうちょい具体的に言うと、テスト時に新しい指示プロンプトIを使ってテスト入力Xに対する応答テキスト系列Ŷを生成するとき、Ŷ = arg maxY PΛ(Y|X, I) で生成するやん。これは学習時に最大化する目的関数と同じやねんけど。ベイズの定理使うと、こうなるんよ:
PΛ(Y|X, I) = PΛ(Y|X) · PΛ(I|Y, X) / PΛ(I|X). (3)
SALMONNの学習で見るテキスト応答が限られてるから、内部の条件付きLM PΛ(Y|X) が、入力Xとめっちゃ強く対応するY系列に偏ってまうねん。例えば自動音声認識(ASR)とか自動音声キャプション生成(AAC)の書き起こし、特に短くてシンプルなやつにな。式(3)から分かるように、そうなると、もっと多様な応答を求めるゼロショット指示I′に対して PΛ(Y|X, I′) が小さくなってまうんよ。
**活性化チューニング段階**:タスク過学習を和らげるのにめっちゃ効くアプローチは、内部の条件付きLM PΛ(Y|X) を正則化することやねん。簡単なやり方としては、もっと長くて多様な応答が出るタスク、例えば音声情報ベースの質問応答とかストーリーテリングとかでSALMONNをファインチューニングする方法があるで。こういうタスクのペアデータは、音声認識や音声・音楽キャプションデータとペアになっとるテキストをもとに、人間のアノテーターが手作業で作るか、テキストベースのLLMにプロンプト投げて自動生成できるんよ。
ワイらが使ったんは効率的なアプローチで、LoRAアダプターのスケーリング係数を単純に下げるだけで、ゼロショット指示に対してSALMONNが長くて多様な応答を生成できるようになるっちゅうもんやねん。これも PΛ(Y|X) を正則化する別のやり方やねんけど、なんでかっていうと、内部の条件付きLMが学習できるのはウィンドウレベルQ-FormerとLoRAだけで、こいつらが学習中に更新される唯一のモジュールやからや。LoRAスケーリング係数を下げる効果は5.2節で見れるけど、確かに質問応答とストーリーテリングの能力が活性化されて長くて多様な応答が出るようになるんやけど、その代わり学習済みタスクの結果がかなり落ちてまうねん。学習済みタスクの競争力を維持しつつクロスモーダルの創発能力を復活させるために、ワイらが提案するんは、LoRAスケーリング係数を割り引いたSALMONNが生成した応答を使って3段階目のファインチューニング、これを**活性化チューニング**って呼ぶんやけど、これをやる方法や。5.4節で後から示す実験結果を見たら、活性化チューニングが効率的かつ効果的なfew-shot自己教師あり学習アプローチやってことが分かるで。
## 4 実験セットアップ
### 4.1 モデルの仕様
SALMONNは、音声エンコーダーとしてWhisper-Large-v2(Radford et al., 2023)のエンコーダー部分、音声(オーディオ)エンコーダーとしてファインチューニング済みのBEATs(Chen et al., 2023c)、そしてバックボーンのLLMとして130億パラメータのVicuna(Chiang et al., 2023)を使っとるねん。ウィンドウレベルQ-Formerについては、N=1にしてるから学習可能なクエリは1個だけ、ほんでL=17にしとるから1ウィンドウあたり約0.33秒やねん。これで30秒の音声に対してQ-Formerから88個のテキストトークンが出力されるんよ。LoRA(Hu et al., 2022)のハイパーパラメータは、ランクを8、スケーリング係数を4.0に設定しとる。学習中に更新されるのはQ-FormerとLoRAのパラメータだけで、約3300万(M)パラメータ、SALMONNモデル全体の約0.24%だけやねん。
### 4.2 データの仕様
3.2節で提案した3段階の学習を使っとるで。最初のプレトレーニング段階で使うデータは、音声認識用として960時間のLibriSpeech学習セット(Panayotov et al., 2015)と1000時間のGigaSpeech Mセット(Chen et al., 2021)、ほんで音声キャプション生成用として2800時間のWavCaps(Mei et al., 2023)(180秒超の音声クリップは除外)、AudioCaps(Kim et al., 2019)、Clotho(Drossos et al., 2020)のデータセットで構成されとるんよ。
---
## Page 6
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p006.png)
### 和訳
ICLR 2024の学会論文として発表されたで
2番目のインストラクションチューニング(指示に従う訓練)の段階では、めっちゃいろんなタスクをやるねん。具体的に言うと、ASR(音声認識)、自動音声翻訳(AST)、AAC(音の説明文を自動で作るやつ)、音素認識(PR)、感情認識(ER)、音楽キャプション生成(MC)、重なった音声の認識(OSR)、話者照合(SV)、性別認識(GR)、それから音声に対する質問応答(SQA)、一般音声に対する質問応答(AQA)、音楽に対する質問応答(MQA)っていうタスクがあるねん。SQA、AQA、MQAのタスクでは、テキストのキャプションラベルをもとにChatGPTが質問を作ってくれて、モデルは一般的な音声入力と質問付きのテキストプロンプトをもとに答えを出さなあかんねん。この段階で使ったデータは表1にまとめてあって、「En2Zh」っていうのは英語から中国語への音声翻訳のことやで。
最後のアクティベーションチューニング(活性化チューニング)の段階では、LoRAを小さくしたSALMONNを使って、音声クリップをもとに12個の物語を書かせたんよ。ほんで、そのモデルを教師強制ベースの交差エントロピー訓練で12ステップ学習させるんやけど、各ステップで物語サンプル1つだけ使うねん。これでSALMONNのクロスモーダル(異なるメディアをまたぐ)創発能力を目覚めさせるってわけや。
表1:クロスモーダルインストラクションチューニング段階で使った訓練データ
| タスク | データソース | 時間数 | サンプル数 |
|--------|-------------|--------|-----------|
| ASR | LibriSpeech + GigaSpeech | 960 + 220 | 280K + 200K |
| En2Zh | CoVoST2-En2Zh (Wang et al., 2021) | 430 | 290K |
| AAC | AudioCaps + Clotho | 130 + 24 | 48K + 4K |
| PR | LibriSpeech | 960 | 280K |
| ER | IEMOCAP Session 1-4 (Busso et al., 2008) | 5 | 4K |
| MC | MusicCaps (Agostinelli et al., 2023) | 14 | 3K |
| OSR | LibriMix (Cosentino et al., 2020) | 260 | 64K |
| SV | VoxCeleb1 (Nagrani et al., 2019) | 1200 | 520K |
| GR | LibriSpeech | 100 | 28K |
| SQA | LibriSpeech | 960 | 280K |
| AQA | WavCaps + AudioCaps | 760 + 130 | 270K + 48K |
| MQA | MillionSong¹ + MusicNet (Thickstun et al., 2017) | 400 + 3 | 48K + 0.3K |
| 合計 | – | 約4400 | 約230万 |
4.3 タスクの仕様
テキストベースの大規模言語モデル(LLM)って、インストラクションチューニングでゼロショット学習(見たことないタスクもこなす力)ができるようになるやん(Wei et al., 2022a)。そやから、バックボーン(土台)のテキストベースLLMとマルチモーダルエンコーダを繋いで、質の高いクロスモーダルアライメント(異なるメディア間の対応付け)ができたら、そういう能力が自然と出てくるやろうって期待できるねん。SALMONNのゼロショットのクロスモーダル創発能力を評価するために、音声・一般音声・音楽の15種類のタスクを選んで、3つのレベルに分けたで。
**タスクレベル1**は、インストラクションチューニングで使ったタスクやから、SALMONNにとっては一番簡単やねん。タスクの一覧と訓練データはセクション4.2に書いてあって、各タスクの評価指標は表2にまとめてあるで。
**タスクレベル2**は、訓練してないタスクやから、レベル1より難しいねん。レベル2のタスクは音声ベースの自然言語処理タスクで、具体的には:音声キーワード抽出(KE)は音声の内容から抽出したキーワードの正確さを評価するやつ;音声クエリベースの質問応答(SQQA)は音声の質問をもとに常識的な知識を引き出せるかを評価するやつ;音声ベースのスロットフィリング(SF)は音声の内容から必要なスロット値(たいてい固有名詞やな)を正確に取れるかを評価するやつやねん。あと、英語→ドイツ語(En2De)と英語→日本語(En2Ja)の2つの音声翻訳タスクも入ってるんやけど、インストラクションチューニングでは英語→中国語(En2Zh)しか訓練してへんから、これもクロスモーダル創発能力として扱ってるねん。SALMONNの土台になってるVicunaっていうLLMは、音声の書き起こしテキストがあればレベル2のタスク全部できるんよ。せやからSALMONNは、明示的な音声認識なしで、完全にエンドツーエンド(音声から直接)でこれらのタスクをこなすことが求められてるわけや。
**タスクレベル3**は一番難しいタスクで、音声ベースのストーリーテリング(Story)と音声オーディオ共同推論(SAC)があるねん。音声ベースのストーリーテリングっていうのは、一般的な音声入力から聞こえる情報をもとに意味のある物語を書くタスクやねん。SACは、入力の音声クリップに埋め込まれた話し言葉の質問を理解して、背景の音声イベントや音楽から証拠を見つけて、
¹https://www.kaggle.com/datasets/undefinenull/million-song-dataset-spotify-lastfm
6
---
## Page 7
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p007.png)
### 和訳
ICLR 2024の学会論文として発表
質問に答えるために推論するっちゅうことやねん。レベル3のタスクは両方とも、ワイらが知る限りこの論文で初めて提案された新しいタスクでな、SALMONNが音声・オーディオ・音楽を知覚して、その聴覚情報をもとに理解して推論するっちゅうことを、完全にエンドツーエンド(入力から出力まで一気通貫)でやらなあかんねん。
表2には全テストセットと評価の物差しが載ってるで。フォローイングレート(FR)っちゅうのは、レベル2とレベル3の一部のタスクで使う追加の物差しで、SALMONNが指示にちゃんと従えた割合を測るもんやねん。なんでこれが要るかっていうと、選んだタスクがめっちゃ複雑やから、タスクの過学習(特定のタスクに偏りすぎること)のせいで指示を無視してまうことがあるからやねん。ちなみに、Storyタスクの多様性の指標は、物語に出てくる異なる単語の数を数えるだけで計算してるから、これは物語の豊かさをざっくり表してるだけで、質を見てるわけちゃうで。
表2:3つのレベルのタスクで使うテストセット、評価指標、参照値の出典やで。SQQAとKEで使う音声データは、商用のテキスト読み上げ(TTS)製品で合成したもんや。参照値について:「Whisper」はWhisper-Large-v2を音声認識に使ったもん、「Whisper + Vicuna」はWhisper-Large-v2の音声認識結果のテキストをVicunaに食わせたもん、それ以外はワイらが知る限りの最先端の結果やで。
| タスク | テストデータ | 評価指標 | 参照値 |
|---|---|---|---|
| ASR(音声認識) | LibriSpeech test-clean/-other, GigaSpeech test | %WER(単語誤り率) | Whisper |
| ASR(音声認識) | | %WER | Whisper |
| En2Zh(英→中翻訳) | CoVoST2-En2Zh | BLEU4 | (Wang et al., 2021) |
| AAC(自動音声キャプション) | AudioCaps | METEOR \| SPIDEr | (Mei et al., 2023) |
| PR(発音認識) | LibriSpeech test-clean | %PER(音素誤り率) | WavLM (Chen et al., 2022) |
| ER(感情認識) | IEMOCAP Session 5 | Accuracy(正解率) | (Wu et al., 2021) |
| MC(音楽キャプション) | MusicCaps | BLEU4, RougeL | (Doh et al., 2023) |
| OSR(重なった音声認識) | LibriMix | %WER | (Huang et al., 2023c) |
| SV(話者照合) | Voxceleb1 | Accuracy | |
| En2De(英→独翻訳) | CoVoST2-En2De | BLEU4 | Whisper + Vicuna |
| En2Ja(英→日翻訳) | CoVoST2-En2Ja | BLEU4 | Whisper + Vicuna |
| KE(キーワード抽出) | Inspec (Hulth, 2003) | Accuracy | Whisper + Vicuna |
| SQQA(音声質問応答) | WikiQA (Yang et al., 2015) | Accuracy (FR) | Whisper + Vicuna |
| SF(スロット埋め) | SLURP (Bastianelli et al., 2020) | Accuracy (FR) | Whisper + Vicuna |
| Story(物語生成) | AudioCaps | Diversity(多様性)(FR) | – |
| SAC(音声オーディオ共キャプション) | 自社データ | Accuracy (FR) | – |
## 5 実験結果
### 5.1 全15タスクの結果まとめ
SALMONNの全15タスクの結果は表3に載ってるで。結果を見てみると、SALMONNはアクティベーションチューニング(活性化調整)あり・なしどっちでも、レベル1のタスクではええ勝負できる結果を出しとるねん。せやけど、アクティベーションチューニングなしのモデルは、タスクの過学習がめっちゃひどくて、レベル2とレベル3のタスクがほぼできひん状態やねん。特にSQQA・Story・SACみたいなマルチモーダル(複数の情報を組み合わせる)やりとりが重要なタスクでは、アクティベーションチューニングなしやと指示にほとんど従えへんかったわ。SQQA・SF・Story・SACのFR(指示追従率)は、アクティベーションチューニングでめっちゃ改善されたで。
図2は、アクティベーションチューニングの異なる学習ステップでの、ASR&PR・SQQA・Story・SACのモデル性能の変化の推移を示してるねん。ここからわかるのは、アクティベーションチューニングはほんの少しの学習サンプルとステップだけで潜在能力を引き出せるっちゅうことやねん。ASRとPRの結果はほぼ変わらへんのに、SQQA・Story・SACの結果はパッと突然よくなる傾向(創発的な傾向)が見られるんや。
もっと詳しい分析はページの都合で付録Bに書いてあるから、そっちも見てな。
### 5.2 LoRAスケーリング係数の割引
このセクションでは、アクティベーションチューニングなしでタスク過学習の問題を軽減するために、テスト時にLoRA(軽量な追加学習の仕組み)のスケーリング係数を割り引く効果を調べとるで。図3を見てみると、LoRAのスケーリング係数を元の値の半分くらい、つまり2.0あたりまで下げたとき、モデルが突然パッと目覚めるように能力が出てくるんや。ほんまにおもろいやろ?
7
---
## Page 8
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p008.png)
### 和訳
ICLR 2024の学会論文として発表されたやつやで
表3:SALMONNが活性化チューニングなし(w/o Activation)とあり(w/ Activation)で出した全15タスクの結果やねん。ASRの結果は3つのテストセットで評価した単語誤り率(%WER)のタプルで示してあるで。具体的には(LibriSpeech test-clean、LibriSpeech test-other、GigaSpeech)の3つやな。
手法
ASR↓
En2Zh↑
AAC↑
PR↓ ER↑ MC↑ OSR↓ SV↑
活性化なし (2.1, 4.9, 9.1)
活性化あり (2.1, 4.9, 10.0)
参照値 (2.2, 5.1, 9.2)
34.4
33.1
38.9
4.2
4.2
3.1
(a) レベル1タスクの結果やで。
25.6 | 47.6
24.0 | 40.3
25.0 | 48.5
0.63 3.5, 22.1
0.69 5.5, 21.8
0.81 6.1, 21.5
20.7
23.0
7.6
0.93
0.94
手法
En2De↑ En2Ja↑ KE↑
SQQA↑
SF↑
Story↑
SAC↑
活性化なし
活性化あり
参照値
19.7
18.6
16.5
0.30 0.19 (0.29) 0.33 (0.77) 7.77 (0.00)
0.02 (0.04)
0.32 0.41 (0.98) 0.41 (0.99) 82.57 (1.00) 0.50 (0.73)
0.31 0.77 (1.00) 0.46 (1.00)
22.0
22.7
15.6
(b) レベル2とレベル3タスクの結果やな。
(a)
(b)
(c)
(d)
図2:活性化チューニングの学習ステップ数に応じた、ASRとPR (a)、SQQA (b)、Story (c)、SAC (d) の性能変化やねん。それと一緒に、創発的能力の失敗率(FR)もプロットしてあるで。
で、ここがめっちゃ大事なポイントなんやけど、モーダルをまたいだ推論能力がちゃんと出てきてんねん。それに加えて%PERが下がってるっていうことは、LoRAの中に条件付き言語モデルがもともと埋め込まれてるっていう証拠になるわけやな。
(a)
(b)
(c)
(d)
図3:テスト時にLoRAのスケーリング係数を割り引いたときの、ASRとPR (a)、SQQA (b)、Story (c)、SAC (d) の性能変化やで。創発的能力のFRも一緒に載せてあるわ。
5.3 タスクの過学習と活性化チューニングの分析
この埋め込まれた条件付き言語モデルがほんまにどう影響してるか確かめるために、活性化チューニングの各ステップでのPΛ(Y|X, I)とPΛ(Y|X)のパープレキシティ(PPL)を計算したんやで。もうちょい詳しく言うと、ある音声Xに対して、特定タスクに対応するYの系列の確率を、あるタスクのテキスト指示プロンプトIを使ったティーチャーフォーシングで計算するか、Iなしで計算するか、っていう比較をしてんねん。
ほんで図4を見てほしいんやけど、Story/SAC(LoRAスケーリング係数を割り引いて生成したやつ)の正解応答と、タスクの過学習のせいでモデルが間違えてしもたタスク(この例ではAAC)の応答のPPLを比較してんねん。サブ図(a)と(b)では、PΛ(Y|X)を計算するときにテキスト指示プロンプトを一切使ってへんのやけど、活性化チューニングなしの場合はAACのYのPPLがStory/SACのYのPPLよりも明らかに低かったんや。なんでかっていうと、モデルが支配的なAACタスクに偏ってしもてるからやねん。で、活性化チューニングを進めていくと、これらのタスク間のPPLの差がどんどん縮まっていって、AACタスクへの偏りがめっちゃ減ったっていうことやな。サブ図(c)と(d)では、PΛ(Y|X, I)、つまりStoryとSACそれぞれの指示付きPPLを調べてんねん。ほんだら、活性化チューニングの前やと、テキスト指示プロンプトで「StoryやれSACやれ」って言うてるのに、AACのPPLの方がStory/SACより低いっていう結果が出てんねん。これがまさに、モデルが指示に従えへんかった原因を説明してるわけやな。活性化チューニングの間に
8
024681012 学習ステップ数 1.01.52.02.53.0 %WER 3.03.54.04.55.0 %PER ASR PR 024681012 学習ステップ数 0.000.250.500.751.00 正解率 0.000.250.500.751.00 FR SQQA正解率 SQQA FR 024681012 学習ステップ数 0255075100 多様性 0.000.250.500.751.00 FR Story多様性 Story FR 024681012 学習ステップ数 0.000.250.500.751.00 正解率 0.000.250.500.751.00 FR SAC正解率 SAC FR 43210 学習ステップ数 0204060 %WER 0255075100 %PER ASR PR 43210 LoRAスケーリング 0.000.250.500.751.00 正解率 0.000.250.500.751.00 FR SQQA正解率 SQQA FR 43210 LoRAスケーリング 0255075100 多様性 0.000.250.500.751.00 FR Story多様性 Story FR 43210 LoRAスケーリング 0.000.250.500.751.00 正解率 0.000.250.500.751.00 FR SAC正解率 SAC FR
---
## Page 9
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p009.png)
### 和訳
チューニングしていくとな、StoryとSACの出力Yのパープレキシティ(PPL)の値が、AACのやつよりもだんだん低なっていくねん。ほんで最終的にはモデルが指示されたタスクをちゃんとこなせるようになるっちゅうわけや。
(a)
(b)
(c)
(d)
図4:アクティベーション・チューニングの段階でPPLがどう変わっていくかを示したグラフやで。(a)はAACとStoryの − ln PΛ(Y|X)、(b)はAACとSACの − ln PΛ(Y|X)、(c)は − ln PΛ(Y|X, I = Story)、(d)は − ln PΛ(Y|X, I = SAC) を表してるねん。
5.4 いろんなタスクとデータでアクティベーション・チューニングしてみた話
モデルを「起動」させるために、いくつかの方法を試してみてん。具体的には、音声をもとに書いた長い物語で学習させる方法、テキストベースの質問応答(QA)タスクで長めの回答を使う方法、ほんで音声認識(ASR)タスクで長い書き起こしを使う方法の3つや。LoRAとQ-Formerの両方をこの3つの方法でファインチューニングしたで。Q-Formerと音声入力を無視して、VicunaとLoRAだけをテキストベースのLLMとして適応させる実験もやってん。さらに比較用に、LoRAとQ-Formerの両方を使うけどQ-Formerはチューニングせえへんっていう実験もやったで。
結果は表4に載せてるわ。結果見てみるとな、長いラベルで音声認識を学習させるASR (Long)も、テキストプロンプトだけでLoRAを学習させるStory (Text based)も、モデルを起動させることはでけへんかってん。でも物語で学習させるStoryとか、長い回答付きのQA (Long)やったら起動できたんよ。なんでかっていうと、ASRタスクっちゅうのは高品質なクロスモーダルアライメント(異なるモダリティ間の対応付け)を改善することに力入れすぎてまうから、分布がモデル内部の条件付き言語モデルの方にめっちゃ偏ってまうねん。テキストベースで物語をファインチューニングする方はな、実際にはP(Y|X, I)やのうてP(Y|Tx, I)に影響してまうんよ。Txっていうのは音声の参照テキストのことやな。せやからテキストベースの学習ではタスクの過学習を解消でけへんっちゅうわけや。長い回答付きのQAデータでもLLMは起動できるんやけど、Storyタスクで起動したモデルよりも性能が落ちてん。特に応答生成で同じこと繰り返す率がめっちゃ高なってもうたんよ。これはおそらく、QAタスクのペアになってる回答がStoryタスクに比べて多様性が少ないからやと思われるわ。その結果、モデル内部の条件付き言語モデルPΛ(Y|X)に対する正則化(偏りすぎを防ぐ効果)がうまく効かへんかったんやろな。
表4:いろんなタスクでアクティベーション・チューニングした結果や。「Repeat Rate」っちゅうのは、SALMONNが同じ内容を繰り返し生成してもうたテストサンプルの割合やで。
| アクティベーション方法 | ASR↓ | PR↓ | SQQA↑ | Story↑ | SAC↑ | Repeat Rate↓ |
|---|---|---|---|---|---|---|
| アクティベーションなし | 2.1 | 4.2 | 0.19 (0.29) | 7.77 (0.00) | 0.02 (0.04) | 0.2% |
| Story | 2.1 | 4.2 | 0.41 (0.98) | 82.57 (1.00) | 0.50 (0.73) | 0.1% |
| QA (Long) | 2.1 | 4.3 | 0.40 (0.93) | 59.82 (1.00) | 0.34 (0.71) | 4.6% |
| ASR (Long) | 2.2 | 4.2 | 0.12 (0.03) | 7.87 (0.00) | 0.22 (0.28) | 0.1% |
| Story (テキストベース) | 2.1 | 4.2 | 0.11 (0.03) | 8.45 (0.03) | 0.23 (0.32) | 0.1% |
| Story (LoRAのみ) | 2.1 | 4.2 | 0.44 (0.96) | 82.29 (1.00) | 0.34 (0.65) | 0.2% |
6 まとめ
この研究ではSALMONNっちゅうのを提案してん。これは「Speech Audio Language Music Open Neural Network」の略で、要するにLLM(大規模言語モデル)に汎用的な「聴く力」を持たせるための一歩やねん。デュアル聴覚エンコーダ(2つの聴覚エンコーダ)を搭載したSALMONNは、音声認識とか音声キャプション生成とか音声翻訳みたいな学習済みタスクで競争力のある性能を出しつつ、スロットフィリングとか未学習言語の音声翻訳とかキーワード抽出みたいな、学習してへんタスクにもちゃんと汎化できたんよ。さらにな、提案したアクティベーション・チューニングの段階によって、音声ベースのストーリーテリングとか音声と音の協調推論みたいな、めっちゃすごい創発的能力もSALMONNに生まれてん。ほんで徹底的かつ包括的な実験評価の結果、SALMONNは将来の汎用聴覚AIの開発にとってめっちゃ有望な方向性を示したっちゅうことやな。
9
---
## Page 10
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p010.png)
### 和訳
ICLR 2024の学会論文として発表済み
## 7 再現性についての説明
実験とモデルをちゃんと再現できるようにな、トレーニングデータの詳細はセクション4.2に、ベンチマークの詳細はセクション4.3に書いてあるで。ソースコード、モデルのチェックポイント、それからデータも全部SALMONNプロジェクトのGitHubページで公開してるから、誰でも試せるようになってるねん。
## 参考文献
Andrea Agostinelliら「MusicLM:テキストから音楽を生成するやつ」arXiv:2301.11325, 2023年。
Jean-Baptiste Alayracら「Flamingo:少ないデータでも学習できる視覚言語モデル」NeurIPS発表、ニューオーリンズ、2022年。
Rohan Anilら「PaLM 2テクニカルレポート」arXiv:2305.10403, 2023年。
Emanuele Bastianelliら「SLURP:音声言語理解のためのリソースパッケージ」EMNLP発表、2020年。
Tom Brownら「言語モデルは少数例学習の達人やねん」NeurIPS発表、ニューオーリンズ、2020年。
Carlos Bussoら「IEMOCAP:人と人が感情たっぷりにやりとりしてるのをモーションキャプチャで記録したデータベース」Language resources and evaluation, 42巻, 335-359ページ, 2008年。
Feilong Chenら「X-LLM:いろんなモダリティ——つまり画像とか音声とかな——を外国語みたいに扱うことで、めっちゃすごい大規模言語モデルを立ち上げる方法」arXiv:2305.04160, 2023a年。
Guo Chenら「VideoLLM:大規模言語モデルで動画の流れをモデル化するやつ」arXiv:2305.13292, 2023b年。
Guoguo Chenら「GigaSpeech:1万時間分の文字起こし付き音声がどんどん増えていく、いろんな分野に対応した音声認識コーパス」Interspeech発表、ブルノ、2021年。
Sanyuan Chenら「WavLM:音声処理のフルスタック——つまり音声に関するあらゆるタスクに対応するために、めっちゃ大規模な自己教師あり事前学習をやったモデル」IEEE Journal of Selected Topics in Signal Processing, 16巻6号, 1505-1518ページ, 2022年。
Sanyuan Chenら「BEATs:音響トークナイザーっていう仕組みを使った音声の事前学習」ICML発表、ホノルル、2023c年。
Wei-Lin Chiangら「Vicuna:GPT-4にChatGPTの90%くらいの品質って言わしめたオープンソースのチャットボット」2023年3月。URL: https://lmsys.org/blog/2023-03-30-vicuna/
Hyung Won Chungら「指示に従うように微調整した言語モデルをスケールアップさせる話」arXiv:2210.11416, 2022年。
Joris Cosentinoら「LibriMix:いろんな場面で使える汎用的な音声分離のためのオープンソースデータセット」arXiv:2005.11262, 2020年。
10
---
## Page 11
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p011.png)
### 和訳
ICLR 2024の学会論文として発表されとるで
Wenliang Daiら。InstructBLIP:インストラクション・チューニングっていう技術を使って、なんでも対応できる汎用的な画像×言語モデルを目指そうっちゅう研究やねん。arXiv:2305.06500、2023年。
SeungHeon Dohら。LP-MusicCaps:大規模言語モデル(LLM)を使って、音楽の説明文をそれっぽく自動生成する仕組みやで。arXiv:2307.16372、2023年。
Konstantinos Drossosら。Clotho:音を聞いて説明文をつけるっていう「音声キャプション」用のデータセットやねん。ICASSP(音声信号処理の国際学会)、バルセロナ、2020年。
Zhengxiao Duら。GLM:空欄を自動で埋める方式を使った、めっちゃ汎用的な言語モデルの事前学習やで。ACL(自然言語処理のトップ学会)、ダブリン、アイルランド、2022年。
Yassir Fathullahら。大規模言語モデルに音声認識の能力を持たせるためのプロンプト手法についての研究やねん。arXivプレプリント arXiv:2307.11795、2023年。
Yuan Gongら。Whisper-AT:ノイズに強い音声認識モデルって、実は一般的な音のイベント(犬が吠えるとか、ドアが閉まるとか)を検出するのもめっちゃ得意やったっちゅう発見やで。Interspeech(音声の国際学会)、ダブリン、アイルランド、2023年a。
Yuan Gongら。聞いて、考えて、理解する——っていうコンセプトの研究やねん。arXiv:2305.10790、2023年b。
Haohan Guoら。音声エージェント向けの、会話っぽく自然にしゃべれるエンドツーエンドの音声合成(TTS)やで。SLT(音声言語技術の学会)、2021年。
Edward J Huら。LoRA:でっかい言語モデルを低ランク適応(パラメータちょっとだけいじって効率よく微調整する方法)で賢くチューニングする技術やねん。めっちゃ有名な手法やで。ICLR、2022年。
Chien-yu Huangら。Dynamic-SUPERB:音声のインストラクション・チューニングのベンチマーク(性能を測る物差し)を、動的で、みんなが協力して作れて、幅広くカバーできるものにしようっちゅう取り組みやねん。arXiv:2309.09510、2023年a。
Rongjie Huangら。AudioGPT:音声・音楽・効果音・しゃべる顔映像、これ全部理解して生成もできるっていうめっちゃ欲張りなモデルやで。arXiv:2304.12995、2023年b。
Zili Huangら。自己教師ありモデル(ラベルなしデータで学習したモデル)を、複数人が同時にしゃべってる音声の認識に適応させるために、話者の埋め込み表現を使うっちゅうアプローチやねん。ICASSP、ロードス島、ギリシャ、2023年c。
Anette Hulth。言語学の知識をもっと入れたら、キーワード自動抽出がうまくいくようになったで、っちゅう研究やな。EMNLP(自然言語処理の実践的な学会)、札幌、日本、2003年。
Chris Dongjoo Kimら。AudioCaps:世の中にあるいろんな音に対してキャプション(説明文)を自動生成するためのデータセットやで。NAACL-HLT、ミネアポリス、2019年。
Harlen LaneとBernard Tranel。ロンバード効果(うるさい環境やと無意識に声が大きくなる現象やねん)と、しゃべる時に聴覚が果たす役割についての研究やで。Journal of Speech Hearing Research、14巻、677-709ページ、1971年。
Junnan Liら。BLIP-2:画像を理解するエンコーダと大規模言語モデルを凍結(パラメータ固定)したまま、言語と画像の事前学習をブートストラップ(段階的に立ち上げ)する手法やねん。ICML(機械学習のトップ学会)、ハワイ、2023年a。
Yizhi Liら。MERT:大規模な自己教師あり学習を使った、音楽をちゃんと理解できる音響モデルやで。arXiv:2306.00107、2023年b。
Shansong Liuら。Music Understanding LLaMA:質問応答とキャプション生成を活用して、テキストから音楽を作る技術をさらに進化させようっちゅう研究やねん。arXiv:2308.11276、2023年。
11ページ目
---
## Page 12
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p012.png)
### 和訳
ICLR 2024の学会論文として発表されたやつやで
Chenyang Lyu、Minghao Wu、Longyue Wang、Xinting Huang、Bingshuai Liuら。Macaw統合。
画像・音声・動画・テキストを使った言語モデリング
LLM:マルチモーダル(つまり色んな種類のデータを一緒に扱えるってことやな)
arXiv:2306.09093、2023年。
Muhammad Maaz、Hanoona Rasheed、Salman Khan、Fahad Shahbaz Khan。Video-ChatGPT:でっかいビジョン&言語モデルを使って、動画をめっちゃ詳しく理解しようって話やねん。arXiv:2306.05424、2023年。
Xinhao Mei、Chutong Meng、Haohe Liu、Qiuqiang Kong、Tom Ko、Chengqi Zhao、Mark D Plumbley、Yuexian Zou、Wenwu Wang。WavCaps:ChatGPTの力を借りて作った、ざっくりラベル付けされた音声キャプションのデータセットやねん。音声と言語のマルチモーダル研究向けやで。arXiv:2303.17395、2023年。
Arsha Nagrani、Joon Son Chung、Weidi Xie、Andrew Zisserman。VoxCeleb:実世界の環境でめっちゃ大規模に話者認証(声で誰か当てるやつな)をやってみた研究やで。Computer Speech & Language、60巻:101027、2019年。
Chaitanya Narisetty、Emiru Tsunoo、Xuankai Chang、Yosuke Kashiwagi、Michael Hentschel、Shinji Watanabe。音声認識と音声キャプション付けを同時にやったろやないかっていう研究やねん。ICASSP、シンガポール、2022年。
OpenAI。GPT-4の技術レポートやで。arXiv:2303.08774、2023年。
Pilar Oplustil-Gallegos、Johannah O'Mahony、Simon King。テキスト読み上げ(TTS)をもっとええ感じにするために、前の文脈の音響的な表現とテキスト的な表現を比べてみたっていう話やな。SSW、2021年。
Long Ouyang、Jeffrey Wu、Xu Jiang、Diogo Almeida、Carroll Wainwright、Pamela Mishkin、Chong Zhang、Sandhini Agarwal、Katarina Slama、Alex Rayら。人間からのフィードバックを使って、言語モデルに指示通り動いてもらうようトレーニングしたで、っていう研究やねん。なんでかっていうと、ただ学習させるだけやと人間の意図通りに動かへんからな。NeurIPS、ニューオーリンズ、2022年。
Vassil Panayotov、Guoguo Chen、Daniel Povey、Sanjeev Khudanpur。LibriSpeech:パブリックドメイン(つまり誰でも自由に使える)のオーディオブックをベースにした音声認識用のコーパス(データの集まりやな)やで。ICASSP、サウスブリスベン、2015年。
Baolin Peng、Chunyuan Li、Pengcheng He、Michel Galley、Jianfeng Gao。GPT-4を使ったインストラクションチューニング(指示に従う力を鍛えるやつやで)。arXiv:2304.03277、2023年。
Alec Radford、Jong Wook Kim、Tao Xu、Greg Brockman、Christine McLeavey、Ilya Sutskever。めっちゃ大規模な弱教師あり学習(ざっくりしたラベルで学習させるやつな)を使って、頑丈な音声認識を実現したっていう研究やで。ICML、ホノルル、2023年。
Paul K. Rubenstein、Chulayuth Asawaroengchai、Duc Dung Nguyen、Ankur Bapna、Zalán Borsos、Félix de Chaumont Quitry、Peter Chen、Dalia El Badawy、Wei Han、Eugene Kharitonovら。AudioPaLM:しゃべれるし聞けるっていう、ほんまにすごい大規模言語モデルやねん。arXiv:2306.12925、2023年。
Yixuan Su、Tian Lan、Huayang Li、Jialu Xu、Yan Wang、Deng Cai。PandaGPT:1つのモデルで全部の指示に従えるようにしたろっていう研究やで。arXiv:2305.16355、2023年。
Guangzhi Sun、Wenyi Yu、Changli Tang、Xianzhao Chen、Tian Tan、Wei Li、Lu Lu、Zejun Ma、Chao Zhang。マルチモーダル大規模言語モデル向けの、音声と映像をめっちゃ細かく一緒に表現する方法の研究やねん。arXivプレプリント arXiv:2310.05863、2023年。
John Thickstun、Zaid Harchaoui、Sham Kakade。音楽の特徴をゼロから学習するっていう研究やで。ICLR、トゥーロン(フランス)、2017年。
Hugo Touvron、Thibaut Lavril、Gautier Izacard、Xavier Martinet、Marie-Anne Lachauxら。LLaMA:オープンで効率的な基盤言語モデルやねん。誰でも使えるようにしたのがポイントやで。arXiv:2302.13971、2023年。
Ashish Vaswani、Noam Shazeer、Niki Parmar、Jakob Uszkoreit、Llion Jones、Aidan N Gomez、Łukasz Kaiser、Illia Polosukhin。「Attentionさえあればええねん(Attention is All You Need)」っていう、ほんまに革命的な論文やで。今のAIの基盤になってるTransformerを提案したやつやな。NeurIPS、ロングビーチ、2017年。
Changhan Wang、Anne Wu、Juan Pino。CoVoST 2:めっちゃたくさんの言語に対応した音声翻訳の研究やで。Interspeech、ブルノ(チェコ)、2021年。
Jason Wei、Maarten Bosma、Vincent Y Zhao、Kelvin Guu、Adams Wei Yu、Brian Lester、Nan Du、Andrew M Dai、Quoc V Le。ファインチューニングした言語モデルは、教えてへんタスクもゼロショット(初見)でこなせるようになるで、っていう話やねん。ICLR、2022a。
12
---
## Page 13
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p013.png)
### 和訳
ICLR 2024の学会論文として発表されてんで
Jason Weiら。「でっかい言語モデルから自然に出てくるすごい能力」。機械学習研究トランザクション、2022b。
Jian Wuら。「音声をテキストに変換するんと、でっかい言語モデルをくっつける話で、デコーダだけの構造でいけるんちゃう?っていう研究」。arXiv:2307.03917、2023。
Wen Wuら。「時間ピッタリ同期してる情報と、ちょっとズレてる情報を合体させて感情を読み取る方法」。ICASSP発表、トロント(カナダ)、2021。
Guanghui Xuら。「文をまたいだBERT埋め込みっていうのを使って、音声合成のイントネーションとかリズム(プロソディって言うねんけど)をもっとええ感じにする方法」。ICASSP発表、2021。
Yi Yangら。「WikiQA:なんでも聞いてや系の質問応答のためのチャレンジデータセット」。EMNLP発表、リスボン(ポルトガル)、2015。
Wenyi Yuら。「音声認識のために、音声エンコーダとでっかい言語モデルをつなげてみたで」。arXivプレプリント arXiv:2309.13963、2023。
Dong Zhangら。「SpeechGPT:でっかい言語モデルに、もともと音声とテキストを行き来できる会話能力を持たせたろうっていう研究」。arXiv:2305.11000、2023a。
Hang Zhangら。「Video-LLaMA:指示に従えるように調整した、音と映像がわかる言語モデルで動画を理解するやつ」。arXiv:2306.02858、2023b。
Ya-Jie Zhangら。「文をまたいだ事前学習済み表現を使ってプロソディ(話し方のリズムやイントネーションやな)をモデル化して、音声合成をもっとええ感じにした話」。IEEE/ACM音声・言語処理トランザクション、31巻:2812–2823、2023c。
Yue Zhaoら。「でっかい言語モデルから動画の表現を学習するっていう研究」。CVPR発表、ニューオーリンズ、2022。
Deyao Zhuら。「MiniGPT-4:めっちゃすごい大規模言語モデルを使って、画像と言葉の理解力をパワーアップさせたで」。arXiv:2304.10592、2023。
13ページ目終わり
---
## Page 14
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p014.png)
### 和訳
ICLR 2024の学会論文として発表
A SALMONNの使用例
SALMONNはめっちゃ幅広い音声タスクをこなせるねん。ここでは図5〜21にいくつか例を載せとくで。
図5:自動音声認識
図6:自動音声翻訳(英語→ドイツ語)
図7:音素認識
14
【図の内容についての説明】
SALMONN に「この音声を認識して、文字に起こしてくれへん?」って頼んだら、
→ 「Can you guess where I am right now?(今どこにおるか当ててみてや)」って返してくれるねん。
(背景では爆発音とか銃声が鳴っとる中で、男の人が喋っとる音声やで)
次に SALMONN に「この音声聞いて、ドイツ語に翻訳してや」って言うたら、
→ 「Kannst du erraten, wohin ich gerade fahre?」って出してくれるわけや。
(同じ音声素材を使っとるで)
ほんで SALMONN に「この音声の音素表記を出してくれへん?」って頼んだら、
→ 「sil K AH0 N Y UW1 G EH1 S W EH1 R AY1 EY1 EH1 M R AY1 T N AW1 sil」って返してくるねん。
これは要するに、音声を一個一個の発音記号に分解して書き出してくれるっちゅうことやな。silっていうのは無音区間のことやで。
(これも同じ音声素材を使っとるんやで)
つまりな、SALMONNはひとつの音声に対して「文字起こし」「翻訳」「音素分析」っていう全然ちゃう種類のタスクを全部こなせるっちゅう、めっちゃ器用なやつやねん。
---
## Page 15
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p015.png)
### 和訳
図8:自動オーディオキャプション生成
図9:音声とオーディオの同時キャプション生成
図10:音声・オーディオの統合推論
15
---
**【自動オーディオキャプション生成】**
ユーザー「この音声の中身を説明してくれへん?」
SALMONN「誰かがしゃべっとる最中に、バックで銃声がバンバン鳴っとるわ。」
(正解:男の人が「今おれがどこにおるか当てられるか?」って聞いとって、背景で爆発音と銃声が聞こえとる。)
---
**【音声とオーディオの同時キャプション生成】**
ユーザー「しゃべっとる内容を聞き取って、バックの音も同時に説明してくれへん?」
SALMONN「話してる人は『今おれがどこにおるか当てられるか?』って言うとって、バックの音は銃声と爆発音やねん。」
(正解:男の人が「今おれがどこにおるか当てられるか?」って聞いとって、背景で爆発音と銃声が聞こえとる。)
---
**【音声・オーディオの統合推論】**
ユーザー「バックの音をヒントにして、この話してる人の質問にちゃんと答えたってくれへん?」
SALMONN「バックの音から判断するとな、この人めっちゃヤバいとこにおるわ。戦場か戦闘地域っぽいねん。なんでかっていうと、銃撃の音とか爆発音がガンガン聞こえとるからやな。ほんまに『今どこにおるか当ててみ?』って聞いとるけど、これはもう戦争のど真ん中やで。」
(正解:男の人が「今おれがどこにおるか当てられるか?」って聞いとって、背景で爆発音と銃声が聞こえとる。)
---
## Page 16
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p016.png)
### 和訳
図11:音声イベント検出
図12:音声ストーリーテリング
図13:話者認識
16
**ユーザー**
(鳥のさえずり、女性の歌声、男性の話し声、アヒルの鳴き声)
**SALMONN**
音声に出てくるイベントを順番に全部リストアップしてや。
1. 遠くで鳥がチュンチュン鳴いてるねん。
2. 女の人が歌ってるわ。
3. 男の人がしゃべってんねん。
4. アヒルがガーガー鳴いてるで。
---
**ユーザー**
(鳥のさえずり、女性の歌声、男性の話し声、アヒルの鳴き声)
**SALMONN**
この音声をもとに、めっちゃ詳しいストーリーを書いてくれへん?音声の内容にちゃんと関連した話にしてな。
のどかな田舎の、めっちゃええ天気の日やってん。お日さんがピカピカ照ってて、鳥はさえずってるし、風が畑の間をそよそよ〜って吹いててな。そんな自然いっぱいの中で、アヒルの群れが池で泳いどったんよ。
ほんなら泳いでる最中に、一羽のアヒルがなんか独特な鳴き方し始めてん。なんかこう、めっちゃ大事なこと言おうとしてるみたいな感じやねん。他のアヒルらもそれに気づいて、耳傾け始めたわけよ。
ほしたら急に、池のほとりに男の人が現れてん。アヒルのガーガー鳴いてんのが聞こえて、何事やろ思て見に来たんやな。アヒルはずっと鳴き続けてて、男の人もしゃべり始めて……
---
**ユーザー**
(鳥のさえずり、女性の歌声、男性の話し声、アヒルの鳴き声)
**SALMONN**
この音声で何人しゃべってた?誰やった?
2人しゃべってたで。1人は男の人で、もう1人は女の人やな。
---
## Page 17
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p017.png)
### 和訳
ICLR 2024の学会論文として発表済み
図14:感情認識
図15:音声で質問するQ&A
図16:キーワード抽出
17
ユーザー「話してる人の感情を説明してや」
SALMONN「この人、めっちゃテンション上がってるで。ワクワクしとるわ」
(男の人が興奮気味に「よっしゃ、やろうぜ」って言うてる音声)
ユーザー「この質問に詳しく答えてくれへん?」
SALMONN「世界で一番高い山はエベレストやねん。ネパールとチベットの間にあるヒマラヤ山脈にドーンとそびえ立っとって、海抜8,848メートル(29,029フィート)もあるんやで」
(「世界で一番高い山って何?」って聞いてる音声)
ユーザー「キーワードを3つだけ出してくれへん?理由も教えてや」
SALMONN「キーワードは『時間(time)』『限られた(limited)』『勇気(courage)』やな。
なんでかっていうと、話してる人がほんまに強調してるのは、人の人生を生きて自分の時間をムダにするなってことと、ドグマ——つまり他人の考えの結果に縛られるな——ってことと、自分の心の声に従う勇気を持てってことやねん。ここがめっちゃ核心やからこの3つを選んだで」
(スティーブ・ジョブズのスピーチの一部:「君らの時間は限られてるんや、せやから他人の人生を生きてムダにしたらあかん。ドグマに囚われるな——それは他人の考えの結果の中で生きるっちゅうことや。他人の意見っていう雑音で、自分の心の声をかき消されたらあかんで。ほんで一番大事なんは、自分の心と直感に従う勇気を持つことや。心と直感はな、なぜか君がほんまになりたいもんをもう知っとるんや。他のことは全部二の次やねん。ワシが若い頃、『ホール・アース・カタログ』っちゅうめっちゃすごい出版物があってな、ワシらのバイブルみたいなもんやったんやけど——」の音声)
---
## Page 18
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p018.png)
### 和訳
ICLR 2024の学会論文として発表されたやつやで
図17:スロットフィリング(必要な情報を埋めるタスクやな)
図18:音楽キャプショニング(音楽の内容を言葉で説明するやつ)
図19:音楽の感情認識
18
---
**【図17:スロットフィリング】**
ユーザー「この音声で言うてる時間、なんぼ?」
SALMONN「金曜の2時半やで」
(女の子がこう言うてるねん:「金曜の2時半に経理部とミーティング入れといて」)
---
**【図18:音楽キャプショニング】**
ユーザー「この音楽、詳しく説明してくれへん?」
SALMONN「これはめっちゃ綺麗なピアノと歌の曲やねん。ピアノがシンプルなメロディを弾いて、女性ボーカルが高い声で歌ってるんよ。雰囲気はロマンチックで夢見心地な感じやな。全体的にやわらかくてまろやかな仕上がりやねん。恋愛映画のシーンとか、子守唄に使えそうな曲やで」
(実際の音声:落ち着いた上品なピアノ曲で、最後のほうで女性が歌い始めるやつ)
---
**【図19:音楽の感情認識】**
ユーザー「この音楽の感情ってなんやろ?理由も詳しく教えてや」
SALMONN「この音楽はめっちゃエモーショナルで、愛情とか慈しみみたいな気持ちが湧いてくるねん。なんでかっていうと、これはラブソングやからやねん。歌詞が深い愛情とか想いをストレートに表現してるんよ。ほんでこの曲はインストゥルメンタル、つまり楽器だけで成り立ってるから、メロディとハーモニーだけでその感情を伝えてるわけ。そうすることで聴く人にとってもっと親密でパーソナルな体験になって、自分なりの解釈で音楽とより深くつながれるようになってるねん。ほんまようできてるわ」
(実際の音声:落ち着いた上品なピアノ曲で、最後のほうで女性が歌い始めるやつ)
---
## Page 19
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p019.png)
### 和訳
ICLR 2024の学会論文として発表されたで
図20:歌詞を書く
図21:曲にタイトルつける
B 性能分析
表3に載ってるけどな、アクティベーションチューニング(注2)をかましたSALMONNは、
1. 学習済みのタスク、つまり音声認識(ASR)、英語→中国語翻訳(En2Zh)、音声の自動キャプション生成(AAC)、それから選択問題(MC)で、最先端の結果にめっちゃ近い性能を出してるねん。
2. 音高認識(PR)とか音声認識のカテゴリ分け(OSR)みたいな、「Vicuna+Whisper」を順番につなげるやり方やと難しいタスクも、ちゃんと処理できるようになってんねん。
3. 音声をベースにした自然言語処理タスクでも幅広くうまいこと汎化してて、特に英語→ドイツ語(En2De)とか英語→日本語(En2Ja)の翻訳では、「Whisper+Vicuna」を順番につなげたシステムよりええ結果出してんねん。なんでかっていうと、音声を直接理解するシステムの方が、順番につなげるやり方よりもエラーが途中で伝播するのを防げるし、イントネーションとかリズムみたいな言葉以外の情報も失わずに済むからやねん。
4. 音声ベースのストーリーテリングとか、音声ベースの音声キャプション生成(SAC)みたいな、ワイらが知る限り既存のモデルでは扱えへんかったタスクにも対応できてるんやで。
(注2)匿名の査読者さんからの要望で追加したで。査読者さん、ええ提案ありがとう。
19
---
SALMONN「この曲の歌詞書いてくれへん?」
ユーザー(穏やかで上品なピアノ曲が流れてて、最後の方で女性が歌い始めるやつ)
SALMONN「おっけー、ほな歌詞書くわな:
Verse 1:
ずっと待っとったんはあんたやねん、
あんたの近くにおるだけで心臓バクバクするねん、
ずっと探しとったんはあんたやねん、
あんたへの想いは絶対消えへんで。
サビ:
あんたは完璧、あんたは最高、…」
---
SALMONN「リズムと感情に基づいて、この曲にタイトルつけてくれへん?」
ユーザー(穏やかで上品なピアノ曲が流れてて、最後の方で女性が歌い始めるやつ)
SALMONN「この曲はな、ゆっくりで感情こもったリズムの美しいピアノ曲やねん。柔らかくて優しい声で歌う女性ボーカルのラブソングやな。タイトルやったら『Forever Love(永遠の愛)』とか『Endless Emotion(終わりなき感情)』みたいなんがええんちゃうかな。」
---
## Page 20
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p020.png)
### 和訳
ICLR 2024の学会論文として発表
表5:出力系列のパープレキシティ(PPL)の平均値と標準偏差(カッコ内)やで。
モデルのチェックポイント
ASR(音声認識)
AAC(音声キャプション生成)
PR(音素認識)
Story(物語生成)
SAC(音声キャプション要約)
事前学習
LoRA外した時
1.1 (±0.078) 5.2 (±0.42)
40 (±2.0)
5.9 (±1.5)
270 (±60)
100 (±1.7)
2.9 (±0.051)
2.2 (±0.028)
5.4 (±0.69)
2.7 (±0.18)
指示チューニング
LoRA外した時
1.1 (±0.054) 5.0 (±0.56) 1.1 (±0.015) 2.4 (±0.030)
2.2 (±0.023)
5.7 (±1.3)
40 (±3.3)
92 (±8.2)
2.6 (±0.066)
2.2 (±0.087)
活性化チューニング
1.1 (±0.048) 6.3 (±0.80) 1.1 (±0.015) 1.8 (±0.026) 1.4 (±0.0046)
レベル2タスクの参考値に、WhisperとVicunaを繋げたカスケードシステムを使ってる理由なんやけどな、これにはちゃんとワケがあんねん。レベル2のタスクは全部ゼロショット(つまり事前に例を見せずにいきなりやらせるやつ)で、SALMONNの他にそんなゼロショットでこなせる音声ベースのシステムがないからやねん。SALMONNがこのカスケードシステムより優れてるポイントは、言葉そのものの情報だけやなくて、声のトーンとかイントネーションとか、いわゆる「パラ言語情報」も両方使えるってとこやな。これが話し言葉を理解するのにめっちゃ効いてくんねん。
ただな、そんな強みがあっても、SALMONNにはいくつか苦手なところもあんねん。
1. まず音素認識(PR)やけど、これはLLM(大規模言語モデル)に「音素」っていう新しい書き方を覚えさせることで実現してんねん。なんでかっていうと、音素を認識するには、もともとWhisperの音声認識で使ってるワードピース(単語の断片みたいなもん)よりも、もっと細かい発音の情報を捉えなあかんのよ。せやから、既存のWhisperの音声エンコーダの上に作ったSALMONNが、音素認識専用に作られたモデルと同じレベルの性能出すのはなかなか難しいねん。
2. 同じような理由で、重複音声認識(OSR)のワードエラーレート(WER)もけっこう高くなってまうねん。そもそもWhisperの音声認識自体がOSRできるように作られてへんからな。
3. 音声質問応答(SQQA)の成功は、基本的に話された質問(例えば「世界で一番高い山はなんですか」みたいなやつ)をちゃんと理解して、テキストベースのLLMに蓄えられてる常識的な知識を使って答えることに頼ってんねん。SQQAの性能が落ちるっちゅうことは、LoRAを使ったクロスモーダル適応(異なる種類のデータ間をつなぐ調整のこと)のせいで、LLMがもともと持ってたテキストベースの常識知識をちょっと「忘れて」もうてる可能性があるっちゅうことやな。
C タスク過学習の統計
このセクションでは、3つの学習ステージでパープレキシティ(PPL、モデルがどれだけ自信持って答えられるかの指標で、低いほどええねん)がどう変わるか分析して、活性化チューニングの裏にある原理を明らかにするで。表5に示した通り、音声認識(ASR)と音声キャプション生成(AAC)のPPLは最初の事前学習ステージでめっちゃ小さい値になってんねん。これはつまり、モデルがクロスモーダルアラインメント(音声とテキストの対応付け)をちゃんと学習できたっちゅうことやな。音素認識(PR)のPPLは指示チューニングのステージで下がるんやけど、これはPRがLoRAを使って音素の出力トークンを新しい「言語」として学習するからやねん。物語生成(Story)と音声キャプション要約(SAC)のPPLも指示チューニング後に下がるんやけど、タスクをうまくこなせるほど十分には小さくならへんねん。テスト時にLoRAを外すか、追加の活性化チューニングステージをやらん限りはな。さらにええことに、LoRA外す方法と違って、活性化チューニングをやった後もASR、AAC、PRのPPLはほとんど変わらへんねん。これがこのアプローチのめっちゃええとこやで。
D 学習中のパープレキシティの変化
提案した3ステージ学習における、ASR、AAC、AST(英語→中国語翻訳)、OSR、Story、SACの6つのタスクのパープレキシティの変化は図22に可視化してあるで。
E SQQA、SF、STORY、SACタスクの追従率(FR)または正解率(ACC)の計算方法
SQQAとSFタスクについてはな、モデルの出力と音声中の質問の間で計算したWER(ワードエラーレート)が30%未満やったら、「こいつ指示に従わんと音声認識しただけやな」と判定するねん。Storyタスクについては、出力トークンの最大長を200に設定してんねん。この設定のもとで、50語未満の答えは「指示に従ってへん」と見なして、異なる
---
## Page 21
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p021.png)
### 和訳
ICLR 2024の学会論文として発表
(a) ASR(音声認識)
(b) 音声キャプショニング
(c) AST(英語→中国語の音声翻訳)
(d) 重複音声認識
(e) 音声ストーリーテリング
(f) 音声と音の協調推論
図22:3段階トレーニングの中でパープレキシティ(まあ要するに「モデルがどんだけ困惑してるか」を数値化したもんやな)がどう変わったかを示してんねん。S1がクロスモーダル事前学習ステージ、S2がインストラクションチューニングステージ、S3-tがアクティベーションチューニングステージのt番目のステップやで。
ストーリーテリングの多様性を測る指標として、生成された物語の中のユニークな単語数を使ってんねん。SACタスク(音声と音の協調推論)については、GPT3.5を使って、背景の音声キャプションと質問をもとに、うちのモデルがちゃんと指示に従ってるか、質問に正しく答えてるかを判定してもらってんねん。
F SALMONNのプロンプトテンプレート
SALMONNに「音声入力をもらって、テキストの指示に対して回答を生成する」っていう訓練をさせるために、こんなプロンプトテンプレートを使ってんねん:
USER: [聴覚トークン] テキストプロンプト \n ASSISTANT:
「[聴覚トークン]」っていうのは、ウィンドウレベルQ-Formerから出力される可変長のテキストっぽいトークンのことやねん。ちなみにこのテンプレート、Vicuna(Chiangら、2023)の訓練で使われてるやつと同じフォーマットやで。
G GPT3.5とやりとりするプロンプト
この研究では、GPT3.5にデータ生成のお手伝いをしてもらったり、モデルの出力品質を自動的に評価してもらうのに使ってんねん。目的ごとのプロンプトは表6にまとめてあるで。プロンプトの中で全部大文字になってる単語は、GPT3.5に食わせる前に適切な説明文に置き換えるっていうルールやねん。
21
S1 S2 S3-2 S3-4 S3-6 S3-8 S3-10 S3-12 の各チェックポイントにおけるパープレキシティの変化グラフ(LoRAあり/LoRAなしの比較)が各タスクについて示されてるで。
---
## Page 22
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p022.png)
### 和訳
ICLR 2024の学会論文として発表
**付録H:SALMONNを音声・オーディオの「生成」にまで拡張できるポテンシャルについて**
SALMONNはもともと、大規模言語モデル(LLM)に「聞く力」を持たせるために作られたもんやねん。せやけど、実はこれ、「しゃべる力」——つまり音声生成のほうにも拡張できる可能性があるんよ³。
なんでかっていうと、人間がしゃべる仕組みって、聞く力とめっちゃ密接に関係してるからやねん。有名な例でいうと「ロンバード反射」ってやつがあってな、これは音声連鎖(スピーチチェーン)に関係する現象なんやけど、要するに「うるさい場所でしゃべるとき、人は自然と声がデカなる」っていうアレや(Lane & Tranel, 1971)。騒がしいところで友達としゃべってたら、知らん間に声張り上げてるやろ?まさにそれやねん。
これが何を意味するかっていうと、AIにほんまに人間みたいなしゃべり方をさせたかったら、まず「ちゃんと聞ける力」を持たせることがめっちゃ大事やってことやねん。ほんで、SALMONNにはその聞く力があるから、テキストから音声を作る技術(TTS:テキスト・トゥ・スピーチ)にも活かせるチャンスがあるわけや。
実際これ、最近のTTS研究の流れとも合ってるんよ。周りの発話から得られるテキストや音声の文脈情報を使うと、もっと自然なイントネーションやリズム(プロソディっていうんやけど)をモデル化できるし、もっと自然でくだけた感じの音声データも扱えるようになるって報告されてるねん(Xu et al., 2021; Guo et al., 2021; Oplustil-Gallegos et al., 2021; Zhang et al., 2023c)。
³匿名の査読者さんからのリクエストで追加した内容やで。ええ提案してくれはって、ほんまに感謝しとります。
---
## Page 23
[](/attach/3b8e3381c203f4c0dd282b7bc03774328ace13c10d0a09ca22842878f6089cd6_p023.png)
### 和訳
ICLR 2024の学会論文として発表
目的
プロンプト
音声のキャプションテキストから
音声QAデータを生成するため。
音声認識テキストから
音声QAデータを生成するため。
音声クエリベースの質問応答
(SQQA)のモデルの回答を
評価するため。
モデルが音声・発話の
共同推論(SAC)タスクに
取り組もうとしているかを
評価するため。
モデルが音声・発話の
共同推論(SAC)タスクを
ちゃんと完了できたかを
評価するため。
これからいくつかの文を渡すから、それを使って**1つだけ**質問とそれに対応する答えを作ってほしいねん。この文は音声のキャプションやから、質問はそのキャプションにめっちゃ関連したものにしてな。答えは**正確**で、シンプルかつ明確にしてや。\n 返答は以下のフォーマットに厳密に従ってな: \n {"Question": "xxx", "Answer": "xxx"} \n ほな、文はこれやで:
これからいくつかの文を渡すから、それを使って**1つだけ**質問とそれに対応する答えを作ってほしいねん。質問はその文にめっちゃ関連したものにしてな。答えは**正確**で、シンプルかつ明確にしてや。\n 返答は以下のフォーマットに厳密に従ってな: \n {"Question": "xxx", "Answer": "xxx"} \n ほな、文はこれやで:
次に質問と、それに対応する正解と、ワイが言った答えを渡すから、正解をもとにワイの答えが合ってるかどうか判断してほしいねん。質問と対応する答えは以下の形式で渡すで: {'Question': 'xxx', 'Standard Answer': 'xxx', 'My Answer': 'xxx'} \n ワイの答えが正しいかどうか判断して、短い理由も書いてな。返答は以下のPython辞書形式に従ってや: \n {"Correct": True / False, "Reason": "xxx"} \n ほな、以下の質問と答えを渡すで: SENTENCEHERE \n あんたの返答は:
音声クリップがあって、その中で人が質問してるねん。ワイには今AIモデルがあって、そのモデルが背景音声をもとに話者の質問に答えなあかんねん。話者が何を質問してるかと、ワイのAIモデルの出力を伝えるから、あんたが判断してほしいのは:ワイのAIモデルが質問に答えようとしてるかどうか、とその理由やねん。特に気をつけてほしいのは、モデルが質問を聞かずにただ音声を説明してるだけかもしれへんってことや。答えが正しいかどうかは気にせんでええで。あんたが注目すべきは、モデルが質問に答えようとしてるかどうか、それだけや。返答は以下のPython辞書形式に従ってな: {"Response": "Yes/No", "Reason": "xxx"}.\n 音声中の質問: <QUESTION> \n モデル出力: <OUTPUT> \n あんたの返答:
音声クリップがあって、その中で人が質問してるねん。ワイには今AIモデルがあって、そのモデルが背景音声をもとに話者の質問に答えなあかんねん。話者の質問と、背景音声の説明と、ワイのAIモデルの出力を伝えるから、あんたが判断してほしいのは:ワイのAIモデルが正しく答えられたかどうか、とその理由やねん。返答は以下のPython辞書形式に従ってな: {"Response": "Yes/No", "Reason": "xxx"}.\n 音声中の質問: <QUESTION> \n 背景音声: <AUDIO> \n モデル出力: <OUTPUT> \n あんたの返答:
表6: GPT3.5を使う目的とプロンプト。
23
---
1 / 1