Logistic Function

Logistic function은

  • 일종의 연속변수에 해당하는 "raw score"(정확히는 logit score)을 
  • probability로 바꾸어주는 함수임: output이 0에서 1사이의 real number.
  • 미분가능!
더보기

Binary classification에서 True일 경우의 logit score가 0이상일 경우, True일 확률이 0.5이상에 해당한다.
즉,  logit score 의 값이 양수로 클수록 대응하는 확률이 0.5보다 커지며, 음수로 커질수록 대응하는 확률이 0.5 이하록 작아짐.


다음이 바로 logistic function임.

 

$$\text{logistic}(t)=\sigma(t)=\frac{1}{1+e^{-t}}$$

  • Sigmoid functions 중에서 가장 유명한 것이다보니 sigmoid라고도 불림.
  • MLP에서 back-propagation이 적용되면서 activation function으로 사용되기 시작한 대표적인 activation function임.
  • 현재는 hidden layers에서는 사용되지 않으나, binary calssification을 위한 ANN의 최종 output layer의 activation function으로 아직도 사용되며, 출력을 probability로 해야하는 경우에도 많이 이용됨.

미분을 하면 다음과 같음.

$$\dfrac{d}{dt}\sigma(t)=\sigma(t)(1-\sigma(t))$$

자세한 건 다음 참고 : 2023.09.25 - [.../Math] - [Math] Derivative of Logistic Function

 

[Math] Derivative of Logistic Function

