tensorflow里可视化可分为两种:
tensorflow的计算过程都是以tensor的形式输出的, 需要想本法从tensor转换成np.ndarray类型, 然后再使用 openCV,pandas,matplotlib等绘图工具库来绘制图像.
将tensor–>np.ndarray只需调用sess.run(tensor)即可;
接下来是使用绘图工具绘制图片了,plt提供了对矩阵的绘制绘制方法: plt.matshow(),plt.imshow()函数, 该函数可以可以将numpy的矩阵作为输入参数,并绘制出来. 简而言之. 就是可以把训练以后的tensor以图片的方式显示出来.
1.借助绘图工具matplotlib可视化
假如,以nmnist的数据为例;输入的tensor的大小是(1,28,28,64); 这属于tensorflow的基本输入格式(numbers, height,width,channels)卷积以后会有64张特征图,大小是28*28;第一张图片的特征图应该为:[0,:,:,0], 第二张特征图是[0,:,:,0],以此类推.
#tensor可视化
for i in range(64):
plt.imshow(feture[0, :, :, i], cmap=plt.get_cmap('gray'))
plt.title(str(i) + "th conv2") # 添加标题
plt.colorbar() # 添加条码框
plt.show() # 显示图片
plt.figsave('路径') # 保存图片
#kernel可视化 kernel:[3,3,in_c,out_c]
for i in range(3):
plt.imshow(weights[:, :, 0, i], cmap=plt.g