데이터 분석 패턴, 모형 쌓기(Model Stacking)
상태바
데이터 분석 패턴, 모형 쌓기(Model Stacking)
  • 투이컨설팅
  • 승인 2017.11.24 02:28
  • 조회수 3383
  • 댓글 0
이 콘텐츠를 공유합니다

투이컨설팅 현종열 선임



분석가는 예측 모형을 개발 하기 전에 여러 가지 중요한 사항들을 고려해야 한다. 분석 알고리즘을 선정하는 것은 그 중 하나이다. 세상에는 다양한 머신러닝 알고리즘이 존재하지만 해결하고자 하는 분야에서 어떤 알고리즘을 사용했을 때 가장 성능이 우수 한지는 분석 전에는 알 수 없다. 

일반적으로는 이미지 또는 음성 인식 분야에서는 딥러닝(Deep Learning) 알고리즘이 우수한 성적을 보이고 있고, 그 외 다른 분야에서는 XGB, GBM 등이 높은 성적을 보이고 있다. 

특정 알고리즘이 모든 문제에서 만능키가 될 수는 없지만, 본 에세이에서는 가장 좋은 성능을 낼 수 있는 가능성이 높은 방법을 소개하고자 한다. 그 방법은 어느 한 개의 특정 알고리즘이 아닌 여러 알고리즘의 결합하여 하나의 모형을 개발하는 모형 쌓기(Model Stacking) 방법이다. 


1.모형 쌓기(Model Stacking)이란? 

모형 쌓기란, 다양한 알고리즘을 사용하여 기초모형을 개발하고 기초모형의 예측값을 입력값으로 메타모형을 만들어서, 보다 예측력이 높은 모형을 만드는 것을 말한다.

그림1_모형 쌓기.png
[그림1] 제목: 모형 쌓기, 출처: How to Rank 10% in Your First Kaggle Competition

[그림1]은 모형 쌓기에서 학습데이터를 생성하는 모습이다. 모형1부터 5까지 예측값(Predict)을 생성하고 예측값을 모아서 새로운 학습데이터(New Feature)을 생성한다. 마지막으로 새롭게 생성된 학습데이터를 입력값으로 Model6를 개발한다. 


2.모형 쌓기 장단점

모형 쌓기의 장점은 다양한 알고리즘의 장점을 취합할 수 있다는 점이다. 알고리즘별로 학습하는 방식이 서로 상이하기 때문에 알고리즘이 서로 결합되었을 경우에 보다 예측력이 높은 모형을 개발할 수 있는 가능성이 높아지게 된다. 

하지만 하나의 모형을 만들기 위해 다양한 기초 모형을 개발해야 하기 때문에 그 만큼 노력과 시간이 많이 소요되고 또한 단일 모형만으로도 충분히 예측력이 높은 경우에는 모형 결합을 통한 향상 효과가 미미할 수도 있다. 
 

3.모형 쌓기 예시 
 
그림2_모형 쌓기 예시.png
[그림2] 제목: 모형 쌓기 예시, 출처: A Kaggler's Guide to Model Stacking in Practice

[그림2]의 모형 쌓기 예시는 Competitor(Bob, Kate, Mark, Sue)를 분류하는 문제이다. 본 예시에는 기초모형으로 KNN과 SVM을 사용하였다. 두 알고리즘의 특징을 살펴보면 KNN은 중심과 거리가 가까운 Mark와 Kate를 잘 분류하는 장점을 가지고 있고, SVM은 중심점과 거리가 먼 가장 외곽의 Bob과 Sue를 잘 분류하는 장점을 가지고 있다. 모형 쌓기 방법은 이 두가지 알고리즘의 장점을 결합하여 하나의 새로운 모형을 만드는 방법으로, 그 결과는 [그림2]의 우측 그래프(Stacked Logistic Regression Class Regions)에서 확인할 수 있다. 모형 쌓기 결과를 살펴보면 두 가지 알고리즘의 장점을 결합하여 Bob, Kate, Mark, Sue를 보다 잘 분류한 효과를 얻은 것을 확인할 수 있다. 


4. 모형 쌓기 실제 사례 

모형 쌓기의 효과는 해외에서 이미 여러 차례 검증되었다. 캐글 데이터 분석 경진대회의 수상자 인터뷰(Winners’ Interviews, http://blog.kaggle.com/category/winners-interviews/)를 살펴보면 대부분의 수상자들은 최신 머신러닝 알고리즘(XGB, GBM, RF, DL)을 결합한 모형 쌓기 방법을 사용했다. 


5. 모형 쌓기에서 고려해야 되는 점 

모형 쌓기에서 고려해야 할 것은, 모형 쌓기의 효과를 극대화 하기 위해서는 서로 다른 알고리즘의 모형을 결합하는 것이 유리하다는 점이다. 만약 모형A, B를 개발해서 모형 쌓기를 하였다고 하더라도 모형A, B의 상관관계가 높다면 모형 쌓기를 통해 얻을 수 있는 효과는 높지 않을 수 있다. 또한 특정 단일 모형의 예측 성능이 다른 기초 모형의 예측 성능보다 월등히 높은 경우에는 모형을 결합하면 오히려 예측 성능이 떨어질 수 있으므로 주의해야 한다. 


- 끝 -



※ 위 내용은 '투이톡모바일 앱을 통해서도 확인하실 수 있습니다.
하루 5스마트해지는 시간~투이톡!!

 다운로드

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.