회귀라는 이름보다 예측할 대상을 봅니다
뉴스레터를 읽은 사람이 구독 버튼을 누를지 예측한다고 합시다. 정답은 구독함과 구독하지 않음 두 범주입니다. 이를 1과 0으로 기록했더라도 예측 목적은 분류입니다. 로지스틱 회귀는 각 조건에서 1이 될 확률을 모형화합니다. 그 확률에 기준을 적용하면 최종 분류 결과를 얻습니다.
선형회귀에서 배운 직선 식을 확률에 바로 쓰면 문제가 생깁니다. 예측값이 −0.2나 1.3으로 나올 수 있기 때문입니다. 이진 로지스틱 회귀는 선형 식으로 계산한 값을 로지스틱 함수에 넣어 0과 1 사이의 확률로 바꿉니다. 유한한 계수와 입력값에서는 확률이 정확히 0이나 1이 되지 않습니다. 숫자는 가상의 구독 예제입니다.
| 비교할 점 | 보통의 선형회귀 | 이진 로지스틱 회귀 |
|---|---|---|
| 예측 대상 | 점수나 시간 같은 수치 | 0 또는 1로 나타낸 범주 |
| 선형 식이 연결되는 값 | 반응변수의 조건부 평균 | 1일 확률의 로그오즈 |
| 대표적인 추정 방법 | 잔차 제곱합 최소화 | 가능도 최대화, 필요하면 규제 적용 |
| 결과를 읽는 첫 질문 | 얼마로 예측했는가 | 1일 확률을 얼마로 예측했는가 |
가능도는 주어진 모형에서 관측한 0과 1이 얼마나 그럴듯한지를 나타내는 함수입니다. 처음에는 추정식을 전개하기보다 선형회귀의 제곱오차 계산을 그대로 쓰지 않는다는 점부터 알아두면 됩니다.
확률과 오즈는 분모가 다릅니다
구독할 확률을 p라고 쓰면 구독하지 않을 확률은 1−p입니다. 오즈는 p/(1−p)로 계산합니다. 확률은 전체 가능성 중 구독 쪽의 몫이고 오즈는 구독과 비구독 두 가능성의 비입니다. p=0.2라면 오즈는 0.2/0.8=0.25입니다. 구독과 비구독의 비를 1 대 4로 읽을 수 있습니다.
확률 p=0.5에서는 오즈가 1, p=0.8에서는 오즈가 4입니다. 확률은 1을 넘지 않지만 오즈는 1보다 클 수 있습니다. 오즈가 4라고 구독 확률이 400%인 것은 아닙니다. 오즈를 o라고 할 때 확률로 되돌리는 식은 p=o/(1+o)입니다. 4/(1+4)=0.8이므로 처음 값으로 돌아옵니다.
로그오즈는 오즈에 자연로그를 취한 값입니다. 로그는 곱셈 관계를 덧셈 관계로 바꿔 주며 양수인 오즈를 음수와 양수를 모두 가질 수 있는 값으로 표현합니다. 오즈가 1이면 로그오즈는 0이고 오즈가 1보다 작으면 로그오즈는 음수입니다. 확률, 오즈, 로그오즈는 척도가 다르므로 숫자만 놓고 비교하지 않습니다.
계수는 확률이 아니라 로그오즈에 더해집니다
설명변수 x 하나를 사용하는 모형을 log[p/(1−p)] = β₀ + β₁x로 나타낼 수 있습니다. 왼쪽의 log는 자연로그입니다. 오른쪽 선형 식을 z라고 줄이면 p = 1/(1+exp(−z))입니다. 여기서 exp는 자연상수 e를 밑으로 하는 지수함수입니다. z=0이면 p=0.5이고 z가 커질수록 p도 커집니다.
β₁은 x가 한 단위 증가할 때 로그오즈에 더해지는 값입니다. 같은 변화에서 오즈에는 exp(β₁)이 곱해집니다. 다른 설명변수가 있다면 그 값들은 고정한 해석입니다. 상호작용이나 x의 제곱항이 없는 단순한 형태를 전제로 하며 그런 항이 있으면 x의 변화에 따른 계수 해석도 달라집니다.
β₁=log(2)라면 exp(β₁)=2이므로 x 한 단위 증가에 따라 오즈가 두 배가 됩니다. 이때 확률도 두 배라고 말하면 틀립니다. 원래 확률이 0.2였다면 오즈는 0.25, 바뀐 오즈는 0.5, 바뀐 확률은 0.5/1.5=약 0.333입니다. 20%에서 약 33.3%로 바뀌므로 두 배인 40%가 아닙니다.
| 출발 확률 | 출발 오즈 | 오즈를 두 배로 바꾼 값 | 바뀐 확률 |
|---|---|---|---|
| 0.2 | 0.25 | 0.5 | 약 0.333 |
| 0.5 | 1 | 2 | 약 0.667 |
| 0.8 | 4 | 8 | 약 0.889 |
같은 계수라도 출발 확률이 다르면 확률의 증가량은 다릅니다. 계수는 로그오즈에 더하고 exp(계수)는 오즈에 곱한다는 계산 순서를 기억하세요. 확률로 답해야 하는 문제라면 마지막에 o/(1+o)로 되돌리는 단계가 남습니다.
확률을 얻은 다음 분류 기준을 정합니다
어떤 사람의 예측 구독 확률이 0.6일 때, 0.5 이상을 구독으로 분류하는 규칙이라면 결과는 구독입니다. 기준을 0.7 이상으로 바꾸면 같은 사람은 비구독으로 분류됩니다. 이 과정에서 모형이 낸 0.6이라는 확률은 바뀌지 않았습니다. 확률을 추정하는 일과 그 확률로 분류를 결정하는 일은 다릅니다.
0.5는 흔히 쓰는 기준일 뿐 모든 문제에서 최선인 값은 아닙니다. 실제 구독자를 놓치는 일과 비구독자를 구독자로 잘못 판단하는 일의 부담이 다르면 적절한 기준도 달라집니다. 기준 선택에는 검증 자료를 사용하고 최종 시험 자료를 보며 반복해서 기준을 바꾸지 않습니다. 정확도, 정밀도, 재현율의 계산은 관련 글의 분류 평가 설명에서 이어집니다.
방향을 읽되 원인이라고 단정하지 않습니다
다른 조건을 고정했을 때 β₁이 양수이면 x 증가에 따라 1의 확률이 높아지는 방향입니다. 음수이면 낮아지는 방향입니다. 그러나 관측 자료에서 얻은 계수만으로 x를 바꾸면 구독이 증가한다고 주장할 수는 없습니다. 누락된 요인이나 자료 수집 방식이 관계를 만들었을 수 있습니다.
자료에서 특정 값이 구독 여부를 예외 없이 나누면 완전 분리 문제가 생길 수 있습니다. 일반적인 최대가능도 계수가 유한하게 정해지지 않을 수 있어 수렴 경고를 확인해야 합니다. 변수가 많은 상황의 규제, 범주 기준값, 확률의 보정 상태도 실제 모형에서는 따로 살핍니다. 계수를 읽을 때는 1로 정한 범주, x의 단위, 구하려는 값이 오즈비인지 확률인지를 확인합니다.
핵심 정리와 실수 점검
핵심 정리
- 이진 로지스틱 회귀는 범주 1의 확률을 모형화하며 임계값을 적용해 분류합니다.
- 다른 변수를 고정하고 단순한 선형항을 가정하면 x 한 단위 증가의 오즈비는 exp(β₁)입니다.
- 오즈비가 2여도 확률이 두 배라는 뜻은 아니며 출발 확률에 따라 변화량이 다릅니다.
놓치기 쉬운 지점
- exp(계수)를 확률의 증가량이나 확률비로 곧바로 읽는 실수
- 0과 1로 저장된 목표를 숫자라는 이유만으로 연속형 회귀 문제로 분류하는 실수
확인할 내용
- 목표변수에서 1로 정한 범주를 적는다.
- 질문이 확률, 오즈, 로그오즈 중 무엇을 요구하는지 확인한다.
- 오즈비를 해석할 때 다른 변수 고정과 x 한 단위의 의미를 확인한다.
이해한 내용 확인하기
직접 작성한 학습용 문항입니다. 공식 기출문제가 아닙니다.
Q1. 1일 확률이 0.75일 때 오즈와 로그오즈의 부호는 무엇인가요?
생각한 뒤 해설 보기
오즈는 0.75/0.25=3이며 로그오즈는 log(3)이므로 양수입니다. 확률이 0.5보다 크면 오즈는 1보다 크고 로그오즈는 양수입니다.
Q2. 다른 조건이 같고 x의 계수가 log(0.5)입니다. x가 한 단위 증가할 때 확률이 절반이 되나요?
생각한 뒤 해설 보기
오즈가 절반이 됩니다. 출발 확률이 0.5라면 오즈 1이 0.5가 되어 새 확률은 0.5/1.5=약 0.333입니다. 확률 0.25와 다릅니다.
Q3. 상호작용이 없는 모형에서 x 한 단위 증가의 오즈비가 3입니다. 두 단위 증가의 오즈비는 얼마인가요?
생각한 뒤 해설 보기
exp(2β₁)={exp(β₁)}²=3²=9입니다. 한 단위마다 오즈에 3을 곱하므로 3+3=6이 아닙니다.
Q4. 예측 확률이 0.65인 사례에 0.5 이상은 양성이라는 규칙을 쓰다가 0.7 이상으로 바꿨습니다. 확률과 분류는 각각 어떻게 되나요?
생각한 뒤 해설 보기
예측 확률은 0.65로 유지되고 분류는 양성에서 음성으로 바뀝니다. 임계값 조정과 모형 재학습은 다른 작업입니다.
Q5. 반응변수가 구독 여부 0과 1이고 모형 이름에 회귀가 들어 있습니다. 연속형 값을 예측하는 문제라고 판단해도 되나요?
생각한 뒤 해설 보기
안 됩니다. 목표는 두 범주의 구독 여부입니다. 이진 로지스틱 회귀는 구독 확률을 추정하며 필요하면 이를 범주로 분류합니다.
더 궁금한 점
로지스틱 회귀의 계수가 음수면 오즈도 음수인가요?
아닙니다. 계수는 로그오즈의 변화를 나타냅니다. exp(음수)는 0과 1 사이의 양수이므로 오즈가 감소하는 방향이지 오즈가 음수가 되는 것은 아닙니다.
로지스틱 회귀도 여러 범주를 분류할 수 있나요?
다항 로지스틱 회귀처럼 여러 범주를 다루는 확장이 있습니다. 이 글의 오즈와 임계값 예제는 0과 1 두 범주를 다루는 이진 모형에 한정합니다.
참고 자료와 확인 범위
- scikit-learn 로지스틱 회귀 ↗
분류 모형으로서의 로지스틱 회귀, 확률 모형과 규제 설명을 확인했습니다.
- UCLA 로지스틱 회귀 해석 ↗
로그오즈 계수, 지수 변환한 오즈비, 완전 분리와 모형 점검 항목을 확인했습니다.
- scikit-learn 분류 임계값 ↗
확률 추정과 분류 결정의 구분, 별도 자료를 사용한 임계값 선택을 확인했습니다.