Skip to content

Latest commit

 

History

History
29 lines (23 loc) · 2.64 KB

5-2_교차검증과그리드서치_박제인.md

File metadata and controls

29 lines (23 loc) · 2.64 KB

*검증 세트가 필요한 이유와 교차 검증, 그리드 서치와 랜덤 서치를 이용해 최적의 성능을 내는 하이퍼파라미터 찾기

검증 세트validation set

  • 하이퍼파라미터 튜닝을 위해 모델을 평가할 때, 테스트 세트를 사용하지 않고 모델이 과대적합인지 과소적합인지 측정하기 위해 훈련 세트를 나눈 것
  • 예) 전체 데이터 중 20%를 테스트 세트로 만들고 나머지 80%를 훈련 세트로 만들었는데, 이 훈련 세트 중에서 다시 20%를 떼어 내어 검증 세트로 만든다.
  • 훈련 세트 60% + 검증 세트 20% + 테스트 세트 20% (보통 20~30%를 테스트 세트와 검증 세트로 떼어 놓는데 훈련 데이터가 아주 많다면 단 몇 %만 떼어 놓아도 전체 데이터를 대표하는 데 문제가 없다!)

교차 검증cross validation

  • 검증 세트를 떼어 내어 평가하는 과정을 여러 번 반복한다음 점수를 평균하여 최종 검증 점수를 얻는다
  • 훈련 세트를 여러 폴드로 나눈 다음 한 폴드가 검증 세트의 역할을 하고 나머지 폴드에서는 모델을 훈련하는데, 교차 검증은 이런 식으로 모든 폴드에 대해 검증 점수를 얻어 평균하는 방법이다.
  • 훈련 세트를 몇 부분으로 나누냐에 따라 다르게 부른다. k-겹 교차 검증이라고도 부른다.
    • 보통 5-폴드 교차 검증이나 10-폴드 교차 검증을 많이 사용한다.
    • 예) 3-폴드 교차 검증 : 훈련 세트를 세 부분으로 나눠서 교차 검증을 수행하는 것

하이퍼파라미터 튜닝

  • '하이퍼파라미터' : 모델이 학습할 수 없어서 사용자가 지정해야만 하는 파라미터
  • 라이브러리가 제공하는 기본값을 그대로 사용해 모델을 훈련하고 검증 세트의 점수나 교차 검증을 통해서 매개변수를 조금씩 바꿔본다.
  • 모델마다 적게는 12개에서 많게는 56개의 매개변수를 제공한다.

그리드 서치

  • 하이퍼파라미터 탐색을 자동화해 주는 도구
  • 탐색할 매개변수를 나열하면 교차 검증을 수행하여 가장 좋은 검증 점수의 매개변수 조합을 선택하고 마지막으로 이 매개변수 조합으로 최종 모델을 훈련한다.

랜덤 서치

  • 연속된 매개변수 값을 탐색할 때 유용
  • 탐색할 값을 직접 나열하는 것이 아니고 탐색 값을 샘플링할 수 있는 확률 분포 객체를 전달한다.
  • 지정된 횟수만큼 샘플링하여 교차 검증을 수행하기 때문에 시스템 자원이 허락하는 만큼 탐색량을 조절할 수 있다.