Keras,如何查看层与迭代之间发生了什么

时间:2019-12-26 15:39:13

标签: python tensorflow keras

我正在MNIST数据集上训练一个简单的CNN。这是一个教程(https://machinelearningmastery.com/how-to-develop-a-convolutional-neural-network-from-scratch-for-mnist-handwritten-digit-classification/)。

def define_model():
    model = Sequential()
    model.add(Conv2D(32, (3, 3), activation='relu', kernel_initializer='he_uniform', input_shape=(28, 28, 1)))
    model.add(MaxPooling2D((2, 2)))
    model.add(Flatten())
    model.add(Dense(100, activation='relu', kernel_initializer='he_uniform'))
    model.add(Dense(10, activation='softmax'))
    # compile model
    opt = SGD(lr=0.01, momentum=0.9)
    model.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy'])
    return model

我实际上希望能够逐步完成培训过程。因此,从数据集中的示例开始:

one example from MNIST dataset

我想看看32个初始化的内核以及卷积的结果输出。然后也许当模型开始收敛时,我想在一系列迭代中再次看到这些东西。然后,我希望能够看到MaxPooling,Flatten和Dense层的输出。

因此,我的问题不是围绕如何可视化事物(为此我将使用printpypolot.imshow),而是更多关于如何编写代码以便可以研究所有内容的问题。这些东西我想去哪里。

0 个答案:

没有答案