- 2023년 8월 11일 오전 11:06
- 조회수: 15849
INFORMATION
- 2023년 8월 11일
- 오전 12시 ~
온라인 비디오 시청 (YouTube)

TOPIC
On-Line Video
OVERVIEW
머신러닝은 의료, 금융 등 위험성이 높은 다양한 분야에서 널리 활용되고 있으며, 특히 표 형식(tabular)의 데이터를 다루는 경우 많은 대회에서 우수한 성과를 보여주고 있다. 하지만 높은 성능을 가진 복잡한 구조의 부스팅 모델들(ex. LGBM, XGB)은 의사결정 과정을 설명하기 어렵다는 문제점을 가지고 있다. 이러한 문제를 해결하기 위해 설명 가능한 XAI 기법(ex. LIME, SHAP)들이 제시되었지만, 이들은 예측 모델과 해석 모델을 분리하는 model-agnostic method로 모델의 의사결정 로직을 간접적으로 추론한다는 한계가 남아있다. 본 세미나에서는 기존의 부스팅 모델과 동등한 성능을 갖지만 모델 의사결정 과정을 설명 가능한 explainable boosting machine(EBM)에 대해 소개하고자 한다.
청취자 후기

이번 세미나는 Explainable Boosting Machine(EBM)에 대해 진행되었다. 머신러닝 모델들은 시간이 지날수록 좋은 성능을 보이고 있지만, 해석적인 측면(XAI)은 점점 블랙박스화 되어가고 있다. 이러한 측면을 극복하기 위해서 XAI적인 측면은 LIME이나 SHAP과 같은 다른 모델을 함께 활용해야 된다는 번거로움이 존재한다. 물론 Random Forest나 XGBoost 같은 경우는 좋은 성능을 보이면서 해석적인 측면을 제공하기도 한다. 하지만, 단일 변수의 중요도만 제공할 뿐, 변수간 상호작용을 고려하는 것은 불가능하다. 반면 EBM은 성능을 함께 확보하면서 단일 변수 뿐만 아니라 여러 변수의 교호작용을 함께 고려할 수 있다. EBM의 원리는 아래 문단과 같다.
성능과 XAI를 모두 잡은 EBM은 가산성이라는 성질을 기반으로 한다. 이는 Linear Regression처럼 각 (변수*Coefficient)의 합으로 모델이 구성되어 있다는 것을 의미한다. 특히, 단일 변수 뿐만 아니라, 각 변수의 교호작용을 고려한 항들이 함께 구성된다. 추가적으로, 메모리적인 측면에서도 이점을 갖는다. 모델 전체를 저장하면 학습에 있어 메모리를 많이 차지할 수 있지만, 모델을 학습한 후 하나의 표로 요약하고, 학습한 모델은 삭제함으로써 메모리 효율성을 얻을 수 있었다. 이를 통해 Boosting의 강점인 성능을 가져가는 동시에, 가산성 성질로 단일 변수의 중요도 뿐만 아니라 변수 간 교호작용까지 산출할 수 있다.
이번 세미나를 통해 EBM에 대해 처음으로 접할 수 있었다. 공모전을 경험해보면, 여전히 딥러닝 보다는 머신러닝이 좋은 성능을 보였던 경험이 있다. 이는 딥러닝이 벤치마크 데이터와 같은 배경에서 이론적으로는 좋은 성능을 보이지만, 현실 데이터에서는 여전히 한계를 보인다는 것을 의미한다. 이러한 측면에서 현실 데이터에 좋은 성능을 보인 머신러닝에서 새로운 모델이 탄생했다는 것은 연구자 뿐만 아니라 현업 엔지니어들에게도 반가운 소식일 것이다. 기회가 된다면 추후 프로젝트나 공모전에서 적용해보고 싶다. 유익한 세미나를 준비해준 심세진 연구원님께 고맙다는 말을 전하며 세미나 후기를 마친다.

