Main Problem
我无法理解特定图层权重的图 . 我使用了无学习的方法: plot_conv_weights(layer, figsize=(6, 6))
我使用 lasagne 作为我的神经网络库 .
情节很好,但我不知道我应该如何解释它 .
Neural Network Structure
我使用的结构:
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上,它说如下:
转换/ FC过滤器 . 第二种常见策略是可视化权重 . 这些通常在第一个直接查看原始像素数据的CONV层上可解释,但也可以在网络中更深地显示滤波器权重 . 权重对于可视化是有用的,因为训练有素的网络通常显示漂亮且平滑的滤波器而没有任何噪声模式 . 嘈杂的模式可能是一个未经过足够长时间训练的网络的指标,或者可能导致过度拟合的非常低的正则化强度http://cs231n.github.io/understanding-cnn/
那为什么我的是随机的?
结构经过培训,可以很好地完成任务 .
References
http://cs231n.github.io/understanding-cnn/
https://github.com/dnouri/nolearn/blob/master/nolearn/lasagne/visualize.py