Contrastive Adversarial Learning for Person Independent Facial Emotion Recognition (AAAI 2021)

상솜공방·2025년 9월 22일

논문 리뷰

목록 보기
38/49

1. Overal Pipeline

이 이미지는 논문에서 제안하는 Contrastive Adversarial Learning for Person Independent Facial Emotion Recognition(CAF) 방법의 전체적인 구조를 보여준다. 이 모델은 사람에 구애받지 않는(person-independent) 얼굴 감정 인식(FER)을 목표로 하며, 감정의 강도 차이를 적대적으로 학습하여 복잡한 감정 요소를 더 잘 이해하도록 한다.

제안된 방법은 크게 세 단계로 구성된다.

  • 1단계: 감정 이진화 과정 (Emotional binarization process)

    • 수많은 Facial Images가 입력되면, 얼굴 표정 이미지들을 Otsu thresholding 기법을 사용하여 강한 감정(strong emotion)과 약한 감정(weak emotion) 이미지 세트로 분류한다.
    • 이 과정에서 Arousal-Valence(AV) 공간 내의 δa\delta_a (Arousal 임계값)와 δv\delta_v (Valence 임계값)를 사용하여 결정 임계값 δr=δa2+δv2\delta_r = \sqrt{\delta_a^2 + \delta_v^2}를 설정한다.
    • AVAV 값이 δr\delta_r보다 크거나 같은 이미지는 Strong emotion Image 집합 (PP)으로, AVAV 값이 δr\delta_r보다 작은 이미지는 Weak emotion Image 집합 (QQ)으로 분류된다.
  • 2단계: 잠재 특징 공간에서의 Critic 네트워크 기반 적대적 학습 (Adversarial learning based on critic network in latent feature space)

    • 분류된 Strong emotion ImageWeak emotion Image는 각각 Encoder(fef_e) 네트워크에 입력되어 잠재 특징(latent feature)으로 변환된다. 두 인코더는 Weight sharing을 통해 동일한 특징 학습 능력을 갖는다.
    • 이 잠재 특징들은 Critic(fcf_c) 네트워크로 전달된다.
    • Critic(fcf_c) 네트워크는 두 감정 분포(PPQQ)의 차이를 구별하도록 학습되며, 이 과정에서 contrastive loss 함수인 Lc\mathcal{L}_c (화살표 ②)가 사용된다.
      • Lc\mathcal{L}_c는 강한 감정과 약한 감정 특징 사이의 margin α\alpha를 사용하여 두 분포를 분리하도록 Critic을 훈련시킨다.
      • 여기서 margin α\alpha는 단순한 상수가 아니라 mutual information (MI)과 confidence interval(Δ\Delta)을 고려한 적응형(adaptive) 방식으로 설계되어 학습의 난이도와 잠재 공간 내 두 그룹의 의존성을 반영한다. 이로 인해 학습 후반에 발생할 수 있는 과적합 문제를 완화한다.
    • 동시에 Encoder(fef_e) 네트워크는 Critic(fcf_c) 네트워크를 속여 강한 감정 분포와 약한 감정 분포를 구분하기 어렵게 만들도록 adversarial loss 함수인 Ladv\mathcal{L}_{adv} (화살표 ③)를 사용하여 학습된다.
      • Ladv\mathcal{L}_{adv}의 목표는 Encoder가 약한 감정 샘플의 임베딩 표현을 강한 감정 샘플처럼 보이게 만들어 Critic이 둘을 구별하지 못하도록 하는 것이다. 이는 Critic 네트워크의 파라미터가 고정된 상태에서 Encoder만 업데이트된다.
    • CriticEncoder는 교대로 학습되며, Critic은 두 분포를 더 잘 구별하려고 하고 EncoderCritic을 속이려고 하면서 서로 경쟁적으로 발전한다.
  • 3단계: AV 도메인 감정 학습 (AV domain emotion learning)

    • Critic 네트워크의 도움으로 적대적으로 학습된 Encoder(fef_e)는 FC layer(frf_r)와 함께 최종적으로 Arousal 및 Valence 값(LAV\mathcal{L}_{AV})을 예측하도록 학습된다 (화살표 ④).
    • LAV\mathcal{L}_{AV}는 예측된 AV 값과 실제 AV 레이블 간의 RMSE, PCC, CCC를 최소화하는 것을 목표로 한다.

