Sigmoid関数とは、入力された数値を0から1の間の滑らかな実数に変換する数学的な関数です。ニューラルネットワークの活性化関数として広く使われ、確率的な出力や二値分類の予測値を表現する際に重要な役割を果たします。
Sigmoid関数とは
一言でいうと、任意の連続値を0から1の間の確率のような値に押し込める役割を持つ「S字型のカーブを描く活性化関数」です。
詳しく解説
Sigmoid関数は、入力値が無限に小さければ0に近づき、無限に大きければ1に収束するという特徴を持っています。この特性により、数値を確率として解釈しやすくなるため、AIの分野では古くから二値分類問題の出力層やニューラルネットワークの活性化関数として利用されてきました。数式としてはロジスティック関数が代表的であり、微分が非常にシンプルに計算できるという数学的な利点も備えています。
具体例・使われ方
例えば、メールが「スパムメールである確率」を計算するモデルにおいて、最後の出力層としてSigmoid関数が使われます。出力された数値が0.8であれば「80%の確率でスパムである」と解釈でき、画像認識における猫か犬かの二値分類などでも活用されます。
似た用語との違い
ReLU関数と比較されることが多く、ReLU関数が正の入力をそのまま通して計算効率を高めるのに対し、Sigmoid関数は出力を0から1の範囲に制限する点や、出力が非線形な確率表現に適している点が異なります。
注意点
入力値が非常に大きい、または非常に小さい領域では関数の傾き(勾配)がほぼ0になってしまうため、ニューラルネットワークの学習時において勾配消失問題を引き起こしやすいという重大な欠点があります。そのため、現在の深い層を持つ深層学習では、隠れ層での利用が減少傾向にあります。
この解説は役に立ちましたか?誤りが含まれる場合はご報告いただけますと幸いです。
更新日時: 2026年9月17日 15:51