본문 바로가기

혼공

혼공머신 4차시 _ 트리 알고리즘

Ch.05-1 결정 트리

결정 트리

 - 예 / 아니오에 대한 질문을 이어나가면서 정답을 찾아 학습하는 알고리즘

 - 비교적 예측 과정을 이해하기 쉽고 성능 뛰어남

불순도 - 결정 트리가 최적의 질문을 찾기 위한 기준 ( 사이킷런 : 지니 불순도와 엔트로피 불순도 제공 )

정보 이득 - 부모 노드와 자식 노드의 불순도 차이 ( 결정 트리 알고리즘 : 정보이득 최대화되도록 학습 )

가지치기

 - 결정 트리( 제한 없이 성장하면 훈련 세트에 과대적합되기 쉬움 )의 성장을 제한하는 방법 ( 사이킷런의 결정 트리 알고리즘 : 여러 가지 가지치기 매개변수를 제공 )

특성 중요도 - 결정 트리에 사용된 특성이 불순도를 감소하는데 기여한 정도를 나타내는 값 ( 결정트리 : 특성 중요도 계산 가능 )

 

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

검증 세트 - 하이퍼파라미터 튜닝을 위해 모델을 평가할 때, 테스트 세트를 사용하지 않기 위해 훈련 세트에서 다시 떼어 낸 데이터 세트

교차 검증 - 훈련 세트를 여러 폴드로 나눈 다음 한 폴드가 검증 세트의 역할을 하고 나머지 폴드에서는 모델을 훈련하여, 모든 폴드에 대해 검증 점수를 얻어 평균하는 방법

그리드 서치 - 하이퍼파라미터 탐색을 자동화해 주는 도구 ( 탐색할 매개변수를 나열 -> 교차 검증을 수행하여 가장 좋은 검증 점수의 매개변수 조합을 선택 -> 선택한 매개변수 조합으로 최종 모델을 훈련 )

랜덤 서치

 - 연속된 매개변수 값을 탐색할 때 유용 ( 탐색할 값을 직접 나열하는 것이 아니고 탐색 값을 샘플링할 수 있는 확률 분포 객체를 전달 )

 - 지정된 횟수만큼 샘플링하여 교차 검증을 수행하기 때문에 시스템 자원이 허락하는 만큼 탐색량 조절 가능

 

Ch.05-3 트리의 앙상블

앙상블 학습 - 더 좋은 예측 결과를 만들기 위해 어러 개의 모델을 훈련하는 머신러닝 알고리즘

랜덤 포레스트 - 대표적인 결정 트리 기반의 앙상블 학습 방법 ( 부트스트랩 샘플을 사용하고 랜덤 하게 일부 특성을 선택하여 트리를 만듦 )

엑스트라 트리 - 랜덤 포레스트와 비슷하게 결정 트리를 사용하여 앙상블 모델을 만들지만 부트스트랩 샘플을 사용하지 않고, 랜덤 하게 노드를 분할해 과대적합을 감소

그레이디언트 부스팅

 - 랜덤 포레스트나 엑스트라 트리와 달리 결정 트리를 연속적으로 추가하여 손실 함수를 최소화하는 앙상블 방법

 - 훈련속도가 조금 느리지만 더 좋은 성능을 기대할 수 있음

히스토그램 기반 그레이디언트 부스팅 - 그레이디언트 부스팅의 속도를 개선하여 안정적인 결과와 높은 성능으로 매우 인기 많음