Skip to content

Latest commit

 

History

History
201 lines (159 loc) · 10.3 KB

File metadata and controls

201 lines (159 loc) · 10.3 KB

분류 Classification

로지스틱 회귀 logistic regression

가로가 긴 것을 1, 세로가 긴 것을 0이라 가정한다
시그모이드 sigmoid
매개변수가 있는 함수는 다음과 같이 정의할 수 있다

equation

회귀와 마찬가지로 매개변수는 theta를 사용하면 함수의 모양은 다음과 같다

equation

img

시그모이드 함수는 0 < f(x) < 1 이므로 확률처럼 다룰 수 있다
최급하강법
미지의 데이터 x가 가로가 더 긴 모양일 때의 확률을 다음과 같이 정한다

equation

0.5를 기준으로 크거나 같으면 가로로 길고, 작으면 세로로 길다고 분류할 수 있다

equation

위 식은 아래와 같이 쓸 수도 있다

equation

img

가로축이 x1이고, 세로축이 x2인 그래프를 생각하고, 임의의 매개변수를 이용하여 계산해 보면

equation

equation equation

그래프를 그려서 보면 다음과 같다

img

직선을 경계선으로 해서 한쪽이 가로로 긴 것, 다른 한쪽이 세로로 긴 것으로 분류된다
이렇게 데이터를 분류하기 위한 직선을 결정경계라고 한다
알맞은 매개변수 theta를 구하기 위해 목적함수를 정의하고 미분해서 매개변수 갱신식을 구하면 된다
이러한 알고리즘을 로지스틱 회귀라 한다

우도함수

로지스틱 회귀의 목적은 다음과 같이 말할 수 있다

y=1 일때는 확률 P(y=1|x) 가 최대 y=0 일때는 확률 P(y=0|x) 가 최대

학습 데이터 3개의 y가 0, 1, 0 라 가정하자
모든 학습 데이터는 서로 관계가 없이 독립적으로 발생한다고 생각하면 다음과 같다

equation

이것을 일반화 해서 다시 쓰면

equation

이 목적함수를 우도함수(Likelihood)라 한다
우도함수를 가장 크게 하는 매개변수가 학습 데이터를 가장 잘 설명한다
우도함수를 그대로 다루기에는 어려운 점이 있다
확률을 곱하면서 값이 점점 작아진다는 것과 곱셈이라는 점이다
양변에 로그(log)를 취해서 계산하기 쉽도록 한다

equation

로그 함수는 단순 증가 함수이므로 우도함수를 최대화 하는 것과 로그를 취한 우도함수를 최대화 하는 것은 의미가 같다
로그를 취한 대수우도함수는 다음과 같이 변형할 수 있다

equation

equation

equation

equation

equation

따라서 로지스틱 회귀는 다음의 대수우도함수를 목적함수로 사용한다

equation

각각의 매개변수들로 미분해야 한다

equation

합성함수의 미분을 사용한다

equation

equation

equation

첫 번째 항목 계산

equation

log(v)의 미분은 1/v 라는 것을 이용한다
log(1-v)의 경우는 아래와 같이 합성함수 미분을 사용한다

equation

equation

equation

equation

equation

따라서 미분한 결과는 다음과 같다

equation

두 번째 항목은 시그모이드 함수를 미분해야 한다
시그모이드 함수는 다음과 같이 미분한다

equation

equation

합성함수의 미분을 사용하면

equation

equation

equation

equation

다음으로 z를 미분한다

equation

equation

equation

따라서 두 번째 항목의 미분은 다음과 같다

equation

equation

결과를 대입해 정리하면

equation

equation

equation

equation

equation

equation

이 식으로 매개변수 갱신식을 만들면 된다
최대화가 목적이므로 최소화할 때와는 반대로 부호가 양수가 된다

equation

다음과 같이 다시 쓸 수 있다

equation