대상 클래스 변수를 전혀 사용하지 않았습니다. 다른 모든 불순물 기능과 같은 지니 불순물은 분할 후 출력의 불순물을 측정합니다. 당신이 한 일은 샘플 크기 만 사용하여 무언가를 측정하는 것입니다.
귀하의 경우에 대한 공식을 도출하려고합니다.
단순화를 위해 바이너리 분류 기가 있다고 가정하십시오. 와 나타 테스트 속성을 가진 C 클래스 속성이있는 C + , C -ACc+,c− 값.
분할 전 초기 지니 지수 는
여기서, P ( +를 ) 이 데이터 포인트의 비율 인 C + 클래스 변수의 값.
I(A)=1−P(A+)2−P(A−)2
P(A+)c+
이제 왼쪽 노드의 불순물은
I ( A r ) = 1입니다.
I(Al)=1−P(Al+)2−P(Al−)2
여기서,
P ( 리터 + )I(Ar)=1−P(Ar+)2−P(Ar−)2
P(Al+)클래스 변수 등에서
c + 값을 갖는
왼쪽 부분 집합의 데이터 포인트 비율입니다 .
Ac+
이제 GiniGain의 최종 공식은 다음과 같습니다.
여기서 P L의 E F t이 경우의 비율이다 왼쪽 부분 집합의 경우 # | 알 l |
G i n i G a i n ( A ) = I( A ) − pL 개의 전자 F티나는( A l ) − pr 나는 g시간 t나는( A r )
피L 개의 전자 F티(왼쪽 서브 세트에있는 인스턴스 수를
A의 총 인스턴스 수로 나눈 값입니다.
# | 알 l |# | 알 l | + # | R |ㅏ
내 표기법이 향상 될 수 있다고 생각합니다. 나중에 더 많은 시간을 보내면 나중에 볼 것입니다.
결론
많은 수의 데이터 포인트 만 사용하는 것만으로는 충분하지 않으며, 불순물은 한 기능 (테스트 기능)이 다른 기능 (클래스 기능)의 분포를 얼마나 잘 재현 할 수 있는지를 의미합니다. 테스트 피처 분포는 사용한 숫자 (왼쪽, 오른쪽)를 생성하지만 수식에 클래스 피처의 분포는 사용되지 않습니다.
나중에 편집-감소 이유를 제시
이제 자식 노드의 gini 인덱스가 부모 노드보다 작은 이유를 입증하는 부분을 놓친 것을 알았습니다. 나는 완전한 증명이나 확인 된 것이 없지만 유효한 증거라고 생각합니다. 주제와 관련된 다른 중간 항목에 대해서는 기술 노트 : 분할 기준의 일부 특성-Leo Breiman을 확인할 수 있습니다. 이제 내 증거를 따릅니다.
우리가 이진 경우에 있다고 가정하고 노드의 모든 값을 한 쌍으로 완전히 설명 할 수 있다고 가정하십시오. ( a , b )ㅏ비( a , b )
최상의 분할을 찾기 위해 테스트 기능에 따라 인스턴스를 정렬하고 가능한 모든 이진 분할을 시도합니다. 주어진 기능에 따라 정렬 된 인스턴스는 실제로 인스턴스의 순열입니다. 여기서 클래스는 첫 번째 클래스 또는 두 번째 클래스의 인스턴스로 시작합니다. 일반성을 잃지 않고 우리는 그것이 첫 번째 클래스의 인스턴스로 시작한다고 가정 할 것입니다 (이 경우가 아니라면 동일한 계산으로 미러 증명이 있습니다).
( 1 , 0 )( a − 1 , b )h(left)=1−(1/1)2−(0/1)2=0. 왼쪽에는 gini 인덱스 값이 작습니다. 올바른 노드는 어떻습니까?
h(parent)=1−(aa+b)2−(ba+b)2
h(right)=1−(a−1(a−1)+b)2−(b(a−1)+b)2
a0
이제 증명의 마지막 단계는 우리가 가진 데이터에 의해 지시 된 가능한 모든 분리 점을 고려하면서 가장 작은 집계 된 gini 지수를 갖는 것을 유지합니다. 즉, 우리가 선택한 최적이 내가 작게 한 사소한 것이 더 작습니다. 결국 gini 지수는 감소 할 것입니다.
마지막 결론으로, 다양한 분할이 상위 노드보다 큰 값을 줄 수 있다고해도, 우리가 선택한 노드는 그 중에서 가장 작고 또한 상위 gini 지수 값보다 작습니다.
도움이 되길 바랍니다.