본문 바로가기
AI · 인공지능/알기쉬운 AI

[알기쉬운 AI - 36] 설명 가능한 AI(XAI : Explainable AI) 3 - 해석 가능한 모델의 추출

by 두우우부 2023. 2. 2.
반응형


이전 글에서는「출력에 대한 설명의 생성」기법으로서, SHAP라고 불리는 기법을 소개했습니다. 이것은 경제학에서 사용되는 Shapley value 를 이용하여 각 특징량의 공헌도를 계산하고, 그것을 바탕으로 특징량의 중요도로부터 각 특징량이 얼마나 예측에 기여하는지 등 매크로로부터 마이크로 시점으로 모델을 해석 가능한 기법이었습니다.

이번 글에서는「해석 가능한 모델의 추출」에 대한 XAI 기법에 대해서 소개합니다. XAI 기법의 분류를 다시 적어보면 다음과 같습니다.

・출력에 대한 설명의 생성
・해석 가능한 모델의 추출(이번에 설명하는 파트)
・블랙 박스의 내용 검사
· 투명한 학습기 설계

"해석 가능한 모델 추출" 기법의 예로 신경망을 해석하기 쉬운 모델로 변환하는 기법GoldenEye를 소개합니다. GoldenEye는 모델이 데이터를 사용하는 방법과 구조를 추출하는 것입니다.

신경망을 해석하기 쉬운 모델로 변환하는 기법

설명 가능한 AI 의 첫 번째 기사에서 설명한 것처럼 심층 학습 기법은 많은 매개 변수를 보유하고 있기 때문에 왜 그러한 예측을 수행했는지 인간이 판단하기 매우 어렵습니다. 그래서 심층 학습 기법을 인간이 해석하기 쉬운 기법으로 대체하는 접근법이 오랫동안 연구되어 왔습니다. 인간이 해석하기 쉬운 모델로는 의사 결정 트리를 들 수 있습니다. 이것은 특정 기준에 따라 데이터를 분할하고 궁극적으로 트리 구조의 끝 노드에 도달하면 끝 노드가 무엇을 나타낼지 예측하는 방법입니다. 실제 응용에서는 다수의 결정 트리를 조합하는 수법( XGBOOST 등)이 자주 사용되고 있습니다.

매우 간단한 방법으로 다음과 같은 것을 들 수 있습니다. 여기에서는 이미지 분류를 수행하는 모델을 고려해봅시다.

(1) 심층 학습 모델로 학습하기
(2) (1) 에서 학습한 모델의 특징량 추출을 실시하는 부분을 꺼낸다
(3) (2) 의 특징량 추출기로 이미지로부터 특징량을 추출한다.
(4) 얻어진 특징량을 바탕으로 의사결정 트리를 학습한다.

다음 그림은 이미지 분류 모델을 의사결정 트리 모델로 변환하는 개요를 다이어그램으로 보여줍니다.
일반적으로 이미지 분류 모델은, 이미지의 특징량을 추출하는 기구(합성곱층)와 예측을 실시하는 분류층( FC 층)으로 구성되어 있습니다. 특징량 추출을 실시하는 층을 재이용함으로써 심층 학습 기법으로 얻은 좋은 특징량을 이용할 수 있습니다. 이로 인해 결정 트리의 정확도가 높아질 것으로 예상됩니다.


최신 연구는 이들을 더욱 발전시켜 보다 정확성과 해석성을 높이는 데 성공했습니다. 흥미가 있다면, NBDTs 나 다른 기법을 조사해 보시면 더욱 재미있으실 것입니다.


GoldenEye

GoldenEye는 작성한 모델 F가 어떻게 특징량을 사용하고 있는지 확인할 수 있습니다. 여기서는 설명을 위해 다음 데이터를 사용합니다.


{ A, B, C, D }의 4 가지 특징량을 가진 데이터를 봅시다. 각각의 특징량은 1 or 0 의 2 개의 값만 취합니다. 즉, 16(=2^4) 개의 규칙을 학습할 수 있으면 된다는 것입니다. 실은 이 데이터는 매우 단순한 규칙으로 클래스가 정해져 있어 class = ( A XNOR B ) OR C 라는 규칙으로 만들어지고 있습니다. 여기서 XNOR 는 A 또는 B 가 1 일 때 1 이고 그 이외( A=B=0 or A=B=1 )일 때는 0 이 되는 함수입니다. 이러한 데이터를 학습하고 다음과 같은 결과가 나온다고 가정합시다.


여기서 y 는 모델 F 의 예측 결과이며, 이 경우에는 정밀도가 100% 입니다. 이 데이터에 대해 D 의 특징량을 무작위로 바꿔봅시다.


y*는 D 를 섞은 후의 모델 예측을 나타냅니다. 위에서 언급했듯이 D 는 클래스와 전혀 관련이 없으므로 y 와 y*는 동일합니다. 이제 Fidelity (충실도) 라는 지표를 알아봅시다. Fidelity는 특징량을 랜덤하게 바꾼 후의 모델 예측 y*과 원래의 모델 예측 y의 일치 상태를 측정하는 지표입니다.

