로지스틱 회귀 분석에 가장 중요한 기능 이해


17

내 데이터에서 매우 정확한 로지스틱 회귀 분류기를 만들었습니다. 이제 왜 그것이 잘 작동하는지 더 잘 이해하고 싶습니다. 특히, 어떤 기능이 가장 큰 기여를하고 있는지 (어떤 기능이 가장 중요한지) 순위를 매기고, 이상적으로는 각 기능이 전체 모델 (또는이 맥락에서)의 정확성에 기여하는 정도를 수량화하고 싶습니다. 어떻게해야합니까?

내 첫 번째 생각은 계수를 기준으로 순위를 매기는 것이었지만 이것이 옳지 않다고 생각합니다. 똑같이 유용한 두 가지 특징이 있지만 첫 번째의 확산이 두 번째보다 10 배 큰 경우 첫 번째가 두 번째보다 낮은 계수를받을 것으로 기대합니다. 기능의 중요성을 평가하는보다 합리적인 방법이 있습니까?

기능의 작은 변화가 결과의 확률에 얼마나 영향을 미치는지 이해하려고 노력하지 않습니다. 오히려 분류자를 정확하게 만드는 관점에서 각 기능의 가치를 이해하려고합니다. 또한 필자의 목표는 기능 선택을 수행하거나 기능이 더 적은 모델을 구성하는 것이 아니라 학습 된 모델에 대해 "설명"을 제공하는 것이므로 분류기는 불투명 한 블랙 박스가 아닙니다.


랜덤 포레스트도 좋은 기술입니다. 포리스트의 상위 분할을 검사하여 어떤 기능이 예측에 가장 많이 기여하는지 직관을 얻을 수 있습니다.

답변:


14

가장 먼저 알아 두어야 할 것은 로지스틱 회귀를 분류 자로 사용하지 않는다는 것입니다. 가 이진 이라는 사실은 관측치를 실제로 분류하기 위해이 최대 우도 방법을 사용하는 것과 전혀 관련이 없습니다. 일단 그것을 지나면, 최대 가능성의 부산물 인 금 표준 정보 측정에 집중하십시오 : 가능성 비율 χ 2 통계. 각 예측 변수의 부분 기여도를 부분 χ 2로 나타내는 차트를 생성 할 수 있습니다Yχ2χ2통계량. 이 통계에는 최대 정보 / 전력이 있습니다. 부트 스트랩을 사용하여 일단 다른 예측 변수가 설명되면 각 예측 변수가 제공하는 예측 정보의 순위에 대한 신뢰 구간을 확보하여 "승자"및 "손실 자"를 선택하는 것이 얼마나 어려운지를 보여줄 수 있습니다. 예를 들자면 강의 노트 5.4에 있습니다. 유인물을 클릭 한 다음 유인물을 다시 클릭하십시오.

상관 관계가 높은 기능이있는 경우 "청크 테스트"를 수행하여 해당 기능을 결합 할 수 있습니다. 이를 수행하는 차트는 그림 15.11에 나와 있으며 여기서 size4 개의 개별 예측 변수의 결합 된 기여를 나타냅니다.


6

짧은 대답은이 질문에 대답 할 수있는 하나의 "올바른"방법이 없다는 것입니다.

문제를 가장 잘 검토하려면 Ulrike Groemping의 논문 (예 : 분산 분해를 기반으로 한 선형 회귀 분석에서 상대적 중요성 추정기)을 참조하십시오 . 그녀가 논의하는 옵션은 간단한 휴리스틱에서 정교한 CPU 집약적 다변량 솔루션에 이르기까지 다양합니다.

http://prof.beuth-hochschule.de/fileadmin/prof/groemp/downloads/amstat07mayp139.pdf

Groemping은 읽을 가치가있는 RELAIMPO라는 R 패키지에 자신의 접근 방식을 제안합니다.

https://cran.r-project.org/web/packages/relaimpo/relaimpo.pdf

내가 사용한 빠르고 더러운 휴리스틱 중 하나는 각 매개 변수와 관련된 카이 제곱 (F 값, t 통계)을 합한 다음 해당 값으로 개별 값을 다시 백분율하는 것입니다. 결과는 상대적으로 중요도가 높은 메트릭이됩니다.

즉, 나는 "표준 베타 계수"의 팬이 아니었다. 비록 그들이 직업에 의해 자주 추천되고 널리 사용 되기는한다. 여기에 문제가 있습니다. 표준화는 일 변량이며 모델 솔루션 외부입니다. 다시 말해,이 접근법은 모델 결과의 조건 적 특성을 반영하지 않습니다.


