深度学习Caffe实战笔记(17)MATLAB实现卷积层卷积核权重的可视化
来源:互联网 发布:linux vi 到文件底部 编辑:程序博客网 时间:2024/05/29 16:11
上一篇博客介绍了如果可视化第一个卷积层的卷积核,可视化的一个重要作用就是判断训练权重的好坏,效果图可以参考我上一篇博客,这篇博客介绍把卷积核可视化写成MATLAB的一个函数,用来直接调用就可以实现卷积核权重的可视化,直接放MATLAB代码。
函数内容:
function []=visualize_weights(w,s)h=max(size(w,1),size(w,2)); %卷积和大小g=h+s; %网格大小w=w-min(min(min(min(w))));w=w/max(max(max(max(w))))*255;w=uint8(w);W=zeros(g*size(w,3),g*size(w,4));for u=1:size(w,3) for v=1:size(w,4) W(g*(u-1)+(1:h),g*(v-1)+(1:h))=w(:,:,u,v)'; endendW=uint8(W);figure;imshow(W);end
主函数内容:
clc;clear;close all;addpath('../../../../matlab');caffe.set_mode_cpu();net=caffe.Net('alexnetdeploy.prototxt','cloth_iter_100000.caffemodel','test');net.layer_namesnet.blob_names %第一个卷基层可视化conv1_layer=net.layer_vec(1); blob1=conv1_layer.params(1); %注意只有卷积层是有参数的w=blob1.get_data();size(w)visualize_weights(w,1);%第二个卷积层可视化conv2_layer=net.layer_vec(5);blob2=conv2_layer.params(1);w2=blob2.get_data();size(w2)visualize_weights(w2,1);%第三个卷积层可视化conv3_layer=net.layer_vec(9);blob3=conv3_layer.params(1);w3=blob3.get_data();size(w3)visualize_weights(w3,1)%第四个卷积层可视化conv4_layer=net.layer_vec(11);blob4=conv4_layer.params(1);w4=blob4.get_data();size(w4)visualize_weights(w4,1)%第五个卷积层可视化conv5_layer=net.layer_vec(13);blob5=conv5_layer.params(1);w5=blob5.get_data();size(w5)visualize_weights(w5,1)
效果图:
其实只有第一个卷积层可视化效果最好,后面的卷积层权重可视化可读性不太强。
参考文献:《深度学习21天实战caffe》赵永科
1 0
- 深度学习Caffe实战笔记(17)MATLAB实现卷积层卷积核权重的可视化
- 深度学习Caffe实战(16)MATLAB实现模型参数权重可视化
- caffe中卷积层的权重初始化
- 深度学习笔记4:卷积层的实现
- 深度学习caffe实战笔记(14)MATLAB实现可视化cifar10数据集
- 深度学习Caffe实战笔记(7)Caffe平台下,如何调整卷积神经网络结构
- 深度学习Caffe实战笔记(7)Caffe平台下,如何调整卷积神经网络结构
- 【深度学习】caffe之卷积层
- 深度学习基础知识(4):卷积层的实现
- 深度学习Caffe实战笔记(10)Windows Caffe使用MATLAB接口提取和可视化特征
- 深度学习中的卷积计算及caffe的实现
- Caffe中卷积层的实现
- caffe中卷积层的实现
- Caffe卷积层的实现细节
- 【caffe-windows】 caffe-master 之 卷积核可视化(利用matlab)
- 深度学习caffe实战笔记(13)利用MATLAB可视化mnist数据集
- (Caffe)卷积的实现
- 卷积的可视化学习
- 【Leetcode】476. Number Complement
- 查看linux系统常用的命令,Linux查看系统配置常用命令
- HelloWorld
- Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
- Mysql存储过程从0开始(上)
- 深度学习Caffe实战笔记(17)MATLAB实现卷积层卷积核权重的可视化
- DataGrid开启行编辑模式增删改操作
- thinkcmfx where数组格式
- 17 - 04 - 11 Web安全(07)
- Linux程序性能分析工具time+pstrace+grpof
- Qt中16进制数据的QByteArray与QString的转换说明
- 【笔记】Hibernate框架系列 [ 1 ]
- MAC修改mysql5.7.17的root的密码
- Linux查看物理CPU个数、核数、逻辑CPU个数