머신러닝(26)
-
Decision Tree - Boosting
Boosting은 용어에서 느껴지듯이 점점 강력한(예측력, 정확도가 높은) 모델을 만들어가는 알고리즘입니다. Weak learner에서 Strong learner로 발전하게 되는데, parallel하게 모형을 학습하여 조합하는 bagging과 다르게 sequential하게 만들어진 모델들을 조합하는 방식입니다. Boosting 모델 중에서 gradient boosting model - 2tree을 예시로 Boosting concept를 정리해보겠습니다. 1) 실제값에 적합, $y=f_1(x)$ 2) 첫번째 모형의 오차에 적합, $y-f_1(x) = f_2(x)$ 3) 최종 예측값 결정, $\widehat{y} = f_1(x) + f_2(x)$ 위에서 확인하는 것처럼, 첫번째 모형의 결과가 두번째 모형에도..
2022.01.02 -
Decision Tree - Bagging
Bagging은 Bootstrap방법을 활용하는 방법으로, Decision Tree 모델의 최적의 성능을 이끌어내는데 많은 기여를 하고 있는 개념입니다. 앞서 정리한 것 처럼 Decision Tree는 상당히 과적합 문제에 취약하게 됩니다. Bagging을 활용하면 이와 같은 문제점을 다소 감소시킬 수 있습니다. Bagging은 Bootstrap aggregation의 약자인데, 이름에서 보는 것과 같이 Bootstrpa을 통해 Sample들을 만들고 여러 모델들의 결과 값을 집계하는 것입니다. 이를 통해 결과값의 안정성 확보를 도모합니다. 예시적으로, n개의 독립된 Sample들 $Z_1$,...,$Z_n$이 있다고 했을 때 이 Sample들의 평균의 Varicance는 $\sigma^2/n$이 되면서..
2021.10.19 -
Decision Tree Model
지난 포스팅(https://direction-f.tistory.com/98)에서 Regression Tree와 Classification Tree에 대한 개념을 정리하였는데, 이 개념을 바탕으로 현재 가장 활발하게 적용되고 있는 알고리즘은 CART(Classification And Regression Tree)알고리즘입니다. CART알고리즘의 대표적인 특징은 Binary 노드로 분기된다는 것이고, 이 알고리즘은 차후 Random Forest나 Bagging/Bossting을 적용한 알고리즘에도 활용됩니다. 지난 포스팅에서 정리했던것과 같이 Regression Tree는 실제값과 예측값이 최소화 되도록, Classfication Tree는 불순도를 최소화하도록 구역을 나누되, Classification T..
2021.10.15 -
Tree-Based Model
Tree-Based Model은 Linear/Logistic Regression과 더불어 실제 실무에서 가장 많이 활용되고 있는 알고리즘 중에 하나입니다. Tree-Based Model의 장점은 Linear/Logistic Regression처럼 해석이 용이하며, Bagging/Boosting 방법을 통해서 성능 또한 좋기 때문입니다. Tree-Based Model은 Feature space를 나누어 구분합니다. 예를 들어 키 170cm 이상, 170cm 미만으로 나누는 것과 유사합니다. 정말 간단한 Tree-Base Model을 수식으로 표현하면 아래와 같습니다. $X_1$, $X_2$ 두개의 feature가 있다고 가정하면, $X_1$, $X_2$의 조건에 따라 Identiy function $I$가..
2021.10.06 -
Generalized Additive Models(GAM)
앞서 우리는 하나의 Feature를 다항식, Basis function으로 나타냄으로써 비선형적으로 다루는 방법에 대해 다루었습니다.(https://direction-f.tistory.com/85, https://direction-f.tistory.com/86, https://direction-f.tistory.com/87) GAM은 이를 좀 더 확장하여 변수가 여러개 일 때 변수들간의 가법성(Additive)를 유지하면서 비선형을 부여할 때 활용할 수 있는 방법입니다. 따라서 GAM은 아래와 같이 표현될 수 있습니다. 이 때 $f_j$는 Feature $X_j$에 대해서 비선형성을 가진 함수를 나타냅니다. GAM은 logit이나 probit과 같은 GLM에 대해서도 적용될 수 있으며, link func..
2021.08.15 -
모델 평가 및 선정 > Bootstrap Method
머신러닝에서 일반적으로 bootstrap 방법은 Trianing dataset이 부족할 때, dataset의 규모를 늘릴 때 많이 활용되는 방법입니다. 통계학관점에서는, 평균과 같은 측정된 통계치에 대한 통계적 검증 및 신뢰성 확보를 위해 활용하곤 합니다. Bootstrap을 수행하는 기본적인 방법은 복원추출을 활용하여 기존 Training data의 수와 똑같은 수의 dataset을 추출하는 것입니다. 만약 N개의 Bootstrap data set을 만든 후 data의 총 합과 같은 어떤 관측값을 도출해본다고 생각해보겠습니다. 원래 하나의 dataset만 있다면 해당 값의 분산을 구하는 것은 어렵지만 Bootstrap을 활용한다면 이러한 것이 가능하게 됩니다. 이와 마찬가지 생각을 모델 Error에도 ..
2021.06.28