Study/머신러닝

Generation-생성 모델 평가지표

김 도경 2025. 1. 9. 15:55
판별모델의 평가 지표
  • 범주형 데이터를 활용하는 판별 모델의 평가 지표
    - 분류 문제에서는 주어진 데이터에 대해 범주를 얼마나 잘 맞췄는지에 대해 평가
    - 직관적인 개념인 정확도 (Accuracy)를 많이 활용
    - 문제 상황: 각 클래스별 데이터가 불균형한 경우에 정확도만으로 평가할 수 없음
    - 해결 방안: 정밀도 (Precision), 재현율 (Recall), F-점수 (F-score) 등 다른 지표를 통해 정확도의 단점을 보완
  • 연속형 데이터를 활용하는 판별 모델의 평가 지표
    - 회귀 분석에서는 실제 값과 모델이 예측한 값의 차이를 기반으로 평가
    - 대표적으로 평균 제곱 오차 (Mean Square Error, MSE), 평균 절대 오차 (Mean Absolute Error, MAE)가 있음
    - 문제 상황: 주어진 데이터의 값의 범위가 다른 경우, MSE와 MAE만으로 평가할 수 없음
    - 해결 방안: 결정 계수 (R-squared), 상관 계수 (Correlation Coefficient) 등을 도입

생성 모델 평가 지표의 필요성
  • 생성 모델 평가 지표의 필요성
    - 판별 모델과 달리 정답이 없어 평가가 어려움
    - 평가자의 주관이나 배경지식이 강하게 반영되는 경향이 있음
    - 다양한 평가 지표가 제안되었고 사용되고 있음

  • 생성 모델의 평가가 어려운 이유
    - 판별 모델과 달리 비교할 정답이 존재하지 않아 결과를 직접적으로 비교할 대상이 없음
    - 훈련 데이터를 정답으로 사용할 경우, 훈련 데이터를 그대로 복제하는 현상 발생

  • 사람을 활용한 생성 모델 평가 방식
    - 생성된 결과에 대해 사람의 주관이 들어갈 수 있음 (예시: 슬픈 눈에 웃는 입 -> 웃는 사람? 우는 사람?)
    - Amazon Mechanical Turk (AMT) 등을 활용하여 사람이 직접 평가
    - 전문성이 요구되는 분야 (의료 등)에는 적용하기 어려움

  • 생성 모델을 어떻게 평가해야 하는가?
    - 개인의 주관이 개입되지 않아야 하고, 연구자들이 공감할 수 있는 객관적인 지표 필요
         - 생성된 결과물의 품질 (Fidelity)
         - 생성된 결과물의 다양성 (Diversity)

  • 생성 모델의 평가 지표 – 다른 모델을 활용
    - Inception Score (IS)
    - Fréchet Inception Distance (FID)
    - 개선된 정밀도, 재현율 (Improved Precision & Recall) 
    - 조건부 정확도 (Conditional Accuracy)
    - Learned Perceptual Image Patch Similarity (LPIPS) 
    - CLIP-Score

  • 어떤 항목들을 평가
    - 충실도 (Fidelity): 이미지의 품질
    - 다양성 (Diversity): 이미지의 다양성

  • 단순한 방법의 평가지표
    - 훈련에 사용한 원본 데이터와 생성된 결과물을 비교
          - 픽셀 거리 (Pixel Distance)
          - 특징 거리 (Feature Distance)

 

Inception Score (IS)

– ImageNet pretrained Classifier를 활용하는 지표
- 선명하면 특정 클래스로 분류될 확률이 높음 & 다양하면 각 클래스에 고르게 분포되어 있음
- 다양성과 품질 모두 고려하는 지표이나 ImageNet이 아닌 경우 측정이 어렵고 취약점을 가짐

  • Inception Score (IS)
    - Inception v3 모델을 분류기로 이용하여 GAN을 평가하기 위해 고안된 지표
    - 예리함 (Sharpness) 과 다양성 (Diversity) 두 가지를 주요하게 고려
  • 무질서도 (Entropy)
    - 예리함과 다양성 지표는 무질서도 (Entropy)로 해석 가능함
    - 무질서도가 높음 → 임의의 변수 x에 대해 예측되는 y의 값이 많음 → 예측이 어려움
    - 무질서도가 낮음 → 임의의 변수 x에 대해 예측되는 y의 값이 적음 → 예측 가능

  • 예리함 (Sharpness)
    - 특정 숫자 (9) 를 생성했을 때, 숫자 분류기가 제대로 인식한다면 좋은 예리함을 가진 데이터를 생성한 것!

  • 다양성(Divergence)
    - 좋은 품질의 데이터를 생성하는 것만큼 다양한 데이터를 생성하는 것도 중요

  • Inception Score 계산
    - IS = Sharpness (S) ✕ Diversity (D)
    - 단순하지만 사람이 내리는 판단 기준과 상관 계수가 높음

  • 한계점
    - 분류기 모델의 훈련 데이터 셋과 다른 데이터를 생성하는 경우 제대로 평가하기 어려움
         - ImageNet으로 사전 훈련된 모델을 활용하며, 클래스 구분이 이에 속하지 않으면 평가 진행이 불가능
    - IS가 높은 데이터를 생성하면 계속 같은 데이터를 생성(Mode Collapse)
         - 오로지 생성된 데이터만을 이용하여 계산
    - 기울기 기반 (Gradient Based) 공격 , 리플레이 (Replay) 공격을 통해 점수 조작 가능
