LIME (LIME (Local Interpretable Model-agnostic Explanations))

컴퓨터과학·AI
한 줄 정의: 복잡한 모델의 특정 예측 주변에서 데이터를 조금씩 변형해가며 그 지점에서만 유효한 단순한 대리 모델을 학습해 예측을 설명하는 기법.

쉽게 풀면

LIME은 복잡한 모델 전체를 이해하려 하지 않고, 궁금한 예측 하나만 콕 집어서 그 주변에서만 통하는 간단한 설명을 만드는 방법이에요. 설명하고 싶은 데이터 근처에서 입력을 살짝씩 바꾼 여러 변형 샘플을 만들고, 그 샘플들에 대한 원래 모델의 예측 결과를 이용해 선형 모델처럼 단순하고 해석하기 쉬운 대리 모델을 학습시킵니다. 이 단순 모델은 그 지점 근처에서만 원래 모델과 비슷하게 행동하지만, 그 지점에서는 어떤 특성이 예측에 긍정적/부정적으로 작용했는지 사람이 쉽게 읽을 수 있게 보여줍니다. 이미지, 텍스트, 정형 데이터 등 모델 종류에 상관없이 적용할 수 있다는 것이 특징입니다.

왜 중요한가

딥러닝을 비롯한 복잡한 모델은 예측 성능이 높아도 왜 그런 판단을 내렸는지 사람이 알기 어려운 '블랙박스' 문제를 안고 있습니다. 의료진단, 대출심사, 채용처럼 결과에 대한 설명이 요구되는 분야에서는 모델이 특정 예측을 내린 근거를 사람이 이해할 수 있는 형태로 제시하는 것이 신뢰성과 책임성 확보에 직결되기 때문에, LIME 같은 설명가능인공지능(XAI) 기법이 중요하게 다뤄집니다. 또한 모델 개발자 입장에서도 오분류 사례를 분석하고 모델이 엉뚱한 특성에 의존하고 있지는 않은지 점검하는 디버깅 도구로 활용됩니다.

논문에서는 이렇게 쓰입니다

"모델의 특정 오분류 사례를 분석하기 위해 LIME을 적용하여 해당 예측에 영향을 준 단어들을 확인하였다."

모델이 틀리게 예측한 특정 사례에 대해 LIME으로 어떤 단어가 그 판단에 영향을 주었는지 살펴봤다는 뜻이다.

"흉부 X선 영상 분류모델의 예측 근거를 시각화하기 위해 LIME을 적용하여 병변으로 판단된 영역을 강조 표시하였다."

의료영상 분류 논문에서는 LIME이 이미지의 어느 부분이 진단 판단에 기여했는지를 히트맵 형태로 보여주는 데 쓰인다는 예시이다.

"신용평가 모델의 예측 결과에 대해 LIME을 적용하여 개별 대출 신청 건별로 심사 결과에 영향을 준 변수를 제시하였다."

금융 분야에서는 규제상 설명 의무를 충족하기 위해 개별 심사 결과마다 어떤 변수가 영향을 미쳤는지 LIME으로 제시한다는 예시이다.

조금 더 깊게 보면

LIME은 설명 대상 지점 주변에 무작위로 섭동(perturbation)을 가한 샘플들을 만들고, 그 샘플들이 원래 지점과 얼마나 가까운지에 따라 가중치를 부여한 뒤 선형모형 같은 해석 가능한 대리 모델을 학습시키는 방식으로 동작합니다. 이때 섭동을 어떻게 만들지, 국소 영역의 범위를 얼마나 넓게 잡을지에 따라 같은 예측에 대해서도 설명 결과가 달라질 수 있다는 안정성 문제가 지적되어 왔으며, 이를 보완하기 위해 게임이론에 기반한 SHAP 값 같은 대안 기법이 함께 비교되는 경우가 많습니다.

주의할 점

LIME이 만드는 대리 모델은 설명 대상 지점 주변의 국소적인 근사일 뿐이라, 그 설명을 모델 전체의 일반적인 행동으로 확대 해석해서는 안 된다.

관련 용어