결과 변수가 5 %-95 %로 분할 될 때 로지스틱 회귀가 편향됩니까?


10

유틸리티 클라이언트에 대한 로지스틱 회귀를 사용하여 성향 모델을 작성 중입니다. 내 관심사는 전체 샘플 중 내 '나쁜'계정이 5 %에 ​​불과하고 나머지는 모두 양호하다는 것입니다. 나는 '나쁜'을 예측하고 있습니다.

  • 결과가 편향됩니까?
  • 좋은 모델을 만들기위한 최적의 '나쁜 대 좋은 비율'은 무엇입니까?

나는 경험에 따라 항상 50 %의 상품과 50 %의 불량을 갖는 것이 더 좋다고 생각합니다. 모델 외부에서 샘플을 바이어스해서는 안됩니다.

답변:


7

나는 의견에서 다른 답변에 동의하지 않았으므로 나에게주는 것은 공평합니다. 하자 응답 (좋은 / 나쁜 계정), 그리고 X는 공변량합니다.X와이엑스

로지스틱 회귀 분석의 경우 모델은 다음과 같습니다.

로그((와이=1|엑스=엑스)(와이=0|엑스=엑스))=α+나는=1케이엑스나는β나는

데이터 수집 방법에 대해 생각해보십시오.

  • 가상의 "인구"에서 무작위로 관측 값을 선택할 수 있습니다
  • 기준으로 데이터를 선택하고 값이 어떤지 확인할 수 있습니다.엑스와이

의 분포 만 모델링하기 때문에 위의 모형에는 둘 다 적합합니다 . 이것들을 전향 적 연구 라고합니다 .와이|엑스

또는

  • 기준으로 관측 값을 선택하고 (각각 100 개) 의 상대적 유병률을 볼 수 있습니다 (즉, 대해 계층화하고 있음 ). 이를 소급 또는 사례 관리 연구 라고합니다 .X Y와이엑스와이

( 와 특정 변수를 기반으로 데이터를 선택할 수도 있습니다 .이 사례는 계층화 된 사례 관리 연구이며 다루기가 훨씬 더 복잡하므로 여기서 다루지 않겠습니다).와이엑스

역학 ( Prentice and Pyke (1979) 참조 )에서 사례 제어 연구의 경우 대한 최대 가능성 추정값은 로지스틱 회귀 분석, 즉 소급 데이터에 대한 전향 모델을 사용하여 찾을 수 있다는 좋은 결과가 있습니다.β

그렇다면 이것이 문제와 어떻게 관련이 있습니까?

글쎄, 당신은 더 많은 데이터를 수집 할 수 있다면, 당신은 단지 나쁜 계정을보고 아직 추정하기 위해 로지스틱 회귀 분석을 사용할 수 있다는 것을 의미한다 의 (하지만 당신은 조정해야 과잉 -에 대한 계정에 대표). 각 추가 계정에 대해 1 달러의 비용이 들었다면 모든 계정을 살펴 보는 것보다 비용 효과적 일 수 있습니다. αβ나는α

그러나 다른 한편으로, 가능한 모든 데이터를 이미 가지고 있다면 계층화 할 필요가 없습니다. 데이터를 버리고 (더 나쁜 추정값을 제공함) 추정하려고하는 문제가 남습니다 .α


소수 클래스를 적절하게 표현하기에 충분한 데이터가있는 경우 (일반적으로 클래스 불균형이 큰 문제-문제는 불균형 자체이지만 소수의 샘플이 충분하지 않은 경우에만 해당됨) 수업). 이 경우 포지티브 및 네거티브 클래스의 교차 검증 기반 차등 가중치, 알파 조정 또는 곱하기 조정 (모든 동등한 IIRC)은 소수 클래스를 향상시키는 것이 좋습니다. 데이터를 계층화하는 것은 싸고 유쾌한 것입니다.
Dikran Marsupial

@Dikran :이 경우 어떻게 이것이 사실이 아닌지 알지 못합니다. 소수 계층을 대표 할 필요는 없으며 대다수와의 상대적인 차이를 나타내면됩니다. 그에 대한 충분한 데이터가 없다면 대다수의 관측을 버리는 것이 도움이되지 않습니다.
Simon Byrne

@Simon, 알파 조정, 패턴 가중치 조정 또는 모델의 출력 조정을 원하지 않는 한 층화가 좋은 생각이 아니라는 데 동의했습니다. 내가 말했듯이 계급 불균형의 문제는 그 자체가 불균형이 아니라 소수 계급이 "대다수에 대한 상대적인 차이"를 적절하게 정의하기에는 데이터가 충분하지 않다는 것이다. 이 경우 평균적으로 출력을 대다수 클래스로 편중하므로 해당 편견을 보완하기 위해 무언가를 수행하는 것이 도움이됩니다. 계층화는이를 수행하는 한 가지 방법이지만 거의 최고는 아닙니다.
Dikran Marsupial

