アクティベーション機能を混在させるとどうなりますか?


10

ReLU、シグモイド、タンなど、いくつかのアクティベーション関数があります。タン。アクティベーション機能を混在させるとどうなりますか?

最近、Googleが(x * sigmoid)のSwishアクティベーション関数を開発したことを発見しました。アクティベーション関数を変更することにより、XOR問題などの小さなニューラルネットワーク問題の精度を向上させることができますか?

回答:


2

一般的な活性化関数の組み合わせの動作に対する一般的な答えは、微積分の法則、特に微分微積分を適用する必要があり、結果は実験を通じて取得して、組み立てられた関数の品質を確認する必要があり、さらに複雑になると考えられます。計算時間を増やします。このような増加の例外は、組み合わせが提供する収束の利点と比較して、組み合わせの計算負荷が小さい場合です。

これは、次のように定義されたアクティベーション関数に付けられた名前であるSwishに当てはまるようです。

fバツ=バツSβバツ

fSシグモイド関数です。Swishは厳密にはアクティベーション機能の組み合わせではないことに注意してください。ハイパーパラメータを追加することで形成されますβ シグモイド関数の内部と、シグモイド関数の結果への入力の乗算。

Googleが開発したものではないようです。最初に匿名で提出された論文(ICLR 2018論文としての二重盲検レビュー用)、 Searching for Activation Functionsは、2017年頃にPrajit Ramachandran、Barret Zoph、およびQuoc V. Leによって作成されました。これは彼らの主張です。

私たちの実験は、発見された最も良い活性化関数、... Swish、...が、ReLUよりも、多数の困難なデータセットにわたるより深いモデルでうまく機能する傾向があることを示しています。

天文学的にまれなケースを除いて、アクティベーション機能を1つのレイヤーに変更すると、精度、信頼性、および計算効率に影響します。変化が重要であるかどうかは一般化できません。そのため、有用性を評価するために従来使用されてきたデータセットに対して新しいアイデアがテストされますです1

アクティベーション関数を組み合わせて新しいアクティベーション関数を形成することは一般的ではありません。たとえば、AlexNetはそれらを組み合わせません。。ただし、単一の効果的なネットワーク設計の異なるレイヤーで異なるアクティベーション機能を使用することは非常に一般的です。


脚注

[1]これらの伝統がバイアスを生み出すかどうかは別の問題です。スウェーデンのコンピューター科学者であるIvar Hjalmar Jacobsonまたは6 Sigmaのアイデアによって開拓されたユースケース分析の理論に従う人は、これらのテストはユニットテストであり、実際のユースケースに対する機能テストではなく、ポイントがあると言います。

[2]別の答えから生じる可能性のある誤解を修正するために、AlexNetは、Deep Convolutional Neural Networks(2012)のImageNet Classification with Deep Convolutional Neural Networks(2012)で概説されているアプローチの名前です。トロントでは、アクティベーション機能を組み合わせて新しい機能を形成する必要はありません。彼らはこれを書きます。

最後に完全に接続されたレイヤーの出力は、1000クラスのラベルに分布を生成する1000ウェイのソフトマックスに送られます。

...

ReLUの非直線性は、すべての畳み込み層と完全に接続された層の出力に適用されます。内部層は純粋なReLUで、出力層はSoftmaxです。

また、AlexNetアプローチの一連のレイヤーには、コンボリューションカーネルとプーリングレイヤーがあり、2012年にImageNetコンテストで優勝して以来、デザインは一般的に使用されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.