最近、カスタマイズされたニューラルネットワークの作成を検討しています。基本的な構造は通常と同じですが、レイヤー間の接続を切り捨てたいと思っています。たとえば、2つの隠れたレイヤーを持つネットワークを構築すると、下の画像のようにいくつかの重みを削除して残ります。 Structure of customized neural networks 残念ですが、ここに画像を埋め込むことはできません。トレーニング中にニューラルネットワークのサブセット重みを固定する
これはオーバーフィッティングを避けるためのドロップアウトではありません。実際には、残りの重み(接続)は指定され、固定されます。対応する構造は意図的に設計されています。
Pythonでこれを行う方法はありますか? Tensorflow、pytorch、theanoまたは他のモジュール?
ありがとうございました。キルマトリックスは良く見えます。それは私にインスピレーションを与えます。やってみます。 – Yuan
別の質問がありますか?この変更はAdamのようなオプティマイザに影響しますか?私の理解では、バックプロパゲーションを使用してウェイトを更新します。これで接続が切り捨てられ、バックプロパゲーションによって殺されたウェイトが更新されます。これはフィードフォワード処理に影響しません。あるいは、私は更新が行われるが、転送処理には影響を与えないので、この操作を解釈することができます。 – Yuan
次に、説明を明瞭にするために、* kill層*を代わりに*ゲート層*または*抑制層*と呼ぶべきである。 Adam(または他のオプティマイザ)に関する質問に答えるには、**これはオプティマイザ**に悪影響を及ぼさない**です。 * suppress layer *は、抑制された(または**殺された**)接続を使用してフィードフォワードおよびバックプロパゲーションのステップを抑制します。 – Wontonimo