@Simon, BTW Prentice and Pyke 참조에 감사드립니다. 유용 해 보입니다.
Dikran Marsupial

1
@Dikran : 다른 모델에서는 편향 될 수 있지만 로지스틱 회귀에서는 그렇지 않습니다.
Simon Byrne

3

무증상으로, 양 대 음의 패턴의 비율은 본질적으로 관련이 없습니다. 통계적 분포를 적절히 설명하기 위해 소수 클래스의 표본이 너무 적은 경우 주로 문제가 발생합니다. 데이터 세트를 더 크게 만들면 일반적으로 문제가 해결됩니다 (가능한 경우).

이것이 불가능한 경우, 가장 좋은 방법은 데이터를 재 샘플링하여 균형 잡힌 데이터 세트를 얻은 다음 분류기의 출력에 곱하기 조정을 적용하여 훈련 세트와 운영 상대 클래스 주파수 간의 차이를 보상하는 것입니다. (무증상) 최적 조정 계수를 계산할 수는 있지만 실제로는 교차 검증을 사용하여 조정을 조정하는 것이 가장 좋습니다 (점근선이 아닌 유한 한 실제 사례를 처리하므로).

이런 종류의 상황에서 나는 종종 모델위원회를 사용하는데, 각 모델은 소수 패턴과 동일한 크기의 대다수 소수 패턴의 다른 무작위 표본과 모든 소수 패턴에 대해 학습됩니다. 이것은 다수의 패턴의 단일 서브셋을 선택할 때 불운을 방지합니다.


2
그러나 이것은 로지스틱 회귀와 관련이 있습니까? 우리는 두 클래스의 통계적 분포를 설명 할 필요가 없으며 상대 확률 비율 (@Henry에 대한 내 의견 참조) 만 설명합니다.
Simon Byrne

일 변량의 예에서, 그러나 하나 이상의 설명 변수가있는 경우 패턴의 분포에 대한 정보가 있어야 "분별"방향이 올바르게됩니다.
Dikran Marsupial

로지스틱 함수가 적용되기 전에 로그 승산 공간에 곱하기 조정을 적용하는 것이 더 좋지 않습니까?
rm999

IIRC, 어셈블리 적으로 최적의 조정은 작동 대 훈련 세트 클래스 주파수의 비율을 곱하는 것이며, 이는 베이 즈 규칙을 기반으로하므로 로그 확률 비율이 아닌 확률에 적용됩니다. 그러나 우리가 추정에서 수학적으로 다루기 어려운 결함을 바로 잡으려고 노력하고 있기 때문에 조정이 어떻게 이루어지는지는 중요하지 않을 것입니다. 이는 실제로 "퍼지 팩터"일뿐입니다.
Dikran Marsupial

@Dikran : 나는 "차별"의 방향을 올바르게 설정하는 것에 대한 당신의 의미를 이해하지 못합니다. 다변량의 경우에도 로지스틱 회귀는 여전히 상대적 승산 비를 계산하는 것입니다.
Simon Byrne

1

이론적으로 "좋은"과 "나쁜"의 비율이 거의 비슷한 경우 더 잘 구별 할 수 있습니다. 계층화 된 샘플링, 불량 사례를 오버 샘플링 한 후 나중에 가중치를 다시 조정하여 나중에 실제 비율로 돌아갈 수 있습니다.

이것은 약간의 위험을 수반합니다. 특히, 귀하의 모델은 개인을 "잠재적으로 나쁜"것으로 분류 할 가능성이 높습니다. 아마도 기한 내에 공공 요금을 지불하지 않는 사람들 일 것입니다. 이 작업을 수행 할 때 오류의 영향을 제대로 인식하는 것이 중요합니다. 특히 모델에 의해 "좋은 고객"이 "잠재적으로 불량"으로 표시되는 경우가 많으며, 계층화 된 샘플링에 의한 모델.


사실, 이것은 로지스틱 회귀에 대해서는 이것이 사실이라고 생각하지 않습니다. 승산 비 매개 변수 (차별 수행)는 반응 변수에 대한 계층화에 변하지 않습니다. 이것이 사례 관리 연구에 사용될 수있는 이유입니다.
Simon Byrne

@Simon : 확률 비율에 대한 귀하의 의견에 동의하지 않지만, 사람들이 다른 경우에 그렇게했을 때 계층화 된 샘플링 후 인구에 대한 결과로 올바르게 되 돌리지 못하는 것을 보았습니다. 예를 들어, 요인 A가 참인 사람이 요인 A가없는 사람보다 "나쁜"확률이 두 배인 것으로 확인되면 계층화 된 표본 추출로 변경되지 않아야하지만 모집단의 비율이 어느 정도인지 알고 싶다면 요인 A를 가진 대상을 대상으로하는 경우 불필요하게 영향을받는 경우 샘플의 정보에 신중하게 가중치를 부여해야합니다.
Henry

