Feature Attribution & Data Attribution

Ryu Jihoon·2024년 9월 6일
post-thumbnail

Feature Attribution과 Data Attribution

Feature AttributionData Attribution머신러닝 모델의 해석과 관련된 용어로, 각각 모델의 예측 결과에 대해 어떤 특성(feature) 또는 데이터 포인트(data)가 얼마나 영향을 미쳤는지 평가하는 방법입니다.

1. Feature Attribution (특성 기여도 분석)

Feature Attribution모델이 예측을 할 때, 어떤 입력 특성(feature)이 예측 결과에 얼마나 기여했는지를 측정하는 방법입니다. 즉, 입력 데이터의 각 특성이 모델의 출력에 얼마나 영향을 미치는지를 평가하는 것입니다.

주요 개념:

  • 목적: 모델의 해석 가능성을 높이는 것이 주요 목적입니다. 각 특성이 예측에 어떤 기여를 했는지 알면, 모델의 결정 방식을 더 명확히 이해할 수 있습니다.
  • 예시: 예를 들어, 신용 점수 예측 모델에서 나이, 소득, 대출 이력과 같은 특성들이 최종 예측에 각각 어느 정도 기여했는지 확인할 수 있습니다.

방법들:

  1. SHAP (SHapley Additive exPlanations): 게임 이론에서 파생된 방법으로, 각 특성의 기여도를 공정하게 나누어 계산합니다.
  2. LIME (Local Interpretable Model-agnostic Explanations): 모델이 특정 데이터 포인트에 대해 예측할 때 각 특성이 얼마나 기여했는지 분석합니다.
  3. 특성 중요도(Feature Importance): 모델의 예측에서 각 특성의 상대적인 중요도를 측정하는 방법으로, 주로 랜덤 포레스트 등 트리 기반 모델에서 사용됩니다.

사용 사례:

  • 모델 해석: 예를 들어, 의료 진단 시스템에서 특성 기여도 분석을 통해 특정 환자의 예측 결과에 어떤 변수들이 중요한 역할을 했는지 이해할 수 있습니다.
  • 의사 결정 지원: 예를 들어, 은행 대출 모델에서 "소득"과 "신용 점수"가 대출 승인에 큰 영향을 미친다고 알려진다면, 이를 근거로 더 나은 의사 결정을 내릴 수 있습니다.

2. Data Attribution (데이터 기여도 분석)

Data Attribution특정 예측 결과에 대해 어떤 데이터 포인트(data point)가 얼마나 기여했는지를 분석하는 방법입니다. 이는 모델의 훈련 데이터에서 어떤 데이터 포인트가 예측에 중요한 역할을 했는지를 측정하는 것입니다.

주요 개념:

  • 목적: 모델이 잘못된 예측을 할 경우, 어떤 훈련 데이터가 이러한 예측에 영향을 미쳤는지 파악하여 모델 개선이나 데이터 수정에 도움을 줄 수 있습니다.
  • 예시: 특정 고객의 신용 점수를 예측할 때, 모델이 사용한 훈련 데이터 중에서 어떤 데이터 포인트들이 이 예측에 큰 영향을 미쳤는지 확인할 수 있습니다.

방법들:

  1. Influence Functions: 모델이 특정 예측을 할 때, 각 훈련 데이터 포인트가 그 예측에 얼마나 영향을 미쳤는지 계산하는 방법입니다. 이는 주로 Hessian 행렬을 사용하여 훈련 데이터 포인트의 영향력을 근사합니다.
  2. LOO (Leave-One-Out): 각 데이터 포인트를 하나씩 제거하고 모델을 다시 훈련하여 그 데이터 포인트가 예측에 미치는 영향을 평가하는 방법입니다.
  3. TracIn: 모델의 훈련 과정에서 특정 훈련 데이터가 모델 예측에 얼마나 기여했는지 추적하는 방법입니다.

사용 사례:

  • 데이터 정제 및 개선: 예를 들어, 잘못된 예측이 나온 경우, 어떤 훈련 데이터가 그 예측에 큰 영향을 미쳤는지 파악하여 데이터의 오류를 수정할 수 있습니다.
  • 훈련 데이터 선택: 모델을 훈련할 때 중요한 데이터 포인트를 식별하여, 훈련 시간을 줄이거나 데이터 품질을 개선할 수 있습니다.

비교: Feature Attribution vs Data Attribution

Feature AttributionData Attribution
분석 대상입력 특성(feature)훈련 데이터 포인트(data point)
목적모델 예측에 어떤 특성이 중요한지 평가모델 예측에 어떤 데이터 포인트가 중요한지 평가
사용 방법SHAP, LIME, 특성 중요도Influence Functions, LOO, TracIn
주요 활용모델 해석, 특성 중요도 분석데이터 품질 개선, 잘못된 예측 원인 분석
예시특정 환자의 의료 진단에서 중요한 특성 분석특정 고객의 예측 결과에 영향을 준 훈련 데이터 분석

요약:

  • Feature Attribution입력 데이터의 특성이 예측에 얼마나 기여했는지를 평가하여 모델 해석 가능성을 높이는 방법입니다.
  • Data Attribution훈련 데이터의 각 포인트가 예측에 얼마나 영향을 미쳤는지 평가하여 모델의 오류 원인을 분석하고, 데이터 품질을 개선하는 방법입니다.
profile
CSE Junior

0개의 댓글