获取隐藏层输出
Get hidden layer outputs
我从 gluon.vision
创建了一个 densenet 网络
densenet = vision.densenet121(pretrained=True, ctx=mx.cpu())
我想获得每个卷积层的输出(预测后),然后绘制它们(特征图)。
我做不到 densenet.get_internals()
(正如我在互联网和 Github 上看到的那样),因为我的网络不是 Symbol 而是 HybridBlock。
我在 mxnet 论坛找到解决方案:
Gluon, get features maps of a CNN
实际上,您必须使用方法 export()
将胶子模型转换为符号以保存参数(来自 HybridBlock 的方法),并使用 mx.sym.load()
加载它们。
function get_interals()["name_of_the_layer"] 获取从开始到这一层的所有图层,因此您可以feat_maps = net(image)
获取该图层的所有特征图。
然后你可以在mxBoard中做一个SummaryWriter导出到Tensorboard。
我从 gluon.vision
创建了一个 densenet 网络densenet = vision.densenet121(pretrained=True, ctx=mx.cpu())
我想获得每个卷积层的输出(预测后),然后绘制它们(特征图)。
我做不到 densenet.get_internals()
(正如我在互联网和 Github 上看到的那样),因为我的网络不是 Symbol 而是 HybridBlock。
我在 mxnet 论坛找到解决方案: Gluon, get features maps of a CNN
实际上,您必须使用方法 export()
将胶子模型转换为符号以保存参数(来自 HybridBlock 的方法),并使用 mx.sym.load()
加载它们。
function get_interals()["name_of_the_layer"] 获取从开始到这一层的所有图层,因此您可以feat_maps = net(image)
获取该图层的所有特征图。
然后你可以在mxBoard中做一个SummaryWriter导出到Tensorboard。