미안, 그것은 내가 동의하지 않은 비트가 아니었다. 첫 번째 비트였습니다. 불변의 결과는 일단 데이터가 있으면 계층화 할 필요가 없으며 단순히 데이터를 버리는 것입니다. (데이터 수집 비용과 관련하여 이야기가 다르므로 사례 관리 연구가 존재합니다).
Simon Byrne

@Simon : "사례 관리 연구"라고 할 때, 원래 "나쁜"사례와 "좋은"사례의 샘플을 가져 오겠다는 뜻입니까? 인구의 작은 비율보다 "나쁜"사례의 비율이 더 높습니까? 그렇다면, 나는 그것이 나의 답변에서 "정상 샘플링, 나쁜 사례를 오버 샘플링"함으로써 의도 한 것입니다.
Henry

그렇습니다. 정확히 제가 의미 한 바입니다. 이 질문은 이미 데이터가 있음을 나타내는 것으로 보이므로 계층화에 아무런 요점이 없습니다.
Simon Byrne

0

와이나는나는나는

와이나는베르누이(나는)
나는=로짓1(+1엑스1+...+엑스)
로짓1=특급(엑스)1+특급(엑스)

이제 실패 비율이 낮다는 것이 중요합니까 (잘못된 계정)? 일부 사람들이 이미 지적했듯이 샘플 데이터가 균형을 유지하는 한 실제로는 아닙니다. 그러나 데이터의 균형이 맞지 않으면 선택하지 않은 일부 선택 효과가있는 경우 더 많은 데이터를 얻는 것이 거의 쓸모가 없을 수 있습니다. 이 경우 일치를 사용해야하지만 균형이 부족하면 일치가 거의 쓸모 없게 될 수 있습니다. 또 다른 전략은 자연 실험을 찾으려고하므로 도구 변수 또는 회귀 불일치 설계를 사용할 수 있습니다.

마지막으로, 균형이 잡힌 표본이 있거나 선택 바이어스가 없다면 나쁜 계정이 거의 없다는 사실에 대해 걱정할 수 있습니다. 5 %가 드물다고 생각하지는 않지만, 경우에 따라서 는 희귀 한 이벤트 물류 실행에 대한 게리 킹의 논문을 살펴보십시오 . Zelig 패키지의 R에서는 드문 이벤트 로지스틱을 실행할 수 있습니다.


0

자, 사기 탐지 작업을하므로 이런 종류의 문제는 새로운 것이 아닙니다. 기계 학습 커뮤니티는 불균형 데이터에 대해 꽤 말할 것이 있다고 생각합니다 (클래스에서 불균형이 있음). 이미 언급 한 몇 가지 쉬운 쉬운 전략과 몇 가지 깔끔한 아이디어가 있습니다. 나는 이것이 당신의 문제에 대한 무증상의 의미가 무엇인지 아는 척하지는 않지만 항상 로지스틱 회귀에서 합리적인 결과를주는 것처럼 보입니다. 어딘가에 종이가 있을지 모르지만

내가 보는 옵션은 다음과 같습니다.

  1. 소수 클래스를 오버 샘플링하십시오. 이것은 다수 클래스와 동일한 수의 관측 값을 가질 때까지 소수 클래스를 대체하여 샘플링합니다. 관측 값을 지 터링하는 것과 같은 작업을 수행하여 원본에 가까운 값을 갖지만 완벽한 사본은 아닙니다.
  2. 언더 샘플, 여기에서 대다수 클래스의 서브 샘플을 가져옵니다. 가장 가까운 이웃 알고리즘 등을 사용하여 소수 샘플에 가장 가까운 대다수의 샘플을 제거 할 수 있도록 다시 한 번 멋진 방법입니다.
  3. 수업의 무게를 재십시오. 로지스틱 회귀 분석의 경우 이것이 내가하는 일입니다. 본질적으로, 잘못 분류 된 소수 집단에 대해 잘못 분류 된 다수 클래스보다 훨씬 더 많은 벌칙을 적용하기 위해 손실 기능을 변경하고 있습니다. 그러나 다시 기술적으로 최대 가능성을하지 않습니다.
  4. 데이터를 시뮬레이션하십시오. 내가 여기에서 해본 많은 깔끔한 아이디어. SMOTE를 사용하여 생성 부분을 사용하여 데이터, Generative Adversarial Networks, Autoencoder, 커널 밀도 추정기를 생성하여 새 샘플을 그릴 수 있습니다.

어쨌든, 나는이 모든 방법을 사용했지만 가장 간단한 방법은 물류 회귀에 대한 문제를 어쨌든 다시 강조하는 것입니다. 모델을 확인하기 위해 할 수있는 한 가지는 다음과 같습니다.

-Intercept/beta

주어진 변수 ceteris paribus 의 결정 경계 (두 클래스 중 하나 일 확률 50 %) 여야합니다 . 의미가 맞지 않는 경우 (예 : 의사 결정 경계가 엄격하게 양수인 변수의 음수 인 경우) 로지스틱 회귀 분석에 편향이있어 수정해야합니다.

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