본문으로 건너뛰기

© 2026 Molayo

Lilian헤드라인2026. 05. 07. 02:41

머신러닝 모델의 예측을 어떻게 설명할까?

요약

머신러닝 모델이 금융, 의료, 사법 등 핵심 영역에서 사용됨에 따라, 모델의 결정 과정을 이해하고 신뢰성을 확보하는 것이 필수적입니다. 특히 딥러닝 기반의 복잡한 '블랙박스' 모델들은 그 작동 원리를 설명하기 어렵다는 문제가 있습니다. 이에 따라 연구 분야가 활발히 진행되고 있으며, 해석 가능한 모델(Interpretable Models)을 설계하거나 기존 블랙박스 모델의 예측 결과를 사후적으로 분석하는 방법론들이 제시되고 있습니다.

핵심 포인트

  • AI가 핵심 산업에 깊숙이 침투하면서, 모델의 결정 과정 설명(Explainability)과 공정성 검증이 법적/윤리적 요구사항으로 부상했습니다.
  • 딥러닝 모델은 복잡하여 '블랙박스' 문제를 야기하며, 이는 신뢰도 확보와 실질적인 활용에 큰 장애물입니다.
  • 해석 가능한 모델(Interpretable Models)로는 선형 회귀 분석, 나열 베이스, 의사결정 목록 등이 있으며, 이들은 구조적으로 투명성을 제공합니다.
  • 랜덤 포레스트는 여러 개의 해석 가능한 결정 트리로 구성되어 있어, 블랙박스라는 오해와 달리 본질적인 해석 가능성을 가집니다.

머신러닝 모델은 건강 관리, 사법 시스템, 금융 산업과 같은 핵심 영역으로 침투하기 시작했습니다. 따라서 모델이 결정을 내리는 방식을 파악하고 결정 과정이 인종적 요구사항이나 법적 규정에 부합하는지 확인하는 것이 필수적입니다.

동시에, 딥러닝 모델의 급속한 성장으로 복잡한 모델을 해석하는 요구가 더욱 강화되고 있습니다. 사람들은 일상생활의 핵심 측면에서 AI 의 힘을 완전히 활용하려는 열망이 있습니다. 그러나 충분한 모델 신뢰도나 예기치 않은 행동을 설명할 수 있는 효율적인 절차 없이는 이를 수행하기 어렵습니다. 특히 딥 신경망은 블랙박스로 태어났기 때문입니다.

다음과 같은 사례를 생각해 보세요:

  • 금융 산업은 엄격하게 규제되어 있으며, 대출 기관은 법에 의해 공정한 결정을 내리고 신용 모델을 설명해야 하며, 대출 신청을 거절할 때마다 이유를 제공해야 합니다.
  • 의학적 진단 모델은 인간의 생명을 책임집니다. 블랙박스 모델의 지시에 따라 환자를 치료할 만큼 충분히 신뢰할 수 있는 방법은 무엇입니까?
  • 범죄자 재범 위험 예측 모델이 법원에서 사용될 때, 모델이 공평하고 정직하며 차별적인 방식으로 행동하는지 확인해야 합니다.
  • 자율주행차가 갑자기 비정상적으로 행동하고 그 이유를 설명할 수 없다면, 우리는 대규모 실용 교통에서 이 기술을 사용할 만큼 충분히 편안할까요?

Affirm 에서 우리는 매일 수만 개의 연체 대출을 발행하고 있으며, 우리의 신용 평가 모델은 모델이 한 사람의 대출 신청을 거절할 때 거절 사유를 제공해야 합니다. 이것이 저에게 더 깊이 파고들고 이 글을 쓰게 된 동기가 하나입니다. 모델 해석 가능성 (Model Interpretability) 은 머신러닝의 큰 분야입니다. 이 리뷰는 모든 연구를 고갈시키려는 것이 아니라 시작점으로 봉사합니다.

해석 가능한 모델

Lipton (2017) 은 해석 가능한 모델의 특성을 이론적 리뷰 논문 "모델 해석 가능성의 신화": 인간은 알고리즘 (algorithmic transparency) 을 완전히 이해하여 계산 과정을 반복 (simulatability) 할 수 있고, 모델의 각 개별 부분은 직관적인 설명을 (decomposability) 가질 수 있습니다.

