1. 백만개의 샘플을 가진 훈련세트에서 훈련시킨 결정트리의 최대 깊이는?
아주 이상적인 결정트리의 경우 log_2(m)만큼의 깊이가 생성되어 log_2(10^6) ~ 20 이지만 보통 더 늘어난다.
2. 한 노드의 지니 불순도가 보통 그 부모 노드보다 어떻게 될지?
한 노드의 지니 불순도는 일반적으로 부모노드보다 낮다.
CART훈련 알고리즘에서는 노드가 내려갈수록 불순도를 최소화하는 방향으로 훈련하기 때문에다.
그런데 불순도의 평균치를 이용하기 때문에 불순도가 큰 노드가 생길 수 있다.
3. 결정트리가 과대적합 되었을 때, max_depth를 줄이는지
max_depth는 모델의 자유도라고 볼수있기 때문에, 줄이는 것이 좋다.
4. 결정트리가 훈련세트에 과소적합되었다면, 입력 특성의 스케일을 조정해야하나
결정트리는 훈련세트가 원점에 맞춰져있든 안맞춰져 있든, 상관하지 않는게 장점이다.
결정경계는 각 특성을 개별적으로 처리하여 전처리가 필요하지않다.
5. 백만개의 세트에 결정트리가 1시간이 걸렸다면, 천만개에서는 얼마나 걸릴까?
결정트리의 학습복잡도는 O(n m log(m))이 걸린다.
각 노드에서 모든 샘플이 모든 특성을 비교하는 시간이다.
따라서 샘플수 m 이 10 배증가하면, 10 log(10) 배만큼 시간이 든다.
7. moons 데이터셋에 결정 트리를 훈련시키고 튜닝하라
8. 랜덤 포레스트를 생성하라
https://github.com/kimhwijin/HandsOnMachineLearing/blob/main/HOML_Exercise_6.ipynb
GitHub - kimhwijin/HandsOnMachineLearing
Contribute to kimhwijin/HandsOnMachineLearing development by creating an account on GitHub.
github.com