강의

멘토링

커뮤니티

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

유재석님의 프로필 이미지
유재석

작성한 질문수

[개정판] 파이썬 머신러닝 완벽 가이드

min_samples_leaf 노드에 대하여 질문합니다.

작성

·

601

0

1.sample4 이상인 노드는 리프 클래스의 노드가 될 수 있으므로 규칙이 sample 4노드를 만들 수 있는 상황을 반영하여 변경됨.

이 뜻이 정확히 무엇인지 모르겠습니다.

2.sample이 3인 노드는 리프 노드의 클래스가 될 수 없는 이유는 min_samples_leaf = 4로 설정해서 만약 저 sample를 나눴을 때 leaf노드안에 최소 sample 데이터 수 4개를 만족하지 못해서 그런지 궁금합니다.

min_samples_split은  노드가 분할하기 위한 샘플 데이터수 그리고 min_samples_leaf는 leaf 노드가 되기 위한 최소한의 샘플 데이터 수이고 자식이 없는 노드라고 알 고 있습니다. 

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

1. Tree의 node들을 계속 분할했는데, 노드별로 남아있는 데이터 건수(sample)가 4개 이상이면 classification 값을 부여할 수 있는 리프 노드가 될 수 있다는 것입니다.

2. min_samples_split와 min_samples_leaf 는 거의 유사합니다.

다만 min_samples_split는 분할 할 수 있는 샘플수를 지정하는 것이고, min_samples_leaf를 분할해서 leaf가 될 수 있는 샘플수를 지정하는 것입니다. 즉 min_samples_split 기준에 맞아서 분할을 하더라도 min_samples_leaf 기준에 맞지 않아서 leaf를 만들수 없으면 최종 leaf 노드로 생성되지 못합니다. 따라서 branch 노드가 아닌 최종단 분할 시 min_samples_split 기준에 맞아도 min_samples_leaf 기준에 맞지 않느면 최종 leaf 노드로 분할 할 수 없습니다.

가령 min_samples_split = 6 개이고, min_samples_leaf가 4개인데, 6개의 sample로 Node에 개별 클래스 값이 각각 3개씩 들어가 있으면 min_samples_leaf의 최소 갯수가 4개이기 때문에 leaf node로 만들수 없어서 분할하지 못합니다.

감사합니다.

유재석님의 프로필 이미지
유재석

작성한 질문수

질문하기