XAI 기법 - 100-hours-a-week/12-marong-Wiki GitHub Wiki
📍 설명 가능한 AI, XAI
AI가 생성한 결과와 아웃풋을 사용자가 이해하고 신뢰할 수 있도록 하는 일련의 프로세스와 방법
📍 AI와 XAI 비교
XAI는 머신 러닝 프로세스 중에 내린 각 결정을 추적하고 설명하기 위한 특정 기술과 방법을 구현
-
예측 정확도 일상 업무에서 AI를 얼마나 성공적으로 사용할 수 있는지를 결정하는 핵심 요소 → LIME(Local Interpretable Model-Agnostic-Explanations), 머신러닝 알고리즘에 의한 분류기 예측
-
추적성 의사 결정을 내릴 수 있는 방법을 제한하고, 머신 러닝 규칙 및 기능에 대한 범위를 더 좁게 설정하여 달성 → DeepLIFT(Deep Learning Important Features), 뉴런의 활성화를 기준 뉴런과 비교하고, 활성화된 각 뉴런 간의 추적 가능한 링크를 보여줌
-
의사 결정 이해 AI가 의사결정을 내리는 방법과 이유를 사람이 이해할 수 있도록 함
📍 XAI 종류
✔️ 특성 중요도 (Feature Importance)
주로 트리 기반 모델(예: 랜덤 포레스트, 그래디언트 부스팅) 에서 사용됨.
→ 중요도를 구분하는 것이 트리의 분할과 밀접한 관련이 있음
-
의사결정트리는 루트 노드(root node)에서 시작해 하위 분기점(자식 노드) 로 나뉨
-
각 분기점에서는 하나의 특성(Feature)를 기준으로 데이터를 분류
-
‘지니불순도, 한 노드에서 무작위로 선택된 두 샘플이 서로 다른 클래스에 속할 확률’ 을 최소화하는 방향으로 트리가 분할되면서 최종 결정이 나오게 됨
-
어떤 특성을 선택한 노드에서 지니 불순도가 크게 감소했다면, 최종 결정을 도출하는 데에 해당 노드와 해당 특성이 중요하다고 볼 수 있음
-
장점: 계산이 상대적으로 간단하고 빠르며, 모델의 전반적인 성능에 대한 중요한 특징을 식별하는 데 유용함
-
단점: 모델 특징적이라는 단점. 트리기반 모델에서 얻은 중요도는 다른 종류의 모델에서는 다를 수 있음. 중요도를 단순히 순위로 제공하며, 상호작용 효과나 비선형 관계를 제대로 반영하지 못할 수 있음
✔️ 국소적 설명 가능 모델-독립적 설명(LIME; Local Interpretable Model-agnostic Explanations)
복잡한 인공지능 모델이 왜 특정 결정을 내렸는지를 이해하기 위해 사용
ex. 어떤 고양이가 ‘고양이’라고 분류된 이유 설명
-
이미지를 여러 작은 부분으로 나누고 각 조각을 마스킹하거나 마스킹하지 않은 조합으로 여러 이미지를 생성
-
ex. 개구리 사진에서는 눈이나 다리 부분을 각각 가린 이미지를 만듦 → 이미지를 원래 AI 모델에 입력하여 각 이미지가 개구리로 분류될 확률을 계산
-
대체 모델(surrogate mode, 실제 모델에 근사한 시뮬레이션 결과를 도출하는 단순한 모델)을 학습시켜, 특정 슈퍼픽셀이 마스킹되었을 때 블랙박스 모델의 예측에 얼마나 영향을 미치는지 분석
-
장점: 모델의 구조를 알 필요가 없어 모델에 독립적, 어떤 모델에도 적용 가능, 각 특징이 개별 예측에 미친 영향을 쉽게 이해 가능, 특정 예측에 대한 상세한 설명 제공
-
단점: 각 예측마다 다수의 샘플링과 훈련이 필요해 시간이 오래걸릴 수 있음. 동일 데이터에 대해 다른 설명이 나올 수 있으며, 데이터셋이 너무 클 경우 적용이 어려움
✔️ 샤플리 부가 설명(SHAP; Shapley Additive exPlanations)
‘게임 이론’ 에 기반해 AI 모델의 예측을 설명하는 법
협력 게임 이론에서 플레이어 각각의 기여도에 맞게 이익을 분배하는 방법, SHAP는 이러한 원리를 바탕으로 각 입력 특징이 AI 모델의 예측에 얼마나 기여했는지를 계산 ex. 주택 가격 예측 시, 면적, 위치, 방 개수 등이 각각 얼마나 중요한지를 보여줌
- 기준 모델은 아무 특징 없는 상태에서 시작, 예측 값이 모든 데이터의 평균인 상태
- 모든 가능한 특징 조합을 생성한 뒤, 각 조합에 대해 모델의 예측을 계산
- 각 특징이 조합에 추가됐을 때 예측 값이 어떻게 변하는지 관찰 → 특정 특징이 모델 예측에 얼마나 기여했는지 알 수 있음
✔️ 계층적 타당성 전파 (LRP; Layer-wise-Relevance Propagation)
신경망의 각 층에서 기여도 값을 추적하여 애초 입력 데이터가 최종 예측에 얼마나 기여했는지 계산하는 방법
-
각 은닉층에서 계산된 기여도 값을 이전 은닉층으로 전달(타당성 전파; Relevance Propagation)
-
주로 이미지 분류와 같은 시각 작업에서 사용
-
은닉층 별로 계산한 값을 이용해 이미지 내 각 픽셀의 기요도를 히트맵으로 표시
-
장점: 결과를 시각적으로 표현하기 때문에 직관적
- 디컨볼루션: 신경망의 연결을 역으로 재생하는 기법
- LRP는 디컨볼루션을 응용하면서 이전 기법들의 단점을 극복함. 신경망의 내부 작동 방식을 이해하는 데 도움이 됨
-
단점: 특정 모델에 의존적, 신경망이 깊어질수록 계산 비용이 증가, 기여도 해석에서 그치기 때문에 실제 추론 결과를 사람이 이해할 수 있게 설명하려면 추가적인 맥락 필요
✔️ DGNN의 생성 경계를 고려한 탐색적 샘플링 방식(Explorative Sampling Considering the Generative Boundaries of Deep Generative Neural Networks)
생성 모델(GANs, VAE 등) 이 텍스트나 이미지를 만드는 방식을 설명하기 위한 기법
ex. AI가 다양한 스타일의 그림을 그릴 때 어떤 스타일을 생성할 수 있는지를 확인하고 이를 최대한 다양하게 만들도록 도와줌
-
DGNN(딥 생성 신경망)은 이미지를 생성할 때 다차원 공간에서 데이터를 만듦
-
이 공간은 여러 격자(grid)나 경계(boundary)로 나누어져 있음
-
각 격자는 이미지의 특정 특징을 나타냄.
- 탐색적 샘플링: 이 격자 사이의 이미지를 샘플링해서 생성된 이미지의 특징을 확인하는 것
-
장점: 각 격자가 어떤 특징을 하는지 이해할 수 있어서 이를 기반으로 의도적으로 각 격자를 제어할 수 있음
-
단점: 샘플링 과정이 복잡하고 많은 시간이 소요됨. 경계 값을 언어로 표현하는 과정에서 사람의 편견이 개입될 여지가 있음
추가 공부 및 도입 여부, 적용 방식 작성 필요