설명가능한 인공지능(eXplanable AI, XAI)이란?

Heeyeon Kim
XBrain
Published in
15 min readMay 25, 2021

인공지능, AI란 단어가 일상 속에 침투한 이래로 인공지능은 학계에서, 비즈니스 영역에서, 일상 생활에서 수많은 성취를 거두었습니다. 불과 10년도 지나지 않아 머신러닝(Machine Learning)은 컴퓨터비전, 시계열예측, 분류, 회귀분석, 음성인식, 문자인식 등에서 성공적으로 적용되었고 실시간에 가까운 속도로 빠르게 발전하고 있습니다. 머신러닝 알고리즘 또한 정확도, 연산 속도 등의 측면에서 비약적인 개선을 이루었습니다.

하지만 딥러닝을 비롯한 몇몇 머신러닝 알고리즘은 black box system으로, 모델의 입력값과 결과값 이외의 작동원리를 알기 힘든 시스템입니다. 즉, 모델이 어떤 판단을 내렸을 때 왜 그러한 판단을 내렸는지 인간이 파악하기가 매우 어렵습니다. 딥러닝 학습은 간단한 미적분 계산들로 이루어져 있지만, 정확도를 높이기 위해 layer를 계속해서 쌓게 되고 결과적으로 매우 복잡하고 인간이 해석하기 힘든 모델이 만들어지고 맙니다. Kaggle등 머신러닝 경진대회에서 가장 많이 쓰이는 ML(Machine Learning)모델 중 하나인 XGBoost는 Decision Tree의 단점 중 하나인 overfitting을 극복하기 위해 single decision tree를 몇 백~몇 만개 까지 쌓기도 합니다. Decision tree는 작동원리에 대한 해석이 쉬운 대표적인 white box 알고리즘이지만 그 tree가 모여서 만드는 Random Forest, XGBoost 등은 black box 알고리즘으로 여겨집니다.

그렇기 때문에 모델이 출력해준 결과를 얼만큼 신뢰해야 하는지, 예측의 근거는 무엇인지, 만약 모델이 잘못된 결과를 출력했다면 그 이유는 무엇이고 어떻게 모델을 개선해야 하는지 등에 대한 답을 찾기 위해 다양한 방법이 개발되고 있습니다. 이러한 기술을 모두 포함해 설명가능한 인공지능(eXplanable AI, 줄여서 XAI)이라고 부릅니다.

XAI에 대해 더 알아보기 위해 미국 방위고등연구계획국(DARPA)에서 발표한 XAI 보고서를 살펴보겠습니다. DARPA는 2017년 7월부터 XAI에 대한 중요성을 설파하고, 관련 연구를 활발하게 진행하고 있습니다. Fig. 1.은 XAI가 무엇인지 설명하려 할 때 적절한 예를 보여줍니다.

Fig. 1. XAI example: Is it a cat or not?/Why is it a cat? (Source: [1])

특정한 사진에 고양이가 존재하는지 아닌지를 알고자 한다고 가정해봅시다. 오늘날 우리가 인공지능을 학습시키는 방식은 머신러닝 알고리즘에 “이것은 고양이인가?”라는 질문을 하는 것과 유사합니다. 머신러닝 모델은 사진에 존재하는 객체가 고양이인지 아닌지에 대해서 계속해서 학습하여 정답을 찾을 확률을 높여갑니다. 많은 데이터를 오랫동안 학습하여 마침내 모델이 Yes라고 답했을 때 사진에 고양이가 있을 확률이 99%인(즉, Precision= TP/(TP+FP) = 0.99) 매우 정확한 딥러닝 모델을 완성했다고 가정해보고, 분류를 원하는 사진을 모델에 적용하여 사진에 고양이가 ‘있다’는 결과를 얻었다고 생각해봅시다. 하지만 이 결과를 얼마나 믿을 수 있을까요? 99%의 높은 확률로 딥러닝 모델이 고양이를 분류하였다 하더라도 1%의 고양이가 아닐 확률이 존재하기 때문에, 우리는 이 결과를 완전히 신뢰할 수는 없습니다. 또한 검증에 이용한 데이터의 편향, 알고리즘에 가해진 조작 등은 단순히 에러율을 확인하는 것만으로는 파악하기 힘듭니다. 결론적으로, 사용자의 입장에서는 어떠한 의사결정을 위해서 모델의 정확도 이외의 추가적인 정보가 필요할 수 있습니다. 이 딥러닝 모델은 왜 사진에 고양이가 있다는 판단을 내렸을까요?

