スウィッシュ機能

ウィッシュ関数は、次のように定義される数学関数のグループです

スウィッシュ機能
[1]

ここで、は定数(通常は 1 に設定)またはトレーニング可能であり、「シグモイド」はロジスティック関数を指します。

swish ファミリは、線形関数と ReLU 関数の間を スムーズに補間するように設計されています。

正の値を考慮すると、Swishは[2]で定義されている二重パラメータ化シグモイド収縮関数の特殊なケースである:式3。swish 関数の変種にはMishがある。[3]

特別な値

β = 0 の場合、関数は線形です: f( x ) = x /2。

β = 1 の場合、関数はシグモイド線形ユニット(SiLU) です。

β → ∞では関数はReLUに収束します。

このように、スウィッシュ族は線形関数とReLU関数の間を滑らかに補間します。 [1]

なので、swish のすべてのインスタンスは、 でズームされたデフォルトの と同じ形状になります。通常は を設定します。 がトレーニング可能な場合、この制約は(はトレーニング可能)によって強制できます

デリバティブ

なので、デフォルトのケースではその導関数を計算すれば十分です。は奇数なのでは偶数です。

歴史

SiLUは2016年にGELUと並んで初めて提案され[4]その後、2017年に強化学習におけるシグモイド重み付き線形ユニット(SiL)として再提案されました[5] [1] SiLU/SiLは最初の発見から1年以上経ってSWISHとして再提案されましたが、当初は学習可能なパラメータβなしで提案されたため、βは暗黙的に1に等しくなりました。その後、SWISHの論文は学習可能なパラメータβを使用した活性化を提案するように更新されました。

2017年、Googleの研究者はImageNetデータの分析を行った後、この関数を人工ニューラルネットワーク活性化関数として使用すると、ReLU関数やシグモイド関数と比較してパフォーマンスが向上することを示しました。[1]この改善の理由の1つは、スウィッシュ関数がバックプロパゲーション中の勾配消失問題を軽減するのに役立つためだと考えられています[6]

参照

参考文献

  1. ^ abcd Ramachandran, Prajit; Zoph, Barret; Le, Quoc V. (2017-10-27). 「活性化関数の探索」. arXiv : 1710.05941v2 [cs.NE].
  2. ^ Atto, Abdourrahmane M.; Pastor, Dominique; Mercier, Gregoire (2008年3月). 「ノンパラメトリック推定のための滑らかなシグモイドウェーブレット収縮」. 2008 IEEE International Conference on Acoustics, Speech and Signal Processing (PDF) . pp.  3265– 3268. doi :10.1109/ICASSP.2008.4518347. ISBN 978-1-4244-1483-3. S2CID  9959057。
  3. ^ Misra, Diganta (2019). 「Mish: 自己正規化非単調ニューラル活性化関数」. arXiv : 1908.08681 [cs.LG].
  4. ^ Hendrycks, Dan; Gimpel, Kevin (2016). 「ガウス誤差線形単位 (GELU)」. arXiv : 1606.08415 [cs.LG].
  5. ^ Elfwing, Stefan; Uchibe, Eiji; Doya, Kenji (2017-11-02). 「強化学習におけるニューラルネットワーク関数近似のためのシグモイド重み付き線形ユニット」. arXiv : 1702.03118v3 [cs.LG].
  6. ^ Serengil, Sefik Ilkin (2018年8月21日). 「ニューラルネットワークの活性化関数としてのSwish」. 機械学習、数学. 2020年6月18日時点のオリジナルよりアーカイブ。 2020年6月18日閲覧
「https://en.wikipedia.org/w/index.php?title=Swish_function&oldid=1295717492」から取得