개념

지니 불순도는 데이터셋 안에 서로 다른 클래스가 얼마나 섞여 있는지를 나타내는 값이다. 의사결정트리에서 어떤 feature로 데이터를 나눌지 결정할 때 사용된다.

직관

한 노드의 모든 데이터가 같은 클래스라면 불순도는 0이다. 두 클래스가 반반 섞여 있다면 불순도가 높다. 즉 지니 불순도는 “얼마나 깔끔하게 분리되었는가”를 보는 기준이다.

분할 기준

어떤 feature로 데이터를 나눈 뒤, 각 부분집합의 지니 불순도를 계산하고 표본 수로 가중 평균한다. 이 값이 가장 낮은 feature와 분할 지점을 선택한다.

연속형 feature

소득이나 나이처럼 연속적인 feature는 데이터를 정렬한 뒤, 클래스가 바뀌는 지점 사이의 평균을 후보 분할점으로 볼 수 있다. 각 후보의 지니 불순도를 계산해 가장 작은 값을 선택한다.