在Azure Ubunt Server 14.04虚机中使用Deep-Visualization-Toolbox
参考网站
a) https://zhuanlan.zhihu.com/p/24833574?utm_source=tuicool&utm_medium=referral
b) https://github.com/yosinski/deep-visualization-toolbox
c) https://zhuanlan.zhihu.com/p/22129880?refer=startdl
d) http://jingyan.baidu.com/article/8ebacdf0cdc64949f75cd555.html
最近在研究深度学习的各种框架,目前研究到深度学习常用的一些辅助工具,比如说可视化工具,可以得到深度学习模型每一层的可视化结果,便于加深对于深度学习各种网络模型的理解。
目前调研到的可视化工具主要有:
- Netscope ( http://ethereon.github.io/netscope/quickstart.html )支持Caffe结构,用来查看深度网络模型结构
- Deep Visualization Toolbox ( https://github.com/yosinski/deep-visualization-toolbox )可以查看Caffe下训练的深度网络每一次的反卷积的可视化结果
- TensorBoard ( https://www.tensorflow.org/get_started/summaries_and_tensorboard )是支持TensorFlow的可视化工具
今天只关注在Azure的Ubuntu Server 14.04虚拟机中的Deep Visualization Toolbox的安装和使用。
1. 创建Azure Ubuntu Server 14.04虚拟机并实现远程桌面访问
a) 创建Azure虚拟机(Ubuntu Server 14.04)
Azure是微软的公有云平台,其上提供各种强大的功能,今天使用的是Azure上提供的IaaS服务——虚拟机服务。首先需要有一个Azure的订阅,才能使用Azure上面提供的各种各样的资源服务。
i. 登录Azure (https://portal.azure.com)
ii. 在左侧菜单中选择虚拟机服务,点击Ubuntu Server,选择Ubuntu Server 14.04 LTS,选择“创建”

iii. 填写设备参数,包括虚机名称、虚机类型、用户名、密码、选择订阅、资源组以及位置信息,点击“确认”

iv. 选择虚机大小,不同大小的费用不相同(一般会有推荐,也可以点击查看更多,查看所有虚机大小选项)

v. 配置虚拟网络和存储等信息

vi. 选择购买,开始部署虚机,约10分钟
b) 打开远程桌面访问端口
为了保证最高的安全性,微软Azure部署的Linux虚机最初只支持SSH(TCP/22)连接。为了实现远程桌面连接,需要打开RDP(TCP/3389)连接。这里就涉及到网络安全组的概念。网络安全组可以简单理解为一套端口打开或者关闭的组合,控制连接到虚机的端口状态。
下面就来打开RDP连接:
找到部署的虚机(如CaffeVM),点击左侧菜单中的网卡(NIC)菜单,选择列表中的相应的网卡。

在弹出的菜单中选择网络安全组,并选择相对应的网络安全组。

选择“Inbound security rules”,点击添加按钮

添加一个RDP(TCP/3389)连接

最后重启虚机即可。
c) Ubuntu Server 14.04安装图形界面及远程桌面访问(此部分参考文档d)
- 安装xrdp:
命令行模式输入“sudo apt-get install xrdp”
- 安装vnc4server (Virtual Network Computing)
命令行模式输入“sudo apt-get install vnc4server”
- 安装xfce4 (一个轻量级的类Unix的桌面操作系统)
命令行模式输入"sudo apt-get install xubuntu-desktop"-->回车-->输入root用户的密码-->回车-->输入"y"-->回车-->输入"echo "xfce4-session" >~/.xsession"-->回车-->输入"sudo service xrdp restart"-->回车,安装完成。
注意:这样安装之后,使用terminal的时候tab补全的会出现问题,此时可以这样解决:
首先依次打开Application Menu > Settings > Window Manager, 选择“Keyboard”标签页,清除“Switch window for same application”设置即可。
d) 最后查询虚机的public IP (如果没有使用静态IP服务,Azure虚机每次关机后都会释放IP,重启后重新分配public IP),然后远程桌面连接即可(登录用户名和密码是创建虚机的时候设置的)


