Loading...
2021. 11. 1. 19:33

Gradient boosting 모형

기존 boosting이 model의 정확성을 점점 개선하는 방식으로 진행되었다면 gradient boosting은 그 이름에서도 알 수 있듯이 loss function을 정의하고 이것을 줄여나가는 방식으로 model을 학습해나갑니다. loss function은 딥러닝에서도 자주 사용하듯이 실제값과 예측값의 차이로 정의합니다. 예시 그림을 보면 이해하기 쉬울 것이라고 생각합니다. 위 그림에서 weight를 예측하는 model을 만든다고 합시다. 실제값과 예측값의 차이인 loss function을 최소로하는 최초 예측은 모든 weight의 평균값으로 예측하는 것이 제일 간단합니다. 여기서 평균은 71.2라고 합니다. 예측한 값과 실제 값들의 차이(이것을 residual 혹은 loss라고 부릅니다)를 각 ro..

2021. 10. 29. 16:49

boosting에 대하여

boosting에 대한 알고리즘 설명이 2가지 정도 있습니다. 주어진 training data set이 있다고 생각해봅시다. 여기서 random하게 sampling하여 sample dataset을 구성합니다. sampling을 하는 과정을 boosting round라고 부릅니다. boosting round에서 구성한 sample dataset을 이용하여 하나의 model A를 학습시킵니다. (처음 가지고 있던 train set으로 학습시키는게 아니고 sampling한 것으로 학습시킴) 이 학습시킨 model A를 가지고 있던 training data set 전체에 대해서 validation을 수행합니다. 일부 뽑은 sample set으로 validation을 하는 것이 아니라 전체 train data s..

2021. 10. 10. 13:44

정보이론의 기초3 -KL divergence란?-

1. KL divergence에 대하여 The Kullback–Leibler divergence (or information divergence, information gain, or relative entropy)은 두 확률분포를 비교하기 위한 방법이다. 데이터의 진짜 확률분포(true distribution)을 P라 하고 데이터가 따를 것 같다고 생각하는 우리가 예측한 확률분포 모형이 Q라한다면 Q에 대한 P의 The Kullback–Leibler divergence은 $$D _{KL} (P||Q)=E(log \frac{P}{Q} ) _{P} = \sum _{x \subset P} ^{} P(x)log \frac{P(x)}{Q(x)}= \sum _{x \subset P} ^{} P(x)logP(x)-..