St_Hakky’s blog

プログラミング/心理学/人事/留学/データサイエンス/機械学習/Deep Learning/バイオインフォマティクス/日頃思ったこと/人事のデータサイエンスしてみたい

Neural Networkで使う活性化関数について調べたのでまとめてみた

こんにちは。

ニューラルネットワークでは活性化関数を設定する必要があるわけなんですが、その活性化関数の種類は知っていてもどんなときにどんなものを使うといいか、なんかそのイメージがぱっとわくものがないかなぁと思って、調べてみました。

○活性化関数の種類

以下に代表的なものを載せます。

  • Step function
  • Linear function
  • softplus function
  • sigmoid function
  • hard sigmoid
  • tanh (hyperbolic function)
  • softsign function
  • ReLU (Rectified Linear Unit) function
  • Leaky ReLU function
  • PReLU (Parametrized ReLU) function
  • Thresholded ReLU
  • Exponential Linear Units(eLU)
  • SeLU
  • Gumbel-Softmax
  • Swish

式を書こうかなぁと思ったのですが、上の関数のほとんど全部が以下のサイトで可視化されていて、すごくわかりやすいのでもうこれでいいやとなりました笑(手抜きw)。

dashee87.github.io

各活性化関数の値と式がでているので、わからなくなったらここに立ち返ればよいかと。

Google Play Groundで活性化関数の影響を見る

以下のサイトで、インタラクティブにNeural Networkにおける活性化関数の影響を見ることができます。

playground.tensorflow.org

活性化関数の影響を見るために、色々活性化関数を変えながら出力結果がどのように変化するかためせて普通におもしろい。

それでは。