AI/머신러닝 + 딥러닝
결정 트리
빈 칸
2024. 7. 24. 00:45

예시

준비

wine.info() - 데이터 프레임의 요약 정보 출력
wine.describe() - 데이터프레임의 기초 통계 요약 정보를 출력
로지스틱 회귀 적용

- 모델 생성: LogisticRegression 클래스를 사용하여 로지스틱 회귀 모델을 생성
- 모델 학습: fit 메소드를 사용하여 모델을 학습
- 모델 평가: 훈련 데이터와 테스트 데이터에 대한 정확도를 평가
- 계수와 절편: 모델의 회귀 계수와 절편을 출력
결정 트리

- 모델 생성: DecisionTreeClassifier 클래스를 사용하여 결정 트리 모델을 생성
- 모델 학습: fit 메소드를 사용하여 모델을 학습
- 모델 평가: 훈련 데이터와 테스트 데이터에 대한 정확도를 평가
- 모델 시각화: plot_tree를 사용하여 결정 트리의 구조를 시각화
불순도 성과 동일 시 랜덤하게 선택
결정 트리 분석

- 결정 트리 시각화: plot_tree를 사용하여 결정 트리의 구조를 시각화
- 특성 중요도 파악: 트리의 각 노드에서 어떤 특성으로 분할되는지 확인할 수 있음
- 노드 정보: 각 노드에는 불순도(Gini 계수), 샘플 수, 클래스별 샘플 수가 표시되어 트리 구조 이해에 용이함
지니 불순도

- 지니 불순도: 노드의 불순도를 측정하는 지표. 값이 0에 가까울수록 순수한 노드
- 계산 방법: 각 클래스의 샘플 비율을 제곱하여 더한 후 1에서 뺌
- 지니 불순도 감소: 부모 노드의 지니 불순도에서 자식 노드들의 지니 불순도를 빼서 분할의 효과를 평가
과대적합을 줄이는 가지치기

- 가지치기: 트리의 최대 깊이를 제한하여 과적합을 방지
- 모델 평가: 제한된 깊이로 학습한 모델의 훈련 세트와 테스트 세트 정확도를 출력
- 모델 시각화: plot_tree를 사용하여 결정 트리의 구조를 시각화
짙은 색일수록 양성 클래스 비율 높고, 옅을수록 비율 낮음
스케일 조정하지 않은 특성 그대로 사용 가능 = 전처리 필요X
스케일 조정 X 특성

- 모델 생성 및 학습: 스케일 조정 없이 원래의 특성을 사용하여 결정 트리 모델을 생성하고 학습
- 모델 평가: 훈련 데이터와 테스트 데이터에 대한 모델의 정확도를 평가
- 모델 시각화: plot_tree를 사용하여 결정 트리의 구조를 시각화
- 특성 중요도: 각 특성의 중요도를 출력하여 모델에서 중요한 특성을 파악