머신러닝 해석력 시리즈 1탄: 인공지능(AI)과 머신러닝을 신뢰하기 위한 필수 조건, 해석력!

머신러닝, 인공지능, 데이터과학, 블랙박스모델

음악 추천부터 대출 심사, 직원 평가, 암 진단까지 현대 사회는 인공지능(AI)과 머신러닝 기반의 애플리케이션에 둘러싸여 있습니다. 기계가 사람을 대신해 내린 의사결정에 점점 더 많은 영향을 받고 있는데요. 일상적인 것부터 사람의 목숨이 걸린 중대한 의사결정에 이르기까지 우리는 머신러닝 모델에 수많은 질문을 던집니다.


이때 질문에 대한 답변은 ‘예측 모델’이 결정합니다. 생소하고 어려운 개념인데요. 데이터 과학자들은 종종 각 모델이 실제 어떻게 예측했는지에 대한 이해보다는 개별 예측의 정확성에 더 중점을 둡니다. 그렇지만 과학과 기술의 진보에 있어 머신러닝의 역할이 커짐에 따라 머신러닝 모델을 해석하고 이해하는 능력 또한 중요해지고 있습니다.



모델이 복잡할수록 더욱 이해하기 어렵습니다

일부 머신러닝 모델은 간단하고 이해하기 쉽습니다. 입력 값을 변경하면 예측 결과에 영향을 미치게 되고, 각 예측에 대한 타당한 이유를 들 수 있죠. 그런데 최근 머신러닝과 인공지능(AI) 기술이 발전하면서 복잡한 DNN(Deep Neural Network)의 형태나 다양한 모델들이 조합되는 등 모델이 매우 복잡해졌습니다. 이와 같이 복잡한 머신러닝 모델을 블랙박스(black-box) 모델이라고 부르는데요.


복잡성은 블랙박스 모델이 뛰어난 예측을 내리도록 하지만 동시에 이해하고 신뢰하기 더욱 어렵게 만듭니다. 블랙박스 모델 내부의 개별 알고리즘은 비밀을 드러내지 않습니다. 일반적으로 왜 특정 예측을 내렸는지에 대한 명확한 설명을 제공하지 않죠. 그저 가능성을 제시할 뿐 불투명하고 해석하기 어렵습니다. 때로는 수천 혹은 수백만 가지의 모델 매개변수가 존재하고, 입력 피쳐(features)와 매개변수 사이에 일대일 관계가 없으며, 많은 매개변수를 사용하는 여러 모델의 조합이 예측에 영향을 미칩니다.


또 예측의 정확성을 높이기 위해서는 방대한 양의 데이터가 필요하나 일부 모델에는 데이터가 부족하기도 합니다. 이러한 데이터 세트로부터 무엇을 학습했는지, 결과에 가장 큰 영향을 미치는 데이터 포인트는 무엇인지 파악하는 것 또한 어려워지죠.


이러한 이유들 때문에 블랙박스 모델 기법의 프로세스와 결과를 이해하기는 매우 어렵습니다. 또 모델을 신뢰할 수 있는지, 모델을 사용해 공정한 의사결정을 내릴 수 있는지 여부를 파악하는 것도 힘들죠.


만약 모델이 잘못 학습하면 어떻게 될까요? 배포(deployment)될 준비가 되어있지 않다면요? 허위 진술, 지나친 단순화, 과장 등 여러 위험 요소가 따릅니다. 따라서 머신러닝 모델을 사용할 때에는 모델이 어떻게 작동하는지 깊이 있게 이해할 수 있도록 신중을 기해야 합니다.


머신러닝, 인공지능, 데이터과학, 블랙박스모델

▲복잡성은 블랙박스 모델이 뛰어난 예측을 내리도록 하지만 동시에 이해하고 신뢰하기 더욱 어렵게 만듭니다.



정확성만으로 충분하지 않은 이유

머신러닝에서 정확성은 머신러닝 모델의 출력 값을 입력 데이터 세트의 알려진 실제 값과 비교함으로써 측정됩니다.


모델은 데이터 세트에 포함된 중요하지 않은 피쳐나 패턴까지 기억함으로써 정확성을 높일 수 있습니다. 만약 입력 데이터 세트에 편향(bias)이 있으면 모델에 영향을 줄 수 있는데요. 또 학습 환경의 데이터가 모델이 배포된 운영 환경의 데이터를 제대로 대표하지 못할 수 있습니다. 초기에 데이터를 충분히 대표하더라도 운영 환경의 데이터는 고정적이지 않기 때문에 매우 빨리 구식이 될 수 있죠.


