one of a kind scene

k-fold cross validation에 대해서 본문

데이터 분석 이론/데이터 사이언스

k-fold cross validation에 대해서

specialscene 2020. 2. 2. 23:57

K-fold cross validation

(그림1) k=5일때 cross validation

언제사용?

- 모델이 잘 적합(fitting) 됐는지 확인할 때 

   1) 주로 over-fitting 여부를 확인할 때 사용

   2) 데이터의 양이 충분하지 않을 때(=적을 때) 모델의 성능에 대한 신뢰도를 확보하기 위해 사용

       k번 모두 모델의 성능이 일정하면 → 모델의 성능에 대한 신뢰도가 확보됨

- 모델의 성능 향상

   1) k번 학습을 통해 만들어진 k개의 모델을 활용하여 앙상블(Ensemble)모델을 만든다면, 모델의 성능향상을 기대할 수 있음(예 : Bagging, Boosting)

   2) k번 학습을 통해 만들어진 k개의 모델에서 나온 parameter들의 평균값으로 완벽하진 않지만 납득할 수 있는 parameter값을 찾을 수 있음

장점?

- data set을 k번 골고루 학습시켜보기 때문에 모델이 잘 적합됐는지 확인가능(=모델의 성능에 대한 신뢰도가 확보됨)

- data set을 k개의 모델에서 나온 parameter들의 평균값을 활용하면 완벽하진 않지만, 1개의 train/test 데이터 셋을 사용할 때 보다는 납득할 수 있는 parameter 값을 구할 수 있음(=hyper parameter tuning)

- k번 학습을 통해 만들어진 k개의 모델을 활용하여 앙상블(Ensemble)모델을 만든다면, 모델의 성능향상을 기대할 수 있음(예 : Bagging, Boosting)

단점?

- 여러번(=k번) 학습시켜보기 때문에 시간이 많이 소요

 

(참조)cross validation으로 hyper parameter tuning하는 방법에 대한 설명

https://cinema4dr12.tistory.com/1275

 

[Artificial Intelligence / Posts] 교차검증 (Cross-validation)

Written by Geol Choi | Sep. 30, 2017 이번 포스팅은 교차검증에 대한 간단한 개념만 설명합니다. 개요 머신러닝 모델을 설계하다보면 설계에 필요한 파라미터들이 있습니다. 즉, 모델의 동작을 위해 결정되어야..

cinema4dr12.tistory.com