많은 고전 모델은 상대적으로 간단한 구조를 가지고 있으며, 자연스럽게 모델 특유의 해석 방법을 제공합니다. 동시에 더 나은 해석 가능한 모델을 만드는 데 도움이 되는 새로운 도구가 개발되고 있습니다 (Been, Khanna, & Koyejo, 2016; Lakkaraju, Bach & Leskovec, 2016).

회귀 분석

선형 회귀 모델의 일반적인 형태는 다음과 같습니다:

$$ y = w_0 + w_1 x_1 + w_2 x_2 + \dots + w_n x_n $$

계수는 독립 변수가 한 단위 증가할 때 반응에 유발되는 변화를 설명합니다. 계수는 특징이 표준화되지 않았을 경우 직접 비교할 수 없습니다 (sklearn.preprocessing.StandardScalar 과 RobustScaler 를 확인), 왜냐하면 다른 특징의 한 단위는 매우 다른 것을 의미할 수 있기 때문입니다. 표준화 없이, 곱 $w_i \dot x_i$ 는 하나의 특징이 반응에 기여하는 정도를 정량화할 수 있습니다.

나열 베이스

나열 베이스는 "Naive"로 명명된 이유는 특징이 서로 독립적이고 각 것이 출력에 독립적으로 기여한다는 매우 단순화된 가정에 작동하기 때문입니다.

특징 벡터 $\f x = [x_1, x_2, \dots, x_n]$와 클래스 라벨 $c \in {1, 2, \dots, C}$를 주어진 경우, 이 데이터 포인트가 이 클래스에 속할 확률은 다음과 같습니다:

나열 베이스 분류기는 다음과 같이 정의됩니다:

$$ \hat{y} = \arg\max_{c \in 1, \dots, C} p(c) \prod_{i=1}^n p(x_i | c) $$

모델이 학습 과정에서 $p(x_i \vert c)$라는 사전 확률을 배웠기 때문에, 개별 특징 값의 기여도는 사후 확률인 $p(c \vert x_i) = p(c)p(x_i \vert c) / p(x_i)$로 쉽게 측정할 수 있습니다.

의사결정 나무/의사결정 목록

의사결정 목록 (Decision Lists)은 일반적으로 if... then... else... 문법으로 구성된 불리안 함수들의 집합입니다. if 조건에는 하나 이상의 특징을 포함하는 함수와 불리안 출력을 포함합니다. 의사결정 목록은 해석 가능성이 뛰어나며, 트리 구조로 시각화할 수 있습니다. 의사결정 목록에 대한 많은 연구는 모델 자체만큼이나 해석 가능성이 중요한 의료 응용 분야에서 주도됩니다.

아래에는 몇 가지 유형의 의사결정 목록이 간략히 설명됩니다:

  • Falling Rule Lists (FRL) (Wang and Rudin, 2015) 는 특징 값에 대해 완전한 모노토니성을 강제합니다. 예를 들어 이진 분류 컨텍스트에서 중요한 점은, 각 규칙과 관련된 예측 확률 $Y=1$이 의사결정 목록을 아래로 이동할수록 감소한다는 것입니다.
  • Bayesian Rule List (BRL) (Letham et al., 2015) 는 가능한 의사결정 목록에 대한 사후 분포를 생성하는 생성 모델입니다.
  • Interpretable Decision Sets (IDS) (Lakkaraju, Bach & Leskovec, 2016) 는 분류 규칙의 집합을 생성하기 위한 예측 프레임워크입니다. 학습은 정확도와 해석성을 동시에 최적화합니다. IDS 는 나중에 설명할 블랙박스 모델 해석을 위한 BETA 방법과 밀접한 관련이 있습니다.

랜덤 포레스트 (Random Forests)

우연히 많은 사람들이 랜덤 포레스트 모델을 블랙박스라고 믿고 있지만, 이는 사실이 아닙니다. 랜덤 포레스트의 출력은 많은 수의 독립적인 의사결정 나무에 대한 다수 투표이며, 각 나무는 본질적으로 해석 가능하기 때문입니다.

단 하나의 트리를 한 번에 살펴보면 개별 특징의 영향을 평가하는 것은 그리 어렵지 않습니다. 전체 랜덤 포레스트의 글로벌 특징 중요도는 앙상블의 모든 트리에 대해 평균 노드 불순도 감소량을 통해 정량화할 수 있습니다 ("mean decrease impurity").