따라서 특정 데이터 세트로 도출한 정확성에만 의존할 수는 없습니다. 더 많은 것을 알아야 하죠! 그러기 위해선 블랙박스 머신러닝 모델에 대한 이해를 높이고, 투명성과 해석력을 향상시켜 더욱 신뢰할 수 있도록 해야 합니다.



그렇다면 해석력이란 무엇일까요?

해석력이란 최종 사용자에게 특정한 의사결정이나 프로세스에 대해 설명할 수 있는 능력을 의미합니다. 구체적으로 아래와 같은 능력이 포함되는데요.

  • 결과에 영향을 미치는 주요 작업에 대한 이해

  • 알고리즘이 내린 의사결정에 대한 설명

  • 알고리즘에 의해 학습된 패턴/규칙/피쳐 찾기

  • 결과에 대해 비판적으로 사고하기

  • 알고리즘의 알려지지 않은 부분 탐색하기

그렇지만 학습용 데이터의 각 데이터 포인트에서 모델이 작동하는 방식에 대한 모든 세부사항을 이해해야 한다는 것은 아닙니다.



왜 해석력이 필요할까요?

해석력은 다양한 이유로 여러 이해관계자에게 중요합니다.


데이터 과학자는 높은 정확성을 갖춘 모델을 만들고 싶어합니다. 그러기 위해 최상의 모델을 선택하고, 그 모델을 개선할 방법을 찾기 위해 세부사항을 이해하고자 하죠. 또 모델로부터 인사이트를 도출하고, 발견한 내용들을 타깃에게 전달하고자 합니다.

머신러닝, 인공지능, 데이터과학, 블랙박스모델

최종 사용자는 왜 모델이 특정 예측을 내렸는지 알고 싶어합니다. 또 그 결정이 각자에게 어떤 영향을 미치게 될지, 의사결정 과정은 공정했는지, 반대할 결정은 없는지 등을 궁금해하죠. 예를 들어, 우리 모두 온라인 쇼핑을 하거나 웹 상의 광고를 클릭할 때 어느 정도의 신뢰성을 기대하고 있죠.

머신러닝, 인공지능, 데이터과학, 블랙박스모델

규제 및 입법 기관은 공정하고 투명한 시스템을 만들고, 소비자를 보호하고자 합니다. 머신러닝 알고리즘 모델이 의사결정을 내리게 되면서 더욱 고려해야 할 점들이 많아졌죠.

머신러닝, 인공지능, 데이터과학, 블랙박스모델

이 모든 이해관계자들의 요구사항은 비슷합니다. 바로 투명하고, 신뢰할 수 있고, 설명할 수 있는 블랙박스 모델이죠!


1. 투명성: 시스템은 모델이 어떻게 작동하는지, 왜 특정 예측을 내렸는지 설명할 수 있습니다. 

2. 신뢰성: 시스템은 지속적인 제어 없이도 현실 세계의 다양한 시나리오를 처리할 수 있습니다. 

3. 명료성(설명가능성): 시스템은 모델이 학습하는 패턴과 모델이 제공하는 결과 등 내부 작동에 대한 유용한 정보를 전달할 수 있습니다.


일반적인 머신러닝 파이프라인은 모델이 학습할 때 사용하는 데이터 세트, 사용 중인 모델, 모델 평가 및 배포 방법에 대한 통제권을 갖습니다.



해석력은 언제 필요할까요?

그렇지만 우선 왜 해석력이 필요한지 질문을 던져야 합니다. 어느 단계에서 해석력이 필요할까요? 꼭 모든 애플리케이션의 예측 방법을 이해할 필요는 없습니다. 그렇지만 중대한 의사결정을 내릴 경우 해석력은 필수죠! 목적을 정한 후에는 프로세스의 어느 단계에서 어떤 기법이 필요한지 파악하는 데 중점을 둬야 합니다.


1. 사전 모델링(pre-modeling) 해석력(모델 입력 값 해석력): 모델 구축을 시작하기 전에 데이터 세트를 이해하는 것은 매우 중요합니다. 이때 다양한 탐색적 데이터 분석과 시각화 기법을 이용해 데이터 세트를 더 잘 이해할 수 있는데요. 데이터 세트의 주요 피쳐를 요약하고, 데이터 세트를 대표하거나 중요한 포인트를 찾고, 데이터 세트에서 관련 피쳐를 찾는 작업 등이 포함됩니다. 데이터 세트를 전반적으로 이해한 후 모델링 과정에 사용할 피쳐를 결정해야 합니다. 모델링 후 입-출력 관계를 설명하려면 의미 있는 피쳐부터 사용해야 하는데요. 그러나 t-SNE(Stochastic Neighbor Embedding), 랜덤 프로젝트 등에서 얻은 것과 같이 고도로 엔지니어링된 피쳐는 모델의 정확성을 높일 수는 있지만 실제 모델을 사용할 때 그 피쳐들은 해석할 수 없습니다.


