Sigmoid

Author

Heeyoung Kim

Published

January 19, 2023

sigmoid 함수는 딥러닝의 출력 계층에서 출력값을 0에서 1사이의 값으로 변환하는 함수입니다.

import numpy as np

def sigmoid(x): return 1/(1+np.exp(-x))

함수 모양을 그리기 위해 plot_function 를 정의하고, 함수를 호출하여 그립니다.

Code
import matplotlib.pyplot as plt
import torch

def plot_function(f, tx=None, ty=None, title=None, min=-2, max=2, figsize=(6,4)):
    x = torch.linspace(min,max, 100)
    fig,ax = plt.subplots(figsize=figsize)
    ax.plot(x,f(x))
    if tx is not None: ax.set_xlabel(tx)
    if ty is not None: ax.set_ylabel(ty)
    if title is not None: ax.set_title(title)
import torch
plot_function(torch.sigmoid, min=-4, max=4)

sigmoid 함수는 위에서 보이듯이 완만하게 증가하는 곡선의 형태로 모든 곳에서 미분 가능하며, 어떤 입력값이든 0에서 1사이의 값으로 출력값을 변환할 수 있다는 장점이 있습니다.