Fréchet Inception Distance (FID)

– ImageNet pretrained Feature를 활용, 특징 분포간 거리를 측정하는 지표
- 다양성과 품질 모두 고려하고 ImageNet이 아니어도 평가가 가능하나 두 지표를 각각 측정할 수 없음

  • FID
    - FID는 생성된 데이터의 특징 벡터를 이용하여 훈련 데이터와의 거리를 계산
    - IS와 마찬가지로 Inception v3을 활용하지만, 분류기를 활용하지 않고 특징 추출기로만 사용

  • Fréchet Inception Distance 계산
    - FID는 훈련 데이터와 생성 데이터를 모두 활용
    - 훈련 데이터와 생성 데이터의 각 분포를 정규 분포로 가정하고, 두 분포의 거리를 Fréchet 거리로 계산

  • 한계점
    - FID 점수는 Fidelity와 Diversity를 각각 평가할 수 없음
         - Fidelity가 강조된 모델인지, Diversity가 강조된 모델인지, 균형 잡힌 모델인지 알 수 없음

 

정밀도 와 재현율

- Precision = 모델이 양성이라고 예측했을 때, 실제로도 양성

- Recall = 실제로 양성일 때, 모델도 양성

 

생성 모델에서의 Precision : 생성된 데이터 중에서, 실제 데이터 분포에 아주 가까운 데이터

생성 모델에서의 Recall : 실제 데이터 중에서, 생성된 데이터 분포에 아주 가까운 데이터

 

  • 근방 (Close to)
    - “Close to” is defined in terms of the k-NN radii.
    - 반지름이 r 인 범위 내에 존재하면 근방에 속하는 데이터로 간주


  • Improved Precision 계산
    - 판별 모델에서의 Precision = (TP) / (TP+FP)
    - 생성 모델에서의 Improved Precision: 실제 데이터 분포 내의 생성된 데이터 / 생성된 데이터

  • Improved Recall 계산
    - 판별 모델에서의 Recall = (TP) / (TP+FN)
    - 생성 모델에서의 Improved Recall : 생성된 데이터 분포 내의 실제 데이터 / 실제 데이터

 

  • 한계점
    - 이상치에 민감 – 일부 데이터만 임베딩 위치가 변해도 값이 크게 변함 -> 평가 지표로서 불안정
    - 실제 데이터와 생성된 데이터의 분포가 동일하더라도 샘플링에 따라 점수가 낮을 수 있음

    - 매개변수에 민감: 반지름 k, 실제 데이터 셋의 크기 M, 생성 데이터 셋의 크기 N
    - 훈련 과정에서 일부 모드가 사라지더라도 이에 덜 민감하게 반응함
    - 계산량이 많음: 매 계산시 생성된 매니폴드를 알아야 하고, 반지름 k 이내의 데이터들을 계산해야 함

  • 문제 완화
    - Density: 반경의 합집합이 아닌 가중 합집합으로 계산하여 이상치에 대해 상대적으로 덜 민감
    - Coverage: 생성된 데이터에 대해 매번 계산하지 않고 실제 데이터 집합으로 미리 계산하여 안정적이고 계산량 감소
조건부 생성 모델
  • 일반 생성 모델
    - 데이터의 분포 p(X)를 학습
    - 생성되는 데이터의 의미를 제어할 수 없음

  • 조건부 생성 모델
    - 레이블이 주어졌을 때 데이터의 분포 p(X|Y)를 학습
    - 특정 조건(e.g. 숫자, 스타일)을 만족하는 데이터를 생성 가능

  • 조건부 생성 모델의 평가
    - IS, FID는 조건부 생성을 고려하지 않음
        - 조건에 맞지 않아도 충분히 다양하고 품질이 높다면 좋은 모델로 평가함

조건부 생성모델에 대한 평가 지표
  • Intra FID
    - 사전 훈련된 분류기의 정확도
       - 생성된 영상의 조건에 대한 특징 반영 정도 측정 : 사전훈련된 분류기의 생성 모델이 만든 새로운 데이터에 대한 정확도
    - 한계점
        - 사전훈련된 분류기에 크게 의존함
        - 조건부 생성을 제대로 못 하더라도 분류기의 분류 경계만 넘으면 됨
        - 조건 별로 동일한 영상만 생성해도 감점이 없음

  • CAS (Classification Accuracy Score)
    - 생성된 영상을 통한 분류기 학습, 평가
    - 사전훈련된 분류기의 정확도와 반대 과정 -> (한계점) 생성 모델마다 분류기를 학습해야 함

  • LPIPS (Learned Perceptual Image Patch Similarity)
    - 모델 특징 비교를 통한 영상간 유사도 측정
        - 원본 영상과 유사도가 낮다 = 더욱 다양하게 생성했다 로 해석
        - 생성된 고양이 끼리 닮지 않음 = 다양하게 생성됨

  • CLIP Score
    - Text와 Image 간의 유사도 측정
        - Text-Image 관계에 대한 평가 지표
           - Text-Image 관계를 학습한 CLIP을 특징 추출기로 활용, 유사도를 측정함

'Study > 머신러닝' 카테고리의 다른 글

적대적 생성 신경망(Generative Adversarial Networks)  (0) 2025.01.09
Generation-오토 인코더  (0) 2025.01.09
Generation-생성 모델  (2) 2025.01.09
CV 모델 성능 높이기  (0) 2025.01.09
CV 트렌드  (1) 2025.01.09