의사결정나무(Decision Tree)를 공부하다 보면 가장 먼저 만나는 개념이 지니지수(Gini Index) 입니다. 그런데 같은 이름의 "지니계수"가 경제학 뉴스에서 소득 불평등을 설명할 때도 등장합니다. 두 개념이 정말 같은 것일까요? 직접 손으로 계산해보고, 자주 헷갈리는 부분까지 한 번에 정리해보겠습니다. 지니지수란 무엇인가 지니지수는 한 노드(또는 그룹) 안에 있는 데이터가 얼마나 여러 클래스로 섞여 있는지, 즉 불순도(impurity) 를 나타내는 값입니다. 의사결정나무가 데이터를 어떤 기준으로 나눌지 결정할 때, 분할 후 자식 노드들의 지니지수가 최대한 낮아지는 방향을 선택합니다. 공식은 다음과 같습니다. Gini = 1 - Σ(p_i)² (i = 1부터 k까지, k는 클래스 개수, p_i는 클래스 i의 비율) 값이 0에 가까울수록 한 클래스로 순수하게 모여 있다는 뜻이고, 값이 커질수록 여러 클래스가 고르게 섞여 있다는 뜻입니다. 직접 계산해보기: 두 데이터셋 비교 아래 두 데이터셋으로 직접 계산해보면 개념이 훨씬 명확해집니다. 데이터셋 1: A B C A C C A D (총 8개) A=3개, B=1개, C=3개, D=1개로 구성되어 있습니다. 1 - (3/8)² - (1/8)² - (3/8)² - (1/8)² = 1 - 0.140625 - 0.015625 - 0.140625 - 0.015625 = 0.6875 (약 0.69) 데이터셋 2: A B B A B B A A (총 8개) A=4개, B=4개로 구성되어 있습니다. 1 - (4/8)² - (4/8)² = 1 - 0.25 - 0.25 = 0.5 두 값을 비교하면 데이터셋 2의 지니지수가 더 낮습니다. 하지만 여기서 주의할 점이 있습니다. 이 비교는 절대적인 "순수함의 정도"를 직접 비교하는 것이 아니라, 클래스 개수 자체가 다른 두 상황을 비교하고 있다는 사실입니다. 가장 많이 헷갈리는 부분: 지니지수는...
바이오·제약 연구자의 실험대 위 생각들을 대나무 마디처럼 하나씩 쌓아 기록합니다. 프로토콜, 밸리데이션, 가끔은 러닝화와 피아노 이야기까지.