全結合層は入力として固定サイズのベクトルを必要とするのはなぜですか? ベクトル入力が特定のサイズを満たさない場合、どのような問題が発生しますか?

問題の説明: 全結合層は入力として固定サイズのベクトルを必要とするのはなぜですか? ベクトル入力が特定のサイズを満たさない場合、どのような問題が発生しますか?

質問と回答:

全結合層の重み行列のサイズは入力と出力の次元によって決まるため、全結合層では入力ベクトルのサイズが固定されている必要があります。具体的には、入力ベクトルの次元が Din 、出力ベクトルの次元が Dout の場合、全結合層の重み行列のサイズは Din × Dout になります。

入力ベクトルのサイズが予想される固定サイズを満たさない場合、次の問題が発生します。

  1. 重み行列の非互換性:入力ベクトルの次元が完全接続層で予期される入力次元と一致しない場合、重み行列のサイズに互換性がなく、行列の乗算演算を実行できません。

  2. パラメーターの数が一貫していない:完全に接続されたレイヤーのパラメーターの数は、入力次元と出力次元の影響を受けます。入力ベクトルのサイズが変化すると、全結合層のパラメーターの数が変化し、以前に定義したモデルと矛盾する可能性があります。

  3. 一貫性のないネットワーク構造:ニューラル ネットワークの階層構造は、通常、ネットワーク全体のパラメーターと構造の一貫性を確保するために、入力および出力の次元が固定されるように設計されています。入力ベクトルのサイズが一貫していない場合、ネットワークの構造的な一貫性が破壊されます。

この問題を解決するために、通常、畳み込み層やプーリング層などの前処理層がニューラル ネットワークの前に追加され、全結合層に入る前に入力データが固定サイズであることが保証されます。さらに、ネットワークがさまざまなサイズの入力を処理できるように、入力データを固定サイズのバッチに編成するためにバッチ処理技術がよく使用されます。

出力層のニューロンの数が固定で、入力層の数が 4 の場合、パラメーター行列は次の式に示すように 3 行 4 列になります。

\begin{bmatrix} \theta _{10} &\theta_{11} & \theta _{12} &\theta _{13} \\ \theta _{20}& \theta _{21} & \theta _ {22} &\theta _{23} \\ \theta _{30}& \theta _{31} & \theta _{32} &\theta _{33} \end{bmatrix}

ただし、入力層の数が 3 の場合、パラメータ行列は次の式に示すように 3 行 3 列になります。

\begin{bmatrix} \theta_{10} &\theta_{11} &\theta_{12} \\ \theta_{20} & \theta_{21} & \theta_{22} \\ \theta_{30} &\ theta_{31} & \theta_{32} \end{bmatrix}

おすすめ

転載: blog.csdn.net/weixin_43501408/article/details/135424218