이번 세미나는 Explainable Boosting Machine이라는 주제로 진행되었다. 기본적으로 모델의 성능이 높아지면 해석력이 떨어지기 때문에 높은 성능을 유지하면서도 설명력을 부여할 수 있는 XAI 기법들이 제안되고 있다. 대표적으로 SHAP, LIME등이 있는데 이는 예측모델과 해석 모델이 분리되는 형태로 간접적인 추론이라는 한계가 존재한다. 결과적으로 높은 성능과 해석력을 모두 가질 수 있는 EBM(Explainable Boosting Machine)을 소개하였다. 본격적으로 EBM에 앞서서 Generalized Additive Model(GAM, 일반화 가법 모형)을 설명하였다. 이는 통계 모델링 중 하나로 변수 간의 가산성을 유지하면서 비선형 관계를 모델링할 수 있다고 한다. 각각의 변수가 함수에 한번에 들어가는 것이 아니라 하나씩 들어가기에 각 변수의 중요도를 파악할 수 있는 원리로 이해했다. 이때 입력 변수 간의 상호작용은 표현할 수 없기 때문에 이를 개선한 GA2M이 제안되었다. 입력 변수를 Pair로 함수에 넣어주면서 간단하게 GAM을 확장하였는데 당연하게도 입력 변수가 많아지면 가능한 Pair의 경우의 수도 굉장히 커지기 때문에 학습 시간이 늘어난다는 단점이 있다. 결과 적으로 이 단점 또한 개선하여 학습속도가 개선된 EBM이 제안되었다. GA2M과의 차이점은 병렬 연산을 수행하고 Gradient Boosting 모델을 Feature Function으로 고정하여 사용한다고 한다. 학습 과정은 2단계로 나누어서 진행되며 첫번째에서는 단일 입력변수로 학습을 수행, 두번째는 입력 변수간 상호 작용을 고려한 학습을 진행한다. 최종적으로 1, 2단계에서 나온 결과를 종합하여 하나의 Table을 생성하고 이 Table을 사용하여 최종 추론하게 된다. 1, 2단계에서 사용되었던 차트를 통해서 변수의 설명력을 시각화 할수 있었고 예측결과에 따른 시각화에서 변수간 상호작용(Pair)에 대한 결과가 나오는 것이 흥미로웠다. 제조 현장에서는 간단하면서도 높은 성능을 내는 Boosting 모델을 사용하는 경우가 많은데 예측 결과를 현장에 적용하기 위해서는 왜?라는 질문에 명확히 근거를 제시할 수 있어야한다. 이때문에 많이 고생하기도 했었는데 높은 성능을 유지하면서도 해석력을 부여할 수 있고 간편하게 사용할 수 있는 EBM를 적극적으로 활용해 볼 수 있을것 같다. 유익한 세미나를 준비해준 심세진 연구원에게 고맙다는 말을 전하며 이상으로 세미나 후기를 마친다.

일반적으로 예측에 대한 해석이 쉬워지기 위해서는 사용하는 예측 모델의 구조가 단순해야 한다. 하지만, 모델 구조가 단순할 경우 좋은 성능을 보장받기가 어렵다. 이러한 한계점을 극복하고자, 대부분의 유명 해석 알고리즘들은 아래와 같은 절차를 밟는다.
1. 복잡하고 성능이 우수한 예측 모델을 사용함. (어쨌든 성능이 가장 중요하니까)
2. 우수 예측 모델의 결과를 대리할 수 있는 간단 모델을 생성.
3. 생성된 대리(간단함) 모델로 결과를 해석.
하지만, 예측을 수행하는 메인 모델이 아니라, 결국 대리 모델로써 결과를 해석한다는 것이 해석 정확도를 떨어트리는 한계점을 야기할 수 있다. 이러한 점을 극복하고자, 대리 모델 없이, 즉 예측 모델 자체로도 해석을 할 수 있으며 좋은 성능을 얻을 수 있는 모델이 개발되고 있다. 본 세미나를 청취하면 이러한 모델에 어떤 것이 있는지 소개받을 수 있고, 모델의 작동 원리에 대해 자세히 이해할 수 있다.
흥미로웠던 점은 학습이 끝난 이후 Testing 과정에서 모델을 사용할 필요 없이, 모델에 대응되는 Lookup Table로 해석과 동시에 예측까지 수행할 수 있다는 것이다. 이러한 점은 현업에서 머신러닝 및 코딩에 대해 자세히 알지 못하는 사람도 친숙하게 사용할 수 있을 장점으로 생각한다. 흥미로운 주제를 가지고 세미나를 열심히 준비해 준 세진이에게 감사의 말씀을 전하며, 세미나 후기를 마치도록 한다.

이번 세미나는 XAI쪽으로 잘 모르는 EBM이라는 모델에 대해서 설명을 해주었다. 회사에서 설명력을 항상 요구하기 때문에 SHAP, Permutaion Index, LIME 를 사용하고 있는 와중에 2019년도에 Microsoft 에서 개발한 EBM이라는 모형이 있는것을 보고 상당히 흥미로웠다. 진수도 적었지만 대부분 대리인 모델을 세워서 black box에 대한것의 X,Y를 이용하여 해석력을 추론하는데 이 모델은 직접적으로 변수자체와 다른 변수와의 상호작용 ( 3개 이상은 아닌 것은 제외)에 대한 모델을 각각 학습하고 그에 대한 영향력을 lookup table로 관리하여 이를 이용하여 예측하고 결과도 해석을 할 수 있는 새로운 방식의 XAI 모델이었다. 바로 회사에서 사용을 해보고 다른 앙상블 모델에 SHAP. PI, LIME를 적용해보고 결과 해석에 대해서 차이점을 한번 비교해봐야겠다.좋은 모델을 알려준 심세진 연구원에게 감사합니다.