시그모이드 함수란?
시그모이드(로지스틱) 함수는 임의의 실수를 부드러운 S자 곡선을 따라 (0, 1)의 열린 구간으로 압축해 주는 함수입니다. \(\sigma(x) = 1 / (1 + e^{-a\cdot x})\)로 정의되며, 신경망에서 가장 널리 쓰이는 활성화 함수 중 하나이자 로지스틱 회귀, 확률 모델링, 성장 곡선 등에서 빠지지 않고 등장합니다. 기울기 계수 \(a\)는 전이가 얼마나 가파른지를 결정합니다. \(a = 1\)이면 교과서에 나오는 전형적인 시그모이드가 되고, \(a\) 값이 커질수록 전이 구간이 좁아져 점차 계단 함수에 가까워집니다.
계산기 사용 방법
먼저 기울기 \(a\)를 입력한 뒤, 함수를 평가할 구간인 x 최솟값, x 최댓값, x 증분(스텝)을 지정합니다. 계산기는 각 스텝마다 \(\sigma(x)\)와 1차 도함수 \(\sigma'(x)\), 2차 도함수 \(\sigma''(x)\)를 정리한 표를 만들어 주며, 선택적으로 입력한 단일 x 지점의 값도 함께 표시합니다. 스텝은 0보다 커야 하고 x 최댓값은 x 최솟값 이상이어야 합니다. 그렇지 않으면 표에 어떤 행도 생성되지 않습니다.
수식 풀어보기
도함수는 \(\sigma\) 자체를 이용해 쓰면 특히 깔끔한 형태가 됩니다. 미분하면 $$\sigma'(x) = a \cdot \sigma(x) \cdot (1 - \sigma(x))$$ 가 되는데, 이 값은 항상 양수이므로(곡선이 단조 증가) \(\sigma\)는 \(x = 0\)의 변곡점에서 최댓값 \(a/4\)에 도달합니다. 2차 도함수 $$\sigma''(x) = a^{2} \cdot \sigma(x) \cdot (1 - \sigma(x)) \cdot (1 - 2\cdot\sigma(x))$$ 는 \(\sigma = 0.5\)가 되는 \(x = 0\)에서 부호가 바뀌며, 이 지점이 변곡점임을 다시 확인시켜 줍니다.
예제로 살펴보기
\(a = 1\), \(x = 2\)로 두겠습니다. \(e^{-2} = 0.135335\)이므로 $$\sigma(2) = 1 / 1.135335 = 0.880797$$ 이 됩니다. 1차 도함수는 \(0.880797 \cdot (1 - 0.880797) = 0.104994\)입니다. 2차 도함수는 \(0.104994 \cdot (1 - 2\cdot 0.880797) = 0.104994 \cdot (-0.761594) = -0.079963\)입니다. \(x = 0\)에서는 \(\sigma = 0.5\), \(\sigma' = 0.25\), \(\sigma'' = 0\)이 됩니다.
자주 묻는 질문
기울기 \(a\)는 어떤 역할을 하나요? 입력값의 크기를 조절합니다. \(a\)가 클수록 \(x = 0\) 부근에서 곡선이 더 빠르게 상승하며, \(a\)가 무한히 커지면 시그모이드는 급격한 계단에 가까워집니다. 반대로 \(a = 0\)이면 0.5에서 평평한 직선이 됩니다.
가장 가파른 지점은 어디인가요? 언제나 \(x = 0\)입니다. 이 지점에서 기울기는 \(a/4\)와 같고 2차 도함수는 0이 됩니다.
출력값이 정확히 0이나 1이 되지 않는 이유는? 지수항은 유한한 \(x\)에서는 결코 0에 도달하지 않으므로 \(\sigma\)는 항상 (0, 1) 구간 안에 머뭅니다. \(|a\cdot x|\)가 극단적으로 큰 경우 수치적으로는 0 또는 1로 반올림되는데, 이 계산기는 이런 상황도 안전하게 처리합니다.