이러한 학습 과정을 통해 모델은 감정의 본질적인 변화에 집중하고 사람의 고유한 특징(person-dependent features)에 덜 의존적인 잠재 특징을 학습하여, 궁극적으로 person-independent 한 얼굴 감정 인식 성능을 달성한다.

  • 학습(Train)과 추론(Inference)의 구분:

    • 점선으로 표시된 부분 (Encoder fef_e (파란색), Critic fcf_c, FC layer frf_r)은 학습 과정에 사용된다.
    • 빨간색 점선으로 표시된 부분 (Encoder fef_e (주황색)와 FC layer frf_r)은 추론 과정에 사용된다. 즉, 추론 시에는 학습된 EncoderFC layer만을 사용하여 AV 값을 예측한다.
  • 손실 함수 (Loss Functions):

    • Critic Loss (Lc\mathcal{L}_c): Eq. (6)에서 정의되며, contrastive loss와 VDM(Variational Divergence Minimization)의 결합을 통해 두 감정 분포 P와 Q를 구별하는 Critic 네트워크를 훈련시킨다. 이 손실 함수는 margin α\alpha를 사용하여 유사한 샘플의 클래스 내 응집도(intra-class compactness)를 높이고, 다른 샘플 간의 클래스 간 가변성(inter-class variability)을 증가시킨다.
    • Adversarial Loss (Ladv\mathcal{L}_{adv}): Encoder 네트워크를 학습시키는 손실 함수로, Eq. (1)에 기반한 Fisher IPM 또는 weak emotional distribution을 사용하여 Critic이 약한 감정 샘플을 강한 감정 샘플과 구별하기 어렵게 만든다. 이는 Encoder가 감정 강도에 따른 특징 차이를 잘 이해하도록 돕는다.
    • AV Domain Loss (LAV\mathcal{L}_{AV}): RMSE, PCC, CCC를 포함하는 손실 함수로, EncoderFC layer를 통해 예측된 Arousal/Valence 값과 실제 레이블 간의 오차를 최소화한다. 이는 감정 인식의 정확도를 향상시킨다.

종합적으로, 이 방법은 Otsu thresholding으로 감정 강도를 구분하고, contrastive adversarial learning을 통해 감정의 본질적인 특징을 학습하며, 적응형 margin을 도입하여 학습 안정성과 성능을 높이는 혁신적인 구조이다.

1.1. Otsu thresholding 기법

Otsu thresholding 기법이란?

Otsu thresholding은 Otsu 1979에 의해 제안된 비지도 학습 기반의 자동 이미지 이진화(binarization) 기법이다. 일반적으로 그레이스케일 이미지의 픽셀들을 두 개의 클래스(예: 전경과 배경)로 효과적으로 분리하는 최적의 임계값을 자동으로 찾아주는 데 사용된다.

핵심 원리는 다음과 같다.

  • 클래스 간 분산(inter-class variance) 최대화: 이미지의 픽셀 강도 히스토그램을 기반으로, 어떤 임계값을 기준으로 픽셀들을 두 그룹으로 나누었을 때, 두 그룹 간의 분산(difference)이 가장 커지도록 하는 임계값을 찾는 방식이다. 다시 말해, 각 그룹 내의 픽셀들은 서로 유사하고, 두 그룹은 서로 최대한 다르게 만드려는 목표를 가진다.
  • 수학적 표현: 임계값 tt에 대해 두 클래스의 가중치 ω0(t)\omega_0(t), ω1(t)\omega_1(t) (각 클래스에 속하는 픽셀의 비율)와 각 클래스의 평균 강도 μ0(t)\mu_0(t), μ1(t)\mu_1(t)를 사용하여 클래스 간 분산 σB2(t)\sigma_B^2(t)를 다음과 같이 정의한다.
    σB2(t)=ω0(t)ω1(t)(μ0(t)μ1(t))2\sigma_B^2(t) = \omega_0(t)\omega_1(t)(\mu_0(t) - \mu_1(t))^2
    Otsu 알고리즘은 이 σB2(t)\sigma_B^2(t)를 최대화하는 tt를 최적의 임계값으로 선택한다. 이 임계값은 두 클래스가 가장 잘 분리되는 지점을 의미한다.

강한 감정과 약한 감정으로 나누는 이유

