1

私はこの決定がタスクに依存することを理解しますが、私に説明させてください。tanhのような活性化機能と最後の層で線形活性化機能を使用することに利点はありますか?

私は、端に高密度レイヤーを持つ畳み込みニューラルネットワークを使用して、特定のダッシュボードビデオフレームからステアリングアングルを予測するモデルを設計しています。最終的な高密度層では、ステアリング角度を予測するユニットは1つしかありません。

私の仕事のために、以下のいずれかのオプションを選択するとパフォーマンスが向上しますか?

a。グラウンド・トゥルース・ステアリング・アングルを取得し、ラジアンに変換し、tanhを使用してそれらをスカッシュして、-1と1の間にします。ネットワークの最終密集層では、tanhアクティブ化関数を使用します。

b。地面の真理のステアリング角度を取得します。これらの生の角度は-420から420度です。最後のレイヤーでは、線形アクティブ化を使用します。

私は論理的に考えています。オプションAでは、ネットワークがはるかに小さい数字を扱っているので、損失はもっと小さくなる可能性があります。これにより、重量の変化が小さくなります。

あなたの考えを教えてください!

答えて

1

ニューラルネットワークには、重みとバイアスの2種類の変数があります(ほとんどの場合、バットゥーノームに必要な移動平均や移動の分散などの追加変数があります)。彼らはちょっと違った振る舞いをしています。例えば、バイアスは正則化者にペナルティを科されません。その結果、彼らは小さくならない傾向があります。したがって、ネットワークがを扱っていると仮定すると、数字が小さいのみ正確ではありません。

でも、バイアスを学習する必要があります。パフォーマンスを見ると分かりやすいように、小さな値を学習する方が簡単です。この意味で、私はむしろ[-1, 1]の目標範囲を[-420, 420]よりもむしろ選ぶだろう。バックプロパゲーションの間にtahn(ちょうどsigmoid付きなど)、飽和ニューロンkills the gradient

  • :しかしtanhはおそらく、最適な活性化関数ではありません。特別な理由がなくtahnを選択すると、あなたのトレーニングを傷つける可能性があります。
  • tahnで前進および後退することは、比較的高価であるexpを計算する必要があります。

私のオプションは(私はそれはあなたが線形活性化によって何を意味だと思う)(他のいくつかの変種がより良い仕事に証明されるまで、少なくとも最初は)グランドトゥルース値を圧迫することと全く活性化を持っていないだろう:ネットワークに[-1, 1]の範囲を学習させます。

一般に、非表示レイヤーに任意のアクティベーション機能がある場合は、sigmoidよりも良好に動作することが証明されています。 leaky ReLuPReluELUなどです。いずれかを試してみることもできます。

関連する問題