사례 가중 로지스틱 회귀


9

몇 가지 로지스틱 회귀 문제를보고 있습니다. ( "일반"및 "조건부").

이상적으로는 glm이 낮은 가중치의 사례를 잘못 분류 할 가능성이 있지만 높은 가중치의 사례를 정확하게 예측하는 데 더 집중할 수 있도록 각 입력 사례에 가중치를 부여하고 싶습니다.

분명히 이것은 전에 이루어졌습니다. 누구나 나를 관련 문헌으로 안내 할 수 있습니까 (또는 수정 된 가능성 함수를 제안 할 수도 있습니다).

감사!


1
예측과 달리 분류가 목표라고 가정합니다. 확률을 최적으로 추정하기 위해 아무것도 다시 가중치를 지정할 필요가 없습니다. "거짓 부정"및 "거짓 긍정적"은 강제 선택에서만 발생하며 일반적으로 순수한 이진 선택을 강요하는 사람은 없습니다.
Frank Harrell

@ 프랭크 당신은 좋은 지적을합니다. 궁극적으로이 프로젝트의 목표는 추가 이벤트의 결과를 예측하는 것입니다. (따라서 훈련 데이터가있는 머신 러닝 기술로 생각할 수 있습니다.) 일부 결과는 다른 결과보다 "중요"하므로 그에 따라 가중치를 적용 할 방법을 찾고있었습니다. 우도 함수에 대한 Nick의 제안은 의미가 있으며 코드로 구현하기에는 매우 간단해야합니다.
노아

1
가중치가 필요없는 정확한 확률 모델이 필요한 것처럼 들립니다.
Frank Harrell

1
권리; 비용 함수를 연결하고 예측 된 확률을 사용하면 최적의 결정을 내릴 수 있습니다.
Frank Harrell

1
잘 보정 된 확률 모델에는 "오류"가 없으며 예측할 수없는 임의성이 있습니다. 최적의 결정은 예측 된 확률의 함수이며 다양한 결정을 내릴 수있는 비용 함수입니다.
Frank Harrell

답변:


3

glmweights이 목적을 위해 매개 변수를 정확하게 보유합니다 . 관측치와 동일한 수의 가중치를 보유하는 모든 규모의 숫자 벡터를 제공합니다.

나는 지금 당신이 말하고 있지 않을 수도 있다는 것을 알고 있습니다 R. 그렇지 않은 경우 원할 수 있습니다.


나는 R에 매우 익숙하지만 가능성 함수의 수학을 이해하고 싶습니다. 이것을 C ++ 또는 다른 언어로 코딩 할 수 있습니다. (단지 glm 기능의 "블랙 박스"를 신뢰하는 것이 항상 최상의 솔루션은 아닙니다)
Noah

아 너에게 좋다. 내가 아는 한, 가중치는 단순히 관측 당 로그 가능성을 곱하는 데 사용됩니다. 비가 중 버전을 작성했다면 가중치를 추가하는 것이 방해가됩니다. 또한 glmC 구현을 찾으 려면 소스 코드를 항상 볼 수 있습니다 .
Nick Sabbe

2
@ Nick, 나도 이것이 glm의 가중치 인수의 기능이라는 오해 아래있었습니다. 실제로는 이항 결과가 서로 다른 횟수의 시도를 기반으로한다는 의미에서 이질적 일 때 사용됩니다. 예를 들어, 첫 번째 관측치가 Binomial ( )이고 두 번째 관측치가 Binomial ( )이면 가중치는 입니다. 다시 glm ()의 가중치 인수는 가중치를 샘플링하지 않습니다. R에서이를 수행하려면 가중치에 따라 데이터 세트를 펼치고 모델을 확장 된 데이터 세트에 맞아야합니다 (이 경우 SE는 틀릴 수 있음). 3,.57,.53,7
매크로

3
다음은 메시지 보드의 'weights'인수에 대한 설명입니다. r.789695.n4.nabble.com/Weights-in-binomial-glm-td1991249.html
Macro

@ 매크로 : thx! 매우 깔끔합니다. 내가 당신의 의견 전에 그것을 사용한다면 치아에서 나를 때릴 수있는 것 중 하나 :-)
Nick Sabbe

1

SAS에 액세스 할 수 있으면 PROC GENMOD를 사용하여 매우 쉽게 수행 할 수 있습니다. 각 관측치에 가중치 변수가있는 한 가중치 계산 문을 사용하면 원하는 종류의 분석을 수행 할 수 있습니다. 나는 주로 치료의 역 확률 가중치를 사용하여 사용했지만 N이 일정하게 유지되는 한 특정 유형의 사례를 강조하기 위해 데이터에 가중치를 할당 할 수없는 이유는 없습니다. 기술적으로 가중치가 부여 된 사례는 반복 관찰되므로 일종의 ID 변수를 포함해야합니다. 관찰 ID가 'id'이고 가중치 변수가 'wt'인 예제 코드 :

proc genmod data=work.dataset descending;
    class id;
    model exposure = outcome covariate / dist=bin link=logit;
    weight wt;
    repeated subject=id/type=ind;
run;
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.