1

numpy を使用して Python で Resnet をゼロから実装しようとしていました。個々のレイヤーは完璧に機能しますが。私は現在、conv2_3 と conv3_1 レイヤーの間で立ち往生しています。ここで、1x1、128 フィルターを持つ conv3_1 レイヤーは、2 のストライドで 56x56 の入力を 28x28 にダウンサンプリングします。現在、152 レイヤー 1 を構築しています。

ResNet アーキテクチャ

私が理解できない部分は、この式を適用するときです

output_width = (input_width - filter_width + (2 * pad) ) / stride + 1

この場合、(56-1+(2*0)) / 2 + 1 = 28.5 となり、必要な寸法より大きくなります。私が感じる唯一の方法は、画像情報が枯渇する可能性があるため、よくわからない入力画像(アクティベーションマップ)をトリミングすることです。tensorflow、caffe、torch などの他のライブラリがこれをどのように行っているか考えていますか?

4

0 に答える 0