Why is it a cat?

여기에서 새로운 질문을 꺼낼 수 있습니다. “왜 이것은 고양이인가?” 지금까지 딥러닝을 비롯한 대부분의 머신러닝 알고리즘은 그 판단의 근거를 알아내기 어려웠습니다. 위의 고양이 분류 알고리즘에서 알 수 있는 것은 입력값, 결과값, 특정 지표에 대한 에러율이 전부입니다. 알고리즘이 어떻게 학습하여 어떻게 결과값을 도출하는지에 대한 해석은 black-box로 남아있습니다.

딥러닝 모델에 “왜 이것은 고양이인가?”라는 추가 질문을 한다면 어떨까요? 모델은 “이것은 고양이인가?에 대한 답변을 학습하면서, “왜”라는 질문에 대한 답변 또한 학습할 것 입니다. 사용자는 모델이 도출한 답변 뿐만 아니라 모델 설명력-고양이라고 판단한 근거(털이 있음, 수염이 있음, 귀가 뾰족함 등)-까지 볼 수 있게 되어 모델의 판단을 신뢰할 것인지, 판단을 채택할 것인지 여부를 좀 더 쉽게 결정할 수 있습니다.

지금까지 XAI의 필요성에 대하여 알아보았습니다. 그렇다면 실제 연구/활용되고 있는 XAI에는 어떤 것들이 있을까요?

XAI Approaches

[2]에서는 XAI에 대한 다양한 관점을 제시하는데, 아래 그림은 그 중 하나인 taxonomic framework입니다. 이 taxonomic framework에서는 XAI approaches를 크게 transparent models vs opaque models와 model specific vs model agnostic 으로 구분합니다. 이 외에도 scope관점에서 global vs local technique으로 구분하기도 합니다.

FIg. 2. A taxonomic view on XAI (Source: [2])

Transparent vs Opaque

먼저, transparency(투명도)의 정의부터 알아보겠습니다. 여기에서 언급되는 transparency는 모델이 결과를 도출하는 과정에 대한 이해가능성을 의미합니다. 즉 transparent model은 상대적으로 단순한 Linear Regression, Decision Tree, K-Nearest Neighbors 등의 알고리즘, opaque model은 Random Forest, Deep Neural Network등의 복잡한 알고리즘에 해당됩니다. 다른 말로, transparent model은 white box, opaque model은 black box 모델이라고도 부를 수 있습니다. Transparent model은 그 자체로 XAI라고 할 수 있으나 opaque model은 설명력을 갖기 위해 post-hoc한 방법론을 필요로 합니다. Post-hoc explainabilty technique(사후 설명력 기법)은 opaque model처럼 머신러닝 모델의 해석이 힘든 경우에 사용되는데, 말 그대로 모델이 만들어진 이후 설명력을 추가적으로 얻기 위한 기법입니다.

Model-Specific vs Model-Agnostic

XAI는 또한 model-specific(모델 특정적)한 기법과 model-agnostic(모델 불특정적)한 기법으로 구분될 수 있습니다.

Model-specific한 기법은 모델의 본질적인 구조를 이용하여 설명력을 제공하는, 특정 알고리즘에만 적용가능한 기법입니다. 예를 들면 CNN(Convolutional Neural Network)계열의 알고리즘에서 layer-level의 시각화[3, 4]를 통하여 input image가 특정 layer에서 어떻게 reconstruct되는지 알아볼 수 있습니다. [5]에서는 각 input image에 대한 discriminative image region을 localize하는 CAM(Class Activation Map)이라는 기법을 소개합니다.