이 논문에서는 Otsu thresholding 기법을 이미지의 픽셀 강도에 직접 적용하는 것이 아니라, 감정의 강도(emotion intensity)를 기준으로 이미지를 분류하는 데 활용한다.

  • 감정 강도의 정량화: 논문은 감정을 Arousal-Valence(AV) 공간에서 연속적인 값으로 표현한다. Arousal은 감정의 활성도를, Valence는 감정의 긍정/부정 정도를 나타낸다. 여기서 감정의 "강도"는 AV 평면에서 원점으로부터의 거리로 볼 수 있다. 즉, ya2+yv2\sqrt{y_a^2 + y_v^2} 값이 클수록 감정의 강도가 강하다고 해석할 수 있다.
  • 임계값 결정: Otsu thresholding은 이 감정 강도 (ya2+yv2\sqrt{y_a^2 + y_v^2}) 값들의 분포에 적용된다. 이를 통해 감정 강도 분포를 가장 잘 두 그룹으로 분리하는 최적의 임계값 δr\delta_r을 자동으로 찾아낸다. 이 임계값 δr\delta_r을 기준으로:
    • ya2+yv2<δr\sqrt{y_a^2 + y_v^2} < \delta_r인 샘플들은 약한 감정(weak emotion) 그룹(QQ)으로,
    • ya2+yv2δr\sqrt{y_a^2 + y_v^2} \ge \delta_r인 샘플들은 강한 감정(strong emotion) 그룹(PP)으로 분류된다.
  • 분리 학습의 필요성:
    • 감정 표현의 다양성: 강한 감정은 보통 더 명확하고 과장된 얼굴 표정을 동반하는 반면, 약한 감정은 미묘하고 해석하기 어려울 수 있다. 이러한 감정 강도에 따른 특징의 차이는 학습 관점에서 중요한 정보이다.
    • 적대적 학습의 효율성: 논문은 강한 감정과 약한 감정을 두 개의 별도 분포로 보고, 이 두 분포를 Critic 네트워크가 구별하도록 학습시킨다. 그리고 Encoder는 약한 감정을 강한 감정처럼 보이게 만들어 Critic을 속이도록 적대적으로 학습된다. 이렇게 강한/약한 감정을 명확히 구분함으로써, Encoder는 감정의 강도를 결정하는 핵심적인 표현(complex emotional elements)에 집중하여 학습하게 된다.
    • 비지도 방식의 장점: Otsu thresholding은 수동으로 임계값을 설정하는 대신 데이터의 내재된 감정 강도 분포에 따라 자동으로 최적의 임계값을 찾아주므로, 주관적인 판단을 배제하고 유연하게 감정을 분류할 수 있다.

결론적으로, Otsu thresholding은 AV 공간에서의 감정 강도 분포를 활용하여 얼굴 이미지들을 비지도 방식으로 강한 감정과 약한 감정으로 효과적으로 분리하고, 이는 제안된 적대적 학습 프레임워크가 감정의 본질적인 변화를 더 잘 이해하도록 돕는 중요한 전처리 단계이다.


1.2. 강한 감정과 약한 감정을 구분하는 네트워크가 인간의 identity와 emotion을 분리할 수 있는 이유

이는 이 논문에서 제안하는 적대적 학습(Adversarial Learning) 구조의 핵심적인 역할과 의도에 대한 질문이다. Encoder 네트워크가 직접적으로 "identity와 emotion을 분리하라"는 명시적인 지시를 받지는 않지만, 간접적으로 이 목표를 달성하도록 유도된다.