$y=\sigma(x)=\dfrac{1}{1+e^{-x}}$ 를 미분하면 다음과 같음. $$\frac{d}{dx}\sigma(x)= \sigma(x)(1-\sigma(x))$$ graph 유도 유도는 다음과 같음. $$\begin{aligned}\frac{d}{dx}\sigma(x)&= -\dfrac{1}{(1+e^{-x})^2}e^{-x}(-1) \\ &= \frac{e^{-x}}{

dsaint31.tistory.com

 

참고자료2022.12.28 - [.../Math] - [Math] Sigmoid function


Logistic Regression

Logit (또는 Log Odds) score $t$에 기반한 logistic function을 이용한 classification이 바로 Logistic Regression임.

(logistic function의 generalization은 softmax function임 : 아래의 "더 읽어보면 좋은 자료들" 참고)

 

달리 말하면, Logistic Regresson은 linear regression $t=\omega_0+\omega_1x_1+\dots+\omega_nx_n$으로 Logit score를 구하고, 이를 logistic function을 통해 확률(class에 속할 확률)로 변경하는 것임.

 

참고 : odds란?

2022.06.06 - [.../Math] - [Math] Odds (승산, 승률)

 

[Math] Odds (승산, 승률)

$$\text{Odds} = \frac{p}{1-p}$$ where $p$is the probability of belonging to class of $1$ (success). odds의 range는 $[0,\infty]$ 임. (symmetric) probability가 $[0,1]$ 것과 차이가 있음. 어떤 event가 일어날 가능성에 대한 정량적 정

dsaint31.tistory.com

참고 : Logistic Regression에 대해

https://dsaint31.me/mkdocs_site/ML/ch03/logistic_regression/

 

BME228

Logistic Regression Logistic Regression은 이름과 달리, binary classification task를 위한 모델로서 특정 class에 속할 확률을 출력해준다 (output이 하나의 확률값임). 다음의 순서를 따름. Regression으로 어떤 score \(

dsaint31.me


수식으로 보는 logit과 logistic function

다음의 Logit (=Log Odds)에서부터 logistic이 유도됨.

 

$$\begin{aligned}
\log(\text{Odds}) &= \log \left(\frac{p}{1-p}\right) \\
&=\omega_0+\omega_1x_1+\omega_2x_2 + \cdots  +\omega_nx_n \\
&= t
\end{aligned}$$

이를 정리하면 다음과 같음.

$$\log\left(\dfrac{p}{1-p}\right)=w_0+w_1x_1+\dots+w_nx_n$$

위 식의 양 변에 log를 제거하면,

$$\begin{aligned}\frac{1-p}{p}&= e^{-(\omega_0+\omega_1x_1+\omega_2x_2 + \cdots+\omega_nx_n)}\\\frac{1}{p}-1&= e^{-(\omega_0+\omega_1x_1+\omega_2x_2 + \cdots+\omega_nx_n)}\\\frac{1}{p}&= 1+e^{-(\omega_0+\omega_1x_1+\omega_2x_2 + \cdots+\omega_nx_n)}\\p&=\dfrac{1}{1+e^{-(\omega_0+\omega_1x_1+\omega_2x_2 + \cdots+\omega_nx_n)}}\end{aligned}$$

즉, class에 속할 확률은 다음과 같은 식이 됨.

$$\begin{aligned}
p&=\sigma(\textbf{x},\boldsymbol{\omega}) \\
&=\frac{1}{1+ e^{-(\omega_0+\omega_1x_1+\omega_2x_2 + \cdots+\omega_nx_n)}} \\
&=\frac{1}{1+ \text{exp}(-t)}\\&=\text{Logistic-func}(t)\\ \quad\\t&=\omega_0+\omega_1x_1+\omega_2x_2 + \cdots  +\omega_nx_n\\&=\log\left({\frac{p}{1-p}}\right)
\end{aligned}$$

 

즉,

  1. $t$를 feature들의 linear combination으로 구하고
  2. 이는 결국 구하고자 하는 class에 속할 확률에 대한 logit이므로
  3. 역함수인 logistic을 취하면 확률 $p$를 구할 수 있음.

logit score $t$와 그에 대한 logistic


ANN에서의 Logistic function

  • MLP에 back-propagation이 적용되면서 기존의 step 함수 대신에 logistic function이 activation function으로 사용되면서 초기 Deep ANN의 대표적인 activation function이 되었음.
  • 하지만 exponential 이 포함되어 계산량이 높은 편이고, 양 끝단의 변화율이 0에 가까워서 Gradient vanishing을 일으키기 쉽고 느린 학습속도를 가져오기 때문에 최근에는 hidden layers에선 거의 사용을 하지 않는 추세임.
  • Logistic 은 sigmoid function의 하나로 대부분은 sigmoid들이 위의 특징을 공유한다.

더 읽어보면 좋은 자료들.

2024.05.02 - [분류 전체보기] - [Math] Examples: Logistic and Softmax Functions

 

[Math] Examples: Logistic and Softmax Functions

23) logistic 함수의 출력 값 범위는 어디부터 어디까지입니까?A) 0부터 1까지B) -1부터 1까지C) 0부터 무한대까지D) -무한대부터 무한대까지 Ans. A)24) 다음 중 softmax함수의 주된 사용 목적은 무엇입니

dsaint31.tistory.com

https://dsaint31.tistory.com/430

 

[Math] Sigmoid function

S자형 곡선을 갖는 함수. (대표적인 예가 logistic function이나 sigmoid는 다음과 같이 여러 종류가 있음) Artificial Neural Network의 Artificial Neron의 Activation function으로 초창기에 많이 사용되었음. Logistic dist

dsaint31.tistory.com

https://dsaint31.tistory.com/319

 

[ML] From softmax to logistic function.

Softmax function은 Logistic function의 generic form 즉 일반형이라고 할 수 있음. 달리 말하면, Logistic function은 Softmax function에서 class의 수가 2인 특별한 경우에 해당함. 우선 softmax function은 다음과 같음. $$\s

dsaint31.tistory.com

https://dsaint31.tistory.com/294

 

[ML] Softmax function

Softmax 함수란? ML 에서 multiclass classification을 수행하는 모델의 최종 output을 출력하는 activation함수로 사용되는 함수. linear model의 경우엔 softmax regression (multinomial logistic regression)에서 사용됨. 다른

dsaint31.tistory.com

 

반응형

+ Recent posts