강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

임재홍님의 프로필 이미지
임재홍

작성한 질문수

빅분기 작업형 2번 모델

작성

·

68

0

여유 없으면 랜덤포레스트 모델 하나만 해도 크게 지장없는 걸로 알고 있습니다.

 

근데 모델 구성 중에 max_depth 이나 random_state에 따라 점수가 차이가 날 수 있는 건 당연한데,

이 차이가 많이 날 수 있나요...?

 

저번 시험에서 max_depth 설정한 사람과 안한 사람 차이 점수가 10점 이상 난 걸로 알고 있어서...ㅠ

그리고 예를들어 모델 검증으로 max_depth=7이 max_depth=5가 더 좋은 평가지표가 나왔는데,

실제 test랑 비교했을 때 max_depth=5가 더 좋을 수 있는 것 아닌가요...?

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

님의 질문에 답변드리면, 머신러닝 모델, 특히 결정 트리 기반 모델인 랜덤포레스트에서 max_depthrandom_state와 같은 하이퍼파라미터의 설정은 모델의 성능에 큰 영향을 줄 수 있습니다.

max_depth는 결정 트리의 깊이를 제한하는 하이퍼파라미터로, 이 값을 조절함으로써 과적합이나 과소적합을 방지할 수 있습니다. 너무 낮은 max_depth는 모델이 데이터의 복잡성을 충분히 학습하지 못하는 과소적합을 일으킬 수 있으며, 너무 높은 max_depth는 불필요한 패턴까지 학습하여 과적합을 유발할 수 있습니다. 따라서, max_depth 설정에 따라 모델의 성능 차이가 크게 나탈 수 있습니다.

실제로 max_depth 값을 변화시켜가며 교차 검증을 수행하고, 검증 세트에서의 성능을 비교하는 것은 모델을 최적화하는 과정에서 매우 중요합니다. 학습 데이터에 대한 모델의 성능이 검증 데이터에서 잘 반영되는지 확인하는 것이 중요하며, 때로는 검증 데이터에서 좋은 성능을 보인 설정이 테스트 데이터에서도 비슷하게 좋은 성능을 보이는 경우가 많습니다. 하지만, 검즈 데이터와 테스트 데이터 간의 분포 차이, 또는 모델이 과적합된 경우에는 검증 데이터에서 좋은 성능을 보였던 하이퍼파라미터 설정이 실제 테스트 데이터에서는 예상과 다른 결과를 보일 수도 있습니다.

결과적으로, max_depth와 같은 하이퍼파라미터를 튜닝하며 여러 실험을 해보고, 그 결과를 꼼꼼히 분석하는 것이 중요합니다. 이 과정에서 교차 검증과 같은 기술을 사용하여 모델의 일반화 능력을 평가해보는 것이 좋습니다.

임재홍님의 프로필 이미지
임재홍

작성한 질문수

질문하기