[혼공머신] 4주차 미션🔥(기본미션) 교차 검증을 그림으로 설명하기

sujinzzang수진짱·2022년 7월 31일
0

05-1. 결정 트리

마무리

키워드

  • 결정 트리
    예/아니오에 대한 질문을 이어나가면서 정답을 찾아 학습하는 알고리즘.
    비교적 예측 과정을 이해하기 쉽고 성능도 뛰어남
  • 불순도
    결정 트리가 최적의 질문을 찾기 위한 기준.
  • 정보 이득
    부모 노드와 자식 노드의 불순도 차이.
    결정 트리 알고리즘은 정보 이득이 최대화되도록 학습한다.
  • 특성 중요도
    결정 트리에 사용된 특성이 불순도를 감소하는데 기여한 정도.

핵심 패키지와 함수

  • DecisionTreeClassifier
    결정트리 분류 클래스
    - creterion 불순도를 지정. 기본값은 지니 불순도를 의미하는 'gini'이고 'entropy'불순도를 사용할 수도 있다.
    - splitter 노드를 분할하는 전략을 선택한다. 기본값은 'best'로 정보 이득이 최대가 되도록 분할. 'random'이면 임의로 노드를 분할
    - max_depth 트리가 성장할 최대 깊이를 지정. 기본값은 'None'으로 리프 노드가 순수하거나 min_samples_split보다 샘플 개수가 적을 때까지 성장
    - min_samples_split 노드를 나누기 위한 최소 샘플 개수. 기본값은 2
    - max_features 최적의 분할을 위해 탐색할 특성의 개수. 기본값은 None
  • plot_tree()
    결정 트리 모델을 시각화. 첫 번째 매개변수로 결정 트리 모델 객체를 전달.
    - max_depth 나타낼 트리의 깊이를 지정. 기본값은 None으로 모든 노드를 출력
    - feature_names 매개변수로 특성의 이름을 지정
    - filled 매개변수를 True로 지정하면 타깃값에 따라 노드 안에 색을 채운다.

확인문제

확인문제는 더 공부해서 풀기..!

05-2. 교차 검증과 그리드 서치

교차 검증

검증 세트를 떼어 내어 평가하는 과정을 여러 번 반복.
이 점수를 평균하여 최종 검증 점수를 얻는다

마무리

키워드

  • 검증세트
    하이퍼파라미터 튜닝을 위해 모델을 평가할 때, 테스트 세트를 사용하지 않기 위해 훈련 세트에서 다시 떼어 낸 데이터세트
  • 교차검증
    훈련세트를 여러 폴드로 나눈 다음 한 폴드가 검증 세트의 역할을 하고 나머지 폴드에서는 모델을 훈련한다.
    모든 폴드에 대해 검증 점수를 얻어 평균하는 방법
  • 그리드 서치
    하이퍼파라미터 탐색을 자동화해 주는 도구.
    탐색할 매개변수를 나열하면 교차검증을 수행하여 가장 좋은 검증 점수의 매개변수 조합을 선택.
    매개변수 조합으로 최종 모델을 훈련한다.
  • 랜덤 서치
    연속된 매개변수 값을 탐색할 때 유용.
    탐색할 값을 직접 나열하는 것이 아니고 탐색 값을 샘플링할 수 있는 확률 분포 객체를 전달.
    지정된 횟수만큼 샘플링하여 교차 검증을 수행하기 때문에 시스템 자원이 허락하는 만큼 탐색량 조절 가능

확인 문제

  1. 교차 검증
  2. 교차 검증을 '수행하는' 함수나 클래스
    1. cross_validate()
    2. GridSearchCV
    3. RandomizedSearchCV
  3. 나중에 해보기

0개의 댓글