한 인스턴스 (instance) 에서는, 모든 트리의 의사결정 경로가 잘 추적되므로 부모 노드의 데이터 포인트 평균 값과 자식 노드의 평균 값 사이의 차이를 사용하여 이 분할의 기여도를 근사할 수 있습니다. 랜덤 포레스트 해석에 대한 더 많은 내용을 읽어보려면: Interpreting Random Forests 시리즈 블로그 게시물을 참조하세요.

블랙박스 모델 해석 (Interpreting Black-Box Models)

많은 모델은 해석 가능하도록 설계되지 않았습니다. 블랙박스 모델을 설명하는 접근법은 훈련된 모델에서 정보를 추출하여 모델의 예측 결과를 정당화하는 것을 목표로 하며, 모델이 어떻게 작동하는지 자세히 알 필요는 없습니다. 해석 프로세스가 모델 구현과 독립적으로 유지되도록 하는 것은 실제 응용 프로그램에 좋습니다: 기본 모델이 지속적으로 업그레이드되고 정교해져도, 그 위에 구축된 해석 엔진은 변경 사항을 걱정하지 않습니다.

모델의 투명성과 해석 가능성을 유지할 필요가 없다면, 더 많은 파라미터와 비선형성 계산을 추가하여 모델의 표현력 (expressivity) 을 더 큰 힘으로 부여할 수 있습니다. 이것이 심층 신경망이 풍부한 입력을 포함하는 작업에서 성공적인 이유입니다.

해설이 어떻게 제시되어야 하는지에 대한硬性 요구사항은 없지만, 주요 목표는 주로 다음에 답하는 것입니다: 나는 이 모델을 신뢰할 수 있나? 우리가 모델에 의존하여 중요한 결정이나 생명을 건 결정을 내릴 때, 우리는 미리 모델을 신뢰할 수 있는지 확인해야 합니다.

The interpretation framework should balance between two goals:

Fidelity: the prediction produced by an explanation should agree with the original model as much as possible.
Interpretability: the explanation should be simple enough to be human-understandable.

Side Notes: The next three methods are designed for local interpretation.

Prediction Decomposition

Robnik-Sikonja and Kononenko (2008) proposed to explain the model prediction for one instance by measuring the difference between the original prediction and the one made with omitting a set of features.

Let’s say we need to generate an explanation for a classification model $f: \mathbf{X} \rightarrow \mathbf{Y}$. Given a data point $x \in X$ which consists of $a$ individual values of attribute $A_i$, $i = 1, \dots, a$, and is labeled with class $y \in Y$. The prediction difference is quantified by computing the difference between the model predicted probabilities with or without knowing $A_i$:

$$ \text{probDiff}_i (y | x) = p(y| x) - p(y | x \backslash A_i) $$

(The paper also discussed on using the odds ratio or the entropy-based information metric to quantify the prediction difference.)

Problem: If the target model outputs a probability, then great, getting $ p(y \vert x) $ is straightforward. Otherwise, the model prediction has to run through an appropriate post-modeling calibration to translate the prediction score into probabilities. This calibration layer is another piece of complication.

Another problem: If we generate $x \backslash A_i$ by replacing $A_i$ with a missing value (like None, NaN, etc.), we have to rely on the model's internal mechanism for missing value imputation. A model which replaces these missing cases with the median should have output very different from a model which imputes a special placeholder. One solution as presented in the paper is to replace $A_i$ with all possible values of this feature and then sum up the prediction weighted by how likely each value shows in the data:

Where $p(y \vert x \leftarrow A_i=a_s)$ is the probability of getting label $y$ if we replace the feature $A_i$ with value $a_s$ in the feature vector of $x$. There are $m_i$ unique values of $A_i$ in the training set.

With the help of the measures of prediction difference when omitting known features, we can decompose the impact of each individual feature on the prediction.

Local Gradient Explanation Vector

This method (Baehrens, et al. 2010) is able to explain the local decision taken by arbitrary nonlinear classification algorithms, using the local gradients that characterize how a data point has to be moved to change its predicted label.

Let’s say, we have a Bayes Classifier which is trained on the data set $X$ and outputs probabilities over the class labels $Y$, $p(Y=y \vert X=x)$. And one class label $y$ is drawn from the class label pool, ${1, 2, \dots, C}$. This Bayes classifier is constructed as:

$$ f^{*}(x) = \arg \min_{c \in {1, \dots, C}} p(Y \neq c \vert X = x) $$

The local explanation vector is defined as the derivative of the probability prediction function at the test point $x = x_0$. A large entry in this vector highlights a feature with a big influence on the model decision; A positive sign indicates that increasing the feature would lower the probability of $x_0$ assigned to $f^{*}(x_0)$.

