설명 가능한 인공지능
설명 가능한 인공지능의 필요성
- 인공지능을 활용한 다양한 분야에서 의사결정 수단으로 활용된다.
- 인공지능의 결정에 대해 이해가 필요하다.
- 은행 대출 시 인공지능은 개인의 모든 정보를 활용하여 결정한다.
- 대출이 거절되었을 때 어떤 원인에 의해 결정되었는지 말할 수 없다.
- 설명 가능성은 윤리와 연관되어 상업성이 저하될 수 있다.
- 많은 훈련 데이터가 필요하다는 점에서 Greedy 하다.
- 훈련 시 사용된 시나리오와 다른 상황에 직면한 경우 상황에 맞게 변형하지 못한다는 점에서 불안하다.
- 딥러닝 출력은 blackbox를 통하여 산출되어 설명할 수 없다.
- 적은 데이터에 기초하며, 인간에 대한 상식을 가지고 있지 않다는 점에서 피상적이다.
알고리즘의 성능과 설명 가능성
- Deep Learning
- 다른 알고리즘보다 성능이 좋지만 설명 가능성이 떨어진다.
- 성능이 낮을수록 설명 가능성이 높다.
- 모델의 설명 가능성을 향상시키면서 동시에 성능은 유지할 수 있는 기술이 필요하다.
Network 분석
- 주어진 Network의 목적, 동작 방식, 학습 방식에 대한 이해 및 분석
- what: 네트워크의 목적
- how works: 네트워크가 어떻게 작동되는가
- how learn: 어떻게 학습을 하는가
- Deep learning Network 분석
- 네트워크가 무엇을 하는가
- 어떤 컨셉이 영상을 인식하게 하는가
- 제약점은 무엇인가
- 어떻게 작동하는가
- ex) template matching, spatial reasoning
Making deep neural net Transparent
- 설명 가능성이 필요한가
- 시스템이 어떤 결정을 내릴지에 대한 예측이 가능해야 한다.
- 의료, 자율주행 분야에서 인공지능의 잘못된 결정은 매우 큰 피해이다.
- 시스템의 약점을 이해할 수 있어야 한다.
- 데이터에 의한 bias, 사용자의 의도 분석, 시스템 향상
- 시스템 보안 및 취약점 분석
- AI 시스템으로부터 학습
- AI 시스템의 발전에 따라 사용자 및 개발자의 역할이 중요해졌다.
- NN이 투명하면 AI를 활용하여 다양한 분야에 적용할 수 있다.
- AI를 정확하게 이해해야 다른 분야에 적용할 수 있다.
- 법적인 문제를 해결할 수 있다.
- 사고 발생시 분쟁 해결의 실마리를 얻을 수 있다.
- 크게 세가지 측면에서 모델에 대한 이해가 필요하다.
- Prediction: 특정 패턴이 특정한 방식 f(x)로 분류된 이유를 설명한다.
- Data: 어느 차원의 데이터가 Task와 가장 관련 있는지 확인한다.
- Model: 특정 카테고리에 속하는 패턴은 일반적으로 모델에 어떻게 보이는가.
- Deep Neural Network Transparency
- Interpreting models(AI 연구)
- Activation maximization
- Data generation
- Explaining Decisions(결과 설명)
- Sensitivity analysis
- Decomposition
- Layer-wise Relevance Propagation
- 모델이 왜 그런 결정을 내렸는가에 대한 분석 방법
- 블랙박스가 분류한 이미지 결과를 Back 방향으로 탐지하며 분해하고, 분해된 요소들이 원본 이미지까지 도달했을 때 원본 이미지에 상대적인 기여도를 표시함으로써 딥러닝 모델을 해석한다.
- 훈련된 모델에서 임의의 샘플에 대하여 출력을 얻는다고 할 때
- D 차원 입력에 대한 Relevance Score를 계산하는 것을 목적으로 한다.
- 각 차원 i에 대한 relevance score R 값은 아래와 같다.
f(x)=i=1∑dRi
- f(x)로부터 역방향으로 가장 큰 영향을 준 input을 찾아 Spatial resoning을 구한다.
- 판단의 근거를 분리하는 과정으로, 사람의 판단과 유사한 판단 과정이다.
- Relevance score를 출력단에서 입력단 방향으로 top-down 방식으로 기여도를 재분배하여 모델에 대하여 이해할 수 있다.
- Relevance score: 입력 변화에 따른 출력의 변화
- Relevance score는 top-down 방식으로 각 뉴런의 출력단에서 입력단 방향으로 재분배된다.
- Relevance Score는 보존
- 아이디어: 각 클래스에 대한 evidence를 모델의 마지막에서 앞으로 재분배하여 각각의 노드의 기여도를 분석한다.
Applications
- 입력 영상(3)으로부터 LRP 값을 분석하여 positive (red) relevance와 negative (blue) relevance 값을 비교 분석한다.
- Red: 3으로 인식하기 위해 중요한 부분
- Blue: 9로 판단하지 않은 이유
- 녹색: 영향을 주지 않은 영역
- MNIST에서 확장하여 얼굴을 분석한 결과 성별을 구분하기 위해 눈, 머리, 수염, 뺨 영역이 큰 영향을 미치는 것으로 확인되었다.
- 또한 연령대를 구분하기 위해 웃음, 눈, 주름이 큰 영향을 미친다.
- 이는 가짜 얼굴을 찾는 근거로 활용될 수 있다. - CNN 기반의 explain
Deep Generative Representation
GAN을 이용하여 다양한 이미지를 생성할 수 있다.
-
일반적인 GAN 모델
- Random Data로부터 Image를 생성한다.
GAN | Ganerator |
---|
| |
- Watermark가 포함된 Train image에서 특정 unit을 비활성화하면 watermark를 제거할 수 있다.
- 특정 node 유무에 따라 watermark 유무가 달라지는 것을 실험적으로 파악하였다.
- 이를 통해 각 unit이 물체와 관련이 있을 것이라는 의심을 할 수 있다.
- 각 unit을 조절해서 randomly generated image를 조절할 수 있다.
- GAN 모델의 의미론적 영역에 대한 이해
- 실험적으로 Hyper node를 설정하여 다양한 Style 생성을 할 수 있다.
- Image를 GAN latent code로 바꾸었을 때
- Real Image x에 비해 생성된 Image G(z∗)의 디테일이 떨어진다.
- GAN은 모든 것을 제대로 생성하지는 못한다. 전체적인 분위기 Geometric은 유지하지만 Semantic을 삭제한다.
왜 모델이 이런 특성을 나타내는지 이해해야 한다.
여전히 모델의 역할을 직접적으로 알지 못하고 Node를 껐다 키며 간접적으로나마 알고 있다.
XAI
XAI에 대한 정의와 특징
- 기존의 인공지능 기술
주어진 데이터를 학습한 후 새로운 데이터에 대하여 분류 및 예측한다.
- 설명 가능한 인공지능
- 기존의 인공지능 기술에 추가하여 결과에 대한 인과관계, 적절한 근거와 타당성을 분석한다.
- 인공지능 모델의 의사결정 과정을 사용자 레벨에서 설명한다.
- 이를 통해 인공지능의 의사결정에 대하여 신뢰하여 의료, 국방, 법류, 금융 등 분야에 적용할 수 있다.
XAI의 특징
- 해석성 (Interpretability)
- 인공지능 모델의 내부를 들여다 볼 수 있다.
- 인공지능 개발자의 주요 관심사
- 설명성 (Exploitability)
- 인공지능 모델의 결정에 대하여 언어 및 시각적 표현을 통해 설명할 수 있다.
- 해석성보다 달성하기 어렵다
- 인공지능 사용자의 주요 관심사
- 투명성 (Transparency)
- 인공지능 모델의 결정 과정을 확인할 수 있다.
- 인공지능 법률가 및 정책 의사 결정자의 주 관심사
- 정당성 (Justification)
- 인공지능 결정이 올바른 것인지 확인할 수 있다.
- 평범하지 않은 것이나 최적이 아닌 결정에 대하여 확인할 수 있어야 한다.
- 인공지능 사용자의 주요 관심사
XAI가 필요한 이유
- 의사결정의 이유를 설명하고 분석해야 한다.
- ex) 입력 이미지를 95%의 확률로 고양이로 분류한 이유
- 털, 수염이 존재하고, 고양이 데이터와 동일한 모양을 가졌으므로 95% 확률로 고양이이다.
인공지능과 사람
인공지능과 사람의 의사결정 차이
- 데이터 수
- 사람: 몇 장의 사진만으로도 개와 고양이 구분 - 사전학습
- 인공지능: 아주 많은 데이터를 학습해야 구분할 수 있다.
- 사람의 의사결정
- 발달 과정에서 두 가지 직관을 체득한다.
- 물리적 직관: 다양한 물리현상의 시뮬레이션
- 심리적 직관: 객체의 목표와 객체간의 관계 파악
- 빠른 학습
- 문제를 더 기본적인 문제로 조합해서 학습한다.
- 인과관계를 통해 추론한다.
- 이미 배운 것을 새로운 분야에 적용한다.
- 빠른 생각
- 가설을 세우고 이미 알고 있는 지식을 이용하여 빠르게 근사 추론한다.
사람을 모방한 접근 방법
- 기존 학습 모델의 변형
- 학습 모델에 역산 과정을 추가하거나 학습 모델을 수정한다.
- 새로운 학습 모델 개발
- 원인-결과와 같은 도출 과정이 표현 가능한 학습 모델의 개발
- 학습 모델간 비교
- 설명 가능한 타 모델과 비교하고 최종 결과를 설명한다.
- 설명 가능 모델의 이유를 설명 불가능 모델에 적용하여 유사한 결과가 나오면 해당 설명으로 사용한다.
설명 인터페이스
- 모델의 의사결정에 대한 설명을 사용자가 이해할 수 있는 방식으로 표현하는 연구
- 원칙 1. 설명 가능성
- 제시한 설명이 반복적일것
- 필요한 설명을 모두 포함할 것
- 불필요한 설명을 포함하지 않을 것
- 양이 적절할 것
- 원칙 2. 정정 가능성
- 설명이 유동적일 것
- 사용자의 피드백을 존중할 것
- 점진적인 벼화를 주시할 것
- 설명의 명확도와 활용도 등에 대한 피드백을 받아서 인터페이스 효과를 평가하고 발전해야 한다.
XAI의 응용
- 시각질의응답 (Visual Question Answering)
- 사진을 보고 질의응답
- 최근 주목받는 설명 가능한 인공지능 연구 분야
- 사용 기술
- 목표
- 영상 내 시각적 요소와 질문의 언어적 요소의 관계를 자동으로 인지하여 답을 예측하는 것
- 응용 분야
- 영상의학자의 진단 보조
- 시각 장애인 행동 보조
- 설명 가능성 부여
- 모델이 응답과 더불어 설명문을 동시에 생성하도록 한다.
- 이미지, 질문, 답변에 추가하여 설명 데이터를 추가로 학습한다.
왜 모델이 이런 특성을 나타내는지에 대한 이해가 필요하다.
모델을 망가뜨리기 위한 적대적 공격(adversarial attack), 데이터 조작(adversarial example)에 대한 시도를 방어하기 위해 중요하다.
Neural network playground - playground.tensorflow.org