Fig. 3. Image classfication CNN에 CAM을 적용한 예. CNN 알고리즘이 이미지의 어느 부분에 집중하여 분류를 했는지 알 수 있다. (Source: [5])

그 외의 Model-specific 기법으로는 Tree ensemble model에서 사용되는 inTrees[6], Reinforcement Learning을 해석하기 위한 XRL(eXplainable Reinforcement Learning)등이 있습니다.

Model-agnostic 기법은 일반적으로 post-hoc하며, 어떤 알고리즘에도 적용 가능하다는 장점이 있습니다. 실제 인기 있는 XAI 기법(PDP, ICE, LIME, SHAP 등) 상당수가 이 분류에 속합니다.

LIME(Local Interpretable Model-agnostic Explanations)[7]은 이름에서 알 수 있듯이 특정 예측 값 근처에서 지역적 해석력을 도출하는 기법입니다. 다른 말로는 Local surrogate(로컬 대리분석)이라고도 일컬어집니다. LIME의 작동원리는 다음과 같은 수식으로 나타낼 수 있습니다.

Fig. 4. LIME equation. (Source: [7])

위 수식에서 f는 우리가 설명하고자 하는 모델, g는 임의의 interpretable model, G는 interpretable models의 전체 집합, 𝜋는 특정 point x에 대한 근접성, 𝛺는 모델의 complexity, L은 g가 f를 얼마나 불충분하게 설명하는지에 대한 measure입니다. 즉, complexity와 local fidelity(로컬 충실도)를 minimize하는 해석가능한 모델 g를 찾는 것이 LIME의 목표라고 볼 수 있습니다. 실제 적용 시에는 설명력을 원하는 특정한 데이터 포인트 x 주변에 샘플 데이터를 무작위로 생성한 후, 𝜋(근접성)를 반영하기 위해 데이터가 x에 가까울 수록 높은 가중치를 적용합니다. 그 다음, 샘플 데이터를 학습하여 x 주변 모델을 가장 잘 설명하는 local interpretable model을 찾아 모델의 지역적 해석력을 도출합니다.

Fig. 5. Toy example for LIME. 이 분류모델은 pink와 blue의 영역으로 나뉘는 nonlinear한 decision boundary를 가졌음에도 불구하고 bold red cross 주변의 분류모델은 linear한 boundary로 설명될 수 있다 (Source: [7])

SHAP(SHapley Additive exPlanation)[8]는 Shapley value(섀플리값)[9]을 이용하여 예측에 대해 각 feature(특성)의 기여도를 계산하는 기법입니다. Shapley value는 Game theory에 그 기반을 두고 있는데, 대략적으로 말해서 Shapley value는 feature의 모든 combination에 대해 feature의 기여도를 계산하여 그 값을 평균낸 값입니다. 하지만 feature의 개수가 k라고할때 전체 combination의 개수는 2의 k승이 되므로 feature의 개수가 늘어날 수록 전체 Shapley value를 연산하는데 들어가는 비용이 매우 커지게 됩니다. SHAP에서는 이러한 높은 연산 비용을 극복하기 위해 원래 모델의 conditional expectation의 Shapley value를 계산합니다. 정확한 SHAP 값을 계산하는 것은 어렵기 때문에 approximation을 위한 다양한 방법이 연구되고 있는데, 일부는 model-agnostic하며 일부는 model-specific합니다. Approximation methods 중 Shapley sampling values와 Kernel SHAP는 model-agnostic에 해당하며 Max SHAP, Deep SHAP, TreeSHAP 등은 model-specific에 해당합니다. TreeSHAP는 Random Forest, XGBoost 등의 트리 계열 알고리즘의 SHAP값을 Kernel SHAP보다 훨씬 빠르게 계산합니다.

SHAP의 장점은 feature간의 interaction(상호작용)을 고려하여 기여도를 계산한다는 점입니다. XGBoost등의 라이브러리에서 사용 가능한 feature importance 함수는 permutation 기법을 사용하는데, feature 간 상호 연관성이 높을 경우 interaction의 importance 또한 각각의 feature importance에 반영되어버려 결과가 편향될 수 있습니다. feature간 상관관계가 높은 경우 feature importance 함수 대신에 SHAP를 사용하는 것이 더 정확한 결과를 얻을 수 있습니다.