그러나 이 접근법은 모델 출력이 확률 (위에서 언급한 "Prediction Decomposition" 방법과 유사) 이어야 함을 요구합니다. 원래 모델 ( "$f$" 로 표시됨) 이 확률을 생성하지 못한다면 어떻게 될까요? 논문이 제안한 바와 같이, 우리는 Bayes 분류기 $f^{*}$ 와 유사한 형태로 다른 분류기로 $f$ 를 근사할 수 있습니다:

(1) 훈련 데이터에 Parzen 윈도우를 적용하여 가중 클래스 밀도를 추정합니다:

$$ \hat{p}{\sigma}(x, y=c) = \frac{1}{n} \sum{i \in I_c} k_{\sigma} (x - x_i) $$

여기서 $I_c$ 는 모델 $f$ 가 클래스 $c$ 로 할당한 데이터 포인트의 인덱스를 포함하는 인덱스 집합이며, $I_c = {i \vert f(x_i) = c}$ 입니다. $k_{\sigma}$ 는 커널 함수입니다. 여러 후보들 중에서도 Gaussian kernel 은 매우 인기 있는 것 중 하나입니다.

(2) 그런 다음 모든 클래스에 대해 확률 $p(Y=c \vert X=x)$ 를 근사하기 위해 Bayes 의 법칙을 적용합니다:

(3) 최종 추정된 Bayes 분류기는 다음과 같은 형태를 가집니다:

$$ \hat{f}{\sigma} = \arg\min{c \in {1, \dots, C}} \hat{p}_{\sigma}(y \neq c \vert x) $$

우리는 원본 모델 $f$ 로 라벨링된 데이터를 원하는 만큼 생성할 수 있으며, 이는 훈련 데이터의 크기에 의해 제한되지 않습니다. 하이퍼파라미터 $\sigma$ 는 $\hat{f}_{\sigma}(x) = f(x)$ 의 확률을 최적화하여 높은 충실도를 달성하도록 선택됩니다.

참고 사항: 위 두 방법 모두 모델 예측이 확률이어야 함을 요구합니다. 모델 출력의 보정 (calibration) 은 또 다른 복잡성을 추가합니다.

LIME (Local Interpretable Model-Agnostic Explanations)

LIME 는 local interpretable model-agnostic explanation 의 약어로, 관심 있는 예측 주변에 블랙박스 모델을 로컬로 근사할 수 있습니다 (Ribeiro, Singh, & Guestrin, 2016).

위와 동일하게, 블랙박스 모델을 $f$ 로 표시합시다. LIME 은 다음과 같은 단계를 제시합니다:

(1) 데이터셋을 해석 가능한 데이터 표현으로 변환합니다: $x \Rightarrow x_b$.

  • 텍스트 분류기: 단어의 유무 또는 부재를 나타내는 이진 벡터
  • 이미지 분류기: 유사한 픽셀의 연속적인 패치 (super-pixel) 의 유무 또는 부재를 나타내는 이진 벡터

(2) $f(x)$ 예측과 해당 해석 가능한 데이터 표현 $x_b$ 를 주어진 경우, $x_b$ 의 0 이 아닌 요소를 균일하게 무작위로 추출하여 $x_b$ 주변에 샘플 인스턴스를 생성합니다. 이러한 추출의 개수는 또한 균일하게 샘플링됩니다. 이 과정은 $x_b$ 의 0 이 아닌 요소의 분율을 포함하는 교란된 샘플 $z_b$ 를 생성합니다.

그런 다음 우리는 목표 모델로 $f(z)$ 를 얻고 원래 입력 $z$ 로 $z_b$ 를 복원합니다.

우리는 이러한 샘플링된 데이터 포인트 $z_b \in \mathcal{Z}_b$ 와 그들의 모델 예측을 사용하여 충실도가 높은 로컬 fidelity 을 가진 설명 모델 (예: 회귀와 같은 간단한 형태) 을 학습할 수 있습니다. 샘플링된 데이터 포인트는 $x_b$ 에 얼마나 가까운지에 따라 다른 가중치를 부여합니다. 논문은 "K-LASSO"라고 불리는 사전에 최상위 $k$ 개의 가장 중요한 특징을 선택하기 위해 pre-processing 과 함께 lasso 회귀를 사용했습니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 Lilian Weng Blog의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
3

댓글

0