논문: https://arxiv.org/pdf/2404.05052
1. Introduction
(생략)
(생략)
3. Dataset and Benchmark
3.1. Instruction-following FABA dataset



- 감정/AU 설명 분석 (Fig. 3, Fig. 4 참조):
- 감정 설명의 풍부함:
- 기존 7가지 기본 감정 카테고리(행복, 슬픔 등)는 복합적이고 미묘한 감정(예: 슬픔과 억지 미소가 섞인 표정), 과장된 감정, 감정의 정도, 정의되지 않은 감정(예: 걱정, 회의감) 등을 포착하기 어렵다.
- FABA-Instruct의 자연어 감정 설명은 이러한 문제들을 해결하며 훨씬 더 풍부한 감정적 뉘앙스를 표현할 수 있다.
- AU 설명의 깊이:
- 기존 AU 데이터셋의 이진 벡터 방식은 AU 활성화 정도나 원인(어떤 근육 움직임인지), 결과(어떤 감정으로 이어지는지), 그리고 다른 AU나 감정과의 관계에 대한 설명을 제공하지 않는다.
- FABA-Instruct의 AU 설명은 "작은 찡그림"이나 "까마귀 발자국"과 같은 세부적인 묘사를 통해 AU 활성화의 정도를 포착하고, "웅크림이나 찌푸림을 나타냄", "강한 감정과 관련됨"과 같이 AU 간 또는 AU와 감정 간의 추론 능력을 보여주어 모델의 해석 가능성을 높인다.
3.2. Instruction-following FABA benchmark
4. EmoLA: An Instruction-tuned MLLM for FABA