2. 在虚拟机中安装Caffe和Deep Visualization Toolbox
(此部分参考文档a、b,操作就不重复,只是记录一下操作中遇到的问题以及解决办法)
问题1: Step 2的时候安装scipy的时候报错,提示没有scipy模块。查询之后发现安装python-scipy即可(部署的虚机默认是安装该模块)
问题2: 在编辑settings_local.py的时候,不仅要设置caffevis_caffe_root,而且还要设置caffevis_mode_gpu = False, 否则不使用GPU的话会报错(我们部署的ubuntu虚机不带GPU,Azure上也提供GPU虚机,可参考 http://www.cnblogs.com/ToBeCoder/p/6491864.html)
最终结果:运行成功!!!

这个工具还是挺有意思的,可以看到每层每个神经元的结构和内容,并且可以进行可视化。左上角是输入图片,中间的部分是对图片经过网络(这里是CaffeNet)进行前向传播之后得到feature map的可视化,我们可以通过上下左右控制光标移动,按'h'键可以查看按键的功能,我们尝试移动一下光标,看一下conv5的第151个feature map, 左边的中间区域是feature map的放大版本,右侧上方的九张图片是参数化的可视化方法(gradient ascent),这里暂且不提,右侧中间区域就是使用在上面提到的方法,得到的这个feature map的前9张响应图片块,下方是对这几张图片进行反卷积的结果。
基本的按键:
e 切换下一张
w 切换上一张
b 对某一个feature map进行反卷积
o 光标不变,切换下一层
u 光标不变,切换上一层
h 打开帮助菜单
在Azure Ubunt Server 14.04虚机中使用Deep-Visualization-Toolbox的更多相关文章
- Ubuntu Server 14.04在VMware安装的一些事儿
这几天一直在折腾Ubuntu Server 14.04,故记录下: 安装前的准备: 1.建议安装英文版,像15.04.16.04等安装中文版时存在bug,而且中文版字体显示也有问题. 2.Ubuntu ...
- Ubuntu Server 14.04 集成
方便工作出差显示项目整合了下平时常用软件: OS: Ubuntu Server 14.04 VM:VMware Workstation 12.1.0 (不同版本好像会不兼容) 已经安装软件: 1. s ...
- Ubuntu Server 14.04升级Ubuntu Server 16.04
Ubuntu Server 14.04升级Ubuntu Server 16.04 :转 http://blog.csdn.net/chszs 1.终端下执行命令 $ sudo apt-get upda ...
- U盘安装ubuntu server 14.04
U盘安装ubuntu server 14.04 U盘安装ubuntu server 14.04 1.制作启动u盘 2.开始安装 1 将u盘插入主机,重启后从u盘启动 2 选择语言(随便挑,随便选),我 ...
- u盘安装ubuntu server 14.04 以及No CD-ROM drive was detected 错误
u盘安装ubuntu server 14.04 1:下载ubuntu server14的 iso镜像文件 2:下载 UltraISO U盘镜像制作工具 : 3:使用Ultra iOS 将下载好的 is ...
- Ubuntu Server 14.04 下root无法ssh登陆
今天安装了Ubuntu Server 14.04 在终端配置了root密码后,使用SecureCRT和putty竟然不能ssh登陆,SecureCRT一直提示密码不对,但是可以肯定输入的密码100 ...
- Ubuntu server 14.04 交叉编译Unicorn-engine
Ubuntu server 14.04 交叉编译Unicorn-engine 编译的过程基本上按照的是unicorn/COMPILE-WINDOWS.md描述的进行编译的,不过还是改了一些地方.在Ub ...
- Ubuntu Server 14.04 LTS(64bit)已安装 weblogic Server 12c(12.1.3) Zip Distribution
这里说的对Ubuntu Server 14.04 LTS(64bit)已安装weblogic Server 12c(12.1.3) Zip Distribution遇到的问题.至于Windows什么好 ...
- Ubuntu Server 14.04 & Apache2.4 虚拟主机、模块重写、隐藏入口文件配置
环境: Ubuntu Server 14.04 , Apache2.4 一.Apache2.4 虚拟主机配置 01. 新建一份配置文件 在apache2.4中,虚拟主机的目录是通过/etc/apach ...
随机推荐
- 选择判断语句(switch)
选择判断语句(switch) 一.switch语句格式 switch(表达式){ case 取值1: 执行语句: break: case 取值2: 执行语句: break: …... defau ...
- HTML5 全屏化操作功能
由于项目中用到了全屏化挫折功能,查看了API后写了一个简单的全屏化model <!DOCTYPE html> <html> <head> <meta http ...
- Redis集群方案之主从复制(待实践)
Redis有主从复制的功能,一台主可以有多台从,从还可以有多台从,但是从只能有一个主.并且在从写入的数据不会复制到主. 配置 在Redis中,要实现主从复制架构非常简单,只需要在从数据库的配置文件中加 ...
- AndroidStudio NDK开发、调试测试工程
## 验证内容:1.支持NDK调试 2.支持native方法快速创建jni封装(但是没有加入extern "C"声明,会导致native方法找不到jni,进而报错) 3.支持通过修 ...
- C++ - 库函数优先级队列(priority_queue)输出最小值 代码
库函数优先级队列(priority_queue)输出最小值 代码 本文地址: http://blog.csdn.net/caroline_wendy 库函数优先级队列(priority_queue)的 ...
- HDU 4968(杭电多校#9 1009题)Improving the GPA (瞎搞)
题目地址:HDU 4968 这题的做法是全部学科的学分情况枚举,然后推断在这样的情况下是否会符合平均分. 直接暴力枚举就可以. 代码例如以下: #include <cstring> #in ...
- 数学之路-python计算实战(21)-机器视觉-拉普拉斯线性滤波
拉普拉斯线性滤波,.边缘检測 . When ksize == 1 , the Laplacian is computed by filtering the image with the follow ...
- TQ2440 学习笔记—— 1、Windows平台下开发工具安装与环境建立
板子:广州天嵌公司的TQ2440,处理器为三星的S3C2440 1.开发工具的安装与环境建立 系统:win7 64位 SecureCRT软件:该软件能够取代Windows中的超级终端,是个非常好的串 ...
- 关注PHPthinking官网微信公众号——红包来袭
欢迎大家扫描关注PHPthinking官方微信订阅号,我们将给您定期发送质量博文.新闻趣事.站点公告等等,同一时候还有PHPthinking准备的每日微信红包(金额不等,已发出百元红包)等着你! 官网 ...
- struts <s:iterator>两个list嵌套循环,对象属性交叉使用
两个list:List<CreateTableColumn> createTableColumnList,List<Map<String, Object>> tab ...