답변과 링크에 감사드립니다! "모델 솔루션의 외부"와 "모델 결과의 조건 적 특성"의 의미를 자세히 설명하거나 이해하도록 도와 줄 수 있습니까? (저는 통계 전문가가 아닙니다.)
DW

1
걱정 마. 모형에서 모형이 다른 요인에 대해 "통제"또는 조건을 나타내는 방법에 대한 개념은 많은 통계학자가 실제로 동의 할 수있는 것 중 하나 일 수 있습니다. 이 사이트에서 많은 논평을 보았던 주제이기도합니다. 다음은 그러한 스레드 중 하나에 대한 링크입니다. stats.stackexchange.com/questions/17336/… 가장 좋은 의견 중 하나는 @whuber가 말한 것입니다. ) 다른 모든 변수에 대한 변수의 기여 / 영향 / 효과 / 연관
Mike Hunter

감사! 나는 어떤 요소를 "제어하는"개념에 익숙하다. 이것이 "모델 솔루션의 외부"또는 "모델 결과의 조건 적 특성"의 의미와 어떻게 관련되거나 이해하는 데 도움이됩니까?
DW

"표준화 된 베타"를 만들기 위해 예측 변수를 표준화하는 것은 일반적으로 모델이 작성되기 전에 수행됩니까? 따라서 해당 변환은 모델 솔루션의 "외부"입니다. 지금까지 나와 함께?
마이크 헌터

확인. "외부"라는 말의 의미를 이해할 수 있습니다. 설명해 주셔서 감사합니다. 이것이 왜 문제이며 "조건부 속성 ..."의 의미를 설명 할 수 있습니까? (아마도이 ​​두 질문은 같은 답을 가진 같은 질문 일 것입니다.) 나는 당신이 쓴 것을 이해하고 싶어합니다.
DW

3

이 작업을 수행하는 상당히 강력한 방법은 N이 피처 수인 모델 N을 피팅하는 것입니다. 매번 기능의 N-1을 사용하고 하나의 기능을 생략하십시오. 그런 다음 선호하는 유효성 검사 메트릭을 사용하여 각 기능의 포함 또는 제외가 모델의 성능에 미치는 영향을 측정 할 수 있습니다. 가지고있는 기능의 수에 따라 계산 비용이 많이들 수 있습니다.


4
상관 된 기능을 제대로 처리하지 못합니다. 두 기능의 상관 관계가 높은 상황을 쉽게 엔지니어링 할 수 있으므로 두 기능 중 하나를 제거하면 예측력에 최소한의 영향을 주지만 두 기능을 모두 제거 하면 심각하게 영향을 미칩니다. 기본적으로 두 예측 변수는 거의 동일하지만 중요한 정보를 가지고 있습니다.
Matthew Drury

2
나는 동의한다. 이것은 계수를 검사 할 때도 위험합니다.
Daniel Johnson

1
사실입니다. 사실입니다.
Matthew Drury

2

추정 된 계수의 크기 만 바라 보는 것이 정확합니다. |β제이^|언급 된 이유로 그다지 의미가 없습니다. 그러나 간단한 조정은 계수 추정값에 예측 변수의 추정 표준 편차를 곱하는 것입니다.|β제이^|σ^제이이것을 중요한 척도로 사용하십시오. 이것을 표준화 된 베타 계수라고도하며 로지스틱 회귀 분석에서는 표준 편차 변화로 인한 예상 로그 확률의 변화를 나타냅니다.엑스제이. 이 문제의 한 가지 문제는 더 이상 숫자 예측자를 다루지 않을 때 오류가 발생한다는 것입니다.

마지막 요점에 관해서는 물론 변수가 실제로 "진정한"로그 확률에 큰 영향을 미치지 않으면 서 추정 된 로그 확률에 많은 영향을 줄 수 있지만, 이것이 우리가 너무 우려 할 필요는 없다고 생각합니다. 추정치를 산출 한 절차에 대한 확신을 가지십시오.


0

계수를 관련성 척도로 사용해서는 안되는 이유에 대해서는 맞습니다. 그러나 표준 오차로 계수를 나누면 절대적으로 가능합니다! R로 모델을 추정했다면 이미 완료된 것입니다! 모델에서 가장 중요한 기능을 제거하고 작동 방식을 확인할 수도 있습니다.

변수의 다양한 변화가 결과를 어떻게 변화시키는 지 연구하는 휴리스틱 접근법은 다른 입력을 시도하고 추정 된 확률을 연구합니다. 그러나 모델이 매우 단순하기 때문에 나는 그것에 반대 할 것입니다.

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