DXでさらなる成長を

ITによる社会貢献

人工知能 (AI)

第十四回  活性化関数

活性化関数には様々なものが提案されています。ここでは、その一部について説明します。

ステップ関数は、入力が0以上であれば1を返し、0未満であれば0を返す関数です。グラフで表すと以下のようになります。

シグモイド関数は、以下のような関数です。

f u = 1 1 + e - u

グラフで表すと以下のようになります。

Tanh関数は、以下のような関数です。

f u = e u - e - u e u + e - u

グラフで表すと以下のようになります。

ReLUは、以下のような関数です。

f u = m a x 0 u

グラフで表すと以下のようになります。

最後にソフトマックス関数を挙げておきます。 犬と猫の画像を分類するといった問題の場合、出力値の合計が1となるような実数値を得ることに意味があります。 そこで、以下に示す関数を用いて確率に変換します。

f u c = e u c k = 1 n e u k

数式ではわかりにくいので、具体例を挙げて説明します。 出力が4つあり、それらの値が(0.9, 0.1, 0.2, 0.4)だったとしましょう。 この時、1番目の出力値は

u 1 = 0.9 , u 2 = 0.1 , u 3 = 0.2 , u 4 = 0.4
f u 1 = e u 1 e u 1 + e u 2 + e u 3 + e u 4 0.39

となります。


他にも様々な活性化関数が提案されており、対象とする問題に合わせて適切に選ぶことで、学習にかかる時間を短縮できることが知られています。

次の記事へ

目次へ