[NLP] MLLM(多模態LLM) 論文簡要欣賞

Abstract & Overview

這篇文章我們來欣賞一下在arXiv上的一篇論文:
A Servey on Multimodal Large Language Models
這篇論文主要在介紹與整理現行代表性的MLLM(Multimodal LLM),並將其分類為4大體裁:
Multimodal Instruction Tuning(M-IT), Multimodal In-Context Learning(M-ICL), Multimodal Chain-of_Thought(M-CoT)以及LLM-Aided Visual Reasoning(LAVR)。
其中,前三者為MLLM的基礎,而最後一個則是以LLM為核心的multimodal system,類似於一個系統框架。

MLLM指的是在LLM的基礎上,從單模態走向多模態,從人工智慧的角度來看,MLLM比LLM向前又跨出了一步,原因如下:

  1. MLLM更符合人的感官世界,自然地接受多感官輸入
  2. MLLM提供一個友好的介面,支持多模態輸入,使其易於與使用者交流
  3. MLLM是一個更全面的問題解決者,雖然LLM可以解決NLP的問題,但MLLM通常可以支持更大範圍的任務

下面我將針對這篇論文中較為重要的部分做簡要的欣賞與分析 ,其他細節部分可以自行閱讀這篇精彩的論文!

Prerequest & Note

在開始之前,先介紹在論文中常出現的一些基本名詞

IT, ICL, CoT

讓我們先看一下這三者的定義:

  1. Instruction Tuning:
    • Instruction tuning involves fine-tuning a pre-trained language model by providing specific instructions during the training process.
    • These instructions can be in the form of prompts or demonstrations, guiding the model to generate responses in a desired manner.
    • It allows for controlled language generation and can be useful for generating responses tailored to specific tasks or contexts.
  2. In Context Learning:
    • In context learning refers to training a language model on a large dataset with diverse contexts and topics.
    • The model learns to understand and generate responses based on the context it is given, which allows for more contextually relevant and coherent responses.
    • This approach is suitable for applications where the model needs to understand and adapt to various contexts during language generation.
  3. Chain of Thought:
    • Chain of thought is a concept in natural language generation where the model maintains coherence throughout a conversation by remembering past interactions.
    • The model keeps track of the conversation history, ensuring consistent responses and avoiding contradictions.
    • This is especially valuable in chatbot applications to provide more human-like and coherent conversations.

簡單整理一下三者的差異:

  • Instruction Tuning 著重於微調模型以遵循特定的指令或指導,使其更好地符合特定任務或需求的生成。
  • In-Context Learning 強調理解上下文,確保生成的結果與上下文相關且連貫。
  • Chain-of-Thought 強調模型生成文本時的連貫性,能夠記住過去的互動,使生成的文本像人類思維的連貫性一樣。
    這三個方法或概念是獨立的,但可以搭配使用,創造更好的效果。

Zero-Shot, Few-Shot Learning

先看一下兩者的定義:

  • Zero-Shot Learning:

    • Zero-shot learning is a learning paradigm where a model is trained to perform a task for which it has never seen any examples during training.
    • In other words, the model is expected to generalize its knowledge from the training data to new, unseen categories or tasks.
  • Few-Shot Learning:

    • Few-shot learning is a similar concept, but it allows a model to be trained on a very small number of examples for each new category or task it encounters. *
    • Instead of needing a large amount of data per class, few-shot learning aims to generalize from a few examples.
    • It’s like teaching a model to learn from just a handful of samples. This is particularly useful in scenarios where collecting a substantial amount of data for each new class is impractical.

Note

這邊整理了一些重要的專有名詞

  • Learning Paradigm
    • A learning paradigm refers to a specific approach or framework used to train machine learning models.
    • It encompasses the fundamental principles, methods, and strategies that guide how models are constructed, trained, and evaluated.
    • Different learning paradigms offer distinct ways of addressing various types of problems and data.
    • E.g. Supervised Learning, Semi-Supervised Learning, Reinforcement Learning, Transfer Learning, etc.

簡單整理一下兩者的差異:

  • Zero-Shot Learning 利用先前學習的知識,執行全新、未看過的任務類別。
  • Few-Shot Learning 利用少量的範例(有答案),去適應新的任務類別。

M-IT

