이 강의의 목표는 선형 점수를 확률로 바꾸어 분류하는 법을 아주 기초부터 이해하는 것입니다.
먼저 오늘의 핵심 식을 봅니다.
p(y=1∣x)=σ(wTx+b)
이 식을 외우기 전에, 식 안의 말과 기호를 먼저 하나씩 풀어야 합니다.
| 말 |
뜻 |
| 분류 |
종류를 고르는 문제 |
| 로짓 |
확률로 바꾸기 전 점수 |
| 시그모이드 |
실수를 0과 1 사이로 바꾸는 함수 |
| 오즈 |
성공확률을 실패확률로 나눈 값 |
| 지수족 |
여러 분포를 공통 형태로 묶은 가족 |
수학에서 어려운 부분은 계산보다 읽기입니다. 뜻을 모르고 계산하면 공식이 암호처럼 보입니다.
이메일이 스팸인지 아닌지 판단한다고 합시다. 단어들의 힌트를 모아 점수를 만들고, 그 점수를 스팸일 확률로 바꾸면 분류가 됩니다.
핵심 식을 다시 봅니다.
p(y=1∣x)=σ(wTx+b)
기호를 하나씩 말로 바꿉니다.
- x는 입력 특징 벡터입니다. 예를 들어 단어 등장 횟수를 모은 것입니다.
- w는 가중치 벡터입니다. 각 특징이 판단에 얼마나 기여하는지 담습니다.
- b는 편향(절편)입니다. 기준선을 위아래로 옮깁니다.
- wTx+b는 로짓 z라고 부르는 하나의 실수 점수입니다. wTx=w1x1+w2x2+⋯의 내적에 b를 더한 값입니다.
- σ는 시그모이드 함수입니다. 어떤 실수든 0과 1 사이로 눌러 확률로 만듭니다.
- p(y=1∣x)는 "입력이 x일 때 정답이 1일 확률"입니다.
그래서 이 식은 "입력에 가중치를 곱해 점수 z를 만들고, 그 점수를 시그모이드에 넣어 확률로 바꾼다"는 뜻입니다. 시그모이드가 정확히 무엇인지는 다음 절에서 정의합니다.
선형 점수 z=wTx+b는 −∞부터 +∞까지 어떤 실수든 될 수 있습니다. 하지만 확률은 반드시 0과 1 사이여야 합니다. 그래서 실수 전체를 (0,1) 구간으로 부드럽게 옮겨 주는 함수가 필요합니다. 그 역할을 하는 것이 시그모이드입니다.
시그모이드 함수는 다음과 같이 정의합니다.
σ(z)=1+e−z1
이 함수는 다음 성질을 가집니다.
- z=0이면 σ(0)=1+11=0.5입니다.
- z가 매우 크면 e−z가 0에 가까워져 σ(z)는 1에 가까워집니다.
- z가 매우 작으면(음수로 큼) e−z가 매우 커져 σ(z)는 0에 가까워집니다.
그래서 점수가 높을수록 확률이 1에 가까워지고, 낮을수록 0에 가까워집니다. 이 관점이 있어야 뒤에 나오는 지수족과의 연결도 자연스럽게 보입니다.
시그모이드를 확률로 두면, p=σ(z)입니다. 이때 실패확률은 1−p입니다. 계산하면 다음과 같습니다.
1−p=1−1+e−z1=1+e−ze−z
성공확률을 실패확률로 나눈 값을 오즈라고 합니다.
1−pp=e−z/(1+e−z)1/(1+e−z)=e−z1=ez
양변에 로그를 취하면 다음이 됩니다.
log1−pp=z=wTx+b
즉 로지스틱 회귀는 "로그오즈가 입력의 선형함수"라는 모델입니다. 확률 자체는 곡선이지만, 로그오즈로 보면 직선이 됩니다. 그래서 결정경계 z=0에서 p=0.5가 되고, 그 지점이 두 클래스를 나누는 기준이 됩니다.
지수족은 여러 확률분포를 하나의 공통 형태로 묶은 가족입니다. 일반형은 다음과 같이 씁니다.
p(x)=h(x)exp(η⋅T(x)−A(η))
각 기호의 뜻은 다음과 같습니다.
- η는 자연매개변수입니다.
- T(x)는 충분통계량입니다.
- A(η)는 로그정규화상수로, 확률의 합을 1로 맞춥니다.
- h(x)는 기저측도입니다.
정답이 0 또는 1인 베르누이 분포가 이 형태의 특수한 경우임을 보입니다. 성공확률을 p라 하면 베르누이 분포는 다음과 같습니다.
P(y)=py(1−p)1−y
이것을 지수 형태로 바꿉니다.
P(y)=exp(ylogp+(1−y)log(1−p))=exp(ylog1−pp+log(1−p))
여기서 지수족 형태와 비교하면 다음이 맞아떨어집니다.
- 자연매개변수 η=log1−pp, 즉 로그오즈입니다.
- 충분통계량 T(y)=y입니다.
- A(η)=−log(1−p)=log(1+eη)입니다.
- h(y)=1입니다.
그리고 η=log1−pp를 p에 대해 풀면 p=1+e−η1=σ(η)입니다. 즉 시그모이드는 베르누이 지수족의 자연매개변수를 다시 확률로 되돌리는 함수입니다. 로지스틱 회귀는 이 자연매개변수를 입력의 선형함수 η=wTx+b로 둔 모델입니다.
문제: 가중치가 w=[2−1], 편향 b=0, 입력 x=[11]일 때 p(y=1∣x)를 구하라.
풀이: 먼저 로짓을 계산합니다.
z=wTx+b=2⋅1+(−1)⋅1+0=1
시그모이드에 넣습니다.
σ(1)=1+e−11=1+0.36791≈0.731
그래서 정답이 1일 확률은 약 0.73입니다. 기준을 0.5로 두면 양성으로 분류합니다.
앞 예제에서 p≈0.731이면 실패확률은 1−p≈0.269입니다. 오즈를 계산합니다.
1−pp≈0.2690.731≈2.718≈e1
로그오즈는 다음과 같습니다.
log1−pp≈loge1=1=z
로그오즈가 정확히 로짓 z=1과 같습니다. 이것이 5절에서 유도한 관계 log1−pp=z가 실제로 성립함을 보여 줍니다.
- 오늘 배운 핵심은 선형 점수를 확률로 바꾸어 분류하는 법입니다.
- 시그모이드 σ(z)=1+e−z1는 실수를 0과 1 사이 확률로 바꿉니다.
- 로지스틱 회귀는 로그오즈가 선형이라는 모델입니다: log1−pp=wTx+b.
- 베르누이 분포는 지수족 p(x)=h(x)exp(η⋅T(x)−A(η))의 특수형이고, 그 자연매개변수가 로그오즈, 되돌리는 함수가 시그모이드입니다.
p(y=1∣x)=σ(wTx+b)
- 시그모이드의 정의식을 쓰고 z=0에서의 값을 말할 수 있는가?
- 로그오즈가 왜 선형 점수 z와 같은지 유도할 수 있는가?
- 지수족 일반형에서 베르누이 분포의 η, T(y), A(η)는 각각 무엇인가?
- 결정경계 z=0에서 확률은 얼마인가?