XGboost-모델 별 선택


10

XGboost 를 사용하여 보험 청구에 대한 2 클래스 대상 변수를 예측하고 있습니다. 다른 데이터 세트에서 실행되는 모델 (교차 유효성 검사, 하이퍼 매개 변수 조정 등의 교육)이 있습니다.

내 질문은 :

주어진 주장 이 왜 한 클래스에 영향을 미쳤 는지 알 수있는 방법이 있습니까 ( 예 : 모델이 선택한 선택을 설명하는 기능)?

그 목적은 기계가 선택한 것을 제 3 자에게 정당화 할 수 있도록하는 것입니다.

답변 주셔서 감사합니다.

답변:


7

나는 당신이 Shap 에 갈 것을 제안합니다 . 모델 행동을 설명하기 위해 Shapley 값 (게임 이론에서 빌린 개념)을 사용하고 단일 예측을 설명 할 수 있습니다.

그래픽 인터페이스는 아래 보이는 것과 같은 Force Plots를 사용합니다. 여기에 이미지 설명을 입력하십시오

빨간색 막대는 예측을 양수 값으로 이끌고 파란색은 다른 값으로 이끄는 기능으로 구성됩니다.

귀하의 경우 (분류 자) 굵게 표시된 숫자는 sigmoid 함수 직전의 숫자가되어 0과 1 사이의 출력 값을 제한합니다 (한 클래스 또는 다른 클래스). 따라서 어떤 경우에는 1보다 크거나 부정적인 경우에도 두려워하지 마십시오.

세그먼트의 크기는 해당 지형지 물이 예측에 기여하는 정도를 나타내며 세그먼트 아래에 지형지 물의 이름 (예 : LSTAT)과 실제 값 (예 : 4.98)이 표시됩니다. 따라서이 경우 LSTAT는 데이터 집합의 해당 요소에 대한 예측을 24.41 (굵게 표시된 숫자) 값으로 이끄는 평균 특성입니다.

즐겨!


9

ELI5 라이브러리를 사용하여 XGBoost 모델의 개별 예측에 대한 기능 기여를 설명 할 수 있습니다 .

아래에서 복사 한 문서의 예측 설명을 참조하십시오 .

분류 기가 어떻게 작동하는지 더 잘 이해하려면 다음을 사용하여 개별 예측을 살펴 보겠습니다 eli5.show_prediction().

from eli5 import show_prediction
show_prediction(clf, valid_xs[1], vec=vec, show_feature_values=True)

여기에 이미지 설명을 입력하십시오


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.