Instruction指的是對於任務的描述,IT是一種利用instruction-formatted datasets來訓練LLM的技巧。利用這個技巧,LLM可以透過跟隨新的instruction來泛化未曾看過的新任務,進而實現zero-shot learning的成效。
下面是論文中引用來描繪instruction tuning與其他learning paradigms的圖示


為了要從unimodality到mutimodality,需要調整的部分主要 分為兩個:”Data” 和 “Model”。

  1. 在Data方面,我們常 調整現存的benchmark datasets來取得M-IT datasets,或是使用self-instruction。
    下面的圖簡單呈現了M-IT data的模板

  2. 在Model方面,一個常見的做法是將 其他modalities的資訊注入進LLM,並把LLM當成是一個強大的推理者。 其他相關的著作常會直接將理解外來modality的能力嵌入進LLM;或是使用expert model把外來的modality轉換成LLM可以理解的natural language。


Formulation M-IT & M-IT sample

這邊我簡單把論文中提到有關M-IT以及其目標函數的內容拉出來
M-IT sample其實可以被標示為三元素的數組:
$$(I, M, R)$$
分別代表instruction, multimodal input以及ground-truth response

MLLM利用給予的instruction和multimodal input預測answer
$$ A = f(I, M; \theta)$$
其中,A代表預測的答案(answer),$\theta$ 則代表模型中的parameters

而訓練的目標是要最小化loss function,而MLLM的目標是要預測下一個response的token,基於這點,loss function可以這麼表示:
$$\begin{equation}
L(\theta) = -\sum_{i=1}^N\log{}p(R_i|I,R_{<i};\theta)
\end{equation}$$
其中,

  • N為ground-truth response的長度
  • 使用log是因為將機率連乘轉為連加,以避免underflow
  • 因為是loss function,所以加個負號,最小化loss function同時最大化預測下個token的機率
  • 利用instruction與前i-1個ground truth response token預測第i個token

Bridgin the gap between different modalities

在這篇論文中提到一個非常重要的問題:該怎麼連結不同的modalities?
主要有兩種方法:

  1. Learnable Interface:
    • 在LLM的其中一個模組或權重下去做調整,並插入在pre-trained visual encoder與LLM之間,作為一個可以用來訓練模態轉換的model。
    • 連結不同的modalities的同時,凍結pre-trained model的parameters。
    • 如何將視覺內容轉為LLM可以理解得文字格式
  2. Expert model:
    • 利用其他模型,轉換外來的modality成不需要訓練訓練的語言,例如image captioning model(不用訓練)。
    • 可能不像learnable interface那樣彈性,且有information loss的風險

M-ICL

先介紹兩個ICL的特點:

  1. supervised learning是從大量的資料中學習資料背後的模式,與傳統supervised learning不同的是,ICL的關鍵是”類推”,從少量的資料搭配一些選填的instruction,去外推新的問題與任務,因此使用few-shot learning的方式解決全新的問題。
  2. ICL常常使用training-free的方式實作,因此可以在inference stage,很容易地整合進不同的框架。
  3. IT與ICL十分相關,IT常常被拿來加強模型的ICL能力。

下面的圖示描繪了簡化過後的M-ICL query模板,其中,使用了兩個in-context範例和一個query,兩者用虛線隔開,模型的目的是要完成這個request。

M-CoT

CoT is “a series of intermediate reasoning steps”, which has been proven to be effective in complex reasoning tasks.

  • CoT主要是想讓我們在prompt LLMs時,讓他生成不只是最後的答案,而是要有推理的過程而引導到最終解答。
  • 在M-CoT中有幾個重要的概念:modality bridging(解決modality gap), learning paradigms, chain configuration以及generation patterns。

Modality Bridging

  1. 使用Learnable Interface:
    • 這個方法使用一個learnable interface把visual embedding mapping到word embedding空間。
    • 這個mapped embedding可以被視為是一個prompt,進而傳遞給LLMs,引出其M-CoT的能力
    • 舉例來說,CoT-PT使用多個Meta-Net來作prompt tuning,Meta-Net將visual features轉換成階段性的prompt,其中,可以把Meta-Net想像為CoT-PT的其中一個模組。
    • Multimodal-CoT使用shared Transformer-based 架構,visual與textual特徵通過cross-attention進行交互。
  2. 使用Expert Model:
    • 引用expert models來將visual input翻譯為texual description
    • 儘管其非常直接且簡單,但在轉換的過程中可能會遇到information loss的問題

