同じ疑問なので便乗で質問させてください。
> 1層目の重みは入力画像の各ピクセルに対応しているので、単純に重みをプロットするだけで人間可読な結果が出ます。
とのことなのですが、Chainerのimagenetの例を参考にConvolutional Neural Networkを構成し、
1層目の重み(フィルタ)を可視化してみたのですが
たとえば、5x5のフィルタで入力はカラー画像、1層目のconvの出力は32枚にしています。
20エポックほど学習したモデル(ほぼ精度は収束しているようです)から
n1, n2, h, w = model.conv1.W.shape # modelは学習済みモデル
print n1, n2, h, w # 32 x 3 x 5 x 5
img = model.conv1.W[0].transpose(1, 2, 0) # (h, w, channel)に変換
で描画してみたのですがどぎつい色になり、上のサイトや教科書とはまったく違う結果でした。
重みは負の値なども入っていますが何か正規化してから描画するとよいのでしょうか?
ご存知でしたらアドバイスお願い致します。