Python/머신러닝

머신러닝 디시전트리 모델의 특징

강떡볶 2022. 5. 3. 17:05
디시전트리의 개념

 

(출처 : https://bkshin.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-4-%EA%B2%B0%EC%A0%95-%ED%8A%B8%EB%A6%ACDecision-Tree)

  • 데이터에 있는 규칙을 학습을 통해 자동으로 찾아내 트리(Tree) 기반의 분류 규칙을 만드는 것(if/else) → 스무고개
  • 데이터의 어떤 기준을 바탕으로 규칙을 만들어야 가장 효율적인 분류가 될 것인지가 알고리즘의 성능을 크게 좌우
  • 분류와 회귀 모두 사용 가능

 

  • 데이터 세트에 피처가 있고 이러한 피처가 결합해 규칙 조건을 만들 때마다 규칙 노드 생성

 

  • 많은 규칙이 있다는 것은 곧 분류를 결정하는 방식이 복잡해진다는 것이며 과적합으로 이어지기 쉬움 → 트리의 깊이(depth)가 깊어질수록 결정 트리의 예측 성능이 저하될 가능성이 커짐
  • 가능한 한 적은 결정 노드로 높은 예측 정확도를 가지려면 데이터를 분류할 때 최대한 많은 데이터 세트가 해당 분류에 속할 수 있도록 결정 노드의 규칙이 정해져야 함

⇒ 이를 위해서는 최대한 균일한 데이터 세트를 구성하도록 분할하는 게 좋음

 

 

 

균일한 데이터 세트부터 순서대로 나열한다면?

  • 정보의 균일도를 측정하는 대표적인 방법: 엔트로피를 이용한 정보이득지수와 지니계수
  • 엔트로피 : 주어진 데이터 집합의 혼잡도를 의미. 서로 다른 값이 섞여 있으면 엔트로피가 높고, 같은 값이 섞여 있으면 엔트로피가 낮음.
  • 정보이득지수 : 1 - 엔트로피 지수
  • 지니계수 : 경제학의 불평등 지수에서 따왔으며 0이 가장 평등하고 1로 갈수록 불평등함. 머신러닝에 적용될 때는 지니계수가 낮을 수록 데이터 균일도가 낮은 것으로 해석해 지니 계수가 낮은 속성을 기준으로 분할
순도(homogeneity)를 높이고 불순도(불확실성, uncertainty) 감소

 

 

 

엔트로피

  • A 영역에 속한 모든 레코드가 동일한 범주에 속할 경우 엔트로피는 0,
  • 반대로 범주가 둘뿐이고 해당 개체의 수가 동일하게 반반씩 섞여 있을 경우 엔트로피는 1

 

 

디시전트리 모델의 특징

 

  •  장점
    • 룰 명확, 시각화 표현 가능
    • 사전 가공(정규화 등) 영향도 크지 X
    • 균일도 기반, 쉽고 직관적

 

  • 단점
    • 균일도가 다양할수록 트리 복잡
    • 복잡한 모델은 test 세트에 유연하게 대처 X
    • 과적합 문제