Fidelity = ( y = y* )/ N

( y = y*) 는 y 와 y*가 일치하면 1 이 되는 함수입니다. 또한 N 은 데이터 크기(이번에는 16)를 나타냅니다. 위의 정의에서 Fidelity 는 0 ~ 1 을 취하며 값이 클수록 무작위로 바뀐 특징량이 모델 예측에 기여하지 않음을 나타냅니다. 이번 데이터의 경우 A 와 B 는 밀접하게 관련되어 있었습니다. 이 A 와 B 를 동시에 무작위로 섞으면 어떻게 될까요?


빨간색으로 표시된 것이 y 와 y*가 불일치하는 경우입니다. 이때의 Fidelity 는 12/16=0.75 가 됩니다. GoldenEye 에서는 Fidelity 를 사용하여 모델이 어떻게 특징량을 사용하는지 판별합니다. 다음 그림은 그 절차를 나타냅니다.


여기서, 상단 중앙의 {{A, B, C, D}} 는 랜덤화되지 않은 상태를 나타내고 있습니다. 즉( Fidelity=1 ) 입니다. 다음으로, 각각의 특징량을 랜덤화해 Fidelity 를 계산합니다. 예를 들어, 왼쪽 상단은 A 를 랜덤화합니다. 이것을 특징량마다 반복하여 Fidelity가 가장 작은 경우를 찾습니다. 이 예에서 D는 예측과 전혀 관련이 없으므로 오른쪽 상단이 선택됩니다. 다시 오른쪽 상단에서 시작하여 Fidelity를 계산합니다.


위의 그림에서 C 를 랜덤화하면 Fidelity 가 가장 높은 것을 알 수 있습니다. 다시 오른쪽 가장자리를 시작으로 계산합니다. 이 경우 C 와 D 는 이미 무작위로 바뀌었기 때문에 '모든 특징량을 바꾼다'라는 계산이 됩니다. 그러나, 모두 랜덤화했을 경우의 Fidelity 는 원래의 값보다, 작아져 버렸습니다. 즉, A 와 B 를 놓고 랜덤화하는 것은 예측 성능을 낮춘다는 것입니다.


궁극적으로 D 는 Fidelity 를 전혀 낮추지 않으므로 D 를 제외한 것이 최종 결과입니다. 즉, 이 데이터에서 GoldenEye 의 출력은 {{A, B}, {C}} 입니다. 이로 인해,

모델은 A 와 B 를 동시에 취급하고 있다는 것,
C 는 단독으로 사용되고 있다는 것,
D 는 모델에 전혀 사용되고 있지 않다는 것
을 알았습니다.

이를 통해 모델이 주어진 데이터를 사용하는 방법을 확인할 수 있습니다. 이것은 모델의 구조를 추출하는 것입니다. 이러한 방식으로 모델의 구조를 시각화 함으로써 모델의 정확성을 향상시킬 수 있습니다.

요약

이번 글에서는, XAI 의「해석 가능한 모델의 추출」기법에 대해 소개하였습니다. 하나는 신경망을 인간이 해석하기 쉬운 의사 결정 트리로 변환하는 기법입니다. 또한 GoldenEye 는 모델이 데이터를 처리하는 방법과 구조를 추출하는 기술입니다. 심층 학습은 높은 정밀도를 내는 것이 가능합니다만, 실제 운용시에는 해석가능성이 요구되는 경우가 많습니다. 심층 학습의 특징을 잘 이용하면서 해석성을 높이는 접근법은 앞으로도 점점 더 연구되어 갈 것이라고 개인적으로 생각하고 있습니다.

[알기쉬운 AI - 34] 설명 가능한 AI(XAI : Explainable AI) 1 - AI의 예측에 근거는 필요한가?

설명 가능한 AI( Explainable AI, 이후 XAI )라는 단어를 들어 보신 적 있습니까? XAI는 AI 예측의 근거를 예측과 함께 출력하는 AI입니다. 특히 최근 주목을 받고 있는 심층 학습이 대두된 후 XAI의 중요성

doooob.tistory.com

[알기쉬운 AI - 35] 설명 가능한 AI(XAI : Explainable AI) 2 - XAI의 적용 방법

이전 글에서는 설명 가능한 AI( XAI )란 무엇인가를 예를 들어서 설명하였습니다. XAI 에는 다음과 같은 네 가지 프레임워크가 있습니다. ・출력에 대한 설명의 생성 ・해석 가능 모델의 추출 ・블

doooob.tistory.com

[알기쉬운 AI - 37] 설명 가능한 AI(XAI : Explainable AI) 4 - 블랙 박스인가 투명성인가

지금까지의 내용에서는「출력에 대한 설명의 생성」기법으로서, SHAP라고 불리는 기법을,「해석 가능한 모델의 추출」기법으로서 심층 학습 모델을 의사결정 트리로 옮겨놓거나, 모델의 예측

doooob.tistory.com

반응형