나는 로지스틱 회귀에 대한 이해에서 뭔가 빠진 것을 알고 있으며 도움을 주셔서 감사합니다.
내가 이해하는 한, 로지스틱 회귀는 입력이 주어지면 '1'결과의 확률이 입력의 선형 조합이며 역 로지스틱 함수를 통과한다고 가정합니다. 이것은 다음 R 코드에서 예시됩니다.
#create data:
x1 = rnorm(1000) # some continuous variables
x2 = rnorm(1000)
z = 1 + 2*x1 + 3*x2 # linear combination with a bias
pr = 1/(1+exp(-z)) # pass through an inv-logit function
y = pr > 0.5 # take as '1' if probability > 0.5
#now feed it to glm:
df = data.frame(y=y,x1=x1,x2=x2)
glm =glm( y~x1+x2,data=df,family="binomial")
다음과 같은 오류 메시지가 나타납니다.
경고 메시지 : 1 : glm.fit : 알고리즘이 수렴되지 않음 2 : glm.fit : 숫자 적으로 적합 확률 0 또는 1이 발생했습니다.
나는 얼마 동안 R과 함께 일했다. 아마 내가 비난 할 사람이라는 것을 알기에 충분합니다. 여기서 무슨 일이 일어나고 있습니까?
2
데이터를 시뮬레이션하는 방식이 이상하게 보입니다. 다른 표준 방법을 원한다면 stats.stackexchange.com/questions/12857/…
—
ocram
@ocram : 당신 말이 맞아요. 이것은 중복 질문입니다!
—
user603
@ Stéphane Laurent이 설명했듯이 잘못된 시뮬레이션을 실행했습니다. 그러나 문제는 로지스틱 회귀 분석에서 완벽하게 분리되어 있었으며 , 내가 익숙하지 않은 문제이며 배우는 것에 놀랐습니다.
—
zorbar
@ zorbar : 귀하의 질문에 대한 답변이었습니다 (삭제되었습니다).
—
user603
@ user603 : 아마 당신의 응답을 놓쳤다; 어쨌든 감사합니다
—
zorbar