【发布时间】:2017-05-20 16:38:22
【问题描述】:
主要问题
我无法理解特定层的权重图。
我使用了一种来自 no-learn 的方法:plot_conv_weights(layer, figsize=(6, 6))
我使用 lasagne 作为我的神经网络库。
情节很好,但我不知道我应该如何解释它。
神经网络结构
我使用的结构:
InputLayer 1x31x31
Conv2DLayer 20x3x3
Conv2DLayer 20x3x3
Conv2DLayer 20x3x3
MaxPool2DLayer 2x2
Conv2DLayer 40x3x3
Conv2DLayer 40x3x3
Conv2DLayer 40x3x3
MaxPool2DLayer 40x2x2
DropoutLayer
DenseLayer 96
DropoutLayer 96
DenseLayer 32
DropoutLayer 32
DenseLayer 1 as sigmoid
这是前 3 层的权重:
** 关于图片 **
所以对我来说,它们看起来很随意,我无法解释它们!
但是,在 Cs231 上,它表示以下内容:
Conv/FC 过滤器。第二个常见的策略是可视化 权重。这些通常在第一个 CONV 层上最容易解释 它直接查看原始像素数据,但可以 还显示网络中更深的过滤器权重。权重是 对可视化很有用,因为训练有素的网络通常显示得很好 和平滑的过滤器,没有任何嘈杂的图案。嘈杂的图案可以是 网络训练时间不够长的指标,或 可能是一个非常低的正则化强度,可能导致 过拟合 http://cs231n.github.io/understanding-cnn/
那为什么我的是随机的呢?
结构经过训练并在其任务中表现良好。
参考文献
http://cs231n.github.io/understanding-cnn/
https://github.com/dnouri/nolearn/blob/master/nolearn/lasagne/visualize.py
【问题讨论】:
标签: theano conv-neural-network lasagne nolearn