Caffe prototxtでは、各レイヤーにレイヤー間の接続を指定する "top"または "bottom"パラメーターが含まれています。しかし、例えば「トップ」がレイヤー自体である場合(なぜそれをリンクする必要があるのか)、またはいくつかの「トップ」レイヤーが存在する場合があります。 「トップ」と「ボトム」パラメータの正確な意味とその使用法のルールは何ですか?"top"と "bottom"パラメータを使用してネットワークアーキテクチャを構築する方法
3
A
答えて
4
レイヤーとブロブの間に混乱があります。
Caffeでは、すべてのデータはブロブの形で表されます。各レイヤーは0個以上のブロブを取り込み、それらを変換し、ゼロ個以上のブロブを送り出します。例えば、ReLU層は、データとともに単一ブロブを受け取り、f(x) = x if x>0, 0 otherwise
ファンクションを適用し、その結果を単一ブロブとして出力する。分類問題のデータ層には、通常、データ用とラベル用の2つの出力ブロブがあり、入力ブロブはありません。
ブロブは、ネットワークを下から上に移動するように視覚化されます。したがって、入力ブロブはボトムブロブと呼ばれ、出力ブロブはトップブロブと呼ばれます。
ここで、prototxt定義では、name
属性にレイヤの名前が格納されます。 bottom
属性には、入力blobの名前が格納されます。 top
属性には出力BLOBの名前が格納されます。これは、便宜上、一般的にレイヤーの名前と同じと見なされます。そのレイヤーに複数の入力ブロブがある場合、複数のbottom
属性があり、複数の出力ブロブがある場合は、複数の属性があります(top
)。カフェで
0
:
- 層の間リンクの名前(上/下のパラメータは)非常に重要です。
- レイヤーからの外部リンクは「トップ」であり、レイヤーへの着信リンクは「ボトム」です。したがって、1つのレイヤーからの最上部は、最下部として別のレイヤーに接続します。 2つの町(層)の間のハイウェイ(上/下)のような並べ替え。 Caffeは、あなたのトップ/ボトムリンクの名前からネットワークの構造を決定します。
- レイヤー自体の名前ははるかに重要ではなく、構造的な情報は持ちません。あなたはこれらを賢明でユニークなものにする必要があります。同じハイウェイは、どのように名前が付けられているかにかかわらず、2つの町の間の交通を運びます。
- レイヤーと上部/下部の名前空間は別です。したがって、レイヤーの名前を上または下と同じ名前にすることができます。これは何も意味しません。しかし、それは混乱し、避けるべきです。