fastai-如何在resnet50中可视化每个conv2d层

问题描述

我正在使用fastai v1,并在我的图像数据集上训练了一个resnet50模型。 尽管我想直观地看到激活在每一层或至少一些中间层的样子。我找到了一篇文章,向我展示了如何在第一层进行可视化,但是我不确定如何将其用于其他中间结果 第一层的代码

def visualize_first_layer(learn):
    conv1 = list(learn.model.children())[0][0]
    weights = conv1.weight.data.cpu().numpy()
    weights_shape = weights.shape
    weights = minmax_scale(weights.ravel()).reshape(weights_shape)
    fig,axes = plt.subplots(8,8,figsize=(8,8))
    for i,ax in enumerate(axes.flat):
        ax.imshow(np.rollaxis(weights[i],3))
        ax.get_xaxis().set_visible(False)
        ax.get_yaxis().set_visible(False)

visualize_first_layer(learn)

我遇到的问题是其他conv2d层处于无法下标的瓶颈中。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)