Learning Paradigms

learning paradigms也可以解釋為模型如何從資訊中獲取知識。大致可以分為 三種方式來習得M-CoT的能力

  1. fintuning:
    通常需要針對M-CoT的datasets
  2. training-free few-shot learning:
    同常需要手作一些in-context的範例讓模型去學如何推理
  3. training-free zero-shot learning:
    直接prompt就可以,不需要其他明顯的指引,舉例來說”Let’s think frame by frame”

其中對於sample size的要求由上而下遞減

Chain Configuration

簡單來說就是要什麼時後該停止推裡,主要有adaptive和pre-defined formation兩種方法。

  • Adaptive:
    要求LLMs自己決定何時該停止reasoing chains
  • Pre-defined formation
    使用者事先設定好reasoning chains的長度

Generation Pattern

Reasoning chain是如何建構的?
主要有兩種可能

  1. Infilling-based pattern:
    需要在上下文中去做演繹(前幾步與後幾步),去填補邏輯漏洞
  2. predicting-based pattern:
    利用已知的條件、instruction以及過去推理的資訊去擴充reasoning chain
    不管是哪種模式,都必須要求生成的文本必須是連續且正確的

LAVR

將LLMs作為helpers,以及其他不同的角色,建構出一個支持特定任務或genral-purpose的visual reasoning system
跟傳統的visual reasoning system相比,LAVR有一些更好的特點:

  1. Strong generalization ability:
    擁有眾多知識並以大量資料及訓練的模型,可以容易地泛化未看過的任務,並在zero-shot/few-shot擁有不錯的性能。
  2. Emergent abilities:
    其定義為,在小的模型不會出現,而在大模型會出現的能力,當模型到一定的scale會湧現的能力,例如能夠看到圖片表面下的意義,像是能夠理解會和一個迷因是好笑的。
  3. Better interactvity and control:
    LLM-based system提供一個更好使用與控制的使用者介面,例如使用自然語言的query進行互動。
    下面我將介紹論文中提到的,LAVR不同的training paradigm以及LLM在這個系統中扮演的角色

Training Paradigms

主要有兩種:

  1. training-free:
    • few-shot models:
      需要少量的hand-crafted in-context sample,去指引LLMs產生程式或一連串的執行步驟, 這些程式或執行步驟是作為其他對應模型或外部工具與模組的instructions
    • zero-shot models:
      依賴LLMs的語言相關知識與推理能力,例如CAT使用LLMs去refine影像的caption,使其更符合使用者的需求
  2. finetuning:
    主要是想要激活LLMs在LAVR中的planning abilities(對應到工具的使用),以及instruction-following abilities。

Functions

LLMs在LAVR system中扮演的主要角色,主要有三種

  1. LLM as a Controller
  2. LLM as a Decision Maker
  3. LLM as a Semantics Refiner

前兩者(controller & decision maker)與CoT相關,因為複雜的任務需要被拆解為intermediate simpler tasks。

當LLMs作為controller時,任務常常是在single round完成的,而multi-round更常見於decision maker

LLM as a Controller

  1. Break down a complex task into simpler sub-tasks
    常運用LLMs的CoT能力
  2. Assigns these tasks to appropriate tools/modules

LLM as a Decision Maker

在這個case中,複雜的任務會以multi-round的方式被解決,decision maker通常要滿足以下能力

  1. 總結目前的上下文以及歷史資訊,並判斷目前的資訊是否足夠推導出最終解答
  2. 整理並總結答案,並且用user-friendly的方式呈現給使用者

LLM as a Semantics Refiner

使用LLMs豐富的語言與語義知識,去對最終解答做加強

Conclusion

這篇論文整理的現行MLLM的資訊,並給出了主要的幾個方向,包括包括3個常見的技巧(M-IT, M-ICL, M-CoT),和一個task-solving systems的廣泛框架(LAVR)。
論文中還有許多evaluation的方式,以及現在研究需要被填充的gap,其他更詳細的內容還有待讀者親自去欣賞這篇論文!

References

  • https://arxiv.org/abs/2306.13549
  • https://zhuanlan.zhihu.com/p/639664615