나는 의사 결정 트리에 대해 배우고 있는데 지금까지이 트리와 그 뒤에 숨겨진 수학을 이해 한 것 같습니다. 게인 비율이라는 점을 제외하고는 꽤 좋습니다.

내가 이해하는 바와 같이 게인 비율은 가능한 많은 값을 취할 수있는 기능을 처벌하기 위해 구현됩니다.

특성에 가능한 많은 값이있는 경우 해당 특성을 분할하면 단일 클래스 만 가리키는 값이있을 수 있지만 단순히 1 개 또는 2 개의 데이터 만 있기 때문에 그럴듯 해집니다. 어쨌든 해당 기능에 대한 값을 가진 포인트.

다시 말해, 우리가 그 특징을 분할하기 위해 낮은 엔트로피를 얻는 유일한 이유는 특징이 많은 값을 가질 수 있고, 따라서 그 많은 값이 특별히 단일 레이블을 가리킬 수 있기 때문입니다. . 그래서 우리의 의사 결정 트리 알고리즘은 “ID #”와 같은 것으로 분할되어 엄청난 정보 이득을 얻었음을 잘못 계산합니다.

하지만 “ID #”는 처음부터 분리해서는 안되는 기능이기 때문에 문제가되는 것 같습니다. 내 말은, 우리가 가능한 많은 기능을 수행 한 다른 기능이 있다면 그러나 이러한 각 값은 실제로 해당 데이터 포인트에 대한 일부 레이블을 의미합니다. 그러면 “게인 비율을 적용하지 않으면 실제로 많은 정보 이득으로 매우 좋은 분할을 벌이는 방식으로 의사 결정 트리를 실제로 엉망으로 만들 수 있습니다.”

학습 데이터를 알고리즘에 제공하기 전에 라벨링과 아무 관련이없는 기능을 식별하는 것이 더 낫지 않습니까?

IDK, 저는 그렇게하지 않습니다. 게인 비율이 정말 유용한 이유를 확인하세요 …

답변

마스터를 할 때도 똑같은 의심이있었습니다. “s Degree. 우선,”ID “만큼 임의의 것을 포함하지 않습니다. 여기에서 데이터 전처리가 시작됩니다. 성별, 연령대, 등급, 어쩌구 저쩌구와 같은 변수를 기반으로 사용자와 영화 장르 선호도를 포함하는 데이터 세트를 가져옵니다. 정보 획득의 도움으로 “성별 “(정보 이득이 가장 높다고 가정) 이제 변수”연령 그룹 “과”평점 “이 똑같이 중요 할 수 있으며 이득 비율의 도움으로 변수에 페널티를 적용하여보다 뚜렷한 값을 결정하는 데 도움이됩니다. 다음 단계에서 분할합니다.

댓글

  • 좋아요, 멋지군요! 따라서 우리는 가능한 두 가지 기능으로 분할 할 때만 게인 비율을 사용합니다. ! 테스트 데이터가 이전에 본 값을 가질 가능성이 더 높은 것을 선택하기 위해서입니까? 그게 제가 ID 예제에서 얻은 분위기이기 때문입니다. 그게 나쁜 분할 인 이유는 걸릴 확률이 높았습니다. 다른 값 (이 경우 다른 사람은 동일한 ID를 갖지 않습니다).
  • 이렇게하면 훨씬 더 의미가 있습니다. . 내가 읽은 모든 설명은 ' ID를 사용하며, 처음에 데이터 세트에 ID가있는 이유를 계속 생각하게합니다. !!!! 고마워 대니! 귀하의 게시물을 ' 좋지만 ' 아직 평판이 충분하지 않습니다.

답변

정보 획득은 선택 속성을 선택하는 데 도움이되는 휴리스틱 스 중 하나입니다.

알다시피 의사 결정 트리는 구성된 상단 -다운 재귀 분할 및 정복 방식. 예제는 선택한 속성을 기반으로 반복적으로 분할됩니다.

ID3 알고리즘에서는 정보 이득이 가장 높은 속성을 선택합니다.

$ p_i $ $ D $ 의 임의 튜플은 $ C_i $ 클래스에 속합니다. 따라서 $ p_i = | C_ {i, d} | / | D | $ $ D $ $$ Info (D) =-\ sum_ {i = 1} ^ {m} {p_i * \ log (p_i)} $$

D를 분류하는 데 필요한 정보 (A를 사용하여 D를 v로 분할 한 후) : $$ Info_A (D) =-\ sum_ {j = 1} ^ {v} {D_j / D * Info_j (D)} $$

속성 A에서 분기하여 얻은 정보

$$ Gain (A) = Info (D)-Info_A (D) $$

C4.5 알고리즘에서는 정보 차이를 $ SplitInfo (A) $

$$ Gain (A) = (Info (D)-Info_A (D)) / SplitInfo (A) $$

여기에 이미지 설명 입력

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다