XAI의 한계

  • 모델의 해석력과 정확도에는 trade-off 관계가 있다고 여겨지고 있습니다. 해석이 상대적으로 쉬운 Linear Regression, Decision tree, Simple Neural Network 등의 알고리즘은 모델의 정확도가 낮아 Kaggle등의 머신러닝 경진대회에서 잘 사용되지 않습니다. 반대로, 모델 성능이 높은 Ensemble Model, Deep Neural Network 등의 알고리즘은 모델 자체의 해석력이 낮은 opaque model입니다. 따라서 모델 선택 시 모델의 높은 해석력을 위해 어느 정도의 퍼포먼스를 희생할 것인지에 대한 딜레마가 존재합니다.
  • XAI에서 도출된 설명력을 과연 얼마나 믿을 수 있을까요? 만약 여러가지의 XAI 기법을 시도했을 때 서로 다른 결과가 나온다면 어떤 결과를 선택해야 할까요? 앞에서 설명한 어떤 XAI 설명력 기법도 절대적인 지표가 되지 못하는데, 설명력의 질을 파악하는 것이 매우 어렵기 때문입니다. 설명력 성능 평가에 대한 연구는 다른 XAI에 비해 상대적으로 덜 활발하고 아직까지는 설명력을 해석하는데 정량적인 기준대신 사용자의 주관적, 정성적인 기준이 들어가는 경우가 많습니다. [10]에서는 Deep Neural Network의 해석력을 위해 일반적으로 사용되는 input-gradients가 softmax 함수의 shift-invariance에 의해 조작될 수 있다고 주장합니다. 딥러닝 모델이 black-box이듯 XAI 또한 설명력의 성능 측면에서 완전히 증명되지 않은 것이 대부분입니다. 그렇기에 XAI 자체의 신뢰도를 높이고 XAI간 정량화된 지표를 통한 비교 분석을 위해 더 많은 연구가 필요합니다.

지금까지 XAI의 정의와 필요성, XAI의 분류와 다양한 접근법에 대하여 알아보았습니다. XAI를 현실 문제에 적용해보고 싶으시다면 주저하지 마시고 apply@xbrain.team으로 연락주세요 :)

Machine Learning Engineer 채용 공고 확인하러 가기

Reference

[1] Defense Advanced Research Projects Agency, DARPA “Explainable Artificial Intelligence (XAI)”. DARPA presentation. DARPA. Retrieved 17 July 2017.

[2] V. Belle and I. Papantonis. Principles and practice of explainable machine learning. arXiv preprint arXiv:2009.11698, 2020.

[3] Mahendran, A., Vedaldi, A. Understanding deep image representations by inverting them. In CVPR, 2015.

[4] Dosovitskiy, A., Brox, T. Inverting visual representations with convolutional networks. In CVPR, 2016.

[5] Zhou, B., Khosla, A., Lapedriza, A., Oliva, A., and Torralba, A. Learning deep features for discriminative localization. In CVPR, 2016.

[6] H. Deng. Interpreting tree ensembles with intrees. arXiv:1408.5456, 08 2014.

[7] M. T. Ribeiro, S. Singh, and C. Guestrin. “Why Should I Trust You?”: Explaining the predictions of any classifier. In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, KDD ’16, pages 1135–1144, New York, NY, USA, 2016. Association for Computing Machinery.

[8] S. M. Lundberg and S.-I. Lee. A unified approach to interpreting model predictions. In Proceedings of the 31st International Conference on Neural Information Processing Systems, NIPS’17, pages 4768–4777, Red Hook, NY, USA, 2017. Curran Associates Inc.

[9] https://christophm.github.io/interpretable-ml-book/shapley.html

[10] S. Srinivas, F. Fleure. Rethinking the Role of Gradient-Based Attribution Methods for Model Interpretability, arXiv:2006.09128. 2020

--

--