그 과정을 단계별로 살펴보자.

  1. Person-dependent bias의 원인:

    • 대부분의 기존 FER 모델은 입력 이미지와 AV 레이블 간의 직접적인 매핑을 학습하는 지도 학습 방식을 따른다. 이러한 방식은 학습 데이터에 존재하는 사람 고유의 특징(예: 얼굴 구조, 피부 톤, 머리 스타일 등)이나 특정 인물의 표정 습관까지 감정 특징으로 학습해 버릴 수 있다.
    • 특히 Zeng, Shan, and Chen 2018에서도 언급했듯이 복잡하거나 강한 표정에서 이러한 현상이 자주 발생하여, 모델이 감정 자체보다는 사람에 의존적으로(person-dependent) 감정을 인식하게 되는 문제가 생긴다.
  2. 적대적 학습의 역할:

    • 이 논문에서 Critic(fcf_c) 네트워크는 강한 감정 특징(ZsZ_s) 분포와 약한 감정 특징(ZwZ_w) 분포를 구별하도록 학습된다 (Lc\mathcal{L}_c). Critic은 "이 특징이 강한 감정을 나타내는가, 약한 감정을 나타내는가?"를 판단하는 전문가가 된다.
    • 이후 Encoder(fef_e) 네트워크는 이 Critic을 속이도록 학습된다. 구체적으로, Encoder는 약한 감정 이미지(XwX_w)로부터 추출한 잠재 특징(ZwZ_w)을 Critic이 강한 감정 특징(ZsZ_s)과 구별하지 못하도록 만들어야 한다 (Ladv\mathcal{L}_{adv}).
    • 이 과정에서 중요한 점은, Encoder가 약한 감정을 강한 감정처럼 보이게 만들려면 단순히 사람 고유의 특징(예: A라는 사람이 약하게 웃는 얼굴)을 그대로 전달하는 것이 아니라, "감정의 강도"를 표현하는 본질적인 특징을 찾아내어 증폭시켜야 한다는 것이다.
  3. Person-independent feature 학습으로의 연결:

    • 핵심 감정 요소 집중: 약한 감정(XwX_w)에는 사람 고유의 특징과 감정 특징이 미묘하게 섞여 있다. 이 약한 감정 특징(ZwZ_w)을 Critic이 구별할 수 없는 강한 감정 특징처럼 만들려면, Encoder는 사람마다 다르게 나타날 수 있는 외적인 특징(identity-specific)보다는, 모든 사람에게 공통적으로 나타나는 감정의 본질적인 변화(emotion-specific)에 집중해야 한다. 예를 들어, '미소를 짓는다는 감정'의 강도를 높이려면 입꼬리의 미묘한 변화를 더 명확하게 학습해야지, 특정 인물의 눈썹 모양이나 피부 질감에 집중해서는 안 된다.
    • 일반화된 표현 학습: Encoder는 다양한 사람들의 약한 감정 샘플을 받아 이를 "강한 감정"으로 변환하는 법을 배운다. 이때, 만약 Encoder가 특정 사람의 특징에 의존하여 감정 강도를 조절한다면, Critic은 다른 사람의 약한 감정 샘플이 들어왔을 때 이를 "강한 감정"으로 인식하지 못할 것이다. 따라서 Encoder는 Critic을 성공적으로 속이기 위해 사람의 identity에 관계없이 감정의 강도를 조절할 수 있는 일반화된(generalized) 감정 표현을 학습하게 된다.
    • 간접적인 Disentanglement: 이러한 적대적 학습 과정은 결과적으로 감정의 강도와 관련된 특징과 사람의 identity와 관련된 특징을 간접적으로 분리(disentangle)하는 효과를 가져온다. Encoder가 감정 강도를 성공적으로 조작하려면, 감정 관련 특징을 독립적으로 제어할 수 있어야 하며, 이는 identity 관련 특징의 영향을 최소화하는 방향으로 학습을 유도한다.
    • Contrastive Loss의 기여: Critic 네트워크의 Contrastive Loss는 개별 샘플 간의 유사성/비유사성을 학습한다. 이는 latent space에서 유사한 감정(강하든 약하든)은 가깝게, 다른 감정은 멀게 배치되도록 유도한다. 특히 adaptive margin은 학습의 난이도를 조절하여, 단순히 '강함'과 '약함'이라는 이분법적 구분을 넘어, 감정 강도의 스펙트럼 내에서 미묘한 차이를 이해하는 데 도움을 주어, 결과적으로 더 정교하고 person-independent한 감정 임베딩을 형성하도록 기여한다.

따라서 Encoder는 직접적으로 "identity와 emotion을 분리하라"는 명령을 받지 않지만, Critic과의 적대적 게임을 통해 "약한 감정을 강한 감정처럼 보이게 만들라"는 목표를 달성하기 위해 필연적으로 사람의 고유한 특징은 무시하고 감정의 본질적인 변화에만 집중하는 잠재 특징을 학습하게 되는 것이다. 이것이 person-independent FER을 달성하는 핵심 원리이다.

profile
상어 인형을 좋아하는 사람

0개의 댓글