2. 모델링 해석력: 머신러닝 모델은 단순성, 투명성, 명료성(설명가능성)을 기준으로 투명한 ‘화이트박스(white-box)’와 불투명한 ‘블랙박스(black-box)’ 모델로 분류할 수 있습니다.


1) 투명한 ‘화이트박스’ 모델: 이 범주에서는 일반적으로 의사결정 트리, 규칙 목록(rule-lists), 회귀 알고리즘이 고려됩니다. 이 모델은 특히 예측변수가 많지 않을 때 이해하기 쉬운데요. 해석 가능한 피쳐들을 이용해 더 많은 인사이트를 얻어 모델에서 어떤 일들이 벌어지고 있는지 쉽게 이해할 수 있습니다. 기술적 이해관계자에게 설명할 수도 있죠. 물론 수백 가지 피쳐를 갖춘 매우 깊고 큰 의사결정 트리일수록 점점 복잡해지고 해석하지 못할 수도 있겠죠.


2) 불투명한 ‘블랙박스’ 모델: 이 범주에서는 DNN, 랜덤 포레스트, 그래디언트 부스팅 머신을 고려할 수 있습니다. 대개 많은 예측변수와 복잡한 트랜스포메이션이 이용되는데요. 또 일부는 많은 매개변수를 가집니다. 일반적으로 이러한 모델 내부에서 일어나는 일들은 시각화하거나 이해하기 어렵고, 특히 타깃과의 연관 관계를 파악하기는 더욱 어렵습니다. 그러나 예측 정확성은 다른 모델보다 훨씬 더 뛰어날 수 있습니다. 최근 블랙박스 모델의 투명성을 높이고자 학습 과정의 일부인 기법 등에 대해 다양한 연구들이 진행되고 있습니다. 예측 외에도 모델에 대한 설명과 학습 과정 후 피쳐를 시각화하는 것도 투명성을 향상시키는 방법입니다.


3. 사후 모델링(post-modeling) 해석력(사후 해석력): 모델 예측을 해석하는 능력은 입력 피쳐와 출력 예측 사이의 역학을 점검하는 데 도움이 됩니다. 일부 사후 모델링 활동은 다른 모델과 달리 특정 모델에 의해 구애(model-agnostic)를 받습니다. 이 단계에서 해석력은 모델의 가장 중요한 피쳐, 해당 피쳐가 예측에 미치는 영향, 각 피쳐가 예측에 기여하는 방식, 특정 피쳐에 대한 모델의 민감성 등을 이해하는 데 도움이 되죠! 랜덤 포레스트의 변수 중요도 출력(variable importance output)과 같은 특정 모델에 특화된 기법 외에도 부분 의존성(PD; Partial Dependence) 플롯, 개별 조건부 기대치(ICE; Individual Conditional Expectation) 플롯, LIME(Local Interpretable Model-Agnostic Explanations) 등 특정 모델에 구애 받지 않는 기법 등이 있습니다.


머신러닝, 인공지능, 데이터과학, 블랙박스모델


앞으로 SAS 블로그를 통해 몇 가지 해석 기법에 대해 자세히 소개해드릴 예정입니다. 특정 모델에 구애 받지 않는 해석 기법을 이용해 블랙박스 모델을 이해하는 방법과 해석력의 발전 등에 대해 다룰 예정이니 많은 관심 부탁드립니다.


인공지능(AI) 활용을 위한 통합 분석 플랫폼 SAS 바이야(SAS Viya) 기반의 신규 솔루션 SAS 비주얼 데이터 마이닝 앤드 머신러닝(SAS VDMML; SAS Visual Data Mining and Machine Learning)은 드래그앤드롭과 GUI 중심의 분석으로 다양한 피쳐 생성을 포함한 예측 모델링, 머신러닝 등 고급 분석 기능을 획기적인 속도로 구현합니다. 데이터 과학자, 분석 전문가뿐만 아니라 고급 프로그래밍 지식이 없는 일반 사용자들도 코딩 작업 없이 고급 머신러닝 알고리즘을 이용해 다양한 시나리오를 쉽게 테스트하고 최적의 의사결정 도출할 수 있습니다. SAS 웹사이트에서 자세한 내용을 확인해보세요.


머신러닝, 인공지능, 데이터과학, 블랙박스모델





저자

일크눌 카이날 카불(Ilknur Kaynar Kabul) l SAS 책임 고급 분석 R&D 매니저(Sr Manager, Advanced Analytics R&D at SAS)


편집

권일형 수석 l SAS코리아 SSP 고급분석 담당