如何实现CNN特征层可视化?终于懂了.... | 您所在的位置:网站首页 › vb可视化的特征是什么 › 如何实现CNN特征层可视化?终于懂了.... |
程序员宝藏库:https://github.com/Jackpopc/CS-Books-Store 现如今,谈起人工智能,对于大多数人来说已经不再陌生。 而作为其中比较热门的计算机视觉,更是吸引了一大批从业者。 但是,其中绝大多部分都“不知所以然”。搭建起开发环境,照搬一段代码,就认为大功告成,但是,到底数据进入网络中发生了什么?特征是什么样的,很多人都回答不上来。 本文,就来教大家如何如何可视化CNN网络层的特征图。 教程废话不多说,我们先来建立一个网络模型: model = tf.keras.models.Sequential([ tf.keras.layers.Conv2D(8,(3,3),激活='relu',input_shape =(150,150,3)), tf.keras.layers.MaxPooling2D(2,2), tf.keras.layers.Conv2D(16,(3,3),激活='relu'), tf.keras.layers.MaxPooling2D(2,2), tf.keras.layers.Conv2D(32,(3,3),激活='relu'), tf.keras.layers.MaxPooling2D(2,2), tf.keras.layers.Flatten(), tf.keras.layers.Dense(1024,activation ='relu'), tf.keras.layers.Dense(512,activation ='relu'), tf.keras.layers.Dense(3,activation ='softmax') ])该模型的概括如下: model.summary()如上所示,我们具有三个卷积层,其后是MaxPooling层,两个全连接层和一个最终输出全连接层。 我们需要训练和拟合模型。因此,首先运行模型,然后才能得到特征图。只不过,在这里不演示这部分过程。 要生成特征图,需要用到model.layersAPI,接下来了解如何访问CNN中间层。 获取CNN网络层的名称 layer_names |
CopyRight 2018-2019 实验室设备网 版权所有 |