Gradient Boosting Decision Tree Algorithm

앙상블 모델이란?

  • 주로 모델을 융합하는 전략과 방법을 통칭해서 말함 → 대표적으로 배깅과 부스팅이 있음
  • 부스팅의 기본적인 컨셉은 분류기를 연달아 직렬적으로 연결해서 기존 층서 잘못 분류한 샘플에 대해서 가중치를 높게 두고 훈련을 하는 형태 → 사람이 실제로 학습할 때 오답노트를 활용하는 것과 비슷한 컨셉 → 편향을 줄여나가는 과정
  • 배깅은 병렬적으로 훈련을 진행하는 것으로 데이터를 여러 셋으로 나누어서 분류기간 상호독립적이고 각 분류기가 판단을 한 후 투표방식으로 최종 집단 의사결정 → 분할정복 형태이기 때문에 분산을 줄여나가는 과정으로 이해할 수 있음

GBDT(Gradient Boosting Decision Tree)

  • 전체 알고리즘을 보면 대략 다음과 같다.
    1.baseline model 설정
    2.M번 반복하면서 Negative Gadient로 손실함수 계산 후 추가적으로 해당값을 최소로 하는 모델을 만들고
    3.이 것을 기존 모델에 연이어 붙이도록 한다. 이 때 Learning Rate를 설정해서 Detail하게 데이터를 훑고 갈 수 있도록 한다.
  • Negative Gradient 때문에 경사하강법을 떠올리기 쉬운데 경사하강법은 경사를 하강할 때 파라미터를 업데이트하고, GBDT는 새로운 모델을 사용한다.
  • 장점
    - 트리를 기반으로 하기 때문에 전처리 작업을 할 필요가 없다.
    - 분포가 밀집되어 있는 데이터에서 일반화 능력과 표현 능력이 모두 뛰어나다.
  • 단점
    - 희소 데이터에서 표현 능력이 다소 아쉽다.
    - 텍스트에서 퍼포먼스가 떨어질 수 있다.
    - 직렬적으로 훈련하기 때문에 훈련속도를 높이기 어렵다.

XGBoost

  • GBDT는 CART를 기초 분류기로 사용하지만, XGBoost는 다양한 기초 분류기를 지원한다. 단 CART 사용시 XGBoost는 정규화 항을 더해서 모델의 복잡도를 조절하고 과적합을 방지하려고 한다.
  • GBDT는 결측치를 처리하는 전략이 별도로 없으나. XGBoost는 스스로 결측치 처리 전략을 학습한다.
  • GBDT는 매번 반복할 때마다 모든 데이터를 사용하지만 XGBoost는 데이터 샘플리을 지원한다.
  • GBDT는 손실함수의 일차 미분 정보만을 사용하지만 XGBoost는 1차,2차 미분 정보를 모두 사용한다.

잡설…

  • RandomForest과 함께 GBDT까지가 머신러닝으로서 조금만 시간을 준다면 그대로 현업들에게 설명하기 가장 쉬운 알고리즘이었다. 어느정도의 시간은 기다려주면 설명은 해드렸던 것 같다.
  • LGBM 대비 생각보다 설치가 워낙 잘되다보니 선호하는 편이나 속도가 너무느려서 GBDT의 특성을 고스란히 보여주는 편이다.
  • 그럼에도 캐글에서 딥러닝으로 접근하기 전에 한번쯤은 확인삼아 사용하던 모델이었으나, 뭐랄까 어느새부턴가 정형에서도 딥러닝이 확실히 성능이 우위를 보이면서 이제는 정말 보기 쉽지 않아졌다.
  • 적다보니 데이터분석가 입장에서 생각보다 대회를 제외하고는 오래 걸린다는 이슈로 많이 사용하지는 않은 것 같다.


Read more

OLS 기반 인과추론 시 오차항 관련 체크 필요 가정

OLS 기반 인과추론 시 오차항 관련 체크 필요 가정

배경 * 아래 글을 DANBI에서 보다가 더 알아보게 되었습니다. OLS를 떠받치는 몇 개의 기둥이 있는데 그중 실용적으로 가장 중요한 것이 일치성(consistency)다. 쉽게 말해서 OLS를 통해 도출된 추정량이 있을 때 샘플사이즈가 커지면서 이 값이 참 값으로 접근한다는 것이다. 일치성이 충족되면 우리는 적당하게 큰 표본에 대해서 추정치가 좋은 속성을 지니고 있다고

인공지능이 문제가 아니라 결국 사람이 문제가 될 것입니다.

인공지능이 문제가 아니라 결국 사람이 문제가 될 것입니다.

사람들이 AI가 필요하다고 생각하는 시점 저 판사를 얼른 AI로 교체해야 한다. 유튜브에서 뉴스를 보다 보면 정말 많이 보이는 덧글입니다. 이러한 내용의 덧글이 달릴 때마다, 정말 많은 사람들이 공감을 표하곤 합니다. 왜 이렇게 사람들은 이러한 주장에 공감을 표하는 것일까? AI는 시킨대로 하기 때문에 공정하다는 인식 여러 이유가 있겠지만, 사람들은 아마 AI가

BG/NBD 모델은 고객 생애가치를 추정하는데 사용되는 확률 모델입니다.

BG/NBD 모델은 고객 생애가치를 추정하는데 사용되는 확률 모델입니다.

1. BG/NBD 모델이란? * BG/NBD(Beta-Geometric/Negative Binomial Distribution) 모델은 **고객의 생애 가치(Customer Lifetime Value, CLV)**를 추정하는 데 사용되는 확률적 모델입니다. * 특히 고객이 반복 구매를 할지, 아니면 더 이상 활동하지 않을지를 추정하는 데 유용합니다. 이 모델은 고객의 구매 행태를 두 가지 중요한 개념으로 나눕니다: * 고객은 활성(active)

다중공선성은 잘못된 인과추론 결과를 만들어낼 수 있습니다.

다중공선성은 잘못된 인과추론 결과를 만들어낼 수 있습니다.

다중공선성(Multi Collinearity) * **Multi-Collinearity(다중공선성)**는 독립 변수들 간의 강한 상관관계가 존재할 때 발생합니다. 즉, 한 독립 변수가 다른 독립 변수에 의해 설명될 수 있을 정도로 상관관계가 높은 상황을 의미합니다. * 이 문제는 주로 회귀 분석에서 나타나며, 변수들 간의 관계를 해석하는 데 있어 큰 장애물이 될 수 있습니다. * 일반적인 회귀식을 $Y=