一文带你用可视化理解卷积神经网络(12)

  • 象耳

  • 那就是我们在本能情况下如何识别大象的 , 对吧?现在 , 当我们看看当我们尝试优化任意分类大象图像的模型时 , 我们在过程中得到了什么 。

    我们知道CNN中的每个卷积层都在前一层的输出中寻找相似的模式 。 当输入由它正在寻找的模式组成时 , 卷积层的激活被最大化 。

    在最大化激活技术中 , 我们更新每层的输入 , 以便将最大化激活的损失降到最低 。

    我们是如何做到这一点的?我们通过计算相对于输入的激活损失函数的梯度 , 然后相应得更新输入:

    下面是这个操作的代码:

    #importing the required modules
    from vis.visualization import visualize_activation
    from vis.utils import utils
    from keras import activations
    from keras import applications
    import matplotlib.pyplot as plt
    %matplotlib inline
    plt.rcParams['figure.figsize'
    = (186)

    推荐阅读