해당 이미지는 EmoLA(Emotion-aware Low-rank Adaptation) 모델의 전체 아키텍처를 보여준다. EmoLA는 얼굴 감정 행동 분석(Facial Affective Behavior Analysis, FABA)을 위해 Instruction Tuning 방식을 활용한 멀티모달 대규모 언어 모델(Multi-modal Large Language Model, MLLM)이다. 이 모델은 입력된 얼굴 이미지와 텍스트 지시(Instruction)를 바탕으로 해당 얼굴의 감정 또는 Action Unit(AU)에 대한 상세한 설명을 생성하는 것을 목표로 한다.
-
입력 (XV, XQ):
- Face Image (XV): 분석 대상이 되는 얼굴 이미지이다. 왼쪽 Vision Expert와 중앙 Prior Expert 모두 이 이미지를 입력으로 받는다.
- Instruction (XQ): 사용자가 모델에 내리는 지시(예: "Please describe the emotion in this face.")로, 모델이 어떤 종류의 분석을 수행해야 하는지 알려주는 텍스트 프롬프트이다.
-
Visual Expert:
- Vision Encoder (Frozen): 이 모듈은 CLIP-L/14 [94]와 같은 사전 학습된 이미지 인코더이다. 일반적인 이미지-텍스트 쌍으로 학습되었기 때문에 이미지에서 일반적인 시각적 특징을 추출하는 데 탁월하다. 하지만 얼굴의 미세한 구조 정보나 FABA 태스크에 특화된 특징은 놓칠 수 있다는 한계가 있다. 파란색 눈꽃 아이콘은 이 모듈의 파라미터가 훈련 중에 고정(Frozen)됨을 의미한다.
- Vision Projector (Trainable): Vision Encoder에서 추출된 시각적 특징들을 언어 모델이 이해할 수 있는 시각 임베딩 토큰(HV)으로 변환하는 역할을 한다. 이 모듈은 두 개의 레이어로 구성된 MLP(Multi-Layer Perceptron)이며, 빨간색 불꽃 아이콘은 이 모듈의 파라미터가 훈련 중에 학습 가능(Trainable)함을 의미한다.
-
Prior Expert:
- Prior Encoder (Frozen): 이 모듈은 Insightface [7]의 사전 학습된 얼굴 랜드마크(facial landmark) 감지기와 같이 얼굴 관련 데이터셋으로 학습된 인코더이다. Vision Encoder가 놓칠 수 있는 얼굴 구조 정보(facial prior knowledge)를 보다 정확하게 포착하기 위해 도입되었다. 입력 이미지 XV로부터 얼굴 랜드마크 Prior Feature (ZP)를 추출한다. 파란색 눈꽃 아이콘은 이 모듈의 파라미터가 고정됨을 의미한다.
- Prior Projector (Trainable): Prior Encoder에서 추출된 얼굴 랜드마크 Prior Feature ZP를 언어 모델의 토큰 임베딩 공간으로 매핑하여 얼굴 Prior 토큰(HP)을 생성한다. 이는 다음과 같은 수식으로 표현된다.
Hp=gθ(ZP)(1)
- Hp: Facial Prior Token.
- gθ(⋅): Prior Projector를 나타내는 MLP (Multi-Layer Perceptron) 함수.
- ZP: Prior Encoder fp(⋅)에 의해 추출된 Facial Prior Feature.
- θ: Prior Projector의 학습 가능한 파라미터.
빨간색 불꽃 아이콘은 이 모듈의 파라미터가 훈련 중에 학습 가능함을 의미한다.
-
Language Expert:
- Word Embedding & Tokenizer (Frozen): 입력 Instruction XQ를 언어 모델이 처리할 수 있는 언어 임베딩 토큰(HQ) 시퀀스로 변환한다. 이 모듈의 파라미터는 고정되어 있다.
-
Large Language Model (LLM) (Frozen with LoRA):
- LLM Decoder (Frozen, Vicuna [15]): Vicuna와 같은 대규모 언어 모델을 디코더로 활용한다. Visual Expert의 HV, Prior Expert의 HP, 그리고 Language Expert의 HQ 토큰들을 입력으로 받아 최종적인 설명 텍스트 XA를 생성한다. 이 LLM 자체의 파라미터는 대부분 고정되어 있다.
- LoRA (Low-Rank Adaptation) (Trainable): LLM 전체를 미세 조정하는 대신, LLM 내의 특정 dense layer에 낮은 랭크를 가지는 추가적인 행렬(hϕ(⋅))을 삽입하여 효율적으로 훈련시키는 기법이다 [39]. 이를 통해 메모리 및 계산 비용을 크게 줄이면서도 효과적인 성능 향상을 달성한다. LoRA 모듈의 파라미터는 학습 가능하다.
-
Description (XA): 모델이 Instruction XQ에 따라 생성한 FABA 관련 상세 텍스트 설명이다.
-
FABA-Instruct 데이터셋 및 FABA-Bench 벤치마크 활용:
EmoLA는 GPT-4V를 활용하여 구축된 FABA-Instruct 데이터셋을 사용하여 Instruction Tuning을 거친다. 이 데이터셋은 감정과 AU에 대한 상세하고 추론적인 설명을 포함하며, 기존의 이산적인 감정 카테고리나 이진 AU 벡터보다 훨씬 풍부한 정보를 제공한다. 또한, EmoLA는 인식 능력과 텍스트 생성 능력을 모두 평가하는 새로운 메트릭인 REGE를 사용하는 FABA-Bench 벤치마크에서 평가된다.
5. Experiments
-
실험 설정 및 구현 세부 사항:
- 기반 모델: EmoLA는 LLaVA-1.5 7b 모델을 기반으로 초기화된다.
- 학습 대상: 전체 MLLM(Multi-modal Large Language Model)을 파인튜닝하는 대신, 효율성을 위해 LoRA (Low-Rank Adaptation) 모듈과 Facial Prior Projector (얼굴 사전 지식 투영기)만 튜닝한다.
- 최적화: AdamW 옵티마이저를 사용하여 1 epoch 동안 학습하며, 초기 학습률은 1e-4로 설정된다. LoRA의 랭크는 128이다.
- 하드웨어: 모든 실험은 8개의 A6000 GPU를 사용하여 수행된다.
-
데이터셋 및 평가 프로토콜:
- 기존 FABA 데이터셋: Facial Emotion Recognition (FER)을 위한 RAF-DB와 Action Unit Recognition (AUR)을 위한 BP4D, DISFA, GFT의 네 가지 전통적인 데이터셋에서 실험한다.
- FABA-Instruct 데이터셋: 제안하는 FABA-Instruct 데이터셋을 사용하여 FER 및 AUR 태스크에 대한 모델 성능을 평가한다.
5.1 Comparison on traditional FER and AUR datasets
5.1.1. FER (Facial Emotion Recognition) 실험 세팅
5.1.2. AUR (Action Unit Recognition) 실험 세팅
5.2 Comparison on FABA-Bench
- 비교 대상 모델: LLaVA-1.5 [70], MiniGPT4-V2 [10], Shikra [11], mPLUG-Owl2 [131]와 같은 기존 MLLM들과 이 논문에서 제안하는 EmoLA 모델의 성능을 비교한다.
- 평가 방법:
- FABA-Bench는 얼굴 감정 행동 분석(FABA) 작업에 특화된 벤치마크로, 시각적 인식 능력(visual recognition)과 텍스트 생성 능력(text generation)을 동시에 평가하도록 설계되었다.
- 평가 지표로는 REGE(REcognition and GEneration) 점수를 도입했다. REGE 점수(Srege)는 인식 성능(Sre)과 생성 성능(Sge)을 합산하여 계산한다 (Srege=Sre+Sge).
- 인식 성능(Sre): 감정 인식(FER) 작업에서는 정확도(accuracy)를, AU(Action Unit) 인식 작업에서는 F1 스코어를 사용한다.
- 생성 성능(Sge): 텍스트 생성의 일관성과 유창성을 평가하는 데 주로 사용되는 ROUGE 점수를 사용한다.
- 주요 발견:
- EmoLA는 다른 MLLM들과 비교했을 때 두 가지 FABA 작업(감정 인식 및 AU 인식) 모두에서 가장 좋은 결과를 달성했다.
- 특히 EmoLA는 LLaVA-1.5에 비해 훨씬 적은 수의 파라미터를 튜닝했음에도 더 나은 성능을 보였다.
- EmoLA의 성공 요인:
- 효율적인 튜닝: 전체 LLM 디코더를 튜닝하는 대신, LoRA(Low-Rank Adaptation) 모듈을 사용해 파라미터 효율적인 미세 튜닝을 수행했다. LoRA는 모델 가중치 적응이 낮은 내재 랭크(low intrinsic rank)를 가진다는 사실에 착안하여, 밀집 레이어의 잔차에 대한 낮은 랭크로 인수분해된 행렬만 최적화한다.
- 얼굴 사전 전문가(Facial Prior Expert) 모듈: 이 모듈은 CLIP [94]과 같은 범용 비전 인코더가 놓칠 수 있는 얼굴 랜드마크와 같은 얼굴 구조 정보(facial structure knowledge)를 추출하여 보완적인 정보를 제공한다. 이는 FABA 작업의 인식 능력 향상에 기여한다.
- REGE 지표의 중요성: 기존 MLLM 평가 지표들은 주로 언어 생성에 중점을 두어 FABA 작업의 특수성을 반영하지 못했다. REGE 지표는 인식 능력과 생성 능력을 모두 고려함으로써 MLLM의 FABA 작업 성능을 더욱 포괄적으로 평가할 수 있게 한다.